auroq-os 1.1.9 → 1.2.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/bin/auroq-os.js +41 -0
- package/package.json +1 -1
package/bin/auroq-os.js
CHANGED
|
@@ -59,6 +59,23 @@ async function init() {
|
|
|
59
59
|
|
|
60
60
|
const targetDir = process.cwd();
|
|
61
61
|
const sourceDir = path.resolve(__dirname, '..');
|
|
62
|
+
const homeDir = require('os').homedir();
|
|
63
|
+
|
|
64
|
+
// ─── PROTECAO: Nunca instalar na home do usuario
|
|
65
|
+
if (targetDir === homeDir || targetDir === path.resolve(homeDir)) {
|
|
66
|
+
error('');
|
|
67
|
+
error(`${GOLD}ATENCAO: Voce esta na pasta HOME do seu usuario (${targetDir}).${RESET}`);
|
|
68
|
+
error(`${GOLD}O Auroq OS nao pode ser instalado aqui — vai baguncar seu sistema.${RESET}`);
|
|
69
|
+
error('');
|
|
70
|
+
error('Crie uma pasta pro seu projeto e rode o comando de dentro dela:');
|
|
71
|
+
error('');
|
|
72
|
+
error(` ${CYAN}mkdir meu-negocio${RESET}`);
|
|
73
|
+
error(` ${CYAN}cd meu-negocio${RESET}`);
|
|
74
|
+
error(` ${CYAN}npx auroq-os init${RESET}`);
|
|
75
|
+
error('');
|
|
76
|
+
error('Troque "meu-negocio" pelo nome que quiser pro seu projeto.');
|
|
77
|
+
process.exit(1);
|
|
78
|
+
}
|
|
62
79
|
|
|
63
80
|
log(`${DIM}Instalando em: ${targetDir}${RESET}\n`);
|
|
64
81
|
|
|
@@ -156,6 +173,7 @@ async function init() {
|
|
|
156
173
|
'.claude/rules/memoria-inteligente.md',
|
|
157
174
|
'.claude/rules/project-tracker.md',
|
|
158
175
|
'.claude/rules/tool-response-filtering.md',
|
|
176
|
+
'.claude/rules/natural-language-first.md',
|
|
159
177
|
|
|
160
178
|
// Hooks
|
|
161
179
|
'.claude/hooks/synapse-engine.cjs',
|
|
@@ -259,6 +277,29 @@ async function init() {
|
|
|
259
277
|
warn('Synapse Engine nao encontrado na fonte — pulando');
|
|
260
278
|
}
|
|
261
279
|
|
|
280
|
+
// ─── Fase 4b: Copiar Meta Squads e scripts (diretorios inteiros)
|
|
281
|
+
step('Instalando Meta Squads e scripts...');
|
|
282
|
+
|
|
283
|
+
const dirsToCopy = [
|
|
284
|
+
{ src: 'agents/squad-forge', label: 'Squad Forge' },
|
|
285
|
+
{ src: 'agents/mind-forge', label: 'Mind Forge' },
|
|
286
|
+
{ src: 'agents/worker-forge', label: 'Worker Forge' },
|
|
287
|
+
{ src: 'agents/clone-forge', label: 'Clone Forge' },
|
|
288
|
+
{ src: 'agents/etlmaker', label: 'ETLmaker' },
|
|
289
|
+
{ src: '.auroq-core/development/scripts', label: 'Squad Scripts' },
|
|
290
|
+
];
|
|
291
|
+
|
|
292
|
+
let dirsCopied = 0;
|
|
293
|
+
for (const { src, label } of dirsToCopy) {
|
|
294
|
+
const srcPath = path.join(sourceDir, src);
|
|
295
|
+
const dstPath = path.join(targetDir, src);
|
|
296
|
+
if (await fs.pathExists(srcPath)) {
|
|
297
|
+
await fs.copy(srcPath, dstPath, { overwrite: true });
|
|
298
|
+
dirsCopied++;
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
success(`${dirsCopied} modulos instalados (Meta Squads + scripts)`);
|
|
302
|
+
|
|
262
303
|
// ─── Fase 5: Package.json + npm install
|
|
263
304
|
step('Configurando dependencias...');
|
|
264
305
|
|