You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|`spx/`| CODE Framework |**Primary** - use for all new work |
16
-
|`specs/`| Legacy |**Frozen** - do not modify unless explicitly instructed |
13
+
The `spec` and `spx` CLI domains are **deprecated** and will be removed. They are replaced by the **spec-tree** plugin, which provides the same functionality as Claude Code skills.
|`/spec-tree:refactoring`| Restructure the spec tree (move, consolidate, extract) |
27
+
|`/spec-tree:aligning`| Review for gaps, contradictions, and consistency |
27
28
28
-
**Primary guide for new work:**[`spx/CLAUDE.md`](spx/CLAUDE.md)
29
+
### Legacy: `specs/` directory
30
+
31
+
The `specs/` directory uses the legacy task-driven system (backlog/doing/done with `DONE.md`). It is **frozen** — do not modify unless explicitly instructed.
29
32
30
33
---
31
34
32
35
## BSP Numbers
33
36
34
37
- BSP stands for Binary Space Partitioning.
35
-
- BSP numbers are only sibling-unique. Always use the complete path `capability-NN/feature-NN/story-NN` and `capability-NN/feature-NN/adr-NN` etc. when interacting with the user, creating handoff documents or otherwise referring to artifcats within the `specs/` and `spx/` directories.
36
-
37
-
---
38
-
39
-
### Finding Work
40
-
41
-
**Rule**: Lower BSP number = higher priority. Complete `21-*.feature` before `32-*.feature`.
42
-
43
-
> **Note:** The `spx spec` and `spx spx` domain commands are not yet implemented. Use skills or manual inspection to find work items.
44
-
45
-
```bash
46
-
# These commands do NOT work yet:
47
-
# spx spec status
48
-
# spx spec next
49
-
50
-
# Instead, use skills:
51
-
/spx:understanding-spx # Load context for a work item
52
-
/spx:managing-spx # Find next work item, create specs
53
-
```
54
-
55
-
Full CODE Framework rules: [`spx/CLAUDE.md`](spx/CLAUDE.md)
38
+
- BSP numbers are only sibling-unique. Always use the complete path `capability-NN/feature-NN/story-NN` and `capability-NN/feature-NN/adr-NN` etc. when interacting with the user, creating handoff documents or otherwise referring to artifacts within the `specs/` and `spx/` directories.
39
+
- Lower BSP number = higher priority. Complete `21-*.feature` before `32-*.feature`.
56
40
57
41
---
58
42
59
-
## 🚨 VALIDATION GATE (MANDATORY BEFORE COMMIT)
43
+
## Validation Gate (Mandatory Before Commit)
60
44
61
45
**NEVER commit without passing validation.** This is *non-negotiable*.
62
46
@@ -111,26 +95,6 @@ All validation runs through `spx validation` subcommands. Use pnpm scripts or ca
111
95
112
96
---
113
97
114
-
## Finding Work Items
115
-
116
-
> **Note:** The `spx spec` and `spx spx` domain commands are not yet implemented.
117
-
118
-
**For now, use skills to find and understand work:**
119
-
120
-
```bash
121
-
/spx:managing-spx # Ask "what's next?" - finds next work item by hierarchy (capability -> feature -> story) and then by BSP order
122
-
/spx:understanding-spx # Load full context for a specific work item
123
-
```
124
-
125
-
**Or inspect the `spx/` directory manually:**
126
-
127
-
- Lower BSP number = higher priority
128
-
- Check `outcomes.yaml` for status (missing = unknown, has entries = check if tests pass)
Sessions are stored in `.spx/sessions/` with priority-based ordering (high → medium → low) and FIFO within the same priority. Commands output parseable `<PICKUP_ID>`, `<HANDOFF_ID>`, and `<SESSION_FILE>` tags for automation.
83
+
Sessions are stored in `.spx/sessions/` with priority-based ordering (high > medium > low) and FIFO within the same priority. Commands output parseable `<PICKUP_ID>`, `<HANDOFF_ID>`, and `<SESSION_FILE>` tags for automation.
91
84
92
85
See [Session Recipes](docs/how-to/session/common-tasks.md) for detailed usage patterns.
93
86
87
+
### Spec Management (deprecated)
88
+
89
+
The `spx spec` and `spx spx` CLI domains are **deprecated**. Spec tree management has moved to the **spec-tree** Claude Code plugin, available at [`outcomeeng/claude/plugins/spec-tree`](https://github.com/simonheimlicher/spx-claude). The plugin provides skills for understanding, authoring, decomposing, contextualizing, testing, refactoring, and aligning specification trees.
The `pnpm run` scripts use `node bin/spx.js` internally, so they work without a global link. Once linked, you can also use `spx validation all` etc. directly.
130
127
128
+
## CI/CD
129
+
130
+
The project uses GitHub Actions for continuous integration and publishing:
131
+
132
+
-**CI** (`ci.yml`) — Runs validate, test, and build on Node 22 and 24 for every push to `main` and every pull request. Includes dependency review to block PRs introducing vulnerable dependencies.
133
+
-**Publish** (`publish.yml`) — Triggered by `v*` tags. Uses OIDC Trusted Publishing (no stored npm tokens) with Sigstore provenance attestation. Requires manual approval via the `npm-publish` GitHub Environment.
134
+
-**Scorecard** (`scorecard.yml`) — Weekly OpenSSF Scorecard assessment, results published to the GitHub Security tab.
Copy file name to clipboardExpand all lines: spx/CLAUDE.md
+30-38Lines changed: 30 additions & 38 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,33 +1,20 @@
1
-
# spx/ Directory Guide (CODE Framework)
1
+
# spx/ Directory Guide (Spec Tree)
2
2
3
-
This guide explains WHEN to invoke spx skills. It is a **router** that tells you which skill to use. The skills themselves contain the HOW (detailed procedures, templates, structure definitions).
3
+
This guide explains the `spx/` directory structure and how to work with specification trees.
4
4
5
-
---
6
-
7
-
## 🚨 DISAMBIGUATION: spx/ vs specs/
8
-
9
-
**Before proceeding, determine which system this project uses:**
**If BOTH directories exist**: Ask the user which system they want to work with.
5
+
Spec tree management is handled by the **spec-tree** Claude Code plugin (`outcomeeng/claude/plugins/spec-tree`). Use its skills for all spec operations:
17
6
18
-
**If `specs/` exists**: Read `specs/CLAUDE.md` for legacy system guidance.
0 commit comments