create-claude-rails 0.1.2 → 0.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.
- package/lib/cli.js +47 -3
- package/lib/copy.js +16 -2
- package/lib/metadata.js +2 -1
- package/lib/reset.js +193 -0
- package/package.json +1 -1
- package/templates/EXTENSIONS.md +32 -32
- package/templates/README.md +2 -2
- package/templates/skills/onboard/SKILL.md +55 -22
- package/templates/skills/onboard/phases/detect-state.md +21 -39
- package/templates/skills/onboard/phases/generate-context.md +1 -1
- package/templates/skills/onboard/phases/interview.md +22 -2
- package/templates/skills/onboard/phases/modularity-menu.md +17 -14
- package/templates/skills/onboard/phases/options.md +98 -0
- package/templates/skills/onboard/phases/post-onboard-audit.md +19 -1
- package/templates/skills/onboard/phases/summary.md +1 -1
- package/templates/skills/onboard/phases/work-tracking.md +231 -0
- package/templates/skills/perspectives/_groups-template.yaml +1 -1
- package/templates/skills/perspectives/architecture/SKILL.md +275 -0
- package/templates/skills/perspectives/box-health/SKILL.md +8 -8
- package/templates/skills/perspectives/data-integrity/SKILL.md +2 -2
- package/templates/skills/perspectives/documentation/SKILL.md +4 -5
- package/templates/skills/perspectives/historian/SKILL.md +250 -0
- package/templates/skills/perspectives/process/SKILL.md +3 -3
- package/templates/skills/perspectives/skills-coverage/SKILL.md +294 -0
- package/templates/skills/perspectives/system-advocate/SKILL.md +191 -0
- package/templates/skills/perspectives/usability/SKILL.md +186 -0
- package/templates/skills/seed/phases/scan-signals.md +7 -3
- package/templates/skills/upgrade/SKILL.md +15 -15
- package/templates/skills/upgrade/phases/apply.md +3 -3
- package/templates/skills/upgrade/phases/detect-current.md +7 -7
- package/templates/skills/upgrade/phases/diff-upstream.md +3 -3
|
@@ -2,16 +2,22 @@
|
|
|
2
2
|
name: onboard
|
|
3
3
|
description: |
|
|
4
4
|
Conversational interview that generates the initial context layer for a
|
|
5
|
-
project adopting
|
|
5
|
+
project adopting Claude on Rails. Re-runnable at different maturity stages — each run
|
|
6
6
|
refines based on what the project has learned. Use when: "onboard",
|
|
7
|
-
"set up
|
|
7
|
+
"set up CoR", "bootstrap", "/onboard".
|
|
8
8
|
related:
|
|
9
9
|
- type: file
|
|
10
10
|
path: .claude/skills/onboard/phases/detect-state.md
|
|
11
|
-
role: "Detect existing
|
|
11
|
+
role: "Detect existing CoR artifacts and determine run mode"
|
|
12
12
|
- type: file
|
|
13
13
|
path: .claude/skills/onboard/phases/interview.md
|
|
14
14
|
role: "Conversational interview questions"
|
|
15
|
+
- type: file
|
|
16
|
+
path: .claude/skills/onboard/phases/work-tracking.md
|
|
17
|
+
role: "Choose work tracking system (SQLite vs markdown vs external)"
|
|
18
|
+
- type: file
|
|
19
|
+
path: .claude/skills/onboard/phases/options.md
|
|
20
|
+
role: "Structured decision points before generation"
|
|
15
21
|
- type: file
|
|
16
22
|
path: .claude/skills/onboard/phases/generate-context.md
|
|
17
23
|
role: "Generate or update context files"
|
|
@@ -33,7 +39,7 @@ related:
|
|
|
33
39
|
|
|
34
40
|
## Purpose
|
|
35
41
|
|
|
36
|
-
Generate the context layer that makes every other
|
|
42
|
+
Generate the context layer that makes every other CoR skill work. Without
|
|
37
43
|
context — what is this project, what stack does it use, what breaks, who
|
|
38
44
|
works on it — the session loop runs blind. Orient reads files that don't
|
|
39
45
|
exist yet. Debrief records lessons into a structure that hasn't been
|
|
@@ -69,7 +75,7 @@ Onboard is re-runnable. What it does depends on what already exists:
|
|
|
69
75
|
|
|
70
76
|
### 1. First Run (no _context.md)
|
|
71
77
|
|
|
72
|
-
No
|
|
78
|
+
No CoR context layer exists yet. This is the full interview: who are you,
|
|
73
79
|
what is this, what breaks, what do you need. Generates the complete
|
|
74
80
|
initial context layer — `_context.md`, CLAUDE.md additions, system-status.md,
|
|
75
81
|
and session loop wiring. The goal is a working session loop by the end of
|
|
@@ -77,7 +83,7 @@ the conversation.
|
|
|
77
83
|
|
|
78
84
|
### 2. Early Re-Run (sparse artifacts)
|
|
79
85
|
|
|
80
|
-
Some
|
|
86
|
+
Some CoR artifacts exist but the project is young. The session loop has
|
|
81
87
|
run a few times and the user has learned what works and what doesn't.
|
|
82
88
|
The interview shifts to refinement: What has the session loop taught you
|
|
83
89
|
that CLAUDE.md doesn't reflect? What friction have you hit? What context
|
|
@@ -86,7 +92,7 @@ existing files rather than creating new ones.
|
|
|
86
92
|
|
|
87
93
|
### 3. Mature Re-Run (rich context)
|
|
88
94
|
|
|
89
|
-
The project has been using
|
|
95
|
+
The project has been using CoR for a while. Context files are populated,
|
|
90
96
|
multiple modules are active, patterns have accumulated. The interview
|
|
91
97
|
becomes a health check: Which modules are you actually using? Is anything
|
|
92
98
|
ready to retire? What gaps have you noticed? Are there new areas the
|
|
@@ -98,7 +104,7 @@ doesn't have to declare it.
|
|
|
98
104
|
|
|
99
105
|
## Why This Matters
|
|
100
106
|
|
|
101
|
-
Every
|
|
107
|
+
Every CoR skill reads from the context layer. Orient reads `_context.md`
|
|
102
108
|
to know what files to check. Plan reads it to know where work items live.
|
|
103
109
|
Perspectives read it to know where to look. If the context layer is empty
|
|
104
110
|
or wrong, every skill downstream is degraded. Onboard is the foundation
|
|
@@ -113,9 +119,9 @@ the periodic recalibration that keeps the context layer honest.
|
|
|
113
119
|
|
|
114
120
|
### 1. Detect State
|
|
115
121
|
|
|
116
|
-
Read `phases/detect-state.md` for how to scan existing
|
|
122
|
+
Read `phases/detect-state.md` for how to scan existing CoR artifacts.
|
|
117
123
|
|
|
118
|
-
**Default (absent/empty):** Scan for the standard
|
|
124
|
+
**Default (absent/empty):** Scan for the standard CoR artifact set:
|
|
119
125
|
`_context.md`, `system-status.md`, `orient/phases/`, `debrief/phases/`,
|
|
120
126
|
`pib.db`, `_groups.yaml`, `memory/patterns/`. Count what exists, classify
|
|
121
127
|
its richness (empty file vs populated), and determine the run mode. Report
|
|
@@ -149,12 +155,37 @@ by now?
|
|
|
149
155
|
|
|
150
156
|
This is a conversation, not a form. Ask 2-3 questions at a time, not all
|
|
151
157
|
at once. Follow up on answers — if the user mentions a pain point, dig
|
|
152
|
-
into it. If something sounds like it maps to a specific
|
|
158
|
+
into it. If something sounds like it maps to a specific CoR module, note
|
|
153
159
|
it for the modularity menu phase. The interview is the most valuable
|
|
154
160
|
phase because it captures knowledge that no amount of file scanning can
|
|
155
161
|
surface.
|
|
156
162
|
|
|
157
|
-
### 3.
|
|
163
|
+
### 3. Work Tracking
|
|
164
|
+
|
|
165
|
+
Read `phases/work-tracking.md` for how to present work tracking options.
|
|
166
|
+
|
|
167
|
+
**Default (absent/empty):** Detect existing work tracking (pib.db,
|
|
168
|
+
tasks.md, GitHub Issues, custom phase files). Present two built-in
|
|
169
|
+
options — SQLite database (pib-db) or markdown file (tasks.md) — plus
|
|
170
|
+
bring-your-own for external systems. User picks one, the other, or
|
|
171
|
+
neither. The choice is recorded in `.pibrc.json` under `workTracking`
|
|
172
|
+
and feeds into generate-context and generate-session-loop.
|
|
173
|
+
|
|
174
|
+
### 4. Options
|
|
175
|
+
|
|
176
|
+
Read `phases/options.md` for how to present structured decision points.
|
|
177
|
+
|
|
178
|
+
**Default (absent/empty):** If the interview revealed open decisions
|
|
179
|
+
(tech stack undecided, architecture unclear, "what would you recommend?"),
|
|
180
|
+
present 2-3 options per decision with trade-offs. Uses architecture and
|
|
181
|
+
boundary-conditions perspectives internally to evaluate each option.
|
|
182
|
+
Skips automatically when the user already has clear opinions or this is
|
|
183
|
+
a re-run.
|
|
184
|
+
|
|
185
|
+
The user's choices feed into generate-context. Deferred decisions are
|
|
186
|
+
noted as open questions in `_context.md`.
|
|
187
|
+
|
|
188
|
+
### 5. Generate Context
|
|
158
189
|
|
|
159
190
|
Read `phases/generate-context.md` for how to create or update the context
|
|
160
191
|
layer from interview answers.
|
|
@@ -173,7 +204,7 @@ would change as diffs — never overwrite without showing the delta. Let
|
|
|
173
204
|
the user approve, modify, or reject each change. The user owns their
|
|
174
205
|
context files; onboard proposes, never imposes.
|
|
175
206
|
|
|
176
|
-
###
|
|
207
|
+
### 6. Generate Session Loop
|
|
177
208
|
|
|
178
209
|
Read `phases/generate-session-loop.md` for how to wire orient and debrief
|
|
179
210
|
phase files.
|
|
@@ -196,9 +227,9 @@ In re-run mode, examine existing phase files and propose refinements based
|
|
|
196
227
|
on what the interview surfaced. If the user said "orient never shows me X,"
|
|
197
228
|
that's a signal to update the work-scan or health-checks phase.
|
|
198
229
|
|
|
199
|
-
###
|
|
230
|
+
### 7. Modularity Menu
|
|
200
231
|
|
|
201
|
-
Read `phases/modularity-menu.md` for which
|
|
232
|
+
Read `phases/modularity-menu.md` for which CoR modules to present.
|
|
202
233
|
|
|
203
234
|
**Default (absent/empty):** Present the module hierarchy with adoption
|
|
204
235
|
recommendations based on the interview. The session loop is always set up.
|
|
@@ -209,7 +240,7 @@ they can always add more later.
|
|
|
209
240
|
In re-run mode, show what's adopted alongside what's available. Surface
|
|
210
241
|
retirement candidates — modules that were adopted but aren't being used.
|
|
211
242
|
|
|
212
|
-
###
|
|
243
|
+
### 8. Summary
|
|
213
244
|
|
|
214
245
|
Read `phases/summary.md` for how to present results.
|
|
215
246
|
|
|
@@ -221,7 +252,7 @@ through use as orient and debrief reveal what's missing.
|
|
|
221
252
|
In re-run mode, present a before/after view: what the context layer
|
|
222
253
|
looked like before, what changed, and why.
|
|
223
254
|
|
|
224
|
-
###
|
|
255
|
+
### 9. Post-Onboard Audit
|
|
225
256
|
|
|
226
257
|
Read `phases/post-onboard-audit.md` for the configuration sanity check.
|
|
227
258
|
|
|
@@ -240,8 +271,10 @@ pre-flight check, not a deferred finding.
|
|
|
240
271
|
|
|
241
272
|
| Phase | Absent = | What it customizes |
|
|
242
273
|
|-------|----------|-------------------|
|
|
243
|
-
| `detect-state.md` | Default: scan standard
|
|
274
|
+
| `detect-state.md` | Default: scan standard CoR artifacts | What artifacts to scan and how to determine mode |
|
|
244
275
|
| `interview.md` | Default: mode-adapted questions | What to ask and how to follow up |
|
|
276
|
+
| `work-tracking.md` | Default: detect & present choices | What work tracking system to use (pib-db, markdown, or external) |
|
|
277
|
+
| `options.md` | Default: present decisions with trade-offs | What decisions to surface and how to frame options |
|
|
245
278
|
| `generate-context.md` | Default: create/update _context.md, CLAUDE.md, system-status.md | What files to generate and how |
|
|
246
279
|
| `generate-session-loop.md` | Default: wire orient/debrief phases | How to set up the session loop |
|
|
247
280
|
| `modularity-menu.md` | Default: present module hierarchy | Which modules to present and how |
|
|
@@ -254,7 +287,7 @@ Onboard is a companion, not a configurator. The framing is "let's figure
|
|
|
254
287
|
out what your project needs" — not "I'll set up your system now." The
|
|
255
288
|
interview is genuine curiosity about the project, not a checklist to get
|
|
256
289
|
through. When the user describes a pain point, the right response is to
|
|
257
|
-
understand it, not to immediately map it to a
|
|
290
|
+
understand it, not to immediately map it to a CoR module.
|
|
258
291
|
|
|
259
292
|
This matters because the quality of the context layer depends on the
|
|
260
293
|
quality of the conversation. A mechanical interview produces mechanical
|
|
@@ -284,13 +317,13 @@ Examples of phases mature adopters add:
|
|
|
284
317
|
|
|
285
318
|
## Calibration
|
|
286
319
|
|
|
287
|
-
**Core failure this targets:** Starting
|
|
320
|
+
**Core failure this targets:** Starting CoR adoption with empty context
|
|
288
321
|
files, causing the session loop to run without knowing anything about the
|
|
289
322
|
project it's supposed to help.
|
|
290
323
|
|
|
291
324
|
### Without Skill (Bad)
|
|
292
325
|
|
|
293
|
-
A project adopts
|
|
326
|
+
A project adopts CoR. They copy the skeleton files, run `/orient` — it
|
|
294
327
|
reads a blank `_context.md` and an empty `system-status.md`, reports
|
|
295
328
|
nothing useful. They run `/debrief` — it tries to close work items but
|
|
296
329
|
doesn't know where work is tracked. They create a plan — perspectives
|
|
@@ -305,7 +338,7 @@ discovering context gaps one at a time.
|
|
|
305
338
|
|
|
306
339
|
### With Skill (Good)
|
|
307
340
|
|
|
308
|
-
A project adopts
|
|
341
|
+
A project adopts CoR and runs `/onboard`. The interview asks what the
|
|
309
342
|
project is, what stack it uses, what hurts. The user mentions they have a
|
|
310
343
|
Rails app with a PostgreSQL database, three developers, and a recurring
|
|
311
344
|
problem with stale feature flags. From the conversation, onboard generates
|
|
@@ -1,76 +1,58 @@
|
|
|
1
|
-
# Detect State — Scan
|
|
1
|
+
# Detect State — Scan Claude on Rails Artifacts and Determine Mode
|
|
2
2
|
|
|
3
|
-
Scan the project for existing
|
|
3
|
+
Scan the project for existing CoR artifacts to determine whether this is
|
|
4
4
|
a first run, early re-run, or mature re-run. The mode determination
|
|
5
5
|
drives how every subsequent phase behaves.
|
|
6
6
|
|
|
7
7
|
When this file is absent or empty, the default behavior is: scan for the
|
|
8
|
-
standard
|
|
8
|
+
standard CoR artifact set, classify each artifact's richness, and
|
|
9
9
|
determine the mode. To explicitly skip state detection (force first-run
|
|
10
10
|
mode), write only `skip: true`.
|
|
11
11
|
|
|
12
|
-
##
|
|
12
|
+
## Fast Path
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
Check for `_context.md` (or `.claude/skills/perspectives/_context.md`).
|
|
15
|
+
If it doesn't exist, the mode is **first-run** — skip the full scan and
|
|
16
|
+
move to the interview immediately. No need to check 10 artifact types
|
|
17
|
+
when the primary signal is absent.
|
|
17
18
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
Also read `.pibrc.json` if it exists — it records which modules the CLI
|
|
20
|
+
installed and which were skipped (with reasons). The interview phase uses
|
|
21
|
+
this to skip redundant questions.
|
|
21
22
|
|
|
22
|
-
|
|
23
|
-
interview phase uses this to skip redundant questions and the modularity
|
|
24
|
-
menu uses `skipped` reasons to ask about alternatives.
|
|
23
|
+
## Full Scan (re-runs only)
|
|
25
24
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
Check for these artifacts and classify each as absent, empty, or populated:
|
|
25
|
+
Only when `_context.md` exists, scan these artifacts to distinguish
|
|
26
|
+
early vs mature re-run:
|
|
29
27
|
|
|
30
28
|
| Artifact | Path Pattern | Indicates |
|
|
31
29
|
|----------|-------------|-----------|
|
|
32
|
-
| Project context | `_context.md` or `.claude/skills/perspectives/_context.md` | Context layer exists |
|
|
33
30
|
| System status | `system-status.md` | State tracking exists |
|
|
34
31
|
| Orient phases | `.claude/skills/orient/phases/*.md` | Session loop is wired |
|
|
35
32
|
| Debrief phases | `.claude/skills/debrief/phases/*.md` | Session loop is wired |
|
|
36
33
|
| Work tracking DB | `pib.db` | Work tracking is active |
|
|
37
34
|
| Perspective groups | `_groups.yaml` or `.claude/skills/perspectives/_groups.yaml` | Audit system configured |
|
|
38
|
-
| Memory patterns | `memory/patterns/*.md` | Feedback loop is active |
|
|
35
|
+
| Memory patterns | `memory/patterns/*.md` or `.claude/memory/patterns/*.md` | Feedback loop is active |
|
|
39
36
|
| CLAUDE.md | Root `CLAUDE.md` | Project instructions exist |
|
|
40
37
|
| Rules files | `.claude/rules/*.md` | Scoped instructions exist |
|
|
41
38
|
| Hook config | `.claude/settings.json` or `.claude/settings.local.json` | Enforcement hooks exist |
|
|
42
39
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
**First run:** `_context.md` does not exist. No PIB context layer has been
|
|
46
|
-
generated yet. Even if other artifacts exist (e.g., a CLAUDE.md written
|
|
47
|
-
by hand), the absence of the generated context file means onboard hasn't
|
|
48
|
-
run before.
|
|
49
|
-
|
|
50
|
-
**Early re-run:** `_context.md` exists but the artifact set is sparse.
|
|
51
|
-
Fewer than 5 of the scanned artifacts are populated. The session loop
|
|
52
|
-
may be wired but modules like work tracking, audit, and enforcement are
|
|
53
|
-
not yet active. The project is young — it has been through a few sessions
|
|
54
|
-
but hasn't accumulated rich process infrastructure.
|
|
55
|
-
|
|
56
|
-
**Mature re-run:** `_context.md` exists and 5 or more scanned artifacts
|
|
57
|
-
are populated. The project has a working session loop, some form of work
|
|
58
|
-
tracking, and at least one additional module (audit, enforcement, or
|
|
59
|
-
memory). The context layer has had time to accumulate gaps and drift.
|
|
40
|
+
**Early re-run:** Fewer than 5 of the above are populated.
|
|
41
|
+
**Mature re-run:** 5 or more are populated.
|
|
60
42
|
|
|
61
43
|
## Output
|
|
62
44
|
|
|
63
|
-
|
|
45
|
+
For first-run: `Mode: first-run` — that's it. Move on.
|
|
46
|
+
|
|
47
|
+
For re-runs, report a structured summary that subsequent phases can
|
|
64
48
|
reference:
|
|
65
49
|
|
|
66
50
|
```
|
|
67
|
-
Mode:
|
|
51
|
+
Mode: early-rerun | mature-rerun
|
|
68
52
|
|
|
69
53
|
Artifacts found:
|
|
70
|
-
- _context.md: populated (last modified 2026-03-15)
|
|
71
54
|
- system-status.md: populated
|
|
72
55
|
- orient phases: 3 files (context.md, work-scan.md, health-checks.md)
|
|
73
|
-
- debrief phases: 2 files (inventory.md, update-state.md)
|
|
74
56
|
- pib.db: absent
|
|
75
57
|
- memory patterns: 4 files
|
|
76
58
|
...
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Generate Context — Create or Update Context Files
|
|
2
2
|
|
|
3
|
-
Transform interview answers into the files that make the rest of
|
|
3
|
+
Transform interview answers into the files that make the rest of Claude on Rails
|
|
4
4
|
functional. This is where conversation becomes infrastructure — but it
|
|
5
5
|
is always a proposal, never an imposition.
|
|
6
6
|
|
|
@@ -60,7 +60,7 @@ are valid starting points.
|
|
|
60
60
|
|
|
61
61
|
## First-Run Questions
|
|
62
62
|
|
|
63
|
-
The detect-state phase identified this as a first run (no
|
|
63
|
+
The detect-state phase identified this as a first run (no CoR context
|
|
64
64
|
layer exists). But "first run" covers two very different situations:
|
|
65
65
|
|
|
66
66
|
### Greenfield (no project yet, or near-empty directory)
|
|
@@ -174,12 +174,32 @@ cruft. This is a health check.
|
|
|
174
174
|
- Are there patterns in your memory/feedback that suggest a structural
|
|
175
175
|
change rather than another rule?
|
|
176
176
|
|
|
177
|
+
## Scope Boundary
|
|
178
|
+
|
|
179
|
+
You are configuring the **process layer** — what Claude should know about
|
|
180
|
+
this project, how sessions start and end, what to track and check. You
|
|
181
|
+
are NOT:
|
|
182
|
+
|
|
183
|
+
- Recommending tech stacks, frameworks, or architecture
|
|
184
|
+
- Advising on what to build or how to build it
|
|
185
|
+
- Making product decisions
|
|
186
|
+
|
|
187
|
+
If the user asks "what should I use?" or "what do you recommend?" for
|
|
188
|
+
their actual project, redirect: "That's a great question for your first
|
|
189
|
+
working session after we finish setup. Right now I'm just learning about
|
|
190
|
+
your project so the session loop knows what to look for. What do you
|
|
191
|
+
know so far about what you'll be building?"
|
|
192
|
+
|
|
193
|
+
Record what they tell you about their intentions and tools — that goes
|
|
194
|
+
into `_context.md`. But choosing those tools is their decision, not
|
|
195
|
+
onboard's job.
|
|
196
|
+
|
|
177
197
|
## Conversation Guidelines
|
|
178
198
|
|
|
179
199
|
- **2-3 questions per round.** Let the user respond before asking more.
|
|
180
200
|
- **Follow up on substance.** If an answer reveals something important,
|
|
181
201
|
dig into it before moving on to the next topic.
|
|
182
|
-
- **Note
|
|
202
|
+
- **Note CoR module signals.** When someone describes a pain point that
|
|
183
203
|
maps to a specific module, note it internally for the modularity menu
|
|
184
204
|
phase — but don't interrupt the conversation to pitch the module.
|
|
185
205
|
- **Don't assume answers.** Even if you can see the project's files, ask
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Modularity Menu — Present Opt-In Modules
|
|
2
2
|
|
|
3
|
-
Present the
|
|
3
|
+
Present the Claude on Rails module hierarchy so the user can decide what to adopt now
|
|
4
4
|
and what to defer. The session loop is mandatory; everything else is
|
|
5
5
|
opt-in. Progressive adoption means starting with what you need and adding
|
|
6
6
|
modules as the project matures.
|
|
@@ -38,7 +38,7 @@ Present these in order from most fundamental to most specialized:
|
|
|
38
38
|
|
|
39
39
|
### 1. Session Loop (orient + debrief) — MANDATORY
|
|
40
40
|
|
|
41
|
-
Always set up. This is the minimum viable
|
|
41
|
+
Always set up. This is the minimum viable CoR adoption. Orient reads
|
|
42
42
|
state at session start; debrief writes state at session end. Without
|
|
43
43
|
this, nothing else has a foundation.
|
|
44
44
|
|
|
@@ -49,21 +49,24 @@ with each session instead of resetting to zero.
|
|
|
49
49
|
**Cost:** Two phase directories with a few files each. Runs at the
|
|
50
50
|
start and end of every session (adds 30-60 seconds each).
|
|
51
51
|
|
|
52
|
-
### 2. Work Tracking
|
|
52
|
+
### 2. Work Tracking — RECOMMENDED
|
|
53
53
|
|
|
54
|
-
|
|
55
|
-
|
|
54
|
+
How work items are tracked. The work-tracking onboard phase presents the
|
|
55
|
+
options in detail; this is the module-level view.
|
|
56
56
|
|
|
57
|
-
**
|
|
58
|
-
|
|
59
|
-
|
|
57
|
+
**Options (chosen during onboard work-tracking phase):**
|
|
58
|
+
- **pib-db (SQLite):** Structured, queryable, local-only. CLI interface.
|
|
59
|
+
Integrates with plan/execute and audit findings. Requires `better-sqlite3`.
|
|
60
|
+
- **Markdown (tasks.md):** Simple, git-friendly, zero dependencies. Open
|
|
61
|
+
items are checkbox lines in a file. Good for solo/quick-start projects.
|
|
62
|
+
- **External:** Wire orient/debrief to GitHub Issues, Linear, Jira, etc.
|
|
63
|
+
You customize phase files after onboard.
|
|
60
64
|
|
|
61
|
-
**
|
|
62
|
-
|
|
65
|
+
**What you get:** Open actions, due dates, flagged items. Orient surfaces
|
|
66
|
+
what needs attention. Debrief marks things done. Plan creates work items.
|
|
63
67
|
|
|
64
|
-
**Skip if:** You
|
|
65
|
-
|
|
66
|
-
your existing tracker instead.
|
|
68
|
+
**Skip if:** You don't need work tracking in the session loop. You can
|
|
69
|
+
always add it later by re-running `/onboard`.
|
|
67
70
|
|
|
68
71
|
### 3. Planning (plan + execute) — OPT-IN
|
|
69
72
|
|
|
@@ -115,7 +118,7 @@ head.
|
|
|
115
118
|
|
|
116
119
|
### 6. Capability Seeding (seed) — OPT-IN
|
|
117
120
|
|
|
118
|
-
Bootstrap new skills, perspectives, or process components from
|
|
121
|
+
Bootstrap new skills, perspectives, or process components from CoR
|
|
119
122
|
skeleton templates.
|
|
120
123
|
|
|
121
124
|
**What you get:** Quick scaffolding of new capabilities with all required
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# Options — Structured Decision Points Before Generation
|
|
2
|
+
|
|
3
|
+
After the interview and before generating context files, surface the key
|
|
4
|
+
decisions that shape how the project and process layer get set up. Present
|
|
5
|
+
options with trade-offs so the user makes informed choices — not Claude
|
|
6
|
+
making choices for them.
|
|
7
|
+
|
|
8
|
+
When this file is absent or empty, the default behavior is: identify
|
|
9
|
+
decisions implied by the interview, present options, let the user choose.
|
|
10
|
+
To explicitly skip (e.g., the user already has strong opinions from the
|
|
11
|
+
interview), write only `skip: true`.
|
|
12
|
+
|
|
13
|
+
## When This Phase Activates
|
|
14
|
+
|
|
15
|
+
Not every onboard needs this. Skip it when:
|
|
16
|
+
- The user described a clear tech stack and workflow (nothing to decide)
|
|
17
|
+
- This is a re-run (decisions were already made)
|
|
18
|
+
- The project is already built and this is process-layer-only
|
|
19
|
+
|
|
20
|
+
Run it when the interview revealed **open decisions** — things the user
|
|
21
|
+
hasn't settled yet that will affect what context files contain:
|
|
22
|
+
|
|
23
|
+
- "I'm not sure what database to use"
|
|
24
|
+
- "I don't know if I need a backend"
|
|
25
|
+
- "What would you recommend?" (redirected here from the interview)
|
|
26
|
+
- Greenfield project where the user described *what* but not *how*
|
|
27
|
+
|
|
28
|
+
## How to Present Options
|
|
29
|
+
|
|
30
|
+
For each open decision, present 2-3 concrete options with trade-offs.
|
|
31
|
+
Use two expert perspectives internally (do not spawn agents — just
|
|
32
|
+
reason from these viewpoints):
|
|
33
|
+
|
|
34
|
+
### Architecture Perspective
|
|
35
|
+
Evaluates each option for: complexity, maintenance burden, whether it
|
|
36
|
+
matches the user's described skill level and project scope. Flags when
|
|
37
|
+
an option is overkill for a weekend project or too lightweight for
|
|
38
|
+
something ambitious.
|
|
39
|
+
|
|
40
|
+
### Boundary Conditions Perspective
|
|
41
|
+
Evaluates each option for: what breaks first, what's hard to change
|
|
42
|
+
later, what locks you in. Flags irreversible decisions that deserve
|
|
43
|
+
extra thought.
|
|
44
|
+
|
|
45
|
+
### Format
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
## [Decision: e.g., "How to store data"]
|
|
49
|
+
|
|
50
|
+
Based on what you described — [reference specific things from interview] —
|
|
51
|
+
here are your options:
|
|
52
|
+
|
|
53
|
+
**Option A: [name]**
|
|
54
|
+
- What it is: [1 sentence]
|
|
55
|
+
- Good for: [when this is the right choice]
|
|
56
|
+
- Trade-off: [what you give up]
|
|
57
|
+
|
|
58
|
+
**Option B: [name]**
|
|
59
|
+
- What it is: [1 sentence]
|
|
60
|
+
- Good for: [when this is the right choice]
|
|
61
|
+
- Trade-off: [what you give up]
|
|
62
|
+
|
|
63
|
+
**Option C: [name]** (if applicable)
|
|
64
|
+
- ...
|
|
65
|
+
|
|
66
|
+
What sounds right for your situation?
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### Tone
|
|
70
|
+
|
|
71
|
+
- **Present, don't prescribe.** "Here are your options" not "I recommend X."
|
|
72
|
+
- **Reference the interview.** "You mentioned it's just you and this is a
|
|
73
|
+
side project, so..." — ground options in their specific situation.
|
|
74
|
+
- **Be honest about complexity.** If one option is simpler but limited,
|
|
75
|
+
say so. If another is powerful but requires more setup, say so.
|
|
76
|
+
- **Respect "I don't know."** If the user can't decide, suggest starting
|
|
77
|
+
with the simplest option and note that it can be changed later. Don't
|
|
78
|
+
pressure decisions.
|
|
79
|
+
|
|
80
|
+
## What This Is NOT
|
|
81
|
+
|
|
82
|
+
- **Not architecture consulting.** You present options the interview
|
|
83
|
+
surfaced, not a comprehensive technology evaluation. If the user wants
|
|
84
|
+
deep architecture advice, that's a working session topic, not onboard.
|
|
85
|
+
- **Not prescriptive.** Never say "you should use X." Always frame as
|
|
86
|
+
options with trade-offs.
|
|
87
|
+
- **Not exhaustive.** 2-3 options per decision. Not every possible
|
|
88
|
+
approach.
|
|
89
|
+
|
|
90
|
+
## Output
|
|
91
|
+
|
|
92
|
+
The user's choices feed into generate-context. Each decision becomes
|
|
93
|
+
concrete content in `_context.md` (architecture section), CLAUDE.md
|
|
94
|
+
(conventions), and potentially orient phase files (what to check).
|
|
95
|
+
|
|
96
|
+
If the user defers a decision ("I'll figure that out later"), note it
|
|
97
|
+
in `_context.md` as an open question — don't leave the section empty
|
|
98
|
+
without explanation.
|
|
@@ -61,7 +61,25 @@ Quick filesystem checks:
|
|
|
61
61
|
- `system-status.md` exists and has initial content
|
|
62
62
|
- Hook scripts in `.claude/hooks/` are executable (if hooks module adopted)
|
|
63
63
|
|
|
64
|
-
### 4.
|
|
64
|
+
### 4. Technology-Implied Perspectives
|
|
65
|
+
|
|
66
|
+
Check whether the project's technology signals suggest perspectives that
|
|
67
|
+
aren't activated. Cross-reference the interview answers and detected
|
|
68
|
+
technologies against the perspective catalog:
|
|
69
|
+
|
|
70
|
+
- **UI framework detected** → usability, accessibility, mobile-responsiveness
|
|
71
|
+
- **Database detected** → data-integrity
|
|
72
|
+
- **API server detected** → security, performance
|
|
73
|
+
- **Complex architecture (3+ layers/services)** → architecture
|
|
74
|
+
- **Long-running project** → historian
|
|
75
|
+
- **Many skills (5+)** → skills-coverage
|
|
76
|
+
- **Features shipping regularly** → system-advocate
|
|
77
|
+
|
|
78
|
+
If implied perspectives aren't in `_groups.yaml` (or equivalent), note
|
|
79
|
+
it as a recommendation — not a blocker. The user may have good reasons
|
|
80
|
+
to skip them, or may want to add them later via `/seed`.
|
|
81
|
+
|
|
82
|
+
### 5. First-Session Readiness
|
|
65
83
|
|
|
66
84
|
Simulate what `/orient` will do on its first run:
|
|
67
85
|
|
|
@@ -51,7 +51,7 @@ Deferred:
|
|
|
51
51
|
### What to Do Next
|
|
52
52
|
|
|
53
53
|
Concrete next steps, not abstract advice:
|
|
54
|
-
- "Run `/orient` to start your first
|
|
54
|
+
- "Run `/orient` to start your first CoR session. It will read the
|
|
55
55
|
context files we just generated."
|
|
56
56
|
- "After your first working session, run `/debrief` to close the loop."
|
|
57
57
|
- "The context files are rough. After 3-5 sessions, run `/onboard` again
|