agent-ctx 1.0.1 → 2.0.0

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.
Files changed (73) hide show
  1. package/README.md +56 -51
  2. package/dist/commands/add.d.ts +1 -1
  3. package/dist/commands/add.d.ts.map +1 -1
  4. package/dist/commands/add.js +1 -1
  5. package/dist/commands/add.js.map +1 -1
  6. package/dist/commands/centralize.d.ts +3 -3
  7. package/dist/commands/centralize.d.ts.map +1 -1
  8. package/dist/commands/centralize.js +21 -21
  9. package/dist/commands/centralize.js.map +1 -1
  10. package/dist/commands/clean.d.ts +3 -3
  11. package/dist/commands/clean.d.ts.map +1 -1
  12. package/dist/commands/clean.js +31 -31
  13. package/dist/commands/clean.js.map +1 -1
  14. package/dist/commands/doctor.d.ts +3 -3
  15. package/dist/commands/doctor.d.ts.map +1 -1
  16. package/dist/commands/doctor.js +132 -50
  17. package/dist/commands/doctor.js.map +1 -1
  18. package/dist/commands/init.d.ts +3 -3
  19. package/dist/commands/init.d.ts.map +1 -1
  20. package/dist/commands/init.js +97 -38
  21. package/dist/commands/init.js.map +1 -1
  22. package/dist/commands/update.d.ts +3 -4
  23. package/dist/commands/update.d.ts.map +1 -1
  24. package/dist/commands/update.js +169 -52
  25. package/dist/commands/update.js.map +1 -1
  26. package/dist/index.d.ts +2 -2
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +11 -12
  29. package/dist/index.js.map +1 -1
  30. package/dist/lib/bridges.d.ts +8 -8
  31. package/dist/lib/bridges.d.ts.map +1 -1
  32. package/dist/lib/bridges.js +108 -108
  33. package/dist/lib/bridges.js.map +1 -1
  34. package/dist/lib/config.d.ts +18 -6
  35. package/dist/lib/config.d.ts.map +1 -1
  36. package/dist/lib/config.js +54 -18
  37. package/dist/lib/config.js.map +1 -1
  38. package/dist/lib/i18n.d.ts.map +1 -1
  39. package/dist/lib/i18n.js +56 -6
  40. package/dist/lib/i18n.js.map +1 -1
  41. package/dist/lib/logger.d.ts +7 -7
  42. package/dist/lib/logger.d.ts.map +1 -1
  43. package/dist/lib/logger.js +17 -17
  44. package/dist/lib/logger.js.map +1 -1
  45. package/dist/lib/templates.d.ts +1 -5
  46. package/dist/lib/templates.d.ts.map +1 -1
  47. package/dist/lib/templates.js +28 -18
  48. package/dist/lib/templates.js.map +1 -1
  49. package/dist/lib/utils.d.ts +8 -8
  50. package/dist/lib/utils.d.ts.map +1 -1
  51. package/dist/lib/utils.js +47 -20
  52. package/dist/lib/utils.js.map +1 -1
  53. package/package.json +77 -63
  54. package/src/templates/en/skills/skill-agents.md +43 -18
  55. package/src/templates/en/skills/skill-memory.md +97 -0
  56. package/src/templates/es/skills/skill-agents.md +43 -18
  57. package/src/templates/es/skills/skill-memory.md +97 -0
  58. package/dist/bin/agentrc.d.ts +0 -7
  59. package/dist/bin/agentrc.d.ts.map +0 -1
  60. package/dist/bin/agentrc.js +0 -8
  61. package/dist/bin/agentrc.js.map +0 -1
  62. package/dist/lib/wizard.d.ts +0 -22
  63. package/dist/lib/wizard.d.ts.map +0 -1
  64. package/dist/lib/wizard.js +0 -197
  65. package/dist/lib/wizard.js.map +0 -1
  66. package/src/templates/en/skills/skill-api.md +0 -117
  67. package/src/templates/en/skills/skill-git.md +0 -109
  68. package/src/templates/en/skills/skill-react.md +0 -94
  69. package/src/templates/en/skills/skill-testing.md +0 -139
  70. package/src/templates/es/skills/skill-api.md +0 -117
  71. package/src/templates/es/skills/skill-git.md +0 -108
  72. package/src/templates/es/skills/skill-react.md +0 -94
  73. package/src/templates/es/skills/skill-testing.md +0 -139
