@deepwhale/coding-agent 1.0.0 → 1.0.9

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.
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @deepwhale/coding-agent/policy — Tool call policy.
3
+ *
4
+ * Sprint 1c-revive-2-D-24.2 (2026-06-06): 新建 policy/index.ts 让顶层
5
+ * `export * from './policy/index.js'` 能 re-export (供 tui-ink 子包使用).
6
+ *
7
+ * 之前没有 index.ts — D-24.1 之前只有内部消费 (repl/print/rpc), 顶层不 export.
8
+ * D-24.2 tui-ink 走同样的 ToolPolicy 容器迁移, 需要顶层 import.
9
+ *
10
+ * 业务逻辑 0 重写: 单纯 barrel re-export, 跟其他 index.ts 一致.
11
+ */
12
+ export { staticToolPolicy } from './static-rules.js';
13
+ export { evaluatePolicy } from './chain.js';
14
+ export { computeArgsDigest } from './args-digest.js';
15
+ export { sanitizeReason } from './sanitize-reason.js';
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/policy/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA"}
package/dist/repl.d.ts CHANGED
@@ -21,6 +21,7 @@ import { SessionWriter } from '@deepwhale/core';
21
21
  import { ChatMessage, LLMClient, type Usage } from '@deepwhale/llm';
22
22
  import { type AgentCompactionConfig } from './agent/index.js';
23
23
  import { type Provider } from './llm-factory.js';
24
+ export { createReplConfirm } from './repl/repl-confirm.js';
24
25
  import type { ToolPolicy } from './policy/types.js';
25
26
  import type { SandboxRunner } from './sandbox/types.js';
