izanagi-ai 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 (195) hide show
  1. package/AGENTS.md +53 -0
  2. package/CHANGELOG.md +198 -0
  3. package/LICENSE +21 -0
  4. package/README.md +96 -0
  5. package/ROADMAP.md +131 -0
  6. package/RULES.md +202 -0
  7. package/SYSTEM.md +201 -0
  8. package/agents/INDEX.md +40 -0
  9. package/agents/architect-agent.json +15 -0
  10. package/agents/bug-hunter-agent.json +14 -0
  11. package/agents/database-agent.json +14 -0
  12. package/agents/devops-agent.json +15 -0
  13. package/agents/docs-agent.json +15 -0
  14. package/agents/pm-agent.json +14 -0
  15. package/agents/professor-agent.json +15 -0
  16. package/agents/security-agent.json +14 -0
  17. package/agents/senior-engineer-agent.json +16 -0
  18. package/agents/techlead-agent.json +15 -0
  19. package/architecture/clean-architecture.md +98 -0
  20. package/architecture/cqrs-specialist.md +102 -0
  21. package/architecture/ddd-specialist.md +97 -0
  22. package/architecture/event-driven-architect.md +79 -0
  23. package/architecture/hexagonal-architecture.md +96 -0
  24. package/architecture/microservices-expert.md +83 -0
  25. package/architecture/monolith-expert.md +67 -0
  26. package/architecture/repository-pattern.md +73 -0
  27. package/architecture/unit-of-work.md +92 -0
  28. package/backend/README.md +29 -0
  29. package/bin/nexus.js +8 -0
  30. package/core/compression-engine.md +194 -0
  31. package/core/context-engine.md +239 -0
  32. package/core/decision-engine.md +377 -0
  33. package/core/evolution-engine.md +169 -0
  34. package/core/planning-engine.md +201 -0
  35. package/core/quality-gates.md +233 -0
  36. package/core/reflection-engine.md +182 -0
  37. package/core/skill-resolver.json +169 -0
  38. package/core/token-manager.md +152 -0
  39. package/database/database-engineer.md +244 -0
  40. package/database/mysql-specialist.md +61 -0
  41. package/database/postgresql-specialist.md +70 -0
  42. package/database/redis-specialist.md +73 -0
  43. package/database/sql-optimizer.md +95 -0
  44. package/database/sqlserver-specialist.md +69 -0
  45. package/devops/ci-cd-specialist.md +101 -0
  46. package/devops/devops-engineer.md +358 -0
  47. package/devops/docker-expert.md +105 -0
  48. package/devops/git-expert.md +76 -0
  49. package/devops/git-flow-specialist.md +71 -0
  50. package/devops/kubernetes-specialist.md +84 -0
  51. package/devops/linux-specialist.md +82 -0
  52. package/devops/windows-specialist.md +43 -0
  53. package/dist/cli/commands/compile.d.ts +2 -0
  54. package/dist/cli/commands/compile.d.ts.map +1 -0
  55. package/dist/cli/commands/compile.js +44 -0
  56. package/dist/cli/commands/compile.js.map +1 -0
  57. package/dist/cli/commands/doctor.d.ts +2 -0
  58. package/dist/cli/commands/doctor.d.ts.map +1 -0
  59. package/dist/cli/commands/doctor.js +88 -0
  60. package/dist/cli/commands/doctor.js.map +1 -0
  61. package/dist/cli/commands/init.d.ts +2 -0
  62. package/dist/cli/commands/init.d.ts.map +1 -0
  63. package/dist/cli/commands/init.js +26 -0
  64. package/dist/cli/commands/init.js.map +1 -0
  65. package/dist/cli/commands/list.d.ts +2 -0
  66. package/dist/cli/commands/list.d.ts.map +1 -0
  67. package/dist/cli/commands/list.js +50 -0
  68. package/dist/cli/commands/list.js.map +1 -0
  69. package/dist/cli/commands/run.d.ts +2 -0
  70. package/dist/cli/commands/run.d.ts.map +1 -0
  71. package/dist/cli/commands/run.js +49 -0
  72. package/dist/cli/commands/run.js.map +1 -0
  73. package/dist/cli/index.d.ts +2 -0
  74. package/dist/cli/index.d.ts.map +1 -0
  75. package/dist/cli/index.js +72 -0
  76. package/dist/cli/index.js.map +1 -0
  77. package/dist/index.d.ts +3 -0
  78. package/dist/index.d.ts.map +1 -0
  79. package/dist/index.js +3 -0
  80. package/dist/index.js.map +1 -0
  81. package/dist/installer.d.ts +5 -0
  82. package/dist/installer.d.ts.map +1 -0
  83. package/dist/installer.js +86 -0
  84. package/dist/installer.js.map +1 -0
  85. package/dist/postinstall.d.ts +2 -0
  86. package/dist/postinstall.d.ts.map +1 -0
  87. package/dist/postinstall.js +8 -0
  88. package/dist/postinstall.js.map +1 -0
  89. package/frontend/README.md +19 -0
  90. package/memory/context-recovery.md +49 -0
  91. package/memory/conversation-summarizer.md +65 -0
  92. package/memory/long-term-project-memory.md +58 -0
  93. package/memory/memory-manager.md +299 -0
  94. package/memory/session-compression.md +182 -0
  95. package/memory/smart-recall.md +37 -0
  96. package/optimization/compact-example.md +87 -0
  97. package/optimization/cost-optimizer.md +53 -0
  98. package/optimization/prompt-optimizer.md +194 -0
  99. package/optimization/token-audit.md +177 -0
  100. package/optimization/token-reducer.md +202 -0
  101. package/package.json +67 -0
  102. package/security/owasp-auditor.md +249 -0
  103. package/security/pentest-reviewer.md +109 -0
  104. package/security/security-engineer.md +238 -0
  105. package/skills/INDEX.md +434 -0
  106. package/skills/accessibility-reviewer.md +63 -0
  107. package/skills/agentic-coding.md +56 -0
  108. package/skills/ai-agent/SKILL.md +107 -0
  109. package/skills/ai-agent-dev/SKILL.md +117 -0
  110. package/skills/alternative-solution-generator.md +72 -0
  111. package/skills/architecture-patterns/SKILL.md +113 -0
  112. package/skills/breaking-change-detector.md +84 -0
  113. package/skills/bug-hunter.md +234 -0
  114. package/skills/bug-prevention.md +75 -0
  115. package/skills/chaos-engineering/SKILL.md +108 -0
  116. package/skills/clean-code-validator.md +218 -0
  117. package/skills/cloud-architect/SKILL.md +78 -0
  118. package/skills/cloud-infra/SKILL.md +99 -0
  119. package/skills/code-auditor.md +24 -0
  120. package/skills/complexity-analyzer.md +102 -0
  121. package/skills/confidence-estimator.md +53 -0
  122. package/skills/continuous-improvement.md +46 -0
  123. package/skills/continuous-learning-engine.md +51 -0
  124. package/skills/cto-advisor.md +66 -0
  125. package/skills/data-engineer/SKILL.md +76 -0
  126. package/skills/data-engineering/SKILL.md +82 -0
  127. package/skills/debug-specialist.md +215 -0
  128. package/skills/dependency-analyzer.md +78 -0
  129. package/skills/design-pattern-advisor.md +78 -0
  130. package/skills/documentation-writer.md +66 -0
  131. package/skills/dry-kiss-yagni-validator.md +114 -0
  132. package/skills/economia-tokens/SKILL.md +40 -0
  133. package/skills/er-diagram-builder.md +85 -0
  134. package/skills/feature-flags/SKILL.md +95 -0
  135. package/skills/frontend/SKILL.md +327 -0
  136. package/skills/frontend-dev/SKILL.md +178 -0
  137. package/skills/graphql/SKILL.md +104 -0
  138. package/skills/hallucination-detection.md +49 -0
  139. package/skills/handoff-sessao/SKILL.md +32 -0
  140. package/skills/i18n-l10n/SKILL.md +103 -0
  141. package/skills/iac-terraform/SKILL.md +98 -0
  142. package/skills/legacy-migration/SKILL.md +91 -0
  143. package/skills/logging-expert.md +78 -0
  144. package/skills/mcp-server-dev.md +33 -0
  145. package/skills/memoria-projeto/SKILL.md +49 -0
  146. package/skills/mobile-dev/SKILL.md +82 -0
  147. package/skills/mobile-engineer/SKILL.md +74 -0
  148. package/skills/monitoring-specialist.md +59 -0
  149. package/skills/observability-expert.md +60 -0
  150. package/skills/performance-optimizer.md +239 -0
  151. package/skills/principal-engineer.md +55 -0
  152. package/skills/privacy-engineer/SKILL.md +79 -0
  153. package/skills/professor-modo/SKILL.md +33 -0
  154. package/skills/project-manager.md +74 -0
  155. package/skills/prompt-engineering.md +27 -0
  156. package/skills/qa/SKILL.md +231 -0
  157. package/skills/qa-engineer/SKILL.md +222 -0
  158. package/skills/readme-generator.md +42 -0
  159. package/skills/refactoring-specialist.md +250 -0
  160. package/skills/release-planner.md +70 -0
  161. package/skills/requirement-analyzer.md +65 -0
  162. package/skills/risk-analyzer.md +73 -0
  163. package/skills/root-cause-analyzer.md +210 -0
  164. package/skills/scalability-expert.md +73 -0
  165. package/skills/security-privacy/SKILL.md +98 -0
  166. package/skills/self-correction.md +54 -0
  167. package/skills/self-critique.md +42 -0
  168. package/skills/senior-code-reviewer.md +193 -0
  169. package/skills/sequence-diagram-builder.md +56 -0
  170. package/skills/serverless-edge/SKILL.md +103 -0
  171. package/skills/software-architect.md +356 -0
  172. package/skills/solid-validator.md +332 -0
  173. package/skills/sre-reliability/SKILL.md +115 -0
  174. package/skills/staff-engineer.md +61 -0
  175. package/skills/task-planner.md +61 -0
  176. package/skills/tech-lead.md +59 -0
  177. package/skills/technical-debt-analyzer.md +81 -0
  178. package/skills/technical-writer.md +39 -0
  179. package/skills/tradeoff-analyzer.md +79 -0
  180. package/skills/uml-generator.md +72 -0
  181. package/skills/ux-reviewer.md +61 -0
  182. package/skills/wasm/SKILL.md +133 -0
  183. package/skills/web-perf-engineer/SKILL.md +75 -0
  184. package/skills/web-perf-seo/SKILL.md +111 -0
  185. package/skills/websocket-realtime/SKILL.md +107 -0
  186. package/teaching/adaptive-teaching.md +37 -0
  187. package/teaching/code-explainer.md +172 -0
  188. package/teaching/interactive-teaching.md +41 -0
  189. package/teaching/learning-tracker.md +63 -0
  190. package/teaching/mentor-mode.md +200 -0
  191. package/teaching/professor-mode.md +222 -0
  192. package/testing/e2e-test-engineer.md +68 -0
  193. package/testing/integration-test-engineer.md +74 -0
  194. package/testing/mocking-specialist.md +78 -0
  195. package/testing/unit-test-engineer.md +209 -0
@@ -0,0 +1,105 @@
1
+ # DevOps: Docker Expert
2
+
3
+ > Version 1.0.0 | Priority: High
4
+ > Dependencies: DevOps Engineer
5
+ > Compatibility: ">=1.0.0"
6
+
7
+ ---
8
+
9
+ ## Identity
10
+
11
+ Docker Expert creates optimized Docker images and configurations. Uses multi-stage builds, distroless or Alpine base images, layer caching, and security best practices.
12
+
13
+ ---
14
+
15
+ ## Dockerfile Best Practices
16
+
17
+ ```dockerfile
18
+ # 1. Use specific tags (not latest)
19
+ FROM php:8.2-fpm-alpine AS base
20
+
21
+ # 2. Use multi-stage builds
22
+ FROM base AS build
23
+ # ... install composer deps, compile assets ...
24
+
25
+ # 3. Minimal production image
26
+ FROM base AS production
27
+ COPY --from=build /app/vendor /app/vendor
28
+ COPY --from=build /app/public/build /app/public/build
29
+
30
+ # 4. Run as non-root
31
+ USER www-data
32
+
33
+ # 5. Read-only root filesystem
34
+ # (configured in docker-compose or k8s)
35
+ ```
36
+
37
+ ---
38
+
39
+ ## Image Optimization
40
+
41
+ ```yaml
42
+ strategies:
43
+ multi_stage: "builder + runner (separate build deps from runtime)"
44
+ alpine: "5MB base vs 150MB for full PHP image"
45
+ layer_caching: "install dependencies before copying source"
46
+ distroless: "no package manager, shell, or unnecessary tools"
47
+ slim: "remove dev packages, docs, cache"
48
+
49
+ targets:
50
+ PHP: "< 100MB (alpine + production deps only)"
51
+ Node: "< 150MB (alpine + production modules)"
52
+ Python: "< 200MB (slim-buster + compiled deps)"
53
+ ```
54
+
55
+ ---
56
+
57
+ ## Docker Compose for Development
58
+
59
+ ```yaml
60
+ services:
61
+ app:
62
+ build:
63
+ context: .
64
+ target: development
65
+ volumes:
66
+ - .:/app # live code reload
67
+ environment:
68
+ - APP_ENV=local
69
+
70
+ db:
71
+ image: postgres:16-alpine
72
+ volumes:
73
+ - pgdata:/var/lib/postgresql/data
74
+
75
+ redis:
76
+ image: redis:7-alpine
77
+
78
+ mailpit:
79
+ image: axllent/mailpit # catch emails in dev
80
+ ```
81
+
82
+ ---
83
+
84
+ ## Security
85
+
86
+ ```yaml
87
+ never:
88
+ - Run as root (USER directive)
89
+ - Store secrets in images (use secrets mount)
90
+ - Use latest tag (use specific version tags)
91
+ - Install unnecessary packages
92
+ - COPY . without .dockerignore
93
+
94
+ always:
95
+ - .dockerignore for context optimization
96
+ - HEALTHCHECK instruction
97
+ - Read-only root filesystem when possible
98
+ - Regular base image updates (Dependabot/Renovate)
99
+ ```
100
+
101
+ ---
102
+
103
+ ## Changelog
104
+
105
+ ### 1.0.0 — Initial release. Dockerfile practices, optimization, security.
@@ -0,0 +1,76 @@
1
+ # DevOps: Git Expert
2
+
3
+ > Version 1.0.0 | Priority: Medium
4
+ > Dependencies: DevOps Engineer
5
+ > Compatibility: ">=1.0.0"
6
+
7
+ ---
8
+
9
+ ## Identity
10
+
11
+ Git Expert manages version control workflows, branching strategies, commit hygiene, rebasing, conflict resolution, and Git hooks.
12
+
13
+ ---
14
+
15
+ ## Git Flow vs Trunk-Based
16
+
17
+ ```yaml
18
+ trunk_based:
19
+ - Main branch always deployable
20
+ - Short-lived feature branches (merge daily)
21
+ - Feature flags for incomplete features
22
+ - Preferred for: CI/CD, DevOps, small-medium teams
23
+
24
+ git_flow:
25
+ - develop + main + release + hotfix branches
26
+ - Longer-lived branches
27
+ - Preferred for: release-based, enterprise, regulatory
28
+
29
+ recommendation: "Trunk-based for most teams. Git Flow for regulated."
30
+ ```
31
+
32
+ ---
33
+
34
+ ## Commit Conventions
35
+
36
+ ```
37
+ feat: add user registration
38
+ fix: handle null email on login
39
+ refactor: extract payment calculation
40
+ test: add auth feature tests
41
+ docs: update API documentation
42
+ chore: update PHPStan to level 9
43
+
44
+ Rules:
45
+ - Keep commits small (one logical change)
46
+ - Imperative mood ("add" not "added")
47
+ - Body explains "why" not "what"
48
+ - Reference issue numbers: "fix: handle null email (#142)"
49
+ ```
50
+
51
+ ---
52
+
53
+ ## Git Commands
54
+
55
+ ```bash
56
+ # Interactive rebase (clean up commits before PR)
57
+ git rebase -i HEAD~3
58
+ # squash, reword, reorder
59
+
60
+ # Fix a commit message
61
+ git commit --amend
62
+
63
+ # Undo last commit (keep changes)
64
+ git reset --soft HEAD~1
65
+
66
+ # Find when a bug was introduced
67
+ git bisect start
68
+ git bisect bad
69
+ git bisect good <known-good-commit>
70
+ ```
71
+
72
+ ---
73
+
74
+ ## Changelog
75
+
76
+ ### 1.0.0 — Initial release. Branching, commits, commands.
@@ -0,0 +1,71 @@
1
+ # DevOps: Git Flow Specialist
2
+
3
+ > Version 1.0.0 | Priority: Medium
4
+ > Dependencies: Git Expert
5
+ > Compatibility: ">=1.0.0"
6
+
7
+ ---
8
+
9
+ ## Identity
10
+
11
+ Git Flow Specialist manages the Git Flow branching model: feature branches, develop/main, release branches, hotfixes, and the merge protocol with tags.
12
+
13
+ ---
14
+
15
+ ## Branch Structure
16
+
17
+ ```
18
+ main
19
+ └── develop
20
+ ├── feature/user-registration
21
+ ├── feature/payment-gateway
22
+ └── release/1.2.0
23
+ └── hotfix/1.2.1
24
+ ```
25
+
26
+ ## Workflow
27
+
28
+ ```yaml
29
+ feature:
30
+ branch_from: develop
31
+ merge_into: develop
32
+ naming: "feature/<issue>-<description>"
33
+
34
+ release:
35
+ branch_from: develop
36
+ merge_into: main + develop
37
+ naming: "release/<version>"
38
+ action: "tag with version"
39
+
40
+ hotfix:
41
+ branch_from: main
42
+ merge_into: main + develop
43
+ naming: "hotfix/<issue>-<description>"
44
+ ```
45
+
46
+ ---
47
+
48
+ ## Commands
49
+
50
+ ```bash
51
+ # Start feature
52
+ git flow feature start user-registration
53
+
54
+ # Finish feature
55
+ git flow feature finish user-registration
56
+
57
+ # Start release
58
+ git flow release start 1.2.0
59
+
60
+ # Finish release (tags automatically)
61
+ git flow release finish 1.2.0
62
+
63
+ # Start hotfix
64
+ git flow hotfix start 1.2.1
65
+ ```
66
+
67
+ ---
68
+
69
+ ## Changelog
70
+
71
+ ### 1.0.0 — Initial release. Branch structure, workflow, commands.
@@ -0,0 +1,84 @@
1
+ # DevOps: Kubernetes Specialist
2
+
3
+ > Version 1.0.0 | Priority: Medium
4
+ > Dependencies: Docker Expert, DevOps Engineer
5
+ > Compatibility: ">=1.0.0"
6
+
7
+ ---
8
+
9
+ ## Identity
10
+
11
+ Kubernetes Specialist orchestrates containerized applications in production. Defines deployments, services, ingresses, configmaps, secrets, horizontal pod autoscaling, and service meshes.
12
+
13
+ ---
14
+
15
+ ## Minimal Deployment
16
+
17
+ ```yaml
18
+ apiVersion: apps/v1
19
+ kind: Deployment
20
+ metadata:
21
+ name: app
22
+ spec:
23
+ replicas: 3
24
+ selector:
25
+ matchLabels:
26
+ app: app
27
+ template:
28
+ metadata:
29
+ labels:
30
+ app: app
31
+ spec:
32
+ containers:
33
+ - name: app
34
+ image: myapp:1.0.0
35
+ ports:
36
+ - containerPort: 9000
37
+ envFrom:
38
+ - configMapRef:
39
+ name: app-config
40
+ - secretRef:
41
+ name: app-secrets
42
+ resources:
43
+ requests:
44
+ cpu: 100m
45
+ memory: 128Mi
46
+ limits:
47
+ cpu: 500m
48
+ memory: 256Mi
49
+ readinessProbe:
50
+ httpGet:
51
+ path: /health
52
+ port: 9000
53
+ ---
54
+ apiVersion: v1
55
+ kind: Service
56
+ metadata:
57
+ name: app
58
+ spec:
59
+ selector:
60
+ app: app
61
+ ports:
62
+ - port: 80
63
+ targetPort: 9000
64
+ ```
65
+
66
+ ---
67
+
68
+ ## Common Resources
69
+
70
+ ```yaml
71
+ deployment: stateless apps, manages replicas and rolling updates
72
+ statefulset: stateful apps (databases), stable network identity
73
+ configmap: non-sensitive config (env vars, files)
74
+ secret: sensitive data (base64 encoded, external secret operator preferred)
75
+ ingress: HTTP routing, TLS termination
76
+ hpa: horizontal pod autoscaling (CPU/memory/custom metrics)
77
+ pdb: pod disruption budget (min available during updates)
78
+ ```
79
+
80
+ ---
81
+
82
+ ## Changelog
83
+
84
+ ### 1.0.0 — Initial release. Deployment template, resources.
@@ -0,0 +1,82 @@
1
+ # DevOps: Linux Specialist
2
+
3
+ > Version 1.0.0 | Priority: Medium
4
+ > Dependencies: DevOps Engineer
5
+ > Compatibility: ">=1.0.0"
6
+
7
+ ---
8
+
9
+ ## Identity
10
+
11
+ Linux Specialist manages Linux server configuration, hardening, performance tuning, and troubleshooting for production environments.
12
+
13
+ ---
14
+
15
+ ## Server Hardening
16
+
17
+ ```yaml
18
+ ssh:
19
+ - Port: 2222 (not 22)
20
+ - Root login: disabled
21
+ - Password auth: disabled
22
+ - Key-only: yes
23
+
24
+ firewall:
25
+ - Allow only: 80 (HTTP), 443 (HTTPS), 2222 (SSH)
26
+ - Fail2ban: enabled for SSH + HTTP auth
27
+
28
+ updates:
29
+ - Unattended-upgrades: security only
30
+ - Automatic reboot: no (manual)
31
+
32
+ audit:
33
+ - Lynis audit: weekly
34
+ - Check: open ports, user accounts, world-writable files
35
+ ```
36
+
37
+ ---
38
+
39
+ ## Performance Tuning
40
+
41
+ ```ini
42
+ # sysctl.conf
43
+ net.core.somaxconn = 65535
44
+ net.ipv4.tcp_tw_reuse = 1
45
+ vm.swappiness = 10
46
+ vm.dirty_ratio = 40
47
+ vm.dirty_background_ratio = 10
48
+
49
+ # limits.conf
50
+ www-data soft nofile 65535
51
+ www-data hard nofile 65535
52
+ ```
53
+
54
+ ---
55
+
56
+ ## Useful Commands
57
+
58
+ ```bash
59
+ # Disk usage
60
+ du -sh /* | sort -rh | head -10
61
+
62
+ # Find large files
63
+ find / -type f -size +100M -exec ls -lh {} \; | sort -k5 -rh
64
+
65
+ # Process by memory/cpu
66
+ ps aux --sort=-%mem | head
67
+ ps aux --sort=-%cpu | head
68
+
69
+ # I/O wait
70
+ iostat -x 1
71
+ iotop
72
+
73
+ # Network
74
+ ss -tulpn
75
+ iftop
76
+ ```
77
+
78
+ ---
79
+
80
+ ## Changelog
81
+
82
+ ### 1.0.0 — Initial release. Hardening, tuning, commands.
@@ -0,0 +1,43 @@
1
+ # DevOps: Windows Specialist
2
+
3
+ > Version 1.0.0 | Priority: Low
4
+ > Dependencies: DevOps Engineer
5
+ > Compatibility: ">=1.0.0"
6
+
7
+ ---
8
+
9
+ ## Identity
10
+
11
+ Windows Specialist manages Windows Server configuration, IIS, PowerShell scripting, and Active Directory integration for .NET deployments.
12
+
13
+ ---
14
+
15
+ ## IIS Configuration
16
+
17
+ ```yaml
18
+ app_pool: ".NET CLR v4.0, Integrated pipeline, Identity: ApplicationPoolIdentity"
19
+ sites: "One site per app, bindings: hostname + port"
20
+ ssl: "IIS Manager → Server Certificates → Bindings"
21
+ logging: "IIS logs (daily), ETW for advanced tracing"
22
+ ```
23
+
24
+ ---
25
+
26
+ ## PowerShell Automation
27
+
28
+ ```powershell
29
+ # Deploy .NET app
30
+ Stop-WebAppPool -Name "MyApp"
31
+ Remove-Item "C:\inetpub\wwwroot\myapp\*" -Recurse
32
+ Copy-Item ".\build\*" "C:\inetpub\wwwroot\myapp\" -Recurse
33
+ Start-WebAppPool -Name "MyApp"
34
+
35
+ # Check event logs
36
+ Get-EventLog -LogName Application -EntryType Error -Newest 20
37
+ ```
38
+
39
+ ---
40
+
41
+ ## Changelog
42
+
43
+ ### 1.0.0 — Initial release. IIS, PowerShell, Windows-specific config.
@@ -0,0 +1,2 @@
1
+ export declare function compileCommand(baseDir: string, agentIdentifier?: string, outputFile?: string): void;
2
+ //# sourceMappingURL=compile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/compile.ts"],"names":[],"mappings":"AAGA,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAgDnG"}
@@ -0,0 +1,44 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ export function compileCommand(baseDir, agentIdentifier, outputFile) {
4
+ if (!agentIdentifier) {
5
+ console.error('\x1b[31mError:\x1b[0m Please specify an agent name (e.g., architect, security, senior-engineer, techlead, database).');
6
+ process.exit(1);
7
+ }
8
+ const agentsDir = path.join(baseDir, 'agents');
9
+ let agentFile = path.join(agentsDir, `${agentIdentifier}-agent.json`);
10
+ if (!fs.existsSync(agentFile)) {
11
+ agentFile = path.join(agentsDir, `${agentIdentifier}.json`);
12
+ }
13
+ if (!fs.existsSync(agentFile)) {
14
+ console.error(`\x1b[31mError:\x1b[0m Agent "${agentIdentifier}" not found in ${agentsDir}`);
15
+ process.exit(1);
16
+ }
17
+ const agent = JSON.parse(fs.readFileSync(agentFile, 'utf-8'));
18
+ const systemContent = fs.existsSync(path.join(baseDir, 'SYSTEM.md'))
19
+ ? fs.readFileSync(path.join(baseDir, 'SYSTEM.md'), 'utf-8')
20
+ : '';
21
+ const rulesContent = fs.existsSync(path.join(baseDir, 'RULES.md'))
22
+ ? fs.readFileSync(path.join(baseDir, 'RULES.md'), 'utf-8')
23
+ : '';
24
+ let compiled = `<!-- NEXUS AI COMPILED SYSTEM PROMPT -->\n`;
25
+ compiled += `<!-- AGENT: ${agent.name} (v${agent.version || '1.0.0'}) -->\n\n`;
26
+ compiled += `### ROLE & IDENTITY\n${agent.identity || agent.role}\n\n`;
27
+ if (agent.always && agent.always.length > 0) {
28
+ compiled += `### ALWAYS DO\n` + agent.always.map((a) => `- ${a}`).join('\n') + `\n\n`;
29
+ }
30
+ if (agent.never && agent.never.length > 0) {
31
+ compiled += `### NEVER DO\n` + agent.never.map((n) => `- ${n}`).join('\n') + `\n\n`;
32
+ }
33
+ compiled += `--- SYSTEM FOUNDATION ---\n${systemContent}\n\n`;
34
+ compiled += `--- OPERATIONAL RULES ---\n${rulesContent}\n\n`;
35
+ if (outputFile) {
36
+ const outPath = path.resolve(process.cwd(), outputFile);
37
+ fs.writeFileSync(outPath, compiled, 'utf-8');
38
+ console.log(`\x1b[32m✔\x1b[0m Compiled prompt for \x1b[1m${agent.name}\x1b[0m saved to: \x1b[36m${outPath}\x1b[0m`);
39
+ }
40
+ else {
41
+ console.log(compiled);
42
+ }
43
+ }
44
+ //# sourceMappingURL=compile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compile.js","sourceRoot":"","sources":["../../../src/cli/commands/compile.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function doctorCommand(baseDir: string): boolean;
2
+ //# sourceMappingURL=doctor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"AAGA,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAsFtD"}
@@ -0,0 +1,88 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ export function doctorCommand(baseDir) {
4
+ console.log('\n\x1b[36m=== NexusAI Doctor & Integrity Check ===\x1b[0m\n');
5
+ let errors = 0;
6
+ let warnings = 0;
7
+ // 1. Verify SYSTEM.md & RULES.md
8
+ const systemPath = path.join(baseDir, 'SYSTEM.md');
9
+ const rulesPath = path.join(baseDir, 'RULES.md');
10
+ if (fs.existsSync(systemPath)) {
11
+ console.log(' \x1b[32m✔\x1b[0m SYSTEM.md found');
12
+ }
13
+ else {
14
+ console.log(' \x1b[31m✖\x1b[0m SYSTEM.md missing!');
15
+ errors++;
16
+ }
17
+ if (fs.existsSync(rulesPath)) {
18
+ console.log(' \x1b[32m✔\x1b[0m RULES.md found');
19
+ }
20
+ else {
21
+ console.log(' \x1b[31m✖\x1b[0m RULES.md missing!');
22
+ errors++;
23
+ }
24
+ // 2. Verify Agents
25
+ const agentsDir = path.join(baseDir, 'agents');
26
+ if (!fs.existsSync(agentsDir)) {
27
+ console.log(' \x1b[31m✖\x1b[0m agents directory missing!');
28
+ errors++;
29
+ }
30
+ else {
31
+ const agentFiles = fs.readdirSync(agentsDir).filter(f => f.endsWith('.json'));
32
+ console.log(` \x1b[32m✔\x1b[0m Found ${agentFiles.length} agent JSON definitions`);
33
+ for (const f of agentFiles) {
34
+ try {
35
+ const content = JSON.parse(fs.readFileSync(path.join(agentsDir, f), 'utf-8'));
36
+ if (!content.name || !content.skills) {
37
+ console.log(` \x1b[33m⚠\x1b[0m Agent ${f} missing required fields (name, skills)`);
38
+ warnings++;
39
+ }
40
+ }
41
+ catch (err) {
42
+ console.log(` \x1b[31m✖\x1b[0m Invalid JSON in agent file ${f}`);
43
+ errors++;
44
+ }
45
+ }
46
+ }
47
+ // 3. Verify Skill Resolver
48
+ const resolverPath = path.join(baseDir, 'core', 'skill-resolver.json');
49
+ if (!fs.existsSync(resolverPath)) {
50
+ console.log(' \x1b[31m✖\x1b[0m skill-resolver.json missing!');
51
+ errors++;
52
+ }
53
+ else {
54
+ try {
55
+ const resolverData = JSON.parse(fs.readFileSync(resolverPath, 'utf-8'));
56
+ const aliases = resolverData.aliases || {};
57
+ let resolvedCount = 0;
58
+ let unresolvedCount = 0;
59
+ for (const [alias, relPath] of Object.entries(aliases)) {
60
+ let fullPath = path.join(baseDir, relPath);
61
+ if (!fullPath.endsWith('.md') && !fullPath.endsWith('.json')) {
62
+ if (fs.existsSync(fullPath + '.md')) {
63
+ fullPath += '.md';
64
+ }
65
+ else if (fs.existsSync(path.join(fullPath, 'SKILL.md'))) {
66
+ fullPath = path.join(fullPath, 'SKILL.md');
67
+ }
68
+ }
69
+ if (fs.existsSync(fullPath)) {
70
+ resolvedCount++;
71
+ }
72
+ else {
73
+ console.log(` \x1b[33m⚠\x1b[0m Alias "${alias}" points to non-existent target: ${relPath}`);
74
+ unresolvedCount++;
75
+ warnings++;
76
+ }
77
+ }
78
+ console.log(` \x1b[32m✔\x1b[0m Skill Resolver: ${resolvedCount} aliases valid, ${unresolvedCount} unmapped.`);
79
+ }
80
+ catch (err) {
81
+ console.log(` \x1b[31m✖\x1b[0m Invalid JSON in skill-resolver.json: ${err.message}`);
82
+ errors++;
83
+ }
84
+ }
85
+ console.log(`\n\x1b[1mSummary:\x1b[0m ${errors === 0 ? '\x1b[32mPASSED\x1b[0m' : '\x1b[31mFAILED\x1b[0m'} (${errors} errors, ${warnings} warnings)\n`);
86
+ return errors === 0;
87
+ }
88
+ //# sourceMappingURL=doctor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function initCommand(baseDir: string, targetDir?: string): void;
2
+ //# sourceMappingURL=init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAIA,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,GAAE,MAAsB,GAAG,IAAI,CA0BpF"}
@@ -0,0 +1,26 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ import { installToProject } from '../../installer.js';
4
+ export function initCommand(baseDir, targetDir = process.cwd()) {
5
+ console.log(`\n\x1b[36m=== Initializing NexusAI (.agents) in: ${targetDir} ===\x1b[0m\n`);
6
+ // Sincronizar/Copiar arquivos para .agents
7
+ installToProject(targetDir);
8
+ const nexusFolder = path.join(targetDir, '.nexus');
9
+ if (!fs.existsSync(nexusFolder)) {
10
+ fs.mkdirSync(nexusFolder, { recursive: true });
11
+ }
12
+ // Write nexus.config.json
13
+ const config = {
14
+ framework: "NexusAI",
15
+ version: "1.0.0",
16
+ defaultAgent: "senior-engineer",
17
+ skillsDir: ".agents/skills",
18
+ autoCompression: true,
19
+ qualityGates: true
20
+ };
21
+ fs.writeFileSync(path.join(nexusFolder, 'nexus.config.json'), JSON.stringify(config, null, 2));
22
+ console.log(' \x1b[32m✔\x1b[0m Created .nexus/nexus.config.json');
23
+ console.log('\n\x1b[32mNexusAI successfully initialized in this project!\x1b[0m');
24
+ console.log('You can now run \x1b[1mnexus run "your task"\x1b[0m or \x1b[1mnexus compile <agent>\x1b[0m.\n');
25
+ }
26
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,UAAU,WAAW,CAAC,OAAe,EAAE,YAAoB,OAAO,CAAC,GAAG,EAAE;IAC5E,OAAO,CAAC,GAAG,CAAC,oDAAoD,SAAS,eAAe,CAAC,CAAC;IAE1F,2CAA2C;IAC3C,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAE5B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACnD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,0BAA0B;IAC1B,MAAM,MAAM,GAAG;QACb,SAAS,EAAE,SAAS;QACpB,OAAO,EAAE,OAAO;QAChB,YAAY,EAAE,iBAAiB;QAC/B,SAAS,EAAE,gBAAgB;QAC3B,eAAe,EAAE,IAAI;QACrB,YAAY,EAAE,IAAI;KACnB,CAAC;IAEF,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,mBAAmB,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/F,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;IAElE,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC;IAClF,OAAO,CAAC,GAAG,CAAC,+FAA+F,CAAC,CAAC;AAC/G,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function listCommand(baseDir: string, filter?: string): void;
2
+ //# sourceMappingURL=list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/list.ts"],"names":[],"mappings":"AAGA,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAgDlE"}