0xray 3.4.1 → 3.4.2
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/.xray/codex.json +598 -0
- package/.xray/config.json +25 -0
- package/.xray/features.json +146 -0
- package/.xray/features.schema.json +33 -0
- package/AGENTS-consumer.md +127 -10
- package/AGENTS.md +172 -56
- package/README.md +159 -82
- package/SKILLS.md +79 -53
- package/dist/AGENTS.md +172 -56
- package/dist/CHANGELOG.md +79 -52
- package/dist/README.md +159 -82
- package/dist/SKILLS.md +79 -53
- package/dist/core/features-config.js +5 -0
- package/dist/integrations/grok/hooks/grok-hook-activity.js +53 -0
- package/dist/integrations/grok/hooks/grok-hook-utils.js +261 -0
- package/dist/integrations/grok/hooks/pre-tool-use.js +85 -115
- package/dist/integrations/grok/hooks/session-start.js +52 -0
- package/dist/integrations/grok/plugin/0xray/hooks/hooks.json +20 -3
- package/dist/mcps/config/server-config-registry.js +4 -3
- package/dist/mcps/orchestrator/handlers/complexity-handler.js +33 -3
- package/dist/mcps/orchestrator/server.js +1 -1
- package/dist/mcps/researcher.server.js +3 -0
- package/dist/nucleus/autonomy-kernel.js +176 -0
- package/dist/nucleus/index.js +1 -0
- package/dist/skills/boot-orchestrator/SKILL.md +1 -5
- package/dist/skills/orchestrator/SKILL.md +35 -12
- package/dist/skills/researcher/SKILL.md +17 -4
- package/dist/skills/strategist/SKILL.md +12 -0
- package/dist/skills/testing-strategy/SKILL.md +13 -2
- package/package.json +23 -8
- package/scripts/node/consumer-install-smoke.mjs +163 -0
- package/scripts/node/install-bridges.cjs +19 -6
- package/scripts/node/pre-publish-guard.js +107 -168
- package/scripts/node/reconcile-version.mjs +147 -0
- package/scripts/node/release-gate.mjs +66 -0
- package/scripts/node/release.js +5 -147
- package/scripts/node/release.mjs +106 -181
- package/scripts/node/setup.cjs +12 -22
- package/scripts/node/sync-versions.mjs +12 -134
- package/scripts/node/universal-version-manager.js +4 -0
- package/scripts/node/validate-release-docs.mjs +299 -0
- package/scripts/node/version-manager.mjs +225 -49
- package/src/integrations/grok/plugin/0xray/hooks/hooks.json +20 -3
- package/src/mcps/config/__tests__/server-config-registry.test.ts +9 -0
- package/src/mcps/config/server-config-registry.ts +5 -3
- package/src/mcps/orchestrator/handlers/complexity-handler.ts +54 -3
- package/src/mcps/orchestrator/server.ts +1 -1
- package/src/mcps/researcher.server.ts +4 -0
- package/src/skills/boot-orchestrator/SKILL.md +1 -5
- package/src/skills/orchestrator/SKILL.md +35 -12
- package/src/skills/researcher/SKILL.md +17 -4
- package/src/skills/strategist/SKILL.md +12 -0
- package/src/skills/testing-strategy/SKILL.md +13 -2
- package/xray/config.json +25 -0
- package/xray/features.json +146 -0
- package/xray/features.schema.json +33 -0
package/dist/README.md
CHANGED
|
@@ -1,126 +1,203 @@
|
|
|
1
1
|
# xray — MCP-Centric AI Governance OS
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
**v3.4.2** — 42 agents · 45 skills · 7 MCP servers · 68 codex terms · 3,226 tests
|
|
4
4
|
|
|
5
|
-
xray is the pure v2 three-subsystem AI orchestration framework
|
|
6
|
-
|
|
7
|
-
- **Inference** — reasoning, execution, and agent intelligence
|
|
8
|
-
- **External Governance** — Dynamo Solar SSOT for proposal evaluation, resonance/isotopic signals, coherence, and Codex enforcement before any action
|
|
9
|
-
- **Autonomous Engine** — thinDispatch 7-flow in the MCP orchestrator for automatic delegation, routing, and end-to-end coordination
|
|
10
|
-
|
|
11
|
-
3 dedicated MCP servers (`code-review`, `security-audit`, `researcher`) deliberate governance proposals. Agents are declared in `.opencode/agents/*.yml` — the YML SSOT. Zero manual setup. Automatic discovery and activation.
|
|
5
|
+
xray is the pure v2 three-subsystem AI orchestration framework — **MCP-centric**, governed by Dynamo, and autonomous via thinDispatch. Consumer `npm install 0xray` auto-wires all four platform bridges and seven MCP servers with zero manual config.
|
|
12
6
|
|
|
13
7
|
## Quick Start
|
|
14
8
|
|
|
15
9
|
```bash
|
|
16
|
-
npm install 0xray
|
|
10
|
+
npm install 0xray # postinstall: 4 bridges + 7 MCPs + AGENTS.md + SKILLS.md + .mcp.json
|
|
11
|
+
npx 0xray status # verify install
|
|
12
|
+
npx 0xray setup # optional: symlinks, hook extras
|
|
13
|
+
```
|
|
17
14
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
npx 0xray
|
|
15
|
+
Manual per-platform install (idempotent, same result as postinstall):
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npx 0xray opencode install
|
|
19
|
+
npx 0xray grok install # 7 MCPs servers + dual skill sync (~/.grok/plugins + ~/.grok/skills)
|
|
20
|
+
npx 0xray hermes install
|
|
21
|
+
npx 0xray openclaw install
|
|
22
|
+
npx 0xray skill:install # starter skills
|
|
22
23
|
```
|
|
23
24
|
|
|
24
|
-
|
|
25
|
+
## Autonomy command (default operating model)
|
|
26
|
+
|
|
27
|
+
When the suit is worn, **`autonomy-command`** is ON by default: lead dev takes helm, phased todos, best subagent per task, per-suite test triage, loop until green. No keywords required. Slash: `/autonomy-command`
|
|
28
|
+
|
|
29
|
+
Docs: [guides/autonomy-command](docs-site/docs/guides/autonomy-command.md) · Skill: `src/skills/autonomy-command/SKILL.md`
|
|
30
|
+
|
|
31
|
+
## What's New Since 3.1
|
|
32
|
+
|
|
33
|
+
| Version | Highlights |
|
|
34
|
+
|---------|------------|
|
|
35
|
+
| **3.4.1** | Unified `install-bridges.cjs` on postinstall — OpenCode, Grok, Hermes, OpenClaw in one pass. All 7 MCPs servers via `npx -y 0xray mcp <cmd>` (no `dist/` paths). Canonical `release.mjs` pipeline. |
|
|
36
|
+
| **3.3.1** | Orchestrator confidence gate wired into execution planning. |
|
|
37
|
+
| **3.3.0** | Pluggable **Memory Routing** (`features.json` → `memory_routing`). Repertoire is the default provider in the framework repo. |
|
|
38
|
+
| **3.2.0** | Typecheck hardening (58 errors fixed), orphan cleanup (5 deleted / ~39 integrated), full pre-tool-use hook, SelfProposalEngine + AsideContext restored, Hermes E2E 44/0/0, Grok CLI E2E green. |
|
|
39
|
+
| **3.1.1** | StringRay → **0xRay** rename. Marketplace files (`.mcp.json`, `.grok-plugin/plugin.json`). Postinstall ships `AGENTS.md`, `SKILLS.md`, `.gitignore.default`. ConfigLoader `mcpServers` format. |
|
|
40
|
+
| **3.1.0** | Pre-publish guard tolerates missing `features.json`. |
|
|
41
|
+
|
|
42
|
+
### Consolidations
|
|
43
|
+
|
|
44
|
+
- **One consumer install path** — `postinstall.cjs` → `installAllBridges()` replaces scattered per-platform setup.
|
|
45
|
+
- **7-server MCP surface** — `.mcp.json` SSOT; Grok plugin and all bridges share `XRAY_MCP_SERVERS`.
|
|
46
|
+
- **Dev vs consumer AGENTS** — `AGENTS.md` (framework) vs `AGENTS-consumer.md` (copied to consumer projects on install).
|
|
47
|
+
- **Release pipeline** — `npm run release:patch|minor|major` → reconcile → gate → artifacts → tag → publish.
|
|
48
|
+
|
|
49
|
+
### Removals / Deprecations
|
|
50
|
+
|
|
51
|
+
- **StringRay / strray-ai** branding retired (3.1.1).
|
|
52
|
+
- **`hermes bridge`** CLI removed — use `npx 0xray hermes install`.
|
|
53
|
+
- **`.opencode/xray/` fallback** removed from auto-reflection-generator (3.1.1).
|
|
54
|
+
- **~180 stale `@version` JSDoc tags** and **"xray 2.0" command doc strings** cleaned (3.2.0).
|
|
55
|
+
- **`advanced-features/`** decoupled from core boot — not on the consumer install path.
|
|
56
|
+
- **PostProcessor** soft-deprecated since 3.0 (`enablePostProcessor: false` default).
|
|
25
57
|
|
|
26
58
|
## Three-Subsystem Architecture
|
|
27
59
|
|
|
28
60
|
```
|
|
29
61
|
┌─────────────────────────────────────────────────┐
|
|
30
62
|
│ Inference │
|
|
31
|
-
│ Proposals · Reflection ·
|
|
63
|
+
│ Proposals · Reflection · Memory routing │
|
|
32
64
|
├─────────────────────────────────────────────────┤
|
|
33
65
|
│ External Governance (Dynamo) │
|
|
34
|
-
│ Codex enforcement · Resonance/Isotopic · SSOT
|
|
35
|
-
│
|
|
66
|
+
│ Codex enforcement · Resonance/Isotopic · SSOT │
|
|
67
|
+
│ 3 deliberation MCPs: code-review, security, │
|
|
68
|
+
│ researcher (within 7-server consumer surface) │
|
|
36
69
|
├─────────────────────────────────────────────────┤
|
|
37
70
|
│ Autonomous Engine (thinDispatch) │
|
|
38
|
-
│ 7-flow
|
|
71
|
+
│ 7-flow · AsideContext · Confidence gate │
|
|
39
72
|
└─────────────────────────────────────────────────┘
|
|
40
73
|
```
|
|
41
74
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
0xray <
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
75
|
+
- **Inference** — proposals, reflection, execution planning. Optional memory-routing enrichment (v3.3).
|
|
76
|
+
- **External Governance** — Dynamo Solar SSOT; CodexPolicyService; weighted PHI/TAU deliberation.
|
|
77
|
+
- **Autonomous Engine** — thinDispatch 7-flow routing; orchestrator confidence gate (v3.3.1).
|
|
78
|
+
|
|
79
|
+
## Consumer Install (postinstall)
|
|
80
|
+
|
|
81
|
+
On `npm install 0xray` in a consumer project, postinstall automatically:
|
|
82
|
+
|
|
83
|
+
1. Copies **`AGENTS-consumer.md` → `AGENTS.md`** and ships root **`SKILLS.md`**
|
|
84
|
+
2. Seeds **`.gitignore`** from `.gitignore.default` (if absent)
|
|
85
|
+
3. Deploys **`.xray/`** config (`codex.json`, `features.json`, `config.json`)
|
|
86
|
+
4. Writes project **`.mcp.json`** with 7 MCPs servers (`npx -y 0xray mcp …`)
|
|
87
|
+
5. Installs **4 bridges**: OpenCode (agents + `opencode.json`), Grok (plugin + global skills), Hermes (`~/.hermes/plugins/xray-hermes`), OpenClaw (config + skills)
|
|
88
|
+
6. Syncs **45 framework skills** to platform skill dirs
|
|
89
|
+
7. Installs git pre-commit hook (non-blocking if not a git repo)
|
|
90
|
+
|
|
91
|
+
## Seven MCP Servers (consumer)
|
|
92
|
+
|
|
93
|
+
All registered via `npx -y 0xray mcp <cmd>` — no brittle `dist/` paths:
|
|
94
|
+
|
|
95
|
+
| Server | Command | Role |
|
|
96
|
+
|--------|---------|------|
|
|
97
|
+
| `xray-governance` | `mcp governance` | Proposal governance, codex snapshot, quality gates |
|
|
98
|
+
| `xray-skills` | `mcp skills` | 45 knowledge skills + skill invocation |
|
|
99
|
+
| `xray-orchestrator` | `mcp orchestrator` | thinDispatch 7-flow, task delegation |
|
|
100
|
+
| `xray-enforcer` | `mcp enforcer` | Codex compliance, rule validation |
|
|
101
|
+
| `xray-researcher` | `mcp researcher` | Codebase exploration, implementation lookup |
|
|
102
|
+
| `xray-code-review` | `mcp code-review` | Proposal quality, best practices |
|
|
103
|
+
| `xray-architect-tools` | `mcp architect-tools` | System design, architecture decisions |
|
|
104
|
+
|
|
105
|
+
The framework repo also ships additional internal `.server.ts` implementations for orchestration pipelines — these are not part of the 7-server consumer `.mcp.json` surface.
|
|
106
|
+
|
|
107
|
+
## Agents
|
|
108
|
+
|
|
109
|
+
**42 YML agent surfaces** in `src/opencode/agents/*.yml` — zero manual registration. Invoke via `@agent-name` in OpenCode.
|
|
110
|
+
|
|
111
|
+
Core governance agents:
|
|
112
|
+
|
|
113
|
+
| Agent | Purpose |
|
|
114
|
+
|-------|---------|
|
|
115
|
+
| `@enforcer` | Codex compliance & error prevention |
|
|
116
|
+
| `@orchestrator` | Multi-step task coordination |
|
|
117
|
+
| `@architect` | System design & technical decisions |
|
|
118
|
+
| `@security-auditor` | Vulnerability detection |
|
|
119
|
+
| `@code-reviewer` | Quality assessment |
|
|
120
|
+
| `@refactorer` | Technical debt elimination |
|
|
121
|
+
| `@testing-lead` | Testing strategy |
|
|
122
|
+
| `@bug-triage-specialist` | Error investigation |
|
|
123
|
+
| `@researcher` | Codebase exploration |
|
|
124
|
+
|
|
125
|
+
See [AGENTS.md](AGENTS.md) and [SKILLS.md](SKILLS.md) for the full agent and skill catalog.
|
|
126
|
+
|
|
127
|
+
## Memory Routing + Repertoire (v3.3+)
|
|
128
|
+
|
|
129
|
+
Pluggable `memory_routing` block in `features.json` (validated by `features.schema.json`):
|
|
130
|
+
|
|
131
|
+
```json
|
|
132
|
+
"memory_routing": {
|
|
133
|
+
"enabled": true,
|
|
134
|
+
"provider": "repertoire",
|
|
135
|
+
"module_path": "../repertoire/dist/provider/memory-routing-provider.js",
|
|
136
|
+
"config": {
|
|
137
|
+
"dataDir": "../repertoire/data",
|
|
138
|
+
"signalsPath": "../repertoire/data/curated_signals.json",
|
|
139
|
+
"logDir": "../repertoire/logs/groover-inference"
|
|
140
|
+
}
|
|
141
|
+
}
|
|
69
142
|
```
|
|
70
143
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
|
74
|
-
|
|
75
|
-
| **
|
|
76
|
-
| **
|
|
77
|
-
| **
|
|
78
|
-
| **OpenCode** | ✅ | Native YML agent surfaces, E2E 42/42 solo, 34/34 orchestrator |
|
|
144
|
+
| Integration | What it does |
|
|
145
|
+
|-------------|--------------|
|
|
146
|
+
| **ExecutionPlanner** (v3.3.1) | `getTaskConfidence()` → complexity boost, trap hints, signal-aware `selectAgent()` |
|
|
147
|
+
| **thinDispatch** | `resolveThinDispatch()` adjusts score; architect override on high-confidence traps |
|
|
148
|
+
| **Researcher** | `researcher-confidence.ts` appends `MEMORY_ROUTING:` block to governance output |
|
|
149
|
+
| **AsideContext** (v3.2) | `buildInheritedContext` → `inheritedContext.memoryRouting` on orchestrator `spawnAside` |
|
|
150
|
+
| **Feedback** | Per-task `ingestFeedback()` closes the learning loop |
|
|
79
151
|
|
|
80
|
-
|
|
152
|
+
**External hosts** (Hermes/Grok): add `repertoire-mcp` to `.mcp.json` — see Repertoire docs.
|
|
81
153
|
|
|
82
|
-
|
|
154
|
+
Consumers without Repertoire: `"memory_routing": { "enabled": false, "provider": "null" }`.
|
|
83
155
|
|
|
84
|
-
|
|
156
|
+
Docs: [memory routing](docs-site/docs/guides/memory-routing.md) · [Repertoire](docs-site/docs/guides/repertoire.md) · [features.json](docs-site/docs/guides/features-json.md) · [all features since 3.1](docs-site/docs/guides/features-since-3.1.md)
|
|
85
157
|
|
|
86
|
-
|
|
158
|
+
## Integrations
|
|
87
159
|
|
|
88
|
-
|
|
160
|
+
| Platform | Install | Postinstall behavior |
|
|
161
|
+
|----------|---------|----------------------|
|
|
162
|
+
| **OpenCode** | `npx 0xray opencode install` | Merges `opencode.json`, copies agent YML surfaces |
|
|
163
|
+
| **Grok CLI / Build** | `npx 0xray grok install` | Plugin + `~/.grok/skills/` sync, 7 MCPs servers |
|
|
164
|
+
| **Hermes Agent** | `npx 0xray hermes install` | `~/.hermes/plugins/xray-hermes`, consumer root marker |
|
|
165
|
+
| **OpenClaw** | `npx 0xray openclaw install` | `.xray/config/openclaw.json`, skill sync |
|
|
89
166
|
|
|
90
167
|
## Governance & Codex
|
|
91
168
|
|
|
92
|
-
|
|
169
|
+
- **68 terms** in `.xray/codex.json` — core, architecture, testing, performance, security, operations, governance
|
|
170
|
+
- CodexPolicyService — Governance-owned SSOT for codex loading
|
|
171
|
+
- Pre-governance gate blocks non-compliant proposals
|
|
172
|
+
- Active codex snapshot via `get_active_codex` MCP tool
|
|
173
|
+
- frameworkLogger structured logging (never `console.*`)
|
|
93
174
|
|
|
94
|
-
|
|
95
|
-
- CodexPolicyService — canonical Governance-owned SSOT for Codex loading
|
|
96
|
-
- Pre-governance gate blocks non-compliant proposals before execution
|
|
97
|
-
- 16 MCPs skill servers deliberate each proposal
|
|
98
|
-
- frameworkLogger structured logging throughout (never console.*)
|
|
99
|
-
- Active codex snapshot available via `get_active_codex` MCP tool
|
|
175
|
+
## Testing
|
|
100
176
|
|
|
101
|
-
|
|
177
|
+
| Suite | Status (v3.4.1) |
|
|
178
|
+
|-------|-----------------|
|
|
179
|
+
| Unit / Integration | 185 files, **3,226 passed** |
|
|
180
|
+
| OpenCode E2E | 42/42 solo, 34/34 orchestrator |
|
|
181
|
+
| Grok CLI E2E | 62/0 failures (v3.2.0 verified) |
|
|
182
|
+
| OpenClaw E2E | 9/9 (v3.2.0 verified) |
|
|
183
|
+
| Hermes E2E | 44/0/0 (v3.2.0 verified) |
|
|
184
|
+
| Consumer smoke | `npm run release:gate` — pack → clean install → 7 MCPs + 4 bridges |
|
|
102
185
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
| Infrastructure | 2500 tests, all pass |
|
|
108
|
-
| Consumer E2E | 4 platforms, all pass |
|
|
109
|
-
| OpenCode E2E | 42/42 solo, 34/34 orchestrator, all pass |
|
|
110
|
-
| OpenClaw E2E | 2500 tests, all pass |
|
|
111
|
-
| Hermes E2E | 2500 tests, all pass |
|
|
112
|
-
| Grok CLI E2E | 60/60 solo, 59/59 orchestrator, all pass |
|
|
186
|
+
```bash
|
|
187
|
+
npm test
|
|
188
|
+
npm run release:gate # full release gate
|
|
189
|
+
```
|
|
113
190
|
|
|
114
191
|
## Release
|
|
115
192
|
|
|
116
193
|
```bash
|
|
117
|
-
npm run release
|
|
118
|
-
npm run release
|
|
119
|
-
npm run release
|
|
120
|
-
npm run release -- --dry-run
|
|
194
|
+
npm run release:patch # canonical pipeline
|
|
195
|
+
npm run release:minor
|
|
196
|
+
npm run release:major
|
|
197
|
+
npm run release:patch -- --dry-run
|
|
121
198
|
```
|
|
122
199
|
|
|
123
|
-
|
|
200
|
+
Pipeline: reconcile-version → release-gate (build + test + consumer smoke) → CHANGELOG/README/AGENTS artifacts → commit → tag → npm publish.
|
|
124
201
|
|
|
125
202
|
## License
|
|
126
203
|
|
|
@@ -128,4 +205,4 @@ MIT — see [LICENSE](LICENSE)
|
|
|
128
205
|
|
|
129
206
|
---
|
|
130
207
|
|
|
131
|
-
*xray — MCP-centric, governed, autonomous. Pure v2 three-subsystem.*
|
|
208
|
+
*xray — MCP-centric, governed, autonomous. Pure v2 three-subsystem.*
|
package/dist/SKILLS.md
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
# 0xray Skills
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
**v3.4.2** — **45 skills** · invoked via `xray-skills` MCP · synced on postinstall
|
|
4
|
+
|
|
5
|
+
xray ships 45 knowledge skills (`src/skills/<name>/SKILL.md`) across the full software lifecycle. Lead-dev operating model lives in **`orchestrator`** skill + `multi_agent_orchestration.lead_dev_mode` in features.json. Skills load on demand via the **xray-skills** MCP server (`npx -y 0xray mcp skills`), agent `@mentions`, or platform skill directories after postinstall.
|
|
6
|
+
|
|
7
|
+
Consumer `npm install 0xray` syncs all 45 skills to Grok, Hermes, and OpenClaw skill dirs. Framework repo also ships this file to consumers (3.1.1+).
|
|
4
8
|
|
|
5
9
|
---
|
|
6
10
|
|
|
@@ -10,7 +14,7 @@ xray ships **46 skills** that provide domain expertise across the full software
|
|
|
10
14
|
|-------|-------|-------------|
|
|
11
15
|
| `code-review` | @code-reviewer | Proposal quality, code analysis, best practices |
|
|
12
16
|
| `security-audit` | @security-auditor | Vulnerability detection, threat modeling |
|
|
13
|
-
| `security-scan` |
|
|
17
|
+
| `security-scan` | @security-auditor | Security vulnerability scanning and assessment |
|
|
14
18
|
| `enforcer` | @enforcer | Codex compliance validation and error prevention |
|
|
15
19
|
| `framework-compliance-audit` | — | Framework compliance auditing and validation |
|
|
16
20
|
|
|
@@ -18,123 +22,145 @@ xray ships **46 skills** that provide domain expertise across the full software
|
|
|
18
22
|
|
|
19
23
|
| Skill | Agent | Description |
|
|
20
24
|
|-------|-------|-------------|
|
|
21
|
-
| `architect-tools` |
|
|
25
|
+
| `architect-tools` | @architect | System design and technical architecture tools |
|
|
22
26
|
| `architecture-patterns` | — | Software architecture patterns and best practices |
|
|
23
27
|
| `api-design` | — | RESTful API design and validation |
|
|
24
|
-
| `database-engineer` |
|
|
28
|
+
| `database-engineer` | @database-engineer | SQL/NoSQL schema design, query optimization, migrations |
|
|
25
29
|
| `state-manager` | — | Application state management and persistence |
|
|
26
|
-
| `session-management` | — |
|
|
30
|
+
| `session-management` | — | User sessions and persistent state |
|
|
27
31
|
|
|
28
32
|
## Engineering
|
|
29
33
|
|
|
30
34
|
| Skill | Agent | Description |
|
|
31
35
|
|-------|-------|-------------|
|
|
32
|
-
| `backend-engineer` |
|
|
33
|
-
| `frontend-engineer` |
|
|
34
|
-
| `frontend-ui-ux-engineer` |
|
|
35
|
-
| `mobile-developer` |
|
|
36
|
-
| `devops-engineer` |
|
|
36
|
+
| `backend-engineer` | @backend-engineer | REST/GraphQL APIs, microservices, auth, server architecture |
|
|
37
|
+
| `frontend-engineer` | @frontend-engineer | React/Vue/Angular/Svelte, responsive design, accessibility |
|
|
38
|
+
| `frontend-ui-ux-engineer` | @frontend-ui-ux-engineer | Visual design, CSS systems, accessibility, UX |
|
|
39
|
+
| `mobile-developer` | @mobile-developer | iOS, Android, React Native, Flutter |
|
|
40
|
+
| `devops-engineer` | @devops-engineer | CI/CD, IaC, containers, cloud deployment |
|
|
37
41
|
|
|
38
42
|
## Code Quality & Analysis
|
|
39
43
|
|
|
40
44
|
| Skill | Agent | Description |
|
|
41
45
|
|-------|-------|-------------|
|
|
42
|
-
| `code-analyzer` |
|
|
43
|
-
| `project-analysis` | — |
|
|
46
|
+
| `code-analyzer` | @code-analyzer | Deep code analysis, metrics, pattern detection |
|
|
47
|
+
| `project-analysis` | — | Project structure, complexity, health metrics |
|
|
44
48
|
| `lint` | — | Code linting and static analysis |
|
|
45
|
-
| `auto-format` | — | Automated
|
|
46
|
-
| `refactoring-strategies` | @refactorer |
|
|
49
|
+
| `auto-format` | — | Automated formatting and style consistency |
|
|
50
|
+
| `refactoring-strategies` | @refactorer | Refactoring techniques and strategies |
|
|
47
51
|
|
|
48
52
|
## Testing
|
|
49
53
|
|
|
50
54
|
| Skill | Agent | Description |
|
|
51
55
|
|-------|-------|-------------|
|
|
52
56
|
| `testing-strategy` | @testing-lead | Comprehensive testing strategies and coverage |
|
|
53
|
-
| `testing-best-practices` | — | Testing best practices and patterns |
|
|
57
|
+
| `testing-best-practices` | — | Testing best practices and QA patterns |
|
|
54
58
|
|
|
55
59
|
## Performance
|
|
56
60
|
|
|
57
61
|
| Skill | Agent | Description |
|
|
58
62
|
|-------|-------|-------------|
|
|
59
|
-
| `performance-analysis` | — | System performance analysis
|
|
60
|
-
| `performance-engineer` |
|
|
61
|
-
| `performance-optimization` | — | Application performance
|
|
63
|
+
| `performance-analysis` | — | System performance analysis |
|
|
64
|
+
| `performance-engineer` | @performance-engineer | Profiling, benchmarking, load testing |
|
|
65
|
+
| `performance-optimization` | — | Application performance tuning |
|
|
62
66
|
|
|
63
67
|
## Debugging & Monitoring
|
|
64
68
|
|
|
65
69
|
| Skill | Agent | Description |
|
|
66
70
|
|-------|-------|-------------|
|
|
67
|
-
| `bug-triage` | @bug-triage-specialist | Bug triage, debugging
|
|
68
|
-
| `log-monitor` |
|
|
71
|
+
| `bug-triage` | @bug-triage-specialist | Bug triage, debugging, issue prioritization |
|
|
72
|
+
| `log-monitor` | @log-monitor | Log analysis, pattern detection, alerting |
|
|
69
73
|
| `model-health-check` | — | AI model health monitoring and diagnostics |
|
|
70
74
|
|
|
71
75
|
## Orchestration & Workflow
|
|
72
76
|
|
|
73
77
|
| Skill | Agent | Description |
|
|
74
78
|
|-------|-------|-------------|
|
|
75
|
-
| `orchestrator` | @orchestrator | Multi-agent
|
|
76
|
-
| `xray-orchestrator` | — |
|
|
79
|
+
| `orchestrator` | @orchestrator | Multi-agent coordination + **lead-dev mode** (codex 67–68) |
|
|
80
|
+
| `xray-orchestrator` | — | xray orchestration skill (MCP orchestrator surface) |
|
|
77
81
|
| `processor-pipeline` | — | Data processing pipeline management |
|
|
78
|
-
| `boot-orchestrator` | — | Framework
|
|
82
|
+
| `boot-orchestrator` | — | Framework boot orchestration |
|
|
79
83
|
|
|
80
84
|
## Research & Content
|
|
81
85
|
|
|
82
86
|
| Skill | Agent | Description |
|
|
83
87
|
|-------|-------|-------------|
|
|
84
88
|
| `researcher` | @researcher | Codebase exploration, implementation lookup |
|
|
85
|
-
| `content-creator` |
|
|
86
|
-
| `tech-writer` |
|
|
87
|
-
| `storyteller` |
|
|
88
|
-
| `seo-consultant` |
|
|
89
|
-
| `growth-strategist` |
|
|
89
|
+
| `content-creator` | @content-creator | Marketing copy, technical docs, SEO content |
|
|
90
|
+
| `tech-writer` | @tech-writer | API docs, READMEs, ADRs, changelogs |
|
|
91
|
+
| `storyteller` | @storyteller | Narrative reflections, sagas, technical stories |
|
|
92
|
+
| `seo-consultant` | @seo-consultant | Technical SEO, schema markup, Core Web Vitals |
|
|
93
|
+
| `growth-strategist` | @growth-strategist | Campaign strategy, market analysis, conversion |
|
|
90
94
|
|
|
91
95
|
## UX & Design
|
|
92
96
|
|
|
93
97
|
| Skill | Agent | Description |
|
|
94
98
|
|-------|-------|-------------|
|
|
95
|
-
| `ui-ux-design` | — | Mobile-first, cognitive simplicity, accessibility
|
|
96
|
-
| `multimodal-looker` |
|
|
97
|
-
|
|
98
|
-
## Strategy
|
|
99
|
-
|
|
100
|
-
| Skill | Agent | Description |
|
|
101
|
-
|-------|-------|-------------|
|
|
102
|
-
| `strategist` | @strategist | Strategic guidance, architectural decisions, risk analysis |
|
|
103
|
-
| `inference-improve` | — | Autonomous inference improvement through collaborative analysis |
|
|
99
|
+
| `ui-ux-design` | — | Mobile-first, cognitive simplicity, accessibility |
|
|
100
|
+
| `multimodal-looker` | @multimodal-looker | Diagrams, screenshots, UI mockup analysis |
|
|
104
101
|
|
|
105
|
-
##
|
|
102
|
+
## Strategy & Inference
|
|
106
103
|
|
|
107
104
|
| Skill | Agent | Description |
|
|
108
105
|
|-------|-------|-------------|
|
|
109
|
-
| `
|
|
106
|
+
| `strategist` | @strategist | Architecture decisions, risk analysis |
|
|
107
|
+
| `inference-improve` | — | Autonomous inference improvement |
|
|
110
108
|
|
|
111
|
-
## Integration
|
|
109
|
+
## Git, Workflow & Integration
|
|
112
110
|
|
|
113
111
|
| Skill | Agent | Description |
|
|
114
112
|
|-------|-------|-------------|
|
|
115
|
-
| `
|
|
113
|
+
| `git-workflow` | — | Git workflow and collaboration |
|
|
114
|
+
| `hermes-agent` | @hermes-agent | Hermes Agent bridge operations |
|
|
116
115
|
|
|
117
116
|
---
|
|
118
117
|
|
|
119
118
|
## Invoking Skills
|
|
120
119
|
|
|
121
|
-
|
|
120
|
+
### Via agent (OpenCode / chat)
|
|
122
121
|
|
|
123
|
-
```
|
|
124
|
-
# Via agent mention (in any chat)
|
|
122
|
+
```
|
|
125
123
|
@code-reviewer review this PR
|
|
124
|
+
@researcher find where auth is implemented
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### Via xray-skills MCP (13 tools)
|
|
126
128
|
|
|
127
|
-
|
|
128
|
-
npx xray mcp call code-review analyze_code_quality --args '{"path": "src/"}'
|
|
129
|
+
Configured in project `.mcp.json` on postinstall:
|
|
129
130
|
|
|
130
|
-
|
|
131
|
-
npx
|
|
131
|
+
```bash
|
|
132
|
+
npx -y 0xray mcp skills # stdio server
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
MCP tools include: `invoke-skill`, `list-skills`, `skill-code-review`, `skill-security-audit`, `skill-api-design`, `skill-testing-strategy`, and more.
|
|
136
|
+
|
|
137
|
+
### Install additional skill packs
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
npx 0xray skill:install
|
|
141
|
+
npx 0xray skill:install <source>
|
|
132
142
|
```
|
|
133
143
|
|
|
134
|
-
## Skill
|
|
144
|
+
## Skill locations
|
|
145
|
+
|
|
146
|
+
| Context | Path |
|
|
147
|
+
|---------|------|
|
|
148
|
+
| Source (framework) | `src/skills/<name>/SKILL.md` |
|
|
149
|
+
| Published package | `node_modules/0xray/dist/skills/<name>/SKILL.md` |
|
|
150
|
+
| OpenCode (after setup) | `.opencode/skills/<name>/SKILL.md` |
|
|
151
|
+
| Grok | `~/.grok/skills/<name>/SKILL.md` + plugin dir |
|
|
152
|
+
| Hermes / OpenClaw | Platform skill dirs (postinstall sync) |
|
|
153
|
+
|
|
154
|
+
## Related features (since 3.1)
|
|
155
|
+
|
|
156
|
+
| Feature | Skill connection |
|
|
157
|
+
|---------|------------------|
|
|
158
|
+
| **Memory routing** (v3.3) | Researcher uses Repertoire signals; optional `@0xray/repertoire` MCP |
|
|
159
|
+
| **AsideContext** (v3.2) | Orchestrator subcontexts during skill dispatch |
|
|
160
|
+
| **7 MCP servers** (v3.4.1) | `xray-skills` is the primary skill invocation surface |
|
|
161
|
+
|
|
162
|
+
Docs: [AGENTS.md](AGENTS.md) · [README.md](README.md) · [Docusaurus guides](docs-site/docs/guides/)
|
|
135
163
|
|
|
136
|
-
|
|
164
|
+
## Complete catalog (45)
|
|
137
165
|
|
|
138
|
-
-
|
|
139
|
-
- **Consumer**: `node_modules/0xray/dist/skills/<name>/SKILL.md`
|
|
140
|
-
- **Opend**: `.opencode/skills/<name>/SKILL.md` (copied on `npx xray setup`)
|
|
166
|
+
`api-design` · `architect-tools` · `architecture-patterns` · `auto-format` · `backend-engineer` · `boot-orchestrator` · `bug-triage` · `code-analyzer` · `code-review` · `content-creator` · `database-engineer` · `devops-engineer` · `enforcer` · `framework-compliance-audit` · `frontend-engineer` · `frontend-ui-ux-engineer` · `git-workflow` · `growth-strategist` · `hermes-agent` · `inference-improve` · `lint` · `log-monitor` · `mobile-developer` · `model-health-check` · `multimodal-looker` · `orchestrator` · `performance-analysis` · `performance-engineer` · `performance-optimization` · `processor-pipeline` · `project-analysis` · `refactoring-strategies` · `researcher` · `security-audit` · `security-scan` · `seo-consultant` · `session-management` · `state-manager` · `storyteller` · `strategist` · `tech-writer` · `testing-best-practices` · `testing-strategy` · `ui-ux-design` · `xray-orchestrator`
|
|
@@ -317,6 +317,11 @@ export class FeaturesConfigLoader {
|
|
|
317
317
|
conflict_resolution: "expert-priority",
|
|
318
318
|
progress_tracking: true,
|
|
319
319
|
session_persistence: true,
|
|
320
|
+
lead_dev_mode: true,
|
|
321
|
+
per_suite_test_triage: true,
|
|
322
|
+
phased_plan_threshold: 25,
|
|
323
|
+
auto_consult_major_work: true,
|
|
324
|
+
no_new_surface: true,
|
|
320
325
|
},
|
|
321
326
|
autonomous_reporting: {
|
|
322
327
|
enabled: true,
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Sync activity.log writer for Grok hooks (hooks exit before frameworkLogger flush).
|
|
4
|
+
* Format matches frameworkLogger.bufferEntry output.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import fs from 'fs';
|
|
8
|
+
import path from 'path';
|
|
9
|
+
|
|
10
|
+
function formatLine(component, action, status, details, jobId) {
|
|
11
|
+
const ts = new Date().toISOString();
|
|
12
|
+
const jobPart = jobId ? `[${jobId}] ` : '';
|
|
13
|
+
const detailsPart = details
|
|
14
|
+
? ` | ${(() => {
|
|
15
|
+
try {
|
|
16
|
+
return JSON.stringify(details);
|
|
17
|
+
} catch {
|
|
18
|
+
return String(details);
|
|
19
|
+
}
|
|
20
|
+
})()}`
|
|
21
|
+
: '';
|
|
22
|
+
return `${ts} ${jobPart}[${component}] ${action} - ${status.toUpperCase()}${detailsPart}\n`;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export function appendHookActivity(root, component, action, status, details = {}) {
|
|
26
|
+
const workspace = root || process.cwd();
|
|
27
|
+
const logDir = path.join(workspace, 'logs', 'framework');
|
|
28
|
+
const logFile = path.join(logDir, 'activity.log');
|
|
29
|
+
try {
|
|
30
|
+
fs.mkdirSync(logDir, { recursive: true });
|
|
31
|
+
const jobId = `hook-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
|
|
32
|
+
fs.appendFileSync(logFile, formatLine(component, action, status, details, jobId));
|
|
33
|
+
return jobId;
|
|
34
|
+
} catch {
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export function activityLogHasPattern(root, pattern, tailBytes = 65536) {
|
|
40
|
+
const logFile = path.join(root, 'logs', 'framework', 'activity.log');
|
|
41
|
+
if (!fs.existsSync(logFile)) return false;
|
|
42
|
+
try {
|
|
43
|
+
const stat = fs.statSync(logFile);
|
|
44
|
+
const start = Math.max(0, stat.size - tailBytes);
|
|
45
|
+
const fd = fs.openSync(logFile, 'r');
|
|
46
|
+
const buf = Buffer.alloc(stat.size - start);
|
|
47
|
+
fs.readSync(fd, buf, 0, buf.length, start);
|
|
48
|
+
fs.closeSync(fd);
|
|
49
|
+
return pattern.test(buf.toString('utf8'));
|
|
50
|
+
} catch {
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
53
|
+
}
|