buildpartner 0.13.2 → 0.13.3-dev.20261012091502
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/dist/bin/cli.js +0 -0
- package/dist/src/mcp/server.d.ts +6 -3
- package/dist/src/mcp/server.js +136 -4
- package/dist/src/mcp/server.js.map +1 -1
- package/package.json +1 -1
- package/dist/src/commands/reset.d.ts +0 -1
- package/dist/src/commands/reset.js +0 -130
- package/dist/src/commands/reset.js.map +0 -1
- package/dist/src/commands/setup.d.ts +0 -1
- package/dist/src/commands/setup.js +0 -358
- package/dist/src/commands/setup.js.map +0 -1
- package/dist/src/constants.d.ts +0 -9
- package/dist/src/constants.js +0 -12
- package/dist/src/constants.js.map +0 -1
- package/dist/src/mcp/subscription-gate.d.ts +0 -19
- package/dist/src/mcp/subscription-gate.js +0 -69
- package/dist/src/mcp/subscription-gate.js.map +0 -1
- package/dist/src/store/quest-store.d.ts +0 -14
- package/dist/src/store/quest-store.js +0 -41
- package/dist/src/store/quest-store.js.map +0 -1
- package/dist/src/store/status-store.d.ts +0 -10
- package/dist/src/store/status-store.js +0 -99
- package/dist/src/store/status-store.js.map +0 -1
- package/dist/src/suggestions/rules.d.ts +0 -1
- package/dist/src/suggestions/rules.js +0 -2
- package/dist/src/suggestions/rules.js.map +0 -1
- package/dist/src/suggestions/video-links.d.ts +0 -1
- package/dist/src/suggestions/video-links.js +0 -2
- package/dist/src/suggestions/video-links.js.map +0 -1
package/dist/bin/cli.js
CHANGED
|
File without changes
|
package/dist/src/mcp/server.d.ts
CHANGED
|
@@ -5,10 +5,13 @@
|
|
|
5
5
|
* Each tool is a thin wrapper around a server API call. No local state or logic.
|
|
6
6
|
*
|
|
7
7
|
* Tools:
|
|
8
|
-
* get_expert_knowledge
|
|
9
|
-
*
|
|
8
|
+
* get_expert_knowledge - search expert frameworks with personalized context
|
|
9
|
+
* get_build - walk a build: the index, one build's orientation, one step
|
|
10
|
+
* get_founder_knowledge - search a team's founder/leadership knowledge base
|
|
10
11
|
* request_founder_knowledge - flag a missing topic to a team's leadership
|
|
11
|
-
* social_intel
|
|
12
|
+
* social_intel - public creator data on X, Instagram and YouTube
|
|
13
|
+
* feed_run - open and close one self-improving run (start, finish)
|
|
14
|
+
* publish_command_center - publish a member's Command Center layout
|
|
12
15
|
*/
|
|
13
16
|
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
14
17
|
export declare function createServer(): McpServer;
|
package/dist/src/mcp/server.js
CHANGED
|
@@ -5,10 +5,13 @@
|
|
|
5
5
|
* Each tool is a thin wrapper around a server API call. No local state or logic.
|
|
6
6
|
*
|
|
7
7
|
* Tools:
|
|
8
|
-
* get_expert_knowledge
|
|
9
|
-
*
|
|
8
|
+
* get_expert_knowledge - search expert frameworks with personalized context
|
|
9
|
+
* get_build - walk a build: the index, one build's orientation, one step
|
|
10
|
+
* get_founder_knowledge - search a team's founder/leadership knowledge base
|
|
10
11
|
* request_founder_knowledge - flag a missing topic to a team's leadership
|
|
11
|
-
* social_intel
|
|
12
|
+
* social_intel - public creator data on X, Instagram and YouTube
|
|
13
|
+
* feed_run - open and close one self-improving run (start, finish)
|
|
14
|
+
* publish_command_center - publish a member's Command Center layout
|
|
12
15
|
*/
|
|
13
16
|
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
14
17
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
@@ -93,6 +96,57 @@ async function handleFounderKnowledgeBlock(res) {
|
|
|
93
96
|
action: "Share this with the user: ask-founder is part of BuildPartner.ai team plans; they should contact their team lead about access.",
|
|
94
97
|
}));
|
|
95
98
|
}
|
|
99
|
+
/**
|
|
100
|
+
* Handle a 403 on publish_command_center. Same situation as
|
|
101
|
+
* get_founder_knowledge: the tool ships on every install and the server 403 is
|
|
102
|
+
* the real gate, so a caller who hits this is not in the Executive AI Program.
|
|
103
|
+
* The program is sold by application, not as a plan on the dashboard, so
|
|
104
|
+
* handleSubscriptionBlock's action would send them to the wrong place. Say
|
|
105
|
+
* what the Command Center is part of instead. Same response shape, so skills
|
|
106
|
+
* can still branch on limit_reached uniformly.
|
|
107
|
+
*/
|
|
108
|
+
async function handleCommandCenterBlock(res) {
|
|
109
|
+
let message = "The Command Center is part of the Executive AI Program.";
|
|
110
|
+
let programUrl = "";
|
|
111
|
+
try {
|
|
112
|
+
const body = await res.json();
|
|
113
|
+
if (typeof body?.error === "string" && body.error)
|
|
114
|
+
message = body.error;
|
|
115
|
+
if (typeof body?.program_url === "string")
|
|
116
|
+
programUrl = body.program_url;
|
|
117
|
+
}
|
|
118
|
+
catch {
|
|
119
|
+
// not JSON: keep the message above
|
|
120
|
+
}
|
|
121
|
+
return textResponse(JSON.stringify({
|
|
122
|
+
limit_reached: true,
|
|
123
|
+
message,
|
|
124
|
+
action: `Share this with the user: the Command Center is part of the BuildPartner.ai Executive AI Program, so nothing was published.${programUrl ? ` They can read about the program at ${programUrl}.` : ""}`,
|
|
125
|
+
}));
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* The server's own words for a failed call ({ error }), or the generic line
|
|
129
|
+
* for that status when it sent none. For the statuses where its words are the
|
|
130
|
+
* useful part: a payload it would not take, a daily cap.
|
|
131
|
+
*/
|
|
132
|
+
async function serverError(res) {
|
|
133
|
+
try {
|
|
134
|
+
const body = await res.json();
|
|
135
|
+
if (typeof body?.error === "string" && body.error)
|
|
136
|
+
return body.error;
|
|
137
|
+
}
|
|
138
|
+
catch {
|
|
139
|
+
// not JSON: fall back to friendlyError below
|
|
140
|
+
}
|
|
141
|
+
return friendlyError(res.status);
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Timeout for the calls that write: opening or closing an improve-system run,
|
|
145
|
+
* and publishing a Command Center. Each is several database round trips, and
|
|
146
|
+
* start counts the run when it opens, so giving up at the default 5s could
|
|
147
|
+
* report "could not reach" about a run the server already opened.
|
|
148
|
+
*/
|
|
149
|
+
const WRITE_TIMEOUT_MS = 20000;
|
|
96
150
|
export function createServer() {
|
|
97
151
|
// Server instructions land in the model's system prompt even while the tools
|
|
98
152
|
// themselves are deferred (names only until searched), so this is what
|
|
@@ -232,6 +286,10 @@ export function createServer() {
|
|
|
232
286
|
.max(50)
|
|
233
287
|
.optional()
|
|
234
288
|
.describe("creator_posts, user_replies, comments, search: how many items to fetch. Leave it off for one page (~20). Only set it when the user wants more, e.g. 'their last 50 tweets': each extra page is another lookup against the daily limit."),
|
|
289
|
+
format: z
|
|
290
|
+
.enum(["videos", "shorts"])
|
|
291
|
+
.optional()
|
|
292
|
+
.describe("YouTube creator_posts only: 'videos' for long-form only, 'shorts' for Shorts only. Leave it off for videos, falling back to Shorts when the channel has no videos. Set it when the user asks for one kind."),
|
|
235
293
|
since: z
|
|
236
294
|
.string()
|
|
237
295
|
.optional()
|
|
@@ -240,7 +298,7 @@ export function createServer() {
|
|
|
240
298
|
.union([z.string(), z.number()])
|
|
241
299
|
.optional()
|
|
242
300
|
.describe("Pass the previous response's `next` to continue. Transcripts come in pages (later pages are free); lists continue with the next page (each costs one lookup). `next: null` means the end."),
|
|
243
|
-
}, async ({ action, platform, target, sort, limit, since, cursor }) => {
|
|
301
|
+
}, async ({ action, platform, target, sort, limit, format, since, cursor }) => {
|
|
244
302
|
const authErr = requireLocalAuth();
|
|
245
303
|
if (authErr)
|
|
246
304
|
return authErr;
|
|
@@ -249,6 +307,8 @@ export function createServer() {
|
|
|
249
307
|
params.set("sort", sort);
|
|
250
308
|
if (limit !== undefined)
|
|
251
309
|
params.set("limit", String(limit));
|
|
310
|
+
if (format)
|
|
311
|
+
params.set("format", format);
|
|
252
312
|
if (since)
|
|
253
313
|
params.set("since", since);
|
|
254
314
|
if (cursor !== undefined)
|
|
@@ -272,6 +332,78 @@ export function createServer() {
|
|
|
272
332
|
// Compact on purpose, like get_build: the route already keeps lists under 40KB.
|
|
273
333
|
return textResponse(JSON.stringify(await res.json()));
|
|
274
334
|
});
|
|
335
|
+
server.tool("feed_run", "Open and close one run of the BuildPartner.ai self-improving system (used by the improve-system skill). action 'start' returns run_id, the decisions the user made on their dashboard that are not applied on this machine yet, their rules, recently rejected suggestions, earlier fixes to re-check, max_cards, detail_mode, and command_center (true when they have a published Command Center). action 'finish' closes that run with what was done and the new suggestion cards, and is safe to call again with the same payload. If the result has needs_setup, sharing is not turned on yet: open setup_url for the user and stop. Send short summaries only, never file contents or session text.", {
|
|
336
|
+
action: z.enum(["start", "finish"]).describe("start: open a run before doing any work. finish: close it once the work is done."),
|
|
337
|
+
mode: z
|
|
338
|
+
.enum(["loop", "apply"])
|
|
339
|
+
.optional()
|
|
340
|
+
.describe("start only. 'loop' (default): a full run that can add suggestion cards. 'apply': only carry out decisions the user already made, with no scan and no new cards, and it is not counted as a run."),
|
|
341
|
+
payload: z
|
|
342
|
+
.record(z.string(), z.unknown())
|
|
343
|
+
.optional()
|
|
344
|
+
.describe("finish only. { run_id (from start), applied: [ids of cards carried out], fixes: { count, breakdown: { <kind>: <count> } }, skipped: <suggestions dropped below the cap>, sources: [{ key, label, new_items }], checked: [{ card_id, recurred }], cards: [{ type, target, title, reason, details: { what, why, touches, after }, evidence: { occurrences, dates, files_touched, scope }, options }] }. Cards in rank order, highest impact first."),
|
|
345
|
+
}, async ({ action, mode, payload }) => {
|
|
346
|
+
const authErr = requireLocalAuth();
|
|
347
|
+
if (authErr)
|
|
348
|
+
return authErr;
|
|
349
|
+
// start takes { mode }; finish takes the payload as the whole body. A
|
|
350
|
+
// missing payload goes up as {} so the server names what it needs.
|
|
351
|
+
const res = await apiFetch(`/api/buildpartner/feeds/${action}`, { method: "POST", body: JSON.stringify(action === "start" ? { mode } : payload ?? {}) }, WRITE_TIMEOUT_MS);
|
|
352
|
+
if (!res)
|
|
353
|
+
return textResponse(JSON.stringify({ error: "Could not reach BuildPartner.ai. Check your internet connection." }));
|
|
354
|
+
if (res.status === 403)
|
|
355
|
+
return handleSubscriptionBlock(res);
|
|
356
|
+
// 409 { needs_setup, setup_url }: sharing is not on yet. Passed through
|
|
357
|
+
// unchanged so the skill can open setup_url and stop.
|
|
358
|
+
if (res.status === 409)
|
|
359
|
+
return textResponse(await res.text());
|
|
360
|
+
if (res.status === 404) {
|
|
361
|
+
const message = await serverError(res);
|
|
362
|
+
// A token that no longer matches an account ("User not found") gets
|
|
363
|
+
// the reconnect message, on start and finish alike.
|
|
364
|
+
if (message === "User not found")
|
|
365
|
+
return textResponse(JSON.stringify({ error: friendlyError(404) }));
|
|
366
|
+
// Any other 404 on start is the feature flag: the route is hidden from
|
|
367
|
+
// accounts it isn't rolled out to yet.
|
|
368
|
+
if (action === "start") {
|
|
369
|
+
return textResponse(JSON.stringify({ error: "The self-improving system isn't available on this account yet." }));
|
|
370
|
+
}
|
|
371
|
+
// On finish it is a run_id the server does not know.
|
|
372
|
+
return textResponse(JSON.stringify({ error: message }));
|
|
373
|
+
}
|
|
374
|
+
// 400 (a payload it would not take) says what was wrong.
|
|
375
|
+
if (res.status === 400)
|
|
376
|
+
return textResponse(JSON.stringify({ error: await serverError(res) }));
|
|
377
|
+
if (!res.ok)
|
|
378
|
+
return textResponse(JSON.stringify({ error: friendlyError(res.status) }));
|
|
379
|
+
// Compact on purpose, like get_build.
|
|
380
|
+
return textResponse(JSON.stringify(await res.json()));
|
|
381
|
+
});
|
|
382
|
+
server.tool("publish_command_center", "Publish the user's Command Center to their BuildPartner.ai dashboard (Executive AI Program only). Sends the shape of their system and nothing else: departments, skills (label, one-line description, the command that runs it, its schedule), goals with their current numbers, and a few one-line facts about the business (what it sells, who it serves, its niche, website, social handles, who it watches). Never file contents. Returns the page url plus the skills added and removed since the last publish. If the result has needs_setup, sharing is not turned on yet: open setup_url for the user and stop.", {
|
|
383
|
+
layout: z
|
|
384
|
+
.record(z.string(), z.unknown())
|
|
385
|
+
.describe("{ timezone: IANA zone the schedule times are in, company, departments: [{ id, label }], skills: [{ id, label, description, department: a department id or null, command: '/<id>' plus any arguments, input: { label } or null, schedule: { label, cadence: hourly | daily | weekdays | weekly | monthly, time: 'HH:MM' (24 hour) or null, weekday: 0-6 with 0 = Sunday, weekly only } or null }], goals: [{ id, label, target, unit, deadline: 'YYYY-MM-DD' or null, value: the current number or null }], profile: { offer, audience, niche, website, handles: [{ platform: x | instagram | youtube, handle }], watching: [a name or an @handle] } or null }. Needs at least one skill."),
|
|
386
|
+
}, async ({ layout }) => {
|
|
387
|
+
const authErr = requireLocalAuth();
|
|
388
|
+
if (authErr)
|
|
389
|
+
return authErr;
|
|
390
|
+
const res = await apiFetch("/api/buildpartner/command-center/layout", { method: "POST", body: JSON.stringify({ layout }) }, WRITE_TIMEOUT_MS);
|
|
391
|
+
if (!res)
|
|
392
|
+
return textResponse(JSON.stringify({ error: "Could not reach BuildPartner.ai. Check your internet connection." }));
|
|
393
|
+
if (res.status === 403)
|
|
394
|
+
return handleCommandCenterBlock(res);
|
|
395
|
+
// 409 { needs_setup, setup_url }: sharing is not on yet. Passed through
|
|
396
|
+
// unchanged so the skill can open setup_url and stop.
|
|
397
|
+
if (res.status === 409)
|
|
398
|
+
return textResponse(await res.text());
|
|
399
|
+
// 400 (no usable skill in the layout) and 429 (daily publish cap) say what was wrong.
|
|
400
|
+
if (res.status === 400 || res.status === 429)
|
|
401
|
+
return textResponse(JSON.stringify({ error: await serverError(res) }));
|
|
402
|
+
if (!res.ok)
|
|
403
|
+
return textResponse(JSON.stringify({ error: friendlyError(res.status) }));
|
|
404
|
+
// Compact on purpose, like get_build.
|
|
405
|
+
return textResponse(JSON.stringify(await res.json()));
|
|
406
|
+
});
|
|
275
407
|
return server;
|
|
276
408
|
}
|
|
277
409
|
export async function startServer() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/mcp/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/mcp/server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function reset(): Promise<void>;
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
import { existsSync, readFileSync, writeFileSync, rmSync, readdirSync } from "fs";
|
|
2
|
-
import { join } from "path";
|
|
3
|
-
import { homedir } from "os";
|
|
4
|
-
import { getBuildPartnerDir } from "../store/local-store.js";
|
|
5
|
-
const CLAUDE_JSON_PATH = join(homedir(), ".claude.json");
|
|
6
|
-
const LEGACY_MCP_PATH = join(homedir(), ".claude", "mcp_servers.json");
|
|
7
|
-
const SETTINGS_PATH = join(homedir(), ".claude", "settings.json");
|
|
8
|
-
const GLOBAL_SKILLS_DIR = join(homedir(), ".claude", "skills");
|
|
9
|
-
const BUILDPARTNER_HOOK_COMMAND = "npx buildpartner log-session";
|
|
10
|
-
export async function reset() {
|
|
11
|
-
console.log("\n BuildPartner Full Reset\n");
|
|
12
|
-
const removed = [];
|
|
13
|
-
// 1. Remove ~/.buildpartner/ directory
|
|
14
|
-
const bpDir = getBuildPartnerDir();
|
|
15
|
-
if (existsSync(bpDir)) {
|
|
16
|
-
rmSync(bpDir, { recursive: true, force: true });
|
|
17
|
-
removed.push("~/.buildpartner/ (all local data)");
|
|
18
|
-
}
|
|
19
|
-
// 2. Remove bp-* and mp-* (legacy) skill directories from ~/.claude/skills/
|
|
20
|
-
if (existsSync(GLOBAL_SKILLS_DIR)) {
|
|
21
|
-
try {
|
|
22
|
-
const entries = readdirSync(GLOBAL_SKILLS_DIR);
|
|
23
|
-
const bpSkills = entries.filter((e) => e.startsWith("bp-") || e.startsWith("mp-"));
|
|
24
|
-
for (const skill of bpSkills) {
|
|
25
|
-
rmSync(join(GLOBAL_SKILLS_DIR, skill), { recursive: true, force: true });
|
|
26
|
-
}
|
|
27
|
-
if (bpSkills.length > 0) {
|
|
28
|
-
removed.push(`${bpSkills.length} skills from ~/.claude/skills/`);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
catch { }
|
|
32
|
-
}
|
|
33
|
-
// 3. Remove MCP server from ~/.claude.json (buildpartner + legacy myplayer)
|
|
34
|
-
if (existsSync(CLAUDE_JSON_PATH)) {
|
|
35
|
-
try {
|
|
36
|
-
const config = JSON.parse(readFileSync(CLAUDE_JSON_PATH, "utf-8"));
|
|
37
|
-
let changed = false;
|
|
38
|
-
for (const key of ["buildpartner", "myplayer"]) {
|
|
39
|
-
if (config.mcpServers?.[key]) {
|
|
40
|
-
delete config.mcpServers[key];
|
|
41
|
-
changed = true;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
if (changed) {
|
|
45
|
-
writeFileSync(CLAUDE_JSON_PATH, JSON.stringify(config, null, 2) + "\n");
|
|
46
|
-
removed.push("MCP server from ~/.claude.json");
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
catch { }
|
|
50
|
-
}
|
|
51
|
-
// 4. Remove MCP server from legacy path (buildpartner + legacy myplayer)
|
|
52
|
-
if (existsSync(LEGACY_MCP_PATH)) {
|
|
53
|
-
try {
|
|
54
|
-
const config = JSON.parse(readFileSync(LEGACY_MCP_PATH, "utf-8"));
|
|
55
|
-
let changed = false;
|
|
56
|
-
for (const key of ["buildpartner", "myplayer"]) {
|
|
57
|
-
if (config.mcpServers?.[key]) {
|
|
58
|
-
delete config.mcpServers[key];
|
|
59
|
-
changed = true;
|
|
60
|
-
}
|
|
61
|
-
if (config[key]) {
|
|
62
|
-
delete config[key];
|
|
63
|
-
changed = true;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
if (changed) {
|
|
67
|
-
writeFileSync(LEGACY_MCP_PATH, JSON.stringify(config, null, 2) + "\n");
|
|
68
|
-
removed.push("MCP server from ~/.claude/mcp_servers.json");
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
catch { }
|
|
72
|
-
}
|
|
73
|
-
// 5. Remove hook and permission from ~/.claude/settings.json
|
|
74
|
-
if (existsSync(SETTINGS_PATH)) {
|
|
75
|
-
try {
|
|
76
|
-
const settings = JSON.parse(readFileSync(SETTINGS_PATH, "utf-8"));
|
|
77
|
-
let changed = false;
|
|
78
|
-
// Remove Stop hook
|
|
79
|
-
if (Array.isArray(settings?.hooks?.Stop)) {
|
|
80
|
-
const before = settings.hooks.Stop.length;
|
|
81
|
-
settings.hooks.Stop = settings.hooks.Stop.filter((entry) => {
|
|
82
|
-
if (typeof entry !== "object" || entry === null)
|
|
83
|
-
return true;
|
|
84
|
-
const innerHooks = entry.hooks;
|
|
85
|
-
if (!Array.isArray(innerHooks))
|
|
86
|
-
return true;
|
|
87
|
-
return !innerHooks.some((h) => typeof h === "object" &&
|
|
88
|
-
h !== null &&
|
|
89
|
-
h.command === BUILDPARTNER_HOOK_COMMAND);
|
|
90
|
-
});
|
|
91
|
-
if (settings.hooks.Stop.length < before) {
|
|
92
|
-
changed = true;
|
|
93
|
-
removed.push("Stop hook from ~/.claude/settings.json");
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
// Remove permissions (buildpartner + legacy myplayer)
|
|
97
|
-
if (Array.isArray(settings?.permissions?.allow)) {
|
|
98
|
-
const allow = settings.permissions.allow;
|
|
99
|
-
const toRemove = ["mcp__buildpartner__*", "mcp__myplayer__*"];
|
|
100
|
-
let removedPerms = false;
|
|
101
|
-
for (const perm of toRemove) {
|
|
102
|
-
const idx = allow.indexOf(perm);
|
|
103
|
-
if (idx !== -1) {
|
|
104
|
-
allow.splice(idx, 1);
|
|
105
|
-
removedPerms = true;
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
if (removedPerms) {
|
|
109
|
-
changed = true;
|
|
110
|
-
removed.push("MCP permissions from ~/.claude/settings.json");
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
if (changed) {
|
|
114
|
-
writeFileSync(SETTINGS_PATH, JSON.stringify(settings, null, 2) + "\n");
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
catch { }
|
|
118
|
-
}
|
|
119
|
-
if (removed.length === 0) {
|
|
120
|
-
console.log(" Nothing to reset. BuildPartner is not installed.\n");
|
|
121
|
-
}
|
|
122
|
-
else {
|
|
123
|
-
console.log(" Removed:");
|
|
124
|
-
for (const item of removed) {
|
|
125
|
-
console.log(` - ${item}`);
|
|
126
|
-
}
|
|
127
|
-
console.log("\n Run `claude plugin marketplace add austinmarchese/buildpartner` to reinstall.\n");
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
//# sourceMappingURL=reset.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reset.js","sourceRoot":"","sources":["../../../src/commands/reset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC;AAClF,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,cAAc,CAAC,CAAC;AACzD,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;AACvE,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;AAClE,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AAC/D,MAAM,yBAAyB,GAAG,8BAA8B,CAAC;AAEjE,MAAM,CAAC,KAAK,UAAU,KAAK;IACzB,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAE7C,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,uCAAuC;IACvC,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;IACnC,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;IACpD,CAAC;IAED,4EAA4E;IAC5E,IAAI,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,WAAW,CAAC,iBAAiB,CAAC,CAAC;YAC/C,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;YACnF,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;gBAC7B,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3E,CAAC;YACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,OAAO,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,gCAAgC,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IAED,4EAA4E;IAC5E,IAAI,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC;YACnE,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,KAAK,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,EAAE,CAAC;gBAC/C,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC7B,OAAO,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;oBAC9B,OAAO,GAAG,IAAI,CAAC;gBACjB,CAAC;YACH,CAAC;YACD,IAAI,OAAO,EAAE,CAAC;gBACZ,aAAa,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;gBACxE,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IAED,yEAAyE;IACzE,IAAI,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;YAClE,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,KAAK,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,EAAE,CAAC;gBAC/C,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC7B,OAAO,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;oBAC9B,OAAO,GAAG,IAAI,CAAC;gBACjB,CAAC;gBACD,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;oBAChB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;oBACnB,OAAO,GAAG,IAAI,CAAC;gBACjB,CAAC;YACH,CAAC;YACD,IAAI,OAAO,EAAE,CAAC;gBACZ,aAAa,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;gBACvE,OAAO,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IAED,6DAA6D;IAC7D,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC;YAClE,IAAI,OAAO,GAAG,KAAK,CAAC;YAEpB,mBAAmB;YACnB,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;gBACzC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC1C,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAc,EAAE,EAAE;oBAClE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;wBAAE,OAAO,IAAI,CAAC;oBAC7D,MAAM,UAAU,GAAI,KAAiC,CAAC,KAAK,CAAC;oBAC5D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;wBAAE,OAAO,IAAI,CAAC;oBAC5C,OAAO,CAAC,UAAU,CAAC,IAAI,CACrB,CAAC,CAAU,EAAE,EAAE,CACb,OAAO,CAAC,KAAK,QAAQ;wBACrB,CAAC,KAAK,IAAI;wBACT,CAA6B,CAAC,OAAO,KAAK,yBAAyB,CACvE,CAAC;gBACJ,CAAC,CAAC,CAAC;gBACH,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC;oBACxC,OAAO,GAAG,IAAI,CAAC;oBACf,OAAO,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;gBACzD,CAAC;YACH,CAAC;YAED,sDAAsD;YACtD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;gBAChD,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,CAAC,KAAiB,CAAC;gBACrD,MAAM,QAAQ,GAAG,CAAC,sBAAsB,EAAE,kBAAkB,CAAC,CAAC;gBAC9D,IAAI,YAAY,GAAG,KAAK,CAAC;gBACzB,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;oBAC5B,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBAChC,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;wBACf,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;wBACrB,YAAY,GAAG,IAAI,CAAC;oBACtB,CAAC;gBACH,CAAC;gBACD,IAAI,YAAY,EAAE,CAAC;oBACjB,OAAO,GAAG,IAAI,CAAC;oBACf,OAAO,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;YAED,IAAI,OAAO,EAAE,CAAC;gBACZ,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;IACtE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1B,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,qFAAqF,CAAC,CAAC;IACrG,CAAC;AACH,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function setup(): Promise<void>;
|
|
@@ -1,358 +0,0 @@
|
|
|
1
|
-
import { existsSync } from "fs";
|
|
2
|
-
import { join } from "path";
|
|
3
|
-
import { homedir, platform } from "os";
|
|
4
|
-
import { execSync, spawn } from "child_process";
|
|
5
|
-
import chalk from "chalk";
|
|
6
|
-
import ora from "ora";
|
|
7
|
-
import { input } from "@inquirer/prompts";
|
|
8
|
-
import { scanAllSessions } from "../readers/session-sync.js";
|
|
9
|
-
import { writeAuth, readAuth, } from "../store/local-store.js";
|
|
10
|
-
import { installMcp } from "../installer/mcp-installer.js";
|
|
11
|
-
import { installSkills } from "../installer/skill-installer.js";
|
|
12
|
-
import { installHook, installPermissions } from "../installer/hook-installer.js";
|
|
13
|
-
import { API_BASE } from "../api-client.js";
|
|
14
|
-
import { skillCommand } from "../constants.js";
|
|
15
|
-
const CLAUDE_DIR = join(homedir(), ".claude");
|
|
16
|
-
const orange = chalk.hex("#E47025");
|
|
17
|
-
const isInteractive = process.stdin.isTTY === true;
|
|
18
|
-
function detectEnvironment() {
|
|
19
|
-
// Check for VS Code
|
|
20
|
-
if (process.env.TERM_PROGRAM === "vscode" || process.env.VSCODE_PID)
|
|
21
|
-
return "vscode";
|
|
22
|
-
// Check for Claude Desktop/Cowork (non-TTY with Claude-specific env)
|
|
23
|
-
if (!process.stdin.isTTY && (process.env.CLAUDE_CODE || process.env.CLAUDE_DESKTOP))
|
|
24
|
-
return "cowork";
|
|
25
|
-
// Non-interactive but no specific env detected
|
|
26
|
-
if (!process.stdin.isTTY)
|
|
27
|
-
return "desktop";
|
|
28
|
-
// Standard terminal
|
|
29
|
-
return "terminal";
|
|
30
|
-
}
|
|
31
|
-
export async function setup() {
|
|
32
|
-
const token = getTokenArg();
|
|
33
|
-
// Header (only show if not coming from install.sh, which prints its own)
|
|
34
|
-
const fromInstallScript = process.env.BUILDPARTNER_INSTALL === "1";
|
|
35
|
-
if (!fromInstallScript) {
|
|
36
|
-
console.log();
|
|
37
|
-
console.log(orange(" ╭─────────────────────────────────────────╮\n" +
|
|
38
|
-
" │ BuildPartner - Your AI Build Partner │\n" +
|
|
39
|
-
" ╰─────────────────────────────────────────╯"));
|
|
40
|
-
}
|
|
41
|
-
console.log();
|
|
42
|
-
// Check Claude Code
|
|
43
|
-
if (!existsSync(CLAUDE_DIR)) {
|
|
44
|
-
console.log(chalk.red(" ✗ Claude Code not found (~/.claude/ missing)"));
|
|
45
|
-
console.log(" Install Claude Code first: https://claude.ai/code");
|
|
46
|
-
process.exit(1);
|
|
47
|
-
}
|
|
48
|
-
console.log();
|
|
49
|
-
// Step 1: Create or verify account
|
|
50
|
-
let email;
|
|
51
|
-
let username;
|
|
52
|
-
let authToken = `sk_${generateId()}`;
|
|
53
|
-
let serverLinked = false;
|
|
54
|
-
// Check for existing account first
|
|
55
|
-
const existingAuth = readAuth();
|
|
56
|
-
if (existingAuth?.token && existingAuth?.email) {
|
|
57
|
-
let verified = false;
|
|
58
|
-
try {
|
|
59
|
-
const verifyRes = await fetch(`${API_BASE}/api/buildpartner/verify-token`, {
|
|
60
|
-
headers: { Authorization: `Bearer ${existingAuth.token}` },
|
|
61
|
-
signal: AbortSignal.timeout(5000),
|
|
62
|
-
});
|
|
63
|
-
verified = verifyRes.ok;
|
|
64
|
-
}
|
|
65
|
-
catch {
|
|
66
|
-
// Verification failed, fall through to signup
|
|
67
|
-
}
|
|
68
|
-
if (verified) {
|
|
69
|
-
console.log(chalk.bold(" [1/3] Account"));
|
|
70
|
-
console.log();
|
|
71
|
-
console.log(chalk.green(` ✓ Logged in as ${existingAuth.email}`));
|
|
72
|
-
console.log();
|
|
73
|
-
email = existingAuth.email;
|
|
74
|
-
username = existingAuth.username;
|
|
75
|
-
authToken = existingAuth.token;
|
|
76
|
-
serverLinked = true;
|
|
77
|
-
}
|
|
78
|
-
else {
|
|
79
|
-
// Token invalid, proceed with fresh signup
|
|
80
|
-
const account = await createAccount(token, authToken);
|
|
81
|
-
email = account.email;
|
|
82
|
-
username = account.username;
|
|
83
|
-
authToken = account.authToken;
|
|
84
|
-
serverLinked = account.serverLinked;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
// No existing auth, fresh signup
|
|
89
|
-
const account = await createAccount(token, authToken);
|
|
90
|
-
email = account.email;
|
|
91
|
-
username = account.username;
|
|
92
|
-
authToken = account.authToken;
|
|
93
|
-
serverLinked = account.serverLinked;
|
|
94
|
-
}
|
|
95
|
-
writeAuth({
|
|
96
|
-
email,
|
|
97
|
-
username,
|
|
98
|
-
token: authToken,
|
|
99
|
-
profile_url: `buildpartner.ai/${username}`,
|
|
100
|
-
created_at: existingAuth?.created_at || new Date().toISOString(),
|
|
101
|
-
});
|
|
102
|
-
// Step 2: Set up tools
|
|
103
|
-
console.log(chalk.bold(" [2/3] Setting up your tools..."));
|
|
104
|
-
const mcpResult = installMcp();
|
|
105
|
-
if (mcpResult.alreadyExists) {
|
|
106
|
-
console.log(chalk.green(" ✓ MCP server (already configured)"));
|
|
107
|
-
}
|
|
108
|
-
else {
|
|
109
|
-
console.log(chalk.green(" ✓ MCP server"));
|
|
110
|
-
}
|
|
111
|
-
const installedSkills = installSkills();
|
|
112
|
-
const skillCount = installedSkills.length;
|
|
113
|
-
if (skillCount > 0) {
|
|
114
|
-
// Highlight key skills
|
|
115
|
-
const hasClaudeCoach = installedSkills.includes("bp-claude-coach");
|
|
116
|
-
const hasExpertAdvice = installedSkills.includes("bp-expert-advice");
|
|
117
|
-
if (hasClaudeCoach)
|
|
118
|
-
console.log(chalk.green(` ✓ ${skillCommand("claude-coach")} (review your Claude Code setup)`));
|
|
119
|
-
if (hasExpertAdvice)
|
|
120
|
-
console.log(chalk.green(` ✓ ${skillCommand("expert-advice")} (expert advice on any topic)`));
|
|
121
|
-
console.log(chalk.green(` ✓ ${skillCount} skills total`));
|
|
122
|
-
}
|
|
123
|
-
else {
|
|
124
|
-
console.log(chalk.yellow(" ! Skills not found (will work after npm publish)"));
|
|
125
|
-
}
|
|
126
|
-
const hookResult = installHook();
|
|
127
|
-
if (hookResult.alreadyExists) {
|
|
128
|
-
console.log(chalk.green(" ✓ Auto-tracking (already configured)"));
|
|
129
|
-
}
|
|
130
|
-
else {
|
|
131
|
-
console.log(chalk.green(" ✓ Auto-tracking"));
|
|
132
|
-
}
|
|
133
|
-
const permResult = installPermissions();
|
|
134
|
-
if (permResult.alreadyExists) {
|
|
135
|
-
console.log(chalk.green(" ✓ MCP permissions (already configured)"));
|
|
136
|
-
}
|
|
137
|
-
else {
|
|
138
|
-
console.log(chalk.green(" ✓ MCP permissions (auto-approved)"));
|
|
139
|
-
}
|
|
140
|
-
console.log();
|
|
141
|
-
// Step 3: Scan history
|
|
142
|
-
console.log(chalk.bold(" [3/3] Scanning your history..."));
|
|
143
|
-
const spinner = ora(" Scanning sessions...").start();
|
|
144
|
-
const sessionEntries = scanAllSessions();
|
|
145
|
-
spinner.succeed(` ${sessionEntries.length} sessions found`);
|
|
146
|
-
// Background sync
|
|
147
|
-
if (serverLinked) {
|
|
148
|
-
const child = spawn("npx", ["buildpartner", "sync"], {
|
|
149
|
-
detached: true,
|
|
150
|
-
stdio: "ignore",
|
|
151
|
-
});
|
|
152
|
-
child.unref();
|
|
153
|
-
console.log(chalk.dim(` Syncing ${sessionEntries.length} sessions in background...`));
|
|
154
|
-
}
|
|
155
|
-
else {
|
|
156
|
-
console.log(chalk.dim(" Sessions will sync on next launch."));
|
|
157
|
-
}
|
|
158
|
-
console.log();
|
|
159
|
-
// Auto-open dashboard
|
|
160
|
-
const dashUrl = serverLinked ? `https://buildpartner.ai/dashboard?t=${authToken}` : null;
|
|
161
|
-
if (dashUrl) {
|
|
162
|
-
const opened = openUrl(dashUrl);
|
|
163
|
-
if (opened) {
|
|
164
|
-
console.log(chalk.green(" ✓ Opening your dashboard..."));
|
|
165
|
-
}
|
|
166
|
-
else {
|
|
167
|
-
console.log(chalk.bold(" Open your dashboard:"));
|
|
168
|
-
console.log(` ${orange(chalk.underline(dashUrl))}`);
|
|
169
|
-
}
|
|
170
|
-
console.log();
|
|
171
|
-
}
|
|
172
|
-
// Single CTA
|
|
173
|
-
const env = detectEnvironment();
|
|
174
|
-
const coachCmd = skillCommand("claude-coach");
|
|
175
|
-
console.log(orange(" ╭──────────────────────────────────────────────╮\n" +
|
|
176
|
-
" │ │\n" +
|
|
177
|
-
` │ ${padRight("You're all set.", 44)}│\n` +
|
|
178
|
-
" │ │\n" +
|
|
179
|
-
` │ ${padRight(`${sessionEntries.length} sessions found`, 44)}│\n` +
|
|
180
|
-
` │ ${padRight(`${skillCount} skills installed`, 44)}│\n` +
|
|
181
|
-
` │ ${padRight("Auto-tracking enabled", 44)}│\n` +
|
|
182
|
-
" │ │\n" +
|
|
183
|
-
" ╰──────────────────────────────────────────────╯"));
|
|
184
|
-
console.log();
|
|
185
|
-
if (env !== "terminal") {
|
|
186
|
-
console.log(chalk.bold(" Restart Claude Code, then paste this to get started:"));
|
|
187
|
-
console.log();
|
|
188
|
-
console.log(` ${orange(coachCmd)}`);
|
|
189
|
-
}
|
|
190
|
-
else {
|
|
191
|
-
console.log(chalk.bold(" Paste this into your terminal to get started:"));
|
|
192
|
-
console.log();
|
|
193
|
-
console.log(` ${orange(`claude "${coachCmd}"`)}`);
|
|
194
|
-
}
|
|
195
|
-
console.log();
|
|
196
|
-
}
|
|
197
|
-
async function createAccount(token, defaultToken) {
|
|
198
|
-
let email;
|
|
199
|
-
let username;
|
|
200
|
-
let authToken = defaultToken;
|
|
201
|
-
let serverLinked = false;
|
|
202
|
-
console.log(chalk.bold(" [1/3] Create your account"));
|
|
203
|
-
console.log();
|
|
204
|
-
if (token) {
|
|
205
|
-
console.log(chalk.green(" ✓ Token verified"));
|
|
206
|
-
email = "user@buildpartner.ai";
|
|
207
|
-
username = "player";
|
|
208
|
-
}
|
|
209
|
-
else if (!isInteractive) {
|
|
210
|
-
const emailArg = getArg("--email");
|
|
211
|
-
email = emailArg || `user-${Date.now()}@buildpartner.ai`;
|
|
212
|
-
username = getArg("--username") || usernameFromEmail(email);
|
|
213
|
-
console.log(chalk.dim(` Using: ${email}`));
|
|
214
|
-
}
|
|
215
|
-
else {
|
|
216
|
-
email = await input({
|
|
217
|
-
message: " Email:",
|
|
218
|
-
validate: (val) => {
|
|
219
|
-
if (!val.includes("@"))
|
|
220
|
-
return "Enter a valid email";
|
|
221
|
-
return true;
|
|
222
|
-
},
|
|
223
|
-
});
|
|
224
|
-
username = usernameFromEmail(email);
|
|
225
|
-
}
|
|
226
|
-
const signup = async (signupEmail, signupUsername) => {
|
|
227
|
-
for (let attempt = 1; attempt <= 3; attempt++) {
|
|
228
|
-
try {
|
|
229
|
-
const res = await fetch(`${API_BASE}/api/buildpartner/signup`, {
|
|
230
|
-
method: "POST",
|
|
231
|
-
headers: { "Content-Type": "application/json" },
|
|
232
|
-
body: JSON.stringify({ email: signupEmail, username: signupUsername }),
|
|
233
|
-
signal: AbortSignal.timeout(10000),
|
|
234
|
-
});
|
|
235
|
-
const data = await res.json();
|
|
236
|
-
if (res.ok && data.token) {
|
|
237
|
-
authToken = data.token;
|
|
238
|
-
serverLinked = true;
|
|
239
|
-
return "ok";
|
|
240
|
-
}
|
|
241
|
-
else if (res.status === 409) {
|
|
242
|
-
const msg = (data.error || "").toLowerCase();
|
|
243
|
-
if (msg.includes("username"))
|
|
244
|
-
return "duplicate-username";
|
|
245
|
-
return "duplicate-email";
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
catch {
|
|
249
|
-
if (attempt < 3) {
|
|
250
|
-
await new Promise((r) => setTimeout(r, 1000 * attempt));
|
|
251
|
-
}
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
return "error";
|
|
255
|
-
};
|
|
256
|
-
let result = await signup(email, username);
|
|
257
|
-
// Username collision: auto-retry with a random suffix (up to 3 times)
|
|
258
|
-
if (result === "duplicate-username") {
|
|
259
|
-
for (let i = 0; i < 3; i++) {
|
|
260
|
-
username = `${usernameFromEmail(email)}-${Math.random().toString(36).slice(2, 6)}`;
|
|
261
|
-
result = await signup(email, username);
|
|
262
|
-
if (result !== "duplicate-username")
|
|
263
|
-
break;
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
// Email collision: offer login or retry
|
|
267
|
-
if (result === "duplicate-email" && isInteractive) {
|
|
268
|
-
let retrying = true;
|
|
269
|
-
while (retrying) {
|
|
270
|
-
console.log(chalk.yellow(` ! This email is already registered.`));
|
|
271
|
-
console.log(chalk.dim(` Log in from your dashboard: ${API_BASE}/dashboard/login`));
|
|
272
|
-
console.log();
|
|
273
|
-
const retry = await input({
|
|
274
|
-
message: " Try a different email? (y/n):",
|
|
275
|
-
});
|
|
276
|
-
if (retry.toLowerCase() !== "y") {
|
|
277
|
-
console.log();
|
|
278
|
-
console.log(chalk.dim(` Log in at ${API_BASE}/dashboard/login to access your account.`));
|
|
279
|
-
process.exit(0);
|
|
280
|
-
}
|
|
281
|
-
email = await input({
|
|
282
|
-
message: " Email:",
|
|
283
|
-
validate: (val) => {
|
|
284
|
-
if (!val.includes("@"))
|
|
285
|
-
return "Enter a valid email";
|
|
286
|
-
return true;
|
|
287
|
-
},
|
|
288
|
-
});
|
|
289
|
-
username = usernameFromEmail(email);
|
|
290
|
-
result = await signup(email, username);
|
|
291
|
-
if (result === "duplicate-username") {
|
|
292
|
-
for (let i = 0; i < 3; i++) {
|
|
293
|
-
username = `${usernameFromEmail(email)}-${Math.random().toString(36).slice(2, 6)}`;
|
|
294
|
-
result = await signup(email, username);
|
|
295
|
-
if (result !== "duplicate-username")
|
|
296
|
-
break;
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
if (result !== "duplicate-email")
|
|
300
|
-
retrying = false;
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
else if (result === "duplicate-email") {
|
|
304
|
-
console.log(chalk.yellow(` ! This email is already registered.`));
|
|
305
|
-
console.log(chalk.dim(` Log in from your dashboard: ${API_BASE}/dashboard/login`));
|
|
306
|
-
process.exit(0);
|
|
307
|
-
}
|
|
308
|
-
if (result === "error") {
|
|
309
|
-
console.log(chalk.yellow(" ! Could not reach buildpartner.ai. Your data will sync next time you run a skill."));
|
|
310
|
-
}
|
|
311
|
-
else {
|
|
312
|
-
console.log(chalk.green(" ✓ Account created"));
|
|
313
|
-
}
|
|
314
|
-
console.log();
|
|
315
|
-
return { email, username, authToken, serverLinked };
|
|
316
|
-
}
|
|
317
|
-
function getTokenArg() {
|
|
318
|
-
return getArg("--token");
|
|
319
|
-
}
|
|
320
|
-
function getArg(flag) {
|
|
321
|
-
const idx = process.argv.indexOf(flag);
|
|
322
|
-
if (idx !== -1 && process.argv[idx + 1]) {
|
|
323
|
-
return process.argv[idx + 1];
|
|
324
|
-
}
|
|
325
|
-
return null;
|
|
326
|
-
}
|
|
327
|
-
function generateId() {
|
|
328
|
-
return crypto.randomUUID().replace(/-/g, "").slice(0, 24);
|
|
329
|
-
}
|
|
330
|
-
function usernameFromEmail(email) {
|
|
331
|
-
const local = email.split("@")[0] || "";
|
|
332
|
-
const clean = local.replace(/[^a-zA-Z0-9-]/g, "-").toLowerCase().replace(/-+/g, "-").replace(/^-|-$/g, "");
|
|
333
|
-
if (clean.length >= 2)
|
|
334
|
-
return clean;
|
|
335
|
-
return `user-${Math.random().toString(36).slice(2, 8)}`;
|
|
336
|
-
}
|
|
337
|
-
function openUrl(url) {
|
|
338
|
-
try {
|
|
339
|
-
const os = platform();
|
|
340
|
-
if (os === "darwin") {
|
|
341
|
-
execSync(`open "${url}"`, { stdio: "ignore" });
|
|
342
|
-
}
|
|
343
|
-
else if (os === "win32") {
|
|
344
|
-
execSync(`start "" "${url}"`, { stdio: "ignore" });
|
|
345
|
-
}
|
|
346
|
-
else {
|
|
347
|
-
execSync(`xdg-open "${url}"`, { stdio: "ignore" });
|
|
348
|
-
}
|
|
349
|
-
return true;
|
|
350
|
-
}
|
|
351
|
-
catch {
|
|
352
|
-
return false;
|
|
353
|
-
}
|
|
354
|
-
}
|
|
355
|
-
function padRight(str, len) {
|
|
356
|
-
return str.length >= len ? str : str + " ".repeat(len - str.length);
|
|
357
|
-
}
|
|
358
|
-
//# sourceMappingURL=setup.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/commands/setup.ts"],"names":[],"mappings":"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"}
|
package/dist/src/constants.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Global constants shared across CLI, MCP server, and web app.
|
|
3
|
-
* Change SKILL_PREFIX here and it propagates everywhere.
|
|
4
|
-
*/
|
|
5
|
-
export declare const SKILL_PREFIX = "bp-";
|
|
6
|
-
/**
|
|
7
|
-
* Format a skill command for display (e.g., "interview" -> "/bp-interview").
|
|
8
|
-
*/
|
|
9
|
-
export declare function skillCommand(name: string): string;
|
package/dist/src/constants.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Global constants shared across CLI, MCP server, and web app.
|
|
3
|
-
* Change SKILL_PREFIX here and it propagates everywhere.
|
|
4
|
-
*/
|
|
5
|
-
export const SKILL_PREFIX = "bp-";
|
|
6
|
-
/**
|
|
7
|
-
* Format a skill command for display (e.g., "interview" -> "/bp-interview").
|
|
8
|
-
*/
|
|
9
|
-
export function skillCommand(name) {
|
|
10
|
-
return `/${SKILL_PREFIX}${name}`;
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,CAAC;AAElC;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,IAAI,YAAY,GAAG,IAAI,EAAE,CAAC;AACnC,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Subscription gate for MCP tool calls.
|
|
3
|
-
*
|
|
4
|
-
* Checks if the user has an active trial (usage-based) or has paid.
|
|
5
|
-
* Caches the result for 5 minutes to avoid hitting the API on every call.
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* Check if the user can use tools. Returns null if access is granted,
|
|
9
|
-
* or an error message string if access is denied.
|
|
10
|
-
*/
|
|
11
|
-
export declare function checkAccess(): Promise<string | null>;
|
|
12
|
-
/**
|
|
13
|
-
* Get trial status for informational purposes (used by check_status).
|
|
14
|
-
*/
|
|
15
|
-
export declare function getTrialInfo(): Promise<{
|
|
16
|
-
status: "active" | "trial" | "expired";
|
|
17
|
-
uses_left: number;
|
|
18
|
-
upgrade_url: string;
|
|
19
|
-
} | null>;
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Subscription gate for MCP tool calls.
|
|
3
|
-
*
|
|
4
|
-
* Checks if the user has an active trial (usage-based) or has paid.
|
|
5
|
-
* Caches the result for 5 minutes to avoid hitting the API on every call.
|
|
6
|
-
*/
|
|
7
|
-
import { apiGet } from "../api-client.js";
|
|
8
|
-
import { readAuth } from "../store/local-store.js";
|
|
9
|
-
let cachedStatus = null;
|
|
10
|
-
let cacheTimestamp = 0;
|
|
11
|
-
const CACHE_TTL_MS = 5 * 60 * 1000; // 5 minutes
|
|
12
|
-
async function getSubscriptionStatus() {
|
|
13
|
-
const now = Date.now();
|
|
14
|
-
if (cachedStatus && now - cacheTimestamp < CACHE_TTL_MS) {
|
|
15
|
-
return cachedStatus;
|
|
16
|
-
}
|
|
17
|
-
const result = await apiGet("/api/buildpartner/subscription");
|
|
18
|
-
if (result) {
|
|
19
|
-
cachedStatus = result;
|
|
20
|
-
cacheTimestamp = now;
|
|
21
|
-
}
|
|
22
|
-
return result;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Check if the user can use tools. Returns null if access is granted,
|
|
26
|
-
* or an error message string if access is denied.
|
|
27
|
-
*/
|
|
28
|
-
export async function checkAccess() {
|
|
29
|
-
const auth = readAuth();
|
|
30
|
-
if (!auth?.token) {
|
|
31
|
-
// No auth = not set up yet. Allow access (setup flow needs tools).
|
|
32
|
-
return null;
|
|
33
|
-
}
|
|
34
|
-
const status = await getSubscriptionStatus();
|
|
35
|
-
// If we can't reach the API, allow access (offline-friendly)
|
|
36
|
-
if (!status) {
|
|
37
|
-
return null;
|
|
38
|
-
}
|
|
39
|
-
if (status.status === "active") {
|
|
40
|
-
return null;
|
|
41
|
-
}
|
|
42
|
-
if (status.status === "trial") {
|
|
43
|
-
return null;
|
|
44
|
-
}
|
|
45
|
-
// Trial expired (used all free skill uses) and hasn't paid
|
|
46
|
-
return [
|
|
47
|
-
"You've used all 20 free skill runs.",
|
|
48
|
-
"",
|
|
49
|
-
"Upgrade to keep using BuildPartner ($8.99, one-time):",
|
|
50
|
-
status.upgrade_url,
|
|
51
|
-
"",
|
|
52
|
-
"Run this to open your dashboard:",
|
|
53
|
-
`open "${status.upgrade_url}"`,
|
|
54
|
-
].join("\n");
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Get trial status for informational purposes (used by check_status).
|
|
58
|
-
*/
|
|
59
|
-
export async function getTrialInfo() {
|
|
60
|
-
const status = await getSubscriptionStatus();
|
|
61
|
-
if (!status)
|
|
62
|
-
return null;
|
|
63
|
-
return {
|
|
64
|
-
status: status.status,
|
|
65
|
-
uses_left: status.uses_left,
|
|
66
|
-
upgrade_url: status.upgrade_url,
|
|
67
|
-
};
|
|
68
|
-
}
|
|
69
|
-
//# sourceMappingURL=subscription-gate.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"subscription-gate.js","sourceRoot":"","sources":["../../../src/mcp/subscription-gate.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAWnD,IAAI,YAAY,GAA8B,IAAI,CAAC;AACnD,IAAI,cAAc,GAAG,CAAC,CAAC;AACvB,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,YAAY;AAEhD,KAAK,UAAU,qBAAqB;IAClC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,IAAI,YAAY,IAAI,GAAG,GAAG,cAAc,GAAG,YAAY,EAAE,CAAC;QACxD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAqB,gCAAgC,CAAC,CAAC;IAClF,IAAI,MAAM,EAAE,CAAC;QACX,YAAY,GAAG,MAAM,CAAC;QACtB,cAAc,GAAG,GAAG,CAAC;IACvB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAC;IACxB,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;QACjB,mEAAmE;QACnE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,qBAAqB,EAAE,CAAC;IAE7C,6DAA6D;IAC7D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2DAA2D;IAC3D,OAAO;QACL,qCAAqC;QACrC,EAAE;QACF,uDAAuD;QACvD,MAAM,CAAC,WAAW;QAClB,EAAE;QACF,kCAAkC;QAClC,SAAS,MAAM,CAAC,WAAW,GAAG;KAC/B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY;IAKhC,MAAM,MAAM,GAAG,MAAM,qBAAqB,EAAE,CAAC;IAC7C,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,WAAW,EAAE,MAAM,CAAC,WAAW;KAChC,CAAC;AACJ,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Quest store - now only holds quest definitions for setup recommendations.
|
|
3
|
-
* All quest state management is server-side via /api/buildpartner/check-status.
|
|
4
|
-
*/
|
|
5
|
-
export type QuestPath = "core" | "builder" | "storyteller" | "systems-thinker";
|
|
6
|
-
export interface Quest {
|
|
7
|
-
id: string;
|
|
8
|
-
title: string;
|
|
9
|
-
description: string;
|
|
10
|
-
prompt: string;
|
|
11
|
-
path: QuestPath;
|
|
12
|
-
order: number;
|
|
13
|
-
}
|
|
14
|
-
export declare const QUEST_DEFINITIONS: Quest[];
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Quest store - now only holds quest definitions for setup recommendations.
|
|
3
|
-
* All quest state management is server-side via /api/buildpartner/check-status.
|
|
4
|
-
*/
|
|
5
|
-
import { skillCommand } from "../constants.js";
|
|
6
|
-
export const QUEST_DEFINITIONS = [
|
|
7
|
-
// Core quests
|
|
8
|
-
{
|
|
9
|
-
id: "run-first-skill",
|
|
10
|
-
title: "Run Your First Skill",
|
|
11
|
-
description: `Type ${skillCommand("coach")} in Claude Code to get a personalized setup review.`,
|
|
12
|
-
prompt: skillCommand("coach"),
|
|
13
|
-
path: "core",
|
|
14
|
-
order: 1,
|
|
15
|
-
},
|
|
16
|
-
{
|
|
17
|
-
id: "build-training-data",
|
|
18
|
-
title: "Build Your Training Data",
|
|
19
|
-
description: `Type ${skillCommand("interview")} in Claude Code to teach BuildPartner how you work.`,
|
|
20
|
-
prompt: skillCommand("interview"),
|
|
21
|
-
path: "core",
|
|
22
|
-
order: 2,
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
id: "review-claude-md",
|
|
26
|
-
title: "Review Your CLAUDE.md",
|
|
27
|
-
description: `Run ${skillCommand("enhance-claude-md")} to get data-backed rules for your CLAUDE.md.`,
|
|
28
|
-
prompt: skillCommand("enhance-claude-md"),
|
|
29
|
-
path: "core",
|
|
30
|
-
order: 3,
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
id: "consult-an-expert",
|
|
34
|
-
title: "Consult an Expert",
|
|
35
|
-
description: `Type ${skillCommand("consult")} and ask any question. Get matched to the right expert framework.`,
|
|
36
|
-
prompt: skillCommand("consult"),
|
|
37
|
-
path: "core",
|
|
38
|
-
order: 4,
|
|
39
|
-
},
|
|
40
|
-
];
|
|
41
|
-
//# sourceMappingURL=quest-store.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"quest-store.js","sourceRoot":"","sources":["../../../src/store/quest-store.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAa/C,MAAM,CAAC,MAAM,iBAAiB,GAAY;IACxC,cAAc;IACd;QACE,EAAE,EAAE,iBAAiB;QACrB,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,QAAQ,YAAY,CAAC,OAAO,CAAC,qDAAqD;QAC/F,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC;QAC7B,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,CAAC;KACT;IACD;QACE,EAAE,EAAE,qBAAqB;QACzB,KAAK,EAAE,0BAA0B;QACjC,WAAW,EAAE,QAAQ,YAAY,CAAC,WAAW,CAAC,qDAAqD;QACnG,MAAM,EAAE,YAAY,CAAC,WAAW,CAAC;QACjC,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,CAAC;KACT;IACD;QACE,EAAE,EAAE,kBAAkB;QACtB,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EAAE,OAAO,YAAY,CAAC,mBAAmB,CAAC,+CAA+C;QACpG,MAAM,EAAE,YAAY,CAAC,mBAAmB,CAAC;QACzC,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,CAAC;KACT;IACD;QACE,EAAE,EAAE,mBAAmB;QACvB,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EAAE,QAAQ,YAAY,CAAC,SAAS,CAAC,mEAAmE;QAC/G,MAAM,EAAE,YAAY,CAAC,SAAS,CAAC;QAC/B,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,CAAC;KACT;CACF,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Status store - now only handles version checking.
|
|
3
|
-
* All other bookkeeping (consumption, quests, reminders) moved to server.
|
|
4
|
-
*/
|
|
5
|
-
export interface VersionInfo {
|
|
6
|
-
current: string;
|
|
7
|
-
latest: string | null;
|
|
8
|
-
update_available: boolean;
|
|
9
|
-
}
|
|
10
|
-
export declare function getVersionInfo(): Promise<VersionInfo>;
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Status store - now only handles version checking.
|
|
3
|
-
* All other bookkeeping (consumption, quests, reminders) moved to server.
|
|
4
|
-
*/
|
|
5
|
-
import { readFileSync, writeFileSync, existsSync } from "fs";
|
|
6
|
-
import { join, dirname } from "path";
|
|
7
|
-
import { homedir } from "os";
|
|
8
|
-
import { fileURLToPath } from "url";
|
|
9
|
-
import { ensureDir } from "./local-store.js";
|
|
10
|
-
const __filename = fileURLToPath(import.meta.url);
|
|
11
|
-
const __dirname = dirname(__filename);
|
|
12
|
-
const VERSION_CACHE_PATH = join(homedir(), ".buildpartner", "version-check.json");
|
|
13
|
-
const VERSION_CHECK_TTL_MS = 24 * 60 * 60 * 1000; // 24 hours
|
|
14
|
-
function getCurrentVersion() {
|
|
15
|
-
try {
|
|
16
|
-
const paths = [
|
|
17
|
-
join(__dirname, "..", "..", "..", "package.json"),
|
|
18
|
-
join(__dirname, "..", "..", "package.json"),
|
|
19
|
-
];
|
|
20
|
-
for (const p of paths) {
|
|
21
|
-
if (existsSync(p)) {
|
|
22
|
-
const pkg = JSON.parse(readFileSync(p, "utf-8"));
|
|
23
|
-
if (pkg.version)
|
|
24
|
-
return pkg.version;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
catch {
|
|
29
|
-
// ignore
|
|
30
|
-
}
|
|
31
|
-
return "0.0.0";
|
|
32
|
-
}
|
|
33
|
-
async function fetchLatestVersion() {
|
|
34
|
-
try {
|
|
35
|
-
const controller = new AbortController();
|
|
36
|
-
const timeout = setTimeout(() => controller.abort(), 3000);
|
|
37
|
-
const res = await fetch("https://registry.npmjs.org/buildpartner/latest", {
|
|
38
|
-
signal: controller.signal,
|
|
39
|
-
});
|
|
40
|
-
clearTimeout(timeout);
|
|
41
|
-
if (!res.ok)
|
|
42
|
-
return null;
|
|
43
|
-
const data = (await res.json());
|
|
44
|
-
return data.version || null;
|
|
45
|
-
}
|
|
46
|
-
catch {
|
|
47
|
-
return null;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
function compareVersions(current, latest) {
|
|
51
|
-
const c = current.split(".").map(Number);
|
|
52
|
-
const l = latest.split(".").map(Number);
|
|
53
|
-
for (let i = 0; i < 3; i++) {
|
|
54
|
-
if ((l[i] || 0) > (c[i] || 0))
|
|
55
|
-
return true;
|
|
56
|
-
if ((l[i] || 0) < (c[i] || 0))
|
|
57
|
-
return false;
|
|
58
|
-
}
|
|
59
|
-
return false;
|
|
60
|
-
}
|
|
61
|
-
export async function getVersionInfo() {
|
|
62
|
-
const current = getCurrentVersion();
|
|
63
|
-
// Check cache first
|
|
64
|
-
try {
|
|
65
|
-
if (existsSync(VERSION_CACHE_PATH)) {
|
|
66
|
-
const cache = JSON.parse(readFileSync(VERSION_CACHE_PATH, "utf-8"));
|
|
67
|
-
const age = Date.now() - new Date(cache.checked_at).getTime();
|
|
68
|
-
if (age < VERSION_CHECK_TTL_MS && cache.latest) {
|
|
69
|
-
return {
|
|
70
|
-
current,
|
|
71
|
-
latest: cache.latest,
|
|
72
|
-
update_available: compareVersions(current, cache.latest),
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
catch {
|
|
78
|
-
// ignore cache errors
|
|
79
|
-
}
|
|
80
|
-
const latest = await fetchLatestVersion();
|
|
81
|
-
if (latest) {
|
|
82
|
-
try {
|
|
83
|
-
ensureDir();
|
|
84
|
-
writeFileSync(VERSION_CACHE_PATH, JSON.stringify({
|
|
85
|
-
latest,
|
|
86
|
-
checked_at: new Date().toISOString(),
|
|
87
|
-
}));
|
|
88
|
-
}
|
|
89
|
-
catch {
|
|
90
|
-
// ignore
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
return {
|
|
94
|
-
current,
|
|
95
|
-
latest,
|
|
96
|
-
update_available: latest ? compareVersions(current, latest) : false,
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
|
-
//# sourceMappingURL=status-store.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"status-store.js","sourceRoot":"","sources":["../../../src/store/status-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../src/suggestions/rules.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"video-links.js","sourceRoot":"","sources":["../../../src/suggestions/video-links.ts"],"names":[],"mappings":""}
|