@ranimontagna/agent-toolkit 0.1.2 → 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,10 +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. Interactive terminals use a visual Clack menu. Pipe answers
108
- or set `AGENT_TOOLKIT_MENU=plain` to use the line-based fallback.
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.
109
112
 
110
113
  Run the full kit for Codex in one command:
111
114
 
@@ -420,8 +423,8 @@ Release a new npm version by updating `package.json`, pushing the change to
420
423
  `main`, then pushing a matching tag:
421
424
 
422
425
  ```bash
423
- git tag v0.1.2
424
- git push origin v0.1.2
426
+ git tag v0.1.3
427
+ git push origin v0.1.3
425
428
  ```
426
429
 
427
430
  The `Release` workflow runs the full check and publishes the scoped package to
@@ -7,6 +7,7 @@ export type ClackMenuApi = {
7
7
  intro(message: string): void;
8
8
  outro(message: string): void;
9
9
  cancel(message: string): void;
10
+ note?(message: string, title?: string): void;
10
11
  isCancel(value: unknown): boolean;
11
12
  multiselect(options: {
12
13
  message: string;
package/dist/src/menu.js CHANGED
@@ -4,6 +4,7 @@ import * as clack from "@clack/prompts";
4
4
  import { die } from "./logger.js";
5
5
  import { availableSkillScopes, discoverSkillDirs } from "./skills.js";
6
6
  import { isRuntimeName, isToolName, setAllRuntimes, setAllTools, splitList, state, } from "./state.js";
7
+ import { detectInstallerStatus, detectionHint, formatDetectedStatus, formatInstallPlan, } from "./status.js";
7
8
  import { usage } from "./usage.js";
8
9
  function valueOrCancel(api, value) {
9
10
  if (api.isCancel(value)) {
@@ -87,37 +88,69 @@ function applyMenuAnswers(answers) {
87
88
  selectSkillScopesFromAnswer(answers[4] ?? "");
88
89
  }
89
90
  }
90
- function toolOptions() {
91
+ function toolOptions(status) {
91
92
  return [
92
93
  { value: "all", label: "All tools", hint: "full toolkit" },
93
- { value: "rtk", label: "RTK", hint: "token-aware shell proxy" },
94
- { value: "caveman", label: "Caveman", hint: "terse response modes" },
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
+ },
95
104
  {
96
105
  value: "superpowers",
97
106
  label: "Superpowers",
98
- hint: "planning and delivery workflows",
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"),
99
118
  },
100
- { value: "graphify", label: "Graphify", hint: "knowledge graph workflow" },
101
- { value: "gsd", label: "GSD", hint: "phase-based project control" },
102
119
  {
103
120
  value: "frontend-skills",
104
121
  label: "Frontend Skills",
105
- hint: "third-party design skills",
122
+ hint: detectionHint(status.tools["frontend-skills"], "third-party design skills"),
106
123
  },
107
124
  {
108
125
  value: "skills",
109
126
  label: "Custom Skills",
110
- hint: "bundled personal skills",
127
+ hint: detectionHint(status.tools.skills, "bundled personal skills"),
111
128
  },
112
129
  ];
113
130
  }
114
- function runtimeOptions() {
131
+ function runtimeOptions(status) {
115
132
  return [
116
133
  { value: "all", label: "All runtimes" },
117
- { value: "claude", label: "Claude Code" },
118
- { value: "codex", label: "Codex CLI" },
119
- { value: "opencode", label: "OpenCode" },
120
- { value: "gemini", label: "Gemini CLI" },
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
+ },
121
154
  ];
122
155
  }
123
156
  function scopeOptions() {
@@ -137,15 +170,17 @@ function skillScopeOptions() {
137
170
  }
138
171
  export async function runClackMenu(api) {
139
172
  api.intro("Agent Toolkit");
173
+ const status = detectInstallerStatus();
174
+ api.note?.(formatDetectedStatus(status), "Detected status");
140
175
  const tools = valueOrCancel(api, await api.multiselect({
141
176
  message: "Select tools to install",
142
- options: toolOptions(),
177
+ options: toolOptions(status),
143
178
  required: true,
144
179
  }));
145
180
  selectTools(tools);
146
181
  const runtimes = valueOrCancel(api, await api.multiselect({
147
182
  message: "Select runtimes to target",
148
- options: runtimeOptions(),
183
+ options: runtimeOptions(status),
149
184
  required: true,
150
185
  }));
151
186
  selectRuntimes(runtimes);
@@ -167,13 +202,26 @@ export async function runClackMenu(api) {
167
202
  }));
168
203
  selectSkillScopes(scopes);
169
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
+ }
170
214
  api.outro("Ready to install.");
171
215
  }
172
216
  async function showReadlineMenu() {
173
217
  const rl = createInterface({ input: process.stdin, output: process.stdout });
174
218
  try {
219
+ const status = detectInstallerStatus();
175
220
  console.log(usage());
176
221
  console.log("");
222
+ console.log("Detected status");
223
+ console.log(formatDetectedStatus(status));
224
+ console.log("");
177
225
  const toolsAnswer = await rl.question("Tools to install [comma list: rtk,caveman,superpowers,graphify,gsd,frontend-skills,skills, or all]: ");
178
226
  selectToolsFromAnswer(toolsAnswer);
179
227
  const runtimeAnswer = await rl.question("Runtimes to target [comma list: claude,codex,opencode,gemini, or all]: ");
@@ -187,6 +235,13 @@ async function showReadlineMenu() {
187
235
  const scopeAnswer = await rl.question("Skill scopes to install [comma list, all, default all]: ");
188
236
  selectSkillScopesFromAnswer(scopeAnswer);
189
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
+ }
190
245
  }
191
246
  finally {
192
247
  rl.close();
@@ -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":"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"}
@@ -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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ranimontagna/agent-toolkit",
3
- "version": "0.1.2",
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": {