aios-core 4.0.4 → 4.2.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 (107) hide show
  1. package/.aios-core/cli/commands/migrate/analyze.js +6 -6
  2. package/.aios-core/cli/commands/migrate/backup.js +2 -2
  3. package/.aios-core/cli/commands/migrate/execute.js +4 -4
  4. package/.aios-core/cli/commands/migrate/index.js +5 -5
  5. package/.aios-core/cli/commands/migrate/rollback.js +6 -6
  6. package/.aios-core/cli/commands/migrate/update-imports.js +2 -2
  7. package/.aios-core/cli/commands/migrate/validate.js +2 -2
  8. package/.aios-core/cli/commands/pro/index.js +52 -0
  9. package/.aios-core/cli/index.js +1 -1
  10. package/.aios-core/core/ids/registry-updater.js +29 -3
  11. package/.aios-core/core/migration/migration-config.yaml +2 -2
  12. package/.aios-core/core/migration/module-mapping.yaml +2 -2
  13. package/.aios-core/core/registry/README.md +2 -2
  14. package/.aios-core/core/synapse/context/context-builder.js +34 -0
  15. package/.aios-core/core/synapse/diagnostics/collectors/consistency-collector.js +168 -0
  16. package/.aios-core/core/synapse/diagnostics/collectors/hook-collector.js +129 -0
  17. package/.aios-core/core/synapse/diagnostics/collectors/manifest-collector.js +82 -0
  18. package/.aios-core/core/synapse/diagnostics/collectors/output-analyzer.js +134 -0
  19. package/.aios-core/core/synapse/diagnostics/collectors/pipeline-collector.js +75 -0
  20. package/.aios-core/core/synapse/diagnostics/collectors/quality-collector.js +252 -0
  21. package/.aios-core/core/synapse/diagnostics/collectors/relevance-matrix.js +174 -0
  22. package/.aios-core/core/synapse/diagnostics/collectors/safe-read-json.js +31 -0
  23. package/.aios-core/core/synapse/diagnostics/collectors/session-collector.js +102 -0
  24. package/.aios-core/core/synapse/diagnostics/collectors/timing-collector.js +126 -0
  25. package/.aios-core/core/synapse/diagnostics/collectors/uap-collector.js +83 -0
  26. package/.aios-core/core/synapse/diagnostics/report-formatter.js +484 -0
  27. package/.aios-core/core/synapse/diagnostics/synapse-diagnostics.js +95 -0
  28. package/.aios-core/core/synapse/engine.js +73 -20
  29. package/.aios-core/core/synapse/runtime/hook-runtime.js +60 -0
  30. package/.aios-core/core-config.yaml +6 -0
  31. package/.aios-core/data/agent-config-requirements.yaml +2 -2
  32. package/.aios-core/data/aios-kb.md +4 -4
  33. package/.aios-core/data/entity-registry.yaml +210 -10
  34. package/.aios-core/data/registry-update-log.jsonl +52 -0
  35. package/.aios-core/development/agents/architect.md +10 -10
  36. package/.aios-core/development/agents/devops.md +93 -50
  37. package/.aios-core/development/agents/qa.md +94 -40
  38. package/.aios-core/development/agents/ux-design-expert.md +25 -25
  39. package/.aios-core/development/scripts/activation-runtime.js +63 -0
  40. package/.aios-core/development/scripts/generate-greeting.js +9 -8
  41. package/.aios-core/development/scripts/unified-activation-pipeline.js +102 -2
  42. package/.aios-core/development/tasks/{db-expansion-pack-integration.md → db-squad-integration.md} +5 -5
  43. package/.aios-core/development/tasks/{integrate-expansion-pack.md → integrate-squad.md} +2 -2
  44. package/.aios-core/development/tasks/next.md +3 -3
  45. package/.aios-core/development/tasks/pr-automation.md +2 -2
  46. package/.aios-core/development/tasks/publish-npm.md +257 -0
  47. package/.aios-core/development/tasks/release-management.md +4 -4
  48. package/.aios-core/development/tasks/setup-github.md +1 -1
  49. package/.aios-core/development/tasks/squad-creator-migrate.md +1 -1
  50. package/.aios-core/development/tasks/squad-creator-sync-ide-command.md +14 -14
  51. package/.aios-core/development/tasks/update-aios.md +1 -1
  52. package/.aios-core/development/tasks/validate-next-story.md +99 -2
  53. package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-QUICK-REFERENCE.md +1 -1
  54. package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-V2.1.md +5 -5
  55. package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-COMPLETE.md +21 -21
  56. package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.2-SUMMARY.md +25 -25
  57. package/.aios-core/docs/standards/OPEN-SOURCE-VS-SERVICE-DIFFERENCES.md +4 -4
  58. package/.aios-core/docs/standards/QUALITY-GATES-SPECIFICATION.md +3 -3
  59. package/.aios-core/docs/standards/STANDARDS-INDEX.md +13 -13
  60. package/.aios-core/docs/standards/STORY-TEMPLATE-V2-SPECIFICATION.md +1 -1
  61. package/.aios-core/framework-config.yaml +4 -0
  62. package/.aios-core/infrastructure/scripts/codex-skills-sync/index.js +182 -0
  63. package/.aios-core/infrastructure/scripts/codex-skills-sync/validate.js +172 -0
  64. package/.aios-core/infrastructure/scripts/ide-sync/README.md +14 -0
  65. package/.aios-core/infrastructure/scripts/ide-sync/index.js +6 -0
  66. package/.aios-core/infrastructure/scripts/tool-resolver.js +4 -4
  67. package/.aios-core/infrastructure/scripts/validate-paths.js +142 -0
  68. package/.aios-core/infrastructure/templates/aios-sync.yaml.template +11 -11
  69. package/.aios-core/infrastructure/templates/github-workflows/README.md +1 -1
  70. package/.aios-core/install-manifest.yaml +193 -109
  71. package/.aios-core/local-config.yaml.template +2 -0
  72. package/.aios-core/manifests/agents.csv +29 -1
  73. package/.aios-core/manifests/tasks.csv +80 -3
  74. package/.aios-core/product/README.md +2 -2
  75. package/.aios-core/product/data/integration-patterns.md +1 -1
  76. package/.aios-core/product/templates/ide-rules/cline-rules.md +1 -1
  77. package/.aios-core/product/templates/ide-rules/codex-rules.md +65 -0
  78. package/.aios-core/product/templates/ide-rules/copilot-rules.md +1 -1
  79. package/.aios-core/product/templates/ide-rules/roo-rules.md +1 -1
  80. package/.aios-core/user-guide.md +15 -14
  81. package/.aios-core/workflow-intelligence/engine/output-formatter.js +1 -1
  82. package/.claude/hooks/synapse-engine.js +9 -20
  83. package/README.md +14 -7
  84. package/bin/aios-init.js +255 -184
  85. package/bin/aios-minimal.js +2 -2
  86. package/bin/aios.js +4 -4
  87. package/package.json +6 -1
  88. package/packages/aios-pro-cli/bin/aios-pro.js +75 -2
  89. package/packages/aios-pro-cli/package.json +5 -1
  90. package/packages/aios-pro-cli/src/recover.js +100 -0
  91. package/packages/installer/src/__tests__/performance-benchmark.js +382 -0
  92. package/packages/installer/src/config/ide-configs.js +12 -1
  93. package/packages/installer/src/config/templates/core-config-template.js +2 -2
  94. package/packages/installer/src/installer/aios-core-installer.js +2 -2
  95. package/packages/installer/src/installer/file-hasher.js +97 -0
  96. package/packages/installer/src/installer/post-install-validator.js +41 -1
  97. package/packages/installer/src/pro/pro-scaffolder.js +335 -0
  98. package/packages/installer/src/utils/aios-colors.js +2 -2
  99. package/packages/installer/src/wizard/feedback.js +1 -1
  100. package/packages/installer/src/wizard/ide-config-generator.js +2 -2
  101. package/packages/installer/src/wizard/index.js +58 -19
  102. package/packages/installer/src/wizard/pro-setup.js +931 -0
  103. package/packages/installer/src/wizard/questions.js +20 -14
  104. package/packages/installer/src/wizard/validators.js +1 -1
  105. package/scripts/code-intel-health-check.js +343 -0
  106. package/scripts/package-synapse.js +323 -0
  107. package/scripts/validate-package-completeness.js +317 -0
