@te-river/opencode-team-mode 1.5.12 → 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.
- package/README.md +30 -6
- package/README.zh-CN.md +28 -4
- package/dist/agents.d.ts +5 -1
- package/dist/agents.d.ts.map +1 -1
- package/dist/agents.js +24 -2
- package/dist/agents.js.map +1 -1
- package/dist/capabilities.d.ts +66 -0
- package/dist/capabilities.d.ts.map +1 -0
- package/dist/capabilities.js +165 -0
- package/dist/capabilities.js.map +1 -0
- package/dist/host-hooks.d.ts +115 -0
- package/dist/host-hooks.d.ts.map +1 -0
- package/dist/host-hooks.js +270 -0
- package/dist/host-hooks.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +103 -4
- package/dist/index.js.map +1 -1
- package/dist/prompts/lead.d.ts +1 -1
- package/dist/prompts/lead.d.ts.map +1 -1
- package/dist/prompts/lead.js +71 -8
- package/dist/prompts/lead.js.map +1 -1
- package/dist/prompts/shared.d.ts +1 -1
- package/dist/prompts/shared.d.ts.map +1 -1
- package/dist/prompts/shared.js +51 -2
- package/dist/prompts/shared.js.map +1 -1
- package/dist/prompts/specialists.d.ts +1 -1
- package/dist/prompts/specialists.d.ts.map +1 -1
- package/dist/prompts/specialists.js +38 -17
- package/dist/prompts/specialists.js.map +1 -1
- package/dist/tm/args-schema.d.ts +7 -1
- package/dist/tm/args-schema.d.ts.map +1 -1
- package/dist/tm/args-schema.js +9 -3
- package/dist/tm/args-schema.js.map +1 -1
- package/dist/tm/bash-timeout.d.ts +72 -0
- package/dist/tm/bash-timeout.d.ts.map +1 -0
- package/dist/tm/bash-timeout.js +100 -0
- package/dist/tm/bash-timeout.js.map +1 -0
- package/dist/tm/browser.d.ts +91 -5
- package/dist/tm/browser.d.ts.map +1 -1
- package/dist/tm/browser.js +564 -89
- package/dist/tm/browser.js.map +1 -1
- package/dist/tm/cache.d.ts +68 -0
- package/dist/tm/cache.d.ts.map +1 -0
- package/dist/tm/cache.js +157 -0
- package/dist/tm/cache.js.map +1 -0
- package/dist/tm/config.d.ts +87 -0
- package/dist/tm/config.d.ts.map +1 -1
- package/dist/tm/config.js +66 -0
- package/dist/tm/config.js.map +1 -1
- package/dist/tm/dispatch.d.ts +123 -0
- package/dist/tm/dispatch.d.ts.map +1 -0
- package/dist/tm/dispatch.js +476 -0
- package/dist/tm/dispatch.js.map +1 -0
- package/dist/tm/dupe-guard.d.ts +58 -0
- package/dist/tm/dupe-guard.d.ts.map +1 -0
- package/dist/tm/dupe-guard.js +105 -0
- package/dist/tm/dupe-guard.js.map +1 -0
- package/dist/tm/index.d.ts +32 -4
- package/dist/tm/index.d.ts.map +1 -1
- package/dist/tm/index.js +58 -5
- package/dist/tm/index.js.map +1 -1
- package/dist/tm/perm-ask.d.ts +1 -0
- package/dist/tm/perm-ask.d.ts.map +1 -1
- package/dist/tm/perm-ask.js +15 -1
- package/dist/tm/perm-ask.js.map +1 -1
- package/dist/tm/pipelines.d.ts.map +1 -1
- package/dist/tm/pipelines.js +11 -0
- package/dist/tm/pipelines.js.map +1 -1
- package/dist/tm/pty.d.ts +70 -0
- package/dist/tm/pty.d.ts.map +1 -0
- package/dist/tm/pty.js +242 -0
- package/dist/tm/pty.js.map +1 -0
- package/dist/tm/search.d.ts +56 -7
- package/dist/tm/search.d.ts.map +1 -1
- package/dist/tm/search.js +195 -41
- package/dist/tm/search.js.map +1 -1
- package/dist/tm/stats.d.ts +117 -0
- package/dist/tm/stats.d.ts.map +1 -0
- package/dist/tm/stats.js +296 -0
- package/dist/tm/stats.js.map +1 -0
- package/dist/tm/webfetch.d.ts +23 -0
- package/dist/tm/webfetch.d.ts.map +1 -1
- package/dist/tm/webfetch.js +97 -8
- package/dist/tm/webfetch.js.map +1 -1
- package/dist/types.d.ts +16 -0
- package/dist/types.d.ts.map +1 -1
- package/docs/installation.md +216 -17
- package/package.json +2 -2
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The "the engine ignored you" detector (2026-09-19, from a live session).
|
|
3
|
+
*
|
|
4
|
+
* Evidence: one `team` session spent 66 tool calls / 25 LLM steps / 2.8 M
|
|
5
|
+
* input tokens on a three-term lookup. Calls #5 and #6 asked bing for
|
|
6
|
+
* `"舞萌DX" "你好世界"` and `"舞萌DX" "我的世界"` — two different queries — and
|
|
7
|
+
* got byte-identical 10-hit lists about the Chinese character 舞 (dictionary
|
|
8
|
+
* entries, dance videos). Nothing in the reply said so, so the agent kept
|
|
9
|
+
* paying for the collapse: 20 more calls hand-building SERP URLs, then a
|
|
10
|
+
* browser session, to work out what one honest signal would have told it in
|
|
11
|
+
* the first minute — that the engine had dropped its qualifiers.
|
|
12
|
+
*
|
|
13
|
+
* Two independent signals, both cheap and deterministic:
|
|
14
|
+
* - IDENTICAL hit set under a DIFFERENT query → the engine ignored the
|
|
15
|
+
* query (a collapse), not "the topic is thin";
|
|
16
|
+
* - ZERO query-token overlap across every hit → the answer is unrelated to
|
|
17
|
+
* what was asked.
|
|
18
|
+
*
|
|
19
|
+
* Either one is reported as a DIRECTIVE (what to do next: split the concept,
|
|
20
|
+
* switch engine, or hand the whole lookups to a dispatched researcher), not
|
|
21
|
+
* as a shrug. The repetition counter is the circuit-breaker the failing
|
|
22
|
+
* session never had.
|
|
23
|
+
*/
|
|
24
|
+
/** Stable fingerprint of a result set: the hosts+paths that came back, not
|
|
25
|
+
* their order (a re-rank of the same pages is the same answer). */
|
|
26
|
+
export function hitSignature(hits) {
|
|
27
|
+
const keys = [];
|
|
28
|
+
for (const h of hits) {
|
|
29
|
+
const u = String(h?.url ?? "");
|
|
30
|
+
if (!u)
|
|
31
|
+
continue;
|
|
32
|
+
try {
|
|
33
|
+
const p = new URL(u);
|
|
34
|
+
keys.push(`${p.hostname.toLowerCase().replace(/^www\./, "")}${p.pathname}`);
|
|
35
|
+
}
|
|
36
|
+
catch {
|
|
37
|
+
keys.push(u.slice(0, 80));
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return keys.sort().join("|");
|
|
41
|
+
}
|
|
42
|
+
/** Does ANY hit actually mention the query? CJK is bigram-indexed (the same
|
|
43
|
+
* 口径 as the RRF relevance score) so "舞萌DX" matches a hit about 舞萌DX,
|
|
44
|
+
* while a page about the single character 舞 does not match. */
|
|
45
|
+
export function hitsShareAnyQueryTerm(hits, terms) {
|
|
46
|
+
if (!terms.length)
|
|
47
|
+
return true;
|
|
48
|
+
// no hits at all is an EMPTY answer, not an irrelevant one — the caller
|
|
49
|
+
// reports that separately (and it must not be labelled "the engine ignored
|
|
50
|
+
// you", which would send the agent off to fix a query that was fine)
|
|
51
|
+
if (!hits.length)
|
|
52
|
+
return true;
|
|
53
|
+
for (const h of hits) {
|
|
54
|
+
const hay = `${h.title ?? ""} ${h.snippet ?? ""} ${h.url ?? ""}`.toLowerCase();
|
|
55
|
+
for (const t of terms)
|
|
56
|
+
if (t && hay.includes(t.toLowerCase()))
|
|
57
|
+
return true;
|
|
58
|
+
}
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Per-process ledger of (engine → last signature + query). Deliberately
|
|
63
|
+
* in-memory: it is a conversation-level observation, and a restart of the
|
|
64
|
+
* plugin legitimately starts a fresh judgement (the agent is asking afresh).
|
|
65
|
+
*/
|
|
66
|
+
export function createDupeGuard(limit = 60) {
|
|
67
|
+
const last = new Map();
|
|
68
|
+
return {
|
|
69
|
+
observe(engine, query, hits, terms) {
|
|
70
|
+
const sig = hitSignature(hits);
|
|
71
|
+
const prev = last.get(engine);
|
|
72
|
+
let repeats = 1;
|
|
73
|
+
let collapse = false;
|
|
74
|
+
if (sig) {
|
|
75
|
+
if (prev && prev.sig === sig) {
|
|
76
|
+
repeats = prev.repeats + 1;
|
|
77
|
+
// same answer set, different question = the engine is not listening
|
|
78
|
+
collapse = prev.query !== query;
|
|
79
|
+
}
|
|
80
|
+
last.set(engine, { sig, query, repeats });
|
|
81
|
+
if (last.size > limit) {
|
|
82
|
+
const oldest = last.keys().next().value;
|
|
83
|
+
if (oldest)
|
|
84
|
+
last.delete(oldest);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
const irrelevant = hits.length > 0 && !hitsShareAnyQueryTerm(hits, terms);
|
|
88
|
+
const parts = [];
|
|
89
|
+
if (collapse) {
|
|
90
|
+
parts.push(`⚠ 引擎「${engine}」这次和上一次不同问题的返回结果集完全相同——它忽略了你的限定词(引号短语、多概念组合对它是无效的)。继续换措辞再问一次不会有新信息。`);
|
|
91
|
+
}
|
|
92
|
+
if (irrelevant) {
|
|
93
|
+
parts.push(`⚠ 这 ${hits.length} 条结果里没有任何一条提到查询词——把「无结果」当成结论,不要从中编故事。`);
|
|
94
|
+
}
|
|
95
|
+
if (collapse || irrelevant) {
|
|
96
|
+
parts.push(repeats >= 3
|
|
97
|
+
? `下一步:这类多概念关联查询已经在本进程失败 ${repeats} 次——用 tm_dispatch 派一份自包含的调研任务给 researcher(让它用自己的上下文去试错),或直接把不确定处报告给用户;不要在本会话里继续串行试。`
|
|
98
|
+
: `下一步:把一个概念拆成一次查询(先查 A 是什么,再查 A 与 B 的关联),或换 engine:"auto" 让多引擎投票。`);
|
|
99
|
+
}
|
|
100
|
+
return { repeats, collapse, irrelevant, note: parts.join("\n") };
|
|
101
|
+
},
|
|
102
|
+
seen: () => last.size,
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=dupe-guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dupe-guard.js","sourceRoot":"","sources":["../../src/tm/dupe-guard.ts"],"names":[],"mappings":"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"}
|
package/dist/tm/index.d.ts
CHANGED
|
@@ -14,13 +14,18 @@
|
|
|
14
14
|
* T0.4-verified shape: `{ tool: { tm_read: { description, args,
|
|
15
15
|
* execute(args, ctx) } } }`).
|
|
16
16
|
*/
|
|
17
|
-
import type { PluginInput, ToolDefinition } from "../types.js";
|
|
17
|
+
import type { HostEvent, PluginInput, ToolDefinition } from "../types.js";
|
|
18
18
|
import { type EnvProtectMode } from "../envprotect.js";
|
|
19
19
|
import { type TmConfig } from "./config.js";
|
|
20
20
|
import { RunStore } from "./store.js";
|
|
21
|
+
import type { CapabilityRow } from "../capabilities.js";
|
|
21
22
|
export { rmForceSafe } from "../fs-safe.js";
|
|
22
23
|
export { buildTmMemoryTool, MEMORY_CATEGORIES, MEMORY_CONTENT_MAX, MEMORY_TITLE_MAX, projectSlug, scoreMemory, parseMemoryMarkdown, renderMemoryMarkdown, } from "./memory.js";
|
|
23
|
-
export { buildTmBrowserTool, defaultBrowserExecutable, findBrowserExecutable, isChromiumFamily, parseDesktopExec, parseProgId, parseRegCommand, resolveHeadless, } from "./browser.js";
|
|
24
|
+
export { buildTmBrowserTool, defaultBrowserExecutable, findBrowserExecutable, isChromiumFamily, isPassiveResource, normalizeResourceType, parseDesktopExec, parseProgId, parseRegCommand, playwrightLaunchTarget, rememberSite, resolveHeadless, siteOf, subresourcePass, } from "./browser.js";
|
|
25
|
+
export { ptyCommandLine, ptyCommandBlocked, ptyVerdictLine } from "./pty.js";
|
|
26
|
+
export type { PtyRecord, PtyDeps } from "./pty.js";
|
|
27
|
+
export { buildDispatchTools, DISPATCH_TARGETS, lastAssistantText, renderChildLine, sessionApiOf, summarizeStates, } from "./dispatch.js";
|
|
28
|
+
export type { ChildRecord, DispatchDeps } from "./dispatch.js";
|
|
24
29
|
export interface TmRuntime {
|
|
25
30
|
runId: string;
|
|
26
31
|
config: TmConfig;
|
|
@@ -28,14 +33,37 @@ export interface TmRuntime {
|
|
|
28
33
|
/** The ONE main pipeline instance (exposed for tests + tool builders). */
|
|
29
34
|
pipelines: ReturnType<typeof import("./pipelines.js").buildPipelines>;
|
|
30
35
|
tools: Record<string, ToolDefinition>;
|
|
31
|
-
/** Kill any long-lived session the tools own (tm_browser child process).
|
|
32
|
-
|
|
36
|
+
/** Kill any long-lived session the tools own (tm_browser child process).
|
|
37
|
+
* ASYNC because the host's dispose hook awaits it — a fire-and-forget
|
|
38
|
+
* browser close could lose the window. */
|
|
39
|
+
dispose: () => Promise<void>;
|
|
40
|
+
/** Host event bus slice the async dispatcher needs (session.idle /
|
|
41
|
+
* .error / .status settle the lead's children). */
|
|
42
|
+
observeDispatchEvent: (event: HostEvent) => void;
|
|
43
|
+
/** Open async dispatches this plugin started (tests + observability). */
|
|
44
|
+
dispatches: () => Array<{
|
|
45
|
+
sessionID: string;
|
|
46
|
+
agent: string;
|
|
47
|
+
label: string;
|
|
48
|
+
state: string;
|
|
49
|
+
}>;
|
|
33
50
|
}
|
|
34
51
|
export interface CreateTmToolsOptions {
|
|
35
52
|
/** R6 mode — pass the plugin-level resolved value to keep ONE source. */
|
|
36
53
|
mode?: EnvProtectMode;
|
|
37
54
|
/** R6 extra deny rules — same single-source rule. */
|
|
38
55
|
extra?: RegExp[];
|
|
56
|
+
/** Best-effort user notification (the host toast) — tm_browser's idle
|
|
57
|
+
* reaper uses it so an auto-closed window is announced, not silent. */
|
|
58
|
+
notify?: (message: string) => void;
|
|
59
|
+
/** A tm_dispatch child session was created — let the approval gate
|
|
60
|
+
* register it so the sub-agent's own protected read opens the official
|
|
61
|
+
* dialog instead of hard-throwing in an unregistered session. */
|
|
62
|
+
onChildSession?: (sessionID: string, agent: string) => void;
|
|
63
|
+
/** Live host-capability matrix, rendered by tm_stats (the probe itself
|
|
64
|
+
* lives at the plugin entry because that is where the host surfaces are
|
|
65
|
+
* handed to us). */
|
|
66
|
+
capabilities?: () => CapabilityRow[];
|
|
39
67
|
}
|
|
40
68
|
export declare function createTmTools(input: PluginInput, opts?: CreateTmToolsOptions): Promise<TmRuntime>;
|
|
41
69
|
export { DEFAULT_BASH_READONLY_ALLOWED, DEFAULT_WEBFETCH_DOMAINS, estimateTokens, parseAllowlistEnv, parseWebfetchAllowlistEnv, resolveTmConfig, shouldOffload, shorten, TM_CONFIG_DEFAULTS, } from "./config.js";
|
package/dist/tm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tm/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAMH,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tm/index.ts"],"names":[],"mappings":"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"}
|
package/dist/tm/index.js
CHANGED
|
@@ -27,13 +27,19 @@ import { buildTmTools } from "./tools.js";
|
|
|
27
27
|
import { buildPipelines } from "./pipelines.js";
|
|
28
28
|
import { buildPtcArgsSchema, buildWebfetchArgsSchema, buildMemoryArgsSchema, buildBrowserArgsSchema, buildSearchArgsSchema } from "./args-schema.js";
|
|
29
29
|
import { buildPtcRunTool } from "./ptc/index.js";
|
|
30
|
+
import { buildStatsTool } from "./stats.js";
|
|
31
|
+
import { createWebCache } from "./cache.js";
|
|
30
32
|
import { buildTmWebfetchTool } from "./webfetch.js";
|
|
31
33
|
import { buildTmSearchTool } from "./search.js";
|
|
32
34
|
export { rmForceSafe } from "../fs-safe.js";
|
|
33
35
|
export { buildTmMemoryTool, MEMORY_CATEGORIES, MEMORY_CONTENT_MAX, MEMORY_TITLE_MAX, projectSlug, scoreMemory, parseMemoryMarkdown, renderMemoryMarkdown, } from "./memory.js";
|
|
34
|
-
export { buildTmBrowserTool, defaultBrowserExecutable, findBrowserExecutable, isChromiumFamily, parseDesktopExec, parseProgId, parseRegCommand, resolveHeadless, } from "./browser.js";
|
|
36
|
+
export { buildTmBrowserTool, defaultBrowserExecutable, findBrowserExecutable, isChromiumFamily, isPassiveResource, normalizeResourceType, parseDesktopExec, parseProgId, parseRegCommand, playwrightLaunchTarget, rememberSite, resolveHeadless, siteOf, subresourcePass, } from "./browser.js";
|
|
35
37
|
import { buildTmMemoryTool } from "./memory.js";
|
|
36
38
|
import { buildTmBrowserTool } from "./browser.js";
|
|
39
|
+
import { buildDispatchTools } from "./dispatch.js";
|
|
40
|
+
import { buildTmPtyTool } from "./pty.js";
|
|
41
|
+
export { ptyCommandLine, ptyCommandBlocked, ptyVerdictLine } from "./pty.js";
|
|
42
|
+
export { buildDispatchTools, DISPATCH_TARGETS, lastAssistantText, renderChildLine, sessionApiOf, summarizeStates, } from "./dispatch.js";
|
|
37
43
|
export async function createTmTools(input, opts = {}) {
|
|
38
44
|
const cfg = resolveTmConfig(process.env);
|
|
39
45
|
const directory = typeof input?.directory === "string" && input.directory.length > 0
|
|
@@ -76,6 +82,15 @@ export async function createTmTools(input, opts = {}) {
|
|
|
76
82
|
// Startup-only TTL reclamation for expired run payloads — the sole cleanup
|
|
77
83
|
// path for the tm store (mirrors blackboard.ts's sweeper philosophy).
|
|
78
84
|
store.sweepExpired();
|
|
85
|
+
// ONE URL cache for the whole web channel — tm_webfetch, tm_search's engine
|
|
86
|
+
// legs and the PTC bridge all read it, so a page fetched once in a round is
|
|
87
|
+
// never paid for twice. Lives beside the run store (under .git in AUTO
|
|
88
|
+
// mode, never in the user's working tree) and OUTSIDE `runs/`, which is all
|
|
89
|
+
// sweepExpired() ever deletes.
|
|
90
|
+
const webCache = createWebCache({
|
|
91
|
+
dir: path.join(store.blackboardRoot, "webcache"),
|
|
92
|
+
ttlSec: cfg.webCacheTtlSec,
|
|
93
|
+
});
|
|
79
94
|
const mode = opts.mode ?? resolveEnvProtectMode(process.env.TM_ENV_PROTECT);
|
|
80
95
|
const extra = opts.extra ?? parseExtraDeny(process.env.TM_ENV_PROTECT_EXTRA_DENY);
|
|
81
96
|
const expireAt = Date.now() + cfg.blackboardTtlDays * 24 * 60 * 60 * 1000;
|
|
@@ -112,12 +127,12 @@ export async function createTmTools(input, opts = {}) {
|
|
|
112
127
|
// sees it: explicit allow for team + researcher only (agents.ts), explicit
|
|
113
128
|
// deny for the other four (overrides the tm_* wildcard).
|
|
114
129
|
const webfetchArgs = await buildWebfetchArgsSchema();
|
|
115
|
-
tools.tm_webfetch = buildTmWebfetchTool({ pipelines, cfg, args: webfetchArgs });
|
|
130
|
+
tools.tm_webfetch = buildTmWebfetchTool({ pipelines, cfg, args: webfetchArgs, cache: webCache });
|
|
116
131
|
// tm_search — the governed search FRONT: multi-engine (bing/bing-int/
|
|
117
132
|
// sogou/so/baidu/bilibili + npm/github JSON), extracted title+URL hit
|
|
118
133
|
// lists, same pipeline + allowlist as tm_webfetch. Network-role tool
|
|
119
134
|
// like the other two web channels (agents.ts gates who sees it).
|
|
120
|
-
tools.tm_search = buildTmSearchTool({ pipelines, cfg, args: await buildSearchArgsSchema() });
|
|
135
|
+
tools.tm_search = buildTmSearchTool({ pipelines, cfg, args: await buildSearchArgsSchema(), cache: webCache });
|
|
121
136
|
// tm_memory — project/global memory mirror (Markdown + frontmatter under
|
|
122
137
|
// the same git-aware store base). Available to ALL agents: memory is not
|
|
123
138
|
// a network channel, it is shared project knowledge.
|
|
@@ -134,7 +149,12 @@ export async function createTmTools(input, opts = {}) {
|
|
|
134
149
|
// Network role tool: team + researcher carry the allow; the other four
|
|
135
150
|
// hold an explicit deny (overrides the tm_* wildcard). dispose() kills
|
|
136
151
|
// the browser child when the host tears the plugin down.
|
|
137
|
-
const browserTool = buildTmBrowserTool({
|
|
152
|
+
const browserTool = buildTmBrowserTool({
|
|
153
|
+
pipelines,
|
|
154
|
+
cfg,
|
|
155
|
+
args: await buildBrowserArgsSchema(),
|
|
156
|
+
notify: opts.notify,
|
|
157
|
+
});
|
|
138
158
|
tools.tm_browser = browserTool;
|
|
139
159
|
// M3: build tm_ptc_run using a separate pipeline instance (governance
|
|
140
160
|
// reused verbatim). Its step counter starts at s0001 again — the
|
|
@@ -170,11 +190,13 @@ export async function createTmTools(input, opts = {}) {
|
|
|
170
190
|
pipelines: ptcPipelines,
|
|
171
191
|
cfg,
|
|
172
192
|
args: await buildSearchArgsSchema(),
|
|
193
|
+
cache: webCache,
|
|
173
194
|
}),
|
|
174
195
|
tm_webfetch: buildTmWebfetchTool({
|
|
175
196
|
pipelines: ptcPipelines,
|
|
176
197
|
cfg,
|
|
177
198
|
args: await buildWebfetchArgsSchema(),
|
|
199
|
+
cache: webCache,
|
|
178
200
|
}),
|
|
179
201
|
}
|
|
180
202
|
: undefined;
|
|
@@ -191,7 +213,38 @@ export async function createTmTools(input, opts = {}) {
|
|
|
191
213
|
webTools: ptcWebTools,
|
|
192
214
|
});
|
|
193
215
|
tools.tm_ptc_run = ptcTool;
|
|
194
|
-
|
|
216
|
+
// tm_dispatch / tm_join — ASYNC sub-agent dispatch for the lead (issue #7:
|
|
217
|
+
// the host's `task` tool blocks the calling session, so "parallel team"
|
|
218
|
+
// really meant "serial with extra steps"). Built on the official client
|
|
219
|
+
// session API; both tools self-gate to the lead agent, and the five
|
|
220
|
+
// specialists carry an explicit deny in agents.ts.
|
|
221
|
+
const dispatch = buildDispatchTools({
|
|
222
|
+
client: input?.client,
|
|
223
|
+
pipelines,
|
|
224
|
+
onChildSession: opts.onChildSession,
|
|
225
|
+
});
|
|
226
|
+
tools.tm_dispatch = dispatch.tm_dispatch;
|
|
227
|
+
tools.tm_join = dispatch.tm_join;
|
|
228
|
+
// tm_pty — non-blocking command execution on the host's own terminal
|
|
229
|
+
// sessions (issue #6: three serial 120 s test suites are minutes of dead
|
|
230
|
+
// air inside one bash call). Every start passes the R6 classifier AND the
|
|
231
|
+
// official dialog, so this is an async lever, not a bypass channel.
|
|
232
|
+
tools.tm_pty = buildTmPtyTool({ client: input?.client, pipelines, mode, max: cfg.ptyMax });
|
|
233
|
+
// tm_stats — the plugin reads its OWN trajectory back (throughput numbers +
|
|
234
|
+
// the host-capability matrix). This is what makes "Team is faster" a claim
|
|
235
|
+
// with a number behind it instead of a vibe, and what names the surface an
|
|
236
|
+
// OpenCode upgrade removed.
|
|
237
|
+
tools.tm_stats = buildStatsTool({ store, capabilities: opts.capabilities });
|
|
238
|
+
return {
|
|
239
|
+
runId,
|
|
240
|
+
config: cfg,
|
|
241
|
+
store,
|
|
242
|
+
pipelines,
|
|
243
|
+
tools,
|
|
244
|
+
dispose: () => browserTool.dispose(),
|
|
245
|
+
observeDispatchEvent: dispatch.observeEvent,
|
|
246
|
+
dispatches: () => dispatch.children().map((c) => ({ sessionID: c.sessionID, agent: c.agent, label: c.label, state: c.state })),
|
|
247
|
+
};
|
|
195
248
|
}
|
|
196
249
|
// ---------- re-exports (stable import surface for tests + plugin entry) ----------
|
|
197
250
|
export { DEFAULT_BASH_READONLY_ALLOWED, DEFAULT_WEBFETCH_DOMAINS, estimateTokens, parseAllowlistEnv, parseWebfetchAllowlistEnv, resolveTmConfig, shouldOffload, shorten, TM_CONFIG_DEFAULTS, } from "./config.js";
|
package/dist/tm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tm/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EACL,cAAc,EACd,qBAAqB,GAEtB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,eAAe,EAAiB,MAAM,aAAa,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AACpJ,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAuC,MAAM,aAAa,CAAA;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,eAAe,GAChB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tm/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EACL,cAAc,EACd,qBAAqB,GAEtB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,eAAe,EAAiB,MAAM,aAAa,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AACpJ,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAuC,MAAM,aAAa,CAAA;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,sBAAsB,EACtB,YAAY,EACZ,eAAe,EACf,MAAM,EACN,eAAe,GAChB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAE5E,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,eAAe,GAChB,MAAM,eAAe,CAAA;AAuCtB,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,KAAkB,EAClB,OAA6B,EAAE;IAE/B,MAAM,GAAG,GAAG,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACxC,MAAM,SAAS,GACb,OAAO,KAAK,EAAE,SAAS,KAAK,QAAQ,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;QAChE,CAAC,CAAC,KAAK,CAAC,SAAS;QACjB,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAA;IACnB,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;IACtC,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAC7C,uEAAuE;IACvE,sEAAsE;IACtE,uEAAuE;IACvE,sEAAsE;IACtE,sEAAsE;IACtE,qEAAqE;IACrE,iCAAiC;IACjC,MAAM,IAAI,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;IACpC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACpD,MAAM,SAAS,GACb,MAAM,KAAK,IAAI;QACf,CAAC,GAAG,EAAE;YACJ,IAAI,CAAC;gBACH,OAAO,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAA;YAC1C,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAA;YACd,CAAC;QACH,CAAC,CAAC,EAAE,CAAA;IACN,MAAM,SAAS,GAAG,SAAS;QACzB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAgB,EAAE,eAAe,CAAC;QAC9C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,eAAe,CAAC,CAAA;IAC3C,sEAAsE;IACtE,sEAAsE;IACtE,MAAM,iBAAiB,GAAG,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,gBAAgB,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAA;IAChH,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC;QACzB,WAAW,EAAE,SAAS;QACtB,aAAa,EAAE,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC;QACtE,aAAa,EAAE,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC;QACtE,KAAK;QACL,OAAO,EAAE,GAAG,CAAC,iBAAiB;KAC/B,CAAC,CAAA;IACF,2EAA2E;IAC3E,sEAAsE;IACtE,KAAK,CAAC,YAAY,EAAE,CAAA;IACpB,4EAA4E;IAC5E,4EAA4E;IAC5E,wEAAwE;IACxE,4EAA4E;IAC5E,+BAA+B;IAC/B,MAAM,QAAQ,GAAG,cAAc,CAAC;QAC9B,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,UAAU,CAAC;QAChD,MAAM,EAAE,GAAG,CAAC,cAAc;KAC3B,CAAC,CAAA;IACF,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,qBAAqB,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAA;IACjF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,iBAAiB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;IACzE,sEAAsE;IACtE,oEAAoE;IACpE,sEAAsE;IACtE,uEAAuE;IACvE,kEAAkE;IAClE,2BAA2B;IAC3B,8DAA8D;IAC9D,MAAM,WAAW,GAAY,KAAK,EAAE,CAAC,IAAK,UAAkB,CAAC,CAAC,IAAK,UAAkB,CAAC,GAAG,EAAE,CAAC,CAAA;IAC5F,MAAM,IAAI,GAAG;QACX,MAAM,EAAE,KAAK,EAAE,MAAM;QACrB,CAAC,EAAE,WAAW;QACd,GAAG;QACH,KAAK;QACL,KAAK;QACL,OAAO;QACP,WAAW;QACX,QAAQ;QACR,IAAI;QACJ,KAAK;QACL,uEAAuE;QACvE,6DAA6D;QAC7D,YAAY,EAAE,SAAS;KACxB,CAAA;IACD,wEAAwE;IACxE,wEAAwE;IACxE,iEAAiE;IACjE,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;IACjD,sEAAsE;IACtE,yEAAyE;IACzE,2EAA2E;IAC3E,yDAAyD;IACzD,MAAM,YAAY,GAAG,MAAM,uBAAuB,EAAE,CAAA;IACpD,KAAK,CAAC,WAAW,GAAG,mBAAmB,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;IAChG,sEAAsE;IACtE,sEAAsE;IACtE,sEAAsE;IACtE,iEAAiE;IACjE,KAAK,CAAC,SAAS,GAAG,iBAAiB,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,qBAAqB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;IAC7G,yEAAyE;IACzE,0EAA0E;IAC1E,qDAAqD;IACrD,MAAM,UAAU,GAAG,MAAM,qBAAqB,EAAE,CAAA;IAChD,KAAK,CAAC,SAAS,GAAG,iBAAiB,CAAC;QAClC,SAAS;QACT,UAAU,EAAE,iBAAiB;QAC7B,SAAS;QACT,GAAG;QACH,SAAS;QACT,IAAI,EAAE,UAAU;KACjB,CAAC,CAAA;IACF,wEAAwE;IACxE,uEAAuE;IACvE,wEAAwE;IACxE,yDAAyD;IACzD,MAAM,WAAW,GAAG,kBAAkB,CAAC;QACrC,SAAS;QACT,GAAG;QACH,IAAI,EAAE,MAAM,sBAAsB,EAAE;QACpC,MAAM,EAAE,IAAI,CAAC,MAAM;KACpB,CAAC,CAAA;IACF,KAAK,CAAC,UAAU,GAAG,WAAW,CAAA;IAC9B,sEAAsE;IACtE,kEAAkE;IAClE,sEAAsE;IACtE,qEAAqE;IACrE,sEAAsE;IACtE,MAAM,OAAO,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,MAAM;QACrB,CAAC,EAAE,WAAW;QACd,GAAG;QACH,KAAK;QACL,KAAK;QACL,OAAO;QACP,WAAW;QACX,QAAQ;QACR,IAAI;QACJ,KAAK;QACL,UAAU,EAAE,MAAM;QAClB,YAAY,EAAE,SAAS;KACxB,CAAA;IACD,MAAM,YAAY,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;IAC5C,0EAA0E;IAC1E,uEAAuE;IACvE,2EAA2E;IAC3E,+EAA+E;IAC/E,4EAA4E;IAC5E,4EAA4E;IAC5E,4EAA4E;IAC5E,wEAAwE;IACxE,MAAM,WAAW,GACf,GAAG,CAAC,YAAY,KAAK,IAAI;QACvB,CAAC,CAAC;YACE,SAAS,EAAE,iBAAiB,CAAC;gBAC3B,SAAS,EAAE,YAAY;gBACvB,GAAG;gBACH,IAAI,EAAE,MAAM,qBAAqB,EAAE;gBACnC,KAAK,EAAE,QAAQ;aAChB,CAAC;YACF,WAAW,EAAE,mBAAmB,CAAC;gBAC/B,SAAS,EAAE,YAAY;gBACvB,GAAG;gBACH,IAAI,EAAE,MAAM,uBAAuB,EAAE;gBACrC,KAAK,EAAE,QAAQ;aAChB,CAAC;SACH;QACH,CAAC,CAAC,SAAS,CAAA;IACf,MAAM,OAAO,GAAG,eAAe,CAAC;QAC9B,GAAG;QACH,KAAK;QACL,UAAU,EAAE,YAAY,CAAC,UAAU;QACnC,wEAAwE;QACxE,gEAAgE;QAChE,GAAG,EAAE,EAAE,SAAS,EAAE;QAClB,WAAW;QACX,IAAI,EAAE,MAAM,kBAAkB,EAAE;QAChC,SAAS,EAAE,YAAY;QACvB,QAAQ,EAAE,WAAW;KACtB,CAAC,CAAA;IACF,KAAK,CAAC,UAAU,GAAG,OAAO,CAAA;IAC1B,2EAA2E;IAC3E,wEAAwE;IACxE,yEAAyE;IACzE,oEAAoE;IACpE,mDAAmD;IACnD,MAAM,QAAQ,GAAG,kBAAkB,CAAC;QAClC,MAAM,EAAE,KAAK,EAAE,MAAM;QACrB,SAAS;QACT,cAAc,EAAE,IAAI,CAAC,cAAc;KACpC,CAAC,CAAA;IACF,KAAK,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAA;IACxC,KAAK,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;IAChC,qEAAqE;IACrE,yEAAyE;IACzE,2EAA2E;IAC3E,oEAAoE;IACpE,KAAK,CAAC,MAAM,GAAG,cAAc,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAA;IAC1F,4EAA4E;IAC5E,4EAA4E;IAC5E,2EAA2E;IAC3E,4BAA4B;IAC5B,KAAK,CAAC,QAAQ,GAAG,cAAc,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAA;IAC3E,OAAO;QACL,KAAK;QACL,MAAM,EAAE,GAAG;QACX,KAAK;QACL,SAAS;QACT,KAAK;QACL,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,EAAE;QACpC,oBAAoB,EAAE,QAAQ,CAAC,YAAY;QAC3C,UAAU,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;KAC/H,CAAA;AACH,CAAC;AAED,oFAAoF;AAEpF,OAAO,EACL,6BAA6B,EAC7B,wBAAwB,EACxB,cAAc,EACd,iBAAiB,EACjB,yBAAyB,EACzB,eAAe,EACf,aAAa,EACb,OAAO,EACP,kBAAkB,GACnB,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,QAAQ,EACR,SAAS,EACT,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,WAAW,GACZ,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAC1D,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,SAAS,EACT,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,WAAW,GACZ,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAE/C,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AACrG,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAE3E,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxF,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,4BAA4B,EAC5B,WAAW,EACX,UAAU,GACX,MAAM,eAAe,CAAA;AAEtB,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,aAAa,CAAA;AAEpB,mCAAmC;AACnC,yEAAyE;AACzE,sEAAsE;AACtE,uEAAuE;AACvE,uDAAuD;AACvD,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,cAAc,EACd,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,yBAAyB,EACzB,MAAM,EACN,YAAY,EACZ,WAAW,GACZ,MAAM,gBAAgB,CAAA;AACvB,wEAAwE;AACxE,sEAAsE;AACtE,uEAAuE;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA"}
|
package/dist/tm/perm-ask.d.ts
CHANGED
|
@@ -26,6 +26,7 @@ export interface TmAskRequest {
|
|
|
26
26
|
metadata?: Record<string, unknown>;
|
|
27
27
|
}
|
|
28
28
|
export type TmAskFn = (req: TmAskRequest) => Promise<unknown>;
|
|
29
|
+
export declare function setAskBridgeObserver(fn: ((present: boolean) => void) | null): void;
|
|
29
30
|
/** Extract ctx.ask defensively — host versions before the ctx bridge lack
|
|
30
31
|
* it, and test stubs may not provide it. */
|
|
31
32
|
export declare function askFnOf(ctx: unknown): TmAskFn | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"perm-ask.d.ts","sourceRoot":"","sources":["../../src/tm/perm-ask.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,WAAW,YAAY;IAC3B,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAA;IAClB,kEAAkE;IAClE,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACnC;AAED,MAAM,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,YAAY,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"perm-ask.d.ts","sourceRoot":"","sources":["../../src/tm/perm-ask.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,WAAW,YAAY;IAC3B,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAA;IAClB,kEAAkE;IAClE,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACnC;AAED,MAAM,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,YAAY,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;AAM7D,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,CAElF;AAED;6CAC6C;AAC7C,wBAAgB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CASpD;AAED,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,aAAa,CAAA;AAEhE;;qEAEqE;AACrE,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,CAS3F"}
|
package/dist/tm/perm-ask.js
CHANGED
|
@@ -17,11 +17,25 @@
|
|
|
17
17
|
* rule the user (or config) created; a dialog approval is the user's own
|
|
18
18
|
* verdict.
|
|
19
19
|
*/
|
|
20
|
+
/** Observability seam for the host-capability probe (src/capabilities.ts):
|
|
21
|
+
* the plugin learns whether the ctx.ask bridge is LIVE only by looking at a
|
|
22
|
+
* real tool context, so every look reports what it found. Never throws. */
|
|
23
|
+
let askBridgeObserver = null;
|
|
24
|
+
export function setAskBridgeObserver(fn) {
|
|
25
|
+
askBridgeObserver = fn;
|
|
26
|
+
}
|
|
20
27
|
/** Extract ctx.ask defensively — host versions before the ctx bridge lack
|
|
21
28
|
* it, and test stubs may not provide it. */
|
|
22
29
|
export function askFnOf(ctx) {
|
|
23
30
|
const ask = ctx?.ask;
|
|
24
|
-
|
|
31
|
+
const present = typeof ask === "function";
|
|
32
|
+
try {
|
|
33
|
+
askBridgeObserver?.(present);
|
|
34
|
+
}
|
|
35
|
+
catch {
|
|
36
|
+
/* observability only */
|
|
37
|
+
}
|
|
38
|
+
return present ? ask : null;
|
|
25
39
|
}
|
|
26
40
|
/** Drive the official dialog for an out-of-allowlist target. Never throws:
|
|
27
41
|
* a missing bridge maps to "unavailable", a rejected/failed ask maps to
|
package/dist/tm/perm-ask.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"perm-ask.js","sourceRoot":"","sources":["../../src/tm/perm-ask.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAaH;6CAC6C;AAC7C,MAAM,UAAU,OAAO,CAAC,GAAY;IAClC,MAAM,GAAG,GAAI,GAA4C,EAAE,GAAG,CAAA;IAC9D,OAAO,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAE,GAAe,CAAC,CAAC,CAAC,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"perm-ask.js","sourceRoot":"","sources":["../../src/tm/perm-ask.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAaH;;6EAE6E;AAC7E,IAAI,iBAAiB,GAAwC,IAAI,CAAA;AACjE,MAAM,UAAU,oBAAoB,CAAC,EAAuC;IAC1E,iBAAiB,GAAG,EAAE,CAAA;AACxB,CAAC;AAED;6CAC6C;AAC7C,MAAM,UAAU,OAAO,CAAC,GAAY;IAClC,MAAM,GAAG,GAAI,GAA4C,EAAE,GAAG,CAAA;IAC9D,MAAM,OAAO,GAAG,OAAO,GAAG,KAAK,UAAU,CAAA;IACzC,IAAI,CAAC;QACH,iBAAiB,EAAE,CAAC,OAAO,CAAC,CAAA;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,wBAAwB;IAC1B,CAAC;IACD,OAAO,OAAO,CAAC,CAAC,CAAE,GAAe,CAAC,CAAC,CAAC,IAAI,CAAA;AAC1C,CAAC;AAID;;qEAEqE;AACrE,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAY,EAAE,GAAiB;IACpE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IACxB,IAAI,CAAC,GAAG;QAAE,OAAO,aAAa,CAAA;IAC9B,IAAI,CAAC;QACH,MAAM,GAAG,CAAC,GAAG,CAAC,CAAA;QACd,OAAO,UAAU,CAAA;IACnB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,UAAU,CAAA;IACnB,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipelines.d.ts","sourceRoot":"","sources":["../../src/tm/pipelines.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAG1C,OAAO,EAAgE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACpH,OAAO,EAA0C,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEnF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAIL,iBAAiB,EAClB,MAAM,cAAc,CAAA;AAmBrB,MAAM,WAAW,MAAM;IACrB,MAAM,EAAE,OAAO,CAAA;IACf,CAAC,EAAE,OAAO,CAAA;IACV,GAAG,EAAE,QAAQ,CAAA;IACb,KAAK,EAAE,QAAQ,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,0EAA0E;IAC1E,OAAO,EAAE,MAAM,CAAC,UAAU,CAAA;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,cAAc,CAAA;IACpB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAID,UAAU,aAAa;IACrB,WAAW,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAA;IACjD,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AA6CD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,GACV;IAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CA6ClE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM;;qBA0BjB,MAAM,QAAQ,MAAM,WAAW,MAAM,QAAQ,aAAa,KAAG,OAAO;
|
|
1
|
+
{"version":3,"file":"pipelines.d.ts","sourceRoot":"","sources":["../../src/tm/pipelines.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAG1C,OAAO,EAAgE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACpH,OAAO,EAA0C,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEnF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAIL,iBAAiB,EAClB,MAAM,cAAc,CAAA;AAmBrB,MAAM,WAAW,MAAM;IACrB,MAAM,EAAE,OAAO,CAAA;IACf,CAAC,EAAE,OAAO,CAAA;IACV,GAAG,EAAE,QAAQ,CAAA;IACb,KAAK,EAAE,QAAQ,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,0EAA0E;IAC1E,OAAO,EAAE,MAAM,CAAC,UAAU,CAAA;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,cAAc,CAAA;IACpB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAID,UAAU,aAAa;IACrB,WAAW,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAA;IACjD,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AA6CD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,GACV;IAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CA6ClE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM;;qBA0BjB,MAAM,QAAQ,MAAM,WAAW,MAAM,QAAQ,aAAa,KAAG,OAAO;sBA0D7D,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,OAAO,KAAG,OAAO,CAAC,OAAO,CAAC;sBAgDxD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,OAAO,KAAG,OAAO,CAAC,OAAO,CAAC;sBAmDxD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,OAAO,KAAG,OAAO,CAAC,OAAO,CAAC;uBAsCvD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,OAAO,KAAG,OAAO,CAAC,OAAO,CAAC;;EAiH1F;AAED,kFAAkF;AAClF,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAA"}
|
package/dist/tm/pipelines.js
CHANGED
|
@@ -188,6 +188,9 @@ export function buildPipelines(deps) {
|
|
|
188
188
|
event: "result",
|
|
189
189
|
offloaded: true,
|
|
190
190
|
tokens,
|
|
191
|
+
// what DID reach the context window — tm_stats nets this against
|
|
192
|
+
// `tokens` to report the saving rather than the payload size
|
|
193
|
+
preview_tokens: estimateTokens(preview),
|
|
191
194
|
ref: stored.ref,
|
|
192
195
|
});
|
|
193
196
|
return {
|
|
@@ -367,6 +370,14 @@ export function buildPipelines(deps) {
|
|
|
367
370
|
let token = strArg(args.access_token).trim();
|
|
368
371
|
if (!token && parsed.token)
|
|
369
372
|
token = parsed.token;
|
|
373
|
+
// A handle's token is a RUN constant, not a per-handle secret (auth is
|
|
374
|
+
// `runId === this run && verifyToken`, below, unchanged). A real
|
|
375
|
+
// session was observed re-typing the same 64 hex chars into every
|
|
376
|
+
// tm_fetch and every PTC program — ~70 output tokens a pop and a typo
|
|
377
|
+
// waiting to happen — so an omitted token means "this run's". A ref
|
|
378
|
+
// from another run still fails the run check exactly as before.
|
|
379
|
+
if (!token)
|
|
380
|
+
token = deps.accessToken;
|
|
370
381
|
if (!token)
|
|
371
382
|
return tmError(tool, "args", "缺少 access_token(offload 句柄中携带)");
|
|
372
383
|
// Auth: run must match the current run AND the token must verify.
|
package/dist/tm/pipelines.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipelines.js","sourceRoot":"","sources":["../../src/tm/pipelines.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pipelines.js","sourceRoot":"","sources":["../../src/tm/pipelines.ts"],"names":[],"mappings":"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"}
|
package/dist/tm/pty.d.ts
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* tm_pty — ASYNC command execution on a host PTY (issue #6's second half).
|
|
3
|
+
*
|
|
4
|
+
* The problem it removes: a three-suite serial `npm test` chain where every
|
|
5
|
+
* step carries a 120 s timeout is minutes of dead air in ONE blocked tool
|
|
6
|
+
* call. A PTY session is the host's own long-lived process — created and
|
|
7
|
+
* polled in milliseconds — so the agent can start the work, keep doing
|
|
8
|
+
* something else, and check back.
|
|
9
|
+
*
|
|
10
|
+
* What the surface actually offers (verified against the shipped SDK):
|
|
11
|
+
* `pty.create/list/get/update/remove/connect` with
|
|
12
|
+
* `Pty = {id,title,command,args,cwd,status:"running"|"exited",pid}` — i.e.
|
|
13
|
+
* NO stdin and NO output endpoint on the REST surface (terminal I/O rides the
|
|
14
|
+
* `connect` websocket, which this plugin deliberately does not speak). So
|
|
15
|
+
* tm_pty starts, watches and stops sessions; it never pretends to capture
|
|
16
|
+
* output, and the command writes its own log which the governed readers pick
|
|
17
|
+
* up. An agent that needs the transcript reads the file, not this tool.
|
|
18
|
+
*
|
|
19
|
+
* Governance — this is the important part. A tool that could spawn an
|
|
20
|
+
* arbitrary process would be a bypass around the R2 danger face (delete /
|
|
21
|
+
* git push / npm publish / package install are dialog-gated built-in bash).
|
|
22
|
+
* So every start is gated TWICE before anything is created:
|
|
23
|
+
* 1. the R6 classifier runs on the command (a blocked shape is refused with
|
|
24
|
+
* the standard privacy-preserving error, same source as tm_bash);
|
|
25
|
+
* 2. the OFFICIAL confirmation dialog decides (`permission:"tm_pty"` is
|
|
26
|
+
* mapped to {"*":"ask"} in agents.ts so the explicit rule beats the
|
|
27
|
+
* `tm_*` allow — without that map the ask would resolve silently and the
|
|
28
|
+
* user would never see it). No ask bridge on the host => refuse; a
|
|
29
|
+
* rejection => refuse. The plugin never self-allows.
|
|
30
|
+
* Concurrent sessions are capped (`TM_PTY_MAX`), and an id we did not start
|
|
31
|
+
* is not ours to kill.
|
|
32
|
+
*/
|
|
33
|
+
import type { EnvProtectMode } from "../envprotect.js";
|
|
34
|
+
import type { ToolDefinition } from "../types.js";
|
|
35
|
+
import type { TmPipelines } from "./pipelines.js";
|
|
36
|
+
export interface PtyRecord {
|
|
37
|
+
id: string;
|
|
38
|
+
command: string;
|
|
39
|
+
cwd: string;
|
|
40
|
+
title: string;
|
|
41
|
+
startedAt: number;
|
|
42
|
+
status: "running" | "exited";
|
|
43
|
+
pid?: number;
|
|
44
|
+
}
|
|
45
|
+
export interface PtyDeps {
|
|
46
|
+
client: unknown;
|
|
47
|
+
pipelines: TmPipelines;
|
|
48
|
+
mode?: EnvProtectMode;
|
|
49
|
+
max?: number;
|
|
50
|
+
now?: () => number;
|
|
51
|
+
/** Called when the tool wants a fresh look at live state. */
|
|
52
|
+
onTracked?: (records: PtyRecord[]) => void;
|
|
53
|
+
}
|
|
54
|
+
/** The command line a human (and the dialog) reads: command + args, no env. */
|
|
55
|
+
export declare function ptyCommandLine(command: string, args: readonly string[]): string;
|
|
56
|
+
/** Does `line` hit one of the host's escalate-to-dialog bash globs (the R2
|
|
57
|
+
* danger face: rm/del/Remove-Item, git push|commit, npm publish|install,
|
|
58
|
+
* kill/systemctl, …)? Same pattern table the built-in bash config uses, so
|
|
59
|
+
* tm_pty refuses exactly the shapes that would otherwise need a human. */
|
|
60
|
+
export declare function matchesAskGlob(line: string, patterns: readonly string[]): string | null;
|
|
61
|
+
/** Red line / deny check — the SAME classifiers as tm_bash and built-in
|
|
62
|
+
* bash (R6 env face via classifyBashCommand, R2 danger face via the ask
|
|
63
|
+
* globs), so tm_pty cannot become a channel for what the other two refuse. */
|
|
64
|
+
export declare function ptyCommandBlocked(line: string, mode: EnvProtectMode): string | null;
|
|
65
|
+
/** Verdict table for a bounded poll: what the agent may act on. */
|
|
66
|
+
export declare function ptyVerdictLine(r: PtyRecord, now: number): string;
|
|
67
|
+
export declare function buildTmPtyTool(deps: PtyDeps): ToolDefinition & {
|
|
68
|
+
tracked: () => PtyRecord[];
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=pty.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pty.d.ts","sourceRoot":"","sources":["../../src/tm/pty.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEtD,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,aAAa,CAAA;AAI7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAEjD,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,SAAS,GAAG,QAAQ,CAAA;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,WAAW,CAAA;IACtB,IAAI,CAAC,EAAE,cAAc,CAAA;IACrB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;IAClB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,IAAI,CAAA;CAC3C;AAED,+EAA+E;AAC/E,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAG/E;AAED;;;2EAG2E;AAC3E,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAcvF;AAED;;+EAE+E;AAC/E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI,CAQnF;AAED,mEAAmE;AACnE,wBAAgB,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAGhE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,GAAG,cAAc,GAAG;IAAE,OAAO,EAAE,MAAM,SAAS,EAAE,CAAA;CAAE,CA+K7F"}
|