@agent-deck/cli 1.3.4 → 1.4.1
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/agent-harness.d.ts +1 -1
- package/dist/agent-harness.d.ts.map +1 -1
- package/dist/agent-harness.js +31 -13
- package/dist/agent-harness.js.map +1 -1
- package/dist/backend-runtime.d.ts +9 -0
- package/dist/backend-runtime.d.ts.map +1 -1
- package/dist/backend-runtime.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp-config.d.ts +1 -1
- package/dist/mcp-config.d.ts.map +1 -1
- package/dist/mcp-config.js +3 -3
- package/dist/mcp-config.js.map +1 -1
- package/dist/playbook-stubs.d.ts +43 -0
- package/dist/playbook-stubs.d.ts.map +1 -0
- package/dist/playbook-stubs.js +203 -0
- package/dist/playbook-stubs.js.map +1 -0
- package/dist/use.d.ts +35 -0
- package/dist/use.d.ts.map +1 -0
- package/dist/use.js +178 -0
- package/dist/use.js.map +1 -0
- package/package.json +3 -3
package/dist/agent-harness.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export declare const HARNESS_MARKER_START = "<!-- agent-deck:harness:start -->";
|
|
|
3
3
|
export declare const HARNESS_MARKER_END = "<!-- agent-deck:harness:end -->";
|
|
4
4
|
export declare const CURSOR_RULE_FILENAME = "agent-deck.mdc";
|
|
5
5
|
/** One-line rule description (Cursor rule picker / skill-style discoverability). */
|
|
6
|
-
export declare const HARNESS_RULE_DESCRIPTION = "
|
|
6
|
+
export declare const HARNESS_RULE_DESCRIPTION = "Use when user mentions decks, playbooks, deck MCP tools, or corrects playbook output \u2014 Agent Deck harness";
|
|
7
7
|
export declare function buildClaudeHarnessBlock(scope: SetupScope): string;
|
|
8
8
|
/** Merge only the agent-deck section; never replace other Cursor rules or skills. */
|
|
9
9
|
export declare function mergeCursorHarnessFile(existing: string, harnessInner: string, description?: string): {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-harness.d.ts","sourceRoot":"","sources":["../src/agent-harness.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1D,eAAO,MAAM,oBAAoB,sCAAsC,CAAC;AACxE,eAAO,MAAM,kBAAkB,oCAAoC,CAAC;AACpE,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AAErD,oFAAoF;AACpF,eAAO,MAAM,wBAAwB,
|
|
1
|
+
{"version":3,"file":"agent-harness.d.ts","sourceRoot":"","sources":["../src/agent-harness.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1D,eAAO,MAAM,oBAAoB,sCAAsC,CAAC;AACxE,eAAO,MAAM,kBAAkB,oCAAoC,CAAC;AACpE,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AAErD,oFAAoF;AACpF,eAAO,MAAM,wBAAwB,mHACwE,CAAC;AA+C9G,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAMjE;AAUD,qFAAqF;AACrF,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,WAAW,GAAE,MAAiC,GAC7C;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAuBvC;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAEhE;AAED,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GACnB;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAevC;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAetF;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;IAC7C,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAcF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,GAAG,oBAAoB,CA6C9F"}
|
package/dist/agent-harness.js
CHANGED
|
@@ -17,31 +17,49 @@ exports.HARNESS_MARKER_START = '<!-- agent-deck:harness:start -->';
|
|
|
17
17
|
exports.HARNESS_MARKER_END = '<!-- agent-deck:harness:end -->';
|
|
18
18
|
exports.CURSOR_RULE_FILENAME = 'agent-deck.mdc';
|
|
19
19
|
/** One-line rule description (Cursor rule picker / skill-style discoverability). */
|
|
20
|
-
exports.HARNESS_RULE_DESCRIPTION = '
|
|
20
|
+
exports.HARNESS_RULE_DESCRIPTION = 'Use when user mentions decks, playbooks, deck MCP tools, or corrects playbook output — Agent Deck harness';
|
|
21
21
|
const GLOBAL_BODY = `**Connect first:** Ensure Agent Deck MCP is connected before using deck tools (\`agent-deck setup --client cursor|claude --start\`, then restart the host). Claude Code: \`claude mcp list\` should show agent-deck as Connected when the backend is running.
|
|
22
22
|
|
|
23
|
-
**Session opener (first turn only):** When Agent Deck MCP is connected and this is a new conversation in a workspace, call \`get_decks\`, then \`bind_workspace\` with the project root and a \`deckId
|
|
23
|
+
**Session opener (first turn only):** When Agent Deck MCP is connected and this is a new conversation in a workspace, call \`get_decks\`, then \`bind_workspace\` with the project root and a \`deckId\` (if \`.agent-deck/use.json\` exists, use its \`deckId\`), then \`get_session_binding\`, and tell the user **exactly one line** using \`display_summary\` (e.g. \`◆ dev · 2 MCP · 0 keys · 1 playbooks\`). This is the deck-status line for IDE Agent chat — there is no host footer there. Do **not** repeat it every turn unless the user asks or the bind changes (\`switch_bound_deck\`, new repo).
|
|
24
24
|
|
|
25
25
|
**Later turns:** Call \`bind_workspace\` before the first deck-scoped tool if not already bound. Terminal hosts may also show the deck in the prompt footer via \`statusLine\`; do not duplicate unless the user asks.
|
|
26
26
|
|
|
27
27
|
Before declining for missing tools (Slack, Linear, GitHub, etc.), use agent-deck MCP: \`bind_workspace\`, \`get_bound_deck\`, \`call_service_tool\`. Don't hardcode deck IDs.
|
|
28
28
|
|
|
29
|
-
Deck playbooks are task recipes —
|
|
29
|
+
Deck playbooks are task recipes — thin trigger stubs from \`agent-deck use\` plus \`get_bound_deck\` / \`get_playbook\`. **Never** mirror playbook bodies into \`.cursor/skills/\`, rules, or Claude skills — one source of truth on the deck; stubs are pointers only.
|
|
30
|
+
|
|
31
|
+
### When user asks for a playbook task
|
|
32
|
+
|
|
33
|
+
1. \`bind_workspace\` if needed.
|
|
34
|
+
2. \`get_playbook(pb_x)\` before improvising (stub or \`get_bound_deck\` triggers point you here).
|
|
35
|
+
3. Follow the playbook body; use \`call_service_tool\` for deck MCPs.
|
|
30
36
|
|
|
31
37
|
### Playbooks — refine from outcomes (self-improvement)
|
|
32
38
|
|
|
33
|
-
**When
|
|
39
|
+
**When the user corrects your output** (the write trigger — no need to have called \`get_playbook\` earlier in the session):
|
|
40
|
+
|
|
41
|
+
**Update case** (a playbook covered this task): fix the output, then \`propose_playbook_patch\` with item ops — prefer one \`add_item\` to Gotchas/Checklist; include \`evidence.user_feedback_excerpt\` as a short verbatim quote of the correction.
|
|
42
|
+
|
|
43
|
+
**Genesis case** (no playbook covered the task): before ending, \`propose_playbook_patch { kind: "create", new_playbook: { title, triggers, body with one gotcha } }\` — a few lines is the right size.
|
|
44
|
+
|
|
45
|
+
**Explicit user-directed playbook edits** ("fix the playbook to say X"): \`update_playbook\` — they already reviewed.
|
|
46
|
+
|
|
47
|
+
Tell the user in one line: proposal filed — review in dashboard **Playbook patches** (unified diff).
|
|
48
|
+
|
|
49
|
+
**How to shape proposals:** generalize project-specific names but keep concrete gotchas; place lessons in Checklist/Gotchas; use \`rewrite_body\` only when structure cannot absorb the lesson.
|
|
50
|
+
|
|
51
|
+
**propose_playbook_patch ops:**
|
|
34
52
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
53
|
+
| Situation | Op | Notes |
|
|
54
|
+
|-----------|-----|-------|
|
|
55
|
+
| New gotcha or checklist item | \`add_item\` | \`section\`: ## heading; \`text\`: bullet (leading \`-\` optional) |
|
|
56
|
+
| Replace one list line | \`amend_item\` | \`anchor\`: exact line including \`-\` prefix — **not prose** |
|
|
57
|
+
| Delete one list line | \`remove_item\` | Same anchor rules as amend |
|
|
58
|
+
| Edit prose or a whole section | \`rewrite_body\` | Not amend_item on paragraphs |
|
|
59
|
+
| Change trigger phrases | \`set_triggers\` | Then user runs \`agent-deck use --refresh\` |
|
|
38
60
|
|
|
39
|
-
**
|
|
40
|
-
-
|
|
41
|
-
- **Place the lesson** — checklist item for verification, technique for positive patterns, anti-pattern for mistakes to avoid
|
|
42
|
-
- **Restructure** if the playbook can't absorb the lesson cleanly — don't bolt it on
|
|
43
|
-
- **Surface the change** in your response so the user can audit drift`;
|
|
44
|
-
const PROJECT_BODY_EXTRA = 'In this repo: \`get_decks\`, then \`bind_workspace\` with the workspace root and \`deckId\`. When a task matches deck playbooks (check \`triggers\` on \`get_bound_deck\`), \`get_playbook\` before improvising.';
|
|
61
|
+
Wrong: \`amend_item\` with a prose sentence as anchor → **409** at propose. Right: \`rewrite_body\` for prose edits.`;
|
|
62
|
+
const PROJECT_BODY_EXTRA = 'In this repo: run \`agent-deck use <deck>\` once (writes MCP + trigger stubs + \`.agent-deck/use.json\`). \`bind_workspace\` with the workspace root and that \`deckId\`. When a task matches a stub or deck \`triggers\`, \`get_playbook\` before improvising. After accepting playbook patches that change triggers, run \`agent-deck use --refresh\`.';
|
|
45
63
|
function buildClaudeHarnessBlock(scope) {
|
|
46
64
|
const lines = ['## Agent Deck', '', GLOBAL_BODY];
|
|
47
65
|
if (scope === 'project') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-harness.js","sourceRoot":"","sources":["../src/agent-harness.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"agent-harness.js","sourceRoot":"","sources":["../src/agent-harness.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,15 @@ export type CliCollectionAdmin = {
|
|
|
31
31
|
id: string;
|
|
32
32
|
name: string;
|
|
33
33
|
}>>;
|
|
34
|
+
resolveDeck(ref: string): Promise<{
|
|
35
|
+
id: string;
|
|
36
|
+
name: string;
|
|
37
|
+
} | null>;
|
|
38
|
+
listDeckPlaybookStubs(deckId: string): Promise<Array<{
|
|
39
|
+
id: string;
|
|
40
|
+
title: string;
|
|
41
|
+
triggers: string[];
|
|
42
|
+
}>>;
|
|
34
43
|
};
|
|
35
44
|
export declare function createCollectionAdmin(): CliCollectionAdmin;
|
|
36
45
|
export type CliExportImport = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backend-runtime.d.ts","sourceRoot":"","sources":["../src/backend-runtime.ts"],"names":[],"mappings":"AAKA,wBAAgB,uBAAuB,IAAI,OAAO,CASjD;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChF,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjF,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7E,YAAY,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IAC3E,aAAa,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IAC/D,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"backend-runtime.d.ts","sourceRoot":"","sources":["../src/backend-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backend-runtime.js","sourceRoot":"","sources":["../src/backend-runtime.ts"],"names":[],"mappings":";;;;;AAKA,0DASC;
|
|
1
|
+
{"version":3,"file":"backend-runtime.js","sourceRoot":"","sources":["../src/backend-runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA+DA,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAoDtE;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAgBzD;AAED,wBAAsB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAqBrE;AAED,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAwE7D;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAc1E;AAED,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CA6E5D"}
|
package/dist/index.js
CHANGED
|
@@ -17,6 +17,7 @@ const statusline_1 = require("./statusline");
|
|
|
17
17
|
const menubar_1 = require("./menubar");
|
|
18
18
|
const stop_1 = require("./stop");
|
|
19
19
|
const upgrade_1 = require("./upgrade");
|
|
20
|
+
const use_1 = require("./use");
|
|
20
21
|
const version_1 = require("./version");
|
|
21
22
|
function getVaultManager() {
|
|
22
23
|
return (0, backend_runtime_1.createCredentialManager)();
|
|
@@ -29,6 +30,7 @@ function printUsage() {
|
|
|
29
30
|
agent-deck statusline [--workspace <path>]
|
|
30
31
|
agent-deck menubar
|
|
31
32
|
agent-deck setup --client cursor|claude|claude-desktop [--scope global|project] [--start]
|
|
33
|
+
agent-deck use <deck> [--client cursor|claude|both] [--refresh] [--mcp-port PORT]
|
|
32
34
|
agent-deck upgrade [--check]
|
|
33
35
|
agent-deck doctor
|
|
34
36
|
agent-deck debug-mcp
|
|
@@ -258,6 +260,8 @@ async function runCli(argv) {
|
|
|
258
260
|
}
|
|
259
261
|
return code;
|
|
260
262
|
}
|
|
263
|
+
case 'use':
|
|
264
|
+
return (0, use_1.runUseCommand)(rest);
|
|
261
265
|
case 'upgrade':
|
|
262
266
|
return (0, upgrade_1.runUpgrade)(rest);
|
|
263
267
|
case 'doctor':
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp-config.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ export interface McpEndpoint {
|
|
|
5
5
|
mcpPort: number;
|
|
6
6
|
}
|
|
7
7
|
export declare function buildMcpUrl({ host, mcpPort }: McpEndpoint): string;
|
|
8
|
-
export declare function resolveConfigPath(client: McpClient, scope: SetupScope): string;
|
|
8
|
+
export declare function resolveConfigPath(client: McpClient, scope: SetupScope, cwd?: string): string;
|
|
9
9
|
export declare function buildAgentDeckEntry(client: McpClient, endpoint: McpEndpoint): Record<string, unknown>;
|
|
10
10
|
export declare function readJsonFile(filePath: string): Record<string, unknown>;
|
|
11
11
|
export declare function mergeMcpServerConfig(existing: Record<string, unknown>, entry: Record<string, unknown>): Record<string, unknown>;
|
package/dist/mcp-config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-config.d.ts","sourceRoot":"","sources":["../src/mcp-config.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,gBAAgB,CAAC;AAC/D,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE9C,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,WAAW,GAAG,MAAM,CAElE;AAED,wBAAgB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"mcp-config.d.ts","sourceRoot":"","sources":["../src/mcp-config.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,gBAAgB,CAAC;AAC/D,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE9C,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,WAAW,GAAG,MAAM,CAElE;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,UAAU,EACjB,GAAG,GAAE,MAAsB,GAC1B,MAAM,CAuBR;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAkBrG;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAgBtE;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAazB;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAGnF"}
|
package/dist/mcp-config.js
CHANGED
|
@@ -16,16 +16,16 @@ const strip_ansi_1 = require("./strip-ansi");
|
|
|
16
16
|
function buildMcpUrl({ host, mcpPort }) {
|
|
17
17
|
return `http://${host}:${mcpPort}/mcp`;
|
|
18
18
|
}
|
|
19
|
-
function resolveConfigPath(client, scope) {
|
|
19
|
+
function resolveConfigPath(client, scope, cwd = process.cwd()) {
|
|
20
20
|
const home = node_os_1.default.homedir();
|
|
21
21
|
switch (client) {
|
|
22
22
|
case 'cursor':
|
|
23
23
|
return scope === 'project'
|
|
24
|
-
? node_path_1.default.join(
|
|
24
|
+
? node_path_1.default.join(cwd, '.cursor', 'mcp.json')
|
|
25
25
|
: node_path_1.default.join(home, '.cursor', 'mcp.json');
|
|
26
26
|
case 'claude':
|
|
27
27
|
return scope === 'project'
|
|
28
|
-
? node_path_1.default.join(
|
|
28
|
+
? node_path_1.default.join(cwd, '.mcp.json')
|
|
29
29
|
: node_path_1.default.join(home, '.claude.json');
|
|
30
30
|
case 'claude-desktop':
|
|
31
31
|
if (process.platform === 'darwin') {
|
package/dist/mcp-config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-config.js","sourceRoot":"","sources":["../src/mcp-config.ts"],"names":[],"mappings":";;;;;AAcA,kCAEC;AAED,
|
|
1
|
+
{"version":3,"file":"mcp-config.js","sourceRoot":"","sources":["../src/mcp-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
export declare const STUB_MARKER_START_PREFIX = "<!-- agent-deck:stub:start";
|
|
2
|
+
export declare const STUB_MARKER_END = "<!-- agent-deck:stub:end -->";
|
|
3
|
+
export declare const CURSOR_STUBS_DIR = "agent-deck-stubs";
|
|
4
|
+
export declare const CLAUDE_SKILL_PREFIX = "agent-deck-";
|
|
5
|
+
export type PlaybookStubInput = {
|
|
6
|
+
id: string;
|
|
7
|
+
title: string;
|
|
8
|
+
triggers: string[];
|
|
9
|
+
};
|
|
10
|
+
export type StubSyncResult = {
|
|
11
|
+
cursor: {
|
|
12
|
+
created: number;
|
|
13
|
+
updated: number;
|
|
14
|
+
removed: number;
|
|
15
|
+
dir: string;
|
|
16
|
+
};
|
|
17
|
+
claude: {
|
|
18
|
+
created: number;
|
|
19
|
+
updated: number;
|
|
20
|
+
removed: number;
|
|
21
|
+
dirs: string[];
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
export declare function slugFromPlaybook(title: string, id: string): string;
|
|
25
|
+
export declare function buildStubDescription(playbook: PlaybookStubInput): string;
|
|
26
|
+
export declare function buildCursorStubFile(playbook: PlaybookStubInput): string;
|
|
27
|
+
export declare function buildClaudeStubFile(playbook: PlaybookStubInput): string;
|
|
28
|
+
export type StubSyncOptions = {
|
|
29
|
+
cursor?: boolean;
|
|
30
|
+
claude?: boolean;
|
|
31
|
+
};
|
|
32
|
+
export declare function syncPlaybookStubs(workspaceRoot: string, playbooks: PlaybookStubInput[], options?: StubSyncOptions): StubSyncResult;
|
|
33
|
+
export type UseManifest = {
|
|
34
|
+
version: 1;
|
|
35
|
+
deckId: string;
|
|
36
|
+
deckName: string;
|
|
37
|
+
mcpUrl: string;
|
|
38
|
+
updatedAt: string;
|
|
39
|
+
};
|
|
40
|
+
export declare const USE_MANIFEST_PATH = ".agent-deck/use.json";
|
|
41
|
+
export declare function readUseManifest(workspaceRoot: string): UseManifest | null;
|
|
42
|
+
export declare function writeUseManifest(workspaceRoot: string, manifest: UseManifest): string;
|
|
43
|
+
//# sourceMappingURL=playbook-stubs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"playbook-stubs.d.ts","sourceRoot":"","sources":["../src/playbook-stubs.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,wBAAwB,+BAA+B,CAAC;AACrE,eAAO,MAAM,eAAe,iCAAiC,CAAC;AAE9D,eAAO,MAAM,gBAAgB,qBAAqB,CAAC;AACnD,eAAO,MAAM,mBAAmB,gBAAgB,CAAC;AAEjD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3E,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAC/E,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CASlE;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAKxE;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAoBvE;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAoBvE;AA+BD,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,wBAAgB,iBAAiB,CAC/B,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,iBAAiB,EAAE,EAC9B,OAAO,GAAE,eAAoB,GAC5B,cAAc,CAoFhB;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,CAAC,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,iBAAiB,yBAAyB,CAAC;AAExD,wBAAgB,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAczE;AAED,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM,CAIrF"}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.USE_MANIFEST_PATH = exports.CLAUDE_SKILL_PREFIX = exports.CURSOR_STUBS_DIR = exports.STUB_MARKER_END = exports.STUB_MARKER_START_PREFIX = void 0;
|
|
7
|
+
exports.slugFromPlaybook = slugFromPlaybook;
|
|
8
|
+
exports.buildStubDescription = buildStubDescription;
|
|
9
|
+
exports.buildCursorStubFile = buildCursorStubFile;
|
|
10
|
+
exports.buildClaudeStubFile = buildClaudeStubFile;
|
|
11
|
+
exports.syncPlaybookStubs = syncPlaybookStubs;
|
|
12
|
+
exports.readUseManifest = readUseManifest;
|
|
13
|
+
exports.writeUseManifest = writeUseManifest;
|
|
14
|
+
const node_fs_1 = __importDefault(require("node:fs"));
|
|
15
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
16
|
+
exports.STUB_MARKER_START_PREFIX = '<!-- agent-deck:stub:start';
|
|
17
|
+
exports.STUB_MARKER_END = '<!-- agent-deck:stub:end -->';
|
|
18
|
+
exports.CURSOR_STUBS_DIR = 'agent-deck-stubs';
|
|
19
|
+
exports.CLAUDE_SKILL_PREFIX = 'agent-deck-';
|
|
20
|
+
function slugFromPlaybook(title, id) {
|
|
21
|
+
const slug = title
|
|
22
|
+
.toLowerCase()
|
|
23
|
+
.replace(/[^a-z0-9]+/g, '-')
|
|
24
|
+
.replace(/^-+|-+$/g, '');
|
|
25
|
+
if (slug) {
|
|
26
|
+
return slug;
|
|
27
|
+
}
|
|
28
|
+
return id.replace(/^pb_/, '');
|
|
29
|
+
}
|
|
30
|
+
function buildStubDescription(playbook) {
|
|
31
|
+
const fromTriggers = playbook.triggers.map((trigger) => trigger.trim()).filter(Boolean);
|
|
32
|
+
const when = fromTriggers.length > 0 ? fromTriggers.join(', ') : playbook.title.trim() || playbook.id;
|
|
33
|
+
return `Use when the user asks about ${when}. Call get_playbook("${playbook.id}") before improvising.`;
|
|
34
|
+
}
|
|
35
|
+
function buildCursorStubFile(playbook) {
|
|
36
|
+
const description = buildStubDescription(playbook);
|
|
37
|
+
const markerStart = `${exports.STUB_MARKER_START_PREFIX} ${playbook.id} -->`;
|
|
38
|
+
const body = [
|
|
39
|
+
'---',
|
|
40
|
+
`description: ${description}`,
|
|
41
|
+
'alwaysApply: false',
|
|
42
|
+
'---',
|
|
43
|
+
'',
|
|
44
|
+
markerStart,
|
|
45
|
+
`# ${playbook.title}`,
|
|
46
|
+
'',
|
|
47
|
+
'Playbook body lives on the deck — **never** copy procedure steps into this file.',
|
|
48
|
+
'',
|
|
49
|
+
`1. \`bind_workspace\` if needed, then \`get_playbook("${playbook.id}")\` before following steps.`,
|
|
50
|
+
'2. On user correction: `propose_playbook_patch` — `add_item` for gotchas; `amend_item` only for exact list lines; `rewrite_body` for prose (not `update_playbook` unless they directed an edit).',
|
|
51
|
+
exports.STUB_MARKER_END,
|
|
52
|
+
'',
|
|
53
|
+
].join('\n');
|
|
54
|
+
return body;
|
|
55
|
+
}
|
|
56
|
+
function buildClaudeStubFile(playbook) {
|
|
57
|
+
const description = buildStubDescription(playbook);
|
|
58
|
+
const markerStart = `${exports.STUB_MARKER_START_PREFIX} ${playbook.id} -->`;
|
|
59
|
+
const slug = slugFromPlaybook(playbook.title, playbook.id);
|
|
60
|
+
return [
|
|
61
|
+
'---',
|
|
62
|
+
`name: ${exports.CLAUDE_SKILL_PREFIX}${slug}`,
|
|
63
|
+
`description: ${description}`,
|
|
64
|
+
'---',
|
|
65
|
+
'',
|
|
66
|
+
markerStart,
|
|
67
|
+
`# ${playbook.title}`,
|
|
68
|
+
'',
|
|
69
|
+
'Playbook body lives on the deck — **never** copy procedure steps into this file.',
|
|
70
|
+
'',
|
|
71
|
+
`1. \`bind_workspace\` if needed, then \`get_playbook("${playbook.id}")\` before following steps.`,
|
|
72
|
+
'2. On user correction: `propose_playbook_patch` — `add_item` for gotchas; `amend_item` only for exact list lines; `rewrite_body` for prose (not `update_playbook` unless they directed an edit).',
|
|
73
|
+
exports.STUB_MARKER_END,
|
|
74
|
+
'',
|
|
75
|
+
].join('\n');
|
|
76
|
+
}
|
|
77
|
+
function readText(filePath) {
|
|
78
|
+
if (!node_fs_1.default.existsSync(filePath)) {
|
|
79
|
+
return '';
|
|
80
|
+
}
|
|
81
|
+
return node_fs_1.default.readFileSync(filePath, 'utf8');
|
|
82
|
+
}
|
|
83
|
+
function writeText(filePath, content) {
|
|
84
|
+
node_fs_1.default.mkdirSync(node_path_1.default.dirname(filePath), { recursive: true });
|
|
85
|
+
node_fs_1.default.writeFileSync(filePath, content.endsWith('\n') ? content : `${content}\n`, 'utf8');
|
|
86
|
+
}
|
|
87
|
+
function isAgentDeckStub(content) {
|
|
88
|
+
return content.includes(exports.STUB_MARKER_START_PREFIX) && content.includes(exports.STUB_MARKER_END);
|
|
89
|
+
}
|
|
90
|
+
function stubPlaybookId(content) {
|
|
91
|
+
const match = content.match(/<!-- agent-deck:stub:start\s+(\S+)\s+-->/);
|
|
92
|
+
return match?.[1] ?? null;
|
|
93
|
+
}
|
|
94
|
+
function cursorStubPath(stubsDir, playbookId) {
|
|
95
|
+
return node_path_1.default.join(stubsDir, `${playbookId}.mdc`);
|
|
96
|
+
}
|
|
97
|
+
function claudeSkillDir(skillsRoot, playbook) {
|
|
98
|
+
return node_path_1.default.join(skillsRoot, `${exports.CLAUDE_SKILL_PREFIX}${slugFromPlaybook(playbook.title, playbook.id)}`);
|
|
99
|
+
}
|
|
100
|
+
function syncPlaybookStubs(workspaceRoot, playbooks, options = {}) {
|
|
101
|
+
const writeCursor = options.cursor !== false;
|
|
102
|
+
const writeClaude = options.claude !== false;
|
|
103
|
+
const cursorDir = node_path_1.default.join(workspaceRoot, '.cursor', 'rules', exports.CURSOR_STUBS_DIR);
|
|
104
|
+
const claudeSkillsRoot = node_path_1.default.join(workspaceRoot, '.claude', 'skills');
|
|
105
|
+
const result = {
|
|
106
|
+
cursor: { created: 0, updated: 0, removed: 0, dir: cursorDir },
|
|
107
|
+
claude: { created: 0, updated: 0, removed: 0, dirs: [] },
|
|
108
|
+
};
|
|
109
|
+
const expectedCursor = new Set(playbooks.map((playbook) => playbook.id));
|
|
110
|
+
const expectedClaudeDirs = new Set(playbooks.map((playbook) => claudeSkillDir(claudeSkillsRoot, playbook)));
|
|
111
|
+
if (node_fs_1.default.existsSync(cursorDir)) {
|
|
112
|
+
for (const entry of node_fs_1.default.readdirSync(cursorDir)) {
|
|
113
|
+
if (!writeCursor || !entry.endsWith('.mdc')) {
|
|
114
|
+
continue;
|
|
115
|
+
}
|
|
116
|
+
const filePath = node_path_1.default.join(cursorDir, entry);
|
|
117
|
+
const content = readText(filePath);
|
|
118
|
+
if (!isAgentDeckStub(content)) {
|
|
119
|
+
continue;
|
|
120
|
+
}
|
|
121
|
+
const playbookId = stubPlaybookId(content) ?? entry.replace(/\.mdc$/, '');
|
|
122
|
+
if (!expectedCursor.has(playbookId)) {
|
|
123
|
+
node_fs_1.default.unlinkSync(filePath);
|
|
124
|
+
result.cursor.removed += 1;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
if (node_fs_1.default.existsSync(claudeSkillsRoot)) {
|
|
129
|
+
for (const entry of node_fs_1.default.readdirSync(claudeSkillsRoot, { withFileTypes: true })) {
|
|
130
|
+
if (!writeClaude || !entry.isDirectory() || !entry.name.startsWith(exports.CLAUDE_SKILL_PREFIX)) {
|
|
131
|
+
continue;
|
|
132
|
+
}
|
|
133
|
+
const skillDir = node_path_1.default.join(claudeSkillsRoot, entry.name);
|
|
134
|
+
const skillPath = node_path_1.default.join(skillDir, 'SKILL.md');
|
|
135
|
+
const content = readText(skillPath);
|
|
136
|
+
if (!isAgentDeckStub(content)) {
|
|
137
|
+
continue;
|
|
138
|
+
}
|
|
139
|
+
if (!expectedClaudeDirs.has(skillDir)) {
|
|
140
|
+
node_fs_1.default.rmSync(skillDir, { recursive: true, force: true });
|
|
141
|
+
result.claude.removed += 1;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
for (const playbook of playbooks) {
|
|
146
|
+
if (writeCursor) {
|
|
147
|
+
const cursorPath = cursorStubPath(cursorDir, playbook.id);
|
|
148
|
+
const nextCursor = buildCursorStubFile(playbook);
|
|
149
|
+
const prevCursor = readText(cursorPath);
|
|
150
|
+
if (!prevCursor.trim()) {
|
|
151
|
+
writeText(cursorPath, nextCursor);
|
|
152
|
+
result.cursor.created += 1;
|
|
153
|
+
}
|
|
154
|
+
else if (prevCursor !== nextCursor) {
|
|
155
|
+
writeText(cursorPath, nextCursor);
|
|
156
|
+
result.cursor.updated += 1;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
if (writeClaude) {
|
|
160
|
+
const skillDir = claudeSkillDir(claudeSkillsRoot, playbook);
|
|
161
|
+
const skillPath = node_path_1.default.join(skillDir, 'SKILL.md');
|
|
162
|
+
const nextClaude = buildClaudeStubFile(playbook);
|
|
163
|
+
const prevClaude = readText(skillPath);
|
|
164
|
+
if (!prevClaude.trim()) {
|
|
165
|
+
writeText(skillPath, nextClaude);
|
|
166
|
+
result.claude.created += 1;
|
|
167
|
+
result.claude.dirs.push(skillDir);
|
|
168
|
+
}
|
|
169
|
+
else if (prevClaude !== nextClaude) {
|
|
170
|
+
writeText(skillPath, nextClaude);
|
|
171
|
+
result.claude.updated += 1;
|
|
172
|
+
result.claude.dirs.push(skillDir);
|
|
173
|
+
}
|
|
174
|
+
else {
|
|
175
|
+
result.claude.dirs.push(skillDir);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
return result;
|
|
180
|
+
}
|
|
181
|
+
exports.USE_MANIFEST_PATH = '.agent-deck/use.json';
|
|
182
|
+
function readUseManifest(workspaceRoot) {
|
|
183
|
+
const manifestPath = node_path_1.default.join(workspaceRoot, exports.USE_MANIFEST_PATH);
|
|
184
|
+
if (!node_fs_1.default.existsSync(manifestPath)) {
|
|
185
|
+
return null;
|
|
186
|
+
}
|
|
187
|
+
try {
|
|
188
|
+
const parsed = JSON.parse(node_fs_1.default.readFileSync(manifestPath, 'utf8'));
|
|
189
|
+
if (parsed?.version === 1 && typeof parsed.deckId === 'string') {
|
|
190
|
+
return parsed;
|
|
191
|
+
}
|
|
192
|
+
return null;
|
|
193
|
+
}
|
|
194
|
+
catch {
|
|
195
|
+
return null;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
function writeUseManifest(workspaceRoot, manifest) {
|
|
199
|
+
const manifestPath = node_path_1.default.join(workspaceRoot, exports.USE_MANIFEST_PATH);
|
|
200
|
+
writeText(manifestPath, JSON.stringify(manifest, null, 2));
|
|
201
|
+
return manifestPath;
|
|
202
|
+
}
|
|
203
|
+
//# sourceMappingURL=playbook-stubs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"playbook-stubs.js","sourceRoot":"","sources":["../src/playbook-stubs.ts"],"names":[],"mappings":"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"}
|
package/dist/use.d.ts
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { type McpClient } from './mcp-config';
|
|
2
|
+
import { type StubSyncResult } from './playbook-stubs';
|
|
3
|
+
export type UseClientTarget = 'cursor' | 'claude' | 'both';
|
|
4
|
+
export interface UseOptions {
|
|
5
|
+
deckRef?: string;
|
|
6
|
+
refresh: boolean;
|
|
7
|
+
clients: UseClientTarget;
|
|
8
|
+
host: string;
|
|
9
|
+
mcpPort: number;
|
|
10
|
+
skipMcp: boolean;
|
|
11
|
+
workspaceRoot: string;
|
|
12
|
+
}
|
|
13
|
+
export type UseResult = {
|
|
14
|
+
deck: {
|
|
15
|
+
id: string;
|
|
16
|
+
name: string;
|
|
17
|
+
};
|
|
18
|
+
mcpUrl: string;
|
|
19
|
+
manifestPath: string;
|
|
20
|
+
mcp: Array<{
|
|
21
|
+
client: McpClient;
|
|
22
|
+
path: string;
|
|
23
|
+
}>;
|
|
24
|
+
stubs: StubSyncResult;
|
|
25
|
+
playbookCount: number;
|
|
26
|
+
};
|
|
27
|
+
export declare function parseUseArgs(args: string[]): UseOptions | {
|
|
28
|
+
error: string;
|
|
29
|
+
};
|
|
30
|
+
export declare function runUse(parsed: UseOptions): Promise<UseResult | {
|
|
31
|
+
error: string;
|
|
32
|
+
}>;
|
|
33
|
+
export declare function formatUseSummary(result: UseResult): string;
|
|
34
|
+
export declare function runUseCommand(args: string[]): Promise<number>;
|
|
35
|
+
//# sourceMappingURL=use.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use.d.ts","sourceRoot":"","sources":["../src/use.ts"],"names":[],"mappings":"AAIA,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE3D,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,eAAe,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChD,KAAK,EAAE,cAAc,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAYF,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAoD3E;AAYD,wBAAsB,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAyDvF;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAgB1D;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAwBnE"}
|
package/dist/use.js
ADDED
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.parseUseArgs = parseUseArgs;
|
|
7
|
+
exports.runUse = runUse;
|
|
8
|
+
exports.formatUseSummary = formatUseSummary;
|
|
9
|
+
exports.runUseCommand = runUseCommand;
|
|
10
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
11
|
+
const backend_runtime_1 = require("./backend-runtime");
|
|
12
|
+
const defaults_1 = require("./defaults");
|
|
13
|
+
const mcp_config_1 = require("./mcp-config");
|
|
14
|
+
const playbook_stubs_1 = require("./playbook-stubs");
|
|
15
|
+
function parseUseClient(value) {
|
|
16
|
+
if (!value || value === 'both') {
|
|
17
|
+
return 'both';
|
|
18
|
+
}
|
|
19
|
+
if (value === 'cursor' || value === 'claude') {
|
|
20
|
+
return value;
|
|
21
|
+
}
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
function parseUseArgs(args) {
|
|
25
|
+
let deckRef;
|
|
26
|
+
let refresh = false;
|
|
27
|
+
let clients = 'both';
|
|
28
|
+
let host = process.env.AGENT_DECK_HOST ?? '127.0.0.1';
|
|
29
|
+
let mcpPort = (0, defaults_1.parseCliMcpPort)(process.env.AGENT_DECK_MCP_PORT);
|
|
30
|
+
let skipMcp = false;
|
|
31
|
+
for (let i = 0; i < args.length; i += 1) {
|
|
32
|
+
const arg = args[i];
|
|
33
|
+
if (arg === '--refresh') {
|
|
34
|
+
refresh = true;
|
|
35
|
+
}
|
|
36
|
+
else if (arg === '--client') {
|
|
37
|
+
const parsed = parseUseClient(args[++i]);
|
|
38
|
+
if (!parsed) {
|
|
39
|
+
return { error: '--client must be cursor, claude, or both' };
|
|
40
|
+
}
|
|
41
|
+
clients = parsed;
|
|
42
|
+
}
|
|
43
|
+
else if (arg === '--host') {
|
|
44
|
+
host = args[++i] ?? host;
|
|
45
|
+
}
|
|
46
|
+
else if (arg === '--mcp-port') {
|
|
47
|
+
mcpPort = Number.parseInt(args[++i] ?? '', 10);
|
|
48
|
+
}
|
|
49
|
+
else if (arg === '--no-mcp') {
|
|
50
|
+
skipMcp = true;
|
|
51
|
+
}
|
|
52
|
+
else if (arg === '--help' || arg === '-h') {
|
|
53
|
+
return { error: 'help' };
|
|
54
|
+
}
|
|
55
|
+
else if (arg.startsWith('-')) {
|
|
56
|
+
return { error: `Unknown use option: ${arg}` };
|
|
57
|
+
}
|
|
58
|
+
else if (!deckRef) {
|
|
59
|
+
deckRef = arg;
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
return { error: `Unexpected argument: ${arg}` };
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
if (!refresh && !deckRef) {
|
|
66
|
+
return { error: 'deck name or id is required (or pass --refresh)' };
|
|
67
|
+
}
|
|
68
|
+
if (!Number.isFinite(mcpPort)) {
|
|
69
|
+
return { error: '--mcp-port must be a number' };
|
|
70
|
+
}
|
|
71
|
+
return {
|
|
72
|
+
deckRef,
|
|
73
|
+
refresh,
|
|
74
|
+
clients,
|
|
75
|
+
host,
|
|
76
|
+
mcpPort,
|
|
77
|
+
skipMcp,
|
|
78
|
+
workspaceRoot: process.cwd(),
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
function clientsToWrite(target) {
|
|
82
|
+
if (target === 'cursor') {
|
|
83
|
+
return ['cursor'];
|
|
84
|
+
}
|
|
85
|
+
if (target === 'claude') {
|
|
86
|
+
return ['claude'];
|
|
87
|
+
}
|
|
88
|
+
return ['cursor', 'claude'];
|
|
89
|
+
}
|
|
90
|
+
async function runUse(parsed) {
|
|
91
|
+
const admin = (0, backend_runtime_1.createCollectionAdmin)();
|
|
92
|
+
let deckRef = parsed.deckRef;
|
|
93
|
+
if (parsed.refresh) {
|
|
94
|
+
const manifest = (0, playbook_stubs_1.readUseManifest)(parsed.workspaceRoot);
|
|
95
|
+
if (!manifest) {
|
|
96
|
+
return { error: 'No .agent-deck/use.json — run agent-deck use <deck> first' };
|
|
97
|
+
}
|
|
98
|
+
deckRef = manifest.deckId;
|
|
99
|
+
}
|
|
100
|
+
if (!deckRef) {
|
|
101
|
+
return { error: 'deck name or id is required' };
|
|
102
|
+
}
|
|
103
|
+
const deck = await admin.resolveDeck(deckRef);
|
|
104
|
+
if (!deck) {
|
|
105
|
+
return { error: `Deck not found: ${deckRef}` };
|
|
106
|
+
}
|
|
107
|
+
const playbooks = await admin.listDeckPlaybookStubs(deck.id);
|
|
108
|
+
const endpoint = { host: parsed.host, mcpPort: parsed.mcpPort };
|
|
109
|
+
const mcpUrl = (0, mcp_config_1.buildMcpUrl)(endpoint);
|
|
110
|
+
const mcpWritten = [];
|
|
111
|
+
if (!parsed.skipMcp) {
|
|
112
|
+
for (const client of clientsToWrite(parsed.clients)) {
|
|
113
|
+
const configPath = (0, mcp_config_1.resolveConfigPath)(client, 'project', parsed.workspaceRoot);
|
|
114
|
+
const entry = (0, mcp_config_1.buildAgentDeckEntry)(client, endpoint);
|
|
115
|
+
const merged = (0, mcp_config_1.mergeMcpServerConfig)((0, mcp_config_1.readJsonFile)(configPath), entry);
|
|
116
|
+
(0, mcp_config_1.writeJsonFile)(configPath, merged);
|
|
117
|
+
mcpWritten.push({ client, path: configPath });
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
const manifestPath = (0, playbook_stubs_1.writeUseManifest)(parsed.workspaceRoot, {
|
|
121
|
+
version: 1,
|
|
122
|
+
deckId: deck.id,
|
|
123
|
+
deckName: deck.name,
|
|
124
|
+
mcpUrl,
|
|
125
|
+
updatedAt: new Date().toISOString(),
|
|
126
|
+
});
|
|
127
|
+
const stubs = (0, playbook_stubs_1.syncPlaybookStubs)(parsed.workspaceRoot, playbooks, {
|
|
128
|
+
cursor: parsed.clients !== 'claude',
|
|
129
|
+
claude: parsed.clients !== 'cursor',
|
|
130
|
+
});
|
|
131
|
+
return {
|
|
132
|
+
deck,
|
|
133
|
+
mcpUrl,
|
|
134
|
+
manifestPath,
|
|
135
|
+
mcp: mcpWritten,
|
|
136
|
+
stubs,
|
|
137
|
+
playbookCount: playbooks.length,
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
function formatUseSummary(result) {
|
|
141
|
+
const lines = [
|
|
142
|
+
`Deck "${result.deck.name}" (${result.deck.id})`,
|
|
143
|
+
`Manifest → ${result.manifestPath}`,
|
|
144
|
+
`MCP → ${result.mcpUrl}`,
|
|
145
|
+
];
|
|
146
|
+
for (const entry of result.mcp) {
|
|
147
|
+
lines.push(` ${entry.client}: ${entry.path}`);
|
|
148
|
+
}
|
|
149
|
+
lines.push(`Stubs: ${result.playbookCount} playbook(s) — cursor +${result.stubs.cursor.created} ~${result.stubs.cursor.updated} -${result.stubs.cursor.removed}; claude +${result.stubs.claude.created} ~${result.stubs.claude.updated} -${result.stubs.claude.removed}`);
|
|
150
|
+
lines.push(`Cursor stubs → ${node_path_1.default.join('.cursor', 'rules', 'agent-deck-stubs')}`);
|
|
151
|
+
lines.push(`Claude stubs → ${node_path_1.default.join('.claude', 'skills', 'agent-deck-<slug>')}`);
|
|
152
|
+
lines.push('Restart the IDE host so MCP and stub discovery reload.');
|
|
153
|
+
return lines.join('\n');
|
|
154
|
+
}
|
|
155
|
+
async function runUseCommand(args) {
|
|
156
|
+
const parsed = parseUseArgs(args);
|
|
157
|
+
if ('error' in parsed) {
|
|
158
|
+
if (parsed.error === 'help') {
|
|
159
|
+
console.log(`Usage:
|
|
160
|
+
agent-deck use <deck> [--client cursor|claude|both] [--host HOST] [--mcp-port PORT] [--no-mcp]
|
|
161
|
+
agent-deck use --refresh
|
|
162
|
+
|
|
163
|
+
Writes project MCP config (one agent-deck entry), .agent-deck/use.json, and thin playbook trigger stubs.
|
|
164
|
+
Bodies stay on the deck — stubs are pointers only.`);
|
|
165
|
+
return 0;
|
|
166
|
+
}
|
|
167
|
+
console.error(parsed.error);
|
|
168
|
+
return 1;
|
|
169
|
+
}
|
|
170
|
+
const result = await runUse(parsed);
|
|
171
|
+
if ('error' in result) {
|
|
172
|
+
console.error(result.error);
|
|
173
|
+
return 1;
|
|
174
|
+
}
|
|
175
|
+
console.log(formatUseSummary(result));
|
|
176
|
+
return 0;
|
|
177
|
+
}
|
|
178
|
+
//# sourceMappingURL=use.js.map
|
package/dist/use.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use.js","sourceRoot":"","sources":["../src/use.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agent-deck/cli",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.1",
|
|
4
4
|
"description": "Local MCP proxy — decks of tools, keys, and self-improving playbooks",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"bin": {
|
|
@@ -40,8 +40,8 @@
|
|
|
40
40
|
"prepublishOnly": "node ../../scripts/pre-publish-check.mjs && npm run build"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@agent-deck/backend": "^1.
|
|
44
|
-
"@agent-deck/shared": "^1.
|
|
43
|
+
"@agent-deck/backend": "^1.4.1",
|
|
44
|
+
"@agent-deck/shared": "^1.4.1"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
47
|
"@types/node": "^20.11.5",
|