Skip to content

Commit 057b8e4

Browse files
authored
feat(context)!: switch from contexts to function calling (#1029)
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 Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
1 parent d0537a7 commit 057b8e4

22 files changed

Lines changed: 2150 additions & 2104 deletions

README.md

Lines changed: 92 additions & 205 deletions
Large diffs are not rendered by default.

lua/CopilotChat/actions.lua

Lines changed: 0 additions & 49 deletions
This file was deleted.

0 commit comments

Comments
 (0)