@wendongfly/myhi 1.3.161 → 1.3.163
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/dist/chat.html +12 -7
- package/dist/index.js +4 -4
- package/dist/index.min.js +3 -3
- package/package.json +1 -1
package/dist/chat.html
CHANGED
|
@@ -2303,12 +2303,11 @@
|
|
|
2303
2303
|
// 关键:idle 放最后——渲染最终答复的 addAssistantMessage 会把状态置回 'working',
|
|
2304
2304
|
// 若在其之前置 idle 会被顶回「执行中」+ 取消按钮不复位。渲染全部完成后再回 idle。
|
|
2305
2305
|
setWorkState('idle');
|
|
2306
|
-
//
|
|
2307
|
-
|
|
2308
|
-
|
|
2309
|
-
|
|
2310
|
-
|
|
2311
|
-
}
|
|
2306
|
+
// 收尾水位提示:水位只认 assistant 消息的 usage(单次 API 调用 = 当前真实上下文)。
|
|
2307
|
+
// ⚠ result 的 usage 是「claude 进程启动以来所有调用的累计值」(1.3.162 实测确认),
|
|
2308
|
+
// 拿它更新水位会把会话越跑越「虚高」——长会话轮末突然报 231% 而实际 21% 就是它。
|
|
2309
|
+
// assistant 流中已实时更新 chip,这里只按已有水位补一次阈值提示(80/90 档各一次)。
|
|
2310
|
+
if (_lastCtxTokens > 0) ctxMaybeNudge(_lastCtxTokens);
|
|
2312
2311
|
break;
|
|
2313
2312
|
case 'content_block_start':
|
|
2314
2313
|
// 流式内容块开始:thinking 时创建占位,由 thinking_delta 增量填充;
|
|
@@ -2632,7 +2631,9 @@
|
|
|
2632
2631
|
// ── 输入处理 ──────────────────────────────────
|
|
2633
2632
|
window.sendCommand = sendCommand;
|
|
2634
2633
|
// ── 上下文水位指示 ──────────────────────────────
|
|
2635
|
-
// 数据源:claude 每条 assistant
|
|
2634
|
+
// 数据源:claude 每条 **assistant** 消息的 usage(input + cache 读/写)= 该次 API 调用的
|
|
2635
|
+
// 上下文总量 ≈ 当前上下文大小。result 消息的 usage 是进程内累计值(1.3.162 实测),
|
|
2636
|
+
// 绝不能拿来算水位——长会话会虚高数倍(231% vs 实际 21% 的教训)。
|
|
2636
2637
|
// claude 满 ~90% 会 auto-compact;myhi 显示水位 + 过阈值提示,让用户在任务节点**主动**压缩更可控。
|
|
2637
2638
|
const CTX_WARN = 0.75, CTX_URGENT = 0.9;
|
|
2638
2639
|
let _ctxIs1M = false; // stream 里 model 带 [1m] 后缀(如 claude-opus-5-5[1m])→ 精确判定 1M 窗口
|
|
@@ -2766,6 +2767,10 @@
|
|
|
2766
2767
|
ctxUpdate(_lastCtxTokens || 0);
|
|
2767
2768
|
openCtxSheet(); // 重开面板重渲染(重新拉数据)
|
|
2768
2769
|
};
|
|
2770
|
+
// 注意:不要试图把 claude 自带的 /context 接进来——headless -p stream-json 模式下
|
|
2771
|
+
// /context 不被执行而是被当成普通提示词发给模型(实测 2.1.283 烧一轮真实查询,
|
|
2772
|
+
// 回「Hey! I'm ready to help」),明细表只在交互式终端渲染。myhi 的 usage 估算
|
|
2773
|
+
// (input + cache 读/写)就是 headless 下唯一可行的水位来源。
|
|
2769
2774
|
|
|
2770
2775
|
// 服务端本地处理的 slash 命令(agent.js 拦截后只回一条 system/info、不 spawn claude、
|
|
2771
2776
|
// 永远等不到 result)—— 这些不能进 thinking/working 态,否则没人把它清回来:
|