26
27
  export interface ReplOptions {
@@ -110,7 +111,7 @@ export declare function startRepl(options?: ReplOptions): Promise<number>;
110
111
  * 用 client + 固定 prompt 模板生成, 跟 test 1c-revive-2-D-5 cluster 拍板一致.
111
112
  * 单测通过 export 暴露,直接注入 mock LLMClient + WritableStream 验证行为。
112
113
  */
113
- export declare function runAgentTurn(client: LLMClient, userInput: string, workingMessages: ChatMessage[], writer: SessionWriter | null, out: NodeJS.WritableStream, err: NodeJS.WritableStream, signal: AbortSignal, compactionConfig?: AgentCompactionConfig | null, sandboxRunner?: SandboxRunner, yes?: boolean, policy?: ToolPolicy): Promise<void>;
114
+ export declare function runAgentTurn(client: LLMClient, userInput: string, workingMessages: ChatMessage[], writer: SessionWriter | null, out: NodeJS.WritableStream, err: NodeJS.WritableStream, signal: AbortSignal, compactionConfig?: AgentCompactionConfig | null, sandboxRunner?: SandboxRunner, yes?: boolean, policy?: ToolPolicy, emaState?: UsageEmaState): Promise<void>;
114
115
  /**
115
116
  * Sprint 1b: 把 usage 翻译成人类可读的一行 status, 写到 stderr (不污染 stdout 流式输出)。
116
117
  *
@@ -121,6 +122,33 @@ export declare function runAgentTurn(client: LLMClient, userInput: string, worki
121
122
  * - 无 usage → 完全不打印 (LLM 没返 usage 时不污染 stderr)
122
123
  *
123
124
  * Sprint 1c 抽 pricing 到 config.toml, 此函数签名不变。
125
+ *
126
+ * Sprint 1c-revive-2-D-21.1 (2026-06-06, 修 cache 96%↔85% 跳变 footer 焦虑):
127
+ * 增 emaState 形参. 形参 hitRateEMA 是过去 5-turn 滚动平均 (α=0.5 平滑).
128
+ * 输出: `cache: 90% (avg 85%)` — per-turn 数字 + 趋势均值并列. user 视角:
129
+ * 1) 知道当 turn 真值, 2) 知道趋势 (avg 不会跟着单 turn 抖动).
130
+ * 边界:
131
+ * - sampleCount < 3: 不显示 (avg) 段 (样本太少, 趋势没意义, 不污染)
132
+ * - sampleCount >= 3: 显示 (avg NN%)
133
+ * - ema 永远存在 (闭包外, startRepl 持有), 跨 turn 累积
134
+ * 行为兼容: 旧 caller 不传 emaState 用默认 { hitRateEMA: undefined, sampleCount: 0 }
135
+ * → 行为跟改前一致 (不显示 avg 段). 现有单测 (formatUsageStatus) 不破.
136
+ */
137
+ export interface UsageEmaState {
138
+ hitRateEMA?: number;
139
+ sampleCount: number;
140
+ }
141
+ export declare function formatUsageStatus(usage: Usage | undefined, emaState?: UsageEmaState): string | null;
142
+ /**
143
+ * Sprint 1c-revive-2-D-21.1 (2026-06-06): emaState 接受 mutable 引用 (闭包),
144
+ * 在 sampleCount < 5 用 cold-start EMA (直接赋值), 之后 α=0.5 平滑:
145
+ * newEMA = α * current + (1 - α) * oldEMA = 0.5 * current + 0.5 * oldEMA
146
+ * α=0.5 是 "等权平滑" (5-turn 半衰期 ≈ 1 turn, 快速响应 + 适度平滑).
147
+ * 数学: sampleCount=5 时, 5 turn 前的数据权重 = 0.5^5 = 3.1% (基本忘掉),
148
+ * 跟 5-turn rolling window 趋势一致, 但 EMA 实现更轻.
149
+ *
150
+ * export 出来供单测 (test/unit/usage-ema.test.ts) 验证 state machine.
151
+ * 之前是 local function, D-21.1 改成 export — 单测需要直接调它验 in-place update.
124
152
  */
125
- export declare function formatUsageStatus(usage: Usage | undefined): string | null;
153
+ export declare function appendUsageStatus(usage: Usage | undefined, err: NodeJS.WritableStream, emaState: UsageEmaState): void;
126
154
  //# sourceMappingURL=repl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"repl.d.ts","sourceRoot":"","sources":["../src/repl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAKH,OAAO,EAAiB,aAAa,EAAqB,MAAM,iBAAiB,CAAC;AAClF,OAAO,EAEL,WAAW,EAGX,SAAS,EAKT,KAAK,KAAK,EACX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAQL,KAAK,qBAAqB,EAG3B,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAuB,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAKtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAIxD,MAAM,WAAW,WAAW;IAC1B,+EAA+E;IAC/E,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;;;;OAIG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,oHAAoH;IACpH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IAC9B,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IAC/B,4BAA4B;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IACpC,mCAAmC;IACnC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC;IAChC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8DAA8D;IAC9D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;;;;;;;;;;OAaG;IACH,gBAAgB,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC;IAC1E;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,mBAAmB,EAAE,WAAW,EAAE,CAAC;CAC1D;AAED;;;;;;GAMG;AACH,wBAAsB,UAAU,CAC9B,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAO,GACrC,OAAO,CACR;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAC3F,CAcA;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CA4b1E;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,WAAW,EAAE,EAC9B,MAAM,EAAE,aAAa,GAAG,IAAI,EAC5B,GAAG,EAAE,MAAM,CAAC,cAAc,EAC1B,GAAG,EAAE,MAAM,CAAC,cAAc,EAC1B,MAAM,EAAE,WAAW,EACnB,gBAAgB,GAAE,qBAAqB,GAAG,IAAW,EAGrD,aAAa,CAAC,EAAE,aAAa,EAE7B,GAAG,CAAC,EAAE,OAAO,EAGb,MAAM,CAAC,EAAE,UAAU,GAClB,OAAO,CAAC,IAAI,CAAC,CA+Gf;AAiBD;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAqBzE"}
1
+ {"version":3,"file":"repl.d.ts","sourceRoot":"","sources":["../src/repl.ts"],"names":[],"mappings":"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"}
package/dist/repl.js CHANGED
@@ -30,6 +30,7 @@ import { buildSummaryAndNext, formatReport, runVerify } from './verify/index.js'
30
30
  import { resolveSandboxRunnerFromEnv } from './sandbox/env-gate.js';
31
31
  import { staticToolPolicy } from './policy/static-rules.js';
32
32
  import { createReplConfirm } from './repl/repl-confirm.js'; // D-15: REPL y/N confirm 工厂
33
+ export { createReplConfirm } from './repl/repl-confirm.js'; // Sprint 1c-revive-2-D-24.2: re-export for tui-ink
33
34
  const VERSION = '0.1.0';
34
35
  /**
35
36
  * 单轮 chat 工具函数:把 user 输入 → LLM chat → 输出 assistant 文本。
@@ -74,6 +75,12 @@ export async function startRepl(options = {}) {
74
75
  const clientFromOptions = options.client;
75
76
  let client = clientFromOptions ?? null;
76
77
  let clientError = clientFromOptions ? null : null;
78
+ // Sprint 1c-revive-2-D-21.1 (2026-06-06, 修默认走 Anthropic 误判 bug):
79
+ // tryCreateClient 之前 catch 静默存 clientError, stderr 啥都不说, 用户根本
80
+ // 不知道. 现在 catch 时显式 stderr 写一行 [deepwhale] init error, 跟 chat
81
+ // 路径 (L494 error.api_key_missing) 互补. 走 createDefaultClient → resolveProvider
82
+ // "Both set" 错时, 显式 message 让用户立刻看到 "改用 --provider 决断".
83
+ let initErrorReported = false;
77
84
  const tryCreateClient = () => {
78
85
  if (clientFromOptions)
79
86
  return { client: clientFromOptions, error: null };
@@ -92,6 +99,13 @@ export async function startRepl(options = {}) {
92
99
  catch (e) {
93
100
  const err = e instanceof Error ? e : new Error(String(e));
94
101
  clientError = err;
102
+ if (!initErrorReported) {
103
+ initErrorReported = true;
104
+ // 走 stderr, 跟 chat 路径保持一致, 避免用户看不到. 拍板: message 含
105
+ // 原始 err.message (有 "Both set" 关键信息), 不强行套 i18n (i18n 太泛
106
+ // 用户看不出是 Both set 还是 No key).
107
+ stderr.write(`[deepwhale] init error: ${err.message}\n`);
108
+ }
95
109
  return { client: null, error: err };
96
110
  }
97
111
  };
@@ -134,6 +148,11 @@ export async function startRepl(options = {}) {
134
148
  out.write(`${t('cli.no_api_key_hint')}\n\n`);
135
149
  // session 加载
136
150
  let workingMessages = [];
151
+ // Sprint 1c-revive-2-D-21.1 (2026-06-06, 修 cache 96%↔85% 跳变 footer 焦虑):
152
+ // EMA 平滑闭包 state. appendUsageStatus 每 turn in-place 更新, formatUsageStatus
153
+ // 读 ema 显示 (avg NN%). 跨 turn 累积, 闭包内 mutable, 不持久化 (session reload
154
+ // 后 sampleCount 重置为 0, 避免误导 — user 看到 avg 段消失就知道 reload 过了).
155
+ const emaState = { sampleCount: 0 };
137
156
  const writer = sessionPath ? new SessionWriter(sessionPath) : null;
138
157
  const reader = sessionPath ? new SessionReader(sessionPath) : null;
139
158
  if (writer && reader) {
@@ -391,7 +410,8 @@ export async function startRepl(options = {}) {
391
410
  const liveClient = c.client;
392
411
  try {
393
412
  if (enableToolLoop) {
394
- await runAgentTurn(liveClient, line, workingMessages, writer, out, err, turnAbortController.signal, compactionConfig, sandboxRunner, policyYes, replPolicy);
413
+ await runAgentTurn(liveClient, line, workingMessages, writer, out, err, turnAbortController.signal, compactionConfig, sandboxRunner, policyYes, replPolicy, // D-15: 注入 y/N confirm; 默认 staticToolPolicy 向后兼容
414
+ emaState);
395
415
  }
396
416
  else {
397
417
  const turn = await runOneTurn(liveClient, line, [], { signal: turnAbortController.signal });
@@ -496,7 +516,11 @@ sandboxRunner,
496
516
  yes,
497
517
  // Sprint 1c-revive-3-D-15: 透传 policy 进 turn (REPL 注入 replPolicy; 单测传
498
518
  // staticToolPolicy 走 baseline). undefined = 默认 staticToolPolicy (向后兼容).
499
- policy) {
519
+ policy,
520
+ // Sprint 1c-revive-2-D-21.1 (2026-06-06, 修 cache 96%↔85% 跳变 footer 焦虑):
521
+ // EMA state 透传 (闭包持有). 旧 caller 不传 = 默认 EMPTY_EMA, 行为兼容
522
+ // (不显示 avg 段). REPL 路径必传, 跨 turn 累积.
523
+ emaState) {
500
524
  // 1) 持久化 user 输入
501
525
  if (writer) {
502
526
  const userEvent = {
@@ -601,7 +625,10 @@ policy) {
601
625
  // 7) Sprint 1b: Prefix-cache 可观测性 — 每 turn 打印一行 status 到 stderr
602
626
  // 风格: 分两行(跟 plan 拍板), 不污染 stdout 流式输出, 不打 prompt 前面
603
627
  // 字段: cache_hit_rate / cost_turn / prompt / completion, 多字段同值时去冗余(Hermes footer 教训)
604
- appendUsageStatus(result.final.usage, err);
628
+ // Sprint 1c-revive-2-D-21.1 (2026-06-06, 修 cache 96%↔85% 跳变 footer 焦虑):
629
+ // 加 EMA 滚动平均 5-turn 平滑, 显示 "cache: 90% (avg 85%)". per-turn 数字
630
+ // 仍是真实值, avg 是过去 5 turn 平滑趋势. user 不会被单 turn 抖动骗.
631
+ appendUsageStatus(result.final.usage, err, emaState ?? EMPTY_EMA);
605
632
  }
606
633
  function appendStepSummary(step, out, err) {
607
634
  if (step.kind === 'tool') {
@@ -613,18 +640,8 @@ function appendStepSummary(step, out, err) {
613
640
  }
614
641
  // 'assistant' / 'limit' / 'error' 的 summary 留 Sprint 1b(不污染 Sprint 1a 验收面)
615
642
  }
616
- /**
617
- * Sprint 1b: 把 usage 翻译成人类可读的一行 status, 写到 stderr (不污染 stdout 流式输出)。
618
- *
619
- * 显示规则 (Hermes footer 教训应用 — 多字段同值时去冗余):
620
- * - 满 usage (有 cached_tokens) → 完整 4 字段: cache: 90% | ¥0.05/turn | prompt 1.2k (1.1k cached)
621
- * - 无 cached_tokens → 简化为: usage: 1.2k prompt / 200 completion
622
- * (不打 cache% / cost, 避免没数据时显示 0% 误导)
623
- * - 无 usage → 完全不打印 (LLM 没返 usage 时不污染 stderr)
624
- *
625
- * Sprint 1c 抽 pricing 到 config.toml, 此函数签名不变。
626
- */
627
- export function formatUsageStatus(usage) {
643
+ const EMPTY_EMA = { sampleCount: 0 };
644
+ export function formatUsageStatus(usage, emaState = EMPTY_EMA) {
628
645
  if (usage === undefined)
629
646
  return null;
630
647
  const { prompt_tokens, completion_tokens } = usage;
@@ -635,17 +652,23 @@ export function formatUsageStatus(usage) {
635
652
  // 满 usage: 完整 status
636
653
  const hitRatePct = ((usage.cache_hit_rate ?? 0) * 100).toFixed(0);
637
654
  const uncached = formatTokens(usage.tokens_uncached ?? prompt_tokens);
655
+ // Sprint 1c-revive-2-D-21.1: EMA 平滑尾部段. sampleCount >= 3 才显示 avg
656
+ // (样本太少趋势不稳). 不更新 caller state, 只读 (state update 在
657
+ // appendUsageStatus, 这是纯函数好测).
658
+ const avgSegment = emaState.sampleCount >= 3 && emaState.hitRateEMA !== undefined
659
+ ? ` (avg ${(emaState.hitRateEMA * 100).toFixed(0)}%)`
660
+ : '';
638
661
  // Sprint 1b.5 Step 2.5 (F5 拍板, review 2026-06-03 找到): cost_turn/cost_currency 都 absent
639
662
  // (R7 中间路径 / F4 保守) → 安静少显示字段, **不**显示 'cost ?'. 跟 1b 拍板 "absent 安静"
640
663
  // 一致. user 视角看 'cost ?/turn' 是 'UI 不知道' 不是 '这次没算', 显示 '?' 反而误导.
641
664
  if (usage.cost_turn === undefined || usage.cost_currency === undefined) {
642
- return `cache: ${hitRatePct}% | prompt ${formatTokens(prompt_tokens)} (${uncached} new)`;
665
+ return `cache: ${hitRatePct}%${avgSegment} | prompt ${formatTokens(prompt_tokens)} (${uncached} new)`;
643
666
  }
644
667
  // cost 字段齐: 读 cost_currency 决 symbol
645
668
  const symbol = formatCostSymbol(usage.cost_currency);
646
669
  const cost = usage.cost_turn; // narrowed by 上面 if guard (cost_turn !== undefined)
647
670
  const costStr = cost < 0.01 ? `${symbol}${cost.toFixed(4)}` : `${symbol}${cost.toFixed(3)}`;
648
- return `cache: ${hitRatePct}% | ${costStr}/turn | prompt ${formatTokens(prompt_tokens)} (${uncached} new)`;
671
+ return `cache: ${hitRatePct}%${avgSegment} | ${costStr}/turn | prompt ${formatTokens(prompt_tokens)} (${uncached} new)`;
649
672
  }
650
673
  /** cost_currency → 显示 symbol. 不在 UI 层做汇率换算. */
651
674
  function formatCostSymbol(currency) {
@@ -663,8 +686,31 @@ function formatTokens(n) {
663
686
  return `${(n / 1000).toFixed(1)}k`;
664
687
  return String(n);
665
688
  }
666
- function appendUsageStatus(usage, err) {
667
- const line = formatUsageStatus(usage);
689
+ /**
690
+ * Sprint 1c-revive-2-D-21.1 (2026-06-06): emaState 接受 mutable 引用 (闭包),
691
+ * 在 sampleCount < 5 用 cold-start EMA (直接赋值), 之后 α=0.5 平滑:
692
+ * newEMA = α * current + (1 - α) * oldEMA = 0.5 * current + 0.5 * oldEMA
693
+ * α=0.5 是 "等权平滑" (5-turn 半衰期 ≈ 1 turn, 快速响应 + 适度平滑).
694
+ * 数学: sampleCount=5 时, 5 turn 前的数据权重 = 0.5^5 = 3.1% (基本忘掉),
695
+ * 跟 5-turn rolling window 趋势一致, 但 EMA 实现更轻.
696
+ *
697
+ * export 出来供单测 (test/unit/usage-ema.test.ts) 验证 state machine.
698
+ * 之前是 local function, D-21.1 改成 export — 单测需要直接调它验 in-place update.
699
+ */
700
+ export function appendUsageStatus(usage, err, emaState) {
701
+ // 同步更新 EMA state (in-place). 调 formatUsageStatus 之前先 update,
702
+ // 防止 "刚 sample 1 个, display 当 turn 仍显示 sample 0 的 ema".
703
+ if (usage !== undefined && usage.cached_tokens !== undefined) {
704
+ const current = usage.cache_hit_rate ?? 0;
705
+ if (emaState.hitRateEMA === undefined) {
706
+ emaState.hitRateEMA = current;
707
+ }
708
+ else {
709
+ emaState.hitRateEMA = 0.5 * current + 0.5 * emaState.hitRateEMA;
710
+ }
711
+ emaState.sampleCount += 1;
712
+ }
713
+ const line = formatUsageStatus(usage, emaState);
668
714
  if (line !== null) {
669
715
  err.write(` ${line}\n`);
670
716
  }
package/dist/repl.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"repl.js","sourceRoot":"","sources":["../src/repl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repl.js","sourceRoot":"","sources":["../src/repl.ts"],"names":[],"mappings":"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"}