aiox-core 5.0.7 → 5.0.8
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.
- package/.aiox-core/cli/commands/pro/buyer.js +379 -0
- package/.aiox-core/cli/commands/pro/index.js +191 -52
- package/.aiox-core/cli/commands/validate/index.js +2 -0
- package/.aiox-core/core/code-intel/helpers/dev-helper.js +1 -1
- package/.aiox-core/core/code-intel/helpers/devops-helper.js +0 -1
- package/.aiox-core/core/code-intel/helpers/planning-helper.js +1 -1
- package/.aiox-core/core/code-intel/helpers/qa-helper.js +2 -2
- package/.aiox-core/core/config/schemas/framework-config.schema.json +1 -0
- package/.aiox-core/core/config/template-overrides.js +1 -1
- package/.aiox-core/core/doctor/checks/ide-sync.js +81 -25
- package/.aiox-core/core/doctor/checks/rules-files.js +0 -1
- package/.aiox-core/core/doctor/checks/skills-count.js +83 -15
- package/.aiox-core/core/graph-dashboard/cli.js +1 -2
- package/.aiox-core/core/graph-dashboard/data-sources/code-intel-source.js +1 -1
- package/.aiox-core/core/ids/layer-classifier.js +1 -1
- package/.aiox-core/core/pro/pro-updater.js +578 -0
- package/.aiox-core/core/synapse/context/context-tracker.js +107 -9
- package/.aiox-core/core/synapse/layers/layer-processor.js +1 -1
- package/.aiox-core/core-config.yaml +15 -1
- package/.aiox-core/data/capability-detection.js +15 -15
- package/.aiox-core/data/entity-registry.yaml +18 -2
- package/.aiox-core/data/registry-update-log.jsonl +5 -0
- package/.aiox-core/data/tok3-token-comparison.js +0 -4
- package/.aiox-core/data/tool-search-validation.js +1 -1
- package/.aiox-core/development/agents/aiox-master.md +44 -6
- package/.aiox-core/development/agents/data-engineer.md +4 -4
- package/.aiox-core/development/agents/devops.md +52 -2
- package/.aiox-core/development/agents/po.md +1 -1
- package/.aiox-core/development/agents/qa.md +5 -11
- package/.aiox-core/development/agents/sm.md +3 -3
- package/.aiox-core/development/agents/ux-design-expert.md +1 -1
- package/.aiox-core/development/scripts/unified-activation-pipeline.js +29 -3
- package/.aiox-core/development/tasks/dev-develop-story.md +46 -7
- package/.aiox-core/development/tasks/devops-pro-access-grant.md +93 -0
- package/.aiox-core/development/tasks/devops-pro-activate.md +42 -0
- package/.aiox-core/development/tasks/devops-pro-check-access.md +34 -0
- package/.aiox-core/development/tasks/devops-pro-request-reset.md +34 -0
- package/.aiox-core/development/tasks/devops-pro-resend-verification.md +32 -0
- package/.aiox-core/development/tasks/devops-pro-reset-password.md +36 -0
- package/.aiox-core/development/tasks/devops-pro-validate-login.md +36 -0
- package/.aiox-core/development/tasks/devops-pro-verify-status.md +33 -0
- package/.aiox-core/development/tasks/qa-gate.md +54 -4
- package/.aiox-core/development/tasks/validate-next-story.md +39 -2
- package/.aiox-core/framework-config.yaml +1 -0
- package/.aiox-core/infrastructure/scripts/codex-skills-sync/README.md +69 -0
- package/.aiox-core/infrastructure/scripts/codex-skills-sync/bootstrap.js +727 -0
- package/.aiox-core/infrastructure/scripts/codex-skills-sync/index.js +10 -0
- package/.aiox-core/infrastructure/scripts/codex-skills-sync/validate.js +65 -4
- package/.aiox-core/infrastructure/scripts/generate-settings-json.js +29 -4
- package/.aiox-core/infrastructure/scripts/ide-sync/agent-parser.js +4 -0
- package/.aiox-core/infrastructure/scripts/ide-sync/index.js +67 -7
- package/.aiox-core/infrastructure/scripts/ide-sync/transformers/claude-code.js +145 -3
- package/.aiox-core/infrastructure/scripts/repair-agent-references.js +263 -0
- package/.aiox-core/infrastructure/scripts/validate-claude-integration.js +60 -8
- package/.aiox-core/infrastructure/scripts/validate-paths.js +13 -0
- package/.aiox-core/install-manifest.yaml +134 -82
- package/.aiox-core/utils/filters/index.js +2 -1
- package/.claude/commands/AIOX/agents/aiox-master.md +21 -0
- package/.claude/commands/AIOX/agents/analyst.md +21 -0
- package/.claude/commands/AIOX/agents/architect.md +21 -0
- package/.claude/commands/AIOX/agents/data-engineer.md +21 -0
- package/.claude/commands/AIOX/agents/dev.md +21 -0
- package/.claude/commands/AIOX/agents/devops.md +21 -0
- package/.claude/commands/AIOX/agents/pm.md +21 -0
- package/.claude/commands/AIOX/agents/po.md +21 -0
- package/.claude/commands/AIOX/agents/qa.md +21 -0
- package/.claude/commands/AIOX/agents/sm.md +21 -0
- package/.claude/commands/AIOX/agents/squad-creator.md +21 -0
- package/.claude/commands/AIOX/agents/ux-design-expert.md +21 -0
- package/.claude/commands/AIOX/scripts/agent-config-loader.js +624 -0
- package/.claude/commands/AIOX/scripts/generate-greeting.js +160 -0
- package/.claude/commands/AIOX/scripts/greeting-builder.js +866 -0
- package/.claude/commands/AIOX/scripts/session-context-loader.js +286 -0
- package/.claude/commands/AIOX/stories/story-6.1.4.md +1404 -0
- package/.claude/commands/cohort-squad/agents/cohort-manager.md +156 -0
- package/.claude/commands/design-system/agents/brad-frost.md +1097 -0
- package/.claude/commands/design-system/agents/dan-mall.md +857 -0
- package/.claude/commands/design-system/agents/dave-malouf.md +2272 -0
- package/.claude/commands/design-system/agents/design-chief.md +102 -0
- package/.claude/commands/design-system/agents/nano-banana-generator.md +162 -0
- package/.claude/commands/greet.md +101 -0
- package/.claude/commands/synapse/manager.md +75 -0
- package/.claude/commands/synapse/tasks/add-rule.md +94 -0
- package/.claude/commands/synapse/tasks/create-command.md +109 -0
- package/.claude/commands/synapse/tasks/create-domain.md +127 -0
- package/.claude/commands/synapse/tasks/diagnose-synapse.md +245 -0
- package/.claude/commands/synapse/tasks/edit-rule.md +109 -0
- package/.claude/commands/synapse/tasks/suggest-domain.md +116 -0
- package/.claude/commands/synapse/tasks/toggle-domain.md +83 -0
- package/.claude/commands/synapse/templates/domain-template +8 -0
- package/.claude/commands/synapse/templates/manifest-entry-template +4 -0
- package/.claude/commands/synapse/utils/manifest-parser-reference.md +134 -0
- package/.claude/hooks/precompact-session-digest.cjs +2 -2
- package/.claude/skills/AIOX/agents/aiox-master/SKILL.md +511 -0
- package/.claude/skills/AIOX/agents/analyst/SKILL.md +281 -0
- package/.claude/skills/AIOX/agents/architect/SKILL.md +482 -0
- package/.claude/skills/AIOX/agents/data-engineer/SKILL.md +503 -0
- package/.claude/skills/AIOX/agents/dev/SKILL.md +568 -0
- package/.claude/skills/AIOX/agents/devops/SKILL.md +597 -0
- package/.claude/skills/AIOX/agents/pm/SKILL.md +385 -0
- package/.claude/skills/AIOX/agents/po/SKILL.md +343 -0
- package/.claude/skills/AIOX/agents/qa/SKILL.md +451 -0
- package/.claude/skills/AIOX/agents/sm/SKILL.md +295 -0
- package/.claude/skills/AIOX/agents/squad-creator/SKILL.md +352 -0
- package/.claude/skills/AIOX/agents/ux-design-expert/SKILL.md +503 -0
- package/.claude/skills/architect-first/SKILL.md +275 -0
- package/.claude/skills/architect-first/assets/architecture-template.md +505 -0
- package/.claude/skills/architect-first/assets/config-template.yaml +351 -0
- package/.claude/skills/architect-first/references/architecture-checklist.md +216 -0
- package/.claude/skills/architect-first/references/pre-implementation-checklist.md +119 -0
- package/.claude/skills/architect-first/references/stop-rules-guide.md +291 -0
- package/.claude/skills/architect-first/references/testing-strategy-guide.md +477 -0
- package/.claude/skills/architect-first/scripts/architecture_validator.py +490 -0
- package/.claude/skills/architect-first/scripts/check_coupling.py +306 -0
- package/.claude/skills/architect-first/scripts/validate_risk_mitigation.py +382 -0
- package/.claude/skills/checklist-runner/SKILL.md +113 -0
- package/.claude/skills/clone-mind.md +329 -0
- package/.claude/skills/coderabbit-review/SKILL.md +106 -0
- package/.claude/skills/course-generation-workflow.md +76 -0
- package/.claude/skills/enhance-workflow.md +466 -0
- package/.claude/skills/mcp-builder/LICENSE.txt +202 -0
- package/.claude/skills/mcp-builder/SKILL.md +328 -0
- package/.claude/skills/mcp-builder/reference/evaluation.md +602 -0
- package/.claude/skills/mcp-builder/reference/mcp_best_practices.md +915 -0
- package/.claude/skills/mcp-builder/reference/node_mcp_server.md +916 -0
- package/.claude/skills/mcp-builder/reference/python_mcp_server.md +752 -0
- package/.claude/skills/mcp-builder/scripts/connections.py +151 -0
- package/.claude/skills/mcp-builder/scripts/evaluation.py +373 -0
- package/.claude/skills/mcp-builder/scripts/example_evaluation.xml +22 -0
- package/.claude/skills/mcp-builder/scripts/requirements.txt +2 -0
- package/.claude/skills/ralph.md +181 -0
- package/.claude/skills/skill-creator/LICENSE.txt +202 -0
- package/.claude/skills/skill-creator/SKILL.md +209 -0
- package/.claude/skills/skill-creator/scripts/init_skill.py +303 -0
- package/.claude/skills/skill-creator/scripts/package_skill.py +110 -0
- package/.claude/skills/skill-creator/scripts/quick_validate.py +65 -0
- package/.claude/skills/squad.md +301 -0
- package/.claude/skills/synapse/SKILL.md +132 -0
- package/.claude/skills/synapse/assets/README.md +50 -0
- package/.claude/skills/synapse/references/brackets.md +100 -0
- package/.claude/skills/synapse/references/commands.md +118 -0
- package/.claude/skills/synapse/references/domains.md +126 -0
- package/.claude/skills/synapse/references/layers.md +186 -0
- package/.claude/skills/synapse/references/manifest.md +142 -0
- package/.claude/skills/tech-search/SKILL.md +431 -0
- package/.claude/skills/tech-search/prompts/page-extract.md +133 -0
- package/README.en.md +2 -2
- package/README.md +8 -2
- package/bin/aiox.js +55 -4
- package/bin/utils/framework-guard.js +4 -2
- package/bin/utils/pro-detector.js +119 -28
- package/bin/utils/validate-publish.js +6 -6
- package/docs/aiox-agent-flows/devops-system.md +18 -0
- package/docs/aiox-workflows/README.md +1 -0
- package/docs/aiox-workflows/pro-access-grant-workflow.md +218 -0
- package/docs/guides/pro/access-grant-ops-playbook.md +370 -0
- package/docs/guides/pro/install-gate-setup.md +12 -6
- package/docs/guides/pro/squad-creator-handoff-pro-access-ops.md +134 -0
- package/docs/guides/supabase-ops-handoff.md +768 -0
- package/package.json +12 -1
- package/packages/aiox-pro-cli/bin/aiox-pro.js +33 -12
- package/packages/installer/src/config/configure-environment.js +118 -50
- package/packages/installer/src/installer/aiox-core-installer.js +124 -27
- package/packages/installer/src/installer/brownfield-upgrader.js +66 -9
- package/packages/installer/src/installer/dependency-installer.js +4 -0
- package/packages/installer/src/pro/pro-scaffolder.js +5 -5
- package/packages/installer/src/updater/index.js +151 -10
- package/packages/installer/src/wizard/ide-config-generator.js +73 -7
- package/packages/installer/src/wizard/index.js +119 -31
- package/packages/installer/src/wizard/pro-setup.js +118 -47
- package/packages/installer/src/wizard/validation/validators/dependency-validator.js +32 -25
- package/packages/installer/src/wizard/validation/validators/file-structure-validator.js +26 -0
- package/packages/installer/tests/unit/artifact-copy-pipeline/artifact-copy-pipeline.test.js +84 -1
- package/packages/installer/tests/unit/claude-md-template-v5/claude-md-template-v5.test.js +1 -1
- package/packages/installer/tests/unit/doctor/doctor-checks.test.js +85 -19
- package/packages/installer/tests/unit/entity-registry-bootstrap.test.js +4 -4
- package/packages/installer/tests/unit/generate-settings-json/generate-settings-json.test.js +5 -5
- package/packages/installer/tests/unit/ide-sync-integration/ide-sync-integration.test.js +4 -4
- package/packages/installer/tests/unit/merger/yaml-merger.test.js +11 -11
- package/pro/README.md +12 -1
- package/pro/license/index.js +3 -11
- package/pro/license/license-api.js +25 -0
- package/pro/license/license-cache.js +135 -31
- package/pro/license/license-crypto.js +59 -3
- package/pro/package.json +5 -4
- package/pro/squads/README.md +16 -16
- package/pro/squads/index.js +1 -1
- package/scripts/e2e/installed-skills-smoke.js +264 -0
- package/scripts/package-synapse.js +3 -3
- package/scripts/validate-package-completeness.js +8 -11
- package/.aiox-core/lib/build.json +0 -1
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Unified Greeting Generator
|
|
4
|
+
*
|
|
5
|
+
* Orchestrates all greeting components for optimal performance:
|
|
6
|
+
* - Agent definition (via expanded agent-config-loader.js)
|
|
7
|
+
* - Session context (session-context-loader.js)
|
|
8
|
+
* - Project status (project-status-loader.js)
|
|
9
|
+
* - User preferences (greeting-preference-manager.js)
|
|
10
|
+
* - Contextual adaptation (greeting-builder.js)
|
|
11
|
+
*
|
|
12
|
+
* Performance Targets:
|
|
13
|
+
* - With cache: <50ms
|
|
14
|
+
* - Without cache: <150ms (timeout protection)
|
|
15
|
+
* - Fallback: <10ms
|
|
16
|
+
*
|
|
17
|
+
* Usage: node generate-greeting.js <agent-id>
|
|
18
|
+
*
|
|
19
|
+
* Part of Story 6.1.4: Unified Greeting System Integration
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
const GreetingBuilder = require('./greeting-builder');
|
|
23
|
+
const SessionContextLoader = require('./session-context-loader');
|
|
24
|
+
const { loadProjectStatus } = require('./project-status-loader');
|
|
25
|
+
const { AgentConfigLoader } = require('./agent-config-loader');
|
|
26
|
+
const fs = require('fs').promises;
|
|
27
|
+
const path = require('path');
|
|
28
|
+
const yaml = require('yaml');
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Generate unified greeting for agent activation
|
|
32
|
+
*
|
|
33
|
+
* @param {string} agentId - Agent identifier (e.g., 'qa', 'dev')
|
|
34
|
+
* @returns {Promise<string>} Formatted greeting string
|
|
35
|
+
* @throws {Error} If agent file not found or invalid
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* const greeting = await generateGreeting('qa');
|
|
39
|
+
* console.log(greeting);
|
|
40
|
+
*/
|
|
41
|
+
async function generateGreeting(agentId) {
|
|
42
|
+
const startTime = Date.now();
|
|
43
|
+
|
|
44
|
+
try {
|
|
45
|
+
// Load core config
|
|
46
|
+
const coreConfigPath = path.join(process.cwd(), '.aiox-core', 'core-config.yaml');
|
|
47
|
+
const coreConfigContent = await fs.readFile(coreConfigPath, 'utf8');
|
|
48
|
+
const coreConfig = yaml.parse(coreConfigContent);
|
|
49
|
+
|
|
50
|
+
// Load everything in parallel using expanded AgentConfigLoader
|
|
51
|
+
const loader = new AgentConfigLoader(agentId);
|
|
52
|
+
|
|
53
|
+
const [complete, sessionContext, projectStatus] = await Promise.all([
|
|
54
|
+
loader.loadComplete(coreConfig), // Loads config + definition
|
|
55
|
+
loadSessionContext(agentId),
|
|
56
|
+
loadProjectStatus(),
|
|
57
|
+
]);
|
|
58
|
+
|
|
59
|
+
// Build unified context
|
|
60
|
+
const context = {
|
|
61
|
+
conversationHistory: [], // Not available in Claude Code
|
|
62
|
+
sessionType: sessionContext.sessionType, // Pre-detected
|
|
63
|
+
projectStatus: projectStatus, // Pre-loaded
|
|
64
|
+
lastCommands: sessionContext.lastCommands || [],
|
|
65
|
+
previousAgent: sessionContext.previousAgent,
|
|
66
|
+
sessionMessage: sessionContext.message,
|
|
67
|
+
workflowActive: sessionContext.workflowActive,
|
|
68
|
+
sessionStory: sessionContext.currentStory || null, // Session's current story (more accurate than git)
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
// Ensure agent has persona_profile and persona from definition
|
|
72
|
+
const agentWithPersona = {
|
|
73
|
+
...complete.agent,
|
|
74
|
+
persona_profile: complete.persona_profile || complete.definition?.persona_profile,
|
|
75
|
+
persona: complete.definition?.persona || complete.persona,
|
|
76
|
+
commands: complete.commands || complete.definition?.commands || [],
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
// Generate greeting using GreetingBuilder
|
|
80
|
+
const builder = new GreetingBuilder();
|
|
81
|
+
const greeting = await builder.buildGreeting(agentWithPersona, context);
|
|
82
|
+
|
|
83
|
+
const duration = Date.now() - startTime;
|
|
84
|
+
if (duration > 100) {
|
|
85
|
+
console.warn(`[generate-greeting] Slow generation: ${duration}ms`);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
return greeting;
|
|
89
|
+
|
|
90
|
+
} catch (error) {
|
|
91
|
+
console.error('[generate-greeting] Error:', {
|
|
92
|
+
agentId,
|
|
93
|
+
error: error.message,
|
|
94
|
+
stack: error.stack,
|
|
95
|
+
timestamp: new Date().toISOString(),
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
// Fallback: Simple greeting
|
|
99
|
+
return generateFallbackGreeting(agentId);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* Load session context for agent
|
|
105
|
+
* @private
|
|
106
|
+
* @param {string} agentId - Agent ID
|
|
107
|
+
* @returns {Promise<Object>} Session context
|
|
108
|
+
*/
|
|
109
|
+
async function loadSessionContext(agentId) {
|
|
110
|
+
try {
|
|
111
|
+
const loader = new SessionContextLoader();
|
|
112
|
+
return loader.loadContext(agentId);
|
|
113
|
+
} catch (error) {
|
|
114
|
+
console.warn('[generate-greeting] Session context failed:', error.message);
|
|
115
|
+
return {
|
|
116
|
+
sessionType: 'new',
|
|
117
|
+
message: null,
|
|
118
|
+
previousAgent: null,
|
|
119
|
+
lastCommands: [],
|
|
120
|
+
workflowActive: null,
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Generate fallback greeting if everything fails
|
|
127
|
+
* @private
|
|
128
|
+
* @param {string} agentId - Agent ID
|
|
129
|
+
* @returns {string} Simple fallback greeting
|
|
130
|
+
*/
|
|
131
|
+
function generateFallbackGreeting(agentId) {
|
|
132
|
+
return `✅ ${agentId} Agent ready\n\nType \`*help\` to see available commands.`;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
// CLI interface
|
|
136
|
+
if (require.main === module) {
|
|
137
|
+
const agentId = process.argv[2];
|
|
138
|
+
|
|
139
|
+
if (!agentId) {
|
|
140
|
+
console.error('Usage: node generate-greeting.js <agent-id>');
|
|
141
|
+
console.error('\nExamples:');
|
|
142
|
+
console.error(' node generate-greeting.js qa');
|
|
143
|
+
console.error(' node generate-greeting.js dev');
|
|
144
|
+
process.exit(1);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
generateGreeting(agentId)
|
|
148
|
+
.then(greeting => {
|
|
149
|
+
console.log(greeting);
|
|
150
|
+
process.exit(0);
|
|
151
|
+
})
|
|
152
|
+
.catch(error => {
|
|
153
|
+
console.error('Fatal error:', error.message);
|
|
154
|
+
console.log(generateFallbackGreeting(agentId));
|
|
155
|
+
process.exit(1);
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
module.exports = { generateGreeting };
|
|
160
|
+
|