compass-cc 0.1.0 → 0.1.4

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/README.md CHANGED
@@ -96,7 +96,7 @@ COMPASS externalizes all state to `.compass/` in the target project:
96
96
  ```
97
97
 
98
98
  State files are the source of truth — not conversation history. All state mutations
99
- go through `compass-tools.sh` (deterministic, no LLM involved).
99
+ go through `~/.claude/compass/scripts/compass-tools.sh` (deterministic, no LLM involved).
100
100
 
101
101
  ---
102
102
 
package/constitution.md CHANGED
@@ -93,7 +93,7 @@ All project state lives in files under `.compass/` in the target project.
93
93
  - Every decision, artifact, and progress marker must be persisted to a file.
94
94
  - State files are the authoritative record. If conversation context and files
95
95
  disagree, the files are correct.
96
- - State mutations go through `compass-tools.sh` — sub-agents must not directly
96
+ - State mutations go through `~/.claude/compass/scripts/compass-tools.sh` — sub-agents must not directly
97
97
  edit `SESSION.md`, `config.yaml`, or progress markers.
98
98
 
99
99
  ---
@@ -106,7 +106,7 @@ Each sub-agent invocation is stateless. It loads only the files it needs via exp
106
106
  - Sub-agents must not assume prior conversation context.
107
107
  - Sub-agents must not assume other sub-agents have run unless their artifacts exist
108
108
  in `.compass/`.
109
- - The pre-flight check (`compass-tools.sh preflight`) is the authoritative source
109
+ - The pre-flight check (`~/.claude/compass/scripts/compass-tools.sh preflight`) is the authoritative source
110
110
  for whether prerequisites are met.
111
111
 
112
112
  ---
@@ -130,7 +130,7 @@ Nothing advances without the human saying so.
130
130
  ADRs are mandatory for non-trivial architectural decisions.
131
131
 
132
132
  - Format: MADR (Markdown Any Decision Records).
133
- - Each ADR lives in its own file, numbered sequentially by `compass-tools.sh adr next-number`.
133
+ - Each ADR lives in its own file, numbered sequentially by `~/.claude/compass/scripts/compass-tools.sh adr next-number`.
134
134
  - ADRs are linked to requirements in FRAMING.md and, later, to code locations.
135
135
  - The scope-guardian checks diffs against active ADRs for contradictions.
136
136
  - ADR location is configurable via `config.yaml` (default: `.compass/ADR/`).
@@ -159,7 +159,7 @@ File existence checks, phase numbering, progress tracking, drift detection setup
159
159
  ADR numbering, and session state updates are handled by deterministic scripts —
160
160
  not by LLM reasoning.
161
161
 
162
- - `compass-tools.sh` is the canonical tool for all bookkeeping operations.
162
+ - `~/.claude/compass/scripts/compass-tools.sh` is the canonical tool for all bookkeeping operations.
163
163
  - Sub-agents call the script for state queries and mutations.
164
164
  - The script's output is authoritative over any LLM inference about state.
165
165
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "compass-cc",
3
- "version": "0.1.0",
3
+ "version": "0.1.4",
4
4
  "description": "COMPASS — Collaborative Orientation, Mapping, Planning, Architecture, Spec & Supervision. An inverted AI coding skill: the human implements, the LLM orients.",
5
5
  "license": "MIT",
6
6
  "author": "hvpaiva",
@@ -18,7 +18,7 @@ This reference is loaded by every COMPASS sub-agent. It is non-negotiable.
18
18
  - Report problems without prescribing code solutions.
19
19
  - Respect phase gates — never advance without human approval.
20
20
  - Read state from `.compass/` files, not from conversation memory.
21
- - Call `compass-tools.sh` for state mutations, never edit state files directly.
21
+ - Call `~/.claude/compass/scripts/compass-tools.sh` for state mutations, never edit state files directly.
22
22
 
23
23
  ## Mechanical editing exception
24
24
 
@@ -11,7 +11,7 @@ document the result.
11
11
 
12
12
  ## Pre-flight
13
13
 
14
- 1. Run `compass-tools.sh preflight architect` to verify:
14
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh preflight architect` to verify:
15
15
  - `.compass/FRAMING.md` exists