@@ -1,14 +1,16 @@
1
1
  /**
2
- * Comando: doctor
3
- * Verifica integridad de .context y archivos puente, ofrece reparaciones
2
+ * Command: doctor
3
+ * Checks integrity of .context and bridge files, offers repairs
4
4
  */
5
5
  import { join } from 'path';
6
6
  import { existsSync, readFileSync } from 'fs';
7
7
  import { logger, startSpinner, succeedSpinner, warnSpinner, failSpinner } from '../lib/logger.js';
8
- import { resolveDirectory, validateNotRoot, ensureDir, writeFile } from '../lib/utils.js';
8
+ import { resolveDirectory, validateNotRoot, ensureDir } from '../lib/utils.js';
9
9
  import { BRIDGE_FILES } from '../lib/bridges.js';
10
+ import { loadConfig, hasConfig } from '../lib/config.js';
11
+ import { BASE_SKILLS, copyTemplate } from '../lib/templates.js';
10
12
  /**
11
- * Ejecuta el comando doctor
13
+ * Executes the doctor command
12
14
  */
13
15
  export async function doctorCommand(directory, options) {
14
16
  try {
@@ -16,21 +18,37 @@ export async function doctorCommand(directory, options) {
16
18
  validateNotRoot(targetDir);
17
19
  const { fix = false } = options;
18
20
  // Header
19
- logger.header('🩺 Diagnóstico del proyecto');
20
- logger.log(`\n📁 Directorio: ${targetDir}`);
21
+ logger.header('🩺 Project Diagnostics');
22
+ logger.log(`\n📁 Directory: ${targetDir}`);
21
23
  if (fix) {
22
- logger.log('🔧 Modo FIX: reparará problemas automáticamente');
24
+ logger.log('🔧 FIX mode: will automatically repair issues');
23
25
  }
24
26
  const issues = [];
25
- const contextDir = join(targetDir, '.context');
26
- // 1. Verificar estructura .context
27
- const spinner1 = startSpinner('Verificando estructura .context/...');
27
+ const newSkillsInfo = []; // Informational only, NOT issues
28
+ // 0. Check configuration
29
+ const configExists = hasConfig(targetDir);
30
+ const config = loadConfig(targetDir);
31
+ if (!configExists) {
32
+ logger.warning('⚠️ No .agent-ctx.json found - run `agent-ctx init` first');
33
+ issues.push({
34
+ type: 'no_config',
35
+ path: join(targetDir, '.agent-ctx.json'),
36
+ name: '.agent-ctx.json',
37
+ optional: false,
38
+ });
39
+ }
40
+ else {
41
+ logger.log('📄 Config loaded from .agent-ctx.json');
42
+ }
43
+ // 1. Check .context structure
44
+ startSpinner('Checking .context/ structure...');
28
45
  const requiredDirs = [
29
46
  { path: '.context', name: '.context/' },
30
47
  { path: '.context/rules', name: '.context/rules/' },
31
48
  { path: '.context/skills', name: '.context/skills/' },
32
49
  { path: '.context/docs', name: '.context/docs/' },
33
- { path: '.context/mcp', name: '.context/mcp/' }
50
+ { path: '.context/mcp', name: '.context/mcp/' },
51
+ { path: '.context/memory', name: '.context/memory/' },
34
52
  ];
35
53
  let dirIssues = 0;
36
54
  for (const dir of requiredDirs) {
@@ -40,7 +58,7 @@ export async function doctorCommand(directory, options) {
40
58
  issues.push({
41
59
  type: 'missing_dir',
42
60
  path: fullPath,
43
- name: dir.name
61
+ name: dir.name,
44
62
  });
45
63
  }
46
64
  }
@@ -48,15 +66,15 @@ export async function doctorCommand(directory, options) {
48
66
  succeedSpinner('Estructura .context/ completa');
49
67
  }
50
68
  else {
51
- warnSpinner(`Faltan ${dirIssues} directorio(s) en .context/`);
69
+ warnSpinner(`Missing ${dirIssues} directory(ies) in .context/`);
52
70
  }
53
- // 2. Verificar archivos de contexto
54
- const spinner2 = startSpinner('Verificando archivos de contexto...');
71
+ // 2. Check basic context files
72
+ startSpinner('Checking context files...');
55
73
  const requiredFiles = [
56
74
  { path: 'AGENTS.md', name: 'AGENTS.md' },
57
75
  { path: '.context/architecture.md', name: 'architecture.md' },
58
76
  { path: '.context/project_state.md', name: 'project_state.md' },
59
- { path: '.context/rules/coding-standards.md', name: 'coding-standards.md' }
77
+ { path: '.context/rules/coding-standards.md', name: 'coding-standards.md' },
60
78
  ];
61
79
  let fileIssues = 0;
62
80
  for (const file of requiredFiles) {
@@ -67,25 +85,70 @@ export async function doctorCommand(directory, options) {
67
85
  type: 'missing_file',
68
86
  path: fullPath,
69
87
  name: file.name,
70
- optional: true
88
+ optional: true,
71
89
  });
72
90
  }
73
91
  }
74
92
  if (fileIssues === 0) {
75
- succeedSpinner('Archivos de contexto completos');
93
+ succeedSpinner('Context files complete');
76
94
  }
77
95
  else {
78
- warnSpinner(`Faltan ${fileIssues} archivo(s) de contexto (opcionales)`);
96
+ warnSpinner(`Missing ${fileIssues} context file(s) (optional)`);
79
97
  }
80
- // 3. Verificar archivos puente
81
- const spinner3 = startSpinner('Verificando archivos puente...');
98
+ // 3. Verify registered skills in config vs actual files
99
+ if (configExists) {
100
+ startSpinner('Verifying installed skills...');
101
+ let skillsMissing = 0;
102
+ let skillsOk = 0;
103
+ // Check registered skills exist
104
+ for (const skillKey of config.skills) {
105
+ const skillConfig = BASE_SKILLS[skillKey];
106
+ if (skillConfig) {
107
+ const destPath = join(targetDir, skillConfig.dest);
108
+ if (existsSync(destPath)) {
109
+ skillsOk++;
110
+ }
111
+ else {
112
+ skillsMissing++;
113
+ issues.push({
114
+ type: 'missing_skill',
115
+ path: destPath,
116
+ name: skillConfig.name || skillKey,
117
+ templateKey: skillKey,
118
+ });
119
+ }
120
+ }
121
+ }
122
+ // Check for NEW skills in CLI not registered in config (informational only)
123
+ let newSkills = 0;
124
+ for (const [skillKey, skillConfig] of Object.entries(BASE_SKILLS)) {
125
+ if (!config.skills.includes(skillKey)) {
126
+ newSkills++;
127
+ newSkillsInfo.push({
128
+ name: skillConfig.name || skillKey,
129
+ key: skillKey,
130
+ });
131
+ }
132
+ }
133
+ if (skillsMissing === 0 && newSkills === 0) {
134
+ succeedSpinner(`${skillsOk} skills verified`);
135
+ }
136
+ else if (skillsMissing > 0) {
137
+ warnSpinner(`${skillsOk} OK, ${skillsMissing} missing, ${newSkills} new available`);
138
+ }
139
+ else {
140
+ succeedSpinner(`${skillsOk} skills OK - ${newSkills} new available from CLI`);
141
+ }
142
+ }
143
+ // 4. Verify bridge files
144
+ startSpinner('Verifying bridge files...');
82
145
  let bridgeOk = 0;
83
146
  let bridgeMissing = 0;
84
147
  let bridgeOutdated = 0;
85
- for (const [file, config] of Object.entries(BRIDGE_FILES)) {
148
+ for (const [file, bridgeConfig] of Object.entries(BRIDGE_FILES)) {
86
149
  const fullPath = join(targetDir, file);
87
150
  if (existsSync(fullPath)) {
88
- // Verificar que contenga referencias a .context
151
+ // Verify that it contains references to .context
89
152
  const content = readFileSync(fullPath, 'utf-8');
90
153
  if (content.includes('.context') || content.includes('AGENTS.md')) {
91
154
  bridgeOk++;
@@ -96,7 +159,7 @@ export async function doctorCommand(directory, options) {
96
159
  type: 'outdated_bridge',
97
160
  path: fullPath,
98
161
  name: file,
99
- config
162
+ config: bridgeConfig,
100
163
  });
101
164
  }
102
165
  }
@@ -106,60 +169,79 @@ export async function doctorCommand(directory, options) {
106
169
  type: 'missing_bridge',
107
170
  path: fullPath,
108
171
  name: file,
109
- config
172
+ config: bridgeConfig,
110
173
  });
111
174
  }
