@trusty-squire/mcp 0.1.5 → 0.1.7

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 (40) hide show
  1. package/dist/bot/agent.d.ts +125 -0
  2. package/dist/bot/agent.d.ts.map +1 -0
  3. package/dist/bot/agent.js +974 -0
  4. package/dist/bot/agent.js.map +1 -0
  5. package/dist/bot/asn.d.ts +15 -0
  6. package/dist/bot/asn.d.ts.map +1 -0
  7. package/dist/bot/asn.js +151 -0
  8. package/dist/bot/asn.js.map +1 -0
  9. package/dist/bot/browser.d.ts +70 -0
  10. package/dist/bot/browser.d.ts.map +1 -0
  11. package/dist/bot/browser.js +810 -0
  12. package/dist/bot/browser.js.map +1 -0
  13. package/dist/bot/debug.d.ts +3 -0
  14. package/dist/bot/debug.d.ts.map +1 -0
  15. package/dist/bot/debug.js +24 -0
  16. package/dist/bot/debug.js.map +1 -0
  17. package/dist/bot/inbox-client.d.ts +41 -0
  18. package/dist/bot/inbox-client.d.ts.map +1 -0
  19. package/dist/bot/inbox-client.js +68 -0
  20. package/dist/bot/inbox-client.js.map +1 -0
  21. package/dist/bot/index.d.ts +22 -0
  22. package/dist/bot/index.d.ts.map +1 -0
  23. package/dist/bot/index.js +83 -0
  24. package/dist/bot/index.js.map +1 -0
  25. package/dist/bot/llm-client.d.ts +75 -0
  26. package/dist/bot/llm-client.d.ts.map +1 -0
  27. package/dist/bot/llm-client.js +250 -0
  28. package/dist/bot/llm-client.js.map +1 -0
  29. package/dist/bot/prewarm-cache.d.ts +3 -0
  30. package/dist/bot/prewarm-cache.d.ts.map +1 -0
  31. package/dist/bot/prewarm-cache.js +91 -0
  32. package/dist/bot/prewarm-cache.js.map +1 -0
  33. package/dist/install/cli.d.ts +2 -1
  34. package/dist/install/cli.d.ts.map +1 -1
  35. package/dist/install/cli.js +28 -9
  36. package/dist/install/cli.js.map +1 -1
  37. package/dist/tools/provision-any.js +1 -1
  38. package/dist/tools/provision-any.js.map +1 -1
  39. package/dist/tools/wait-for-approval.d.ts +1 -1
  40. package/package.json +10 -7
