@chaoset/adaptive-perf 0.7.0 → 0.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/client/client.cjs +191 -167
- package/client/index.tsx +477 -0
- package/lib/config-store.d.ts +32 -0
- package/lib/config-store.d.ts.map +1 -0
- package/lib/config-store.js +107 -0
- package/lib/config-store.js.map +1 -0
- package/lib/index.d.ts +350 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +1574 -0
- package/lib/index.js.map +1 -0
- package/lib/remote.d.ts +37 -0
- package/lib/remote.d.ts.map +1 -0
- package/lib/{remote.mjs → remote.js} +50 -52
- package/lib/remote.js.map +1 -0
- package/lib/typert.host.d.ts +55 -0
- package/lib/typert.host.d.ts.map +1 -0
- package/lib/typert.host.js +37 -37
- package/lib/typert.host.js.map +1 -0
- package/package.json +12 -10
- package/lib/config-store.mjs +0 -97
- package/lib/index.mjs +0 -1470
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,350 @@
|
|
|
1
|
+
import type { Context as CordisContext } from "@deepseek-ai/cordis";
|
|
2
|
+
|
|
3
|
+
declare module "@deepseek-ai/cordis" {
|
|
4
|
+
interface Context extends CordisContext {
|
|
5
|
+
agentPresets: {
|
|
6
|
+
[key: string]: any;
|
|
7
|
+
[key: symbol]: any;
|
|
8
|
+
composedPreset(ctx: any): string | undefined;
|
|
9
|
+
};
|
|
10
|
+
settings: {
|
|
11
|
+
[key: string]: any;
|
|
12
|
+
[key: symbol]: any;
|
|
13
|
+
register(ns: string, schema: any, options?: any): void;
|
|
14
|
+
};
|
|
15
|
+
llm: {
|
|
16
|
+
[key: string]: any;
|
|
17
|
+
[key: symbol]: any;
|
|
18
|
+
};
|
|
19
|
+
sessions: {
|
|
20
|
+
[key: string]: any;
|
|
21
|
+
[key: symbol]: any;
|
|
22
|
+
};
|
|
23
|
+
tools: {
|
|
24
|
+
[key: string]: any;
|
|
25
|
+
[key: symbol]: any;
|
|
26
|
+
schemas(agent: any): any[];
|
|
27
|
+
restrict(config: { deny?: string[]; allow?: string[] }): () => void;
|
|
28
|
+
};
|
|
29
|
+
skills: {
|
|
30
|
+
[key: string]: any;
|
|
31
|
+
[key: symbol]: any;
|
|
32
|
+
list(lookup?: any): Promise<any[]>;
|
|
33
|
+
get(name: string, lookup?: any): Promise<any>;
|
|
34
|
+
};
|
|
35
|
+
systemPrompt: {
|
|
36
|
+
[key: string]: any;
|
|
37
|
+
[key: symbol]: any;
|
|
38
|
+
suppressRuntimeContext(): () => void;
|
|
39
|
+
section(section: { name: string; order?: number; text?: string }): () => void;
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* adaptive-perf — 极简性能自适应插件(@chaoset/adaptive-perf)
|
|
46
|
+
*
|
|
47
|
+
* 目标:让「标准模式(standard)」「PTC 模式(code)」与「创造模式
|
|
48
|
+
* (cordis)」达到与「极简模式(minimal)」相同级别的高性能。极简模式快
|
|
49
|
+
* 的原因(对源码的对照结论):
|
|
50
|
+
* 1. persona 配置了 includeRuntimeContext: false —— 每次模型请求不注入
|
|
51
|
+
* "Current runtime context" 快照(文件策略 / 审批策略等动态段);
|
|
52
|
+
* 2. 工具目录极小(只有 bash + str_replace_editor)—— 每个请求的
|
|
53
|
+
* tool schema 与(PTC 的)SDK 参考段都随之变小;
|
|
54
|
+
* 3. persona 为 complete 固定提示,无其它全局 prompt 段;
|
|
55
|
+
* 4. 不挂 skill 目录提醒(~9KB)与 AGENTS.md 摘要注入。
|
|
56
|
+
*
|
|
57
|
+
* 本插件在多个维度上做"动态自适应"(而不是静态裁剪),全部参照
|
|
58
|
+
* dsh-anchored-standard(https://github.com/xiaobright/dsh-anchored-standard)
|
|
59
|
+
* 的实测结论:
|
|
60
|
+
* A. 运行时上下文抑制:对目标 preset 的会话调用
|
|
61
|
+
* agent.ctx.systemPrompt.suppressRuntimeContext()(与极简模式同一机制),
|
|
62
|
+
* 每次请求省掉快照文本,零功能损失。
|
|
63
|
+
* B. 真实 Minimal 工具对(bootstrap.realPair,0.5.0 新增):首轮"轨迹"
|
|
64
|
+
* (模型思维链风格)由请求 #1 可见的**工具 schema** 决定,且只有与
|
|
65
|
+
* Minimal 逐字相同的 schema 才能锚定(issue #11:真实工具对 5/5 锚定,
|
|
66
|
+
* 任何 standard 系 schema——包括 sandboxed bash/read——11/11 落入
|
|
67
|
+
* standard-like)。仅收窄目录不够:standard/code preset 根本没有
|
|
68
|
+
* str_replace_editor,其 bash 也是 sandboxed schema。因此本插件把
|
|
69
|
+
* Minimal 的**真实工具对**(持久 PTY bash + str_replace_editor,官方
|
|
70
|
+
* minimal preset 同一批插件、同一份描述)挂进 agent 作用域工具层
|
|
71
|
+
* (scoped registration 按名阴影继承工具),首轮目录 = 真实工具对;
|
|
72
|
+
* PTC 的 SDK 参考段同样按可见目录渲染,同步缩小。
|
|
73
|
+
* C. 首轮锚定(bootstrap):请求 #1 只暴露真实工具对,剥离自动注入上下文
|
|
74
|
+
* (技能目录提醒 skill-catalog、AGENTS.md 摘要 agent-instructions;
|
|
75
|
+
* 用户主动的技能手势不过滤);首个**持久**晋升信号(首个 tool/call 或
|
|
76
|
+
* assistant/message,promoteOn 可选 either/tool-call/assistant-message)
|
|
77
|
+
* 后**完整恢复**该模式的全部工具目录与常规上下文注入(0.7.0,
|
|
78
|
+
* dsh-anchored-standard 语义:只锚定首轮,不减少后续功能);阶段从
|
|
79
|
+
* 持久会话事件推导,resume/reload 不丢状态,晋升信号持久(compaction
|
|
80
|
+
* 不重置);bootstrap.maxTokens(可选)给请求 #1 封顶输出预算,晋升后
|
|
81
|
+
* 剥离。
|
|
82
|
+
* D. 常驻上下文抑制(suppressInjectedContext,0.5.0 新增,0.7.0 默认
|
|
83
|
+
* 开启):true = 整个会话剥离技能目录提醒与 AGENTS.md 摘要注入(功能
|
|
84
|
+
* 可见性由常驻发现工具 dev_tool_search / skill_search / skill_load
|
|
85
|
+
* 承担——实测晋升后恢复注入会把轨迹拉回 standard-like);false =
|
|
86
|
+
* 只剥离首轮,晋升后恢复常规注入(opt-in)。
|
|
87
|
+
* E. 工具目录自适应精简(leanByDefault,0.7.0 默认关闭的 opt-in):开启时
|
|
88
|
+
* 按"工具族"隐藏高开销低频工具(子代理 / 工作流 / ralph / goal 等编排
|
|
89
|
+
* 类),只保留核心编码工具,随后根据两类信号在会话内"单调升级"放行
|
|
90
|
+
* 对应工具族(只升不降):
|
|
91
|
+
* - 关键词信号:用户消息命中某工具族的触发词(如"子代理")→ 放行该族;
|
|
92
|
+
* - 失败信号:PTC 的 run_code 程序调用被隐藏工具报 UNKNOWN_TOOL
|
|
93
|
+
* (tools/result 失败文本含工具名)→ 放行该族,下次程序即可调用。
|
|
94
|
+
*
|
|
95
|
+
* 实现全部使用 dsh 公开服务契约(Inspect 确认):
|
|
96
|
+
* - ctx.agentPresets.composedPreset(agent.ctx) 读取会话所属 preset
|
|
97
|
+
* - agent.ctx.systemPrompt.suppressRuntimeContext() 抑制上下文快照
|
|
98
|
+
* - agent.ctx.systemPrompt.section() 按名阴影 prompt 段(persona/引导段)
|
|
99
|
+
* - agent.ctx.tools.schemas(agent) 读取该 agent 当前可见工具(限制交集)
|
|
100
|
+
* - agent.ctx.tools.restrict({ deny }) 按 agent 作用域裁剪继承工具
|
|
101
|
+
* - agent.ctx.plugin() 挂载官方 minimal preset 同款插件(持久 bash /
|
|
102
|
+
* str_replace_editor / 其依赖的 terminals 与本地 fs)
|
|
103
|
+
* - agent/pre-step(waterfall) 首轮剥离自动注入上下文
|
|
104
|
+
* - agent/request(waterfall) 首轮输出预算封顶
|
|
105
|
+
* - session/event 增量喂入持久事件(晋升信号)
|
|
106
|
+
* - agent/created、agent/disposed、agent/inbox/inserted、tools/result 事件
|
|
107
|
+
* 监听器都注册在 host 根作用域(与 dsh-agent-presets 自身同款用法),事件按
|
|
108
|
+
* scope 过滤分发,子作用域派发的事件根监听器可收到;waterfall 均以 prepend
|
|
109
|
+
* 注册保证"最外层"(剥离是最后一道变换)。
|
|
110
|
+
*
|
|
111
|
+
* 配置:cordis.patch.yml 的 config(安装默认)与
|
|
112
|
+
* ~/.dsh/plugins/adaptive-perf/config.json(设置页 UI,权威)合并,
|
|
113
|
+
* 保存后热生效(新会话立即生效;已运行会话按新配置重算限制)。
|
|
114
|
+
*
|
|
115
|
+
* 依赖:真实工具对需要官方插件包(@deepseek-ai/dsh-terminal 等,声明为
|
|
116
|
+
* optionalDependencies)。它们不可用时本插件自动降级(告警 + 退回旧行为:
|
|
117
|
+
* 只收窄目录、不替换 schema),绝不拖垮 harness。
|
|
118
|
+
*/
|
|
119
|
+
export declare const name = "adaptive-perf";
|
|
120
|
+
/**
|
|
121
|
+
* 默认配置。apply 时与 YAML 传入的 config 合并(cordis 不合并小写 config 导出)。
|
|
122
|
+
*
|
|
123
|
+
* families:工具族。每族可配 tools(该族工具名,需存在于目标 preset 的目录,
|
|
124
|
+
* 插件运行时按实际可见工具取交集,不会因改名/缺失而崩溃)与 keywords(用户消息
|
|
125
|
+
* 命中任一触发词即放行该族;大小写不敏感,子串匹配)。
|
|
126
|
+
*
|
|
127
|
+
* bootstrap:首轮锚定(参照 dsh-anchored-standard 的实测结论)。请求 #1 只暴露
|
|
128
|
+
* bootstrap.tools(真实 Minimal 工具对),剥离 suppressedContextSources 列出的
|
|
129
|
+
* 自动注入上下文;首个持久晋升信号(promoteOn)后完整恢复全部工具与常规注入
|
|
130
|
+
* (晋升是持久信号,compaction/end 不重置);maxTokens>0 时给请求 #1 封顶输出
|
|
131
|
+
* 预算(晋升后剥离)。
|
|
132
|
+
*/
|
|
133
|
+
export declare const DEFAULT_CONFIG: {
|
|
134
|
+
/** 总开关:关闭后插件对会话不产生任何影响。 */
|
|
135
|
+
enabled: boolean;
|
|
136
|
+
/** 应用自适应的 agent preset 列表(composedPreset 返回值)。 */
|
|
137
|
+
presets: string[];
|
|
138
|
+
/**
|
|
139
|
+
* 默认策略(0.7.0):首轮锚定、晋升后 resident 目录(dsh-anchored-standard
|
|
140
|
+
* 语义)。非极简 preset 的会话:请求 #1 按极简条件组装(真实 Minimal 工具
|
|
141
|
+
* 对 + 极简 persona + 屏蔽全局引导段 + 剥离自动注入 + 抑制运行时快照)以
|
|
142
|
+
* 锚定极简轨迹;首个持久晋升信号后进入 resident 阶段——保留 bootstrap 工具
|
|
143
|
+
* 对 + 常驻发现工具(dev_tool_search / skill_search / skill_load),完整
|
|
144
|
+
* 目录经 dev_tool_search 按需解锁(避免晋升时一次性倒出完整目录把轨迹拉回
|
|
145
|
+
* standard-like,anchored-standard 实测的"晋升后回退"问题),常规上下文
|
|
146
|
+
* 注入恢复可见——功能不减少。工具目录默认零裁剪(leanByDefault 关闭,
|
|
147
|
+
* 编排类工具族始终可用);需要时可在设置页按需开启。
|
|
148
|
+
*/
|
|
149
|
+
/** 抑制运行时上下文快照(等同极简模式的 includeRuntimeContext: false)。 */
|
|
150
|
+
suppressRuntimeContext: boolean;
|
|
151
|
+
/** 会话启动时默认隐藏编排类工具族(核心编码工具始终保留)。 */
|
|
152
|
+
leanByDefault: boolean;
|
|
153
|
+
/** 用户消息命中工具族触发词时自动放行该族(会话内单调)。 */
|
|
154
|
+
escalateOnKeyword: boolean;
|
|
155
|
+
/** 工具调用失败(UNKNOWN_TOOL 文本含隐藏工具名)时自动放行该族。 */
|
|
156
|
+
escalateOnUnknownTool: boolean;
|
|
157
|
+
/**
|
|
158
|
+
* 常驻上下文抑制(0.5.0):true = 整个会话剥离自动注入上下文
|
|
159
|
+
* (skill-catalog 技能目录提醒、agent-instructions AGENTS.md 摘要);
|
|
160
|
+
* false = 只在 bootstrap 未晋升阶段剥离,晋升后恢复注入(0.7.0 默认,
|
|
161
|
+
* 与 dsh-anchored-standard 一致:只锚定首轮、不减少后续功能)。
|
|
162
|
+
*/
|
|
163
|
+
suppressInjectedContext: boolean;
|
|
164
|
+
/** 核心编码工具(不进入任何限制族;此处仅作文档展示)。 */
|
|
165
|
+
coreTools: string[];
|
|
166
|
+
/** 默认隐藏、按需放行的工具族。 */
|
|
167
|
+
families: {
|
|
168
|
+
delegation: {
|
|
169
|
+
enabled: boolean;
|
|
170
|
+
tools: string[];
|
|
171
|
+
keywords: string[];
|
|
172
|
+
};
|
|
173
|
+
workflow: {
|
|
174
|
+
enabled: boolean;
|
|
175
|
+
tools: string[];
|
|
176
|
+
keywords: string[];
|
|
177
|
+
};
|
|
178
|
+
ralph: {
|
|
179
|
+
enabled: boolean;
|
|
180
|
+
tools: string[];
|
|
181
|
+
keywords: string[];
|
|
182
|
+
};
|
|
183
|
+
goal: {
|
|
184
|
+
enabled: boolean;
|
|
185
|
+
tools: string[];
|
|
186
|
+
keywords: string[];
|
|
187
|
+
};
|
|
188
|
+
};
|
|
189
|
+
/** 首轮锚定(参照 dsh-anchored-standard)。 */
|
|
190
|
+
bootstrap: {
|
|
191
|
+
/** 是否启用首轮锚定。 */
|
|
192
|
+
enabled: boolean;
|
|
193
|
+
/**
|
|
194
|
+
* 是否挂载真实 Minimal 工具对(0.5.0):把官方 minimal preset 的持久
|
|
195
|
+
* PTY bash + str_replace_editor 挂进 agent 作用域(按名阴影 standard 的
|
|
196
|
+
* sandboxed bash),使请求 #1 的 schema 与 Minimal 逐字相同。依赖
|
|
197
|
+
* @deepseek-ai 官方插件包,不可用时自动降级为旧行为(仅收窄目录)。
|
|
198
|
+
*/
|
|
199
|
+
realPair: boolean;
|
|
200
|
+
/** 请求 #1 可见的工具(真实 Minimal 工具对)。 */
|
|
201
|
+
tools: string[];
|
|
202
|
+
/** 晋升触发:either(默认)/ tool-call / assistant-message。 */
|
|
203
|
+
promoteOn: string;
|
|
204
|
+
/** 请求 #1 剥离的自动注入上下文 source.kind;[] 关闭剥离。 */
|
|
205
|
+
suppressedContextSources: string[];
|
|
206
|
+
/** 晋升后 resident 目录的常驻发现工具(按需解锁完整目录)。 */
|
|
207
|
+
discoveryTools: string[];
|
|
208
|
+
/** 请求 #1 的输出预算封顶(token);0 = 不封顶(opt-in)。 */
|
|
209
|
+
maxTokens: number;
|
|
210
|
+
};
|
|
211
|
+
/**
|
|
212
|
+
* 极简提示词层(语域锚定,参照 dsh-anchored-standard 的完整条件)。
|
|
213
|
+
*
|
|
214
|
+
* 参考实现指出:首轮"轨迹"(思维链风格)锚定需要 **Minimal 的完整 system
|
|
215
|
+
* prompt**——只收窄工具 schema 不够。本层对目标 preset 的会话:
|
|
216
|
+
* - suppressSections:按名阴影屏蔽全局引导段(harness:identity、
|
|
217
|
+
* harness:source、app:web-surface),空段在装配时被丢弃,等同极简
|
|
218
|
+
* complete persona 的效果(plan-mode 段、PTC 的 SDK 段不受影响);
|
|
219
|
+
* - persona:按名阴影替换 deployment:persona 为极简语域的短 persona
|
|
220
|
+
* (默认与极简模式逐字相同;留空则不替换)。
|
|
221
|
+
* 两处都是 agent 作用域的 prompt 段阴影,仅影响目标会话,随会话销毁自动
|
|
222
|
+
* 释放;对已恢复/已晋升的旧会话同样生效(不依赖 bootstrap 阶段)。
|
|
223
|
+
*/
|
|
224
|
+
minimalPrompt: {
|
|
225
|
+
/** 是否启用极简提示词层。 */
|
|
226
|
+
enabled: boolean;
|
|
227
|
+
/** 替换后的 persona 文本;与极简模式相同可完全对齐语域。留空不替换。 */
|
|
228
|
+
persona: string;
|
|
229
|
+
/** 屏蔽全局引导段(identity / source / web-surface)。 */
|
|
230
|
+
suppressSections: boolean;
|
|
231
|
+
};
|
|
232
|
+
};
|
|
233
|
+
export declare function normalizeConfig(source: any, defaults?: any): any;
|
|
234
|
+
/** remote.set 的严格校验:非法值直接拒绝并返回错误,而不是静默写坏文件。 */
|
|
235
|
+
export declare function validateConfig(partial: any): void;
|
|
236
|
+
/** 被极简提示词层屏蔽的全局引导段(name, order,与 dsh-app-boot /
|
|
237
|
+
* dsh-web-app / dsh-system-prompt 的注册一致)。 */
|
|
238
|
+
export declare const SECTION_SHADOWS: (string | number)[][];
|
|
239
|
+
/** persona 段的注册名与顺序(dsh-system-prompt 的 PERSONA_SECTION/PERSONA_ORDER)。 */
|
|
240
|
+
export declare const PERSONA_SECTION_NAME = "deployment:persona";
|
|
241
|
+
export declare const PERSONA_SECTION_ORDER = 0;
|
|
242
|
+
/** 提取一条用户消息的顶层文本(text 块拼接)。 */
|
|
243
|
+
export declare function extractUserText(message: any): string;
|
|
244
|
+
/** 大小写不敏感的子串匹配:任一关键词命中即返回 true。 */
|
|
245
|
+
export declare function matchKeywords(text: any, keywords: any): boolean;
|
|
246
|
+
/** 收集一次工具调用失败的模型可见文本(error 字段 + content 文本块)。 */
|
|
247
|
+
export declare function collectFailureText(result: any): string;
|
|
248
|
+
/**
|
|
249
|
+
* 官方 minimal preset 的持久 bash 工具描述,逐字一致。schema(参数)由
|
|
250
|
+
* @deepseek-ai/dsh-tool-bash-persistent 提供,与 minimal preset 挂的是同一
|
|
251
|
+
* 个包;描述在这里显式传入,保证与 minimal 的 agent.cordis.yml 完全一致。
|
|
252
|
+
*/
|
|
253
|
+
export declare const MINIMAL_BASH_DESCRIPTION: string;
|
|
254
|
+
/**
|
|
255
|
+
* 被真实工具对按名阴影的工具引导段:standard 的 sandboxed bash 注册了
|
|
256
|
+
* `tool:bash`(order 105)引导段,挂载真实工具对后该文本已与可见工具不符,
|
|
257
|
+
* 按名阴影为空段(装配时丢弃)。
|
|
258
|
+
*/
|
|
259
|
+
export declare const TOOL_GUIDANCE_SHADOWS: (string | number)[][];
|
|
260
|
+
/** 真实工具对挂载所需的官方插件包说明符(声明在 optionalDependencies)。 */
|
|
261
|
+
export declare const REAL_PAIR_SPECS: {
|
|
262
|
+
terminal: string;
|
|
263
|
+
terminalBash: string;
|
|
264
|
+
bashPersistent: string;
|
|
265
|
+
fsLocal: string;
|
|
266
|
+
strReplaceEditor: string;
|
|
267
|
+
};
|
|
268
|
+
/**
|
|
269
|
+
* 加载真实 Minimal 工具对所需模块。任一包不可用即整体返回 null(调用方
|
|
270
|
+
* 降级为旧行为),绝不抛出。
|
|
271
|
+
* @param importFn - 测试可注入的 import 实现(默认动态 import)。
|
|
272
|
+
*/
|
|
273
|
+
export declare function loadRealPairModules(importFn?: any): Promise<any>;
|
|
274
|
+
/**
|
|
275
|
+
* 计算真实工具对的挂载清单(纯函数,便于测试):
|
|
276
|
+
* 顺序 = 依赖在前(terminals → backend → bash;fs → editor)。
|
|
277
|
+
* @param modules - loadRealPairModules 的结果。
|
|
278
|
+
* @param cwd - str_replace_editor 本地 fs 的工作目录(会话 cwd)。
|
|
279
|
+
*/
|
|
280
|
+
export declare function realPairMounts(modules: any, cwd: any): any[];
|
|
281
|
+
/**
|
|
282
|
+
* 在 agent 作用域挂载真实工具对(scoped registration 按名阴影继承工具)。
|
|
283
|
+
* 每个挂载是一个独立 fiber,dispose 时全部副作用(工具/schema/服务)撤销。
|
|
284
|
+
* @param agent - 目标 agent(其 ctx 必须带 scope 标签)。
|
|
285
|
+
* @param mounts - realPairMounts 的结果。
|
|
286
|
+
* @param warn - 日志回调。
|
|
287
|
+
* @returns 可释放的 disposer 列表。
|
|
288
|
+
*/
|
|
289
|
+
export declare function mountRealPair(agent: any, mounts: any, warn: any): any[];
|
|
290
|
+
/**
|
|
291
|
+
* 从 agent/pre-step 的 decision.messages 剥离指定 source.kind 的消息。
|
|
292
|
+
* 保留原数组引用(未变化时)便于调用方判断。
|
|
293
|
+
*/
|
|
294
|
+
export declare function stripSuppressedMessages(messages: any, suppressedSources: any): any;
|
|
295
|
+
/** promoteOn 配置 → 晋升的持久事件类型集合。 */
|
|
296
|
+
export declare const PROMOTE_EVENTS: {
|
|
297
|
+
'tool-call': string[];
|
|
298
|
+
'assistant-message': string[];
|
|
299
|
+
either: string[];
|
|
300
|
+
};
|
|
301
|
+
/**
|
|
302
|
+
/**
|
|
303
|
+
* dev_tool_search:搜索完整可见目录并按名解锁工具(解锁结果下一请求生效,
|
|
304
|
+
* 经 syncBootstrap 重算 deny 集;解锁记录写入 a.unlocked,resume-safe 由
|
|
305
|
+
* loadUnlockedFromEvents 从持久事件恢复)。
|
|
306
|
+
*/
|
|
307
|
+
export declare function createDevToolSearch({ schemasOf, onUnlock, catalogHint }: any): any;
|
|
308
|
+
/**
|
|
309
|
+
* skill_search:按关键词搜索可用技能(仅摘要,替代 ~9KB 目录注入)。
|
|
310
|
+
* skillsOf 返回宿主 skills 服务(调用期解析)。
|
|
311
|
+
*/
|
|
312
|
+
export declare function createSkillSearch({ skillsOf }: any): any;
|
|
313
|
+
/**
|
|
314
|
+
* skill_load:按精确名加载单个技能的完整说明,经 agent.inject 作为
|
|
315
|
+
* source.kind='skill-invocation' 的下一条上下文消息注入(用户主动技能手势
|
|
316
|
+
* 同款来源,绝不被默认抑制集剥离)。
|
|
317
|
+
*/
|
|
318
|
+
export declare function createSkillLoad({ skillsOf }: any): any;
|
|
319
|
+
/** 提取已加载技能定义的模型可见正文(与参考实现一致)。 */
|
|
320
|
+
export declare function extractSkillBody(skill: any): string;
|
|
321
|
+
/**
|
|
322
|
+
* 扫描一段持久会话日志,推导 { promoted } 阶段。
|
|
323
|
+
* 晋升是持久信号(与 dsh-anchored-standard 一致):首次 promoteOn 事件后
|
|
324
|
+
* 恒为已晋升,resume/reload 不丢状态,compaction 不重置。
|
|
325
|
+
*/
|
|
326
|
+
export declare function scanPhase(events: any, promoteEvents: any): any;
|
|
327
|
+
/** 增量喂入一个持久事件(仅更新已存在条目;冷会话由 scanPhase 全量推导)。 */
|
|
328
|
+
export declare function observePhase(state: any, sessionId: any, event: any): void;
|
|
329
|
+
/**
|
|
330
|
+
* 按 keep 集合收窄装配后的工具目录。
|
|
331
|
+
* @returns { tools, missing } —— missing 非空表示 keep 中的工具在目录里缺失,
|
|
332
|
+
* 调用方决定是否降级(全目录放行)。
|
|
333
|
+
*/
|
|
334
|
+
export declare function filterBootstrapTools(assembly: any, keep: any): any;
|
|
335
|
+
/** 按 source.kind 剥离自动注入的上下文消息(保留主动的用户消息)。 */
|
|
336
|
+
export declare function filterBootstrapMessages(messages: any, suppressedSources: any): any;
|
|
337
|
+
/** 首轮输出预算:未晋升 → 封顶;已晋升 → 若仍带着封顶值则剥离。 */
|
|
338
|
+
export declare function applyBootstrapBudget(config: any, promoted: any, maxTokens: any): any;
|
|
339
|
+
/** 把配置 namespace 注册进宿主 settings 体系(dsh-settings 0.1.0-rc.7+)。
|
|
340
|
+
* 设置页 describe() 只枚举 settings.register 注册过的 namespace;本插件
|
|
341
|
+
* 的卡片读写不经过宿主 settings 文档,注册只为让卡片出现在设置页。
|
|
342
|
+
* options.base 必传当前生效配置快照:宿主 resolve = schema(mergeLayers(base,
|
|
343
|
+
* section)),schema 无默认值时 base 缺失会让 describe() 的 value 为
|
|
344
|
+
* undefined,而设置页 wire 校验要求 value 非空(invalid_type: nonoptional),
|
|
345
|
+
* 一项失败会拖垮整个设置页。本插件的 any() schema 完全依赖 base。
|
|
346
|
+
* fail-safe(schema 库/服务缺失静默跳过)+ 幂等(重复注册忽略)。
|
|
347
|
+
* 导出以便测试注入 Schema stub。 */
|
|
348
|
+
export declare function registerSettingsNamespace(ctx: any, ns: any, schemaLib: any, buildSchema: any, options: any): boolean;
|
|
349
|
+
export declare function apply(ctx: any, config: any, options?: any): Promise<void>;
|
|
350
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|