@@ -10,6 +10,9 @@
10
10
  * @created Story SYN-6 - SynapseEngine Orchestrator + Output Formatter
11
11
  */
12
12
 
13
+ const fs = require('fs');
14
+ const path = require('path');
15
+
13
16
  const {
14
17
  estimateContextPercent,
15
18
  calculateBracket,
@@ -18,6 +21,7 @@ const {
18
21
  needsMemoryHints,
19
22
  needsHandoffWarning,
20
23
  } = require('./context/context-tracker');
24
+ const { buildLayerContext } = require('./context/context-builder');
21
25
 
22
26
  const { formatSynapseRules } = require('./output/formatter');
23
27
  const { MemoryBridge } = require('./memory/memory-bridge');
@@ -70,9 +74,9 @@ class PipelineMetrics {
70
74
  constructor() {
71
75
  /** @type {Object.<string, object>} Per-layer metrics keyed by name */
72
76
  this.layers = {};
73
- /** @type {number|null} Pipeline start timestamp (ms) */
77
+ /** @type {bigint|null} Pipeline start hrtime (nanoseconds) */
74
78
  this.totalStart = null;
75
- /** @type {number|null} Pipeline end timestamp (ms) */
79
+ /** @type {bigint|null} Pipeline end hrtime (nanoseconds) */
76
80
  this.totalEnd = null;
77
81
  }
78
82
 
@@ -82,7 +86,7 @@ class PipelineMetrics {
82
86
  * @param {string} name - Layer name
83
87
  */
84
88
  startLayer(name) {
85
- this.layers[name] = { start: Date.now(), status: 'running' };
89
+ this.layers[name] = { start: process.hrtime.bigint(), status: 'running' };
86
90
  }
87
91
 
88
92
  /**
@@ -97,8 +101,9 @@ class PipelineMetrics {
97
101
  this.layers[name] = { status: 'ok', rules: rulesCount };
98
102
  return;
99
103
  }
100
- layer.end = Date.now();
101
- layer.duration = layer.end - layer.start;
104
+ const endTime = process.hrtime.bigint();
105
+ layer.end = endTime;
106
+ layer.duration = Number(endTime - layer.start) / 1e6;
102
107
  layer.status = 'ok';
103
108
  layer.rules = rulesCount;
104
109
  }
@@ -122,8 +127,9 @@ class PipelineMetrics {
122
127
  errorLayer(name, error) {
123
128
  const existing = this.layers[name] || {};
124
129
  if (existing.start) {
125
- existing.end = Date.now();
126
- existing.duration = existing.end - existing.start;
130
+ const endTime = process.hrtime.bigint();
131
+ existing.end = endTime;
132
+ existing.duration = Number(endTime - existing.start) / 1e6;
127
133
  }
128
134
  this.layers[name] = {
129
135
  ...existing,
@@ -148,7 +154,7 @@ class PipelineMetrics {
148
154
  const values = Object.values(this.layers);
149
155
  return {
150
156
  total_ms: this.totalStart != null && this.totalEnd != null
151
- ? this.totalEnd - this.totalStart
157
+ ? Number(this.totalEnd - this.totalStart) / 1e6
152
158
  : 0,
153
159
  layers_loaded: values.filter(l => l.status === 'ok').length,
154
160
  layers_skipped: values.filter(l => l.status === 'skipped').length,
@@ -221,7 +227,7 @@ class SynapseEngine {
221
227
  const safeProcessConfig = (processConfig && typeof processConfig === 'object') ? processConfig : {};
222
228
  const mergedConfig = { ...this.config, ...safeProcessConfig };
223
229
  const metrics = new PipelineMetrics();
224
- metrics.totalStart = Date.now();
230
+ metrics.totalStart = process.hrtime.bigint();
225
231
 
226
232
  // 1. Calculate bracket
227
233
  const promptCount = (session && session.prompt_count) || 0;
@@ -232,7 +238,7 @@ class SynapseEngine {
232
238
 
233
239
  // Guard: no layer config (invalid bracket — should not happen)
234
240
  if (!layerConfig) {
235
- metrics.totalEnd = Date.now();
241
+ metrics.totalEnd = process.hrtime.bigint();
236
242
  return { xml: '', metrics: metrics.getSummary() };
237
243
  }
238
244
 
@@ -249,8 +255,8 @@ class SynapseEngine {
249
255
  continue;
250
256
  }
251
257
 
252
- // Check hard pipeline timeout
253
- if (Date.now() - metrics.totalStart > PIPELINE_TIMEOUT_MS) {
258
+ // Check hard pipeline timeout (convert hrtime to ms for comparison)
259
+ if (Number(process.hrtime.bigint() - metrics.totalStart) / 1e6 > PIPELINE_TIMEOUT_MS) {
254
260
  // Log remaining layers as skipped
255
261
  const remaining = this.layers.slice(this.layers.indexOf(layer));
256
262
  for (const r of remaining) {
@@ -263,16 +269,14 @@ class SynapseEngine {
263
269
 
264
270
  // Execute layer via safe wrapper
265
271
  metrics.startLayer(layer.name);
266
- const context = {
272
+ const context = buildLayerContext({
267
273
  prompt,
268
274
  session: session || {},
269
- config: {
270
- ...mergedConfig,
271
- synapsePath: this.synapsePath,
272
- manifest: mergedConfig.manifest || {},
273
- },
275
+ config: mergedConfig,
276
+ synapsePath: this.synapsePath,
277
+ manifest: mergedConfig.manifest || {},
274
278
  previousLayers,
275
- };
279
+ });
276
280
 
277
281
  const result = layer._safeProcess(context);
278
282
 
@@ -301,9 +305,12 @@ class SynapseEngine {
301
305
  }
302
306
  }
303
307
 
304
- metrics.totalEnd = Date.now();
308
+ metrics.totalEnd = process.hrtime.bigint();
305
309
  const summary = metrics.getSummary();
306
310
 
311
+ // Persist hook metrics (fire-and-forget)
312
+ this._persistHookMetrics(summary, bracket, mergedConfig);
313
+
307
314
  // 4. Format output
308
315
  const xml = formatSynapseRules(
309
316
  results,
@@ -318,6 +325,52 @@ class SynapseEngine {
318
325
 
319
326
  return { xml, metrics: summary };
320
327
  }
328
+
329
+ /**
330
+ * Persist hook metrics to .synapse/metrics/hook-metrics.json (fire-and-forget).
331
+ * SYN-14: Includes hookBootMs from _hookBootTime passed via processConfig.
332
+ * @param {object} summary - Pipeline metrics summary
333
+ * @param {string} bracket - Context bracket
334
+ * @param {object} [config] - Merged config (may contain _hookBootTime bigint)
335
+ */
336
+ _persistHookMetrics(summary, bracket, config) {
337
+ try {
338
+ const synapsePath = this.synapsePath;
339
+ if (!synapsePath || !fs.existsSync(synapsePath)) return;
340
+ const metricsDir = path.join(synapsePath, 'metrics');
341
+ if (!fs.existsSync(metricsDir)) {
342
+ fs.mkdirSync(metricsDir, { recursive: true });
343
+ }
344
+ // SYN-14: Calculate hook boot time if _hookBootTime was passed
345
+ const hookBootTime = config && config._hookBootTime;
346
+ const hookBootMs = hookBootTime ? Number(process.hrtime.bigint() - hookBootTime) / 1e6 : 0;
347
+ const data = {
348
+ totalDuration: summary.total_ms,
349
+ hookBootMs,
350
+ bracket,
351
+ layersLoaded: summary.layers_loaded,
352
+ layersSkipped: summary.layers_skipped,
353
+ layersErrored: summary.layers_errored,
354
+ totalRules: summary.total_rules,
355
+ perLayer: {},
356
+ timestamp: new Date().toISOString(),
357
+ };
358
+ // Convert per_layer to serializable format (strip bigint start/end)
359
+ for (const [name, info] of Object.entries(summary.per_layer)) {
360
+ data.perLayer[name] = {
361
+ duration: info.duration || 0,
362
+ status: info.status || 'unknown',
363
+ rules: info.rules || 0,
364
+ };
365
+ }
366
+ fs.writeFileSync(
367
+ path.join(metricsDir, 'hook-metrics.json'),
368
+ JSON.stringify(data, null, 2), 'utf8',
369
+ );
370
+ } catch {
371
+ // Fire-and-forget: never block the hook pipeline
372
+ }
373
+ }
321
374
  }
322
375
 
323
376
  module.exports = {
@@ -0,0 +1,60 @@
1
+ 'use strict';
2
+
3
+ const path = require('path');
4
+ const fs = require('fs');
5
+
6
+ /**
7
+ * Resolve runtime dependencies for Synapse hook execution.
8
+ *
9
+ * @param {{cwd?: string, sessionId?: string}} input
10
+ * @returns {{
11
+ * engine: import('../engine').SynapseEngine,
12
+ * session: Object
13
+ * } | null}
14
+ */
15
+ function resolveHookRuntime(input) {
16
+ const cwd = input && input.cwd;
17
+ const sessionId = input && input.sessionId;
18
+ if (!cwd || typeof cwd !== 'string') return null;
19
+
20
+ const synapsePath = path.join(cwd, '.synapse');
21
+ if (!fs.existsSync(synapsePath)) return null;
22
+
23
+ try {
24
+ const { loadSession } = require(
25
+ path.join(cwd, '.aios-core', 'core', 'synapse', 'session', 'session-manager.js'),
26
+ );
27
+ const { SynapseEngine } = require(
28
+ path.join(cwd, '.aios-core', 'core', 'synapse', 'engine.js'),
29
+ );
30
+
31
+ const sessionsDir = path.join(synapsePath, 'sessions');
32
+ const session = loadSession(sessionId, sessionsDir) || { prompt_count: 0 };
33
+ const engine = new SynapseEngine(synapsePath);
34
+
35
+ return { engine, session };
36
+ } catch (error) {
37
+ if (process.env.DEBUG === '1') {
38
+ console.error(`[hook-runtime] Failed to resolve runtime: ${error.message}`);
39
+ }
40
+ return null;
41
+ }
42
+ }
43
+
44
+ /**
45
+ * Normalize hook output payload shape.
46
+ * @param {string} xml
47
+ * @returns {{hookSpecificOutput: {additionalContext: string}}}
48
+ */
49
+ function buildHookOutput(xml) {
50
+ return {
51
+ hookSpecificOutput: {
52
+ additionalContext: xml || '',
53
+ },
54
+ };
55
+ }
56
+
57
+ module.exports = {
58
+ resolveHookRuntime,
59
+ buildHookOutput,
60
+ };
@@ -45,10 +45,12 @@ mindsLocation: outputs/minds
45
45
  ide:
46
46
  selected:
47
47
  - vscode
48
+ - codex
48
49
  - cursor
49
50
  - claude-code
50
51
  configs:
51
52
  vscode: true
53
+ codex: true
52
54
  cursor: true
53
55
  windsurf: false
54
56
  zed: false
@@ -307,6 +309,10 @@ ideSync:
307
309
  enabled: true
308
310
  path: .claude/commands/AIOS/agents
309
311
  format: full-markdown-yaml
312
+ codex:
313
+ enabled: true
314
+ path: .codex/agents
315
+ format: full-markdown-yaml
310
316
  cursor:
311
317
  enabled: true
312
318
  path: .cursor/rules/agents
@@ -250,7 +250,7 @@ agents:
250
250
  files_loaded: []
251
251
  lazy_loading:
252
252
  agent_registry: true # Load when validating/creating squads
253
- expansion_pack_manifest: true # Load when managing expansion packs
253
+ squad_manifest: true # Load when managing squads
254
254
  performance_target: <150ms
255
255
 
256
256
  # ======================================================================
@@ -280,7 +280,7 @@ lazy_loading_strategy:
280
280
  expansionPacks:
281
281
  size: variable
282
282
  load_only_when: pack requested by user
283
- description: Optional expansion packs
283
+ description: Optional squads
284
284
  fallback: []
285
285
 
286
286
  registry:
@@ -855,7 +855,7 @@ For full details, see `CONTRIBUTING.md`. Key points:
855
855
 
856
856
  ### What Are Expansion Packs?
857
857
 
858
- Expansion packs extend AIOS-Method beyond traditional software development into ANY domain. They provide specialized agent teams, templates, and workflows while keeping the core framework lean and focused on development.
858
+ Squads extend AIOS-Method beyond traditional software development into ANY domain. They provide specialized agent teams, templates, and workflows while keeping the core framework lean and focused on development.
859
859
 
860
860
  ### Why Use Expansion Packs?
861
861
 
@@ -883,7 +883,7 @@ Expansion packs extend AIOS-Method beyond traditional software development into
883
883
 
884
884
  **Specialty Packs**:
885
885
 
886
- - **Expansion Creator**: Tools to build your own expansion packs
886
+ - **Expansion Creator**: Tools to build your own squads
887
887
  - **RPG Game Master**: Tabletop gaming assistance
888
888
  - **Life Event Planning**: Wedding planners, event coordinators
889
889
  - **Scientific Research**: Literature reviewers, methodology designers
@@ -896,7 +896,7 @@ Expansion packs extend AIOS-Method beyond traditional software development into
896
896
 
897
897
  ```bash
898
898
  npx @synkra/aios-core install
899
- # Select "Install expansion pack" option
899
+ # Select "Install squad" option
900
900
  ```
901
901
 
902
902
  4. **Use in Your Workflow**: Installed packs integrate seamlessly with existing agents
@@ -910,7 +910,7 @@ Use the **expansion-creator** pack to build your own:
910
910
  3. **Build Resources**: Tasks, templates, checklists for your domain
911
911
  4. **Test & Share**: Validate with real use cases, share with community
912
912
 
913
- **Key Principle**: Expansion packs democratize expertise by making specialized knowledge accessible through AI agents.
913
+ **Key Principle**: Squads democratize expertise by making specialized knowledge accessible through AI agents.
914
914
 
915
915
  ## Getting Help
916
916
 
@@ -1,7 +1,7 @@
1
1
  metadata:
2
2
  version: 1.0.0
3
- lastUpdated: '2026-02-12T13:07:01.327Z'
4
- entityCount: 487
3
+ lastUpdated: '2026-02-15T23:35:00.000Z'
4
+ entityCount: 498
5
5
  checksumAlgorithm: sha256
6
6
  entities:
7
7
  tasks:
@@ -1641,7 +1641,8 @@ entities:
1641
1641
  - quality
1642
1642
  - gate
1643
1643
  - pre-push-quality-gate.md
1644
- usedBy: []
1644
+ usedBy:
1645
+ - publish-npm
1645
1646
  dependencies:
1646
1647
  - repository-detector
1647
1648
  - N/A
@@ -2758,7 +2759,8 @@ entities:
2758
2759
  - manage
2759
2760
  - software
2760
2761
  - releases
2761
- usedBy: []
2762
+ usedBy:
2763
+ - publish-npm
2762
2764
  dependencies:
2763
2765
  - package
2764
2766
  - N/A
@@ -3887,6 +3889,27 @@ entities:
3887
3889
  extensionPoints: []
3888
3890
  checksum: sha256:093a9ee73e79ec5682d9161648f36710d635a0a7b074d45f4036c782bbc72bb2
3889
3891
  lastVerified: '2026-02-10T15:31:01.205Z'
3892
+ publish-npm:
3893
+ path: .aios-core/development/tasks/publish-npm.md
3894
+ type: task
3895
+ purpose: 'Safe, validated npm publishing using a two-phase release strategy:'
3896
+ keywords:
3897
+ - publish
3898
+ - npm
3899
+ - publishing
3900
+ - 'pipeline:'
3901
+ - preview
3902
+ - latest
3903
+ usedBy: []
3904
+ dependencies:
3905
+ - release-management
3906
+ - github-devops-pre-push-quality-gate
3907
+ adaptability:
3908
+ score: 0.8
3909
+ constraints: []
3910
+ extensionPoints: []
3911
+ checksum: sha256:f7a0bb8fed5663c88ad691b8871fdf7a861b6a7c02599f0c2db3eb9393d353c8
3912
+ lastVerified: '2026-02-15T20:39:45.236Z'
3890
3913
  templates:
3891
3914
  activation-instructions-inline-greeting:
3892
3915
  path: .aios-core/product/templates/activation-instructions-inline-greeting.yaml
@@ -5618,8 +5641,8 @@ entities:
5618
5641
  score: 0.7
5619
5642
  constraints: []
5620
5643
  extensionPoints: []
5621
- checksum: sha256:11c9a7f19044ed38df9e47d26feb1ba5346efd15bd4ec856c871722386575f1b
5622
- lastVerified: '2026-02-10T14:51:55.740Z'
5644
+ checksum: sha256:dd1ad8050ac6ea04ff634434be9b97f67239ee0a7342d669bc5618eb2b7a7f5b
5645
+ lastVerified: '2026-02-15T20:39:45.236Z'
5623
5646
  usage-tracker:
5624
5647
  path: .aios-core/development/scripts/usage-tracker.js
5625
5648
  type: script
@@ -6506,14 +6529,15 @@ entities:
6506
6529
  usedBy: []
6507
6530
  dependencies:
6508
6531
  - context-tracker
6532
+ - context-builder
6509
6533
  - formatter
6510
6534
  - memory-bridge
6511
6535
  adaptability:
6512
6536
  score: 0.4
6513
6537
  constraints: []
6514
6538
  extensionPoints: []
6515
- checksum: sha256:90572bd719491e1f57bc43cb29179ad8de34db9d752fff54bf8638d9fcf22bc7
6516
- lastVerified: '2026-02-12T13:07:01.326Z'
6539
+ checksum: sha256:65e9c48d8ba7991fcd32bb1ea0bd087ce6d709ebf7f5bc4fd4b2e947ee5ddf0f
6540
+ lastVerified: '2026-02-15T20:39:45.235Z'
6517
6541
  ideation-engine:
6518
6542
  path: .aios-core/core/ideation/ideation-engine.js
6519
6543
  type: module
@@ -8246,8 +8270,8 @@ entities:
8246
8270
  score: 0.4
8247
8271
  constraints: []
8248
8272
  extensionPoints: []
8249
- checksum: sha256:0e59a35fb77eaf7e757ecdc283381d8e6d20e9d24844280a4605af316f152f5e
8250
- lastVerified: '2026-02-09T00:54:48.061Z'
8273
+ checksum: sha256:6d87ec21d32acff1ba9b9d13025118c106ce6db59c1339c3a6ef4b2a02fd7f52
8274
+ lastVerified: '2026-02-14T16:25:15.482Z'
8251
8275
  core-config:
8252
8276
  path: .aios-core/core-config.yaml
8253
8277
  type: module
@@ -8491,6 +8515,137 @@ entities:
8491
8515
  extensionPoints: []
8492
8516
  checksum: sha256:3b927daec51d0a791f3fe4ef9aafc362773450e7cf50eb4b6d8ae9011d70df9a
8493
8517
  lastVerified: '2026-02-12T12:53:14.532Z'
8518
+ consistency-collector:
8519
+ path: .aios-core/core/synapse/diagnostics/collectors/consistency-collector.js
8520
+ type: module
8521
+ purpose: Entity at .aios-core\core\synapse\diagnostics\collectors\consistency-collector.js
8522
+ keywords:
8523
+ - consistency
8524
+ - collector
8525
+ usedBy: []
8526
+ dependencies:
8527
+ - safe-read-json
8528
+ adaptability:
8529
+ score: 0.4
8530
+ constraints: []
8531
+ extensionPoints: []
8532
+ checksum: sha256:65f4255f87c9900400649dc8b9aedaac4851b5939d93e127778bd93cee99db12
8533
+ lastVerified: '2026-02-15T20:39:45.229Z'
8534
+ hook-collector:
8535
+ path: .aios-core/core/synapse/diagnostics/collectors/hook-collector.js
8536
+ type: module
8537
+ purpose: Entity at .aios-core\core\synapse\diagnostics\collectors\hook-collector.js
8538
+ keywords:
8539
+ - hook
8540
+ - collector
8541
+ usedBy: []
8542
+ dependencies: []
8543
+ adaptability:
8544
+ score: 0.4
8545
+ constraints: []
8546
+ extensionPoints: []
8547
+ checksum: sha256:9cd342cc0c2253296f931a977b20408370c1e1bebe02a22a757418d4d0630884
8548
+ lastVerified: '2026-02-15T20:39:45.231Z'
8549
+ output-analyzer:
8550
+ path: .aios-core/core/synapse/diagnostics/collectors/output-analyzer.js
8551
+ type: module
8552
+ purpose: string }>}
8553
+ keywords:
8554
+ - output
8555
+ - analyzer
8556
+ usedBy: []
8557
+ dependencies:
8558
+ - safe-read-json
8559
+ adaptability:
8560
+ score: 0.4
8561
+ constraints: []
8562
+ extensionPoints: []
8563
+ checksum: sha256:e6846b1aba0a6cba17c297a871861d4f8199d7500220bff296a6a3291e32493e
8564
+ lastVerified: '2026-02-15T20:39:45.232Z'
8565
+ quality-collector:
8566
+ path: .aios-core/core/synapse/diagnostics/collectors/quality-collector.js
8567
+ type: module
8568
+ purpose: Entity at .aios-core\core\synapse\diagnostics\collectors\quality-collector.js
8569
+ keywords:
8570
+ - quality
8571
+ - collector
8572
+ usedBy: []
8573
+ dependencies:
8574
+ - safe-read-json
8575
+ adaptability:
8576
+ score: 0.4
8577
+ constraints: []
8578
+ extensionPoints: []
8579
+ checksum: sha256:30ae299eab6d569d09afe3530a5b2f1ff35ef75366a1ab56a9e2a57d39d3611c
8580
+ lastVerified: '2026-02-15T20:39:45.232Z'
8581
+ relevance-matrix:
8582
+ path: .aios-core/core/synapse/diagnostics/collectors/relevance-matrix.js
8583
+ type: module
8584
+ purpose: Entity at .aios-core\core\synapse\diagnostics\collectors\relevance-matrix.js
8585
+ keywords:
8586
+ - relevance
8587
+ - matrix
8588
+ usedBy: []
8589
+ dependencies:
8590
+ - safe-read-json
8591
+ adaptability:
8592
+ score: 0.4
8593
+ constraints: []
8594
+ extensionPoints: []
8595
+ checksum: sha256:f92c4f7061dc82eed4310a27b69eade33d3015f9beb1bed688601a2dccbad22e
8596
+ lastVerified: '2026-02-15T20:39:45.233Z'
8597
+ safe-read-json:
8598
+ path: .aios-core/core/synapse/diagnostics/collectors/safe-read-json.js
8599
+ type: module
8600
+ purpose: Entity at .aios-core\core\synapse\diagnostics\collectors\safe-read-json.js
8601
+ keywords:
8602
+ - safe
8603
+ - read
8604
+ - json
8605
+ usedBy:
8606
+ - consistency-collector
8607
+ - output-analyzer
8608
+ - quality-collector
8609
+ - relevance-matrix
8610
+ - timing-collector
8611
+ dependencies: []
8612
+ adaptability:
8613
+ score: 0.4
8614
+ constraints: []
8615
+ extensionPoints: []
8616
+ checksum: sha256:dc7bcd13779207ad67b1c3929b7e1e0ccfa3563f3458c20cad28cb1922e9a74c
8617
+ lastVerified: '2026-02-15T20:39:45.233Z'
8618
+ timing-collector:
8619
+ path: .aios-core/core/synapse/diagnostics/collectors/timing-collector.js
8620
+ type: module
8621
+ purpose: Entity at .aios-core\core\synapse\diagnostics\collectors\timing-collector.js
8622
+ keywords:
8623
+ - timing
8624
+ - collector
8625
+ usedBy: []
8626
+ dependencies:
8627
+ - safe-read-json
8628
+ adaptability:
8629
+ score: 0.4
8630
+ constraints: []
8631
+ extensionPoints: []
8632
+ checksum: sha256:2523ce93f863a28f798d992c4f2fab041c91a09413b3186fd290e6035b391587
8633
+ lastVerified: '2026-02-15T20:39:45.234Z'
8634
+ report-formatter:
8635
+ path: .aios-core/core/synapse/diagnostics/report-formatter.js
8636
+ type: module
8637
+ purpose: Entity at .aios-core\core\synapse\diagnostics\report-formatter.js
8638
+ keywords:
8639
+ - report
8640
+ - formatter
8641
+ usedBy: []
8642
+ dependencies: []
8643
+ adaptability:
8644
+ score: 0.4
8645
+ constraints: []
8646
+ extensionPoints: []
8647
+ checksum: sha256:33faf5820fbe2559e425707ff6ce19ce20b046d7222814d4040e739317ff998e
8648
+ lastVerified: '2026-02-15T20:39:45.235Z'
8494
8649
  agents:
8495
8650
  aios-master:
8496
8651
  path: .aios-core/development/agents/aios-master.md
@@ -8864,6 +9019,51 @@ entities:
8864
9019
  extensionPoints: []
8865
9020
  checksum: sha256:1a7262912c8c8e264d307f0d38a1109bdb2b9bff9ea7d8855c768835201aa59b
8866
9021
  lastVerified: '2026-02-08T13:33:24.397Z'
9022
+ code-intel-health-check:
9023
+ path: scripts/code-intel-health-check.js
9024
+ type: script
9025
+ purpose: Health check and validation for Code Graph MCP provider. Outputs structured JSON with status, tools availability, and response time.
9026
+ keywords:
9027
+ - code-intelligence
9028
+ - health-check
9029
+ - mcp
9030
+ - code-graph
9031
+ - provider
9032
+ - validation
9033
+ usedBy:
9034
+ - NOG-1
9035
+ dependencies:
9036
+ - code-graph-mcp
9037
+ adaptability:
9038
+ score: 0.8
9039
+ constraints:
9040
+ - Requires code-graph-mcp pip package installed
9041
+ extensionPoints:
9042
+ - Additional provider checks can be added
9043
+ story: NOG-0
9044
+ lastVerified: '2026-02-15T23:30:00.000Z'
9045
+ code-graph-mcp-setup-guide:
9046
+ path: docs/guides/code-graph-mcp-setup.md
9047
+ type: guide
9048
+ purpose: Setup guide for Code Graph MCP installation, configuration, verification and troubleshooting.
9049
+ keywords:
9050
+ - code-graph
9051
+ - mcp
9052
+ - setup
9053
+ - installation
9054
+ - troubleshooting
9055
+ - guide
9056
+ usedBy:
9057
+ - NOG-0
9058
+ - NOG-1
9059
+ dependencies: []
9060
+ adaptability:
9061
+ score: 0.9
9062
+ constraints: []
9063
+ extensionPoints:
9064
+ - Additional provider setup guides can follow same pattern
9065
+ story: NOG-0
9066
+ lastVerified: '2026-02-15T23:30:00.000Z'
8867
9067
  categories:
8868
9068
  - id: tasks
8869
9069
  description: Executable task workflows for agent operations
@@ -111,3 +111,55 @@
111
111
  {"timestamp":"2026-02-12T13:07:21.219Z","action":"change","path":".aios-core/core/synapse/engine.js","trigger":"watcher"}
112
112
  {"timestamp":"2026-02-12T13:07:21.219Z","action":"change","path":".aios-core/core/synapse/memory/memory-bridge.js","trigger":"watcher"}
113
113
  {"timestamp":"2026-02-13T00:49:51.580Z","action":"change","path":".aios-core/development/scripts/unified-activation-pipeline.js","trigger":"watcher"}
114
+ {"timestamp":"2026-02-13T16:52:52.699Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/hook-collector.js","trigger":"watcher"}
115
+ {"timestamp":"2026-02-13T16:52:52.700Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/manifest-collector.js","trigger":"watcher"}
116
+ {"timestamp":"2026-02-13T16:52:52.701Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/pipeline-collector.js","trigger":"watcher"}
117
+ {"timestamp":"2026-02-13T16:52:52.701Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/session-collector.js","trigger":"watcher"}
118
+ {"timestamp":"2026-02-13T16:52:52.701Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/uap-collector.js","trigger":"watcher"}
119
+ {"timestamp":"2026-02-13T16:52:52.702Z","action":"add","path":".aios-core/core/synapse/diagnostics/report-formatter.js","trigger":"watcher"}
120
+ {"timestamp":"2026-02-13T16:52:52.703Z","action":"add","path":".aios-core/core/synapse/diagnostics/synapse-diagnostics.js","trigger":"watcher"}
121
+ {"timestamp":"2026-02-13T16:52:52.703Z","action":"change","path":".aios-core/development/scripts/unified-activation-pipeline.js","trigger":"watcher"}
122
+ {"timestamp":"2026-02-13T17:28:09.987Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/hook-collector.js","trigger":"watcher"}
123
+ {"timestamp":"2026-02-13T17:28:09.987Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/manifest-collector.js","trigger":"watcher"}
124
+ {"timestamp":"2026-02-13T17:28:09.988Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/pipeline-collector.js","trigger":"watcher"}
125
+ {"timestamp":"2026-02-13T17:28:09.988Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/session-collector.js","trigger":"watcher"}
126
+ {"timestamp":"2026-02-13T17:28:09.989Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/uap-collector.js","trigger":"watcher"}
127
+ {"timestamp":"2026-02-13T17:28:09.989Z","action":"add","path":".aios-core/core/synapse/diagnostics/report-formatter.js","trigger":"watcher"}
128
+ {"timestamp":"2026-02-13T17:28:09.989Z","action":"add","path":".aios-core/core/synapse/diagnostics/synapse-diagnostics.js","trigger":"watcher"}
129
+ {"timestamp":"2026-02-13T17:28:09.990Z","action":"change","path":".aios-core/development/scripts/unified-activation-pipeline.js","trigger":"watcher"}
130
+ {"timestamp":"2026-02-13T18:01:27.198Z","action":"change","path":".aios-core/core/synapse/diagnostics/collectors/hook-collector.js","trigger":"watcher"}
131
+ {"timestamp":"2026-02-13T18:01:27.199Z","action":"change","path":".aios-core/core/synapse/diagnostics/report-formatter.js","trigger":"watcher"}
132
+ {"timestamp":"2026-02-13T18:01:27.199Z","action":"change","path":".aios-core/core/synapse/diagnostics/synapse-diagnostics.js","trigger":"watcher"}
133
+ {"timestamp":"2026-02-13T18:01:32.668Z","action":"change","path":".aios-core/core/synapse/diagnostics/collectors/hook-collector.js","trigger":"watcher"}
134
+ {"timestamp":"2026-02-13T18:01:32.669Z","action":"change","path":".aios-core/core/synapse/diagnostics/report-formatter.js","trigger":"watcher"}
135
+ {"timestamp":"2026-02-13T18:01:32.669Z","action":"change","path":".aios-core/core/synapse/diagnostics/synapse-diagnostics.js","trigger":"watcher"}
136
+ {"timestamp":"2026-02-13T18:10:59.619Z","action":"change","path":".aios-core/core/synapse/diagnostics/report-formatter.js","trigger":"watcher"}
137
+ {"timestamp":"2026-02-13T18:10:59.620Z","action":"change","path":".aios-core/core/synapse/diagnostics/synapse-diagnostics.js","trigger":"watcher"}
138
+ {"timestamp":"2026-02-13T18:11:06.961Z","action":"change","path":".aios-core/core/synapse/diagnostics/report-formatter.js","trigger":"watcher"}
139
+ {"timestamp":"2026-02-13T18:11:06.962Z","action":"change","path":".aios-core/core/synapse/diagnostics/synapse-diagnostics.js","trigger":"watcher"}
140
+ {"timestamp":"2026-02-14T15:24:38.382Z","action":"change","path":".aios-core/core/synapse/diagnostics/synapse-diagnostics.js","trigger":"watcher"}
141
+ {"timestamp":"2026-02-14T15:44:26.945Z","action":"change","path":".aios-core/core/synapse/diagnostics/synapse-diagnostics.js","trigger":"watcher"}
142
+ {"timestamp":"2026-02-14T16:25:15.483Z","action":"change","path":".aios-core/core/ids/registry-updater.js","trigger":"watcher"}
143
+ {"timestamp":"2026-02-14T16:25:15.483Z","action":"change","path":".aios-core/development/scripts/unified-activation-pipeline.js","trigger":"watcher"}
144
+ {"timestamp":"2026-02-15T20:39:38.792Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/consistency-collector.js","trigger":"watcher"}
145
+ {"timestamp":"2026-02-15T20:39:38.797Z","action":"change","path":".aios-core/core/synapse/diagnostics/collectors/hook-collector.js","trigger":"watcher"}
146
+ {"timestamp":"2026-02-15T20:39:38.799Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/output-analyzer.js","trigger":"watcher"}
147
+ {"timestamp":"2026-02-15T20:39:38.800Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/quality-collector.js","trigger":"watcher"}
148
+ {"timestamp":"2026-02-15T20:39:38.800Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/relevance-matrix.js","trigger":"watcher"}
149
+ {"timestamp":"2026-02-15T20:39:38.801Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/safe-read-json.js","trigger":"watcher"}
150
+ {"timestamp":"2026-02-15T20:39:38.801Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/timing-collector.js","trigger":"watcher"}
151
+ {"timestamp":"2026-02-15T20:39:38.802Z","action":"change","path":".aios-core/core/synapse/diagnostics/report-formatter.js","trigger":"watcher"}
152
+ {"timestamp":"2026-02-15T20:39:38.803Z","action":"change","path":".aios-core/core/synapse/engine.js","trigger":"watcher"}
153
+ {"timestamp":"2026-02-15T20:39:38.803Z","action":"change","path":".aios-core/development/scripts/unified-activation-pipeline.js","trigger":"watcher"}
154
+ {"timestamp":"2026-02-15T20:39:38.804Z","action":"add","path":".aios-core/development/tasks/publish-npm.md","trigger":"watcher"}
155
+ {"timestamp":"2026-02-15T20:39:45.230Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/consistency-collector.js","trigger":"watcher"}
156
+ {"timestamp":"2026-02-15T20:39:45.231Z","action":"change","path":".aios-core/core/synapse/diagnostics/collectors/hook-collector.js","trigger":"watcher"}
157
+ {"timestamp":"2026-02-15T20:39:45.232Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/output-analyzer.js","trigger":"watcher"}
158
+ {"timestamp":"2026-02-15T20:39:45.232Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/quality-collector.js","trigger":"watcher"}
159
+ {"timestamp":"2026-02-15T20:39:45.233Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/relevance-matrix.js","trigger":"watcher"}
160
+ {"timestamp":"2026-02-15T20:39:45.233Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/safe-read-json.js","trigger":"watcher"}
161
+ {"timestamp":"2026-02-15T20:39:45.234Z","action":"add","path":".aios-core/core/synapse/diagnostics/collectors/timing-collector.js","trigger":"watcher"}
162
+ {"timestamp":"2026-02-15T20:39:45.235Z","action":"change","path":".aios-core/core/synapse/diagnostics/report-formatter.js","trigger":"watcher"}
163
+ {"timestamp":"2026-02-15T20:39:45.235Z","action":"change","path":".aios-core/core/synapse/engine.js","trigger":"watcher"}
164
+ {"timestamp":"2026-02-15T20:39:45.236Z","action":"change","path":".aios-core/development/scripts/unified-activation-pipeline.js","trigger":"watcher"}
165
+ {"timestamp":"2026-02-15T20:39:45.236Z","action":"add","path":".aios-core/development/tasks/publish-npm.md","trigger":"watcher"}