@@ -0,0 +1,250 @@
1
+ // Pluggable LLM client for the signup agent.
2
+ //
3
+ // The agent only needs one capability: take an image + text → reply text.
4
+ // We abstract that into LLMClient so we can pick the cheapest source
5
+ // available at runtime:
6
+ //
7
+ // 1. MCP Sampling (when the bot is hosted inside an MCP server). The host
8
+ // agent (Claude Desktop, Cursor) makes the call on its own subscription.
9
+ // → Zero cost to Trusty Squire, zero marginal cost to the user.
10
+ //
11
+ // 2. OpenRouter (when OPENROUTER_API_KEY is set). Routes to the user's
12
+ // preferred OR our defaults, with explicit "cheapest serviceable"
13
+ // preset that prefers vision-capable cheap models (Claude Haiku,
14
+ // Gemini Flash, GPT-4o-mini) in cost order.
15
+ // → User pays OpenRouter directly.
16
+ //
17
+ // 3. Anthropic direct (when ANTHROPIC_API_KEY is set). Same shape as
18
+ // today; safest fallback because we know it works.
19
+ // → User pays Anthropic directly when it's their key, or Trusty
20
+ // Squire pays when it's ours.
21
+ //
22
+ // The factory `pickLLMClient()` walks these in order at construction time.
23
+ // The agent itself only sees LLMClient and never knows which backend won.
24
+ import Anthropic from "@anthropic-ai/sdk";
25
+ // ── Anthropic direct ──
26
+ export class AnthropicDirectClient {
27
+ name;
28
+ client;
29
+ model;
30
+ constructor(opts) {
31
+ this.client = new Anthropic({ apiKey: opts.apiKey });
32
+ this.model = opts.model ?? "claude-3-5-sonnet-20241022";
33
+ this.name = `anthropic:${this.model}`;
34
+ }
35
+ async createMessage(req) {
36
+ const content = req.user.map((b) => b.kind === "image"
37
+ ? {
38
+ type: "image",
39
+ source: { type: "base64", media_type: b.media_type, data: b.data_base64 },
40
+ }
41
+ : { type: "text", text: b.text });
42
+ const resp = await this.client.messages.create({
43
+ model: this.model,
44
+ max_tokens: req.max_tokens,
45
+ system: req.system,
46
+ messages: [{ role: "user", content }],
47
+ });
48
+ const textBlock = resp.content.find((b) => b.type === "text");
49
+ if (textBlock === undefined || textBlock.type !== "text") {
50
+ throw new Error(`${this.name}: no text block in response`);
51
+ }
52
+ return {
53
+ text: textBlock.text,
54
+ input_tokens: resp.usage.input_tokens,
55
+ output_tokens: resp.usage.output_tokens,
56
+ backend: this.name,
57
+ };
58
+ }
59
+ }
60
+ export class OpenRouterClient {
61
+ name;
62
+ apiKey;
63
+ model;
64
+ fallbackModels;
65
+ appName;
66
+ appUrl;
67
+ constructor(opts) {
68
+ this.apiKey = opts.apiKey;
69
+ this.model = opts.model ?? process.env.OPENROUTER_MODEL ?? "openrouter/auto";
70
+ this.fallbackModels = opts.fallbackModels ?? [];
71
+ this.appName = opts.appName ?? "Trusty Squire";
72
+ this.appUrl = opts.appUrl ?? "https://trustysquire.ai";
73
+ this.name = `openrouter:${this.model}`;
74
+ }
75
+ async createMessage(req) {
76
+ const userContent = req.user.map((b) => b.kind === "image"
77
+ ? {
78
+ type: "image_url",
79
+ image_url: { url: `data:${b.media_type};base64,${b.data_base64}` },
80
+ }
81
+ : { type: "text", text: b.text });
82
+ const body = {
83
+ model: this.model,
84
+ max_tokens: req.max_tokens,
85
+ messages: [
86
+ { role: "system", content: req.system },
87
+ { role: "user", content: userContent },
88
+ ],
89
+ };
90
+ if (this.fallbackModels.length > 0) {
91
+ body["models"] = [this.model, ...this.fallbackModels];
92
+ }
93
+ const resp = await fetch("https://openrouter.ai/api/v1/chat/completions", {
94
+ method: "POST",
95
+ headers: {
96
+ "content-type": "application/json",
97
+ authorization: `Bearer ${this.apiKey}`,
98
+ "HTTP-Referer": this.appUrl,
99
+ "X-Title": this.appName,
100
+ },
101
+ body: JSON.stringify(body),
102
+ });
103
+ if (!resp.ok) {
104
+ const text = await resp.text();
105
+ throw new Error(`${this.name}: ${resp.status} ${text.slice(0, 300)}`);
106
+ }
107
+ const data = (await resp.json());
108
+ const content = data.choices[0]?.message.content;
109
+ if (typeof content !== "string") {
110
+ throw new Error(`${this.name}: no content in response`);
111
+ }
112
+ return {
113
+ text: content,
114
+ ...(data.usage?.prompt_tokens !== undefined ? { input_tokens: data.usage.prompt_tokens } : {}),
115
+ ...(data.usage?.completion_tokens !== undefined ? { output_tokens: data.usage.completion_tokens } : {}),
116
+ backend: data.model !== undefined ? `openrouter:${data.model}` : this.name,
117
+ };
118
+ }
119
+ }
120
+ export class ProxyLLMClient {
121
+ name;
122
+ apiBaseUrl;
123
+ machineToken;
124
+ tier;
125
+ constructor(opts) {
126
+ this.apiBaseUrl = opts.apiBaseUrl.replace(/\/+$/, "");
127
+ this.machineToken = opts.machineToken;
128
+ this.tier = opts.tier;
129
+ this.name = `trusty-squire-proxy:${this.tier}`;
130
+ }
131
+ async createMessage(req) {
132
+ // Translate the universal LLMRequest into the proxy's wire format.
133
+ // The shapes line up almost exactly because we defined them
134
+ // intentionally narrow.
135
+ const body = {
136
+ system: req.system,
137
+ user: req.user.map((b) => b.kind === "image"
138
+ ? { kind: "image", media_type: b.media_type, data_base64: b.data_base64 }
139
+ : { kind: "text", text: b.text }),
140
+ max_tokens: req.max_tokens,
141
+ tier: this.tier,
142
+ };
143
+ const resp = await fetch(`${this.apiBaseUrl}/v1/llm/chat`, {
144
+ method: "POST",
145
+ headers: {
146
+ "content-type": "application/json",
147
+ "x-machine-token": this.machineToken,
148
+ },
149
+ body: JSON.stringify(body),
150
+ });
151
+ if (resp.status === 429) {
152
+ const data = (await resp.json().catch(() => ({})));
153
+ throw new Error(`${this.name}: rate-limited (hourly cap: ${data.hourly_limit ?? "?"}). Wait or set UNIVERSAL_BOT_MAX_LLM_CALLS=10 to bail sooner.`);
154
+ }
155
+ if (resp.status === 503) {
156
+ throw new Error(`${this.name}: proxy not configured server-side (503)`);
157
+ }
158
+ if (!resp.ok) {
159
+ const text = await resp.text().catch(() => "");
160
+ throw new Error(`${this.name}: ${resp.status} ${text.slice(0, 300)}`);
161
+ }
162
+ const data = (await resp.json());
163
+ return {
164
+ text: data.text,
165
+ backend: data.backend ?? this.name,
166
+ ...(data.input_tokens !== undefined ? { input_tokens: data.input_tokens } : {}),
167
+ ...(data.output_tokens !== undefined ? { output_tokens: data.output_tokens } : {}),
168
+ };
169
+ }
170
+ }
171
+ // "Cheapest serviceable" for our use case: needs vision + good JSON
172
+ // adherence + reasonable speed. The list is ordered by cost-per-1M-input
173
+ // tokens ascending (rates as of mid-2025; OpenRouter updates daily so
174
+ // this is approximate but the relative order is stable).
175
+ const CHEAP_VISION_MODELS_OR = [
176
+ "google/gemini-flash-1.5-8b", // ~$0.04/1M input — vision OK, fast
177
+ "google/gemini-flash-1.5", // ~$0.075/1M input — vision, solid
178
+ "anthropic/claude-3-haiku", // ~$0.25/1M input — vision, JSON great
179
+ "openai/gpt-4o-mini", // ~$0.15/1M input — vision, JSON great
180
+ ];
181
+ export function pickLLMClient(opts = {}) {
182
+ return pickLLMPair(opts).primary;
183
+ }
184
+ // Returns both a primary client and an optional premium fallback. The
185
+ // agent uses this when it wants dual-tier: cheap-first, premium-only-on-
186
+ // validation-failure. Selection rules, in order:
187
+ //
188
+ // 1. TRUSTY_SQUIRE_MACHINE_TOKEN set (the default for MCP installs):
189
+ // primary = ProxyLLMClient(cheap) → /v1/llm/chat tier=cheap
190
+ // premium = ProxyLLMClient(premium) when preferCheap=true
191
+ // Operator pays for LLM; user pays nothing.
192
+ //
193
+ // 2. OPENROUTER_API_KEY set (BYOK):
194
+ // primary = OpenRouter Gemini Flash (cheap) or Sonnet (default)
195
+ // premium = OpenRouter Sonnet when preferCheap=true
196
+ //
197
+ // 3. ANTHROPIC_API_KEY set (BYOK):
198
+ // primary = Anthropic direct (Sonnet)
199
+ // premium = null
200
+ //
201
+ // 4. Else: throw.
202
+ //
203
+ // The Sonnet-via-OR premium routes through the same OpenRouter account
204
+ // the user already pays for, so they get one bill, not two.
205
+ export function pickLLMPair(opts = {}) {
206
+ // 1. Trusty Squire proxy (default for MCP installs).
207
+ const machineToken = process.env.TRUSTY_SQUIRE_MACHINE_TOKEN;
208
+ if (machineToken !== undefined && machineToken.length > 0) {
209
+ const apiBaseUrl = process.env.TRUSTY_SQUIRE_API_BASE ?? "https://trusty-squire-api.fly.dev";
210
+ const primary = new ProxyLLMClient({ apiBaseUrl, machineToken, tier: "cheap" });
211
+ const premium = opts.preferCheap === true
212
+ ? new ProxyLLMClient({ apiBaseUrl, machineToken, tier: "premium" })
213
+ : null;
214
+ return { primary, premium };
215
+ }
216
+ const orKey = process.env.OPENROUTER_API_KEY;
217
+ if (orKey !== undefined && orKey.length > 0) {
218
+ if (opts.preferCheap === true) {
219
+ const [primaryModel, ...fallbacks] = CHEAP_VISION_MODELS_OR;
220
+ const primary = new OpenRouterClient({
221
+ apiKey: orKey,
222
+ ...(primaryModel !== undefined ? { model: primaryModel } : {}),
223
+ fallbackModels: fallbacks,
224
+ });
225
+ // Premium fallback: Claude 3.5 Sonnet via OR. ~$0.15/signup, but
226
+ // only triggers on parse failures, so amortized cost is small.
227
+ const premium = new OpenRouterClient({
228
+ apiKey: orKey,
229
+ model: "anthropic/claude-3.5-sonnet",
230
+ });
231
+ return { primary, premium };
232
+ }
233
+ return {
234
+ primary: new OpenRouterClient({ apiKey: orKey }),
235
+ premium: null,
236
+ };
237
+ }
238
+ const anthropicKey = process.env.ANTHROPIC_API_KEY;
239
+ if (anthropicKey !== undefined && anthropicKey.length > 0) {
240
+ return {
241
+ primary: new AnthropicDirectClient({
242
+ apiKey: anthropicKey,
243
+ ...(process.env.ANTHROPIC_MODEL !== undefined ? { model: process.env.ANTHROPIC_MODEL } : {}),
244
+ }),
245
+ premium: null,
246
+ };
247
+ }
248
+ throw new Error("No LLM backend available. Set OPENROUTER_API_KEY or ANTHROPIC_API_KEY before running the universal bot.");
249
+ }
250
+ //# sourceMappingURL=llm-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llm-client.js","sourceRoot":"","sources":["../../src/bot/llm-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function wasRecentlyPrewarmed(domain: string, ttlMs?: number): Promise<boolean>;
2
+ export declare function recordPrewarmSuccess(domain: string): Promise<void>;
3
+ //# sourceMappingURL=prewarm-cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prewarm-cache.d.ts","sourceRoot":"","sources":["../../src/bot/prewarm-cache.ts"],"names":[],"mappings":"AAmFA,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,MAAM,EACd,KAAK,GAAE,MAAuB,GAC7B,OAAO,CAAC,OAAO,CAAC,CAOlB;AAGD,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAIxE"}
@@ -0,0 +1,91 @@
1
+ // Persistent record of "this domain was prewarmed recently."
2
+ //
3
+ // Prewarm is one of our highest-value bot-resistance moves — simulating
4
+ // a real user's referrer chain (google search → result click → scroll
5
+ // → navigate) lifts the reCAPTCHA v3 score meaningfully because v3
6
+ // weighs prior browsing activity. But it costs 20-45s of wall clock
7
+ // on every signup, which is brutal UX for the second-and-beyond
8
+ // attempts on the same service.
9
+ //
10
+ // This cache lets us pay that cost once per (domain × machine × TTL
11
+ // window) and skip straight to the cheap dwell-only prewarm on cache
12
+ // hits. Hits also indicate the domain has live cookies on this
13
+ // machine already, which is what we actually wanted the long prewarm
14
+ // to establish.
15
+ //
16
+ // Format: JSON map { "<domain>": "<iso8601-timestamp>" }. Stored under
17
+ // $XDG_STATE_HOME/trusty-squire/prewarm-cache.json (or
18
+ // ~/.local/state/trusty-squire/... on linux, ~/.trusty-squire/... as
19
+ // a fallback).
20
+ //
21
+ // We intentionally keep this dirt simple — no eviction job, no
22
+ // LRU, no concurrent-write locking. Failures are non-fatal in both
23
+ // directions (read fail = treat as cache miss, write fail = log + move
24
+ // on). The file's small enough that rewriting the whole thing every
25
+ // signup is fine.
26
+ import { promises as fs } from "node:fs";
27
+ import path from "node:path";
28
+ import os from "node:os";
29
+ // 24h matches the typical Cloudflare clearance cookie TTL. After 24h
30
+ // the cookies the long prewarm planted are stale enough that the
31
+ // scoring JS will retreat — so we may as well redo the prewarm.
32
+ const DEFAULT_TTL_MS = 24 * 60 * 60 * 1000;
33
+ function cacheFilePath() {
34
+ // Respect XDG_STATE_HOME for linux desktops; fall back to a hidden
35
+ // dir in $HOME on platforms that don't set it. This is the same
36
+ // convention the session storage code uses.
37
+ const stateRoot = process.env.XDG_STATE_HOME ??
38
+ (process.platform === "linux"
39
+ ? path.join(os.homedir(), ".local", "state")
40
+ : path.join(os.homedir(), ".trusty-squire"));
41
+ return path.join(stateRoot, "trusty-squire", "prewarm-cache.json");
42
+ }
43
+ async function readCache() {
44
+ try {
45
+ const raw = await fs.readFile(cacheFilePath(), "utf8");
46
+ const parsed = JSON.parse(raw);
47
+ if (parsed === null || typeof parsed !== "object")
48
+ return {};
49
+ // Validate shape — anything malformed gets treated as empty so a
50
+ // hand-edited or corrupted file doesn't crash the bot.
51
+ const out = {};
52
+ for (const [k, v] of Object.entries(parsed)) {
53
+ if (typeof v === "string")
54
+ out[k] = v;
55
+ }
56
+ return out;
57
+ }
58
+ catch {
59
+ return {};
60
+ }
61
+ }
62
+ async function writeCache(map) {
63
+ const file = cacheFilePath();
64
+ try {
65
+ await fs.mkdir(path.dirname(file), { recursive: true });
66
+ await fs.writeFile(file, JSON.stringify(map, null, 2), "utf8");
67
+ }
68
+ catch (err) {
69
+ // Cache is a perf hint, not a correctness boundary. Log and move on.
70
+ console.error(`[universal-bot] prewarm cache write failed (non-fatal): ${err instanceof Error ? err.message : String(err)}`);
71
+ }
72
+ }
73
+ // Was this domain successfully prewarmed within the TTL window?
74
+ // `domain` should be a URL origin like "https://www.postmark.com".
75
+ export async function wasRecentlyPrewarmed(domain, ttlMs = DEFAULT_TTL_MS) {
76
+ const map = await readCache();
77
+ const ts = map[domain];
78
+ if (ts === undefined)
79
+ return false;
80
+ const parsed = Date.parse(ts);
81
+ if (Number.isNaN(parsed))
82
+ return false;
83
+ return Date.now() - parsed < ttlMs;
84
+ }
85
+ // Record a successful prewarm for this domain.
86
+ export async function recordPrewarmSuccess(domain) {
87
+ const map = await readCache();
88
+ map[domain] = new Date().toISOString();
89
+ await writeCache(map);
90
+ }
91
+ //# sourceMappingURL=prewarm-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prewarm-cache.js","sourceRoot":"","sources":["../../src/bot/prewarm-cache.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  import { type AgentTarget } from "./agents.js";
2
- import { type AsnInfo } from "@trusty-squire/universal-bot";
2
+ import { type AsnInfo } from "../bot/index.js";
3
3
  type Argv = {
4
4
  command: string;
5
5
  target?: AgentTarget;
6
6
  apiBase: string;
7
7
  withPair: boolean;
8
+ proxyUrl?: string;
8
9
  };
