agentinit 1.10.0 → 1.11.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/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## [1.11.1](https://github.com/agentinit/agentinit/compare/v1.11.0...v1.11.1) (2026-03-31)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * pin contextcalc to avoid npm peer warning ([ef33526](https://github.com/agentinit/agentinit/commit/ef33526c2b1afa0e130e6b63cd4bdcce40f7e6e0))
7
+
8
+ # [1.11.0](https://github.com/agentinit/agentinit/compare/v1.10.0...v1.11.0) (2026-03-29)
9
+
10
+
11
+ ### Features
12
+
13
+ * **skills:** prompt for install scope before agent selection ([6b75f27](https://github.com/agentinit/agentinit/commit/6b75f272e657f958de9a28c85d0635f9ccdbe431))
14
+
1
15
  # [1.10.0](https://github.com/agentinit/agentinit/compare/v1.9.0...v1.10.0) (2026-03-29)
2
16
 
3
17
 
package/README.md CHANGED
@@ -192,6 +192,8 @@ agentinit skills list
192
192
  agentinit skills remove openai-docs
193
193
  ```
194
194
 
195
+ If you run `skills add` without `--agent` or `--yes`, AgentInit prompts for install scope first (`project` or `global`), then prompts for the agent skill directories to target. If no project agent files are detected, it still lets you choose project agent directories manually and points you to `agentinit init` for future auto-detection.
196
+
195
197
  Skills are installed into a canonical store by default: project installs use `.agents/skills/`, and global installs use `~/.agents/skills/`. Agent-specific paths are symlinked to that store when they differ. Use `--copy` or `--copy-skills` to force independent copies instead.
196
198
 
197
199
  Bare skill names default to the public skills catalog used by the open agent skills ecosystem: `vercel-labs/agent-skills`. Use `./name` for a local path, `owner/repo` for an explicit GitHub repository, or `--from <marketplace>` / `<marketplace>/<name>` for marketplace-backed sources.
package/dist/cli.js CHANGED
@@ -12248,9 +12248,13 @@ async function isBinaryFile(filePath) {
12248
12248
  }
12249
12249
 
12250
12250
  class Tokenizer {
12251
- tiktokenWrapper;
12251
+ encoding;
12252
12252
  constructor() {
12253
- this.tiktokenWrapper = getTiktoken();
12253
+ try {
12254
+ this.encoding = get_encoding(ENCODING_NAME);
12255
+ } catch (error) {
12256
+ throw new Error(`Failed to initialize tokenizer with encoding '${ENCODING_NAME}': ${error instanceof Error ? error.message : "Unknown error"}`);
12257
+ }
12254
12258
  }
12255
12259
  async countTokens(filePath) {
12256
12260
  try {
@@ -12271,14 +12275,12 @@ class Tokenizer {
12271
12275
  }
12272
12276
  }
12273
12277
  countTokensFromText(text) {
12274
- if (!this.tiktokenWrapper.isInitialized) {
12275
- throw new Error("Tiktoken is not properly initialized. Cannot provide accurate token counts.");
12276
- }
12277
12278
  try {
12278
- const tokens = this.tiktokenWrapper.encoding.encode(text);
12279
+ const tokens = this.encoding.encode(text);
12279
12280
  return tokens.length;
12280
12281
  } catch (error) {
12281
- throw new Error(`Failed to encode text for token counting: ${error instanceof Error ? error.message : "Unknown error"}`);
12282
+ console.warn(`Warning: Failed to encode text, returning character-based estimate:`, error instanceof Error ? error.message : "Unknown error");
12283
+ return Math.ceil(text.length / 4);
12282
12284
  }
12283
12285
  }
12284
12286
  countLines(text) {
@@ -12290,6 +12292,11 @@ class Tokenizer {
12290
12292
  `) ? lines - 1 : lines;
12291
12293
  }
12292
12294
  dispose() {
12295
+ try {
12296
+ this.encoding.free();
12297
+ } catch (error) {
12298
+ console.warn("Warning: Failed to free tokenizer encoding:", error instanceof Error ? error.message : "Unknown error");
12299
+ }
12293
12300
  }
