-
-
Notifications
You must be signed in to change notification settings - Fork 122
feat(context)!: switch from contexts to function calling #1029
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
7885523
to
41c7751
Compare
24fed0a
to
b6c7b19
Compare
a23ccfa
to
eaba359
Compare
f4e0432
to
cc4b04f
Compare
baa2848
to
7604698
Compare
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
👋🏻 I've set up:
I'm unsure how to tie CopilotChat into these tools. I see in screenshots above you do |
you need to reference the tool or mcp server in chat with |
@deathbeam thanks that makes perfect sense! I'm close, I just don't seem to be getting the response? My first line was I have
|
im currently in process of changing how tools are used, but for now, you need to also make the tool reference sticky, so add
etc |
Gotcha, that works! I'll try to do some debugging if I can find some time today, just had an exception at https://github.com/CopilotC-Nvim/CopilotChat.nvim/pull/1029/files#diff-7a2411a15623062457419a57f69def5a63e571e69f65b413b402a4a372c056a7R343 I may have something misconfigured though so unless it sparks immediate "oh this is wrong" I'll look into it. I not expecting you to provide me support on your PR, just hoping to help test, validate, and learn.
|
Yea i noticed that issue as well, I think it has something to do with weird filenames (good example is jdt:// stuff in java decompiled classes etc) |
I'll take a crack at the pattern stuff I do enjoy a good regex. |
This change modernizes the CopilotChat architecture by implementing a tools-based
approach using function calling. Each tool has a schema definition that enables
structured parameter collection and validation. Resources are now handled more
consistently, with a clearer distinction between content types.
https://platform.openai.com/docs/guides/function-calling?api-mode=responses
https://modelcontextprotocol.info/specification/2024-11-05/server/tools/
BREAKING CHANGE: The context API has changed from callback-based input handling to schema-based definitions.
BREAKING CHANGE: config.contexts renamed to config.tools
BREAKING CHANGE: config.context removed, use config.sticky
BREAKING CHANGE: diagnostics moved to separate tool call, selection and buffer calls no longer include them by default
BREAKING CHANGE: non-resource based tool calls can no longer be soft stored in sticky, now they are auto expanded to promot
BREAKING CHANGE: viewing full context is no longer possible (as now tools can have bigger side effects), gi renamed to gc, now also includes selection
BREAKING CHANGE: filenames renamed to glob
BREAKING CHANGE: files removed (use glob together with tool calling instead, or buffers/quickfix)
BREAKING CHANGE: copilot extension agents removed, tools + mcp servers can replace this feature and maintaining them was pain, they can still be implemented via custom providers anyway
BREAKING CHANGE: actions and integrations action removed as they were deprecated for a while
Closes #1045
Closes #1053
Closes #1076
Closes #1090
Closes #1096
Closes #526
TODO:
https://github.com/ravitemer/mcphub.nvim integration: