aios-core 2.2.1 → 2.3.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.
Files changed (108) hide show
  1. package/.aios-core/.session/current-session.json +14 -14
  2. package/.aios-core/cli/commands/migrate/validate.js +1 -1
  3. package/.aios-core/core/docs/session-update-pattern.md +17 -10
  4. package/.aios-core/core/elicitation/elicitation-engine.js +11 -6
  5. package/.aios-core/core/elicitation/session-manager.js +2 -1
  6. package/.aios-core/core/registry/registry-schema.json +166 -166
  7. package/.aios-core/core/registry/service-registry.json +6585 -6585
  8. package/.aios-core/core-config.yaml +12 -1
  9. package/.aios-core/data/agent-config-requirements.yaml +5 -5
  10. package/.aios-core/development/agents/devops.md +12 -0
  11. package/.aios-core/development/scripts/squad/README.md +112 -0
  12. package/.aios-core/development/scripts/squad/index.js +41 -0
  13. package/.aios-core/development/scripts/squad/squad-loader.js +359 -0
  14. package/.aios-core/development/scripts/squad/squad-validator.js +685 -0
  15. package/.aios-core/development/tasks/add-mcp.md +11 -5
  16. package/.aios-core/development/tasks/search-mcp.md +309 -0
  17. package/.aios-core/development/tasks/setup-mcp-docker.md +11 -8
  18. package/.aios-core/development/tasks/squad-creator-validate.md +151 -0
  19. package/.aios-core/docs/standards/AGENT-PERSONALIZATION-STANDARD-V1.md +3 -3
  20. package/.aios-core/index.d.ts +7 -7
  21. package/.aios-core/index.js +1 -1
  22. package/.aios-core/infrastructure/scripts/batch-creator.js +1 -1
  23. package/.aios-core/infrastructure/scripts/component-generator.js +1 -1
  24. package/.aios-core/infrastructure/templates/coderabbit.yaml.template +279 -279
  25. package/.aios-core/infrastructure/templates/github-workflows/ci.yml.template +169 -169
  26. package/.aios-core/infrastructure/templates/github-workflows/pr-automation.yml.template +330 -330
  27. package/.aios-core/infrastructure/templates/github-workflows/release.yml.template +196 -196
  28. package/.aios-core/infrastructure/templates/gitignore/gitignore-aios-base.tmpl +63 -63
  29. package/.aios-core/infrastructure/templates/gitignore/gitignore-brownfield-merge.tmpl +18 -18
  30. package/.aios-core/infrastructure/templates/gitignore/gitignore-node.tmpl +85 -85
  31. package/.aios-core/infrastructure/templates/gitignore/gitignore-python.tmpl +145 -145
  32. package/.aios-core/infrastructure/tests/utilities-audit-results.json +500 -500
  33. package/.aios-core/infrastructure/tools/README.md +1 -1
  34. package/.aios-core/install-manifest.yaml +4 -1
  35. package/.aios-core/manifests/schema/manifest-schema.json +190 -190
  36. package/.aios-core/manifests/workers.csv +203 -203
  37. package/.aios-core/package.json +102 -102
  38. package/.aios-core/product/templates/activation-instructions-template.md +7 -7
  39. package/.aios-core/product/templates/adr.hbs +125 -125
  40. package/.aios-core/product/templates/component-react-tmpl.tsx +98 -98
  41. package/.aios-core/product/templates/dbdr.hbs +241 -241
  42. package/.aios-core/product/templates/engine/schemas/adr.schema.json +102 -102
  43. package/.aios-core/product/templates/engine/schemas/dbdr.schema.json +205 -205
  44. package/.aios-core/product/templates/engine/schemas/epic.schema.json +175 -175
  45. package/.aios-core/product/templates/engine/schemas/pmdr.schema.json +175 -175
  46. package/.aios-core/product/templates/engine/schemas/prd-v2.schema.json +300 -300
  47. package/.aios-core/product/templates/engine/schemas/prd.schema.json +152 -152
  48. package/.aios-core/product/templates/engine/schemas/story.schema.json +222 -222
  49. package/.aios-core/product/templates/engine/schemas/task.schema.json +154 -154
  50. package/.aios-core/product/templates/epic.hbs +212 -212
  51. package/.aios-core/product/templates/eslintrc-security.json +32 -32
  52. package/.aios-core/product/templates/github-actions-cd.yml +212 -212
  53. package/.aios-core/product/templates/github-actions-ci.yml +172 -172
  54. package/.aios-core/product/templates/pmdr.hbs +186 -186
  55. package/.aios-core/product/templates/prd-v2.0.hbs +216 -216
  56. package/.aios-core/product/templates/prd.hbs +201 -201
  57. package/.aios-core/product/templates/shock-report-tmpl.html +502 -502
  58. package/.aios-core/product/templates/story.hbs +263 -263
  59. package/.aios-core/product/templates/task.hbs +170 -170
  60. package/.aios-core/product/templates/tmpl-comment-on-examples.sql +158 -158
  61. package/.aios-core/product/templates/tmpl-migration-script.sql +91 -91
  62. package/.aios-core/product/templates/tmpl-rls-granular-policies.sql +104 -104
  63. package/.aios-core/product/templates/tmpl-rls-kiss-policy.sql +10 -10
  64. package/.aios-core/product/templates/tmpl-rls-roles.sql +135 -135
  65. package/.aios-core/product/templates/tmpl-rls-simple.sql +77 -77
  66. package/.aios-core/product/templates/tmpl-rls-tenant.sql +152 -152
  67. package/.aios-core/product/templates/tmpl-rollback-script.sql +77 -77
  68. package/.aios-core/product/templates/tmpl-seed-data.sql +140 -140
  69. package/.aios-core/product/templates/tmpl-smoke-test.sql +16 -16
  70. package/.aios-core/product/templates/tmpl-staging-copy-merge.sql +139 -139
  71. package/.aios-core/product/templates/tmpl-stored-proc.sql +140 -140
  72. package/.aios-core/product/templates/tmpl-trigger.sql +152 -152
  73. package/.aios-core/product/templates/tmpl-view-materialized.sql +133 -133
  74. package/.aios-core/product/templates/tmpl-view.sql +177 -177
  75. package/.aios-core/product/templates/token-exports-css-tmpl.css +240 -240
  76. package/.aios-core/quality/schemas/quality-metrics.schema.json +233 -233
  77. package/.aios-core/schemas/squad-schema.json +185 -0
  78. package/.aios-core/scripts/README.md +90 -322
  79. package/.aios-core/scripts/migrate-framework-docs.sh +300 -300
  80. package/.claude/rules/mcp-usage.md +116 -100
  81. package/LICENSE +48 -48
  82. package/README.md +3 -4
  83. package/bin/aios-init.js +11 -6
  84. package/bin/aios.js +2 -1
  85. package/package.json +2 -3
  86. package/packages/installer/package.json +39 -39
  87. package/packages/installer/tests/integration/environment-configuration.test.js +2 -2
  88. package/packages/installer/tests/unit/env-template.test.js +4 -3
  89. package/templates/squad/LICENSE +21 -21
  90. package/templates/squad/README.md +37 -37
  91. package/templates/squad/agents/example-agent.yaml +36 -36
  92. package/templates/squad/package.json +19 -19
  93. package/templates/squad/squad.yaml +25 -25
  94. package/templates/squad/tasks/example-task.yaml +46 -46
  95. package/templates/squad/templates/example-template.md +24 -24
  96. package/templates/squad/tests/example-agent.test.js +53 -53
  97. package/templates/squad/workflows/example-workflow.yaml +54 -54
  98. package/tools/diagnose-npx-issue.ps1 +96 -96
  99. package/tools/quick-diagnose.cmd +85 -85
  100. package/tools/quick-diagnose.ps1 +117 -117
  101. package/.aios-core/core/data/agent-config-requirements.yaml +0 -368
  102. package/.aios-core/core/data/aios-kb.md +0 -924
  103. package/.aios-core/core/data/workflow-patterns.yaml +0 -267
  104. package/.aios-core/product/templates/1mcp-config.yaml +0 -225
  105. package/.aios-core/scripts/context-detector.js +0 -226
  106. package/.aios-core/scripts/elicitation-engine.js +0 -385
  107. package/.aios-core/scripts/elicitation-session-manager.js +0 -300
  108. package/.claude/CLAUDE.md +0 -221