16
16
  - `.compass/RESEARCH/` has at least one dossier
17
17
  - If prerequisites missing, inform the user which phases to complete first.
@@ -82,7 +82,7 @@ Present the document to the user for review before finalizing.
82
82
 
83
83
  ## Closing
84
84
 
85
- 1. Run `compass-tools.sh session update` to record progress.
85
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh session update` to record progress.
86
86
  2. Show summary of what was documented.
87
87
  3. Note any decisions that surfaced during the architecture session that should
88
88
  become formal ADRs.
@@ -50,4 +50,4 @@ If they mention a specific unit, read that unit file for context.
50
50
  ### Ending the session
51
51
 
52
52
  The human ends the session when they're ready. There is no artifact produced.
53
- Run `compass-tools.sh session update` to note the duck session in SESSION.md.
53
+ Run `~/.claude/compass/scripts/compass-tools.sh session update` to note the duck session in SESSION.md.
@@ -12,7 +12,7 @@ without writing or suggesting specific code.
12
12
 
13
13
  ## Pre-flight
14
14
 
15
- 1. Read `compass-tools.sh config get project.language` to know the target language.
15
+ 1. Read `~/.claude/compass/scripts/compass-tools.sh config get project.language` to know the target language.
16
16
  2. If `$ARGUMENTS` provided, use as target path. Otherwise, ask:
17
17
  ```
18
18
  header: "Target"