112
175
  }
113
176
  if (bridgeMissing === 0 && bridgeOutdated === 0) {
114
- succeedSpinner(`${bridgeOk} archivos puente configurados`);
177
+ succeedSpinner(`${bridgeOk} bridge files configured`);
115
178
  }
116
179
  else {
117
- warnSpinner(`${bridgeOk} OK, ${bridgeMissing} faltan, ${bridgeOutdated} desactualizados`);
180
+ warnSpinner(`${bridgeOk} OK, ${bridgeMissing} missing, ${bridgeOutdated} outdated`);
118
181
  }
119
- // Resumen
182
+ // Summary
120
183
  logger.divider();
121
- const criticalIssues = issues.filter(i => !i.optional && i.type !== 'missing_bridge');
122
- const optionalIssues = issues.filter(i => i.optional || i.type === 'missing_bridge');
184
+ const criticalIssues = issues.filter((i) => !i.optional && i.type !== 'missing_bridge');
185
+ const optionalIssues = issues.filter((i) => i.optional || i.type === 'missing_bridge');
123
186
  if (issues.length === 0) {
124
- logger.summary('✅ ¡Todo en orden!');
187
+ logger.summary('✅ All good!');
125
188
  logger.log('\nTu proyecto está correctamente configurado.');
126
189
  return;
127
190
  }
128
- logger.log(`\n📊 Resumen:`);
129
- logger.log(` - Problemas críticos: ${criticalIssues.length}`);
130
- logger.log(` - Problemas menores/opcionales: ${optionalIssues.length}`);
131
- // Reparar si se solicitó
132
- if (fix && issues.length > 0) {
133
- const fixSpinner = startSpinner('Aplicando reparaciones...');
191
+ logger.log(`\n📊 Summary:`);
192
+ logger.log(` - Critical issues: ${criticalIssues.length}`);
193
+ logger.log(` - Minor/optional issues: ${optionalIssues.length}`);
194
+ if (newSkillsInfo.length > 0) {
195
+ logger.log(` - Nuevos skills disponibles: ${newSkillsInfo.length}`);
196
+ logger.log('\n📦 New base skills available from CLI:');
197
+ for (const skill of newSkillsInfo) {
198
+ logger.item(`${skill.name}`);
199
+ }
200
+ logger.log('\n💡 Run `agent-ctx update` to install new skills.');
201
+ }
202
+ // Repair if requested (only structure and registered skills, NOT bridges)
203
+ const fixableIssues = issues.filter((i) => i.type === 'missing_dir' || i.type === 'missing_skill');
204
+ if (fix && fixableIssues.length > 0) {
205
+ startSpinner('Applying repairs...');
134
206
  let fixed = 0;
135
- for (const issue of issues) {
207
+ for (const issue of fixableIssues) {
136
208
  switch (issue.type) {
137
209
  case 'missing_dir':
138
210
  ensureDir(issue.path, { dryRun: false });
139
211
  fixed++;
140
212
  break;
141
- case 'outdated_bridge':
142
- case 'missing_bridge':
143
- if (issue.config) {
144
- if (issue.config.needsDir) {
145
- ensureDir(join(targetDir, issue.config.needsDir), { dryRun: false });
213
+ case 'missing_skill':
214
+ if (issue.templateKey) {
215
+ const skillConfig = BASE_SKILLS[issue.templateKey];
216
+ if (skillConfig) {
217
+ copyTemplate(issue.templateKey, issue.path, {
218
+ force: false,
219
+ dryRun: false,
220
+ silent: true,
221
+ });
222
+ fixed++;
146
223
  }
147
- const content = issue.config.generator();
148
- writeFile(issue.path, content, { force: true, dryRun: false });
149
- fixed++;
150
224
  }
151
225
  break;
152
226
  }
153
227
  }
154
- succeedSpinner(`${fixed} problema(s) reparado(s)`);
155
- logger.summary('🔧 Reparaciones aplicadas');
228
+ succeedSpinner(`${fixed} issue(s) repaired`);
229
+ logger.summary('🔧 Repairs applied');
230
+ // If there are bridge issues, indicate to use update
231
+ const bridgeIssues = issues.filter((i) => i.type === 'missing_bridge' || i.type === 'outdated_bridge');
232
+ if (bridgeIssues.length > 0) {
233
+ logger.log('\n💡 To update bridge files, run `agent-ctx update`.');
234
+ }
235
+ }
236
+ else if (fixableIssues.length > 0) {
237
+ logger.log('\n💡 Run `agent-ctx doctor --fix` to repair structure and skills.');
156
238
  }
157
239
  else if (issues.length > 0) {
158
- logger.log('\n💡 Ejecuta `agent-ctx doctor --fix` para reparar automáticamente.');
240
+ logger.log('\n💡 Run `agent-ctx update` to manage bridge files.');
159
241
  }
160
242
  }
161
243
  catch (error) {
162
- failSpinner('Error durante diagnóstico');
244
+ failSpinner('Error during diagnostics');
163
245
  const message = error instanceof Error ? error.message : String(error);
164
246
  logger.error(message);
165
247
  process.exit(1);
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /**
2
- * Comando: init
3
- * Inicializa la estructura .context y archivos puente
2
+ * Command: init
3
+ * Initializes .context structure and bridge files
4
4
  */
5
5
  export interface InitOptions {
6
6
  yes?: boolean;
@@ -8,7 +8,7 @@ export interface InitOptions {
8
8
  dryRun?: boolean;
9
9
  }
10
10
  /**
11
- * Ejecuta el comando init
11
+ * Executes the init command
12
12
  */
13
13
  export declare function initCommand(directory: string, options: InitOptions): Promise<void>;
14
14
  //# sourceMappingURL=init.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA+MxF"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA0BH,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA+QxF"}
@@ -1,29 +1,32 @@
1
1
  /**
2
- * Comando: init
3
- * Inicializa la estructura .context y archivos puente
2
+ * Command: init
3
+ * Initializes .context structure and bridge files
4
4
  */
5
5
  import { join } from 'path';
6
6
  import inquirer from 'inquirer';
7
7
  import chalk from 'chalk';
8
8
  import { logger, startSpinner, succeedSpinner, failSpinner } from '../lib/logger.js';
9
9
  import { resolveDirectory, validateNotRoot, ensureDir, writeFile } from '../lib/utils.js';
10
- import { copyTemplate, TEMPLATE_MAPPINGS, BASE_SKILLS, MEMORY_BANK, BOOTSTRAP_TEMPLATE } from '../lib/templates.js';
10
+ import { copyTemplate, TEMPLATE_MAPPINGS, BASE_SKILLS, MEMORY_BANK, BOOTSTRAP_TEMPLATE, } from '../lib/templates.js';
11
11
  import { BRIDGE_FILES } from '../lib/bridges.js';
12
12
  import { setLanguage, LANGUAGES, t } from '../lib/i18n.js';
13
- import { loadConfig, hasConfig } from '../lib/config.js';
13
+ import { loadConfig, hasConfig, saveConfig, getCliVersion, EDITOR_MAP, } from '../lib/config.js';
14
14
  /**
15
- * Ejecuta el comando init
15
+ * Executes the init command
16
16
  */
17
17
  export async function initCommand(directory, options) {
18
18
  try {
19
19
  const targetDir = resolveDirectory(directory);
20
20
  validateNotRoot(targetDir);
21
21
  const { yes = false, force = false, dryRun = false } = options;
22
- // Cargar configuración existente
23
- const config = loadConfig(targetDir);
22
+ // Load existing configuration
23
+ const existingConfig = loadConfig(targetDir);
24
24
  const hasExistingConfig = hasConfig(targetDir);
25
- // Determinar idioma (antes de cualquier otra cosa)
26
- let selectedLanguage = config.language || 'en'; // Default: Config or English
25
+ // Track what we install for the final config
26
+ const installedSkills = [];
27
+ const installedRules = [];
28
+ // Determine language (before anything else)
29
+ let selectedLanguage = existingConfig.language || 'en'; // Default: Config or English
27
30
  if (!yes && !dryRun && !hasExistingConfig) {
28
31
  const langAnswer = await inquirer.prompt([
29
32
  {
@@ -32,10 +35,10 @@ export async function initCommand(directory, options) {
32
35
  message: t('prompt.selectLanguage'),
33
36
  choices: Object.entries(LANGUAGES).map(([code, name]) => ({
34
37
  name: name,
35
- value: code
38
+ value: code,
36
39
  })),
37
- default: 'en'
38
- }
40
+ default: 'en',
41
+ },
39
42
  ]);
40
43
  selectedLanguage = langAnswer.language;
41
44
  }
@@ -57,7 +60,7 @@ export async function initCommand(directory, options) {
57
60
  if (hasExistingConfig) {
58
61
  logger.log(chalk.cyan(`📄 Config loaded from .agent-ctx.json`));
59
62
  }
60
- // Determinar tipo de inicialización
63
+ // Determine initialization type
61
64
  let initType = 'quick';
62
65
  let selectedEditors = [];
63
66
  if (!yes && !dryRun) {
@@ -68,13 +71,13 @@ export async function initCommand(directory, options) {
68
71
  message: t('prompt.selectInitType'),
69
72
  choices: [
70
73
  { name: t('init.quickStart'), value: 'quick' },
71
- { name: t('init.customBridges'), value: 'custom' }
74
+ { name: t('init.customBridges'), value: 'custom' },
72
75
  ],
73
- default: 'quick'
74
- }
76
+ default: 'quick',
77
+ },
75
78
  ]);
76
79
  initType = initTypeAnswer.initType;
77
- // Solo mostrar selección de bridges si elige personalizado
80
+ // Only show bridge selection if custom mode is chosen
78
81
  if (initType === 'custom') {
79
82
  logger.log('');
80
83
  logger.warning(t('init.bridgesNotNeeded'));
@@ -87,15 +90,17 @@ export async function initCommand(directory, options) {
87
90
  choices: Object.entries(BRIDGE_FILES).map(([file, configBridge]) => ({
88
91
  name: configBridge.name,
89
92
  value: file,
90
- checked: config.editors.includes(configBridge.name) || config.editors.includes(file) || config.editors.length === 0
91
- }))
92
- }
93
+ checked: existingConfig.editors.includes(configBridge.name) ||
94
+ existingConfig.editors.includes(file) ||
95
+ existingConfig.editors.length === 0,
96
+ })),
97
+ },
93
98
  ]);
94
99
  selectedEditors = answers.editors;
95
100
  }
