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
@@ -0,0 +1,309 @@
1
+ # Search MCP Catalog Task
2
+
3
+ > Search and discover available MCP servers in the Docker MCP Toolkit catalog.
4
+
5
+ ---
6
+
7
+ ## Task Definition
8
+
9
+ ```yaml
10
+ task: searchMcp()
11
+ responsavel: DevOps Agent
12
+ responsavel_type: Agente
13
+ atomic_layer: Infrastructure
14
+ elicit: true
15
+
16
+ **Entrada:**
17
+ - campo: search_query
18
+ tipo: string
19
+ origem: User Input
20
+ obrigatorio: true
21
+ validacao: Search query for MCP catalog (e.g., "notion", "database", "slack")
22
+
23
+ **Saida:**
24
+ - campo: mcp_results
25
+ tipo: array
26
+ destino: Console output
27
+ persistido: false
28
+
29
+ - campo: mcp_details
30
+ tipo: object
31
+ destino: Console output (if user selects an MCP)
32
+ persistido: false
33
+ ```
34
+
35
+ ---
36
+
37
+ ## Pre-Conditions
38
+
39
+ ```yaml
40
+ pre-conditions:
41
+ - [ ] Docker MCP Toolkit running
42
+ tipo: pre-condition
43
+ blocker: true
44
+ validacao: docker mcp --version succeeds
45
+ error_message: "Docker MCP Toolkit required. Enable in Docker Desktop settings."
46
+
47
+ - [ ] Docker daemon running
48
+ tipo: pre-condition
49
+ blocker: true
50
+ validacao: docker info succeeds
51
+ error_message: "Start Docker Desktop before running this task"
52
+ ```
53
+
54
+ ---
55
+
56
+ ## Interactive Elicitation
57
+
58
+ ### Step 1: Search Query
59
+
60
+ ```
61
+ ELICIT: MCP Search Query
62
+
63
+ What type of MCP server are you looking for?
64
+
65
+ Examples:
66
+ • "notion" - Workspace and document management
67
+ • "database" - Database integrations (postgres, mysql, sqlite)
68
+ • "slack" - Team messaging
69
+ • "browser" - Browser automation (puppeteer, playwright)
70
+ • "storage" - Cloud storage (s3, gcs)
71
+ • "*" - List all available MCPs
72
+
73
+ → Enter search query: _______________
74
+ ```
75
+
76
+ ### Step 2: Display Results
77
+
78
+ ```
79
+ ELICIT: Search Results
80
+
81
+ Found {n} MCPs matching "{query}":
82
+
83
+ ┌─────────────────────────────────────────────────────────────────┐
84
+ │ # │ MCP Name │ Description │
85
+ ├─────────────────────────────────────────────────────────────────┤
86
+ │ 1 │ mcp/notion │ Notion workspace integration │
87
+ │ 2 │ mcp/postgres │ PostgreSQL database access │
88
+ │ 3 │ mcp/sqlite │ SQLite local database │
89
+ │ 4 │ mcp/mysql │ MySQL database access │
90
+ └─────────────────────────────────────────────────────────────────┘
91
+
92
+ Options:
93
+ • Enter a number to see details
94
+ • Type "add {number}" to add the MCP
95
+ • Type "search {query}" to search again
96
+ • Type "exit" to finish
97
+
98
+ → Select option: ___
99
+ ```
100
+
101
+ ### Step 3: Show MCP Details (Optional)
102
+
103
+ ```
104
+ ELICIT: MCP Details
105
+
106
+ 📦 mcp/{name}
107
+
108
+ Description: {full_description}
109
+
110
+ 🔧 Tools Provided:
111
+ • tool1 - Description of tool1
112
+ • tool2 - Description of tool2
113
+ • tool3 - Description of tool3
114
+
115
+ 🔑 Required Credentials:
116
+ • {CREDENTIAL_NAME} - {description}
117
+ • (none) - if no credentials needed
118
+
119
+ 📋 Example Usage:
120
+ docker mcp server add {name}
121
+ docker mcp tools call {name}.{tool} --param value
122
+
123
+ Options:
124
+ • Type "add" to add this MCP
125
+ • Type "back" to return to results
126
+ • Type "exit" to finish
127
+
128
+ → Select option: ___
129
+ ```
130
+
131
+ ---
132
+
133
+ ## Implementation Steps
134
+
135
+ ### 1. Search the Catalog
136
+
137
+ ```bash
138
+ # Basic search
139
+ docker mcp catalog search {query}
140
+
141
+ # Example: Search for "notion"
142
+ docker mcp catalog search notion
143
+
144
+ # List all MCPs
145
+ docker mcp catalog search "*"
146
+
147
+ # Example output:
148
+ # NAME DESCRIPTION
149
+ # mcp/notion Notion workspace integration
150
+ # mcp/postgres PostgreSQL database access
151
+ ```
152
+
153
+ ### 2. Get MCP Details
154
+
155
+ ```bash
156
+ # Get detailed info about an MCP
157
+ docker mcp catalog info {mcp-name}
158
+
159
+ # Example: Get notion details
160
+ docker mcp catalog info notion
161
+
162
+ # Example output:
163
+ # Name: mcp/notion
164
+ # Description: Notion workspace integration
165
+ # Tools:
166
+ # - getPage: Retrieve a Notion page
167
+ # - createPage: Create a new page
168
+ # - search: Search Notion workspace
169
+ # Environment:
170
+ # - NOTION_API_KEY (required)
171
+ ```
172
+
173
+ ### 3. Filter by Category (if supported)
174
+
175
+ ```bash
176
+ # Search by category
177
+ docker mcp catalog search --category database
178
+ docker mcp catalog search --category productivity
179
+ docker mcp catalog search --category automation
180
+ ```
181
+
182
+ ---
183
+
184
+ ## Post-Conditions
185
+
186
+ ```yaml
187
+ post-conditions:
188
+ - [ ] Search results displayed
189
+ tipo: post-condition
190
+ blocker: false
191
+ validacao: User can see matching MCPs or "no results" message
192
+ error_message: "Search failed - check Docker MCP connection"
193
+ ```
194
+
195
+ ---
196
+
197
+ ## Error Handling
198
+
199
+ ### Error: No Results Found
200
+
201
+ ```
202
+ Resolution:
203
+ 1. Try a broader search query
204
+ 2. Use wildcards: docker mcp catalog search "*database*"
205
+ 3. Check available categories: docker mcp catalog categories
206
+ 4. Browse full catalog: docker mcp catalog search "*"
207
+ ```
208
+
209
+ ### Error: Docker MCP Not Available
210
+
211
+ ```
212
+ Resolution:
213
+ 1. Verify Docker Desktop 4.50+ is installed
214
+ 2. Enable MCP Toolkit: Docker Desktop > Settings > Extensions > MCP Toolkit
215
+ 3. Restart Docker Desktop
216
+ 4. Verify: docker mcp --version
217
+ ```
218
+
219
+ ### Error: Catalog Timeout
220
+
221
+ ```
222
+ Resolution:
223
+ 1. Check internet connection
224
+ 2. Docker MCP catalog requires network access
225
+ 3. Retry: docker mcp catalog search {query}
226
+ 4. Check Docker proxy settings if behind firewall
227
+ ```
228
+
229
+ ---
230
+
231
+ ## Success Output
232
+
233
+ ```
234
+ ✅ MCP Catalog Search Complete
235
+
236
+ 🔍 Query: "{query}"
237
+ 📦 Results: {n} MCPs found
238
+
239
+ ┌─────────────────────────────────────────────────────────────────┐
240
+ │ MCP Name │ Description │ Credentials │
241
+ ├─────────────────────────────────────────────────────────────────┤
242
+ │ mcp/notion │ Notion workspace │ NOTION_API_KEY │
243
+ │ mcp/postgres │ PostgreSQL access │ DATABASE_URL │
244
+ │ mcp/sqlite │ SQLite local DB │ None │
245
+ └─────────────────────────────────────────────────────────────────┘
246
+
247
+ Next steps:
248
+ 1. View details: *search-mcp → select number
249
+ 2. Add an MCP: *add-mcp {name}
250
+ 3. List enabled MCPs: *list-mcps
251
+ ```
252
+
253
+ ---
254
+
255
+ ## Common Search Examples
256
+
257
+ | Search Query | Finds | Use Case |
258
+ |--------------|-------|----------|
259
+ | `notion` | Notion workspace MCP | Document management |
260
+ | `database` | postgres, mysql, sqlite, redis | Database access |
261
+ | `slack` | Slack messaging MCP | Team communication |
262
+ | `browser` | puppeteer, playwright | Browser automation |
263
+ | `storage` | s3, gcs, azure-blob | Cloud storage |
264
+ | `github` | GitHub API MCP | Repository management |
265
+ | `*` | All available MCPs | Browse full catalog |
266
+
267
+ ---
268
+
269
+ ## Related Commands
270
+
271
+ | Command | Description |
272
+ |---------|-------------|
273
+ | `*add-mcp` | Add an MCP server to Docker MCP Toolkit |
274
+ | `*list-mcps` | List currently enabled MCPs |
275
+ | `*remove-mcp` | Remove an MCP from Docker MCP Toolkit |
276
+ | `*setup-mcp-docker` | Initial Docker MCP Toolkit setup |
277
+
278
+ ---
279
+
280
+ ## Performance
281
+
282
+ ```yaml
283
+ duration_expected: 1-2 minutes
284
+ cost_estimated: $0 (local Docker operation)
285
+ token_usage: ~200-500 tokens
286
+ ```
287
+
288
+ ---
289
+
290
+ ## Metadata
291
+
292
+ ```yaml
293
+ task: search-mcp
294
+ version: 1.0.0
295
+ story: Story 6.14 - MCP Governance Consolidation
296
+ dependencies:
297
+ - Docker MCP Toolkit
298
+ - Docker Desktop 4.50+
299
+ tags:
300
+ - infrastructure
301
+ - mcp
302
+ - docker
303
+ - discovery
304
+ - catalog
305
+ created_at: 2025-12-17
306
+ updated_at: 2025-12-17
307
+ agents:
308
+ - devops
309
+ ```
@@ -1,10 +1,10 @@
1
1
  # Setup Docker MCP Toolkit
