izanagi-ai 2.0.0 → 2.0.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.
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=build-clean.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-clean.d.ts","sourceRoot":"","sources":["../../src/scripts/build-clean.ts"],"names":[],"mappings":""}
@@ -0,0 +1,23 @@
1
+ import { execSync } from 'child_process';
2
+ import fs from 'fs';
3
+ import path from 'path';
4
+ import { fileURLToPath } from 'url';
5
+ const __filename = fileURLToPath(import.meta.url);
6
+ const __dirname = path.dirname(__filename);
7
+ const rootDir = path.resolve(__dirname, '..');
8
+ try {
9
+ console.log('\n\x1b[36m=== 🛠️ Limpando e Reconstruindo Build ===\x1b[0m\n');
10
+ const distDir = path.join(rootDir, 'dist');
11
+ if (fs.existsSync(distDir)) {
12
+ fs.rmSync(distDir, { recursive: true, force: true });
13
+ console.log('🧹 Pasta dist/ removida.');
14
+ }
15
+ console.log('📦 Compilando TypeScript com tsc...');
16
+ execSync('npx tsc', { cwd: rootDir, stdio: 'inherit' });
17
+ console.log('\n\x1b[32m✔ Build limpo e concluído em dist/!\x1b[0m\n');
18
+ }
19
+ catch (err) {
20
+ console.error('\n\x1b[31m[Erro no build]:\x1b[0m', err?.message || err);
21
+ process.exit(1);
22
+ }
23
+ //# sourceMappingURL=build-clean.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-clean.js","sourceRoot":"","sources":["../../src/scripts/build-clean.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAE9C,IAAI,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,+DAA+D,CAAC,CAAC;IAE7E,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3C,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;IACnD,QAAQ,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAExD,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;AACxE,CAAC;AAAC,OAAO,GAAQ,EAAE,CAAC;IAClB,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,GAAG,EAAE,OAAO,IAAI,GAAG,CAAC,CAAC;IACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=release.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"release.d.ts","sourceRoot":"","sources":["../../src/scripts/release.ts"],"names":[],"mappings":""}
@@ -0,0 +1,29 @@
1
+ import { execSync } from 'child_process';
2
+ import path from 'path';
3
+ import { fileURLToPath } from 'url';
4
+ const __filename = fileURLToPath(import.meta.url);
5
+ const __dirname = path.dirname(__filename);
6
+ const rootDir = path.resolve(__dirname, '..', '..');
7
+ const releaseType = process.argv[2] || 'patch'; // patch | minor | major
8
+ if (!['patch', 'minor', 'major'].includes(releaseType)) {
9
+ console.error('\x1b[31m[Erro]:\x1b[0m Tipo de versão inválido. Use: patch, minor ou major.');
10
+ process.exit(1);
11
+ }
12
+ try {
13
+ console.log(`\n\x1b[36m=== 🚀 Iniciando Release (${releaseType.toUpperCase()}) ===\x1b[0m\n`);
14
+ // 1. Build TypeScript
15
+ console.log('📦 1/3 Compilando TypeScript...');
16
+ execSync('npm run build', { cwd: rootDir, stdio: 'inherit' });
17
+ // 2. Incrementar versão via npm version
18
+ console.log(`\n🏷️ 2/3 Incrementando versão (${releaseType})...`);
19
+ const newVersion = execSync(`npm version ${releaseType} --no-git-tag-version`, { cwd: rootDir, encoding: 'utf-8' }).trim();
20
+ // 3. Publicar no npm
21
+ console.log(`\n☁️ 3/3 Publicando ${newVersion} no npm...`);
22
+ execSync('npm publish --access public', { cwd: rootDir, stdio: 'inherit' });
23
+ console.log(`\n\x1b[32m✔ Versão ${newVersion} publicada com sucesso no npm!\x1b[0m\n`);
24
+ }
25
+ catch (err) {
26
+ console.error('\n\x1b[31m[Erro durante o release]:\x1b[0m', err?.message || err);
27
+ process.exit(1);
28
+ }
29
+ //# sourceMappingURL=release.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"release.js","sourceRoot":"","sources":["../../src/scripts/release.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAEpD,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,wBAAwB;AAExE,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;IACvD,OAAO,CAAC,KAAK,CAAC,6EAA6E,CAAC,CAAC;IAC7F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,IAAI,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,uCAAuC,WAAW,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;IAE9F,sBAAsB;IACtB,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IAC/C,QAAQ,CAAC,eAAe,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAE9D,wCAAwC;IACxC,OAAO,CAAC,GAAG,CAAC,mCAAmC,WAAW,MAAM,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,QAAQ,CAAC,eAAe,WAAW,uBAAuB,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAE3H,qBAAqB;IACrB,OAAO,CAAC,GAAG,CAAC,uBAAuB,UAAU,YAAY,CAAC,CAAC;IAC3D,QAAQ,CAAC,6BAA6B,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAE5E,OAAO,CAAC,GAAG,CAAC,sBAAsB,UAAU,yCAAyC,CAAC,CAAC;AACzF,CAAC;AAAC,OAAO,GAAQ,EAAE,CAAC;IAClB,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,GAAG,EAAE,OAAO,IAAI,GAAG,CAAC,CAAC;IACjF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=verify-build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify-build.d.ts","sourceRoot":"","sources":["../../src/scripts/verify-build.ts"],"names":[],"mappings":""}
@@ -0,0 +1,45 @@
1
+ import { execSync } from 'child_process';
2
+ import fs from 'fs';
3
+ import path from 'path';
4
+ import { fileURLToPath, pathToFileURL } from 'url';
5
+ const __filename = fileURLToPath(import.meta.url);
6
+ const __dirname = path.dirname(__filename);
7
+ const rootDir = path.resolve(__dirname, '..', '..');
8
+ try {
9
+ console.log('\n\x1b[36m=== 🧪 Testando Instalação em Projeto Fictício ===\x1b[0m\n');
10
+ // 1. Garantir que o build está pronto
11
+ execSync('npm run build', { cwd: rootDir, stdio: 'inherit' });
12
+ // 2. Criar diretório sandbox de teste
13
+ const sandboxDir = path.join(rootDir, 'tmp-sandbox-test');
14
+ if (fs.existsSync(sandboxDir)) {
15
+ fs.rmSync(sandboxDir, { recursive: true, force: true });
16
+ }
17
+ fs.mkdirSync(sandboxDir, { recursive: true });
18
+ // 3. Executar instalador simulando projeto de usuário
19
+ const installerPath = path.join(rootDir, 'dist', 'installer.js');
20
+ const installerUrl = pathToFileURL(installerPath).href;
21
+ const code = `import('${installerUrl}').then(m => m.installToProject('${sandboxDir.replace(/\\/g, '/')}'))`;
22
+ execSync(`node -e "${code}"`, { cwd: rootDir, stdio: 'inherit' });
23
+ // 4. Verificar se a pasta .agents foi gerada com sucesso
24
+ const agentsFolder = path.join(sandboxDir, '.agents');
25
+ if (fs.existsSync(agentsFolder)) {
26
+ const items = fs.readdirSync(agentsFolder);
27
+ console.log(`\n\x1b[32m✔ Sucesso! A pasta .agents foi criada no projeto simulado com ${items.length} itens.\x1b[0m`);
28
+ }
29
+ else {
30
+ throw new Error('A pasta .agents não foi criada.');
31
+ }
32
+ // 5. Limpeza do sandbox
33
+ try {
34
+ fs.rmSync(sandboxDir, { recursive: true, force: true });
35
+ console.log('🧹 Diretório sandbox de teste limpo com sucesso.\n');
36
+ }
37
+ catch {
38
+ console.log('⚠️ Não foi possível limpar o sandbox (pode ignorar).\n');
39
+ }
40
+ }
41
+ catch (err) {
42
+ console.error('\n\x1b[31m[Erro na verificação do build]:\x1b[0m', err?.message || err);
43
+ process.exit(1);
44
+ }
45
+ //# sourceMappingURL=verify-build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify-build.js","sourceRoot":"","sources":["../../src/scripts/verify-build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEnD,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAEpD,IAAI,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,uEAAuE,CAAC,CAAC;IAErF,sCAAsC;IACtC,QAAQ,CAAC,eAAe,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAE9D,sCAAsC;IACtC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;IAC1D,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9C,sDAAsD;IACtD,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;IACjE,MAAM,YAAY,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC;IACvD,MAAM,IAAI,GAAG,WAAW,YAAY,oCAAoC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC;IAE5G,QAAQ,CAAC,YAAY,IAAI,GAAG,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAElE,yDAAyD;IACzD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACtD,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,2EAA2E,KAAK,CAAC,MAAM,gBAAgB,CAAC,CAAC;IACvH,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACrD,CAAC;IAED,wBAAwB;IACxB,IAAI,CAAC;QACH,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;IACpE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;IACzE,CAAC;AACH,CAAC;AAAC,OAAO,GAAQ,EAAE,CAAC;IAClB,OAAO,CAAC,KAAK,CAAC,kDAAkD,EAAE,GAAG,EAAE,OAAO,IAAI,GAAG,CAAC,CAAC;IACvF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "izanagi-ai",
3
- "version": "2.0.0",
3
+ "version": "2.0.1",
4
4
  "description": "Modular Skill-Oriented AI Prompt & Agent Framework for Autonomous Software Engineering",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
@@ -34,6 +34,12 @@
34
34
  ],
35
35
  "scripts": {
36
36
  "build": "tsc",
37
+ "build:clean": "node dist/scripts/build-clean.js",
38
+ "verify": "node dist/scripts/verify-build.js",
39
+ "release": "node dist/scripts/release.js",
40
+ "release:patch": "node dist/scripts/release.js patch",
41
+ "release:minor": "node dist/scripts/release.js minor",
42
+ "release:major": "node dist/scripts/release.js major",
37
43
  "prepare": "npm run build",
38
44
  "postinstall": "node dist/postinstall.js",
39
45
  "start": "node bin/nexus.js",
@@ -62,6 +68,6 @@
62
68
  },
63
69
  "repository": {
64
70
  "type": "git",
65
- "url": "git+https://github.com/pedrohenriquesanchesleal4-debug/NexusAi.git"
71
+ "url": "git+https://github.com/pedrohenriquesanchesleal4-debug/izanagi-ai"
66
72
  }
67
- }
73
+ }