96
101
  }
97
- // Preguntar por AI Bootstrap Prompt (si no es dry-run y interactivo)
98
- // En modo 'quick' con --yes, asumimos TRUE por defecto (para ayudar al usuario)
102
+ // Ask about AI Bootstrap Prompt (if not dry-run and interactive)
103
+ // In 'quick' mode with --yes, we assume TRUE by default (to help the user)
99
104
  let createBootstrap = initType === 'quick';
100
105
  if (!yes && !dryRun) {
101
106
  const bootstrapAnswer = await inquirer.prompt([
@@ -103,19 +108,19 @@ export async function initCommand(directory, options) {
103
108
  type: 'confirm',
104
109
  name: 'createBootstrap',
105
110
  message: t('prompt.bootstrap'),
106
- default: true
107
- }
111
+ default: true,
112
+ },
108
113
  ]);
109
114
  createBootstrap = bootstrapAnswer.createBootstrap;
110
115
  }
111
- // 1. Crear estructura .context
116
+ // 1. Create .context structure
112
117
  startSpinner(t('spinner.creatingContext'));
113
118
  const contextDir = join(targetDir, '.context');
114
119
  const subDirs = ['rules', 'skills', 'docs', 'mcp', 'memory'];
115
- ensureDir(contextDir, { dryRun, silent: true, backup: config.backups });
120
+ ensureDir(contextDir, { dryRun, silent: true, backup: existingConfig.backups });
116
121
  for (const subDir of subDirs) {
117
122
  const subPath = join(contextDir, subDir);
118
- ensureDir(subPath, { dryRun, silent: true, backup: config.backups });
123
+ ensureDir(subPath, { dryRun, silent: true, backup: existingConfig.backups });
119
124
  }
120
125
  succeedSpinner(t('spinner.contextCreated'));
121
126
  // 2. Copiar templates
@@ -124,46 +129,100 @@ export async function initCommand(directory, options) {
124
129
  const destPath = templateConfig.isRoot
125
130
  ? join(targetDir, templateConfig.dest)
126
131
  : join(targetDir, templateConfig.dest);
127
- copyTemplate(templateName, destPath, { force, dryRun, silent: true, backup: config.backups });
132
+ copyTemplate(templateName, destPath, {
133
+ force,
134
+ dryRun,
135
+ silent: true,
136
+ backup: existingConfig.backups,
137
+ });
138
+ // Track installed rules
139
+ if (templateName.startsWith('rules/')) {
140
+ installedRules.push(templateName);
141
+ }
128
142
  }
129
143
  succeedSpinner(t('spinner.templatesCopied'));
130
- // 2.5. Instalar BASE_SKILLS (skills fundamentales con estructura de carpetas)
144
+ // 2.5. Install BASE_SKILLS (fundamental skills with folder structure)
131
145
  startSpinner('Installing base skills...');
132
146
  for (const [templateName, skillConfig] of Object.entries(BASE_SKILLS)) {
133
147
  const destPath = join(targetDir, skillConfig.dest);
134
- copyTemplate(templateName, destPath, { force, dryRun, silent: true, backup: config.backups });
148
+ copyTemplate(templateName, destPath, {
149
+ force,
150
+ dryRun,
151
+ silent: true,
152
+ backup: existingConfig.backups,
153
+ });
154
+ installedSkills.push(templateName);
135
155
  }
