@ranimontagna/agent-toolkit 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -102,9 +102,13 @@ Run the published package directly:
102
102
  npx -y @ranimontagna/agent-toolkit
103
103
  ```
104
104
 
105
- Interactive runs ask which tools, runtimes and skill scopes to install. Pressing
106
- Enter does not silently install the full kit; choose `all` explicitly when that
107
- is what you want.
105
+ Interactive runs show detected local status before installation, including
106
+ runtime CLIs on `PATH` and already-copied Custom Skills when those can be
107
+ verified. They ask which tools, runtimes and skill scopes to install, then show
108
+ an install plan and ask for confirmation. Pressing Enter does not silently
109
+ install the full kit; choose `all` explicitly when that is what you want.
110
+ Interactive terminals use a visual Clack menu. Pipe answers or set
111
+ `AGENT_TOOLKIT_MENU=plain` to use the line-based fallback.
108
112
 
109
113
  Run the full kit for Codex in one command:
110
114
 
@@ -234,6 +238,7 @@ SKILLS_CLI_PACKAGE npm package used for third-party skill installs
234
238
  GSD_SCOPE global or local
235
239
  TOOLS_LOCK_PATH External tool provenance lock path
236
240
  ALLOW_MUTABLE_SOURCES Set to 1 to allow mutable source overrides
241
+ AGENT_TOOLKIT_MENU Set to plain to force the line-based interactive menu
237
242
  CUSTOM_SKILLS_DIR Source directory for custom skills
238
243
  SKILLS_SCOPE Comma-separated skill scope filters
239
244
  CLAUDE_CLI_PACKAGE npm package used to install Claude Code CLI
@@ -418,8 +423,8 @@ Release a new npm version by updating `package.json`, pushing the change to
418
423
  `main`, then pushing a matching tag:
419
424
 
420
425
  ```bash