@@ -1,100 +1,116 @@
1
- ---
2
- paths: **/*
3
- ---
4
-
5
- # MCP Server Usage Rules - AIOS Architecture
6
-
7
- ## MCP Configuration Architecture
8
-
9
- AIOS uses a hybrid MCP architecture for optimal performance and security:
10
-
11
- ### Direct in Claude Code (global ~/.claude.json)
12
- | MCP | Purpose |
13
- |-----|---------|
14
- | **playwright** | Browser automation, screenshots, web testing |
15
- | **desktop-commander** | Docker container operations via docker-gateway |
16
-
17
- ### Inside Docker Desktop (via desktop-commander)
18
- | MCP | Purpose |
19
- |-----|---------|
20
- | **EXA** | Web search, research, company/competitor analysis |
21
- | **Context7** | Library documentation lookup |
22
-
23
- ## CRITICAL: Tool Selection Priority
24
-
25
- ALWAYS prefer native Claude Code tools over MCP servers:
26
-
27
- | Task | USE THIS | NOT THIS |
28
- |------|----------|----------|
29
- | Read files | `Read` tool | docker-gateway |
30
- | Write files | `Write` / `Edit` tools | docker-gateway |
31
- | Run commands | `Bash` tool | docker-gateway |
32
- | Search files | `Glob` tool | docker-gateway |
33
- | Search content | `Grep` tool | docker-gateway |
34
- | List directories | `Bash(ls)` or `Glob` | docker-gateway |
35
-
36
- ## desktop-commander (docker-gateway) Usage
37
-
38
- ### ONLY use docker-gateway when:
39
- 1. User explicitly says "use docker" or "use container"
40
- 2. User explicitly mentions "Desktop Commander"
41
- 3. Task specifically requires Docker container operations
42
- 4. Accessing MCPs running inside Docker (EXA, Context7)
43
- 5. User asks to run something inside a Docker container
44
-
45
- ### NEVER use docker-gateway for:
46
- - Reading local files (use `Read` tool)
47
- - Writing local files (use `Write` or `Edit` tools)
48
- - Running shell commands on host (use `Bash` tool)
49
- - Searching files (use `Glob` or `Grep` tools)
50
- - Listing directories (use `Bash(ls)` or `Glob`)
51
- - Running Node.js or Python scripts on host (use `Bash` tool)
52
-
53
- ## playwright MCP Usage
54
-
55
- ### ONLY use playwright when:
56
- 1. User explicitly asks for browser automation
57
- 2. User wants to take screenshots of web pages
58
- 3. User needs to interact with a website
59
- 4. Task requires web scraping or testing
60
- 5. Filling forms or clicking elements on web pages
61
-
62
- ### NEVER use playwright for:
63
- - General file operations
64
- - Running commands
65
- - Anything not related to web browsers
66
-
67
- ## EXA MCP Usage (via Docker)
68
-
69
- ### Use EXA (mcp__docker-gateway__web_search_exa) for:
70
- 1. Web searches for current information
71
- 2. Research and documentation lookup
72
- 3. Company and competitor research
73
- 4. Finding code examples online
74
-
75
- ### Access pattern:
76
- ```
77
- mcp__docker-gateway__web_search_exa
78
- ```
79
-
80
- ## Context7 MCP Usage (via Docker)
81
-
82
- ### Use Context7 for:
83
- 1. Library documentation lookup
84
- 2. API reference for packages/frameworks
85
- 3. Getting up-to-date docs for dependencies
86
-
87
- ### Access pattern:
88
- ```
89
- mcp__docker-gateway__resolve-library-id
90
- mcp__docker-gateway__get-library-docs
91
- ```
92
-
93
- ## Rationale
94
-
95
- - **Native tools** execute on the LOCAL system (Windows/Mac/Linux)
96
- - **docker-gateway** executes inside Docker containers (Linux)
97
- - Using docker-gateway for local operations causes path mismatches and failures
98
- - Native tools are faster and more reliable for local file operations
99
- - EXA and Context7 run inside Docker for isolation and consistent environment
100
- - playwright runs directly for better browser integration with host system
1
+ ---
2
+ paths: **/*
3
+ ---
4
+
5
+ # MCP Server Usage Rules - AIOS Architecture
6
+
7
+ ## MCP Governance
8
+
9
+ **IMPORTANT:** All MCP infrastructure management is handled EXCLUSIVELY by the **DevOps Agent (@devops / Gage)**.
10
+
11
+ | Operation | Agent | Command |
12
+ |-----------|-------|---------|
13
+ | Search MCP catalog | DevOps | `*search-mcp` |
14
+ | Add MCP server | DevOps | `*add-mcp` |
15
+ | List enabled MCPs | DevOps | `*list-mcps` |
16
+ | Remove MCP server | DevOps | `*remove-mcp` |
17
+ | Setup Docker MCP | DevOps | `*setup-mcp-docker` |
18
+
19
+ Other agents (Dev, Architect, etc.) are MCP **consumers**, not administrators. If MCP management is needed, delegate to @devops.
20
+
21
+ ---
22
+
23
+ ## MCP Configuration Architecture
24
+
25
+ AIOS uses Docker MCP Toolkit as the primary MCP infrastructure:
26
+
27
+ ### Direct in Claude Code (global ~/.claude.json)
28
+ | MCP | Purpose |
29
+ |-----|---------|
30
+ | **playwright** | Browser automation, screenshots, web testing |
31
+ | **desktop-commander** | Docker container operations via docker-gateway |
32
+
33
+ ### Inside Docker Desktop (via desktop-commander)
34
+ | MCP | Purpose |
35
+ |-----|---------|
36
+ | **EXA** | Web search, research, company/competitor analysis |
37
+ | **Context7** | Library documentation lookup |
38
+
39
+ ## CRITICAL: Tool Selection Priority
40
+
41
+ ALWAYS prefer native Claude Code tools over MCP servers:
42
+
43
+ | Task | USE THIS | NOT THIS |
44
+ |------|----------|----------|
45
+ | Read files | `Read` tool | docker-gateway |
46
+ | Write files | `Write` / `Edit` tools | docker-gateway |
47
+ | Run commands | `Bash` tool | docker-gateway |
48
+ | Search files | `Glob` tool | docker-gateway |
49
+ | Search content | `Grep` tool | docker-gateway |
50
+ | List directories | `Bash(ls)` or `Glob` | docker-gateway |
51
+
52
+ ## desktop-commander (docker-gateway) Usage
53
+
54
+ ### ONLY use docker-gateway when:
55
+ 1. User explicitly says "use docker" or "use container"
56
+ 2. User explicitly mentions "Desktop Commander"
57
+ 3. Task specifically requires Docker container operations
58
+ 4. Accessing MCPs running inside Docker (EXA, Context7)
59
+ 5. User asks to run something inside a Docker container
60
+
61
+ ### NEVER use docker-gateway for:
62
+ - Reading local files (use `Read` tool)
63
+ - Writing local files (use `Write` or `Edit` tools)
64
+ - Running shell commands on host (use `Bash` tool)
65
+ - Searching files (use `Glob` or `Grep` tools)
66
+ - Listing directories (use `Bash(ls)` or `Glob`)
67
+ - Running Node.js or Python scripts on host (use `Bash` tool)
68
+
69
+ ## playwright MCP Usage
70
+
71
+ ### ONLY use playwright when:
72
+ 1. User explicitly asks for browser automation
73
+ 2. User wants to take screenshots of web pages
74
+ 3. User needs to interact with a website
75
+ 4. Task requires web scraping or testing
76
+ 5. Filling forms or clicking elements on web pages
77
+
78
+ ### NEVER use playwright for:
79
+ - General file operations
80
+ - Running commands
81
+ - Anything not related to web browsers
82
+
83
+ ## EXA MCP Usage (via Docker)
84
+
85
+ ### Use EXA (mcp__docker-gateway__web_search_exa) for:
86
+ 1. Web searches for current information
87
+ 2. Research and documentation lookup
88
+ 3. Company and competitor research
89
+ 4. Finding code examples online
90
+
91
+ ### Access pattern:
92
+ ```
93
+ mcp__docker-gateway__web_search_exa
94
+ ```
95
+
96
+ ## Context7 MCP Usage (via Docker)
97
+
98
+ ### Use Context7 for:
99
+ 1. Library documentation lookup
100
+ 2. API reference for packages/frameworks
101
+ 3. Getting up-to-date docs for dependencies
102
+
103
+ ### Access pattern:
104
+ ```
105
+ mcp__docker-gateway__resolve-library-id
106
+ mcp__docker-gateway__get-library-docs
107
+ ```
108
+
109
+ ## Rationale
110
+
111
+ - **Native tools** execute on the LOCAL system (Windows/Mac/Linux)
112
+ - **docker-gateway** executes inside Docker containers (Linux)
113
+ - Using docker-gateway for local operations causes path mismatches and failures
114
+ - Native tools are faster and more reliable for local file operations
115
+ - EXA and Context7 run inside Docker for isolation and consistent environment
116
+ - playwright runs directly for better browser integration with host system
package/LICENSE CHANGED
@@ -1,48 +1,48 @@
1
- Commons Clause License Condition v1.0
2
-
3
- The Software is provided to you by the Licensor under the License,
4
- as defined below, subject to the following condition.
5
-
6
- Without limiting other conditions in the License, the grant of rights
7
- under the License will not include, and the License does not grant to
8
- you, the right to Sell the Software.
9
-
10
- For purposes of the foregoing, "Sell" means practicing any or all of
11
- the rights granted to you under the License to provide to third parties,
12
- for a fee or other consideration (including without limitation fees for
13
- hosting or consulting/support services related to the Software), a
14
- product or service whose value derives, entirely or substantially, from
15
- the functionality of the Software.
16
-
17
- Any license notice or attribution required by the License must also
18
- include this Commons Clause License Condition notice.
19
-
20
- ---
21
-
22
- MIT License
23
-
24
- Copyright (c) 2025 AllFluence Inc. - AIOS Framework
25
-
26
- Permission is hereby granted, free of charge, to any person obtaining a copy
27
- of this software and associated documentation files (the "Software"), to deal
28
- in the Software without restriction, including without limitation the rights
29
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
30
- copies of the Software, and to permit persons to whom the Software is
31
- furnished to do so, subject to the following conditions:
32
-
33
- The above copyright notice and this permission notice shall be included in all
34
- copies or substantial portions of the Software.
35
-
36
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
37
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
38
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
39
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
40
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
41
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
42
- SOFTWARE.
43
-
44
- ---
45
-
46
- Software: Synkra AIOS (AI-Orchestrated System for Full Stack Development)
47
- License: MIT
48
- Licensor: AllFluence Inc.
1
+ Commons Clause License Condition v1.0
2
+
3
+ The Software is provided to you by the Licensor under the License,
4
+ as defined below, subject to the following condition.
5
+
6
+ Without limiting other conditions in the License, the grant of rights
7
+ under the License will not include, and the License does not grant to
8
+ you, the right to Sell the Software.
9
+
10
+ For purposes of the foregoing, "Sell" means practicing any or all of
11
+ the rights granted to you under the License to provide to third parties,
12
+ for a fee or other consideration (including without limitation fees for
13
+ hosting or consulting/support services related to the Software), a
14
+ product or service whose value derives, entirely or substantially, from
15
+ the functionality of the Software.
16
+
17
+ Any license notice or attribution required by the License must also
18
+ include this Commons Clause License Condition notice.
19
+
20
+ ---
21
+
22
+ MIT License
23
+
24
+ Copyright (c) 2025 AllFluence Inc. - AIOS Framework
25
+
26
+ Permission is hereby granted, free of charge, to any person obtaining a copy
27
+ of this software and associated documentation files (the "Software"), to deal
28
+ in the Software without restriction, including without limitation the rights
29
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
30
+ copies of the Software, and to permit persons to whom the Software is
31
+ furnished to do so, subject to the following conditions:
32
+
33
+ The above copyright notice and this permission notice shall be included in all
34
+ copies or substantial portions of the Software.
35
+
36
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
37
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
38
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
39
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
40
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
41
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
42
+ SOFTWARE.
43
+
44
+ ---
45
+
46
+ Software: Synkra AIOS (AI-Orchestrated System for Full Stack Development)
47
+ License: MIT
48
+ Licensor: AllFluence Inc.
package/README.md CHANGED
@@ -510,7 +510,7 @@ Sistema automatizado de detecção de gaps em **7 categorias**:
510
510
  node outputs/architecture-map/schemas/validate-tool-references.js
