@te-river/opencode-team-mode 1.5.13 → 1.5.14

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.
Files changed (56) hide show
  1. package/README.md +3 -0
  2. package/README.zh-CN.md +3 -0
  3. package/dist/agents.d.ts.map +1 -1
  4. package/dist/agents.js +4 -2
  5. package/dist/agents.js.map +1 -1
  6. package/dist/capabilities.d.ts +66 -0
  7. package/dist/capabilities.d.ts.map +1 -0
  8. package/dist/capabilities.js +165 -0
  9. package/dist/capabilities.js.map +1 -0
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +35 -0
  12. package/dist/index.js.map +1 -1
  13. package/dist/tm/browser.d.ts +25 -0
  14. package/dist/tm/browser.d.ts.map +1 -1
  15. package/dist/tm/browser.js +90 -2
  16. package/dist/tm/browser.js.map +1 -1
  17. package/dist/tm/cache.d.ts +68 -0
  18. package/dist/tm/cache.d.ts.map +1 -0
  19. package/dist/tm/cache.js +157 -0
  20. package/dist/tm/cache.js.map +1 -0
  21. package/dist/tm/config.d.ts +19 -0
  22. package/dist/tm/config.d.ts.map +1 -1
  23. package/dist/tm/config.js +4 -0
  24. package/dist/tm/config.js.map +1 -1
  25. package/dist/tm/dispatch.d.ts +30 -2
  26. package/dist/tm/dispatch.d.ts.map +1 -1
  27. package/dist/tm/dispatch.js +133 -26
  28. package/dist/tm/dispatch.js.map +1 -1
  29. package/dist/tm/dupe-guard.d.ts +58 -0
  30. package/dist/tm/dupe-guard.d.ts.map +1 -0
  31. package/dist/tm/dupe-guard.js +105 -0
  32. package/dist/tm/dupe-guard.js.map +1 -0
  33. package/dist/tm/index.d.ts +5 -0
  34. package/dist/tm/index.d.ts.map +1 -1
  35. package/dist/tm/index.js +20 -2
  36. package/dist/tm/index.js.map +1 -1
  37. package/dist/tm/perm-ask.d.ts +1 -0
  38. package/dist/tm/perm-ask.d.ts.map +1 -1
  39. package/dist/tm/perm-ask.js +15 -1
  40. package/dist/tm/perm-ask.js.map +1 -1
  41. package/dist/tm/pipelines.d.ts.map +1 -1
  42. package/dist/tm/pipelines.js +11 -0
  43. package/dist/tm/pipelines.js.map +1 -1
  44. package/dist/tm/search.d.ts +5 -0
  45. package/dist/tm/search.d.ts.map +1 -1
  46. package/dist/tm/search.js +44 -4
  47. package/dist/tm/search.js.map +1 -1
  48. package/dist/tm/stats.d.ts +117 -0
  49. package/dist/tm/stats.d.ts.map +1 -0
  50. package/dist/tm/stats.js +296 -0
  51. package/dist/tm/stats.js.map +1 -0
  52. package/dist/tm/webfetch.d.ts +19 -0
  53. package/dist/tm/webfetch.d.ts.map +1 -1
  54. package/dist/tm/webfetch.js +64 -3
  55. package/dist/tm/webfetch.js.map +1 -1
  56. package/package.json +1 -1
package/README.md CHANGED
@@ -221,6 +221,7 @@ through with `tm_fetch` when it genuinely needs the payload.
221
221
  | `tm_webfetch` | Single governed GET of an allowlisted page (search pages auto-extracted) | Lead + Researcher |
222
222
  | `tm_dispatch` / `tm_join` | **Async sub-agent dispatch**: `tm_dispatch` starts a specialist in its own child session and returns the id immediately (the built-in `task` tool blocks you until it finishes), `tm_join` collects — status snapshot, bounded `waitMs`, `cancel:true` to abort a runaway child; collected replies ride the offload pipeline, so five fat reports arrive as handles + previews instead of multiplying your context. Lead-only, and a child never dispatches | Lead only |
223
223
  | `tm_pty` | **Non-blocking command execution** on the host's own terminal sessions (`start`/`status`/`list`/`kill`) — independent builds and test suites overlap instead of queueing behind one 120 s bash call. Captures no output (the command tees its own log; read it with `tm_read`), and every start passes the R6 classifier, the R2 danger-face globs **and** the official confirmation dialog before a process exists | Lead only |