136
156
  succeedSpinner(`Base skills installed (${Object.keys(BASE_SKILLS).length} skills)`);
137
- // 2.6. Instalar Memory Bank (persistencia de contexto)
157
+ // 2.6. Install Memory Bank (context persistence)
138
158
  startSpinner('Installing Memory Bank...');
139
159
  for (const [templateName, memConfig] of Object.entries(MEMORY_BANK)) {
140
160
  const destPath = join(targetDir, memConfig.dest);
141
- copyTemplate(templateName, destPath, { force, dryRun, silent: true, backup: config.backups });
161
+ copyTemplate(templateName, destPath, {
162
+ force,
163
+ dryRun,
164
+ silent: true,
165
+ backup: existingConfig.backups,
166
+ });
142
167
  }
143
168
  succeedSpinner(`Memory Bank installed (${Object.keys(MEMORY_BANK).length} files)`);
144
- // 3. Crear archivos puente (solo si se eligió modo personalizado)
169
+ // 3. Create bridge files (only if custom mode was chosen)
145
170
  if (initType === 'custom' && selectedEditors.length > 0) {
146
171
  startSpinner(t('spinner.generatingBridges'));
147
172
  for (const [file, bridgeConfig] of Object.entries(BRIDGE_FILES)) {
148
173
  if (!selectedEditors.includes(file))
149
174
  continue;
150
- // Crear directorio si es necesario
175
+ // Create directory if needed
151
176
  if (bridgeConfig.needsDir) {
152
- ensureDir(join(targetDir, bridgeConfig.needsDir), { dryRun, silent: true, backup: config.backups });
177
+ ensureDir(join(targetDir, bridgeConfig.needsDir), {
178
+ dryRun,
179
+ silent: true,
180
+ backup: existingConfig.backups,
181
+ });
153
182
  }
154
183
  const filePath = join(targetDir, file);
155
184
  const content = bridgeConfig.generator();
156
- writeFile(filePath, content, { force, dryRun, silent: true, backup: config.backups });
185
+ writeFile(filePath, content, {
186
+ force,
187
+ dryRun,
188
+ silent: true,
189
+ backup: existingConfig.backups,
190
+ });
157
191
  }
158
192
  succeedSpinner(t('spinner.bridgesGenerated', { count: selectedEditors.length }));
159
193
  }