@@ -54,4 +54,4 @@ Agent(
54
54
  ## Post-execution
55
55
 
56
56
  Present findings to the user. No artifacts produced — this is conversational
57
- feedback. Run `compass-tools.sh session update`.
57
+ feedback. Run `~/.claude/compass/scripts/compass-tools.sh session update`.
@@ -20,7 +20,7 @@ definition at `~/.claude/compass/agents/completion-tracker.md`.
20
20
 
21
21
  ### Process
22
22
 
23
- 1. Run `compass-tools.sh progress` to get structured progress data.
23
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh progress` to get structured progress data.
24
24
  2. Read all unit files from `.compass/UNITS/` for details.
25
25
  3. Present a visual summary:
26
26
 
@@ -52,4 +52,4 @@ Next available units (no unmet dependencies): unit-006
52
52
 
53
53
  ## No artifacts produced
54
54
 
55
- This is a read-only status view. Run `compass-tools.sh session update` after.
55
+ This is a read-only status view. Run `~/.claude/compass/scripts/compass-tools.sh session update` after.
@@ -63,7 +63,7 @@ Agent(
63
63
  Present the readiness report. If ready, suggest the human begin implementing.
64
64
  If not, list specific blockers and how to resolve them.
65
65
 
66
- Update the unit status to `in-progress` via `compass-tools.sh unit update-status {NNN} in-progress`
66
+ Update the unit status to `in-progress` via `~/.claude/compass/scripts/compass-tools.sh unit update-status {NNN} in-progress`
67
67
  if the human confirms they're starting.
68
68
 
69
- Run `compass-tools.sh session update` to record progress.
69
+ Run `~/.claude/compass/scripts/compass-tools.sh session update` to record progress.
@@ -58,4 +58,4 @@ Agent(
58
58
  ## Post-execution
59
59
 
60
60
  Present findings. No artifacts produced — conversational feedback.
61
- Run `compass-tools.sh session update`.
61
+ Run `~/.claude/compass/scripts/compass-tools.sh session update`.
@@ -14,7 +14,7 @@ from the automatic hook.
14
14
 
15
15
  ## Pre-flight
16
16
 
17
- 1. Run `compass-tools.sh preflight build-scope` to verify:
17
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh preflight build-scope` to verify:
18
18
  - `.compass/SPEC.md` (or configured path) exists
19
19
  - At least one ADR exists
20
20
  2. If `$ARGUMENTS` provided, use as git ref (e.g., `HEAD~3`, a branch name, a commit hash).
@@ -28,9 +28,9 @@ from the automatic hook.
28
28
 
29
29
  ## Execution
30
30
 
31
- 1. Run `compass-tools.sh drift --json` to get structured diff data.
31
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh drift --json` to get structured diff data.
32
32
  If a git ref was provided, run `git diff {ref} -- . ':!.compass/'` first and
33
- pipe to a temp file, then `compass-tools.sh drift <tempfile> --json`.
33
+ pipe to a temp file, then `~/.claude/compass/scripts/compass-tools.sh drift <tempfile> --json`.
34
34
 
35
35
  2. Spawn the `scope-guardian` agent:
36
36
 
@@ -64,4 +64,4 @@ Agent(
64
64
 
65
65
  ## Post-execution
66
66
 
67
- Present the full drift report to the user. Run `compass-tools.sh session update`.
67
+ Present the full drift report to the user. Run `~/.claude/compass/scripts/compass-tools.sh session update`.
@@ -54,4 +54,4 @@ Agent(
54
54
  ## Post-execution
55
55
 
56
56
  Present the audit findings. No artifacts produced — conversational feedback.
57
- Run `compass-tools.sh session update`.
57
+ Run `~/.claude/compass/scripts/compass-tools.sh session update`.
@@ -60,4 +60,4 @@ to implement this yourself."
60
60
 
61
61
  ## Post-execution
62
62
 
63
- Run `compass-tools.sh session update` to note the transformation in SESSION.md.
63
+ Run `~/.claude/compass/scripts/compass-tools.sh session update` to note the transformation in SESSION.md.
@@ -10,7 +10,7 @@ work with clear acceptance criteria, dependencies, and scope.
10
10
 
11
11
  ## Pre-flight
12
12
 
13
- 1. Run `compass-tools.sh preflight build-units` to verify:
13
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh preflight build-units` to verify:
14
14
  - `.compass/SPEC.md` (or configured spec path) exists
15
15
  - `.compass/ARCHITECTURE.md` exists
16
16
  - If prerequisites missing, inform the user which phases to complete first.
@@ -70,7 +70,7 @@ Agent(
70
70
  - Split units that are too large
71
71
  - Adjust dependencies
72
72
  - Add units that were missed
73
- 3. Run `compass-tools.sh session update` to record progress.
73
+ 3. Run `~/.claude/compass/scripts/compass-tools.sh session update` to record progress.
74
74
  4. Suggest: "Work units defined. Use `/compass:build-ready` to check readiness
75
75
  before starting a unit, or `/compass:build-progress` to see the full board."
76
76
  5. Suggest `/clear` before starting implementation.
@@ -14,11 +14,11 @@ produces one ADR file.
14
14
 
15
15
  ## Pre-flight
16
16
 
17
- 1. Run `compass-tools.sh preflight decide` to verify:
17
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh preflight decide` to verify:
18
18
  - `.compass/FRAMING.md` exists
19
19
  - `.compass/ARCHITECTURE.md` exists (warn if missing but don't block — some
20
20
  decisions may precede full architecture)
21
- 2. Read `compass-tools.sh config get paths.adr` to resolve ADR output directory.
21
+ 2. Read `~/.claude/compass/scripts/compass-tools.sh config get paths.adr` to resolve ADR output directory.
22
22
  3. List existing ADRs in the output directory to show context.
23
23
 
24
24
  ## Required reading
@@ -81,7 +81,7 @@ You ARE the adr-scribe for this phase. Read and embody the agent definition at
81
81
 
82
82
  ## Producing the ADR
83
83
 
84
- 1. Get the next ADR number: run `compass-tools.sh adr next-number`.
84
+ 1. Get the next ADR number: run `~/.claude/compass/scripts/compass-tools.sh adr next-number`.
85
85
  2. Write the ADR using the template at `~/.claude/compass/templates/ADR.md`.
86
86
  3. Place it in the configured ADR directory (from `config.yaml`).
87
87
  4. Present the ADR to the user for review before finalizing.
@@ -90,7 +90,7 @@ The ADR filename format: `ADR-{NNN}-{kebab-case-title}.md`
90
90
 
91
91
  ## Closing
92
92
 
93
- 1. Run `compass-tools.sh session update` to record progress.
93
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh session update` to record progress.
94
94
  2. Show the ADR summary.
95
95
  3. Ask:
96
96
  ```
@@ -10,7 +10,7 @@ exists, and what constraints shape it.
10
10
 
11
11
  ## Pre-flight
12
12
 
13
- 1. Run `compass-tools.sh preflight frame` to verify:
13
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh preflight frame` to verify:
14
14
  - `.compass/config.yaml` exists (if not, suggest `/compass:init` first)
15
15
  2. Check if `.compass/FRAMING.md` already exists.
16
16
  - If yes: inform the user. Ask if they want to revise or start fresh.
@@ -99,7 +99,7 @@ If yes, collect the principles through conversation. Then append them to
99
99
 
100
100
  After FRAMING.md and constitution are written:
101
101
 
102
- 1. Run `compass-tools.sh session update` to record progress.
102
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh session update` to record progress.
103
103
  2. Show summary of what was produced.
104
104
  3. Suggest: "Framing complete. Next step: `/compass:research` to investigate domain topics."
105
105
  4. Suggest `/clear` before the next phase.
@@ -117,7 +117,7 @@ options: ["Yes — version all COMPASS artifacts", "No — add .compass/ to .git
117
117
 
118
118
  ## Step 4 — Scaffold .compass/ directory
119
119
 
120
- Run `compass-tools.sh init <project-root>` with the resolved config values.
120
+ Run `~/.claude/compass/scripts/compass-tools.sh init <project-root>` with the resolved config values.
121
121
 
122
122
  This creates:
123
123
  ```
@@ -133,7 +133,7 @@ This creates:
133
133
 
134
134
  ## Step 5 — Confirm and suggest next step
135
135
 
136
- 1. Run `compass-tools.sh session update` to record progress.
136
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh session update` to record progress.
137
137
  2. Show the user:
138
138
  - Summary of configuration choices
139
139
  - Directory structure created
@@ -10,7 +10,7 @@ where they are and what the logical next step is.
10
10
 
11
11
  ## Execution
12
12
 
13
- 1. Run `compass-tools.sh status --json` to get full project state.
13
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh status --json` to get full project state.
14
14
  2. If the command fails (no `.compass/` found), suggest: "No COMPASS project
15
15
  found. Run `/compass:init` to get started."
16
16
 
@@ -55,6 +55,6 @@ where they are and what the logical next step is.
55
55
  ## Design notes
56
56
 
57
57
  - This command must be FAST. Minimal reading, no spawning, no heavy analysis.
58
- - It reads state from files and `compass-tools.sh` — never from conversation memory.
58
+ - It reads state from files and `~/.claude/compass/scripts/compass-tools.sh` — never from conversation memory.
59
59
  - It works perfectly after a `/clear` because it depends only on `.compass/` files.
60
- - Run `compass-tools.sh session update` is NOT called — this is read-only.
60
+ - Run `~/.claude/compass/scripts/compass-tools.sh session update` is NOT called — this is read-only.
@@ -13,14 +13,18 @@ one dossier in `.compass/RESEARCH/`.
13
13
 
14
14
  ## Pre-flight
15
15
 
16
- 1. Run `compass-tools.sh preflight research` to verify:
16
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh preflight research` to verify:
17
17
  - `.compass/FRAMING.md` exists (if not, suggest `/compass:frame` first)
18
- 2. If no `$ARGUMENTS` (topic) provided, ask the user:
18
+ 2. If no `$ARGUMENTS` (topic) provided, use AskUserQuestion with **multiSelect: true**
19
+ to let the user pick one or more topics at once:
19
20
  ```
20
- header: "Topic"
21
- question: "What topic should I research?"
22
- options: [suggest topics derived from FRAMING.md gaps and risks, if identifiable]
21
+ header: "Topics"
22
+ question: "Which topics do you want to research?"
23
+ multiSelect: true
24
+ options: [derive 2-4 topics from FRAMING.md gaps, risks, and unknowns]
23
25
  ```
26
+ The user can also type a custom topic via the "Other" option.
27
+ Run one research agent per selected topic (in parallel when possible).
24
28
 
25
29
  ## Required reading
26
30
 
@@ -34,7 +38,11 @@ Load before proceeding:
34
38
 
35
39
  ## Execution
36
40
 
37
- Spawn the `domain-researcher` agent for the actual research work:
41
+ For **each** selected topic, spawn a `domain-researcher` agent. When there are multiple
42
+ topics, launch all agents **in parallel** (one Agent tool call per topic in the same message).
43
+
44
+ Pre-assign dossier numbers sequentially before spawning (e.g., if the next number is 003
45
+ and the user picked 3 topics, assign 003, 004, 005) to avoid race conditions.
38
46
 
39
47
  ```
40
48
  Agent(
@@ -55,7 +63,7 @@ Agent(
55
63
  Project context: [summarize FRAMING.md key points — mission, scope, constraints]
56
64
 
57
65
  Produce a research dossier at: .compass/RESEARCH/dossier-{NNN}-{slug}.md
58
- where {NNN} is the next dossier number (check existing files in .compass/RESEARCH/).
66
+ (your assigned number is {NNN} do not change it).
59
67
 
60
68
  Use the template at ~/.claude/compass/templates/RESEARCH-DOSSIER.md for structure.
61
69
 
@@ -65,17 +73,11 @@ Agent(
65
73
 
66
74
  ## Post-execution
67
75
 
68
- 1. Read the produced dossier and present a summary to the user.
69
- 2. Run `compass-tools.sh session update` to record progress.
70
- 3. Ask the user:
71
- ```
72
- header: "Research"
73
- question: "What next?"
74
- options: [
75
- "Research another topic",
76
- "Review/revise this dossier",
77
- "Move to architecture — /compass:architect",
78
- "Check status — /compass:status"
79
- ]
80
- ```
76
+ 1. Read all produced dossiers and present a summary of each to the user.
77
+ 2. Run `~/.claude/compass/scripts/compass-tools.sh session update` to record progress.
78
+ 3. Ask the user what to do next (as a regular text message, not AskUserQuestion):
79
+ - Research another topic
80
+ - Review/revise a dossier
81
+ - Move to architecture — `/compass:architect`
82
+ - Check status — `/compass:status`
81
83
  4. Suggest `/clear` before starting a new phase.
@@ -11,12 +11,12 @@ invariants, boundary conditions.
11
11
 
12
12
  ## Pre-flight
13
13
 
14
- 1. Run `compass-tools.sh preflight spec` to verify:
14
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh preflight spec` to verify:
15
15
  - `.compass/FRAMING.md` exists
16
16
  - `.compass/ARCHITECTURE.md` exists
17
17
  - At least one ADR exists in the configured ADR directory
18
18
  - If prerequisites missing, inform the user which phases to complete first.
19
- 2. Read `compass-tools.sh config get paths.spec` to resolve spec output path.
19
+ 2. Read `~/.claude/compass/scripts/compass-tools.sh config get paths.spec` to resolve spec output path.
20
20
  3. Check if spec file already exists.
21
21
  - If yes: inform the user. Ask if they want to revise, extend, or start fresh.
22
22
 
@@ -107,7 +107,7 @@ spec is reviewed at the end before finalizing.
107
107
 
108
108
  ## Closing
109
109
 
110
- 1. Run `compass-tools.sh session update` to record progress.
110
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh session update` to record progress.
111
111
  2. Show summary: number of modules specified, total behaviors, total acceptance
112
112
  criteria.
113
113
  3. Suggest: "Specification complete. Next step: `/compass:build-units` to
@@ -10,7 +10,7 @@ every artifact, and (in build phase) every work unit.
10
10
 
11
11
  ## Execution
12
12
 
13
- 1. Run `compass-tools.sh status --json` for structured state data.
13
+ 1. Run `~/.claude/compass/scripts/compass-tools.sh status --json` for structured state data.
14
14
  2. Read `.compass/config.yaml` for configuration context.
15
15
  3. Scan all `.compass/` artifacts.
16
16
 
@@ -76,4 +76,4 @@ Stopped at: {from SESSION.md}
76
76
  - This is a read-only panorama. No artifacts produced, no state modified.
77
77
  - Heavier than `/compass:next` — reads more files for the complete picture.
78
78
  - Useful for orientation after a long break or context clear.
79
- - Run `compass-tools.sh session update` is NOT called — this is read-only.
79
+ - Run `~/.claude/compass/scripts/compass-tools.sh session update` is NOT called — this is read-only.