224
+ | `tm_stats` | **The plugin reads its own trajectory back**: tokens kept out of the context window by offloading (net of the preview that arrived), seconds saved by dispatch overlap (serial cost minus the wall window the children actually used), PTC internals, governance counts (blocked subresources, refused `tm_pty` starts, clamped bash timeouts, cache hits, redactions) — plus the **host capability matrix** (`已验证/存在未用/待观察/缺失/需人眼` per host surface). Read-only over files this plugin wrote; run it first after an OpenCode upgrade | All agents |
224
225
  | `tm_browser` | Interactive browser session (**your default browser**): 16 Playwright verbs (snapshot-first `take_snapshot` → uid-addressed `click`/`fill`/`drag`/…) + 5 legacy compat verbs (open/navigate/read/screenshot/close); Playwright engine needs Node ≥ 20, below that (or on any import failure) it auto-degrades to the legacy CDP engine. It drives YOUR default browser channel (an Edge Beta default opens Edge Beta), stays headful unless the operator sets `TM_BROWSER_HEADLESS`, loads a page's own images/CSS/JS via the `same-site` subresource policy, and `take_screenshot { image:true }` attaches a JPEG so the model can actually see the screen | Lead + Researcher + Tester (UI verification) |
225
226
 
226
227
  > **Fixed tool priority ladder (every task): ① TeamMode governed tools
@@ -474,6 +475,8 @@ for overrides, extra agents and disabling roles.
474
475
  | `TM_BROWSER_SNAPSHOT_MAX_TOKENS` | `1200` | hard cap on `take_snapshot` payloads |
475
476
  | `TM_BROWSER_SUBRESOURCE` | `same-site` | what a page may load after its navigation was allowed: `same-site` = images/media/fonts/stylesheets always, scripts/XHR only for a site this session actually opened; `passive` = only the passive types; `off` = the legacy every-request gate. Blocked requests surface as a "N 个子资源请求被拦截" note on the next snapshot |
476
477
  | `TM_BROWSER_IDLE_MS` | `180000` | an untouched browser session closes itself after this many ms (0 disables) and tells the user — a window nobody owns is a user-facing bug |
478
+ | `TM_BROWSER_ASK_EVAL` | `on` | `evaluate_script` runs arbitrary JS in YOUR browser — the one verb the domain allowlist can't cover (it limits where we navigate, not what a loaded page hands back). One official-dialog consent per browser session; no ask bridge ⇒ refused. `off` restores the old behaviour; the result redaction (JWT/bearer/cookie/api-key shapes) is NOT switchable |
479
+ | `TM_WEB_CACHE_TTL_SEC` | `300` | how long a governed fetch may re-serve the same URL (0 = off). One store shared by tm_webfetch / tm_search / the PTC bridge; entries are hash-named (a token-bearing query never hits disk) and are only read or written for hops the STATIC allowlist admitted — dialog consent stays per-request, and a re-served page says 缓存命中 |
477
480
  | `TM_BROWSER_IMAGE_MAX_BYTES` | `400000` | ceiling on the JPEG `take_screenshot { image:true }` inlines into the model's context (above it the reply stays path-only and says why) |
478
481
  | `TM_SEARCH_WEIGHTS` | unset | per-engine fusion weight overrides, e.g. `bing=0.3,hn=0.25`; anything unset keeps the built-in table |
479
482
  | `TM_SEARCH_RELEVANCE_FLOOR` | `0.35` | weight fraction kept by a hit that shares no query token with its title/snippet/host (demotes junk without deleting an engine) |
package/README.zh-CN.md CHANGED
@@ -215,6 +215,7 @@ HMAC 句柄,agent 真需要 payload 时用 `tm_fetch` 分页取。
215
215
  | `tm_webfetch` | 白名单页面的单次受治理 GET(搜索页自动提取) | Lead + Researcher |
216
216
  | `tm_dispatch` / `tm_join` | **异步子代理派发**:`tm_dispatch` 在独立子会话里启动某个专员并立刻返回其 id(内置 `task` 会把你阻塞到子代理结束),`tm_join` 负责回收——不带参数=状态快照,`waitMs`=有界等待,`cancel:true` 取消跑飞的子任务;回收到的回复同样走卸载管线,五份长报告变成句柄+预览而不是压垮你的上下文 | 仅 Lead(子代理不得再派发) |
217
217
  | `tm_pty` | 在宿主自己的终端会话上**非阻塞执行命令**(`start`/`status`/`list`/`kill`):独立的构建与测试各自一个会话并行跑,不再串成一条 120 秒的 bash 调用。它不抓输出(命令自己 tee 日志,用 `tm_read` 读),且每次启动都先过 R6 分类器、R2 危险面 glob,再走官方确认窗,才真的建进程 | 仅 Lead |