2
2
 
3
3
  **Task ID:** setup-mcp-docker
4
- **Version:** 2.0.0
4
+ **Version:** 2.1.0
5
5
  **Created:** 2025-12-08
6
- **Updated:** 2025-12-08
7
- **Agent:** @devops (Gage) / @dev (Dex)
6
+ **Updated:** 2025-12-17
7
+ **Agent:** @devops (Gage)
8
8
 
9
9
  ---
10
10
 
@@ -63,7 +63,7 @@ Configure Docker MCP Toolkit as the primary MCP infrastructure for AIOS, using *
63
63
 
64
64
  ```yaml
65
65
  task: setupMcpDocker()
66
- responsável: DevOps Agent / Dev Agent
66
+ responsável: DevOps Agent
67
67
  responsavel_type: Agente
68
68
  atomic_layer: Infrastructure
69
69
 
@@ -556,8 +556,8 @@ token_usage: ~500-1,000 tokens (this task only)
556
556
  ## Metadata
557
557
 
558
558
  ```yaml
559
- story: Docker MCP Migration (Story 5.11)
560
- version: 2.0.0
559
+ story: Story 6.14 - MCP Governance Consolidation
560
+ version: 2.1.0
561
561
  dependencies:
562
562
  - Docker Desktop 4.50+