160
- // 4. Crear AI Bootstrap Prompt (si se solicitó)
194
+ // 4. Create AI Bootstrap Prompt (if requested)
161
195
  if (createBootstrap) {
162
196
  const destPath = join(targetDir, BOOTSTRAP_TEMPLATE.dest);
163
- copyTemplate('base/_bootstrap.md', destPath, { force, dryRun, silent: true, backup: config.backups });
197
+ copyTemplate('base/_bootstrap.md', destPath, {
198
+ force,
199
+ dryRun,
200
+ silent: true,
201
+ backup: existingConfig.backups,
202
+ });
164
203
  logger.log('');
165
204
  logger.success(t('init.bootstrapGenerated'));
166
205
  }
206
+ // 5. Save configuration (.agent-ctx.json)
207
+ if (!dryRun) {
208
+ // Convert bridge file paths to editor IDs
209
+ const editorIds = selectedEditors
210
+ .map((file) => EDITOR_MAP[file] || file)
211
+ .filter((id, index, self) => self.indexOf(id) === index); // deduplicate
212
+ const newConfig = {
213
+ version: getCliVersion(),
214
+ editors: editorIds,
215
+ language: selectedLanguage,
216
+ backups: existingConfig.backups,
217
+ customTemplates: existingConfig.customTemplates,
218
+ skills: [...new Set([...existingConfig.skills, ...installedSkills])],
219
+ rules: [...new Set([...existingConfig.rules, ...installedRules])],
220
+ mcps: existingConfig.mcps,
221
+ };
222
+ saveConfig(targetDir, newConfig);
223
+ logger.log('');
224
+ logger.success('Configuration saved to .agent-ctx.json');
225
+ }
167
226
  // Resumen final
168
227
  if (dryRun) {
169
228
  logger.summary(t('summary.simulationComplete'), false);
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}