9
10
  declare function parseArgs(argv: string[]): Argv;
10
11
  declare function resolveServerLaunch(): {
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/install/cli.ts"],"names":[],"mappings":"AAyBA,OAAO,EAAiC,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAKvE,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,iBAAS,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAmBvC;AAWD,iBAAS,mBAAmB,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAMlE;AAED,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoB1D;AAED,iBAAe,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAgFhD;AAED,iBAAe,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAc7C;AAyDD,iBAAe,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAIrC;AAiBD,UAAU,WAAW;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,iBAAe,YAAY,CACzB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,gBAAgB,GAAE,MAAM,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,EAC3E,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAoB7B;AAKD,iBAAS,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAyB3C;AAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,CAAC"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/install/cli.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAiC,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAK1D,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAIlB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,iBAAS,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAuBvC;AAWD,iBAAS,mBAAmB,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAMlE;AAED,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoB1D;AAED,iBAAe,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CA0FhD;AAED,iBAAe,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAc7C;AAyDD,iBAAe,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAIrC;AAiBD,UAAU,WAAW;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,iBAAe,YAAY,CACzB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,gBAAgB,GAAE,MAAM,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,EAC3E,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAoB7B;AAKD,iBAAS,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAyB3C;AAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,CAAC"}
@@ -15,6 +15,8 @@
15
15
  // --target=<agent> skip auto-detection
