@te-river/opencode-team-mode 1.5.11 → 1.5.13
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 +154 -57
- package/README.zh-CN.md +126 -47
- package/dist/agents.d.ts +5 -1
- package/dist/agents.d.ts.map +1 -1
- package/dist/agents.js +37 -11
- package/dist/agents.js.map +1 -1
- package/dist/approval-gate.d.ts +54 -16
- package/dist/approval-gate.d.ts.map +1 -1
- package/dist/approval-gate.js +163 -42
- package/dist/approval-gate.js.map +1 -1
- 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 +68 -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 +88 -6
- 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 +203 -119
- package/dist/prompts/shared.js.map +1 -1
- package/dist/prompts/specialists.d.ts +2 -2
- package/dist/prompts/specialists.d.ts.map +1 -1
- package/dist/prompts/specialists.js +73 -23
- package/dist/prompts/specialists.js.map +1 -1
- package/dist/tm/args-schema.d.ts +31 -1
- package/dist/tm/args-schema.d.ts.map +1 -1
- package/dist/tm/args-schema.js +155 -39
- 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 +250 -20
- package/dist/tm/browser.d.ts.map +1 -1
- package/dist/tm/browser.js +1200 -143
- package/dist/tm/browser.js.map +1 -1
- package/dist/tm/config.d.ts +129 -0
- package/dist/tm/config.d.ts.map +1 -1
- package/dist/tm/config.js +117 -1
- package/dist/tm/config.js.map +1 -1
- package/dist/tm/dispatch.d.ts +95 -0
- package/dist/tm/dispatch.d.ts.map +1 -0
- package/dist/tm/dispatch.js +369 -0
- package/dist/tm/dispatch.js.map +1 -0
- package/dist/tm/index.d.ts +32 -7
- package/dist/tm/index.d.ts.map +1 -1
- package/dist/tm/index.js +74 -5
- package/dist/tm/index.js.map +1 -1
- package/dist/tm/memory.d.ts +88 -10
- package/dist/tm/memory.d.ts.map +1 -1
- package/dist/tm/memory.js +881 -99
- package/dist/tm/memory.js.map +1 -1
- package/dist/tm/pipelines.d.ts +26 -3
- package/dist/tm/pipelines.d.ts.map +1 -1
- package/dist/tm/pipelines.js +167 -11
- package/dist/tm/pipelines.js.map +1 -1
- package/dist/tm/ptc/budgets.d.ts +22 -1
- package/dist/tm/ptc/budgets.d.ts.map +1 -1
- package/dist/tm/ptc/budgets.js +87 -8
- package/dist/tm/ptc/budgets.js.map +1 -1
- package/dist/tm/ptc/contract.d.ts +49 -9
- package/dist/tm/ptc/contract.d.ts.map +1 -1
- package/dist/tm/ptc/contract.js +41 -3
- package/dist/tm/ptc/contract.js.map +1 -1
- package/dist/tm/ptc/driver.d.ts +5 -2
- package/dist/tm/ptc/driver.d.ts.map +1 -1
- package/dist/tm/ptc/driver.js +47 -15
- package/dist/tm/ptc/driver.js.map +1 -1
- package/dist/tm/ptc/engines.d.ts +15 -4
- package/dist/tm/ptc/engines.d.ts.map +1 -1
- package/dist/tm/ptc/engines.js +281 -28
- package/dist/tm/ptc/engines.js.map +1 -1
- package/dist/tm/ptc/index.d.ts +4 -4
- package/dist/tm/ptc/index.d.ts.map +1 -1
- package/dist/tm/ptc/index.js +2 -2
- package/dist/tm/ptc/index.js.map +1 -1
- package/dist/tm/ptc/pscan.d.ts +20 -1
- package/dist/tm/ptc/pscan.d.ts.map +1 -1
- package/dist/tm/ptc/pscan.js +328 -14
- package/dist/tm/ptc/pscan.js.map +1 -1
- package/dist/tm/ptc/summary.d.ts.map +1 -1
- package/dist/tm/ptc/summary.js +23 -1
- package/dist/tm/ptc/summary.js.map +1 -1
- package/dist/tm/ptc/tool.d.ts +34 -3
- package/dist/tm/ptc/tool.d.ts.map +1 -1
- package/dist/tm/ptc/tool.js +117 -20
- package/dist/tm/ptc/tool.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 +128 -15
- package/dist/tm/search.d.ts.map +1 -1
- package/dist/tm/search.js +556 -47
- package/dist/tm/search.js.map +1 -1
- package/dist/tm/shell-bridge.d.ts +14 -1
- package/dist/tm/shell-bridge.d.ts.map +1 -1
- package/dist/tm/shell-bridge.js +57 -10
- package/dist/tm/shell-bridge.js.map +1 -1
- package/dist/tm/webfetch.d.ts +29 -7
- package/dist/tm/webfetch.d.ts.map +1 -1
- package/dist/tm/webfetch.js +117 -15
- 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 +5 -2
package/dist/tm/search.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tm/search.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tm/search.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,11 +12,24 @@
|
|
|
12
12
|
* the real host — so that shape goes FIRST; the legacy call shapes stay as
|
|
13
13
|
* fallbacks for other hosts and the test fakes (which only need *some*
|
|
14
14
|
* call to return `{text}`). Returns stdout text.
|
|
15
|
+
*
|
|
16
|
+
* `cwd` (fix batch T3): the workspace root the command is pinned to — the
|
|
17
|
+
* platform-shell fallback inherits the HOST process cwd without it (the
|
|
18
|
+
* user HOME on the desktop sidecar), so relative paths in commands
|
|
19
|
+
* resolved outside the workspace.
|
|
15
20
|
*/
|
|
16
|
-
export declare function runShellCommand($: unknown, command: string): Promise<string>;
|
|
21
|
+
export declare function runShellCommand($: unknown, command: string, cwd?: string): Promise<string>;
|
|
17
22
|
/** Strip ANSI + empty-line noise, cap length, best-effort line number. */
|
|
18
23
|
export declare function cleanShellError(err: unknown): {
|
|
19
24
|
message: string;
|
|
20
25
|
line?: number;
|
|
21
26
|
};
|
|
27
|
+
/**
|
|
28
|
+
* Spawn the platform shell directly. `cwd` pins the command to the
|
|
29
|
+
* workspace root (fix batch T3/C3): without it the child inherits the HOST
|
|
30
|
+
* process cwd — the user HOME on the desktop sidecar — so every relative
|
|
31
|
+
* path in a command resolved against the wrong directory. A spawn failure
|
|
32
|
+
* names the cwd explicitly; there is no silent fallback to another cwd.
|
|
33
|
+
*/
|
|
34
|
+
export declare function spawnShellFallback(command: string, cwd?: string): Promise<string>;
|
|
22
35
|
//# sourceMappingURL=shell-bridge.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell-bridge.d.ts","sourceRoot":"","sources":["../../src/tm/shell-bridge.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH
|
|
1
|
+
{"version":3,"file":"shell-bridge.d.ts","sourceRoot":"","sources":["../../src/tm/shell-bridge.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAgEhG;AAED,0EAA0E;AAC1E,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAehF;AAID;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA8CvF"}
|
package/dist/tm/shell-bridge.js
CHANGED
|
@@ -12,16 +12,45 @@
|
|
|
12
12
|
* the real host — so that shape goes FIRST; the legacy call shapes stay as
|
|
13
13
|
* fallbacks for other hosts and the test fakes (which only need *some*
|
|
14
14
|
* call to return `{text}`). Returns stdout text.
|
|
15
|
+
*
|
|
16
|
+
* `cwd` (fix batch T3): the workspace root the command is pinned to — the
|
|
17
|
+
* platform-shell fallback inherits the HOST process cwd without it (the
|
|
18
|
+
* user HOME on the desktop sidecar), so relative paths in commands
|
|
19
|
+
* resolved outside the workspace.
|
|
15
20
|
*/
|
|
16
|
-
export async function runShellCommand($, command) {
|
|
21
|
+
export async function runShellCommand($, command, cwd) {
|
|
17
22
|
if (typeof $ !== "function") {
|
|
18
23
|
// Desktop sidecar reality (1.18.30 probed): the plugin runs in a
|
|
19
24
|
// worker_threads worker on Electron's Node — neither input.$ nor Bun
|
|
20
25
|
// globals exist there. Go straight to the platform-shell spawn
|
|
21
|
-
// (governance already classified the command before this call).
|
|
22
|
-
|
|
26
|
+
// (governance already classified the command before this call). This is
|
|
27
|
+
// ALSO the C3 path on those hosts: the spawn is the only executor, and it
|
|
28
|
+
// pins `cwd`, so relative paths resolve to the workspace, never HOME.
|
|
29
|
+
return spawnShellFallback(command, cwd);
|
|
30
|
+
}
|
|
31
|
+
let shell = $;
|
|
32
|
+
// T6/C3: the `$` call shapes below never carry a cwd, so on a host whose
|
|
33
|
+
// `$` is a plain function (no `.cwd()` capability) a relative path resolved
|
|
34
|
+
// against the HOST process cwd — the user HOME on the sidecar. A Bun Shell
|
|
35
|
+
// DOES expose `.cwd(dir)` (returns a dir-bound shell, still tagged-template
|
|
36
|
+
// callable), so when BOTH a cwd is required and the host `$` can bind it,
|
|
37
|
+
// bind first and run the bound shell. When `$` has no `.cwd` (test fakes,
|
|
38
|
+
// exotic hosts) we KEEP using it — the spawn would otherwise fire a real
|
|
39
|
+
// shell where a working `$` bridge exists (and §6k pins that bridge path),
|
|
40
|
+
// so the safe move is to honor `$` and let the caller's command be absolute.
|
|
41
|
+
if (cwd) {
|
|
42
|
+
const cwdCapable = $;
|
|
43
|
+
if (typeof cwdCapable.cwd === "function") {
|
|
44
|
+
try {
|
|
45
|
+
const bound = cwdCapable.cwd(cwd);
|
|
46
|
+
if (typeof bound === "function")
|
|
47
|
+
shell = bound;
|
|
48
|
+
}
|
|
49
|
+
catch {
|
|
50
|
+
/* binding failed — fall through to the unbound $ shapes */
|
|
51
|
+
}
|
|
52
|
+
}
|
|
23
53
|
}
|
|
24
|
-
const shell = $;
|
|
25
54
|
let proc;
|
|
26
55
|
let lastErr;
|
|
27
56
|
for (const attempt of [
|
|
@@ -52,7 +81,7 @@ export async function runShellCommand($, command) {
|
|
|
52
81
|
// the platform shell directly (PowerShell on win32 / bash elsewhere).
|
|
53
82
|
// Governance (P3 allowlist + R6) already classified the command BEFORE
|
|
54
83
|
// this call — the fallback runs only cleared commands.
|
|
55
|
-
return await spawnShellFallback(command);
|
|
84
|
+
return await spawnShellFallback(command, cwd);
|
|
56
85
|
}
|
|
57
86
|
const p = proc;
|
|
58
87
|
if (typeof p.text === "function")
|
|
@@ -80,27 +109,45 @@ export function cleanShellError(err) {
|
|
|
80
109
|
return { message: msg || "shell 执行失败", line: m ? Number(m[1]) : undefined };
|
|
81
110
|
}
|
|
82
111
|
// ---------- platform-shell fallback (Desktop sidecar has no $ bridge) -----
|
|
83
|
-
|
|
112
|
+
/**
|
|
113
|
+
* Spawn the platform shell directly. `cwd` pins the command to the
|
|
114
|
+
* workspace root (fix batch T3/C3): without it the child inherits the HOST
|
|
115
|
+
* process cwd — the user HOME on the desktop sidecar — so every relative
|
|
116
|
+
* path in a command resolved against the wrong directory. A spawn failure
|
|
117
|
+
* names the cwd explicitly; there is no silent fallback to another cwd.
|
|
118
|
+
*/
|
|
119
|
+
export async function spawnShellFallback(command, cwd) {
|
|
84
120
|
const { spawn } = await import("node:child_process");
|
|
85
121
|
const isWin = process.platform === "win32";
|
|
86
122
|
const exe = isWin ? "powershell.exe" : (process.env.SHELL || "bash");
|
|
123
|
+
// UTF-8 (fix batch m4): Windows PowerShell 5.1 pipes output in the legacy
|
|
124
|
+
// console codepage (GBK on zh-CN hosts), mojibake'ing CJK in results AND
|
|
125
|
+
// error paths. Force UTF-8 for the session before the payload runs.
|
|
126
|
+
const payload = isWin
|
|
127
|
+
? "[Console]::OutputEncoding=[System.Text.Encoding]::UTF8; " + command
|
|
128
|
+
: command;
|
|
87
129
|
const args = isWin
|
|
88
|
-
? ["-NoProfile", "-NonInteractive", "-Command",
|
|
130
|
+
? ["-NoProfile", "-NonInteractive", "-Command", payload]
|
|
89
131
|
: ["-c", command];
|
|
132
|
+
const cwdNote = cwd ? `(工作目录 ${cwd})` : "";
|
|
90
133
|
return await new Promise((resolve, reject) => {
|
|
91
134
|
let child;
|
|
92
135
|
try {
|
|
93
|
-
child = spawn(exe, args, {
|
|
136
|
+
child = spawn(exe, args, {
|
|
137
|
+
windowsHide: true,
|
|
138
|
+
timeout: 60_000,
|
|
139
|
+
...(cwd ? { cwd } : {}),
|
|
140
|
+
});
|
|
94
141
|
}
|
|
95
142
|
catch (e) {
|
|
96
|
-
reject(new Error(`平台 shell
|
|
143
|
+
reject(new Error(`平台 shell 回退启动失败${cwdNote}:${e.message}`));
|
|
97
144
|
return;
|
|
98
145
|
}
|
|
99
146
|
let out = "";
|
|
100
147
|
let err = "";
|
|
101
148
|
child.stdout?.on("data", (d) => { out += d.toString(); });
|
|
102
149
|
child.stderr?.on("data", (d) => { err += d.toString(); });
|
|
103
|
-
child.on("error", (e) => reject(e));
|
|
150
|
+
child.on("error", (e) => reject(new Error(`平台 shell 执行失败${cwdNote}:${e.message}`)));
|
|
104
151
|
child.on("close", (code) => {
|
|
105
152
|
if (code === 0)
|
|
106
153
|
resolve(out);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell-bridge.js","sourceRoot":"","sources":["../../src/tm/shell-bridge.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH
|
|
1
|
+
{"version":3,"file":"shell-bridge.js","sourceRoot":"","sources":["../../src/tm/shell-bridge.ts"],"names":[],"mappings":"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"}
|
package/dist/tm/webfetch.d.ts
CHANGED
|
@@ -25,7 +25,15 @@
|
|
|
25
25
|
import { type TmAskFn } from "./perm-ask.js";
|
|
26
26
|
import type { ToolResult } from "../types.js";
|
|
27
27
|
import { type TmConfig } from "./config.js";
|
|
28
|
-
|
|
28
|
+
/** T4 (tm_search quality upgrade): the two new no-key engine hosts.
|
|
29
|
+
* DEFAULT_WEBFETCH_DOMAINS itself lives in config.ts (owned by the P0
|
|
30
|
+
* batch — NOT editable by this package), so the seed extension is applied
|
|
31
|
+
* consumer-side: `seedWebfetchDomains` appends these ONLY to the built-in
|
|
32
|
+
* default list. A narrowed TM_WEBFETCH_ALLOWED_DOMAINS is never widened
|
|
33
|
+
* (an out-of-allowlist engine host still routes to the official dialog). */
|
|
34
|
+
export declare const T4_SEEDED_DOMAINS: readonly string[];
|
|
35
|
+
export declare function seedWebfetchDomains(allowlist: readonly string[]): string[];
|
|
36
|
+
import { type TmPipelines } from "./pipelines.js";
|
|
29
37
|
/** True when `hostname` is the domain itself or a subdomain of it. */
|
|
30
38
|
export declare function hostAllowed(hostname: string, allowlist: readonly string[]): boolean;
|
|
31
39
|
export type UrlVerdict = {
|
|
@@ -62,16 +70,30 @@ export declare function hitDomainBlacklist(): string[];
|
|
|
62
70
|
export interface SearchHit {
|
|
63
71
|
title: string;
|
|
64
72
|
url: string;
|
|
73
|
+
/** 1-2 line summary when the ENGINE carries one (bing b_caption, SO's
|
|
74
|
+
* score/tags composite, HN's points/comments) — never fabricated. */
|
|
75
|
+
snippet?: string;
|
|
76
|
+
/** Which engine produced the hit (set by tm_search auto-fusion only). */
|
|
77
|
+
source?: string;
|
|
78
|
+
/** 1-based fused rank (auto-fusion only). */
|
|
79
|
+
rank?: number;
|
|
80
|
+
/** False when the host is outside the fetch allowlist (auto-fusion only) —
|
|
81
|
+
* following it will open an approval dialog, so the agent should prefer a
|
|
82
|
+
* hit it can actually read. Undefined = not evaluated. */
|
|
83
|
+
fetchable?: boolean;
|
|
65
84
|
}
|
|
66
85
|
/**
|
|
67
|
-
* Pull external result hits (title + URL
|
|
68
|
-
* page's RAW HTML. Dependency-free: anchor
|
|
69
|
-
* hrefs, click trackers, engine chrome,
|
|
70
|
-
* their markup often, so the filter set is
|
|
71
|
-
* fall back to plain text extraction when
|
|
86
|
+
* Pull external result hits (title + URL [+ engine snippet when present])
|
|
87
|
+
* out of a search-engine result page's RAW HTML. Dependency-free: anchor
|
|
88
|
+
* scan + noise filters (relative hrefs, click trackers, engine chrome,
|
|
89
|
+
* duplicates). Engines rearrange their markup often, so the filter set is
|
|
90
|
+
* intentionally loose — callers fall back to plain text extraction when
|
|
91
|
+
* the list comes back thin.
|
|
72
92
|
*/
|
|
73
93
|
export declare function extractSearchHits(html: string, max?: number, blacklist?: readonly string[]): SearchHit[];
|
|
74
|
-
/** Compact numbered rendering — what actually enters the context.
|
|
94
|
+
/** Compact numbered rendering — what actually enters the context. Carries
|
|
95
|
+
* the engine-provided snippet (one line) and the fusion source tag when
|
|
96
|
+
* the caller supplied them; plain title+URL otherwise. */
|
|
75
97
|
export declare function renderSearchHits(query: string, engine: string, hits: SearchHit[]): string;
|
|
76
98
|
export interface WebFetchResult {
|
|
77
99
|
text: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webfetch.d.ts","sourceRoot":"","sources":["../../src/tm/webfetch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAGH,OAAO,EAA6B,KAAK,OAAO,EAAE,MAAM,eAAe,CAAA;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAqC,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"webfetch.d.ts","sourceRoot":"","sources":["../../src/tm/webfetch.ts"],"names":[],"mappings":"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"}
|
package/dist/tm/webfetch.js
CHANGED
|
@@ -25,8 +25,21 @@
|
|
|
25
25
|
import { isEnvFilePath } from "../envprotect.js";
|
|
26
26
|
import { askFnOf, askUserForTarget } from "./perm-ask.js";
|
|
27
27
|
import { shorten, DEFAULT_WEBFETCH_DOMAINS } from "./config.js";
|
|
28
|
+
/** T4 (tm_search quality upgrade): the two new no-key engine hosts.
|
|
29
|
+
* DEFAULT_WEBFETCH_DOMAINS itself lives in config.ts (owned by the P0
|
|
30
|
+
* batch — NOT editable by this package), so the seed extension is applied
|
|
31
|
+
* consumer-side: `seedWebfetchDomains` appends these ONLY to the built-in
|
|
32
|
+
* default list. A narrowed TM_WEBFETCH_ALLOWED_DOMAINS is never widened
|
|
33
|
+
* (an out-of-allowlist engine host still routes to the official dialog). */
|
|
34
|
+
export const T4_SEEDED_DOMAINS = ["api.stackexchange.com", "hn.algolia.com"];
|
|
35
|
+
export function seedWebfetchDomains(allowlist) {
|
|
36
|
+
const isDefaultSeed = allowlist.length === DEFAULT_WEBFETCH_DOMAINS.length &&
|
|
37
|
+
allowlist.every((d, i) => d === DEFAULT_WEBFETCH_DOMAINS[i]);
|
|
38
|
+
return isDefaultSeed ? [...allowlist, ...T4_SEEDED_DOMAINS] : [...allowlist];
|
|
39
|
+
}
|
|
28
40
|
import { detectContentType } from "./preview.js";
|
|
29
41
|
import { tmError, toToolResult } from "./result.js";
|
|
42
|
+
import { projectJsonFields } from "./pipelines.js";
|
|
30
43
|
/** Real-browser request headers. Anti-bot gates (baike.baidu.com, zhihu,
|
|
31
44
|
* csdn — a real session collected 403s from both) reject robot-shaped UAs
|
|
32
45
|
* like the old "compatible; TeamMode" one before any content check; a
|
|
@@ -76,7 +89,7 @@ export function checkWebUrl(raw, allowlist) {
|
|
|
76
89
|
ok: false,
|
|
77
90
|
askable: true,
|
|
78
91
|
url,
|
|
79
|
-
message: `主机 "${url.hostname}" 不在 tm_webfetch 域名白名单内(预置: ${DEFAULT_WEBFETCH_DOMAINS.join(", ")})。` +
|
|
92
|
+
message: `主机 "${url.hostname}" 不在 tm_webfetch 域名白名单内(预置: ${[...DEFAULT_WEBFETCH_DOMAINS, ...T4_SEEDED_DOMAINS].join(", ")})。` +
|
|
80
93
|
`已请求用户批准(官方确认弹窗)——批准后本次放行;用 TM_WEBFETCH_ALLOWED_DOMAINS 可永久扩展(逗号/分号分隔,"*" 放开全部主机)`,
|
|
81
94
|
};
|
|
82
95
|
}
|
|
@@ -119,6 +132,18 @@ export const SEARCH_PAGE_RE = /(?:cn\.bing\.com|www\.bing\.com)\/search|\.baidu\
|
|
|
119
132
|
* surfaces ai.so.com as a "hit" (its own AI search tab), which is an
|
|
120
133
|
* internal page, not an external result. */
|
|
121
134
|
const ENGINE_TRACKER_RE = /bing\.com\/ck\/|baidu\.com\/link\?|sogou\.com\/link\?|go\.microsoft\.com\/fwlink|so\.com\/link\?|ai\.so\.com/i;
|
|
135
|
+
/** The engine's OWN pages. bing returns /images, /academic, /dict, /news,
|
|
136
|
+
* its own CN landing page and `www.microsoft.com` chrome as "results";
|
|
137
|
+
* those are never the answer to a lookup about something else, and they
|
|
138
|
+
* made the hit list look like the engine was recommending itself. The
|
|
139
|
+
* engine hosts stay on the FETCH allowlist (tm_webfetch can still read a
|
|
140
|
+
* bing SERP on purpose) — this only stops them being rendered as results. */
|
|
141
|
+
const ENGINE_OWN_HOST_RE = /(^|\.)bing\.(com|cn|net)$|(^|\.)microsofttranslator\.com$/i;
|
|
142
|
+
/** Sponsored-slot marker (bing CN wraps an ad in `class="b_ad"`, which is
|
|
143
|
+
* distinct from the organic `b_algo` — a substring test cannot confuse
|
|
144
|
+
* them). Checked in the 320 chars preceding the anchor, i.e. the slot it
|
|
145
|
+
* lives in, never the whole page. */
|
|
146
|
+
const AD_SLOT_RE = /b_ad\b|ads-title|data-kq="dsp\.srp\./i;
|
|
122
147
|
/** Domains that collide with common search terms (e.g. maimai.cn is the
|
|
123
148
|
* Chinese professional-networking site 脉脉, NOT the SEGA maimai DX rhythm
|
|
124
149
|
* game — a real session showed bing returning 10/10 maimai.cn hits for
|
|
@@ -141,17 +166,36 @@ function decodeEntities(s) {
|
|
|
141
166
|
.replace(/"/gi, '"')
|
|
142
167
|
.replace(/�?39;|'/gi, "'");
|
|
143
168
|
}
|
|
169
|
+
/** Bing's caption block lives AFTER the result anchor (same b_algo item):
|
|
170
|
+
* `<div class="b_caption"><p …>TEXT</p></div>`. Real-world CN bing often
|
|
171
|
+
* ships no caption at all — then the hit simply has NO snippet (never
|
|
172
|
+
* invented from surrounding chrome). */
|
|
173
|
+
const CAPTION_RE = /b_caption[\s\S]{0,240}?<p[^>]*>([\s\S]*?)<\/p>/i;
|
|
174
|
+
function extractCaptionSnippet(window) {
|
|
175
|
+
const m = CAPTION_RE.exec(window);
|
|
176
|
+
if (!m)
|
|
177
|
+
return undefined;
|
|
178
|
+
const text = decodeEntities(m[1].replace(/<[^>]+>/g, " "))
|
|
179
|
+
.replace(/\s+/g, " ")
|
|
180
|
+
.trim();
|
|
181
|
+
if (!text)
|
|
182
|
+
return undefined;
|
|
183
|
+
return text.length > 160 ? text.slice(0, 160) + "…" : text;
|
|
184
|
+
}
|
|
144
185
|
/**
|
|
145
|
-
* Pull external result hits (title + URL
|
|
146
|
-
* page's RAW HTML. Dependency-free: anchor
|
|
147
|
-
* hrefs, click trackers, engine chrome,
|
|
148
|
-
* their markup often, so the filter set is
|
|
149
|
-
* fall back to plain text extraction when
|
|
186
|
+
* Pull external result hits (title + URL [+ engine snippet when present])
|
|
187
|
+
* out of a search-engine result page's RAW HTML. Dependency-free: anchor
|
|
188
|
+
* scan + noise filters (relative hrefs, click trackers, engine chrome,
|
|
189
|
+
* duplicates). Engines rearrange their markup often, so the filter set is
|
|
190
|
+
* intentionally loose — callers fall back to plain text extraction when
|
|
191
|
+
* the list comes back thin.
|
|
150
192
|
*/
|
|
151
193
|
export function extractSearchHits(html, max = 10, blacklist = hitDomainBlacklist()) {
|
|
152
194
|
const hits = [];
|
|
153
195
|
const seen = new Set();
|
|
154
|
-
|
|
196
|
+
const anchors = [...html.matchAll(ANCHOR_RE)];
|
|
197
|
+
for (let ai = 0; ai < anchors.length; ai++) {
|
|
198
|
+
const m = anchors[ai];
|
|
155
199
|
const href = decodeEntities((m[1] ?? m[2] ?? "").trim());
|
|
156
200
|
if (!/^https?:\/\//i.test(href))
|
|
157
201
|
continue;
|
|
@@ -168,27 +212,56 @@ export function extractSearchHits(html, max = 10, blacklist = hitDomainBlacklist
|
|
|
168
212
|
continue;
|
|
169
213
|
// domain blacklist: same-name-different-site collisions (maimai.cn 脉脉
|
|
170
214
|
// vs the maimai DX game) must not ride the hit list as "results"
|
|
215
|
+
let host = "";
|
|
171
216
|
try {
|
|
172
|
-
|
|
217
|
+
host = new URL(href).hostname.toLowerCase();
|
|
173
218
|
if (blacklist.some((d) => host === d || host.endsWith("." + d)))
|
|
174
219
|
continue;
|
|
220
|
+
// the engine's own chrome (bing /images, /dict, /news …) is not a result
|
|
221
|
+
if (ENGINE_OWN_HOST_RE.test(host))
|
|
222
|
+
continue;
|
|
175
223
|
}
|
|
176
224
|
catch {
|
|
177
225
|
/* URL parse fail: keep the hit (the anchor scan already vetted it) */
|
|
178
226
|
}
|
|
227
|
+
// sponsored slot: the markup immediately BEFORE this anchor decides
|
|
228
|
+
// whether the hit is an ad — bounded so it cannot bleed in from earlier
|
|
229
|
+
// results on the page.
|
|
230
|
+
const slotStart = Math.max(0, (m.index ?? 0) - 320);
|
|
231
|
+
if (AD_SLOT_RE.test(html.slice(slotStart, m.index ?? 0)))
|
|
232
|
+
continue;
|
|
179
233
|
seen.add(key);
|
|
180
|
-
|
|
234
|
+
// snippet window: this anchor's end up to the NEXT organic result
|
|
235
|
+
// (`b_algo`) when the SERP marks those, else the next anchor, else 600
|
|
236
|
+
// chars. The b_algo bound matters: bing puts a nested <a> INSIDE the
|
|
237
|
+
// caption, so an "up to the next anchor" window cut nearly every CN
|
|
238
|
+
// snippet off before the text started.
|
|
239
|
+
const start = (m.index ?? 0) + m[0].length;
|
|
240
|
+
const capEnd = start + 600;
|
|
241
|
+
const nextAnchor = ai + 1 < anchors.length ? (anchors[ai + 1].index ?? capEnd) : capEnd;
|
|
242
|
+
const nextAlgo = html.indexOf("b_algo", start);
|
|
243
|
+
const end = nextAlgo > -1 && nextAlgo < capEnd ? nextAlgo : Math.min(nextAnchor, capEnd);
|
|
244
|
+
const snippet = extractCaptionSnippet(html.slice(start, end));
|
|
245
|
+
hits.push({
|
|
246
|
+
title: title.length > 110 ? title.slice(0, 110) + "…" : title,
|
|
247
|
+
url: href,
|
|
248
|
+
...(snippet ? { snippet } : {}),
|
|
249
|
+
});
|
|
181
250
|
if (hits.length >= max)
|
|
182
251
|
break;
|
|
183
252
|
}
|
|
184
253
|
return hits;
|
|
185
254
|
}
|
|
186
|
-
/** Compact numbered rendering — what actually enters the context.
|
|
255
|
+
/** Compact numbered rendering — what actually enters the context. Carries
|
|
256
|
+
* the engine-provided snippet (one line) and the fusion source tag when
|
|
257
|
+
* the caller supplied them; plain title+URL otherwise. */
|
|
187
258
|
export function renderSearchHits(query, engine, hits) {
|
|
188
259
|
const lines = [`[search] ${engine} × "${query}" → ${hits.length} 条结果:`];
|
|
189
260
|
hits.forEach((h, i) => {
|
|
190
|
-
lines.push(`${i + 1}. ${h.title}`);
|
|
261
|
+
lines.push(`${i + 1}. ${h.source ? `[${h.source}] ` : ""}${h.title}`);
|
|
191
262
|
lines.push(` ${h.url}`);
|
|
263
|
+
if (h.snippet)
|
|
264
|
+
lines.push(` ${h.snippet}`);
|
|
192
265
|
});
|
|
193
266
|
lines.push("(读正文: tm_webfetch 结果 URL;JS 渲染页用 tm_browser 打开。)");
|
|
194
267
|
return lines.join("\n");
|
|
@@ -313,19 +386,22 @@ export function extractWebResponse(raw, contentType) {
|
|
|
313
386
|
const WEBFETCH_DESCRIPTION = `Fetch a web page through the governed pipeline (domain allowlist + threshold offload) — use it for a KNOWN URL only. For open-ended lookups use tm_search FIRST (multi-engine, extracted hit lists); never hand-build search URLs here.
|
|
314
387
|
|
|
315
388
|
- ANTI-PATTERN: do NOT hand-build search-engine URLs here — that is tm_search's job (multi-engine, extracted hit lists). Use THIS tool for a page you already know: a direct article/wiki term, a registry JSON endpoint, a raw file.
|
|
316
|
-
- Seeded hosts (CN-reachable, no API keys): moegirl.org.cn (parent — all subdomains: mobile. term https://mobile.moegirl.org.cn/TERM, mzh. main site) · search.bilibili.com · cn.bing.com (search: https://cn.bing.com/search?q=QUERY; &ensearch=1 for international results) · baidu.com (parent: www. search /s?wd=QUERY, baike. encyclopedia entries) · www.sogou.com (https://www.sogou.com/web?query=QUERY) · www.so.com (https://www.so.com/s?q=QUERY) · registry.npmjs.org (package JSON: https://registry.npmjs.org/<pkg>/latest, search: https://registry.npmjs.org/-/v1/search?text=QUERY) · api.github.com (repo search: https://api.github.com/search/repositories?q=QUERY) · raw.githubusercontent.com + gist.githubusercontent.com + github.com (docs/code/issues) · ghproxy.net (mainland mirror for github raw). URL-encode the query (CJK terms too). Search-engine result pages are auto-extracted to a title+URL hit list. Expand colloquial/abbreviated terms to canonical forms and fetch BOTH spellings.
|
|
389
|
+
- Seeded hosts (CN-reachable, no API keys): moegirl.org.cn (parent — all subdomains: mobile. term https://mobile.moegirl.org.cn/TERM, mzh. main site) · search.bilibili.com · cn.bing.com (search: https://cn.bing.com/search?q=QUERY; &ensearch=1 for international results) · baidu.com (parent: www. search /s?wd=QUERY, baike. encyclopedia entries) · www.sogou.com (https://www.sogou.com/web?query=QUERY) · www.so.com (https://www.so.com/s?q=QUERY) · registry.npmjs.org (package JSON: https://registry.npmjs.org/<pkg>/latest, search: https://registry.npmjs.org/-/v1/search?text=QUERY) · api.github.com (repo search: https://api.github.com/search/repositories?q=QUERY) · api.stackexchange.com (question search: https://api.stackexchange.com/2.3/search/advanced?order=desc&sort=relevance&q=QUERY&site=stackoverflow&pagesize=10) · hn.algolia.com (HN story search: https://hn.algolia.com/api/v1/search?query=QUERY&tags=story) · raw.githubusercontent.com + gist.githubusercontent.com + github.com (docs/code/issues) · ghproxy.net (mainland mirror for github raw). URL-encode the query (CJK terms too). Search-engine result pages are auto-extracted to a title+URL hit list. Expand colloquial/abbreviated terms to canonical forms and fetch BOTH spellings.
|
|
317
390
|
- Governance: only http(s), hosts must be allowlisted (extend via TM_WEBFETCH_ALLOWED_DOMAINS, "*" opens all), redirects re-checked per hop, HTML stripped to text; output above TM_OFFLOAD_THRESHOLD tokens is offloaded to a handle — page with tm_fetch (try mode:"structure" first).
|
|
318
|
-
- Governance: out-of-allowlist hosts route through the OFFICIAL confirmation dialog (approve to proceed once; the
|
|
391
|
+
- Governance: out-of-allowlist hosts route through the OFFICIAL confirmation dialog (approve to proceed once; the 1-min unanswered auto-reject applies); env-file URLs and non-http(s) schemes are hard-rejected with no dialog.`;
|
|
319
392
|
/** Build the tm_webfetch ToolDefinition over the SHARED main pipelines
|
|
320
393
|
* instance (same step counter as tm_read/tm_grep/tm_bash — refs stay
|
|
321
394
|
* unambiguous). `fetchImpl` is injectable for tests. */
|
|
322
395
|
export function buildTmWebfetchTool(deps) {
|
|
323
396
|
const { pipelines, cfg } = deps;
|
|
324
|
-
|
|
397
|
+
// T4: the DEFAULT seed gains api.stackexchange.com + hn.algolia.com; a
|
|
398
|
+
// user-narrowed TM_WEBFETCH_ALLOWED_DOMAINS passes through untouched.
|
|
399
|
+
const allowlist = seedWebfetchDomains(cfg.webfetchAllowedDomains);
|
|
325
400
|
return {
|
|
326
401
|
description: WEBFETCH_DESCRIPTION,
|
|
327
402
|
args: deps.args ?? {
|
|
328
403
|
url: { descriptor: "url: string (required, absolute https URL on an allowlisted host, query URL-encoded)" },
|
|
404
|
+
fields: { descriptor: "fields: string (optional, dot-path projection over a JSON response body, e.g. items[].name; ignored on non-JSON)" },
|
|
329
405
|
},
|
|
330
406
|
execute: async (rawArgs, ctx) => {
|
|
331
407
|
const tool = "tm_webfetch";
|
|
@@ -378,9 +454,35 @@ export function buildTmWebfetchTool(deps) {
|
|
|
378
454
|
if (!text.trim()) {
|
|
379
455
|
// anti-bot / JS-rendered pages (baidu is the usual offender) return
|
|
380
456
|
// an empty shell — tell the agent instead of storing nothing
|
|
381
|
-
return toToolResult(tmError(tool, "execute", "页面内容为空——该站点可能是反爬或 JS 渲染页(baidu 常见)。换 tm_search 的其他引擎(bing/
|
|
457
|
+
return toToolResult(tmError(tool, "execute", "页面内容为空——该站点可能是反爬或 JS 渲染页(baidu 常见)。换 tm_search 的其他引擎(bing/stackoverflow/hn)、用 tm_browser 打开,或直接访问数据源 URL(如 registry.npmjs.org/<pkg>/latest)。"));
|
|
382
458
|
}
|
|
383
459
|
const contentType = detectContentType(text);
|
|
460
|
+
// Wave B M2 — `fields` dot-path projection on a JSON response body.
|
|
461
|
+
// The PTC bridge advertises tm.webfetch({url, fields?}) and the
|
|
462
|
+
// direct tool surface now HONORS it (was contract-only, projection
|
|
463
|
+
// lived only in the tm_fetch handle path): a JSON body is projected
|
|
464
|
+
// through the SAME projectJsonFields pipelines' tm_fetch uses, so
|
|
465
|
+
// only the matched values ride back. A non-JSON body — or one that
|
|
466
|
+
// no longer parses — IGNORES fields and serves the normal full text.
|
|
467
|
+
const fields = typeof args.fields === "string" ? args.fields.trim() : "";
|
|
468
|
+
if (fields && contentType === "json") {
|
|
469
|
+
const proj = projectJsonFields(text, fields, cfg.fetchMaxLines);
|
|
470
|
+
if (proj) {
|
|
471
|
+
const head = [
|
|
472
|
+
`[webfetch fields] ${shorten(res.finalUrl, 120)}`,
|
|
473
|
+
`fields: ${fields} | matched: ${proj.matched}${proj.truncated ? ` | 仅前 ${cfg.fetchMaxLines} 个值(已截断)` : ""}`,
|
|
474
|
+
proj.matched === 0
|
|
475
|
+
? "投影无匹配值(路径不存在或全为 undefined)——去掉 fields 重取原始 JSON 核对键名。"
|
|
476
|
+
: "只回投影结果;取原始全文请去掉 fields 参数。",
|
|
477
|
+
"--- 投影 ---",
|
|
478
|
+
].join("\n");
|
|
479
|
+
const projected = proj.values.length ? `${head}\n${proj.values.join("\n")}` : head;
|
|
480
|
+
return toToolResult(pipelines.govern(stepId, tool, projected, {
|
|
481
|
+
contentType: "text",
|
|
482
|
+
clue: `url=${shorten(res.finalUrl, 120)} fields=${shorten(fields, 60)}`,
|
|
483
|
+
}));
|
|
484
|
+
}
|
|
485
|
+
}
|
|
384
486
|
return toToolResult(pipelines.govern(stepId, tool, text, {
|
|
385
487
|
contentType,
|
|
386
488
|
clue: `url=${shorten(res.finalUrl, 120)}`,
|