511
511
  ```
512
512
  - Valida ferramentas MCP/CLI/Local
513
- - Suporta dual-mode (Legacy/1MCP)
513
+ - Integração com Docker MCP Toolkit
514
514
 
515
515
  ### 📈 Epic 2 & 3 Achievements
516
516
 
@@ -525,8 +525,8 @@ Sistema automatizado de detecção de gaps em **7 categorias**:
525
525
  - ✅ **88 Orphaned Active gaps resolvidos** (Stories 3.1.1-3.1.4)
526
526
  - ✅ 54 utilities ativas documentadas em `core-config.yaml`
527
527
  - ✅ 19 utilities arquivadas com rationale
528
- - ✅ **85% token reduction** via 1MCP integration (280k → 40k tokens)
529
- - ✅ Dual-mode validation (Legacy/1MCP)
528
+ - ✅ **85% token reduction** via Docker MCP Toolkit (280k → 40k tokens)
529
+ - ✅ MCP governance consolidated under DevOps Agent (Story 6.14)
530
530
  - ✅ Pre-commit hooks + Quarterly audit
531
531
 
532
532
  ### 🚀 Quick Start
@@ -565,7 +565,6 @@ cp outputs/architecture-map/mermaid/synthesis-layered-view.mmd docs/
565
565
 
566
566
  ### 🎯 Roadmap v1.1
567
567
 
568
- - [ ] Story 3.31 - 1MCP preset relationship synthesis
569
568
  - [ ] Interactive Miro board export
570
569
  - [ ] Real-time Neo4j updates on code changes
571
570
  - [ ] VSCode extension for inline visualization
package/bin/aios-init.js CHANGED
@@ -289,11 +289,12 @@ async function main() {
289
289
  }
290
290
 
291
291
  // Step 2: Install AIOS CORE agents and tasks for Claude Code
292
+ // v2.1: Agents and tasks are in development/ module
292
293
  if (ides.includes('claude')) {
293
- const coreAgentsSource = path.join(targetCoreDir, 'agents');
294
+ const coreAgentsSource = path.join(targetCoreDir, 'development', 'agents');
294
295
  const coreAgentsTarget = path.join(context.projectRoot, '.claude', 'commands', 'AIOS', 'agents');
295
296
 
296
- const coreTasksSource = path.join(targetCoreDir, 'tasks');
297
+ const coreTasksSource = path.join(targetCoreDir, 'development', 'tasks');
297
298
  const coreTasksTarget = path.join(context.projectRoot, '.claude', 'commands', 'AIOS', 'tasks');
298
299
 
299
300
  if (fs.existsSync(coreAgentsSource)) {
@@ -325,8 +326,9 @@ See .aios-core/user-guide.md for complete documentation.
325
326
  }
326
327
 
327
328
  // Step 3: Install AIOS CORE agents for Cursor
329
+ // v2.1: Agents are in development/ module
328
330
  if (ides.includes('cursor')) {
329
- const coreAgentsSource = path.join(targetCoreDir, 'agents');
331
+ const coreAgentsSource = path.join(targetCoreDir, 'development', 'agents');
330
332
  const cursorRulesTarget = path.join(context.projectRoot, '.cursor', 'rules', 'AIOS', 'agents');
331
333
 
332
334
  if (fs.existsSync(coreAgentsSource)) {
@@ -360,10 +362,11 @@ See .aios-core/user-guide.md for complete documentation.
360
362
  }
361
363
 
362
364
  // Step 4: Install AIOS CORE agents for other IDEs (Trae, Cline, Gemini, AntiGravity)
365
+ // v2.1: Agents are in development/ module
363
366
  const otherIdeInstalls = ['trae', 'cline', 'gemini', 'antigravity'];
364
367
  for (const ide of otherIdeInstalls) {
365
368
  if (ides.includes(ide)) {
366
- const coreAgentsSource = path.join(targetCoreDir, 'agents');
369
+ const coreAgentsSource = path.join(targetCoreDir, 'development', 'agents');
367
370
  const ideRulesDir = ide === 'gemini' ? '.gemini' : `.${ide}`;
368
371
  const ideRulesTarget = path.join(context.projectRoot, ideRulesDir, 'rules', 'AIOS', 'agents');
369
372
 
@@ -385,8 +388,9 @@ See .aios-core/user-guide.md for complete documentation.
385
388
  }
386
389
 
387
390
  // Step 5: Install Roo Code modes
391
+ // v2.1: Agents are in development/ module
388
392
  if (ides.includes('roo')) {
389
- const coreAgentsSource = path.join(targetCoreDir, 'agents');
393
+ const coreAgentsSource = path.join(targetCoreDir, 'development', 'agents');
390
394
  const rooModesPath = path.join(context.projectRoot, '.roomodes');
391
395
 
392
396
  if (fs.existsSync(coreAgentsSource)) {
@@ -412,8 +416,9 @@ See .aios-core/user-guide.md for complete documentation.
412
416
  }
413
417
 
414
418
  // Step 6: Install GitHub Copilot chat modes
419
+ // v2.1: Agents are in development/ module
415
420
  if (ides.includes('github-copilot')) {
416
- const coreAgentsSource = path.join(targetCoreDir, 'agents');
421
+ const coreAgentsSource = path.join(targetCoreDir, 'development', 'agents');
417
422
  const copilotModesDir = path.join(context.projectRoot, '.github', 'chatmodes');
418
423
 
419
424
  if (fs.existsSync(coreAgentsSource)) {
package/bin/aios.js CHANGED
@@ -234,11 +234,12 @@ async function main() {
234
234
  await runWizard();
235
235
  break;
236
236
 
237
- case 'init':
237
+ case 'init': {
238
238
  // Create new project
239
239
  const projectName = args[1];
240
240
  await initProject(projectName);
241
241
  break;
242
+ }
242
243
 
243
244
  case 'info':
244
245
  showInfo();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aios-core",
3
- "version": "2.2.1",
3
+ "version": "2.3.1",
4
4
  "description": "Synkra AIOS: AI-Orchestrated System for Full Stack Development - Core Framework",
5
5
  "main": "index.js",
6
6
  "module": "index.esm.js",
@@ -14,9 +14,7 @@
14
14
  "workspaces": [
15
15
  ".aios-core",
16
16
  "memory",
17
- "security",
18
17
  "performance",
19
- "telemetry",
20
18
  "packages/*"
21
19
  ],
22
20
  "files": [
@@ -93,6 +91,7 @@
93
91
  "glob": "^11.0.3",
94
92
  "handlebars": "^4.7.8",
95
93
  "inquirer": "^8.2.6",
94
+ "isolated-vm": "^5.0.4",
96
95
  "js-yaml": "^4.1.0",
97
96
  "ora": "^5.4.1",
98
97
  "picocolors": "^1.1.1",
@@ -1,39 +1,39 @@
1
- {
2
- "name": "@aios/installer",
3
- "version": "2.1.0",
4
- "description": "AIOS Installer - Automated setup wizard for AIOS projects (greenfield & brownfield)",
5
- "main": "src/index.js",
6
- "bin": {
7
- "aios-installer": "./src/index.js"
8
- },
9
- "scripts": {
10
- "test": "jest",
11
- "test:watch": "jest --watch",
12
- "test:coverage": "jest --coverage",
13
- "test:unit": "jest tests/unit",
14
- "test:integration": "jest tests/integration"
15
- },
16
- "keywords": [
17
- "aios",
18
- "installer",
19
- "wizard",
20
- "cli",
21
- "setup",
22
- "greenfield",
23
- "brownfield"
24
- ],
25
- "author": "AIOS Fullstack Team",
26
- "license": "MIT",
27
- "engines": {
28
- "node": ">=18.0.0"
29
- },
30
- "dependencies": {
31
- "@clack/prompts": "^0.11.0",
32
- "chalk": "^4.1.2",
33
- "fs-extra": "^11.3.2"
34
- },
35
- "devDependencies": {
36
- "jest": "^30.2.0"
37
- }
38
- }
39
-
1
+ {
2
+ "name": "@aios/installer",
3
+ "version": "2.1.0",
4
+ "description": "AIOS Installer - Automated setup wizard for AIOS projects (greenfield & brownfield)",
5
+ "main": "src/index.js",
6
+ "bin": {
7
+ "aios-installer": "./src/index.js"
8
+ },
9
+ "scripts": {
10
+ "test": "jest",
11
+ "test:watch": "jest --watch",
12
+ "test:coverage": "jest --coverage",
13
+ "test:unit": "jest tests/unit",
14
+ "test:integration": "jest tests/integration"
15
+ },
16
+ "keywords": [
17
+ "aios",
18
+ "installer",
19
+ "wizard",
20
+ "cli",
21
+ "setup",
22
+ "greenfield",
23
+ "brownfield"
24
+ ],
25
+ "author": "AIOS Fullstack Team",
26
+ "license": "MIT",
27
+ "engines": {
28
+ "node": ">=18.0.0"
29
+ },
30
+ "dependencies": {
31
+ "@clack/prompts": "^0.11.0",
32
+ "chalk": "^4.1.2",
33
+ "fs-extra": "^11.3.2"
34
+ },
35
+ "devDependencies": {
36
+ "jest": "^30.2.0"
37
+ }
38
+ }
39
+
@@ -9,7 +9,6 @@ const fs = require('fs-extra');
9
9
  const path = require('path');
10
10
  const os = require('os');
11
11
  const { configureEnvironment, updateGitignore } = require('../../src/config/configure-environment');
12
- const pkg = require('../../../../package.json');
13
12
 
14
13
  /**
15
14
  * Cleanup helper with retry logic for flaky file system operations
@@ -73,7 +72,8 @@ describe('Environment Configuration Integration', () => {
73
72
 
74
73
  const content = await fs.readFile(envPath, 'utf8');
75
74
  expect(content).toContain('NODE_ENV=development');
76
- expect(content).toContain(`AIOS_VERSION=${pkg.version}`);
75
+ // Version-agnostic: check AIOS_VERSION exists with valid semver format
76
+ expect(content).toMatch(/AIOS_VERSION=\d+\.\d+\.\d+/);
77
77
  });
78
78
 
79
79
  it('should create .env.example file', async () => {
@@ -6,7 +6,6 @@
6
6
  */
7
7
 
8
8
  const { generateEnvContent, generateEnvExample } = require('../../src/config/templates/env-template');
9
- const pkg = require('../../../../package.json');
10
9
 
11
10
  describe('.env Template Generator', () => {
12
11
  describe('generateEnvContent', () => {
@@ -14,7 +13,8 @@ describe('.env Template Generator', () => {
14
13
  const content = generateEnvContent();
15
14
 
16
15
  expect(content).toContain('NODE_ENV=development');
17
- expect(content).toContain(`AIOS_VERSION=${pkg.version}`);
16
+ // Version-agnostic: check AIOS_VERSION exists with valid semver format
17
+ expect(content).toMatch(/AIOS_VERSION=\d+\.\d+\.\d+/);
18
18
  expect(content).toContain('OPENAI_API_KEY=');
19
19
  expect(content).toContain('ANTHROPIC_API_KEY=');
20
20
  expect(content).toContain('# Synkra AIOS Environment Configuration');
@@ -84,7 +84,8 @@ describe('.env Template Generator', () => {
84
84
  const content = generateEnvExample();
85
85
 
86
86
  expect(content).toContain('NODE_ENV=development');
87
- expect(content).toContain(`AIOS_VERSION=${pkg.version}`);
87
+ // Version-agnostic: check AIOS_VERSION exists with valid semver format
88
+ expect(content).toMatch(/AIOS_VERSION=\d+\.\d+\.\d+/);
88
89
  expect(content).toContain('OPENAI_API_KEY=');
89
90
  expect(content).toContain('ANTHROPIC_API_KEY=');
90
91
  expect(content).toContain('CLICKUP_API_KEY=');
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) {{year}} {{author}}
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) {{year}} {{author}}
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.