563
563
  - Docker MCP Toolkit
@@ -568,11 +568,14 @@ tags:
568
568
  - docker
569
569
  - setup
570
570
  - http-transport
571
- updated_at: 2025-12-08
571
+ created_at: 2025-12-08
572
+ updated_at: 2025-12-17
572
573
  agents:
573
574
  - devops
574
- - dev
575
575
  changelog:
576
+ 2.1.0:
577
+ - Changed: DevOps Agent now exclusive responsible (Story 6.14)
578
+ - Removed: Dev Agent from agents list
576
579
  2.0.0:
577
580
  - BREAKING: Changed from stdio to HTTP transport
578
581
  - Added: gateway-service.yml for persistent gateway
@@ -0,0 +1,151 @@
1
+ ---
2
+ task: Validate Squad
3
+ responsável: @squad-creator
4
+ responsável_type: agent
5
+ atomic_layer: task
6
+ Entrada: |
7
+ - squad_path: Path to the squad directory (default: ./squads/{name})
8
+ - name: Squad name (alternative to full path)
9
+ - strict: If true, warnings become errors (default: false)
10
+ - verbose: If true, show detailed output (default: false)
11
+ Saída: |
12
+ - validation_result: Object with { valid, errors, warnings, suggestions }
13
+ - report: Formatted report for display
14
+ - exit_code: 0 if valid, 1 if invalid
15
+ Checklist:
16
+ - [ ] Resolve squad path via squad-loader
17
+ - [ ] Execute squad-validator.validate()
18
+ - [ ] Format result for output
19
+ - [ ] Return appropriate exit code
20
+ ---
21
+
22
+ # *validate-squad
23
+
24
+ Validates a squad against the JSON Schema and TASK-FORMAT-SPECIFICATION-V1.
25
+
26
+ ## Usage
27
+
28
+ ```
29
+ @squad-creator
30
+ *validate-squad ./squads/my-squad
31
+ *validate-squad my-squad
32
+ *validate-squad my-squad --strict
33
+ *validate-squad my-squad --verbose
34
+ ```
35
+
36
+ ## Parameters
37
+
38
+ | Parameter | Type | Default | Description |
39
+ |-----------|------|---------|-------------|
40
+ | `squad_path` | string | - | Full path to squad directory |
41
+ | `name` | string | - | Squad name (resolves to ./squads/{name}) |
42
+ | `--strict` | flag | false | Treat warnings as errors |
43
+ | `--verbose` | flag | false | Show detailed validation output |
44
+
45
+ ## Validation Checks
46
+
47
+ ### 1. Manifest Validation
48
+ - Checks for `squad.yaml` or `config.yaml` (deprecated)
49
+ - Validates against JSON Schema
50
+ - Required fields: `name`, `version`
51
+
52
+ ### 2. Structure Validation
53
+ - Checks for expected directories: `tasks/`, `agents/`
54
+ - Verifies referenced files exist
55
+
56
+ ### 3. Task Validation (TASK-FORMAT-SPECIFICATION-V1)
57
+ - Checks for required fields in task files
58
+ - Validates naming conventions (kebab-case)
59
+
60
+ ### 4. Agent Validation
61
+ - Checks for valid agent definition format
62
+ - Validates naming conventions
63
+
64
+ ## Flow
65
+
66
+ ```
67
+ 1. Resolve squad path
68
+ ├── If full path provided → use directly
69
+ └── If name provided → resolve via ./squads/{name}/
70
+
71
+ 2. Execute validations
72
+ ├── validateManifest() → Schema check
73
+ ├── validateStructure() → Directory check
74
+ ├── validateTasks() → Task format check
75
+ └── validateAgents() → Agent format check
76
+
77
+ 3. Format and display result
78
+ ├── Show errors (if any)
79
+ ├── Show warnings (if any)
80
+ └── Show final result (VALID/INVALID)
81
+
82
+ 4. Return exit code
83
+ ├── 0 → Valid (or valid with warnings)
84
+ └── 1 → Invalid (errors found)
85
+ ```
86
+
87
+ ## Output Example
88
+
89
+ ```
90
+ Validating squad: ./squads/my-squad/
91
+
92
+ Errors: 0
93
+ Warnings: 2
94
+ - [MISSING_DIRECTORY]: Expected directory not found: workflows/
95
+ Suggestion: mkdir workflows (task-first architecture recommends tasks/ and agents/)
96
+ - [TASK_MISSING_FIELD] (my-task.md): Task missing recommended field: Checklist
97
+ Suggestion: Add "Checklist:" to my-task.md (TASK-FORMAT-SPECIFICATION-V1)
98
+
99
+ Result: VALID (with warnings)
100
+ ```
101
+
102
+ ## Error Codes
103
+
104
+ | Code | Severity | Description |
105
+ |------|----------|-------------|
106
+ | `MANIFEST_NOT_FOUND` | Error | No squad.yaml or config.yaml found |
107
+ | `YAML_PARSE_ERROR` | Error | Invalid YAML syntax |
108
+ | `SCHEMA_ERROR` | Error | Manifest doesn't match JSON Schema |
109
+ | `FILE_NOT_FOUND` | Error | Referenced file doesn't exist |
110
+ | `DEPRECATED_MANIFEST` | Warning | Using config.yaml instead of squad.yaml |
111
+ | `MISSING_DIRECTORY` | Warning | Expected directory not found |
112
+ | `NO_TASKS` | Warning | No task files in tasks/ |
113
+ | `TASK_MISSING_FIELD` | Warning | Task missing recommended field |
114
+ | `AGENT_INVALID_FORMAT` | Warning | Agent file may not follow format |
115
+ | `INVALID_NAMING` | Warning | Filename not in kebab-case |
116
+
117
+ ## Implementation
118
+
119
+ ```javascript
120
+ const { SquadLoader } = require('./.aios-core/development/scripts/squad');
121
+ const { SquadValidator } = require('./.aios-core/development/scripts/squad');
122
+
123
+ async function validateSquad(options) {
124
+ const { squadPath, name, strict, verbose } = options;
125
+
126
+ // Resolve path
127
+ const loader = new SquadLoader();
128
+ let resolvedPath = squadPath;
129
+ if (!squadPath && name) {
130
+ const resolved = await loader.resolve(name);
131
+ resolvedPath = resolved.path;
132
+ }
133
+
134
+ // Validate
135
+ const validator = new SquadValidator({ strict, verbose });
136
+ const result = await validator.validate(resolvedPath);
137
+
138
+ // Format output
139
+ console.log(validator.formatResult(result, resolvedPath));
140
+
141
+ // Return exit code
142
+ return result.valid ? 0 : 1;
143
+ }
144
+ ```
145
+
146
+ ## Related
147
+
148
+ - **Story:** SQS-3 (Squad Validator + JSON Schema)
149
+ - **Dependencies:** squad-loader.js, squad-validator.js
150
+ - **Schema:** .aios-core/schemas/squad-schema.json
151
+ - **Agent:** @squad-creator (Craft)
@@ -30,7 +30,7 @@
30
30
 