12294
12301
  formatTokenCount(count) {
12295
12302
  const thresholds = [
@@ -12304,57 +12311,11 @@ class Tokenizer {
12304
12311
  return count.toString();
12305
12312
  }
12306
12313
  }
12307
- var estimateBinaryTokens, initializeTiktoken, getTiktoken, getTokenizer, inputToString, countTokens, CODE_EXTENSIONS, DOCS_EXTENSIONS, ENCODING_NAME, tiktokenInstance, tokenizerInstance;
12314
+ var estimateBinaryTokens, getTokenizer, inputToString, countTokens, CODE_EXTENSIONS, DOCS_EXTENSIONS, ENCODING_NAME, tokenizerInstance;
12308
12315
  var init_lib = __esm(() => {
12309
12316
  estimateBinaryTokens = function(sizeInBytes) {
12310
12317
  return Math.ceil(sizeInBytes / 4);
12311
12318
  };
12312
- initializeTiktoken = function() {
12313
- if (tiktokenInstance) {
12314
- return tiktokenInstance;
12315
- }
12316
- try {
12317
- const encoding = get_encoding(ENCODING_NAME);
12318
- try {
12319
- encoding.encode("test");
12320
- } catch (validationError) {
12321
- throw new Error(`Tiktoken encoding validation failed: ${validationError instanceof Error ? validationError.message : "Unknown validation error"}`);
12322
- }
12323
- tiktokenInstance = {
12324
- encoding,
12325
- isInitialized: true
12326
- };
12327
- return tiktokenInstance;
12328
- } catch (error) {
12329
- const errorInstance = error instanceof Error ? error : new Error(String(error));
12330
- if (errorInstance.message.includes("tiktoken_bg.wasm")) {
12331
- const enhancedError = new Error(`Failed to load tiktoken WebAssembly module: ${errorInstance.message}
12332
-
12333
- ` + `This usually happens when using contextcalc as a dependency. Try:
12334
- 1. Ensure tiktoken is installed: npm install tiktoken
12335
- 2. If using in a bundled environment, ensure WASM files are copied
12336
- 3. Check that the tiktoken_bg.wasm file is accessible in your project
12337
-
12338
- For more help, see: https://github.com/agentinit/contextcalc/issues`);
12339
- enhancedError.cause = errorInstance;
12340
- tiktokenInstance = {
12341
- encoding: {},
12342
- isInitialized: false,
12343
- error: enhancedError
12344
- };
12345
- } else {
12346
- tiktokenInstance = {
12347
- encoding: {},
12348
- isInitialized: false,
12349
- error: new Error(`Failed to initialize tokenizer with encoding '${ENCODING_NAME}': ${errorInstance.message}`)
12350
- };
12351
- }
12352
- return tiktokenInstance;
12353
- }
12354
- };
12355
- getTiktoken = function() {
12356
- return initializeTiktoken();
12357
- };
12358
12319
  getTokenizer = function() {
12359
12320
  if (!tokenizerInstance) {
12360
12321
  tokenizerInstance = new Tokenizer;
@@ -12498,7 +12459,6 @@ For more help, see: https://github.com/agentinit/contextcalc/issues`);
12498
12459
  ".wiki"
12499
12460
  ]);
12500
12461
  ENCODING_NAME = "o200k_base";
12501
- tiktokenInstance = null;
12502
12462
  tokenizerInstance = null;
12503
12463
  });
12504
12464
 
@@ -51801,6 +51761,8 @@ async function revertCommand(options2) {
51801
51761
  }
51802
51762
 
51803
51763
  // dist/commands/skills.js
51764
+ var import_prompts2 = __toESM(require_prompts3(), 1);
51765
+ import {homedir as homedir5} from "os";
51804
51766
  import {relative as relative6} from "path";
51805
51767
  init_skillsManager();
51806
51768
  init_marketplaceRegistry();
@@ -51808,7 +51770,7 @@ init_agentManager();
51808
51770
  function registerSkillsCommand(program2) {
51809
51771
  const marketplaceHelp = getMarketplaceIds().join(", ");
51810
51772
  const skills = program2.command("skills").description("Manage agent skills");
51811
- skills.command("add <source>").description("Add skills from a marketplace, GitHub repo, or local path").option("--from <marketplace>", `Marketplace source override (available: ${marketplaceHelp})`).option("-g, --global", "Install skills globally").option("-a, --agent <agents...>", "Target specific agent(s)").option("-s, --skill <names...>", "Install only specific skills by name").option("-l, --list", "List available skills from the source without installing").option("--copy", "Copy skill files instead of symlinking").option("-y, --yes", "Skip confirmation prompts").action(async (source, options2) => {
51773
+ skills.command("add <source>").description("Add skills from a marketplace, GitHub repo, or local path").option("--from <marketplace>", `Marketplace source override (available: ${marketplaceHelp})`).option("-g, --global", "Install skills globally").option("-a, --agent <agents...>", "Target specific agent(s)").option("-s, --skill <names...>", "Install only specific skills by name").option("-l, --list", "List available skills from the source without installing").option("--copy", "Copy skill files instead of symlinking").option("-y, --yes", "Skip prompts and auto-detect project agents only").action(async (source, options2) => {
51812
51774
  logger.title("\uD83D\uDCE6 AgentInit - Skills");
51813
51775
  const agentManager9 = new AgentManager;
51814
51776
  const skillsManager5 = new SkillsManager(agentManager9);
@@ -51846,16 +51808,32 @@ function registerSkillsCommand(program2) {
51846
51808
  }
51847
51809
  return;
51848
51810
  }
51849
- const spinner = ora("Installing skills...").start();
51850
- try {
51851
- const result = await skillsManager5.addFromSource(source, process.cwd(), {
51811
+ let targetAgents = options2.agent;
51812
+ let targetGlobal = options2.global;
51813
+ if (!targetAgents && !options2.yes) {
51814
+ const selection = await resolveInteractiveSkillTargets(skillsManager5, agentManager9, source, process.cwd(), {
51852
51815
  from: options2.from,
51853
- global: options2.global,
51854
- agents: options2.agent,
51855
- skills: options2.skill,
51856
- copy: options2.copy,
51857
- yes: options2.yes
51816
+ global: options2.global
51858
51817
  });
51818
+ if (selection?.aborted) {
51819
+ return;
51820
+ }
51821
+ if (selection?.agents && selection.agents.length > 0) {
51822
+ targetAgents = selection.agents;
51823
+ targetGlobal = selection.global;
51824
+ }
51825
+ }
51826
+ const spinner = ora("Installing skills...").start();
51827
+ try {
51828
+ const installOptions = {
51829
+ ...options2.from !== undefined ? { from: options2.from } : {},
51830
+ ...targetGlobal !== undefined ? { global: targetGlobal } : {},
51831
+ ...targetAgents !== undefined ? { agents: targetAgents } : {},
51832
+ ...options2.skill !== undefined ? { skills: options2.skill } : {},
51833
+ ...options2.copy !== undefined ? { copy: options2.copy } : {},
51834
+ ...options2.yes !== undefined ? { yes: options2.yes } : {}
51835
+ };
51836
+ const result = await skillsManager5.addFromSource(source, process.cwd(), installOptions);
51859
51837
  if (result.installed.length === 0 && result.skipped.length === 0) {
51860
51838
  spinner.warn("No skills found in the source.");
51861
51839
  for (const warning of result.warnings) {
@@ -51863,6 +51841,19 @@ function registerSkillsCommand(program2) {
51863
51841
  }
51864
51842
  return;
51865
51843
  }
51844
+ if (result.installed.length === 0 && result.skipped.length > 0 && result.skipped.every((skip) => skip.reason === "No target agents found")) {
51845
+ spinner.warn("No target agents found.");
51846
+ logNoTargetAgentsGuidance(skillsManager5, agentManager9, source, {
51847
+ from: options2.from
51848
+ });
51849
+ if (result.warnings.length > 0) {
51850
+ logger.info("");
51851
+ for (const warning of result.warnings) {
51852
+ logger.warn(warning);
51853
+ }
51854
+ }
51855
+ return;
51856
+ }
51866
51857
  const uniqueInstallCount = new Set(result.installed.map((item) => `${item.path}:${item.skill.name}`)).size;
51867
51858
  spinner.succeed(`Installed ${green(String(uniqueInstallCount))} skill(s)`);
51868
51859
  const byPath = new Map;
@@ -51980,6 +51971,153 @@ function registerSkillsCommand(program2) {
51980
51971
  }
51981
51972
  });
51982
51973
  }
51974
+ async function resolveInteractiveSkillTargets(skillsManager5, agentManager9, source, projectPath, options2) {
51975
+ let installGlobal = !!options2.global;
51976
+ if (!options2.global) {
51977
+ const response2 = await import_prompts2.default({
51978
+ type: "select",
51979
+ name: "scope",
51980
+ message: "Where should the skill be installed?",
51981
+ choices: [
51982
+ { title: "This project", value: "project" },
51983
+ { title: "Globally", value: "global" }
51984
+ ],
51985
+ initial: 0
51986
+ });
51987
+ if (!response2.scope) {
51988
+ logger.info("Installation cancelled.");
51989
+ return { aborted: true };
51990
+ }
51991
+ installGlobal = response2.scope === "global";
51992
+ }
51993
+ const recommendedAgentId = getRecommendedAgentId(skillsManager5, agentManager9, source, options2.from);
51994
+ const detectedGroups = installGlobal ? [] : await getDetectedSkillGroups(agentManager9, projectPath, false);
51995
+ const availableGroups = detectedGroups.length > 0 ? detectedGroups : getSupportedSkillGroups(agentManager9, projectPath, installGlobal);
51996
+ if (availableGroups.length === 0) {
51997
+ logger.warn("No supported agents expose a skills directory.");
51998
+ return { aborted: true };
51999
+ }
52000
+ if (!installGlobal && detectedGroups.length === 0) {
52001
+ logger.warn("No project agent files with skills support were detected in this project.");
52002
+ logger.info("Select project agent directories manually. Run `agentinit init` if you want future installs to auto-detect.");
52003
+ }
52004
+ const response = await import_prompts2.default({
52005
+ type: "multiselect",
52006
+ name: "groups",
52007
+ message: installGlobal ? "Select which global agent skills directories to install into:" : detectedGroups.length > 0 ? "Select which project agent skills directories to install into:" : "Select which project agent skills directories to install into manually:",
52008
+ instructions: false,
52009
+ min: 1,
52010
+ choices: availableGroups.map((group) => ({
52011
+ title: `${group.displayDir} -> ${group.agentNames.join(", ")}${formatCompatibleAgents(group)}`,
52012
+ value: group.agents.map((agent) => agent.id),
52013
+ selected: installGlobal ? !!recommendedAgentId && group.agents.some((agent) => agent.id === recommendedAgentId) : detectedGroups.length > 0 || !!recommendedAgentId && group.agents.some((agent) => agent.id === recommendedAgentId)
52014
+ }))
52015
+ });
52016
+ const selected = flattenAgentIds(response.groups);
52017
+ if (selected.length === 0) {
52018
+ logger.info("No agents selected. Aborting.");
52019
+ return { aborted: true };
52020
+ }
52021
+ const selection = {
52022
+ agents: selected
52023
+ };
52024
+ if (installGlobal) {
52025
+ selection.global = true;
52026
+ }
52027
+ return selection;
52028
+ }
52029
+ async function getDetectedSkillGroups(agentManager9, projectPath, global3) {
52030
+ const detectedAgents = (await agentManager9.detectAgents(projectPath)).map((entry) => entry.agent);
52031
+ const groups = buildSkillGroups(detectedAgents, projectPath, global3);
52032
+ const detectedIds = new Set(detectedAgents.map((agent) => agent.id));
52033
+ const compatibleGroups = buildSkillGroups(agentManager9.getAllAgents().filter((agent) => !detectedIds.has(agent.id)), projectPath, global3);
52034
+ const compatibleByDir = new Map(compatibleGroups.map((group) => [group.dir, group]));
52035
+ return groups.map((group) => {
52036
+ const compatible = compatibleByDir.get(group.dir);
52037
+ return {
52038
+ ...group,
52039
+ compatibleAgents: compatible?.agents || [],
52040
+ compatibleAgentNames: compatible?.agentNames || []
52041
+ };
52042
+ });
52043
+ }
52044
+ var getSupportedSkillGroups = function(agentManager9, projectPath, global3) {
52045
+ return buildSkillGroups(agentManager9.getAllAgents(), projectPath, global3);
52046
+ };
52047
+ var buildSkillGroups = function(agents, projectPath, global3) {
52048
+ const dirToAgents = new Map;
52049
+ for (const agent of agents) {
52050
+ if (!agent.supportsSkills()) {
52051
+ continue;
52052
+ }
52053
+ const skillsDir = agent.getSkillsDir(projectPath, global3);
52054
+ if (!skillsDir) {
52055
+ continue;
52056
+ }
52057
+ const existing = dirToAgents.get(skillsDir) || [];
52058
+ existing.push(agent);
52059
+ dirToAgents.set(skillsDir, existing);
52060
+ }
52061
+ return Array.from(dirToAgents.entries()).map(([dir, groupedAgents]) => ({
52062
+ dir,
52063
+ displayDir: formatSkillsDir(projectPath, dir),
52064
+ agents: groupedAgents,
52065
+ agentNames: groupedAgents.map((agent) => agent.name),
52066
+ compatibleAgents: [],
52067
+ compatibleAgentNames: []
52068
+ }));
52069
+ };
52070
+ var formatSkillsDir = function(projectPath, dir) {
52071
+ const normalizedDir = dir.replace(/\\/g, "/").replace(/\/?$/, "/");
52072
+ const normalizedProjectPath = projectPath.replace(/\\/g, "/");
52073
+ const normalizedHome = homedir5().replace(/\\/g, "/");
52074
+ if (normalizedDir.startsWith(`${normalizedProjectPath}/`)) {
52075
+ return `${relative6(projectPath, dir).replace(/\\/g, "/").replace(/\/?$/, "/")}`;
52076
+ }
52077
+ if (normalizedDir.startsWith(`${normalizedHome}/`)) {
52078
+ return normalizedDir.replace(normalizedHome, "~");
52079
+ }
52080
+ return normalizedDir;
52081
+ };
52082
+ var formatCompatibleAgents = function(group) {
52083
+ if (group.compatibleAgentNames.length === 0) {
52084
+ return "";
52085
+ }
52086
+ return dim(` (also compatible: ${group.compatibleAgentNames.join(", ")})`);
52087
+ };
52088
+ var flattenAgentIds = function(input) {
52089
+ if (!Array.isArray(input)) {
52090
+ return [];
52091
+ }
52092
+ const flattened = input.flatMap((value) => Array.isArray(value) ? value : [value]);
52093
+ return Array.from(new Set(flattened.filter((value) => typeof value === "string")));
52094
+ };
52095
+ var getRecommendedAgentId = function(skillsManager5, agentManager9, source, from) {
52096
+ try {
52097
+ const resolved = skillsManager5.resolveSource(source, from ? { from } : undefined);
52098
+ if (resolved.type === "marketplace" && resolved.marketplace && agentManager9.getAgentById(resolved.marketplace)) {
52099
+ return resolved.marketplace;
52100
+ }
52101
+ } catch {
52102
+ }
52103
+ return;
52104
+ };
52105
+ var logNoTargetAgentsGuidance = function(skillsManager5, agentManager9, source, options2) {
52106
+ const recommendedAgentId = getRecommendedAgentId(skillsManager5, agentManager9, source, options2.from) || "claude";
52107
+ logger.info("No install target was resolved automatically.");
52108
+ logger.info("Try one of the following:");
52109
+ logger.info(` ${buildSkillsAddCommand(source, options2.from, ["--agent", recommendedAgentId])}`);
52110
+ logger.info(` ${buildSkillsAddCommand(source, options2.from, ["--global", "--agent", recommendedAgentId])}`);
52111
+ logger.info(" agentinit init");
52112
+ };
52113
+ var buildSkillsAddCommand = function(source, from, extraArgs) {
52114
+ const args = ["agentinit", "skills", "add", source];
52115
+ if (from) {
52116
+ args.push("--from", from);
52117
+ }
52118
+ args.push(...extraArgs);
52119
+ return args.join(" ");
52120
+ };
51983
52121
 
51984
52122
  // dist/commands/mcp.js
51985
52123
  init_mcpFilter();
@@ -1 +1 @@
1
- {"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/commands/skills.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAsP5D"}
1
+ {"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/commands/skills.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA2BpC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA8R5D"}
@@ -1,6 +1,8 @@
1
1
  import ora from 'ora';
2
+ import prompts from 'prompts';
3
+ import { homedir } from 'os';
2
4
  import { relative } from 'path';
3
- import { green } from 'kleur/colors';
5
+ import { green, dim } from 'kleur/colors';
4
6
  import { logger } from '../utils/logger.js';
5
7
  import { SkillsManager } from '../core/skillsManager.js';
6
8
  import { getMarketplaceIds } from '../core/marketplaceRegistry.js';
@@ -20,7 +22,7 @@ export function registerSkillsCommand(program) {
20
22
  .option('-s, --skill <names...>', 'Install only specific skills by name')
21
23
  .option('-l, --list', 'List available skills from the source without installing')
22
24
  .option('--copy', 'Copy skill files instead of symlinking')
23
- .option('-y, --yes', 'Skip confirmation prompts')
25
+ .option('-y, --yes', 'Skip prompts and auto-detect project agents only')
24
26
  .action(async (source, options) => {
25
27
  logger.title('📦 AgentInit - Skills');
26
28
  const agentManager = new AgentManager();
@@ -61,17 +63,33 @@ export function registerSkillsCommand(program) {
61
63
  }
62
64
  return;
63
65
  }
64
- // Install skills
65
- const spinner = ora('Installing skills...').start();
66
- try {
67
- const result = await skillsManager.addFromSource(source, process.cwd(), {
66
+ let targetAgents = options.agent;
67
+ let targetGlobal = options.global;
68
+ if (!targetAgents && !options.yes) {
69
+ const selection = await resolveInteractiveSkillTargets(skillsManager, agentManager, source, process.cwd(), {
68
70
  from: options.from,
69
71
  global: options.global,
70
- agents: options.agent,
71
- skills: options.skill,
72
- copy: options.copy,
73
- yes: options.yes,
74
72
  });
73
+ if (selection?.aborted) {
74
+ return;
75
+ }
76
+ if (selection?.agents && selection.agents.length > 0) {
77
+ targetAgents = selection.agents;
78
+ targetGlobal = selection.global;
79
+ }
80
+ }
81
+ // Install skills
82
+ const spinner = ora('Installing skills...').start();
83
+ try {
84
+ const installOptions = {
85
+ ...(options.from !== undefined ? { from: options.from } : {}),
86
+ ...(targetGlobal !== undefined ? { global: targetGlobal } : {}),
87
+ ...(targetAgents !== undefined ? { agents: targetAgents } : {}),
88
+ ...(options.skill !== undefined ? { skills: options.skill } : {}),
89
+ ...(options.copy !== undefined ? { copy: options.copy } : {}),
90
+ ...(options.yes !== undefined ? { yes: options.yes } : {}),
91
+ };
92
+ const result = await skillsManager.addFromSource(source, process.cwd(), installOptions);
75
93
  if (result.installed.length === 0 && result.skipped.length === 0) {
76
94
  spinner.warn('No skills found in the source.');
77
95
  for (const warning of result.warnings) {
@@ -79,6 +97,19 @@ export function registerSkillsCommand(program) {
79
97
  }
80
98
  return;
81
99
  }
100
+ if (result.installed.length === 0 && result.skipped.length > 0 && result.skipped.every(skip => skip.reason === 'No target agents found')) {
101
+ spinner.warn('No target agents found.');
102
+ logNoTargetAgentsGuidance(skillsManager, agentManager, source, {
103
+ from: options.from,
104
+ });
105
+ if (result.warnings.length > 0) {
106
+ logger.info('');
107
+ for (const warning of result.warnings) {
108
+ logger.warn(warning);
109
+ }
110
+ }
111
+ return;
112
+ }
82
113
  const uniqueInstallCount = new Set(result.installed.map(item => `${item.path}:${item.skill.name}`)).size;
83
114
  spinner.succeed(`Installed ${green(String(uniqueInstallCount))} skill(s)`);
84
115
  // Show per-path breakdown
@@ -214,4 +245,161 @@ export function registerSkillsCommand(program) {
214
245
  }
215
246
  });
216
247
  }
248
+ async function resolveInteractiveSkillTargets(skillsManager, agentManager, source, projectPath, options) {
249
+ let installGlobal = !!options.global;
250
+ if (!options.global) {
251
+ const response = await prompts({
252
+ type: 'select',
253
+ name: 'scope',
254
+ message: 'Where should the skill be installed?',
255
+ choices: [
256
+ { title: 'This project', value: 'project' },
257
+ { title: 'Globally', value: 'global' },
258
+ ],
259
+ initial: 0,
260
+ });
261
+ if (!response.scope) {
262
+ logger.info('Installation cancelled.');
263
+ return { aborted: true };
264
+ }
265
+ installGlobal = response.scope === 'global';
266
+ }
267
+ const recommendedAgentId = getRecommendedAgentId(skillsManager, agentManager, source, options.from);
268
+ const detectedGroups = installGlobal
269
+ ? []
270
+ : await getDetectedSkillGroups(agentManager, projectPath, false);
271
+ const availableGroups = detectedGroups.length > 0
272
+ ? detectedGroups
273
+ : getSupportedSkillGroups(agentManager, projectPath, installGlobal);
274
+ if (availableGroups.length === 0) {
275
+ logger.warn('No supported agents expose a skills directory.');
276
+ return { aborted: true };
277
+ }
278
+ if (!installGlobal && detectedGroups.length === 0) {
279
+ logger.warn('No project agent files with skills support were detected in this project.');
280
+ logger.info('Select project agent directories manually. Run `agentinit init` if you want future installs to auto-detect.');
281
+ }
282
+ const response = await prompts({
283
+ type: 'multiselect',
284
+ name: 'groups',
285
+ message: installGlobal
286
+ ? 'Select which global agent skills directories to install into:'
287
+ : detectedGroups.length > 0
288
+ ? 'Select which project agent skills directories to install into:'
289
+ : 'Select which project agent skills directories to install into manually:',
290
+ instructions: false,
291
+ min: 1,
292
+ choices: availableGroups.map(group => ({
293
+ title: `${group.displayDir} -> ${group.agentNames.join(', ')}${formatCompatibleAgents(group)}`,
294
+ value: group.agents.map(agent => agent.id),
295
+ selected: installGlobal
296
+ ? !!recommendedAgentId && group.agents.some(agent => agent.id === recommendedAgentId)
297
+ : detectedGroups.length > 0 || (!!recommendedAgentId && group.agents.some(agent => agent.id === recommendedAgentId)),
298
+ })),
299
+ });
300
+ const selected = flattenAgentIds(response.groups);
301
+ if (selected.length === 0) {
302
+ logger.info('No agents selected. Aborting.');
303
+ return { aborted: true };
304
+ }
305
+ const selection = {
306
+ agents: selected,
307
+ };
308
+ if (installGlobal) {
309
+ selection.global = true;
310
+ }
311
+ return selection;
312
+ }
313
+ async function getDetectedSkillGroups(agentManager, projectPath, global) {
314
+ const detectedAgents = (await agentManager.detectAgents(projectPath)).map(entry => entry.agent);
315
+ const groups = buildSkillGroups(detectedAgents, projectPath, global);
316
+ const detectedIds = new Set(detectedAgents.map(agent => agent.id));
317
+ const compatibleGroups = buildSkillGroups(agentManager.getAllAgents().filter(agent => !detectedIds.has(agent.id)), projectPath, global);
318
+ const compatibleByDir = new Map(compatibleGroups.map(group => [group.dir, group]));
319
+ return groups.map(group => {
320
+ const compatible = compatibleByDir.get(group.dir);
321
+ return {
322
+ ...group,
323
+ compatibleAgents: compatible?.agents || [],
324
+ compatibleAgentNames: compatible?.agentNames || [],
325
+ };
326
+ });
327
+ }
328
+ function getSupportedSkillGroups(agentManager, projectPath, global) {
329
+ return buildSkillGroups(agentManager.getAllAgents(), projectPath, global);
330
+ }
331
+ function buildSkillGroups(agents, projectPath, global) {
332
+ const dirToAgents = new Map();
333
+ for (const agent of agents) {
334
+ if (!agent.supportsSkills()) {
335
+ continue;
336
+ }
337
+ const skillsDir = agent.getSkillsDir(projectPath, global);
338
+ if (!skillsDir) {
339
+ continue;
340
+ }
341
+ const existing = dirToAgents.get(skillsDir) || [];
342
+ existing.push(agent);
343
+ dirToAgents.set(skillsDir, existing);
344
+ }
345
+ return Array.from(dirToAgents.entries()).map(([dir, groupedAgents]) => ({
346
+ dir,
347
+ displayDir: formatSkillsDir(projectPath, dir),
348
+ agents: groupedAgents,
349
+ agentNames: groupedAgents.map(agent => agent.name),
350
+ compatibleAgents: [],
351
+ compatibleAgentNames: [],
352
+ }));
353
+ }
354
+ function formatSkillsDir(projectPath, dir) {
355
+ const normalizedDir = dir.replace(/\\/g, '/').replace(/\/?$/, '/');
356
+ const normalizedProjectPath = projectPath.replace(/\\/g, '/');
357
+ const normalizedHome = homedir().replace(/\\/g, '/');
358
+ if (normalizedDir.startsWith(`${normalizedProjectPath}/`)) {
359
+ return `${relative(projectPath, dir).replace(/\\/g, '/').replace(/\/?$/, '/')}`;
360
+ }
361
+ if (normalizedDir.startsWith(`${normalizedHome}/`)) {
362
+ return normalizedDir.replace(normalizedHome, '~');
363
+ }
364
+ return normalizedDir;
365
+ }
366
+ function formatCompatibleAgents(group) {
367
+ if (group.compatibleAgentNames.length === 0) {
368
+ return '';
369
+ }
370
+ return dim(` (also compatible: ${group.compatibleAgentNames.join(', ')})`);
371
+ }
372
+ function flattenAgentIds(input) {
373
+ if (!Array.isArray(input)) {
374
+ return [];
375
+ }
376
+ const flattened = input.flatMap(value => Array.isArray(value) ? value : [value]);
377
+ return Array.from(new Set(flattened.filter((value) => typeof value === 'string')));
378
+ }
379
+ function getRecommendedAgentId(skillsManager, agentManager, source, from) {
380
+ try {
381
+ const resolved = skillsManager.resolveSource(source, from ? { from } : undefined);
382
+ if (resolved.type === 'marketplace' && resolved.marketplace && agentManager.getAgentById(resolved.marketplace)) {
383
+ return resolved.marketplace;
384
+ }
385
+ }
386
+ catch { }
387
+ return undefined;
388
+ }
389
+ function logNoTargetAgentsGuidance(skillsManager, agentManager, source, options) {
390
+ const recommendedAgentId = getRecommendedAgentId(skillsManager, agentManager, source, options.from) || 'claude';
391
+ logger.info('No install target was resolved automatically.');
392
+ logger.info('Try one of the following:');
393
+ logger.info(` ${buildSkillsAddCommand(source, options.from, ['--agent', recommendedAgentId])}`);
394
+ logger.info(` ${buildSkillsAddCommand(source, options.from, ['--global', '--agent', recommendedAgentId])}`);
395
+ logger.info(' agentinit init');
396
+ }
397
+ function buildSkillsAddCommand(source, from, extraArgs) {
398
+ const args = ['agentinit', 'skills', 'add', source];
399
+ if (from) {
400
+ args.push('--from', from);
401
+ }
402
+ args.push(...extraArgs);
403
+ return args.join(' ');
404
+ }
217
405
  //# sourceMappingURL=skills.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/commands/skills.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/commands/skills.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agentinit",
3
- "version": "1.10.0",
3
+ "version": "1.11.1",
4
4
  "description": "CLI tool and library for managing AI coding agents and verifying MCP servers",
5
5
  "repository": {
6
6
  "type": "git",
@@ -69,7 +69,7 @@
69
69
  "@inquirer/prompts": "^8.3.2",
70
70
  "@modelcontextprotocol/sdk": "^1.18.0",
71
71
  "commander": "^12.1.0",
72
- "contextcalc": "^1.3.5",
72
+ "contextcalc": "~1.3.6",
73
73
  "gray-matter": "^4.0.3",
74
74
  "js-yaml": "^4.1.0",
75
75
  "kleur": "^4.1.5",