You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
refactor(kosong): rename select_tools capability to dynamically_loaded_tools
ModelCapability describes what the model can do; the model's ability is
accepting message-level tool declarations (dynamically loaded tools) —
select_tools is the name of the client-side tool that drives it, and the
config-to-mechanism translation is the agent layer's business. Rename
the capability bit to the canonical dynamically_loaded_tools everywhere
it is declared, detected, catalogued, and forwarded.
No breaking change: the deprecated select_tools spelling stays accepted
— as a ModelCapability/CatalogModelEntry field and as a model-alias
capabilities config string — through the single hasDynamicallyLoadedTools
read point, so existing configs keep working unchanged. The client-side
vocabulary (the select_tools builtin tool, the tool-select experimental
flag) is deliberately untouched.
Rename the dynamic tool loading model capability to its canonical name `dynamically_loaded_tools` (the model-level ability to accept message-level tool declarations). The previous `select_tools` spelling — which named the client-side mechanism rather than the model capability — remains fully supported as a deprecated alias in model alias `capabilities` config and in catalog entries, so no configuration changes are required. The SDK's catalog-to-alias mapping now emits the canonical name.
Copy file name to clipboardExpand all lines: .changeset/select-tools-discard-on-compaction.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,4 +2,4 @@
2
2
"@moonshot-ai/kimi-code": patch
3
3
---
4
4
5
-
Progressive tool disclosure (`select_tools`, experimental): compaction now discards the loaded tool schemas instead of re-injecting them. After a compaction the boundary announcement re-lists every loadable tool name and the model re-selects what it still needs; a from-memory call to a no-longer-loaded tool is rejected with guidance to select it first. This keeps the post-compaction context at its minimal users+summary floor and removes the schema-rebuild budget heuristics. No effect unless the `tool-select` experimental flag and a `select_tools`-capable model are active.
5
+
Progressive tool disclosure (`select_tools`, experimental): compaction now discards the loaded tool schemas instead of re-injecting them. After a compaction the boundary announcement re-lists every loadable tool name and the model re-selects what it still needs; a from-memory call to a no-longer-loaded tool is rejected with guidance to select it first. This keeps the post-compaction context at its minimal users+summary floor and removes the schema-rebuild budget heuristics. No effect unless the `tool-select` experimental flag and a model with the dynamically-loaded-tools capability are active.
'Keep MCP tool schemas out of the immutable top-level tools[]; the model loads them on demand via the select_tools tool. Only takes effect on models whose capability catalog declares select_tools.',
30
+
'Keep MCP tool schemas out of the immutable top-level tools[]; the model loads them on demand via the select_tools tool. Only takes effect on models whose capability catalog declares dynamically loaded tools.',
0 commit comments