feat(ctx): ContextPolicy tool 上下文策略(§13.8)

- SDK ToolDef 加 ContextPolicy string(默认 none / 可设 prune)
- StageAfterToolcall 后检查工具 ContextPolicy=prune → RelevanceContext.Prune
- 所有现有测试通过
This commit is contained in:
JianFeeeee
2026-09-10 15:41:23 +08:00
parent 5608abdf5a
commit 772a494223
2 changed files with 7 additions and 0 deletions

View File

@ -305,6 +305,12 @@ func (a *Agent) process(input string, stageCtx *sdk.StageContext) (response stri
result = r
}
}
// ContextPolicy: prune 工具调用后执行上下文裁剪§13.8
if def := a.stageHost.ToolDef(tc.Name); def != nil && def.ContextPolicy == "prune" {
if a.context != nil {
a.context.Prune(result, 20, a.docStore)
}
}
msgContent := ""
if contentOnce {