218
+ | `tm_stats` | **插件把自己的 trajectory 读回来**:卸载挡在上下文之外的 token(扣掉确实回来的预览)、派发重叠省下的秒数(串行代价减去子代理实际占用的墙钟)、PTC 内部量、治理计数(被拦子资源、`tm_pty` 拒绝、bash 超时夹顶、缓存命中、脱敏次数)——外加**宿主能力矩阵**(每个宿主接口标 `已验证/存在未用/待观察/缺失/需人眼`)。只读本插件自己写的文件;OpenCode 升级后第一个跑它 | 全角色 |
218
219
  | `tm_browser` | 交互式浏览器会话(**驱动你的默认浏览器**):16 个 Playwright 动词(快照优先:`take_snapshot` → 按 uid 寻址的 `click`/`fill`/`drag`…)+ 5 个旧版兼容动词(open/navigate/read/screenshot/close);Playwright 引擎需 Node ≥ 20,不满足或导入失败时自动降级到旧版 CDP 引擎。它开的是**你自己的默认浏览器渠道**(默认装 Edge Beta 就开 Beta),除操作者设 `TM_BROWSER_HEADLESS` 外保持有头;页面自家图片/CSS/JS 靠 `same-site` 子资源策略正常加载;`take_screenshot { image:true }` 会附一张 JPEG,让模型真能看见画面 | Lead + Researcher + Tester(仅 UI 验证) |
219
220
 
220
221
  > **固定工具优先级阶梯(每个任务都适用):① TeamMode 受治理工具(`tm_*`)
@@ -429,6 +430,8 @@ Team Lead 自己从不删黑板,你可以随时审计任何一次运行。
429
430
  | `TM_SEARCH_DISABLED_ENGINES` | 未设 | 从引擎表与所有 `auto` 路由中移除的引擎(`sogou,baidu` 写法) |
430
431
  | `TM_BROWSER_SUBRESOURCE` | `same-site` | 顶层导航过白名单后,页面子资源的策略:`same-site` = 图/媒体/字体/样式表一律放行,脚本/XHR 仅当属于本次会话真正打开过的站点;`passive` = 只放被动资源;`off` = 旧行为(逐请求过白名单)。被拦掉的请求会在下一次快照以"N 个子资源请求被拦截"告知 |
431
432
  | `TM_BROWSER_IDLE_MS` | `180000` | 无人触碰的浏览器会话超过该毫秒数自动关闭并提示用户(0 关闭该回收)——没人负责的窗口是打扰用户的 bug |
433
+ | `TM_BROWSER_ASK_EVAL` | `on` | `evaluate_script` 在**你的**浏览器里跑任意 JS——这是域白名单管不住的唯一动词(白名单限制我们去哪儿导航,管不了已加载的页面交回什么)。每个浏览器会话走一次官方确认窗;没有 ask 桥就拒绝。`off` 恢复旧行为;结果脱敏(JWT/bearer/cookie/api-key 形状)不可关闭 |
434
+ | `TM_WEB_CACHE_TTL_SEC` | `300` | 受治理抓取在同一 URL 上可复用多久(0 = 关)。tm_webfetch / tm_search / PTC 桥共用一份缓存;条目以哈希命名(带令牌的查询串不落盘),且只在**静态白名单**放行的那一跳读写——弹窗授权仍是逐请求的,复用命中会标注 缓存命中 |
432
435
  | `TM_BROWSER_IMAGE_MAX_BYTES` | `400000` | `take_screenshot { image:true }` 内联给模型的 JPEG 上限;超过则只回路径并说明原因 |
433
436
  | `TM_BASH_TIMEOUT_PROBE_MS` | `60000` | 对只读探针命令(P3 白名单内)强制夹顶模型自设的 `timeout`(0 关闭) |
434
437
  | `TM_BASH_TIMEOUT_MAX_MS` | `0` | 其它 bash 命令的可选全局上限——默认关闭,真实构建保留它要的超时 |
@@ -1 +1 @@
1
- {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../src/agents.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAkH9D;;4DAE4D;AAC5D,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAIhG;AAiLD,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAO9C,CAAA"}
1
+ {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../src/agents.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAoH9D;;4DAE4D;AAC5D,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAIhG;AAiLD,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAO9C,CAAA"}
package/dist/agents.js CHANGED
@@ -89,8 +89,10 @@ const PER_AGENT_TOOLS = ["edit", "write", "task", "bash", "todowrite", "question
89
89
  /** The governed tools, named explicitly next to the "tm_*" wildcard
90
90
  * (belt-and-braces: the explicit allows survive even if a host ever
91
91
  * stops expanding the wildcard). tm_memory is the project memory store —
92
- * not a network channel, available to all six agents. */
93
- const TM_TOOLS = ["tm_read", "tm_grep", "tm_bash", "tm_fetch", "tm_memory"];
92
+ * not a network channel, available to all six agents. tm_stats reads this
93
+ * plugin's own trajectory (no network, no shell, no secrets) so any role can
94
+ * answer "what did we spend" — and after a host upgrade, "what broke". */
95
+ const TM_TOOLS = ["tm_read", "tm_grep", "tm_bash", "tm_fetch", "tm_memory", "tm_stats"];
94
96
  /** M3: tm_ptc_run — explicit per-agent grant. v1.5.4 revised the original
95
97
  * M3 ruling (five specialists = allow, team = deny): ALL SIX agents now
96
98
  * get `allow` (per user request, CHANGELOG 1.5.4), overriding the tm_*
@@ -1 +1 @@
1
- {"version":3,"file":"agents.js","sourceRoot":"","sources":["../src/agents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agents.js","sourceRoot":"","sources":["../src/agents.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Host-capability probe — the "fail loud, not silent" seam (2026-09-19).
3
+ *
4
+ * Everything this plugin does interesting leans on a host surface that is NOT
5
+ * part of a stability promise: `ctx.ask`, the `permission.asked` event,
6
+ * `client.session.create/promptAsync/children`, `client.pty.*`, `tui.showToast`,
7
+ * and the handful of hooks the host agrees to call (`tool.definition`,
8
+ * `chat.params`, `shell.env`, the compaction pair). Each of our features
9
+ * already degrades gracefully when one of those disappears — which is exactly
10
+ * the problem: an OpenCode upgrade can quietly take `tm_pty` and every web
11
+ * dialog out of the build, and the only symptom is the agent working around
12
+ * something the user never agreed to lose.
13
+ *
14
+ * So the plugin records what it ACTUALLY sees and says it out loud once:
15
+ * - `missing` — the surface is gone; the named feature is off.
16
+ * - `declared` — the surface exists but nothing has exercised it yet.
17
+ * - `ok` — observed working in this process (a hook fired, an event
18
+ * arrived, an ask bridge was handed to a tool).
19
+ * - `not-seen` — the host has not called/fired it since startup; the
20
+ * feature is armed and waiting (NOT evidence of a break).
21
+ * - `unverified`— we emit the contract; only a human can see the result
22
+ * (the `attachments` screenshot — the host either paints it
23
+ * or ignores it, and we cannot observe which).
24
+ *
25
+ * `tm_stats` renders the live matrix; a missing REQUIRED surface also raises
26
+ * one toast at startup, so a host upgrade is reported instead of discovered
27
+ * mid-task. Nothing here ever throws and nothing probes the network.
28
+ */
29
+ /** How each row was decided — kept as data so a test can pin the reasoning. */
30
+ export type CapState = "ok" | "declared" | "missing" | "not-seen" | "unverified";
31
+ export type CapEvidence = "static" | "hook" | "event" | "runtime" | "human";
32
+ export interface CapabilityRow {
33
+ /** The host surface, spelled the way the user reads it in a toast. */
34
+ seam: string;
35
+ /** What we lose if it is gone. */
36
+ feature: string;
37
+ state: CapState;
38
+ evidence: CapEvidence;
39
+ note?: string;
40
+ }
41
+ export interface CapabilityProbe {
42
+ observeAskBridge(present: boolean): void;
43
+ observeEvent(type: string): void;
44
+ observeHook(name: string): void;
45
+ /** Live matrix for tm_stats. */
46
+ snapshot(): CapabilityRow[];
47
+ /** Rows the plugin considers load-bearing and did NOT find. */
48
+ missingRequired(): CapabilityRow[];
49
+ /** One trajectory line + (when something required is gone) one toast. */
50
+ report(): {
51
+ rows: CapabilityRow[];
52
+ missing: string[];
53
+ };
54
+ }
55
+ export declare function createCapabilityProbe(deps: {
56
+ client: unknown;
57
+ /** `input.$` — the host shell bridge, handed outside the client object. */
58
+ hasShellBridge?: boolean;
59
+ /** Already-resolved R6 reply capability (index.ts owns that decision). */
60
+ hasPermissionReply?: boolean;
61
+ trajectory?: (event: Record<string, unknown>) => void;
62
+ notify?: (message: string) => void;
63
+ }): CapabilityProbe;
64
+ /** Markdown table for tm_stats — the shape the host renders fastest. */
65
+ export declare function renderCapabilityMatrix(rows: readonly CapabilityRow[]): string;
66
+ //# sourceMappingURL=capabilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,+EAA+E;AAC/E,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,YAAY,CAAA;AAEhF,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAA;AAE3E,MAAM,WAAW,aAAa;IAC5B,sEAAsE;IACtE,IAAI,EAAE,MAAM,CAAA;IACZ,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,QAAQ,CAAA;IACf,QAAQ,EAAE,WAAW,CAAA;IACrB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAmED,MAAM,WAAW,eAAe;IAC9B,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAA;IACxC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,gCAAgC;IAChC,QAAQ,IAAI,aAAa,EAAE,CAAA;IAC3B,+DAA+D;IAC/D,eAAe,IAAI,aAAa,EAAE,CAAA;IAClC,yEAAyE;IACzE,MAAM,IAAI;QAAE,IAAI,EAAE,aAAa,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;CACvD;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,MAAM,EAAE,OAAO,CAAA;IACf,2EAA2E;IAC3E,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,0EAA0E;IAC1E,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;IACrD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC,GAAG,eAAe,CAoElB;AAED,wEAAwE;AACxE,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,SAAS,aAAa,EAAE,GAAG,MAAM,CAQ7E"}
@@ -0,0 +1,165 @@
1
+ /**
2
+ * Host-capability probe — the "fail loud, not silent" seam (2026-09-19).
3
+ *
4
+ * Everything this plugin does interesting leans on a host surface that is NOT
5
+ * part of a stability promise: `ctx.ask`, the `permission.asked` event,
6
+ * `client.session.create/promptAsync/children`, `client.pty.*`, `tui.showToast`,
7
+ * and the handful of hooks the host agrees to call (`tool.definition`,
8
+ * `chat.params`, `shell.env`, the compaction pair). Each of our features
9
+ * already degrades gracefully when one of those disappears — which is exactly
10
+ * the problem: an OpenCode upgrade can quietly take `tm_pty` and every web
11
+ * dialog out of the build, and the only symptom is the agent working around
12
+ * something the user never agreed to lose.
13
+ *
14
+ * So the plugin records what it ACTUALLY sees and says it out loud once:
15
+ * - `missing` — the surface is gone; the named feature is off.
16
+ * - `declared` — the surface exists but nothing has exercised it yet.
17
+ * - `ok` — observed working in this process (a hook fired, an event
18
+ * arrived, an ask bridge was handed to a tool).
19
+ * - `not-seen` — the host has not called/fired it since startup; the
20
+ * feature is armed and waiting (NOT evidence of a break).
21
+ * - `unverified`— we emit the contract; only a human can see the result
22
+ * (the `attachments` screenshot — the host either paints it
23
+ * or ignores it, and we cannot observe which).
24
+ *
25
+ * `tm_stats` renders the live matrix; a missing REQUIRED surface also raises
26
+ * one toast at startup, so a host upgrade is reported instead of discovered
27
+ * mid-task. Nothing here ever throws and nothing probes the network.
28
+ */
29
+ const SEAMS = [
30
+ {
31
+ seam: "ToolContext.ask",
32
+ feature: "out-of-allowlist web fetch/search/browser + every tm_pty start",
33
+ evidence: "runtime",
34
+ observed: ["ask-bridge"],
35
+ required: true,
36
+ note: "first observed by whichever tm_* tool runs",
37
+ },
38
+ { seam: "client.session.create+promptAsync", feature: "tm_dispatch (non-blocking lead)", evidence: "static", path: "session.promptAsync", required: true },
39
+ { seam: "client.session.children", feature: "tm_join recovery after a restart", evidence: "static", path: "session.children" },
40
+ { seam: "client.session.status", feature: "tm_join bounded wait", evidence: "static", path: "session.status" },
41
+ { seam: "client.session.abort", feature: "tm_join cancel:true", evidence: "static", path: "session.abort" },
42
+ { seam: "client.pty.create", feature: "tm_pty (non-blocking commands)", evidence: "static", path: "pty.create", required: true },
43
+ { seam: "client.permission.reply", feature: "the approval gate's auto-reject timer", evidence: "static", path: "permission.reply", required: true },
44
+ { seam: "tui.showToast", feature: "a toast when a dialog is waiting", evidence: "static", path: "tui.showToast" },
45
+ { seam: "input.$ (shell bridge)", feature: "tm_bash via the host shell (else spawn fallback)", evidence: "static", path: "$" },
46
+ {
47
+ seam: "event permission.asked",
48
+ feature: "R6/R2 dialog observation + the unanswered-ask timer",
49
+ evidence: "event",
50
+ observed: ["permission.asked"],
51
+ note: "only arrives once something asks — absence so far is not a break",
52
+ },
53
+ { seam: "hook tool.execute.before", feature: "bash timeout clamp + R6 deferral", evidence: "hook", observed: ["hook:tool.execute.before"], required: true },
54
+ { seam: "hook tool.definition", feature: "TM_TOOL_HINTS on built-in bash/task", evidence: "hook", observed: ["hook:tool.definition"] },
55
+ { seam: "hook chat.params", feature: "TM_AGENT_TEMPERATURE", evidence: "hook", observed: ["hook:chat.params"] },
56
+ { seam: "hook shell.env", feature: "NO_COLOR / TM_SHELL_ENV passthrough", evidence: "hook", observed: ["hook:shell.env"] },
57
+ { seam: "hook experimental.session.compacting", feature: "the must-survive compaction context", evidence: "hook", observed: ["hook:session.compacting"] },
58
+ {
59
+ seam: "ToolResult.attachments",
60
+ feature: "tm_browser take_screenshot { image:true }",
61
+ evidence: "human",
62
+ state: "unverified",
63
+ note: "we emit the official shape; whether the desktop paints it is only visible to you",
64
+ },
65
+ ];
66
+ /** Read a dot path off the live client without assuming any of it exists. */
67
+ function pathPresent(client, dotted) {
68
+ if (dotted === "$")
69
+ return false; // resolved by the caller — not a client path
70
+ let cur = client;
71
+ for (const seg of dotted.split(".")) {
72
+ if (!cur || typeof cur !== "object")
73
+ return false;
74
+ cur = cur[seg];
75
+ }
76
+ return typeof cur === "function";
77
+ }
78
+ export function createCapabilityProbe(deps) {
79
+ const ok = new Set();
80
+ if (deps.hasShellBridge)
81
+ ok.add("$");
82
+ if (deps.hasPermissionReply)
83
+ ok.add("permission.reply");
84
+ const presentOf = (spec) => {
85
+ if (!spec.path)
86
+ return null;
87
+ if (spec.path === "$")
88
+ return !!deps.hasShellBridge;
89
+ if (spec.path === "permission.reply")
90
+ return !!deps.hasPermissionReply;
91
+ return pathPresent(deps.client, spec.path);
92
+ };
93
+ const rowFor = (spec) => {
94
+ const observed = (spec.observed ?? []).some((name) => ok.has(name));
95
+ const present = presentOf(spec);
96
+ const row = { seam: spec.seam, feature: spec.feature, evidence: spec.evidence, state: "not-seen" };
97
+ if (spec.state === "unverified")
98
+ row.state = "unverified";
99
+ else if (observed)
100
+ row.state = "ok";
101
+ else if (present === false)
102
+ row.state = "missing";
103
+ else if (spec.evidence === "static")
104
+ row.state = "declared";
105
+ else
106
+ row.state = "not-seen";
107
+ if (spec.note)
108
+ row.note = spec.note;
109
+ return row;
110
+ };
111
+ let reported = false;
112
+ const report = () => {
113
+ const rows = SEAMS.map(rowFor);
114
+ const missing = rows.filter((r) => r.state === "missing").map((r) => r.seam);
115
+ if (reported)
116
+ return { rows, missing };
117
+ reported = true;
118
+ try {
119
+ deps.trajectory?.({ tool: "capabilities", step_id: "boot", event: "probe", rows: rows.map((r) => `${r.seam}=${r.state}`) });
120
+ }
121
+ catch {
122
+ /* observability only */
123
+ }
124
+ const required = SEAMS.filter((s, i) => s.required && rows[i].state === "missing").map((s) => s.feature);
125
+ if (required.length) {
126
+ try {
127
+ deps.notify?.(`检测到宿主接口缺失,本进程已降级:${required.join(";")}。` +
128
+ `(OpenCode 升级后常见。用 tm_stats 看完整能力矩阵。)`);
129
+ }
130
+ catch {
131
+ /* notification is best-effort */
132
+ }
133
+ }
134
+ return { rows, missing };
135
+ };
136
+ return {
137
+ observeAskBridge(present) {
138
+ if (present)
139
+ ok.add("ask-bridge");
140
+ },
141
+ observeEvent(type) {
142
+ const t = String(type ?? "");
143
+ if (t === "permission.asked" || t === "permission.updated")
144
+ ok.add("permission.asked");
145
+ },
146
+ observeHook(name) {
147
+ const n = String(name ?? "");
148
+ if (n)
149
+ ok.add(`hook:${n}`);
150
+ },
151
+ snapshot: () => SEAMS.map(rowFor),
152
+ missingRequired: () => SEAMS.map(rowFor).filter((r, i) => SEAMS[i].required && r.state === "missing"),
153
+ report,
154
+ };
155
+ }
156
+ /** Markdown table for tm_stats — the shape the host renders fastest. */
157
+ export function renderCapabilityMatrix(rows) {
158
+ const badge = (s) => s === "ok" ? "✓ 已验证" : s === "declared" ? "◦ 存在未用" : s === "missing" ? "✗ 缺失" : s === "not-seen" ? "… 待观察" : "? 需人眼";
159
+ const lines = ["| 宿主接口 | 影响的能力 | 状态 |", "|---|---|---|"];
160
+ for (const r of rows) {
161
+ lines.push(`| \`${r.seam}\` | ${r.feature} | ${badge(r.state)}${r.note ? ` — ${r.note}` : ""} |`);
162
+ }
163
+ return lines.join("\n");
164
+ }
165
+ //# sourceMappingURL=capabilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,KAAK,EAAE,cAAc,EAA8C,MAAM,YAAY,CAAA;AAkD5F,QAAA,MAAM,MAAM,EAAE,cAyQb,CAAA;AAED,eAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,KAAK,EAAE,cAAc,EAA8C,MAAM,YAAY,CAAA;AAoD5F,QAAA,MAAM,MAAM,EAAE,cA4Sb,CAAA;AAED,eAAe,MAAM,CAAA"}
package/dist/index.js CHANGED
@@ -35,6 +35,8 @@ import { createEnvProtectHook, parseExtraDeny, resolveEnvProtectMode, bashAskPat
35
35
  import { createApprovalGate, resolveAskTimeoutMs, hasPermissionReplyCapability, } from "./approval-gate.js";
36
36
  import { createTmTools } from "./tm/index.js";
37
37
  import { createBashTimeoutHook } from "./tm/bash-timeout.js";
38
+ import { createCapabilityProbe } from "./capabilities.js";
39
+ import { setAskBridgeObserver } from "./tm/perm-ask.js";
38
40
  import { applyToolDefinition, applyChatParams, applySessionCompacting, applyCompactionAutoContinue, applyShellEnv, hookSwitches, } from "./host-hooks.js";
39
41
  /** Runtime addendum to the team prompt: concrete board + TTL (hybrid mode). */
40
42
  function blackboardNote(root, ttlDays) {
@@ -133,10 +135,20 @@ const plugin = {
133
135
  // The R6 mode/extra resolved above are passed in so the tm_* pipelines
134
136
  // share the SAME interception source as the built-in tools (anti-backdoor:
135
137
  // the global hook ALSO aliases tm_* onto read/grep/bash — see envprotect).
138
+ // ---------- host-capability probe (see src/capabilities.ts) ----------
139
+ // The plugin's features degrade quietly when a host surface disappears;
140
+ // this records what is actually present and says so once, at startup,
141
+ // instead of letting an OpenCode upgrade surface as an agent working
142
+ // around something the user never agreed to lose.
143
+ let capabilityProbe = null;
136
144
  const tmRuntime = await createTmTools(input, {
137
145
  mode: envProtectMode,
138
146
  extra: envProtectExtra,
139
147
  notify: notifyAsk,
148
+ // The capability probe is built from the tm runtime (it needs the run
149
+ // store to log into), and tm_stats needs the probe back — a declaration
150
+ // before construction breaks the cycle without weakening either side.
151
+ capabilities: () => capabilityProbe?.snapshot() ?? [],
140
152
  // A tm_dispatch child is registered the moment it is created (the
141
153
  // message.updated route below re-confirms it): an exec-role sub-agent
142
154
  // whose session were NOT registered would hard-throw its own protected
@@ -148,6 +160,19 @@ const plugin = {
148
160
  });
149
161
  // ---------- host-hook switches (TM_TOOL_HINTS / TM_COMPACTION_*) ------
150
162
  const hostSwitches = hookSwitches(process.env);
163
+ capabilityProbe = createCapabilityProbe({
164
+ client: input?.client,
165
+ hasShellBridge: typeof input?.$ === "function",
166
+ hasPermissionReply: hasPermissionReplyCapability(input?.client),
167
+ trajectory: (event) => tmRuntime.pipelines.store.appendTrajectory(event),
168
+ notify: notifyAsk,
169
+ });
170
+ // ctx.ask is only observable from inside a tool call — perm-ask reports
171
+ // every lookup it makes, which is how this row ever reaches 已验证.
172
+ setAskBridgeObserver((present) => capabilityProbe?.observeAskBridge(present));
173
+ // Startup report: one trajectory line always, one toast ONLY when a
174
+ // required surface is gone (a missing 待观察 row is not an alarm).
175
+ capabilityProbe.report();
151
176
  // ---------- bash timeout clamp (issue #6, see tm/bash-timeout.ts) ------
152
177
  const bashTimeoutHook = createBashTimeoutHook({
153
178
  probeMs: tmRuntime.config.bashTimeoutProbeMs,
@@ -220,6 +245,7 @@ const plugin = {
220
245
  // model-set bash timeout, then run the R6 interception. The clamp
221
246
  // runs BEFORE R6 so a blocked call is never also a slow one.
222
247
  "tool.execute.before": async (input, output) => {
248
+ capabilityProbe?.observeHook("tool.execute.before");
223
249
  bashTimeoutHook(input, output);
224
250
  await envProtectHook(input, output);
225
251
  },
@@ -228,23 +254,32 @@ const plugin = {
228
254
  // fields whose shape is verified; each is independently switchable,
229
255
  // because this host's d.ts has shipped surfaces the runtime never
230
256
  // fires (permission.ask), so adapters must fail soft, not assume.
257
+ // The `observeHook` calls are that "not assume" made observable: a row
258
+ // stays 待观察 until the host actually calls the hook, and tm_stats
259
+ // reports it either way.
231
260
  "tool.definition": (input, output) => {
261
+ capabilityProbe?.observeHook("tool.definition");
232
262
  applyToolDefinition(input, output, hostSwitches.toolHints);
233
263
  },
234
264
  "chat.params": (input, output) => {
265
+ capabilityProbe?.observeHook("chat.params");
235
266
  applyChatParams(input, output, process.env);
236
267
  },
237
268
  "experimental.session.compacting": (input, output) => {
269
+ capabilityProbe?.observeHook("session.compacting");
238
270
  applySessionCompacting(output, hostSwitches.compactionContext);
239
271
  },
240
272
  "experimental.compaction.autocontinue": (input, output) => {
273
+ capabilityProbe?.observeHook("compaction.autocontinue");
241
274
  applyCompactionAutoContinue(output, process.env);
242
275
  },
243
276
  "shell.env": (input, output) => {
277
+ capabilityProbe?.observeHook("shell.env");
244
278
  applyShellEnv(output, process.env);
245
279
  },
246
280
  // ---------- unified approval gate: watch the host permission dialog ---
247
281
  event: ({ event }) => {
282
+ capabilityProbe?.observeEvent(event?.type ?? "");
248
283
  // Async dispatch bookkeeping runs FIRST and independently of R6:
249
284
  // session.idle / .error are what tell the lead its children settled.
250
285
  tmRuntime.observeDispatchEvent(event);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -133,6 +133,31 @@ export declare function subresourcePass(opts: {
133
133
  * footprint to its own site. Called for EVERY top-level/document request
134
134
  * that passed the allowlist side. */
135
135
  export declare function rememberSite(allowedSites: Set<string>, url: string): void;
136
+ /** `evaluate_script` is the one browser verb the network gate cannot cover:
137
+ * the allowlist limits where we NAVIGATE, not what an already-loaded page
138
+ * hands back. In a `TM_BROWSER_USER_DATA_DIR` profile that page may be a
139
+ * signed-in session, and `document.cookie` / `localStorage` / a token in the
140
+ * DOM is one expression away — and its value would then ride into the model
141
+ * context, the run store and the trajectory. So: ask once per browser
142
+ * session (the OFFICIAL dialog), and name-anchor the result on the shapes
143
+ * that are secrets, not on "looks random" (which would blank legitimate
144
+ * JSON and teach the agent to distrust every read). */
145
+ export declare const EVAL_SECRET_SHAPES: ReadonlyArray<{
146
+ name: string;
147
+ re: RegExp;
148
+ }>;
149
+ /** Mask every known secret shape in an in-page result. Returns the masked
150
+ * text plus WHICH kinds were masked (counted, never the values). */
151
+ export declare function redactEvalResult(text: string): {
152
+ text: string;
153
+ masked: string[];
154
+ };
155
+ /** Consent is per BROWSER SESSION, not per call: one dialog when the lead
156
+ * decides to script the page, then the round stops paying for it. */
157
+ export declare function needsEvalConsent(policy: "on" | "off", alreadyApproved: boolean | undefined): boolean;
158
+ /** Host only — the consent line in the dialog and in the trajectory never
159
+ * carries a query string (a search URL can hold the very token we guard). */
160
+ export declare function hostOnly(url: string): string;
136
161
  export type BrowserEngineKind = "playwright" | "cdp-legacy";
137
162
  /** playwright-core 1.63 targets node >= 20; on anything older we refuse the
138
163
  * engine up-front and stay on the zero-dependency CDP pipe (the node>=18
@@ -1 +1 @@
1
- {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../src/tm/browser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../src/tm/browser.ts"],"names":[],"mappings":"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"}