31
31
  ┌─────────────────────────────────────┐
32
32
  │ LAYER 2: Output Formatter │ ← Template engine (JS)
33
- │ (.aios-core/scripts/)
33
+ │ (.aios-core/infrastructure/scripts/)│
34
34
  └─────────────────────────────────────┘
35
35
 
36
36
  ┌─────────────────────────────────────┐
@@ -156,7 +156,7 @@ archetypes:
156
156
  ### Template Engine Architecture
157
157
 
158
158
  ```javascript
159
- // .aios-core/scripts/output-formatter.js
159
+ // .aios-core/infrastructure/scripts/output-formatter.js
160
160
 
161
161
  class PersonalizedOutputFormatter {
162
162
  constructor(agent, task, results) {
@@ -238,7 +238,7 @@ class PersonalizedOutputFormatter {
238
238
  ### Pattern Validation
239
239
 
240
240
  ```javascript
241
- // .aios-core/scripts/validate-output-pattern.js
241
+ // .aios-core/infrastructure/scripts/validate-output-pattern.js
242
242
 
243
243
  /**
244
244
  * Ensures all task outputs follow standard structure
@@ -1,8 +1,8 @@
1
- // @aios-fullstack/core - TypeScript Definitions
2
- export declare const MetaAgent: any;
3
- export declare const TaskManager: any;
4
- export declare const ElicitationEngine: any;
5
- export declare const TemplateEngine: any;
6
- export declare const ComponentSearch: any;
7
- export declare const DependencyAnalyzer: any;
1
+ // @aios-fullstack/core - TypeScript Definitions
2
+ export declare const MetaAgent: any;
3
+ export declare const TaskManager: any;
4
+ export declare const ElicitationEngine: any;
5
+ export declare const TemplateEngine: any;
6
+ export declare const ComponentSearch: any;
7
+ export declare const DependencyAnalyzer: any;
8
8
  export {};
@@ -1,7 +1,7 @@
1
1
  // @synkra/aios-core/core - CommonJS Entry Point
2
2
  const MetaAgent = require('./infrastructure/scripts/component-generator.js');
3
3
  const TaskManager = require('./infrastructure/scripts/batch-creator.js');
4
- const ElicitationEngine = require('./scripts/elicitation-engine.js');
4
+ const ElicitationEngine = require('./core/elicitation/elicitation-engine.js');
5
5
  const TemplateEngine = require('./infrastructure/scripts/template-engine.js');
6
6
  const ComponentSearch = require('./infrastructure/scripts/component-search.js');
7
7
  const DependencyAnalyzer = require('./infrastructure/scripts/dependency-analyzer.js');
@@ -7,7 +7,7 @@
7
7
  const fs = require('fs-extra');
8
8
  const path = require('path');
9
9
  const ComponentGenerator = require('./component-generator');
10
- const ElicitationEngine = require('../../scripts/elicitation-engine');
10
+ const ElicitationEngine = require('../../core/elicitation/elicitation-engine');
11
11
  const DependencyAnalyzer = require('./dependency-analyzer');
12
12
  const TransactionManager = require('./transaction-manager');
13
13
  const chalk = require('chalk');
@@ -10,7 +10,7 @@ const TemplateEngine = require('./template-engine');
10
10
  const TemplateValidator = require('./template-validator');
11
11
  const SecurityChecker = require('./security-checker');
12
12
  const YAMLValidator = require('./yaml-validator');
13
- const ElicitationEngine = require('../../scripts/elicitation-engine');
13
+ const ElicitationEngine = require('../../core/elicitation/elicitation-engine');
14
14
  // const ComponentPreview = require('./component-preview'); // Archived in archived-utilities/ (Story 3.1.2)
15
15
  // const ManifestPreview = require('./manifest-preview'); // Archived in archived-utilities/ (Story 3.1.3)
16
16
  const ComponentMetadata = require('./component-metadata');