contextSelectionCatalog
SUPPORT · constant · 运行时值
导入
ts
import { contextSelectionCatalog } from '@jangts/agent-core/support';js
import { contextSelectionCatalog } from '@jangts/agent-core/support';其他公开入口:@jangts/agent-core/support、@jangts/agent-core/support/context。
定义
ts
const contextSelectionCatalog: { sequence: { validate: () => void; choose: ({ candidates }: SelectionInput) => Promise<SelectionResult>; }; fixed: { validate: (selection: ContextSelection) => void; choose: ({ selection, candidates }: SelectionInput) => Promise<SelectionResult>; }; auto: { validate: (selection: ContextSelection) => void; choose: ({ selection, candidates }: SelectionInput) => Promise<SelectionResult>; }; model: { validate: (selection: ContextSelection, selectors: readonly ContextSelector[]) => void; choose: (input: SelectionInput) => Promise<SelectionResult>; }; }字段结构
| 字段 | 类型 | 必需 | 说明 |
|---|---|---|---|
sequence | { validate: () => void; choose: ({ candidates }: SelectionInput) => Promise<SelectionResult>; } | 必需 | 见类型定义及调用场景。 |
fixed | { validate: (selection: ContextSelection) => void; choose: ({ selection, candidates }: SelectionInput) => Promise<SelectionResult>; } | 必需 | 见类型定义及调用场景。 |
auto | { validate: (selection: ContextSelection) => void; choose: ({ selection, candidates }: SelectionInput) => Promise<SelectionResult>; } | 必需 | 见类型定义及调用场景。 |
model | { validate: (selection: ContextSelection, selectors: readonly ContextSelector[]) => void; choose: (input: SelectionInput) => Promise<SelectionResult>; } | 必需 | 见类型定义及调用场景。 |
使用示例
- 选择缩减步骤:顺序、固定、自动或模型:一套类型化策略表达多种场景,保留精确参数与 App 自定义选择。
按已登记顺序处理
入门 · Node.js
ts
import { Support } from '@jangts/agent-core';
Support.validateContextSelection({ mode: 'sequence' }, []);
console.log(Object.keys(Support.contextSelectionCatalog));js
import { Support } from '@jangts/agent-core';
Support.validateContextSelection({ mode: 'sequence' }, []);
console.log(Object.keys(Support.contextSelectionCatalog));按场景选择策略并精确覆盖
配置 · Node.js
ts
import { Support } from '@jangts/agent-core';
const localOnly = { mode: 'fixed' as const, kind: 'trim' as const };
const preserveMore = { mode: 'auto' as const, maxTrimLossRatio: 0.1, reserveCalls: 2 };
Support.validateContextSelection(localOnly, []);
Support.validateContextSelection(preserveMore, []);
console.log(localOnly, preserveMore);js
import { Support } from '@jangts/agent-core';
const localOnly = { mode: 'fixed', kind: 'trim' };
const preserveMore = { mode: 'auto', maxTrimLossRatio: 0.1, reserveCalls: 2 };
Support.validateContextSelection(localOnly, []);
Support.validateContextSelection(preserveMore, []);
console.log(localOnly, preserveMore);