auroq-os 1.2.1 → 1.2.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.
Files changed (2) hide show
  1. package/bin/auroq-os.js +33 -0
  2. package/package.json +1 -1
package/bin/auroq-os.js CHANGED
@@ -245,8 +245,41 @@ async function init() {
245
245
  'business/cockpit.md',
246
246
  ];
247
247
 
248
+ // Detectar se ja existe companion personalizado (ex: taquion-companion.md)
249
+ // Se existir, NAO copiar companion.md generico pra nao duplicar
250
+ const commandsDir = path.join(targetDir, '.claude', 'commands');
251
+ let hasCustomCompanion = false;
252
+ if (await fs.pathExists(commandsDir)) {
253
+ const cmdFiles = await fs.readdir(commandsDir);
254
+ hasCustomCompanion = cmdFiles.some(f => f.endsWith('-companion.md') && f !== 'companion.md');
255
+ if (hasCustomCompanion) {
256
+ const customName = cmdFiles.find(f => f.endsWith('-companion.md') && f !== 'companion.md');
257
+ log(`${DIM} Companion personalizado detectado: ${customName} — pulando companion.md generico${RESET}`);
258
+ }
259
+
260
+ // Limpar commands antigos em camelCase (versoes anteriores usavam camelCase)
261
+ const legacyCommands = ['cloneForge.md', 'mindForge.md', 'squadForge.md', 'workerForge.md', 'etlmaker.md'];
262
+ // Nota: etlmaker.md nao muda de nome, os outros sim
263
+ const camelToKebab = { 'cloneForge.md': 'clone-forge.md', 'mindForge.md': 'mind-forge.md', 'squadForge.md': 'squad-forge.md', 'workerForge.md': 'worker-forge.md' };
264
+ let legacyCleaned = 0;
265
+ for (const legacy of Object.keys(camelToKebab)) {
266
+ const legacyPath = path.join(commandsDir, legacy);
267
+ if (await fs.pathExists(legacyPath)) {
268
+ await fs.remove(legacyPath);
269
+ legacyCleaned++;
270
+ }
271
+ }
272
+ if (legacyCleaned > 0) {
273
+ log(`${DIM} Removidos ${legacyCleaned} commands antigos (camelCase → kebab-case)${RESET}`);
274
+ }
275
+ }
276
+
248
277
  let copied = 0;
249
278
  for (const file of frameworkFiles) {
279
+ // Pular companion.md generico se ja tem personalizado
280
+ if (file === '.claude/commands/companion.md' && hasCustomCompanion) {
281
+ continue;
282
+ }
250
283
  const src = path.join(sourceDir, file);
251
284
  const dst = path.join(targetDir, file);
252
285
  if (await fs.pathExists(src)) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "auroq-os",
3
- "version": "1.2.1",
3
+ "version": "1.2.3",
4
4
  "description": "Auroq OS — Sistema Operacional de IA para Experts",
5
5
  "bin": {
6
6
  "auroq-os": "bin/auroq-os.js"