421
- git tag v0.1.1
422
- git push origin v0.1.1
426
+ git tag v0.1.3
427
+ git push origin v0.1.3
423
428
  ```
424
429
 
425
430
  The `Release` workflow runs the full check and publishes the scoped package to
@@ -1 +1,29 @@
1
+ type ClackOption = {
2
+ value: string;
3
+ label: string;
4
+ hint?: string;
5
+ };
6
+ export type ClackMenuApi = {
7
+ intro(message: string): void;
8
+ outro(message: string): void;
9
+ cancel(message: string): void;
10
+ note?(message: string, title?: string): void;
11
+ isCancel(value: unknown): boolean;
12
+ multiselect(options: {
13
+ message: string;
14
+ options: ClackOption[];
15
+ required?: boolean;
16
+ }): Promise<unknown>;
17
+ select(options: {
18
+ message: string;
19
+ options: ClackOption[];
20
+ initialValue?: string;
21
+ }): Promise<unknown>;
22
+ confirm(options: {
23
+ message: string;
24
+ initialValue?: boolean;
25
+ }): Promise<unknown>;
26
+ };
27
+ export declare function runClackMenu(api: ClackMenuApi): Promise<void>;
1
28
  export declare function showMenu(): Promise<void>;
29
+ export {};
package/dist/src/menu.js CHANGED
@@ -1,14 +1,23 @@
1
1
  import fs from "node:fs";
2
2
  import { createInterface } from "node:readline/promises";
3
+ import * as clack from "@clack/prompts";
3
4
  import { die } from "./logger.js";
4
5
  import { availableSkillScopes, discoverSkillDirs } from "./skills.js";
5
6
  import { isRuntimeName, isToolName, setAllRuntimes, setAllTools, splitList, state, } from "./state.js";
7
+ import { detectInstallerStatus, detectionHint, formatDetectedStatus, formatInstallPlan, } from "./status.js";
6
8
  import { usage } from "./usage.js";
7
- function selectToolsFromAnswer(answer) {
9
+ function valueOrCancel(api, value) {
10
+ if (api.isCancel(value)) {
11
+ api.cancel("Operation cancelled.");
12
+ die("Operation cancelled.");
13
+ }
14
+ return value;
15
+ }
16
+ function selectTools(tools) {
8
17
  setAllTools(false);
9
- if (!answer.trim())
18
+ if (tools.length === 0)
10
19
  die("Select at least one tool.");
11
- for (const tool of splitList(answer)) {
20
+ for (const tool of tools) {
12
21
  if (tool === "all") {
13
22
  setAllTools(true);
14
23
  return;
@@ -18,11 +27,16 @@ function selectToolsFromAnswer(answer) {
18
27
  state.tools[tool] = true;
19
28
  }
20
29
  }
21
- function selectRuntimesFromAnswer(answer) {
22
- setAllRuntimes(false);
30
+ function selectToolsFromAnswer(answer) {
23
31
  if (!answer.trim())
32
+ die("Select at least one tool.");
33
+ selectTools(splitList(answer));
34
+ }
35
+ function selectRuntimes(runtimes) {
36
+ setAllRuntimes(false);
37
+ if (runtimes.length === 0)
24
38
  die("Select at least one runtime.");
25
- for (const runtime of splitList(answer)) {
39
+ for (const runtime of runtimes) {
26
40
  if (runtime === "all") {
27
41
  setAllRuntimes(true);
28
42
  return;
@@ -32,6 +46,11 @@ function selectRuntimesFromAnswer(answer) {
32
46
  state.runtimes[runtime] = true;
33
47
  }
34
48
  }
49
+ function selectRuntimesFromAnswer(answer) {
50
+ if (!answer.trim())
51
+ die("Select at least one runtime.");
52
+ selectRuntimes(splitList(answer));
53
+ }
35
54
  function selectScopeFromAnswer(answer) {
36
55
  if (!answer.trim())
37
56
  return;
@@ -40,10 +59,15 @@ function selectScopeFromAnswer(answer) {
40
59
  die(`Unknown install scope: ${scope}`);
41
60
  state.gsdScope = scope;
42
61
  }
62
+ function selectSkillScopes(scopes) {
63
+ if (scopes.length === 0 || scopes.includes("all"))
64
+ return;
65
+ state.skillScopes.push(...scopes);
66
+ }
43
67
  function selectSkillScopesFromAnswer(answer) {
44
- if (!answer.trim() || answer.trim().toLowerCase() === "all")
68
+ if (!answer.trim())
45
69
  return;
46
- state.skillScopes.push(...splitList(answer));
70
+ selectSkillScopes(splitList(answer));
47
71
  }
48
72
  function printAvailableSkillScopes() {
49
73
  const skillDirs = discoverSkillDirs();
@@ -64,19 +88,140 @@ function applyMenuAnswers(answers) {
64
88
  selectSkillScopesFromAnswer(answers[4] ?? "");
65
89
  }
66
90
  }
67
- export async function showMenu() {
68
- if (!process.stdin.isTTY || !process.stdout.isTTY) {
69
- const raw = fs.readFileSync(0, "utf8");
70
- if (!raw.trim()) {
71
- die("No interactive terminal detected. Pass --all/--*-only flags or pipe menu answers.");
72
- }
73
- applyMenuAnswers(raw.split(/\r?\n/));
74
- return;
91
+ function toolOptions(status) {
92
+ return [
93
+ { value: "all", label: "All tools", hint: "full toolkit" },
94
+ {
95
+ value: "rtk",
96
+ label: "RTK",
97
+ hint: detectionHint(status.tools.rtk, "token-aware shell proxy"),
98
+ },
99
+ {
100
+ value: "caveman",
101
+ label: "Caveman",
102
+ hint: detectionHint(status.tools.caveman, "terse response modes"),
103
+ },
104
+ {
105
+ value: "superpowers",
106
+ label: "Superpowers",
107
+ hint: detectionHint(status.tools.superpowers, "planning and delivery workflows"),
108
+ },
109
+ {
110
+ value: "graphify",
111
+ label: "Graphify",
112
+ hint: detectionHint(status.tools.graphify, "knowledge graph workflow"),
113
+ },
114
+ {
115
+ value: "gsd",
116
+ label: "GSD",
117
+ hint: detectionHint(status.tools.gsd, "phase-based project control"),
118
+ },
119
+ {
120
+ value: "frontend-skills",
121
+ label: "Frontend Skills",
122
+ hint: detectionHint(status.tools["frontend-skills"], "third-party design skills"),
123
+ },
124
+ {
125
+ value: "skills",
126
+ label: "Custom Skills",
127
+ hint: detectionHint(status.tools.skills, "bundled personal skills"),
128
+ },
129
+ ];
130
+ }
131
+ function runtimeOptions(status) {
132
+ return [
133
+ { value: "all", label: "All runtimes" },
134
+ {
135
+ value: "claude",
136
+ label: "Claude Code",
137
+ hint: detectionHint(status.runtimes.claude, "runtime CLI"),
138
+ },
139
+ {
140
+ value: "codex",
141
+ label: "Codex CLI",
142
+ hint: detectionHint(status.runtimes.codex, "runtime CLI"),
143
+ },
144
+ {
145
+ value: "opencode",
146
+ label: "OpenCode",
147
+ hint: detectionHint(status.runtimes.opencode, "runtime CLI"),
148
+ },
149
+ {
150
+ value: "gemini",
151
+ label: "Gemini CLI",
152
+ hint: detectionHint(status.runtimes.gemini, "runtime CLI"),
153
+ },
154
+ ];
155
+ }
156
+ function scopeOptions() {
157
+ return [
158
+ { value: "global", label: "Global", hint: "user config directories" },
159
+ { value: "local", label: "Local", hint: "current project" },
160
+ ];
161
+ }
162
+ function skillScopeOptions() {
163
+ return [
164
+ { value: "all", label: "All skill scopes" },
165
+ ...availableSkillScopes(discoverSkillDirs()).map((scope) => ({
166
+ value: scope,
167
+ label: scope,
168
+ })),
169
+ ];
170
+ }
171
+ export async function runClackMenu(api) {
172
+ api.intro("Agent Toolkit");
173
+ const status = detectInstallerStatus();
174
+ api.note?.(formatDetectedStatus(status), "Detected status");
175
+ const tools = valueOrCancel(api, await api.multiselect({
176
+ message: "Select tools to install",
177
+ options: toolOptions(status),
178
+ required: true,
179
+ }));
180
+ selectTools(tools);
181
+ const runtimes = valueOrCancel(api, await api.multiselect({
182
+ message: "Select runtimes to target",
183
+ options: runtimeOptions(status),
184
+ required: true,
185
+ }));
186
+ selectRuntimes(runtimes);
187
+ const installScope = valueOrCancel(api, await api.select({
188
+ message: "Choose install scope",
189
+ options: scopeOptions(),
190
+ initialValue: state.gsdScope,
191
+ }));
192
+ selectScopeFromAnswer(installScope);
193
+ state.installMissingClis = valueOrCancel(api, await api.confirm({
194
+ message: "Install missing selected CLIs via npm?",
195
+ initialValue: false,
196
+ }));
197
+ if (state.tools.skills) {
198
+ const scopes = valueOrCancel(api, await api.multiselect({
199
+ message: "Select Custom Skill scopes",
200
+ options: skillScopeOptions(),
201
+ required: true,
202
+ }));
203
+ selectSkillScopes(scopes);
75
204
  }
205
+ api.note?.(formatInstallPlan(status), "Install plan");
206
+ const shouldContinue = valueOrCancel(api, await api.confirm({
207
+ message: "Continue with installation?",
208
+ initialValue: true,
209
+ }));
210
+ if (!shouldContinue) {
211
+ api.cancel("Installation cancelled.");
212
+ die("Installation cancelled.");
213
+ }
214
+ api.outro("Ready to install.");
215
+ }
216
+ async function showReadlineMenu() {
76
217
  const rl = createInterface({ input: process.stdin, output: process.stdout });
77
218
  try {
219
+ const status = detectInstallerStatus();
78
220
  console.log(usage());
79
221
  console.log("");
222
+ console.log("Detected status");
223
+ console.log(formatDetectedStatus(status));
224
+ console.log("");
80
225
  const toolsAnswer = await rl.question("Tools to install [comma list: rtk,caveman,superpowers,graphify,gsd,frontend-skills,skills, or all]: ");
81
226
  selectToolsFromAnswer(toolsAnswer);
82
227
  const runtimeAnswer = await rl.question("Runtimes to target [comma list: claude,codex,opencode,gemini, or all]: ");
@@ -90,9 +235,31 @@ export async function showMenu() {
90
235
  const scopeAnswer = await rl.question("Skill scopes to install [comma list, all, default all]: ");
91
236
  selectSkillScopesFromAnswer(scopeAnswer);
92
237
  }
238
+ console.log("");
239
+ console.log("Install plan");
240
+ console.log(formatInstallPlan(status));
241
+ const continueAnswer = await rl.question("Continue with installation? [Y/n]: ");
242
+ if (/^n(o)?$/i.test(continueAnswer.trim())) {
243
+ die("Installation cancelled.");
244
+ }
93
245
  }
94
246
  finally {
95
247
  rl.close();
96
248
  }
97
249
  }
250
+ export async function showMenu() {
251
+ if (!process.stdin.isTTY || !process.stdout.isTTY) {
252
+ const raw = fs.readFileSync(0, "utf8");
253
+ if (!raw.trim()) {
254
+ die("No interactive terminal detected. Pass --all/--*-only flags or pipe menu answers.");
255
+ }
256
+ applyMenuAnswers(raw.split(/\r?\n/));
257
+ return;
258
+ }
259
+ if (process.env.AGENT_TOOLKIT_MENU === "plain") {
260
+ await showReadlineMenu();
261
+ return;
262
+ }
263
+ await runClackMenu(clack);
264
+ }
98
265
  //# sourceMappingURL=menu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"menu.js","sourceRoot":"","sources":["../../src/menu.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"menu.js","sourceRoot":"","sources":["../../src/menu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EACL,aAAa,EACb,UAAU,EACV,cAAc,EACd,WAAW,EACX,SAAS,EACT,KAAK,GACN,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EACpB,iBAAiB,GAElB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AA8BnC,SAAS,aAAa,CAAI,GAAiB,EAAE,KAAc;IACzD,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,GAAG,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;QACnC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,KAAU,CAAC;AACpB,CAAC;AAED,SAAS,WAAW,CAAC,KAAe;IAClC,WAAW,CAAC,KAAK,CAAC,CAAC;IACnB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,GAAG,CAAC,2BAA2B,CAAC,CAAC;IAEzD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACnB,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,GAAG,CAAC,mCAAmC,IAAI,EAAE,CAAC,CAAC;QACtE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAc;IAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;QAAE,GAAG,CAAC,2BAA2B,CAAC,CAAC;IACrD,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,cAAc,CAAC,QAAkB;IACxC,cAAc,CAAC,KAAK,CAAC,CAAC;IACtB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAE/D,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;YACtB,cAAc,CAAC,IAAI,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;YACzB,GAAG,CAAC,sCAAsC,OAAO,EAAE,CAAC,CAAC;QACvD,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IACjC,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAAC,MAAc;IAC9C,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;QAAE,GAAG,CAAC,8BAA8B,CAAC,CAAC;IACxD,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAc;IAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;QAAE,OAAO;IAE3B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC1C,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,OAAO;QACzC,GAAG,CAAC,0BAA0B,KAAK,EAAE,CAAC,CAAC;IACzC,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC;AACzB,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAgB;IACzC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO;IAC1D,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,2BAA2B,CAAC,MAAc;IACjD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;QAAE,OAAO;IAC3B,iBAAiB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,yBAAyB;IAChC,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC;IACtC,MAAM,MAAM,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAC/C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEhC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACvC,KAAK,MAAM,KAAK,IAAI,MAAM;QAAE,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAiB;IACzC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3C,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,KAAK,CAAC,kBAAkB,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAEvE,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACvB,2BAA2B,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,MAAuB;IAC1C,OAAO;QACL,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,cAAc,EAAE;QAC1D;YACE,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,KAAK;YACZ,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,yBAAyB,CAAC;SACjE;QACD;YACE,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,sBAAsB,CAAC;SAClE;QACD;YACE,KAAK,EAAE,aAAa;YACpB,KAAK,EAAE,aAAa;YACpB,IAAI,EAAE,aAAa,CACjB,MAAM,CAAC,KAAK,CAAC,WAAW,EACxB,iCAAiC,CAClC;SACF;QACD;YACE,KAAK,EAAE,UAAU;YACjB,KAAK,EAAE,UAAU;YACjB,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,0BAA0B,CAAC;SACvE;QACD;YACE,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,KAAK;YACZ,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,6BAA6B,CAAC;SACrE;QACD;YACE,KAAK,EAAE,iBAAiB;YACxB,KAAK,EAAE,iBAAiB;YACxB,IAAI,EAAE,aAAa,CACjB,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAC/B,2BAA2B,CAC5B;SACF;QACD;YACE,KAAK,EAAE,QAAQ;YACf,KAAK,EAAE,eAAe;YACtB,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,yBAAyB,CAAC;SACpE;KACF,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,MAAuB;IAC7C,OAAO;QACL,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE;QACvC;YACE,KAAK,EAAE,QAAQ;YACf,KAAK,EAAE,aAAa;YACpB,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;SAC3D;QACD;YACE,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;SAC1D;QACD;YACE,KAAK,EAAE,UAAU;YACjB,KAAK,EAAE,UAAU;YACjB,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;SAC7D;QACD;YACE,KAAK,EAAE,QAAQ;YACf,KAAK,EAAE,YAAY;YACnB,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;SAC3D;KACF,CAAC;AACJ,CAAC;AAED,SAAS,YAAY;IACnB,OAAO;QACL,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,yBAAyB,EAAE;QACrE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE;KAC5D,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB;IACxB,OAAO;QACL,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE;QAC3C,GAAG,oBAAoB,CAAC,iBAAiB,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC3D,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAiB;IAClD,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAC3B,MAAM,MAAM,GAAG,qBAAqB,EAAE,CAAC;IACvC,GAAG,CAAC,IAAI,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,iBAAiB,CAAC,CAAC;IAE5D,MAAM,KAAK,GAAG,aAAa,CACzB,GAAG,EACH,MAAM,GAAG,CAAC,WAAW,CAAC;QACpB,OAAO,EAAE,yBAAyB;QAClC,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC;QAC5B,QAAQ,EAAE,IAAI;KACf,CAAC,CACH,CAAC;IACF,WAAW,CAAC,KAAK,CAAC,CAAC;IAEnB,MAAM,QAAQ,GAAG,aAAa,CAC5B,GAAG,EACH,MAAM,GAAG,CAAC,WAAW,CAAC;QACpB,OAAO,EAAE,2BAA2B;QACpC,OAAO,EAAE,cAAc,CAAC,MAAM,CAAC;QAC/B,QAAQ,EAAE,IAAI;KACf,CAAC,CACH,CAAC;IACF,cAAc,CAAC,QAAQ,CAAC,CAAC;IAEzB,MAAM,YAAY,GAAG,aAAa,CAChC,GAAG,EACH,MAAM,GAAG,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,sBAAsB;QAC/B,OAAO,EAAE,YAAY,EAAE;QACvB,YAAY,EAAE,KAAK,CAAC,QAAQ;KAC7B,CAAC,CACH,CAAC;IACF,qBAAqB,CAAC,YAAY,CAAC,CAAC;IAEpC,KAAK,CAAC,kBAAkB,GAAG,aAAa,CACtC,GAAG,EACH,MAAM,GAAG,CAAC,OAAO,CAAC;QAChB,OAAO,EAAE,wCAAwC;QACjD,YAAY,EAAE,KAAK;KACpB,CAAC,CACH,CAAC;IAEF,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,aAAa,CAC1B,GAAG,EACH,MAAM,GAAG,CAAC,WAAW,CAAC;YACpB,OAAO,EAAE,4BAA4B;YACrC,OAAO,EAAE,iBAAiB,EAAE;YAC5B,QAAQ,EAAE,IAAI;SACf,CAAC,CACH,CAAC;QACF,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,GAAG,CAAC,IAAI,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC,CAAC;IACtD,MAAM,cAAc,GAAG,aAAa,CAClC,GAAG,EACH,MAAM,GAAG,CAAC,OAAO,CAAC;QAChB,OAAO,EAAE,6BAA6B;QACtC,YAAY,EAAE,IAAI;KACnB,CAAC,CACH,CAAC;IACF,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,GAAG,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;QACtC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACjC,CAAC;IAED,GAAG,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;AACjC,CAAC;AAED,KAAK,UAAU,gBAAgB;IAC7B,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7E,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,qBAAqB,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,QAAQ,CACnC,sGAAsG,CACvG,CAAC;QACF,qBAAqB,CAAC,WAAW,CAAC,CAAC;QAEnC,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC,QAAQ,CACrC,yEAAyE,CAC1E,CAAC;QACF,wBAAwB,CAAC,aAAa,CAAC,CAAC;QAExC,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,QAAQ,CACnC,gDAAgD,CACjD,CAAC;QACF,qBAAqB,CAAC,WAAW,CAAC,CAAC;QAEnC,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,QAAQ,CACjC,gDAAgD,CACjD,CAAC;QACF,KAAK,CAAC,kBAAkB,GAAG,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAE9D,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACvB,yBAAyB,EAAE,CAAC;YAC5B,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,QAAQ,CACnC,0DAA0D,CAC3D,CAAC;YACF,2BAA2B,CAAC,WAAW,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;QACvC,MAAM,cAAc,GAAG,MAAM,EAAE,CAAC,QAAQ,CACtC,qCAAqC,CACtC,CAAC;QACF,IAAI,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YAC3C,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ;IAC5B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClD,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACvC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;YAChB,GAAG,CACD,mFAAmF,CACpF,CAAC;QACJ,CAAC;QACD,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QACrC,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,KAAK,OAAO,EAAE,CAAC;QAC/C,MAAM,gBAAgB,EAAE,CAAC;QACzB,OAAO;IACT,CAAC;IAED,MAAM,YAAY,CAAC,KAAK,CAAC,CAAC;AAC5B,CAAC"}
@@ -1,11 +1,15 @@
1
+ import { type RuntimeName } from "./state.js";
1
2
  type SkillMetadata = Record<string, string>;
2
3
  type SkillMetadataResult = {
3
4
  metadata: SkillMetadata;
4
5
  } | {
5
6
  error: string;
6
7
  };
8
+ export declare function skillsTargetDir(runtime: RuntimeName): string;
7
9
  export declare function parseSkillMetadata(filePath: string): SkillMetadataResult;
10
+ export declare function skillRelativePath(skillDir: string): string;
8
11
  export declare function discoverSkillDirs(): string[];
12
+ export declare function selectedSkillDirs(): string[];
9
13
  export declare function availableSkillScopes(skillDirs: string[]): string[];
10
14
  export declare function listCustomSkills(): boolean;
11
15
  export declare function installCustomSkills(): boolean;
@@ -16,7 +16,7 @@ function opencodeConfigDir() {
16
16
  function geminiConfigDir() {
17
17
  return process.env.GEMINI_CONFIG_DIR || path.join(HOME, ".gemini");
18
18
  }
19
- function skillsTargetDir(runtime) {
19
+ export function skillsTargetDir(runtime) {
20
20
  if (state.gsdScope === "local") {
21
21
  return path.join(process.cwd(), `.${runtime}`, "skills");
22
22
  }
@@ -93,7 +93,7 @@ function validateSkillDir(skillDir) {
93
93
  }
94
94
  return true;
95
95
  }
96
- function skillRelativePath(skillDir) {
96
+ export function skillRelativePath(skillDir) {
97
97
  return path.relative(state.customSkillsDir, skillDir).replace(/\\/g, "/");
98
98
  }
99
99
  export function discoverSkillDirs() {
@@ -129,6 +129,9 @@ function filterSkillDirsByScope(skillDirs) {
129
129
  return skillDirs;
130
130
  return skillDirs.filter((skillDir) => scopes.some((scope) => skillMatchesScope(skillDir, scope)));
131
131
  }
132
+ export function selectedSkillDirs() {
133
+ return filterSkillDirsByScope(discoverSkillDirs());
134
+ }
132
135
  export function availableSkillScopes(skillDirs) {
133
136
  const scopes = new Set();
134
137
  for (const skillDir of skillDirs) {
@@ -221,7 +224,7 @@ export function installCustomSkills() {
221
224
  warn(`Skills directory not found: ${state.customSkillsDir}`);
222
225
  return true;
223
226
  }
224
- const skillDirs = filterSkillDirsByScope(discoverSkillDirs());
227
+ const skillDirs = selectedSkillDirs();
225
228
  for (const skillDir of skillDirs) {
226
229
  if (!validateSkillDir(skillDir))
227
230
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/skills.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/skills.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { type RuntimeName, type ToolName } from "./state.js";
2
+ export type DetectionState = "installed" | "missing" | "available" | "external";
3
+ export type Detection = {
4
+ state: DetectionState;
5
+ summary: string;
6
+ detail?: string;
7
+ };
8
+ export type InstallerStatus = {
9
+ tools: Record<ToolName, Detection>;
10
+ runtimes: Record<RuntimeName, Detection>;
11
+ };
12
+ export declare function toolDisplayName(tool: ToolName): string;
13
+ export declare function detectInstallerStatus(): InstallerStatus;
14
+ export declare function detectionHint(detection: Detection, fallback: string): string;
15
+ export declare function formatDetectedStatus(status: InstallerStatus): string;
16
+ export declare function formatInstallPlan(status: InstallerStatus): string;
@@ -0,0 +1,161 @@
1
+ import fs from "node:fs";
2
+ import path from "node:path";
3
+ import { discoverSkillDirs, selectedSkillDirs, skillRelativePath, skillsTargetDir, } from "./skills.js";
4
+ import { runtimeMeta, runtimeNames, state, toolNames, } from "./state.js";
5
+ import { capture, findCommand } from "./system.js";
6
+ export function toolDisplayName(tool) {
7
+ switch (tool) {
8
+ case "rtk":
9
+ return "RTK";
10
+ case "caveman":
11
+ return "Caveman";
12
+ case "superpowers":
13
+ return "Superpowers";
14
+ case "graphify":
15
+ return "Graphify";
16
+ case "gsd":
17
+ return "GSD";
18
+ case "frontend-skills":
19
+ return "Frontend Skills";
20
+ case "skills":
21
+ return "Custom Skills";
22
+ }
23
+ }
24
+ function firstLine(value) {
25
+ return value.trim().split(/\r?\n/)[0]?.trim() || "";
26
+ }
27
+ function commandDetection(command) {
28
+ const commandPath = findCommand(command);
29
+ if (!commandPath)
30
+ return { state: "missing", summary: "missing from PATH" };
31
+ const version = capture(commandPath, ["--version"]);
32
+ return {
33
+ state: "installed",
34
+ summary: firstLine(version.stdout) || firstLine(version.stderr) || "installed",
35
+ detail: commandPath,
36
+ };
37
+ }
38
+ function customSkillsDetection() {
39
+ const skillDirs = discoverSkillDirs();
40
+ if (skillDirs.length === 0) {
41
+ return {
42
+ state: "missing",
43
+ summary: `no skills found in ${state.customSkillsDir}`,
44
+ };
45
+ }
46
+ return {
47
+ state: "available",
48
+ summary: `${skillDirs.length} source skill(s) found`,
49
+ detail: state.customSkillsDir,
50
+ };
51
+ }
52
+ export function detectInstallerStatus() {
53
+ return {
54
+ tools: {
55
+ rtk: commandDetection("rtk"),
56
+ caveman: {
57
+ state: "external",
58
+ summary: "checked by the Caveman installer",
59
+ detail: state.cavemanPackage,
60
+ },
61
+ superpowers: {
62
+ state: "external",
63
+ summary: "checked by runtime plugin commands",
64
+ },
65
+ graphify: commandDetection("graphify"),
66
+ gsd: {
67
+ state: "external",
68
+ summary: "checked by the GSD installer",
69
+ detail: state.gsdPackage,
70
+ },
71
+ "frontend-skills": {
72
+ state: "external",
73
+ summary: `${state.frontendSkillSources.length} pinned source skill(s)`,
74
+ detail: "installed through Agent Skills CLI",
75
+ },
76
+ skills: customSkillsDetection(),
77
+ },
78
+ runtimes: {
79
+ claude: commandDetection(runtimeMeta.claude.command),
80
+ codex: commandDetection(runtimeMeta.codex.command),
81
+ opencode: commandDetection(runtimeMeta.opencode.command),
82
+ gemini: commandDetection(runtimeMeta.gemini.command),
83
+ },
84
+ };
85
+ }
86
+ function detectionText(detection) {
87
+ const detail = detection.detail ? ` (${detection.detail})` : "";
88
+ return `${detection.state}: ${detection.summary}${detail}`;
89
+ }
90
+ export function detectionHint(detection, fallback) {
91
+ return `${detection.state}: ${detection.summary}; ${fallback}`;
92
+ }
93
+ export function formatDetectedStatus(status) {
94
+ const lines = ["Tools:"];
95
+ for (const tool of toolNames) {
96
+ lines.push(`- ${toolDisplayName(tool)}: ${detectionText(status.tools[tool])}`);
97
+ }
98
+ lines.push("", "Runtimes:");
99
+ for (const runtime of runtimeNames) {
100
+ lines.push(`- ${runtimeMeta[runtime].display}: ${detectionText(status.runtimes[runtime])}`);
101
+ }
102
+ return lines.join("\n");
103
+ }
104
+ function selectedTools() {
105
+ return toolNames.filter((tool) => state.tools[tool]);
106
+ }
107
+ function selectedRuntimes() {
108
+ return runtimeNames.filter((runtime) => state.runtimes[runtime]);
109
+ }
110
+ function selectedToolPlan(tool, detection) {
111
+ if (tool === "rtk" || tool === "graphify") {
112
+ if (detection.state === "installed") {
113
+ return `${detection.summary} already on PATH; installer will verify before doing package setup`;
114
+ }
115
+ return "not found on PATH; installer will set it up when prerequisites are available";
116
+ }
117
+ if (tool === "skills") {
118
+ const skillDirs = selectedSkillDirs();
119
+ if (skillDirs.length === 0) {
120
+ return "no selected Custom Skills found; installer will skip copying";
121
+ }
122
+ return `${skillDirs.length} selected source skill(s); destination status is listed below`;
123
+ }
124
+ return detection.summary;
125
+ }
126
+ function selectedSkillPlanLines() {
127
+ const skillDirs = selectedSkillDirs();
128
+ if (skillDirs.length === 0) {
129
+ return [`- No selected Custom Skills found in ${state.customSkillsDir}`];
130
+ }
131
+ const skillList = skillDirs.map(skillRelativePath).join(", ");
132
+ const lines = [`- Selected source skills: ${skillList}`];
133
+ for (const runtime of selectedRuntimes()) {
134
+ const targetRoot = skillsTargetDir(runtime);
135
+ let present = 0;
136
+ for (const skillDir of skillDirs) {
137
+ if (fs.existsSync(path.join(targetRoot, path.basename(skillDir), "SKILL.md"))) {
138
+ present += 1;
139
+ }
140
+ }
141
+ const missing = skillDirs.length - present;
142
+ lines.push(`- ${runtimeMeta[runtime].display}: ${present}/${skillDirs.length} already present at ${targetRoot}; ${missing} will be copied`);
143
+ }
144
+ return lines;
145
+ }
146
+ export function formatInstallPlan(status) {
147
+ const lines = ["Selected tools:"];
148
+ for (const tool of selectedTools()) {
149
+ lines.push(`- ${toolDisplayName(tool)}: ${selectedToolPlan(tool, status.tools[tool])}`);
150
+ }
151
+ lines.push("", "Selected runtimes:");
152
+ for (const runtime of selectedRuntimes()) {
153
+ lines.push(`- ${runtimeMeta[runtime].display}: ${detectionText(status.runtimes[runtime])}`);
154
+ }
155
+ if (state.tools.skills) {
156
+ lines.push("", "Custom Skills:");
157
+ lines.push(...selectedSkillPlanLines());
158
+ }
159
+ return lines.join("\n");
160
+ }
161
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/status.ts"],"names":[],"mappings":"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"}
package/dist/src/usage.js CHANGED
@@ -56,6 +56,7 @@ Environment:
56
56
  GSD_SCOPE global or local
57
57
  TOOLS_LOCK_PATH External tool provenance lock path
58
58
  ALLOW_MUTABLE_SOURCES Set to 1 to allow mutable source overrides
59
+ AGENT_TOOLKIT_MENU Set to plain to force the line-based interactive menu
59
60
  CUSTOM_SKILLS_DIR Source directory for custom skills
60
61
  SKILLS_SCOPE Comma-separated skill scope filters
61
62
  CLAUDE_CLI_PACKAGE npm package used to install Claude Code CLI
@@ -1 +1 @@
1
- {"version":3,"file":"usage.js","sourceRoot":"","sources":["../../src/usage.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,KAAK;IACnB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+DA8DsD,CAAC;AAChE,CAAC"}
1
+ {"version":3,"file":"usage.js","sourceRoot":"","sources":["../../src/usage.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,KAAK;IACnB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+DA+DsD,CAAC;AAChE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ranimontagna/agent-toolkit",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "Personal AI agent toolkit installer for Claude Code, Codex CLI, OpenCode, Gemini CLI and graph-aware workflows.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -46,5 +46,8 @@
46
46
  "@types/node": "^25.9.1",
47
47
  "typescript": "^6.0.3",
48
48
  "vitest": "^4.1.8"
49
+ },
50
+ "dependencies": {
51
+ "@clack/prompts": "^1.5.1"
49
52
  }
50
53
  }