一键导入
ghm-id-register
// Validates and registers new SoT IDs with cross-reference integrity. Triggers when creating BR-XXX, UJ-XXX, API-XXX, or CFD-XXX entries. Outputs formatted SoT entry with validated cross-references.
// Validates and registers new SoT IDs with cross-reference integrity. Triggers when creating BR-XXX, UJ-XXX, API-XXX, or CFD-XXX entries. Outputs formatted SoT entry with validated cross-references.
Validates gate criteria before PRD lifecycle advancement by delegating to the readiness scoring pipeline (scripts/readiness.py). Returns a graduated PASS / WARN / BLOCK verdict with top blockers and their causal chain. Triggers before advancing from v0.X to v0.Y or explicit `/ghm-gate-check`.
Transform v0.6 specifications into context-window-sized work packages (EPICs) during PRD v0.7 Build Execution. Triggers on requests to create epics, scope work, break down implementation, or when user asks "create epics", "scope work", "break down work", "context window sizing", "what to build first?", "implementation planning", "epic breakdown". Consumes API-, DBT-, FEA-, ARC-. Outputs EPIC- entries with objectives, ID references, dependencies, and context windows. Feeds v0.7 Test Planning.
Execute implementation within EPICs following test-first development, continuous SoT updates, and code traceability during PRD v0.7 Build Execution. Triggers on requests to start building, implement an epic, begin coding, or when user asks "start building", "implement epic", "coding", "development", "build execution", "implementation", "write code". Consumes EPIC- (context), TEST- (acceptance criteria). Updates existing IDs and creates code. Outputs working code with @implements traceability tags.
Define test cases BEFORE implementation, ensuring every API, business rule, and user journey has verifiable acceptance criteria during PRD v0.7 Build Execution. Triggers on requests to define tests, plan test coverage, create test cases, or when user asks "define tests", "test planning", "what to test?", "test cases", "test coverage", "TEST-", "test-first". Consumes EPIC- (scope), API-, DBT-, BR-, UJ-. Outputs TEST- entries with Given-When-Then format. Feeds v0.7 Implementation Loop.
Extracts durable insights from temp/ files to SoT during EPIC Phase E. Triggers at EPIC completion or explicit `/ghm-harvest` invocation. Outputs new SoT entries and archive manifest.
Creates new Source of Truth (SoT) files when existing templates don't fit your needs. Triggers on requests to create a new SoT file, add a new artifact type, or when user says "I need to track [X] but there's no SoT for it", "create SoT", "new source of truth". Outputs a properly structured SoT.*.md file with ID prefix, frontmatter, and update protocol.
| name | ghm-id-register |
| description | Validates and registers new SoT IDs with cross-reference integrity. Triggers when creating BR-XXX, UJ-XXX, API-XXX, or CFD-XXX entries. Outputs formatted SoT entry with validated cross-references. |
| context | fork |
| allowed-tools | ["Read","Write","Edit","Grep"] |
Validate and register new Source of Truth IDs with cross-reference integrity checks.
[PREFIX]-[3-digit] pattern| Element | Definition | Evidence |
|---|---|---|
| ID | Unique identifier | BR-101, UJ-045, API-012 |
| Title | Short descriptive name | Clear, specific |
| Cross-References | Links to related IDs | All referenced IDs exist |
| Status | Current state | Draft / Active / Deprecated |
| Prefix | Domain | File |
|---|---|---|
BR- | Business Rules | SoT/SoT.BUSINESS_RULES.md |
UJ- | User Journeys | SoT/SoT.USER_JOURNEYS.md |
API- | API Contracts | SoT/SoT.API_CONTRACTS.md |
CFD- | Customer Feedback | SoT/SoT.customer_feedback.md |
Check ID follows the pattern:
[PREFIX]-[XXX]
Where:
[A-Z]+-[0-9]{3}For each ID referenced in the new entry:
BR-XXX references exist in BUSINESS_RULESUJ-XXX references exist in USER_JOURNEYSAPI-XXX references exist in API_CONTRACTSCFD-XXX references exist in CUSTOMER_FEEDBACKreferences/cross-reference-patterns.md)Before registering, assign a confidence score (1-5) based on evidence strength:
| Score | Evidence Level | Examples |
|---|---|---|
| 1/5 | Assumption / PM decision | "We think users want X" |
| 2/5 | Secondary research | Competitive analysis, market report |
| 3/5 | Direct feedback | User interviews (3-5 conversations) |
| 4/5 | Validated behavior | Beta testing, small-scale usage |
| 5/5 | Production evidence | Real usage data at scale |
Question to ask: What's the highest evidence supporting this entry right now? What would move it to the next confidence level?
Example confidence annotations:
confidence: 2/5, source: competitive-analysisconfidence: 3/5, source: 5-user-interviews-jan-2026confidence: 4/5, source: beta-cohort-validationSee .claude/skills/PRINCIPLES.md for detailed confidence model by SoT type.
Add formatted entry to SoT file:
### [ID]: [Title]
**Status**: Draft
**Created**: YYYY-MM-DD
**Confidence**: [1-5]/5 (source: [evidence source])
**Next Confidence Target**: [What would move this to next level]
**Cross-References**: [List of related IDs]
[Description]
**Acceptance Criteria**:
- [ ] Criterion 1
- [ ] Criterion 2
Example entry with confidence:
### CFD-042: Users want dark mode
**Status**: Active
**Created**: 2026-02-01
**Confidence**: 3/5 (source: 5-user-interviews-jan-2026)
**Next Confidence Target**: 4/5 (would require beta cohort validation)
**Cross-References**: FEA-008 (dark mode feature)
During interviews, 4 of 5 users mentioned desire for dark mode. Competitors (Notion, Linear, Figma) all have it.
**Acceptance Criteria**:
- [ ] Feature FEA-008 delivered to beta cohort
- [ ] Track usage: % of beta users enabling dark mode
| Pattern | Example | Fix |
|---|---|---|
| Duplicate ID | Creating BR-101 when it exists | → Check uniqueness first |
| Orphan reference | References UJ-999 that doesn't exist | → Verify all cross-refs |
| Wrong prefix | Using BR- for an API contract | → Match prefix to domain |
| Missing zero-pad | BR-5 instead of BR-005 | → Always use 3 digits |
| Inflated confidence | Assigning 4/5 to a PM assumption | → Be honest about evidence level |
| No confidence source | "confidence: 3/5" with no source | → Always record source (CFD-001, user-interview-jan, etc.) |
| Missing confidence target | Confidence assigned but no forward path | → Ask "what would move this to 4/5?" |
DO:
DON'T:
After ID registration: