@te-river/opencode-team-mode 1.6.2 → 1.7.0

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 (198) hide show
  1. package/README.md +117 -118
  2. package/README.zh-CN.md +98 -100
  3. package/dist/agents.d.ts.map +1 -1
  4. package/dist/agents.js +89 -79
  5. package/dist/agents.js.map +1 -1
  6. package/dist/approval-gate.d.ts +8 -9
  7. package/dist/approval-gate.d.ts.map +1 -1
  8. package/dist/approval-gate.js +13 -14
  9. package/dist/approval-gate.js.map +1 -1
  10. package/dist/capabilities.d.ts +11 -37
  11. package/dist/capabilities.d.ts.map +1 -1
  12. package/dist/capabilities.js +11 -141
  13. package/dist/capabilities.js.map +1 -1
  14. package/dist/commands.js +1 -1
  15. package/dist/envprotect/hook.d.ts +12 -31
  16. package/dist/envprotect/hook.d.ts.map +1 -1
  17. package/dist/envprotect/hook.js +13 -91
  18. package/dist/envprotect/hook.js.map +1 -1
  19. package/dist/envprotect/patterns.d.ts +6 -4
  20. package/dist/envprotect/patterns.d.ts.map +1 -1
  21. package/dist/envprotect/patterns.js +6 -4
  22. package/dist/envprotect/patterns.js.map +1 -1
  23. package/dist/envprotect.d.ts +1 -1
  24. package/dist/envprotect.d.ts.map +1 -1
  25. package/dist/envprotect.js +1 -1
  26. package/dist/envprotect.js.map +1 -1
  27. package/dist/host/v2-browser-gate.d.ts +19 -1
  28. package/dist/host/v2-browser-gate.d.ts.map +1 -1
  29. package/dist/host/v2-browser-gate.js +47 -6
  30. package/dist/host/v2-browser-gate.js.map +1 -1
  31. package/dist/host/v2-capabilities.d.ts +33 -0
  32. package/dist/host/v2-capabilities.d.ts.map +1 -1
  33. package/dist/host/v2-capabilities.js +50 -1
  34. package/dist/host/v2-capabilities.js.map +1 -1
  35. package/dist/host/v2-compaction.d.ts +129 -0
  36. package/dist/host/v2-compaction.d.ts.map +1 -0
  37. package/dist/host/v2-compaction.js +346 -0
  38. package/dist/host/v2-compaction.js.map +1 -0
  39. package/dist/host/v2-default-agent.d.ts +37 -0
  40. package/dist/host/v2-default-agent.d.ts.map +1 -0
  41. package/dist/host/v2-default-agent.js +128 -0
  42. package/dist/host/v2-default-agent.js.map +1 -0
  43. package/dist/host/v2-events.d.ts +2 -0
  44. package/dist/host/v2-events.d.ts.map +1 -1
  45. package/dist/host/v2-events.js +27 -0
  46. package/dist/host/v2-events.js.map +1 -1
  47. package/dist/host/v2-guard.d.ts +178 -0
  48. package/dist/host/v2-guard.d.ts.map +1 -1
  49. package/dist/host/v2-guard.js +324 -8
  50. package/dist/host/v2-guard.js.map +1 -1
  51. package/dist/host/v2-offload.d.ts +1 -1
  52. package/dist/host/v2-offload.js +2 -2
  53. package/dist/host/v2-permissions.d.ts +45 -44
  54. package/dist/host/v2-permissions.d.ts.map +1 -1
  55. package/dist/host/v2-permissions.js +48 -49
  56. package/dist/host/v2-permissions.js.map +1 -1
  57. package/dist/host/v2-probe-chain.d.ts +93 -0
  58. package/dist/host/v2-probe-chain.d.ts.map +1 -0
  59. package/dist/host/v2-probe-chain.js +146 -0
  60. package/dist/host/v2-probe-chain.js.map +1 -0
  61. package/dist/host/v2-prune.d.ts +157 -0
  62. package/dist/host/v2-prune.d.ts.map +1 -0
  63. package/dist/host/v2-prune.js +507 -0
  64. package/dist/host/v2-prune.js.map +1 -0
  65. package/dist/host/v2-retry.d.ts +143 -0
  66. package/dist/host/v2-retry.d.ts.map +1 -0
  67. package/dist/host/v2-retry.js +315 -0
  68. package/dist/host/v2-retry.js.map +1 -0
  69. package/dist/host/v2-scope.d.ts.map +1 -1
  70. package/dist/host/v2-scope.js +14 -7
  71. package/dist/host/v2-scope.js.map +1 -1
  72. package/dist/host/v2-session-client.d.ts +24 -0
  73. package/dist/host/v2-session-client.d.ts.map +1 -1
  74. package/dist/host/v2-session-client.js +243 -3
  75. package/dist/host/v2-session-client.js.map +1 -1
  76. package/dist/host/v2-session.d.ts +72 -1
  77. package/dist/host/v2-session.d.ts.map +1 -1
  78. package/dist/host/v2-session.js +154 -10
  79. package/dist/host/v2-session.js.map +1 -1
  80. package/dist/host/v2-tool.d.ts +2 -3
  81. package/dist/host/v2-tool.d.ts.map +1 -1
  82. package/dist/host/v2-tool.js +2 -3
  83. package/dist/host/v2-tool.js.map +1 -1
  84. package/dist/host/v2-types.d.ts +25 -0
  85. package/dist/host/v2-types.d.ts.map +1 -1
  86. package/dist/host/v2.d.ts +14 -12
  87. package/dist/host/v2.d.ts.map +1 -1
  88. package/dist/host/v2.js +500 -73
  89. package/dist/host/v2.js.map +1 -1
  90. package/dist/identity.d.ts +27 -0
  91. package/dist/identity.d.ts.map +1 -0
  92. package/dist/identity.js +34 -0
  93. package/dist/identity.js.map +1 -0
  94. package/dist/index.d.ts +9 -24
  95. package/dist/index.d.ts.map +1 -1
  96. package/dist/index.js +17 -27
  97. package/dist/index.js.map +1 -1
  98. package/dist/prompts/lead.d.ts +1 -1
  99. package/dist/prompts/lead.d.ts.map +1 -1
  100. package/dist/prompts/lead.js +38 -25
  101. package/dist/prompts/lead.js.map +1 -1
  102. package/dist/prompts/shared.d.ts +2 -2
  103. package/dist/prompts/shared.d.ts.map +1 -1
  104. package/dist/prompts/shared.js +66 -56
  105. package/dist/prompts/shared.js.map +1 -1
  106. package/dist/prompts/specialists.d.ts +2 -2
  107. package/dist/prompts/specialists.d.ts.map +1 -1
  108. package/dist/prompts/specialists.js +53 -83
  109. package/dist/prompts/specialists.js.map +1 -1
  110. package/dist/tm/args-schema.d.ts +7 -32
  111. package/dist/tm/args-schema.d.ts.map +1 -1
  112. package/dist/tm/args-schema.js +12 -153
  113. package/dist/tm/args-schema.js.map +1 -1
  114. package/dist/tm/board.d.ts +10 -9
  115. package/dist/tm/board.d.ts.map +1 -1
  116. package/dist/tm/board.js +11 -10
  117. package/dist/tm/board.js.map +1 -1
  118. package/dist/tm/config-files.d.ts +81 -0
  119. package/dist/tm/config-files.d.ts.map +1 -0
  120. package/dist/tm/config-files.js +209 -0
  121. package/dist/tm/config-files.js.map +1 -0
  122. package/dist/tm/config-layers.d.ts +117 -0
  123. package/dist/tm/config-layers.d.ts.map +1 -0
  124. package/dist/tm/config-layers.js +320 -0
  125. package/dist/tm/config-layers.js.map +1 -0
  126. package/dist/tm/config.d.ts +10 -101
  127. package/dist/tm/config.d.ts.map +1 -1
  128. package/dist/tm/config.js +17 -71
  129. package/dist/tm/config.js.map +1 -1
  130. package/dist/tm/dispatch.d.ts +115 -21
  131. package/dist/tm/dispatch.d.ts.map +1 -1
  132. package/dist/tm/dispatch.js +424 -67
  133. package/dist/tm/dispatch.js.map +1 -1
  134. package/dist/tm/egress.d.ts +19 -7
  135. package/dist/tm/egress.d.ts.map +1 -1
  136. package/dist/tm/egress.js +21 -9
  137. package/dist/tm/egress.js.map +1 -1
  138. package/dist/tm/index.d.ts +23 -20
  139. package/dist/tm/index.d.ts.map +1 -1
  140. package/dist/tm/index.js +117 -116
  141. package/dist/tm/index.js.map +1 -1
  142. package/dist/tm/ledger.d.ts +9 -2
  143. package/dist/tm/ledger.d.ts.map +1 -1
  144. package/dist/tm/ledger.js +4 -1
  145. package/dist/tm/ledger.js.map +1 -1
  146. package/dist/tm/perm-ask.d.ts +3 -3
  147. package/dist/tm/perm-ask.d.ts.map +1 -1
  148. package/dist/tm/perm-ask.js +3 -3
  149. package/dist/tm/perm-ask.js.map +1 -1
  150. package/dist/tm/pipelines.d.ts +12 -11
  151. package/dist/tm/pipelines.d.ts.map +1 -1
  152. package/dist/tm/pipelines.js +40 -207
  153. package/dist/tm/pipelines.js.map +1 -1
  154. package/dist/tm/preview.d.ts +1 -1
  155. package/dist/tm/preview.js +3 -3
  156. package/dist/tm/preview.js.map +1 -1
  157. package/dist/tm/refs.d.ts +31 -4
  158. package/dist/tm/refs.d.ts.map +1 -1
  159. package/dist/tm/refs.js +48 -4
  160. package/dist/tm/refs.js.map +1 -1
  161. package/dist/tm/result.d.ts +1 -1
  162. package/dist/tm/result.d.ts.map +1 -1
  163. package/dist/tm/result.js +4 -3
  164. package/dist/tm/result.js.map +1 -1
  165. package/dist/tm/search.d.ts +2 -2
  166. package/dist/tm/search.js +7 -7
  167. package/dist/tm/search.js.map +1 -1
  168. package/dist/tm/serp-loop.d.ts +19 -7
  169. package/dist/tm/serp-loop.d.ts.map +1 -1
  170. package/dist/tm/serp-loop.js +24 -9
  171. package/dist/tm/serp-loop.js.map +1 -1
  172. package/dist/tm/stats.d.ts +12 -27
  173. package/dist/tm/stats.d.ts.map +1 -1
  174. package/dist/tm/stats.js +43 -45
  175. package/dist/tm/stats.js.map +1 -1
  176. package/dist/tm/store.d.ts +18 -5
  177. package/dist/tm/store.d.ts.map +1 -1
  178. package/dist/tm/store.js +39 -9
  179. package/dist/tm/store.js.map +1 -1
  180. package/dist/tm/tools.d.ts +7 -5
  181. package/dist/tm/tools.d.ts.map +1 -1
  182. package/dist/tm/tools.js +10 -41
  183. package/dist/tm/tools.js.map +1 -1
  184. package/dist/tm/webfetch.d.ts +1 -1
  185. package/dist/tm/webfetch.d.ts.map +1 -1
  186. package/dist/tm/webfetch.js +38 -23
  187. package/dist/tm/webfetch.js.map +1 -1
  188. package/dist/types.d.ts +40 -123
  189. package/dist/types.d.ts.map +1 -1
  190. package/dist/types.js +7 -21
  191. package/dist/types.js.map +1 -1
  192. package/docs/installation-v2.md +109 -33
  193. package/docs/installation.md +9 -0
  194. package/docs/research/browser-pane.md +5 -0
  195. package/docs/v2-port-notes.md +87 -0
  196. package/package.json +1 -1
  197. package/scripts/gen-v2-config.mjs +246 -94
  198. package/scripts/lib/fake-ctx.mjs +75 -0
@@ -19,8 +19,39 @@
19
19
  * Everything here is additive and reversible: each hook returns a disposable
20
20
  * registration, and nothing is claimed that the host did not hand us.
21
21
  */
22
- import { COMPACTION_CONTEXT } from "../host-hooks.js";
23
22
  import { V2_LADDER_ACTIONS } from "./v2-permissions.js";
23
+ import { normalizeAgentName } from "../identity.js";
24
+ import { estimateTokens } from "../tm/config.js";
25
+ /**
26
+ * Context lines the host's compaction summarizer must carry forward. On v2 the
27
+ * seam is `session.hook("compaction")` and the lines ride `event.system[]` as
28
+ * text parts; we ADD and never replace, so the summarizer stays the host's and
29
+ * whatever the host itself learns to preserve is not voided. (v1 pushed the
30
+ * same list through `experimental.session.compacting` → `output.context[]`;
31
+ * the list moved here when the v1 adapter layer was cut, and its content is
32
+ * unchanged — it is the only survivor of `src/host-hooks.ts`.)
33
+ *
34
+ * Each line corresponds to a thing that, once summarized away, cannot be
35
+ * re-derived without spending a round to rediscover it:
36
+ * - the reply skeleton — prose instead of STATUS:/CHANGES/… makes the
37
+ * lead's machine check fail for the rest of the session;
38
+ * - offload handles (ref/access_token/expire_at) — they are the ONLY
39
+ * window onto a payload that never entered context;
40
+ * - sub-agent child session ids (host `task`, leftovers of the old
41
+ * running work, and after a summary it looks indistinguishably like done
42
+ * work;
43
+ * - provenance (file:line / URL + confidence) — without it a finding
44
+ * degrades into model memory, the one thing this project refuses;
45
+ * - the todo list and board paths — the state lives there, not in chat.
46
+ */
47
+ export const COMPACTION_CONTEXT = [
48
+ "The GOAL directive survives compaction: the user's own ask (GOAL + its ACCEPTANCE criteria) is the contract for this run — carry it verbatim, keep working while a criterion lacks EVIDENCE, and never let a summarized transcript quietly redefine or shrink what they asked for.",
49
+ "OpenCode TeamMode contract survives compaction: every specialist reply keeps the STATUS / CHANGES / FINDINGS / EVIDENCE / HANDOFF skeleton and the lead machine-checks it — never summarize a reply into prose without those keys.",
50
+ "Offloaded payloads are addressed by handle (ref + access_token + expire_at) from tm_* results. Carry the handles forward VERBATIM; never re-run a tool to rediscover a payload a handle already names.",
51
+ "Sub-agent children (the host's task tool, including background tasks) must survive with their session ids: an uncollected child is still-running work, not finished work — and a turn that ends with children open does NOT mean the task is done. After this summary, keep waiting/collecting before reporting anything as delivered.",
52
+ "Every finding keeps its source (file:line or URL) and confidence tag after compaction, otherwise it is unverifiable memory.",
53
+ "The todo list and the blackboard files are the state, not the transcript: keep task items and board paths, drop chit-chat and raw command echo.",
54
+ ];
24
55
  /** v1 named three built-in tools differently from v2's tool ids. Anything not
25
56
  * listed is already spelled the same on both sides. */
26
57
  const TOOL_RENAMES = {
@@ -34,6 +65,56 @@ const TOOL_RENAMES = {
34
65
  * whitelist exists to withhold. */
35
66
  export const BROWSER_CATALOG = "browser_*";
36
67
  const isDeny = (value) => value === "deny";
68
+ /**
69
+ * #49 feature 4 — task splitting (拆大化小), the cheap mechanical half.
70
+ *
71
+ * The prompt discipline (`## Task splitting` in the lead prompt) says a dispatch
72
+ * owns ONE independently verifiable deliverable. This is the trigger that makes
73
+ * the discipline visible at the moment it is being broken: a `subagent` brief
74
+ * whose text exceeds `TM_SPLIT_BRIEF_TOKENS` arms ONE advice line, injected into
75
+ * the lead's NEXT request. It only ever ADVISES — nothing is rejected, no input
76
+ * is rewritten — because the dupe-guard lesson is that a model can ignore a
77
+ * directive, and a hard gate here would block legitimate large-but-single work.
78
+ *
79
+ * The brief text is read at `tool.hook("execute.before")`, the only seam that
80
+ * sees the `subagent` call's own `input` (the host's field is `input`, and it IS
81
+ * the argument object — measured in v2-subagent.ts). `session.hook("context")`
82
+ * cannot see it: its `messages` are the parent's assembled history, not the
83
+ * dispatch brief. So the trigger lives on `execute.before` and the injection on
84
+ * `context`, both owned by this layer.
85
+ */
86
+ export const SPLIT_MARKER = "## Team Split";
87
+ export const SPLIT_DEFAULTS = { enabled: true, briefTokens: 4000, maxCriteria: 3 };
88
+ const isOff = (value) => typeof value === "string" && /^(off|0|false|no)$/i.test(value.trim());
89
+ const clampNum = (raw, fallback, min, max) => {
90
+ const n = Number(raw);
91
+ if (!Number.isFinite(n))
92
+ return fallback;
93
+ return Math.min(max, Math.max(min, Math.round(n)));
94
+ };
95
+ /** `TM_SPLIT_ADVICE=off` disables; the two numbers are clamped, never trusted raw. */
96
+ export function resolveSplitConfig(env = process.env) {
97
+ return {
98
+ enabled: !isOff(env.TM_SPLIT_ADVICE),
99
+ briefTokens: clampNum(env.TM_SPLIT_BRIEF_TOKENS, SPLIT_DEFAULTS.briefTokens, 200, 200_000),
100
+ maxCriteria: clampNum(env.TM_SPLIT_MAX_CRITERIA, SPLIT_DEFAULTS.maxCriteria, 1, 50),
101
+ };
102
+ }
103
+ /** The brief text of a `subagent` dispatch, or "" when the input is not one.
104
+ * `prompt` is the brief; `description` is the fallback the host also carries. */
105
+ export function briefTextOf(input) {
106
+ if (!input || typeof input !== "object" || Array.isArray(input))
107
+ return "";
108
+ const a = input;
109
+ const prompt = typeof a.prompt === "string" ? a.prompt : "";
110
+ const desc = typeof a.description === "string" ? a.description : "";
111
+ return prompt || desc;
112
+ }
113
+ /** The ONE advice line. It names the measured size, the split rule, and the
114
+ * escape hatch — a directive the user can turn off is not a silent behaviour. */
115
+ export function splitAdviceText(briefTokens, briefTokensLimit, maxCriteria) {
116
+ return `${SPLIT_MARKER}\n上一次派发的 brief 约 ${briefTokens} token(阈值 ${briefTokensLimit},验收标准上限 ${maxCriteria} 条):请把它拆成可独立验收的小片——每个 dispatch 只服务一条可验收的交付,各自带 verbatim 数据契约;每片都要能独立验收,否则不是拆分而是切碎。可 TM_SPLIT_ADVICE=off 关闭。`;
117
+ }
37
118
  /**
38
119
  * The tools one agent must never be offered. Only a literal `deny` removes:
39
120
  * the `{ "*": "ask" }` object form means "callable, gated", and deleting such a
@@ -53,10 +134,10 @@ export function toolsToRemove(permission) {
53
134
  for (const [key, value] of Object.entries(permission ?? {})) {
54
135
  if (!isDeny(value))
55
136
  continue;
56
- if (key === "tm_browser") {
57
- // Both doors go: our own tool AND the host's catalog. Removing only
58
- // tm_browser would leave 45 native browser tools in the request, which is
59
- // the exact surface the whitelist withholds.
137
+ if (key === "browser") {
138
+ // The matrix names the host's `browser` action directly (the self-built
139
+ // self-built browser is retired). A deny on it removes the whole native catalog
140
+ // from the request, which is the exact surface the whitelist withholds.
60
141
  names.push(BROWSER_CATALOG);
61
142
  }
62
143
  // A `tm_*` key IS a tool name, so a DENY on one has to remove it too —
@@ -77,11 +158,13 @@ export function toolsToRemove(permission) {
77
158
  }
78
159
  return [...new Set(names)];
79
160
  }
80
- /** Built once per agent id so the hook body stays a set lookup on a hot path. */
161
+ /** Built once per agent id so the hook body stays a set lookup on a hot path.
162
+ * #38: keys are normalized (lower case) so a host reporting `team` and a config
163
+ * declaring `Team` resolve to the same plan entry. */
81
164
  export function removalPlan(agents) {
82
165
  const plan = new Map();
83
166
  for (const [id, cfg] of Object.entries(agents))
84
- plan.set(id, new Set(toolsToRemove(cfg?.permission)));
167
+ plan.set(normalizeAgentName(id), new Set(toolsToRemove(cfg?.permission)));
85
168
  return plan;
86
169
  }
87
170
  const removable = (name, denied) => denied.has(name) || (denied.has(BROWSER_CATALOG) && name.startsWith("browser_"));
@@ -99,15 +182,27 @@ export async function applyV2SessionLayer(ctx, input) {
99
182
  notePushed: false,
100
183
  compactionLines: 0,
101
184
  tmInRequestSurface: false,
185
+ splitSeen: 0,
186
+ splitAdvised: 0,
187
+ splitThrew: 0,
102
188
  };
103
189
  const session = ctx.session;
104
190
  if (!session || typeof session.hook !== "function") {
105
191
  return { registrations, report };
106
192
  }
193
+ // #49 feature 4: the pending split advice, armed by a `subagent` brief on
194
+ // `execute.before` and consumed by the lead's next `context` request. Held in
195
+ // this closure so the two hooks share one slot; consumed once so a replayed
196
+ // hook cannot duplicate it.
197
+ const split = input.split ?? SPLIT_DEFAULTS;
198
+ let pendingAdvice = null;
107
199
  // Property-access calls, never a captured reference — a detached `hook` loses
108
200
  // its receiver and the host's client throws (see the §10 rule in dispatch.ts).
109
201
  registrations.push(await session.hook("context", (event) => {
110
202
  const agent = String(event?.agent ?? "");
203
+ // #38: the plan and the report are keyed by the NORMALIZED name, so a host
204
+ // reporting `team` and a config declaring `Team` hit the same entry.
205
+ const agentKey = normalizeAgentName(agent);
111
206
  // Anything below this line MUTATES the outgoing request. On a host where
112
207
  // one plugin serves every agent, an unguarded write here would set a build
113
208
  // session's temperature, push our board note into a plan session's system
@@ -115,7 +210,7 @@ export async function applyV2SessionLayer(ctx, input) {
115
210
  if (input.scope && input.scope.count(input.scope.decide(event)) !== "ours")
116
211
  return;
117
212
  input.scope?.learn(agent, event.sessionID);
118
- const denied = input.plan.get(agent);
213
+ const denied = input.plan.get(agentKey);
119
214
  if (denied?.size && event.tools && typeof event.tools === "object") {
120
215
  let cut = 0;
121
216
  for (const name of Object.keys(event.tools)) {
@@ -125,7 +220,7 @@ export async function applyV2SessionLayer(ctx, input) {
125
220
  cut++;
126
221
  }
127
222
  if (cut)
128
- report.removed[agent] = (report.removed[agent] ?? 0) + cut;
223
+ report.removed[agentKey] = (report.removed[agentKey] ?? 0) + cut;
129
224
  }
130
225
  // The observation that settles the delivery question: whatever is left in the
131
226
  // request's own tool map is what the model can call directly. A `tm_*` name
@@ -144,7 +239,7 @@ export async function applyV2SessionLayer(ctx, input) {
144
239
  if (event.options.temperature === undefined)
145
240
  event.options.temperature = input.temperature;
146
241
  }
147
- if (input.note && input.noteAgents.includes(agent) && Array.isArray(event.system)) {
242
+ if (input.note && input.noteAgents.some((n) => normalizeAgentName(n) === agentKey) && Array.isArray(event.system)) {
148
243
  // The hook runs before EVERY model call; if the host reuses the array,
149
244
  // an unguarded push would repeat the note until it crowds out the work.
150
245
  const already = event.system.some((p) => typeof p?.text === "string" && p.text.includes("## Team Blackboard"));
@@ -153,6 +248,24 @@ export async function applyV2SessionLayer(ctx, input) {
153
248
  report.notePushed = true;
154
249
  }
155
250
  }
251
+ // #49 feature 4: inject the pending split advice into the LEAD's next
252
+ // request only. A child session's agent is also one of ours, so gating on
253
+ // scope alone would hand the advice to a specialist; the lead is the only
254
+ // role that dispatches, so it is the only role the advice is for.
255
+ if (pendingAdvice && agentKey === "team" && Array.isArray(event.system)) {
256
+ const already = event.system.some((p) => typeof p?.text === "string" && p.text.includes(SPLIT_MARKER));
257
+ if (!already) {
258
+ event.system.push({ type: "text", text: pendingAdvice });
259
+ report.splitAdvised++;
260
+ try {
261
+ input.onSplit?.({ event: "injected" });
262
+ }
263
+ catch {
264
+ /* the trajectory line is an extra */
265
+ }
266
+ }
267
+ pendingAdvice = null;
268
+ }
156
269
  }));
157
270
  registrations.push(await session.hook("compaction", (event) => {
158
271
  if (input.scope && input.scope.count(input.scope.decide(event)) !== "ours")
@@ -166,6 +279,37 @@ export async function applyV2SessionLayer(ctx, input) {
166
279
  report.compactionLines++;
167
280
  }
168
281
  }));
282
+ // #49 feature 4: the trigger. `execute.before` is the only seam that sees the
283
+ // `subagent` call's own `input`; a brief over the threshold arms ONE advice line
284
+ // for the lead's next request. It never rewrites the input and never rejects.
285
+ const tool = ctx.tool;
286
+ if (split.enabled && tool && typeof tool.hook === "function") {
287
+ registrations.push(await tool.hook("execute.before", (event) => {
288
+ try {
289
+ if (String(event?.tool ?? "") !== "subagent")
290
+ return;
291
+ if (input.scope && input.scope.count(input.scope.decide(event)) !== "ours")
292
+ return;
293
+ const brief = briefTextOf(event?.input);
294
+ if (!brief)
295
+ return;
296
+ const tokens = estimateTokens(brief);
297
+ report.splitSeen++;
298
+ if (tokens <= split.briefTokens)
299
+ return;
300
+ pendingAdvice = splitAdviceText(tokens, split.briefTokens, split.maxCriteria);
301
+ try {
302
+ input.onSplit?.({ event: "advised", brief_tokens: tokens });
303
+ }
304
+ catch {
305
+ /* the trajectory line is an extra */
306
+ }
307
+ }
308
+ catch {
309
+ report.splitThrew++;
310
+ }
311
+ }));
312
+ }
169
313
  return { registrations, report };
170
314
  }
171
315
  //# sourceMappingURL=v2-session.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"v2-session.js","sourceRoot":"","sources":["../../src/host/v2-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"v2-session.js","sourceRoot":"","sources":["../../src/host/v2-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAGhD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,oRAAoR;IACpR,oOAAoO;IACpO,wMAAwM;IACxM,wUAAwU;IACxU,6HAA6H;IAC7H,iJAAiJ;CAClJ,CAAA;AAED;wDACwD;AACxD,MAAM,YAAY,GAAqC;IACrD,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,UAAU;IAChB,WAAW,EAAE,OAAO;CACrB,CAAA;AAED;;;oCAGoC;AACpC,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAA;AAE1C,MAAM,MAAM,GAAG,CAAC,KAAc,EAAW,EAAE,CAAC,KAAK,KAAK,MAAM,CAAA;AAE5D;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAA;AAU3C,MAAM,CAAC,MAAM,cAAc,GAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,CAAA;AAE/F,MAAM,KAAK,GAAG,CAAC,KAAc,EAAW,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;AAEhH,MAAM,QAAQ,GAAG,CAAC,GAAY,EAAE,QAAgB,EAAE,GAAW,EAAE,GAAW,EAAU,EAAE;IACpF,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IACrB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,QAAQ,CAAA;IACxC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACpD,CAAC,CAAA;AAED,sFAAsF;AACtF,MAAM,UAAU,kBAAkB,CAAC,MAA0C,OAAO,CAAC,GAAG;IACtF,OAAO;QACL,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC;QACpC,WAAW,EAAE,QAAQ,CAAC,GAAG,CAAC,qBAAqB,EAAE,cAAc,CAAC,WAAW,EAAE,GAAG,EAAE,OAAO,CAAC;QAC1F,WAAW,EAAE,QAAQ,CAAC,GAAG,CAAC,qBAAqB,EAAE,cAAc,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;KACpF,CAAA;AACH,CAAC;AAED;kFACkF;AAClF,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IAC1E,MAAM,CAAC,GAAG,KAAgC,CAAA;IAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA;IAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAA;IACnE,OAAO,MAAM,IAAI,IAAI,CAAA;AACvB,CAAC;AAED;kFACkF;AAClF,MAAM,UAAU,eAAe,CAAC,WAAmB,EAAE,gBAAwB,EAAE,WAAmB;IAChG,OAAO,GAAG,YAAY,oBAAoB,WAAW,aAAa,gBAAgB,WAAW,WAAW,6GAA6G,CAAA;AACvN,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,aAAa,CAAC,UAAsD;IAClF,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,SAAQ;QAC5B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,wEAAwE;YACxE,iFAAiF;YACjF,wEAAwE;YACxE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QAC7B,CAAC;QACD,uEAAuE;QACvE,4EAA4E;QAC5E,0EAA0E;QAC1E,4EAA4E;QAC5E,qDAAqD;QACrD,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,GAAG,CAAA;QACvC,IAAI,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,SAAQ;QAC3C,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAClB,4EAA4E;QAC5E,+EAA+E;QAC/E,4EAA4E;QAC5E,2EAA2E;QAC3E,IAAI,GAAG,KAAK,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAChD,CAAC;IACD,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;AAC5B,CAAC;AAED;;uDAEuD;AACvD,MAAM,UAAU,WAAW,CACzB,MAAgE;IAEhE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAuB,CAAA;IAC3C,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;IACzH,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,MAAmB,EAAW,EAAE,CAC/D,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAA;AA2ClF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,GAAc,EACd,KAAwB;IAExB,MAAM,aAAa,GAAqB,EAAE,CAAA;IAC1C,MAAM,MAAM,GAAuB;QACjC,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,OAAO,EAAE,EAAE;QACX,UAAU,EAAE,KAAK;QACjB,eAAe,EAAE,CAAC;QAClB,kBAAkB,EAAE,KAAK;QACzB,SAAS,EAAE,CAAC;QACZ,YAAY,EAAE,CAAC;QACf,UAAU,EAAE,CAAC;KACd,CAAA;IACD,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAA;IAC3B,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACnD,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,CAAA;IAClC,CAAC;IAED,0EAA0E;IAC1E,+EAA+E;IAC/E,4EAA4E;IAC5E,4BAA4B;IAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,cAAc,CAAA;IAC3C,IAAI,aAAa,GAAkB,IAAI,CAAA;IAEvC,8EAA8E;IAC9E,+EAA+E;IAC/E,aAAa,CAAC,IAAI,CAChB,MAAM,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAuB,EAAE,EAAE;QACxD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,CAAA;QACxC,2EAA2E;QAC3E,qEAAqE;QACrE,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAA;QAC1C,0EAA0E;QAC1E,2EAA2E;QAC3E,0EAA0E;QAC1E,gEAAgE;QAChE,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,MAAM;YAAE,OAAM;QAClF,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAG,KAAiC,CAAC,SAAS,CAAC,CAAA;QACvE,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACvC,IAAI,MAAM,EAAE,IAAI,IAAI,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACnE,IAAI,GAAG,GAAG,CAAC,CAAA;YACX,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5C,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC;oBAAE,SAAQ;gBACtC,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBACxB,GAAG,EAAE,CAAA;YACP,CAAC;YACD,IAAI,GAAG;gBAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAA;QAC3E,CAAC;QACD,8EAA8E;QAC9E,4EAA4E;QAC5E,8EAA8E;QAC9E,4EAA4E;QAC5E,IAAI,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACnD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5C,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC3B,MAAM,CAAC,kBAAkB,GAAG,IAAI,CAAA;oBAChC,MAAK;gBACP,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,WAAW,KAAK,KAAK,IAAI,KAAK,CAAC,OAAO,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC,CAAQ,0EAA0E;YACxK,yCAAyC;YACzC,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS;gBAAE,KAAK,CAAC,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAA;QAC5F,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAClH,uEAAuE;YACvE,wEAAwE;YACxE,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAC/B,CAAC,CAAC,EAAE,EAAE,CAAC,OAAQ,CAAwB,EAAE,IAAI,KAAK,QAAQ,IAAK,CAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAC1H,CAAA;YACD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;gBACrD,MAAM,CAAC,UAAU,GAAG,IAAI,CAAA;YAC1B,CAAC;QACH,CAAC;QAED,sEAAsE;QACtE,2EAA2E;QAC3E,0EAA0E;QAC1E,kEAAkE;QAClE,IAAI,aAAa,IAAI,QAAQ,KAAK,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YACxE,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAC/B,CAAC,CAAC,EAAE,EAAE,CAAC,OAAQ,CAAwB,EAAE,IAAI,KAAK,QAAQ,IAAK,CAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAClH,CAAA;YACD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAA;gBACxD,MAAM,CAAC,YAAY,EAAE,CAAA;gBACrB,IAAI,CAAC;oBACH,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAA;gBACxC,CAAC;gBAAC,MAAM,CAAC;oBACP,qCAAqC;gBACvC,CAAC;YACH,CAAC;YACD,aAAa,GAAG,IAAI,CAAA;QACtB,CAAC;IACH,CAAC,CAAC,CACH,CAAA;IAED,aAAa,CAAC,IAAI,CAChB,MAAM,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,KAAuB,EAAE,EAAE;QAC3D,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,MAAM;YAAE,OAAM;QAClF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;YAAE,OAAM;QACzC,KAAK,MAAM,IAAI,IAAI,kBAAkB,EAAE,CAAC;YACtC,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAwB,EAAE,IAAI,KAAK,IAAI,CAAC;gBAAE,SAAQ;YAChF,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;YAC/C,MAAM,CAAC,eAAe,EAAE,CAAA;QAC1B,CAAC;IACH,CAAC,CAAC,CACH,CAAA;IAED,+EAA+E;IAC/E,iFAAiF;IACjF,+EAA+E;IAC/E,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;IACrB,IAAI,KAAK,CAAC,OAAO,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC7D,aAAa,CAAC,IAAI,CAChB,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,KAAK,EAAE,EAAE;YAC1C,IAAI,CAAC;gBACH,IAAI,MAAM,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,KAAK,UAAU;oBAAE,OAAM;gBACpD,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,MAAM;oBAAE,OAAM;gBAClF,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;gBACvC,IAAI,CAAC,KAAK;oBAAE,OAAM;gBAClB,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;gBACpC,MAAM,CAAC,SAAS,EAAE,CAAA;gBAClB,IAAI,MAAM,IAAI,KAAK,CAAC,WAAW;oBAAE,OAAM;gBACvC,aAAa,GAAG,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,CAAA;gBAC7E,IAAI,CAAC;oBACH,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAA;gBAC7D,CAAC;gBAAC,MAAM,CAAC;oBACP,qCAAqC;gBACvC,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,CAAC,UAAU,EAAE,CAAA;YACrB,CAAC;QACH,CAAC,CAAC,CACH,CAAA;IACH,CAAC;IAED,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,CAAA;AAClC,CAAC"}
@@ -8,9 +8,8 @@
8
8
  * returned a bare `output` without declaring an `output` schema came back as
9
9
  * "Tool result declared output without an output schema". So the v2 adapter
10
10
  * answers with `content` parts instead — text plus `file` entries, which is
11
- * also the first time tm_browser's screenshot attachment has had a host
12
- * contract we can VERIFY rather than assume (the v1 capability row for it is
13
- * still 未验证).
11
+ * also the first time a screenshot attachment has had a host contract we can
12
+ * VERIFY rather than assume (the v1 capability row for it is still 未验证).
14
13
  * 2. THE CONTEXT. Our tools read `{directory, sessionID, agent, ask}` off the
15
14
  * per-call ctx. v2's ToolContext carries `{sessionID, agent, messageID, id,
16
15
  * progress}` and NO directory and NO ask bridge. Directory comes from the
@@ -1 +1 @@
1
- {"version":3,"file":"v2-tool.d.ts","sourceRoot":"","sources":["../../src/host/v2-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAoC,MAAM,aAAa,CAAA;AACnF,OAAO,KAAK,EAAa,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAkFvF;;;;;;GAMG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAgC7F;AAED,oDAAoD;AACpD,wBAAgB,SAAS,CAAC,GAAG,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAWxF;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,CAcnD;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B;;;iCAG6B;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,cAAc,EACnB,SAAS,EAAE,MAAM;AACjB;8EAC8E;AAC9E,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI;AACrD;;;;;wEAKwE;AACxE,IAAI,GAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAA;CAAO,GACtC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAkB/B"}
1
+ {"version":3,"file":"v2-tool.d.ts","sourceRoot":"","sources":["../../src/host/v2-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAoC,MAAM,aAAa,CAAA;AACnF,OAAO,KAAK,EAAa,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAkFvF;;;;;;GAMG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAgC7F;AAED,oDAAoD;AACpD,wBAAgB,SAAS,CAAC,GAAG,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAWxF;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,CAcnD;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B;;;iCAG6B;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,cAAc,EACnB,SAAS,EAAE,MAAM;AACjB;8EAC8E;AAC9E,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI;AACrD;;;;;wEAKwE;AACxE,IAAI,GAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAA;CAAO,GACtC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAkB/B"}
@@ -8,9 +8,8 @@
8
8
  * returned a bare `output` without declaring an `output` schema came back as
9
9
  * "Tool result declared output without an output schema". So the v2 adapter
10
10
  * answers with `content` parts instead — text plus `file` entries, which is
11
- * also the first time tm_browser's screenshot attachment has had a host
12
- * contract we can VERIFY rather than assume (the v1 capability row for it is
13
- * still 未验证).
11
+ * also the first time a screenshot attachment has had a host contract we can
12
+ * VERIFY rather than assume (the v1 capability row for it is still 未验证).
14
13
  * 2. THE CONTEXT. Our tools read `{directory, sessionID, agent, ask}` off the
15
14
  * per-call ctx. v2's ToolContext carries `{sessionID, agent, messageID, id,
16
15
  * progress}` and NO directory and NO ask bridge. Directory comes from the
@@ -1 +1 @@
1
- {"version":3,"file":"v2-tool.js","sourceRoot":"","sources":["../../src/host/v2-tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"v2-tool.js","sourceRoot":"","sources":["../../src/host/v2-tool.ts"],"names":[],"mappings":"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"}
@@ -177,6 +177,30 @@ export interface V2SessionHooks {
177
177
  }
178
178
  export interface V2SessionDomain {
179
179
  readonly hook: V2Hooks<V2SessionHooks>;
180
+ /**
181
+ * Measured on 2.0.23 (zero-token probe): `compact({})` fails with
182
+ * `Missing key at ["sessionID"]` and a bogus id with `Session.NotFoundError`, so the
183
+ * seam is real and its required key is known. The handler behind it is
184
+ * `a.compact({sessionID, id, delivery})` and a duplicate input id surfaces as
185
+ * `Session.CompactionConflictError` — which is why the caller keeps one admission per
186
+ * usage number instead of firing per request.
187
+ */
188
+ readonly compact?: (input: {
189
+ sessionID: string;
190
+ id?: string;
191
+ delivery?: string;
192
+ }) => Promise<unknown>;
193
+ readonly [key: string]: unknown;
194
+ }
195
+ /**
196
+ * `ctx.model.list({})` measured on 2.0.23: `{location, data: […]}` where an item carries
197
+ * `id, modelID, providerID, name, package, settings, capabilities, variants, time, cost,
198
+ * status, enabled, limit{context,output}`. The `limit.context` is the denominator the
199
+ * desktop's own usage meter reads, so the percent we compute means the same percent.
200
+ */
201
+ export interface V2ModelDomain {
202
+ readonly list?: (options: unknown) => Promise<unknown>;
203
+ readonly default?: (options?: unknown) => Promise<unknown>;
180
204
  readonly [key: string]: unknown;
181
205
  }
182
206
  export interface V2ShellCreateBefore {
@@ -214,6 +238,7 @@ export interface V2Context {
214
238
  readonly agent?: V2AgentDomain;
215
239
  readonly permission?: V2PermissionDomain;
216
240
  readonly session?: V2SessionDomain;
241
+ readonly model?: V2ModelDomain;
217
242
  readonly shell?: V2ShellDomain;
218
243
  readonly storage?: V2StorageDomain;
219
244
  readonly event?: {
@@ -1 +1 @@
1
- {"version":3,"file":"v2-types.d.ts","sourceRoot":"","sources":["../../src/host/v2-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"v2-types.d.ts","sourceRoot":"","sources":["../../src/host/v2-types.ts"],"names":[],"mappings":"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"}
package/dist/host/v2.d.ts CHANGED
@@ -1,10 +1,10 @@
1
1
  /**
2
- * The v2 personality: `Plugin.define({id, setup(ctx)})`.
2
+ * The v2 personality: `Plugin.define({id, setup(ctx)})` — the only personality
3
+ * since 1.7.0 (v1 support was removed).
3
4
  *
4
5
  * `Plugin.define` in @opencode/plugin@2.0.16 is literally `plugin => plugin`,
5
6
  * so this module exports the plain object and the v2 SDK never becomes a
6
- * runtime dependency — which is what keeps the dual-personality package
7
- * installable by a v1 user who cannot resolve that package at all.
7
+ * runtime dependency.
8
8
  *
9
9
  * Scope of this file (milestone M2): build the governed runtime on a
10
10
  * filesystem-backed client shim, register the tm_* tools through
@@ -13,17 +13,14 @@
13
13
  * session hooks / compaction / description appends (#93), or the browser
14
14
  * (#95). Those need this seam proven live first.
15
15
  *
16
- * Two v1 behaviors do not carry over, and both absences are stated rather than
17
- * discovered later:
16
+ * Two host limits are stated rather than discovered later:
18
17
  * - creating agents: `AgentEditor` has no `add`, so the six roles must come
19
18
  * from the user's config (the installer writes `agents/*.md`).
20
- * - the conservative default-agent promotion: v1 read `cfg.default_agent` and
21
- * only filled it when empty or "build". v2 exposes `default(id)` with NO
22
- * getter, so "only if the user did not choose" is not expressible — the
23
- * choice is between never promoting and promoting every boot. The user's
24
- * standing instruction (2026-09-25) is that Team is ALWAYS the default, so
25
- * this promotes unconditionally; `defaultAgent: false` in the plugin options
26
- * opts out, exactly as on v1.
19
+ * - the default-agent promotion: `default(id)` has NO getter, so "only if the
20
+ * user did not choose" is not expressible — the choice is between never
21
+ * promoting and promoting every boot. The user's standing instruction
22
+ * (2026-09-25) is that Team is ALWAYS the default, so this promotes
23
+ * unconditionally; `defaultAgent: false` in the plugin options opts out.
27
24
  *
28
25
  * The official confirmation dialog is absent as well, and for a different
29
26
  * reason: probed on the live host, a plugin has no way to raise one.
@@ -38,5 +35,10 @@ import type { V2Plugin } from "./v2-types.js";
38
35
  * the host's own permission config, and the address red line is excluded from
39
36
  * "ask the user" because that one has no consent path at all. */
40
37
  export declare const V2_NO_DIALOG_NOTE: string;
38
+ /** #49 feature 2: the concurrency cap. Default 3 (matches "at most 3 parallel
39
+ * reviewers" and leaves a normal user headroom); `0` disables it. A missing or
40
+ * unparseable value falls back to the default rather than to 0, because a typo
41
+ * must not silently turn a safety cap off. */
42
+ export declare function resolveMaxConcurrentSubagents(env?: Record<string, string | undefined>): number;
41
43
  export declare const v2Personality: V2Plugin;
42
44
  //# sourceMappingURL=v2.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"v2.d.ts","sourceRoot":"","sources":["../../src/host/v2.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAyBH,OAAO,KAAK,EAA0B,QAAQ,EAA8B,MAAM,eAAe,CAAA;AAEjG;;;;;kEAKkE;AAClE,eAAO,MAAM,iBAAiB,QAGmB,CAAA;AASjD,eAAO,MAAM,aAAa,EAAE,QAiyB3B,CAAA"}
1
+ {"version":3,"file":"v2.d.ts","sourceRoot":"","sources":["../../src/host/v2.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AA+BH,OAAO,KAAK,EAA0B,QAAQ,EAA8B,MAAM,eAAe,CAAA;AAEjG;;;;;kEAKkE;AAClE,eAAO,MAAM,iBAAiB,QAGmB,CAAA;AASjD;;;+CAG+C;AAC/C,wBAAgB,6BAA6B,CAAC,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAe,GAAG,MAAM,CAM3G;AAED,eAAO,MAAM,aAAa,EAAE,QAqrC3B,CAAA"}