16
16
  // --api-base=<url> override the API base URL
17
17
  // --pair run pairing as part of install (Tier 1 from minute 1)
18
+ // --proxy-url=<url> bake a residential proxy into the MCP config's env
19
+ // (UNIVERSAL_BOT_PROXY_URL) — set once, never hand-edit
18
20
  //
19
21
  // Pure module — `runCli()` is invoked by bin.ts. No shebang, no
20
22
  // entrypoint guard, no top-level execution.
@@ -23,7 +25,7 @@ import { fileURLToPath } from "node:url";
23
25
  import { pairInitiate, pairPoll, issueMachineToken } from "../api-client.js";
24
26
  import { openSessionStorage } from "../session.js";
25
27
  import { AGENTS, detectInstalledAgents } from "./agents.js";
26
- import { detectAsn } from "@trusty-squire/universal-bot";
28
+ import { detectAsn } from "../bot/index.js";
27
29
  import { VERSION } from "../version.js";
28
30
  const DEFAULT_API_BASE = process.env.TRUSTY_SQUIRE_API_BASE ?? "https://trusty-squire-api.fly.dev";
29
31
  function parseArgs(argv) {
@@ -32,6 +34,7 @@ function parseArgs(argv) {
32
34
  let target;
33
35
  let apiBase = DEFAULT_API_BASE;
34
36
  let withPair = false;
37
+ let proxyUrl;
35
38
  for (const arg of argv) {
36
39
  if (arg.startsWith("--target=")) {
37
40
  const t = arg.slice("--target=".length);
@@ -41,13 +44,19 @@ function parseArgs(argv) {
41
44
  else if (arg.startsWith("--api-base=")) {
42
45
  apiBase = arg.slice("--api-base=".length);
43
46
  }
47
+ else if (arg.startsWith("--proxy-url=")) {
48
+ proxyUrl = arg.slice("--proxy-url=".length);
49
+ }
44
50
  else if (arg === "--pair") {
45
51
  withPair = true;
46
52
  }
47
53
  }
48
- return target !== undefined
49
- ? { command, target, apiBase, withPair }
50
- : { command, apiBase, withPair };
54
+ const args = { command, apiBase, withPair };
55
+ if (target !== undefined)
56
+ args.target = target;
57
+ if (proxyUrl !== undefined && proxyUrl.length > 0)
58
+ args.proxyUrl = proxyUrl;
59
+ return args;
51
60
  }
52
61
  function isAgentTarget(s) {
53
62
  return s === "claude-code" || s === "cursor" || s === "goose" || s === "cline" || s === "continue";
@@ -139,15 +148,25 @@ async function install(args) {
139
148
  // from session storage (keychain / file), which keeps it out of any
140
149
  // child-process listing or shell history.
141
150
  const launch = resolveServerLaunch();
151
+ const env = {
152
+ TRUSTY_SQUIRE_AGENT_IDENTITY: target,
153
+ UNIVERSAL_BOT_PREFER_CHEAP: "true",
154
+ };
155
+ // --proxy-url bakes the residential proxy into the config so the user
156
+ // never hand-edits env. The bot still gates it at runtime — only
157
+ // datacenter-class egress actually routes through it.
158
+ if (args.proxyUrl !== undefined) {
159
+ env.UNIVERSAL_BOT_PROXY_URL = args.proxyUrl;
160
+ }
142
161
  await agent.writeConfig({
143
162
  command: launch.command,
144
163
  args: launch.args,
145
- env: {
146
- TRUSTY_SQUIRE_AGENT_IDENTITY: target,
147
- UNIVERSAL_BOT_PREFER_CHEAP: "true",
148
- },
164
+ env,
149
165
  });
150
166
  console.warn(`✓ Wrote ${agent.display_name} MCP config at ${agent.config_path()}.`);
167
+ if (args.proxyUrl !== undefined) {
168
+ console.warn(` Residential proxy baked in: ${args.proxyUrl}`);
169
+ }
151
170
  console.warn(``);
152
171
  console.warn(`You're done. Restart ${agent.display_name} to pick up the new tools.`);
153
172
  console.warn(``);
@@ -224,7 +243,7 @@ function printHelp() {
224
243
  console.warn(`mcp — install Trusty Squire MCP into a coding agent`);
225
244
  console.warn(``);
226
245
  console.warn(`Commands:`);
227
- console.warn(` install [--target=<agent>] [--api-base=<url>] [--pair]`);
246
+ console.warn(` install [--target=<agent>] [--api-base=<url>] [--pair] [--proxy-url=<url>]`);
228
247
  console.warn(` pair [--target=<agent>] [--api-base=<url>]`);
229
248
  console.warn(` logout`);
230
249
  console.warn(``);
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/install/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/install/cli.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@
10
10
  // the API returns a structured quota_exceeded response and we tell Claude
11
11
  // to surface a pairing CTA.
12
12
  import { z } from "zod";
13
- import { UniversalSignupBot, InboxClient, ProxyLLMClient, detectAsn, } from "@trusty-squire/universal-bot";
13
+ import { UniversalSignupBot, InboxClient, ProxyLLMClient, detectAsn, } from "../bot/index.js";
14
14
  import { openSessionStorage } from "../session.js";
15
15
  export const provisionAnyInputSchema = z.object({
16
16
  service: z.string().describe("Name of the service to sign up for (e.g., 'Postmark', 'Mailgun')"),
@@ -1 +1 @@
1
- {"version":3,"file":"provision-any.js","sourceRoot":"","sources":["../../src/tools/provision-any.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provision-any.js","sourceRoot":"","sources":["../../src/tools/provision-any.ts"],"names":[],"mappings":"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"}
@@ -6,8 +6,8 @@ declare const inputSchema: z.ZodObject<{
6
6
  timeout_seconds: z.ZodDefault<z.ZodNumber>;
7
7
  poll_interval_seconds: z.ZodDefault<z.ZodNumber>;
8
8
  }, "strip", z.ZodTypeAny, {
9
- run_id: string;
10
9
  timeout_seconds: number;
10
+ run_id: string;
11
11
  poll_interval_seconds: number;
12
12
  }, {
13
13
  run_id: string;
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@trusty-squire/mcp",
3
- "version": "0.1.5",
3
+ "version": "0.1.7",
4
4
  "type": "module",
5
- "description": "Local MCP server vibe coding agents install. Thin relay to the Trusty Squire API.",
5
+ "description": "Local MCP server vibe coding agents install. Thin relay to the Trusty Squire API, with the bundled universal signup bot.",
6
6
  "main": "./dist/server.js",
7
7
  "bin": {
8
8
  "mcp": "./dist/bin.js"
@@ -17,20 +17,23 @@
17
17
  "node": ">=20"
18
18
  },
19
19
  "dependencies": {
20
+ "@anthropic-ai/sdk": "^0.32.1",
20
21
  "@modelcontextprotocol/sdk": "^1.0.4",
21
22
  "open": "^10.1.0",
23
+ "playwright": "^1.49.0",
22
24
  "yaml": "^2.6.1",
23
- "zod": "^3.23.8",
24
- "@trusty-squire/universal-bot": "0.1.1"
25
+ "zod": "^3.23.8"
25
26
  },
26
27
  "optionalDependencies": {
27
28
  "keytar": "^7.9.0"
28
29
  },
29
30
  "devDependencies": {
30
- "@vitest/coverage-v8": "^1.6.1",
31
+ "@types/node": "^22.10.2",
32
+ "@vitest/coverage-v8": "^2.1.8",
31
33
  "tsx": "^4.7.0",
32
- "typescript": "^5.3.3",
33
- "vitest": "^1.2.0"
34
+ "typescript": "^5.7.2",
35
+ "vitest": "^2.1.8",
36
+ "@trusty-squire/inbox": "0.1.0"
34
37
  },
35
38
  "scripts": {
36
39
  "build": "tsc -p tsconfig.build.json",