create-claude-context 1.0.0 → 1.2.1
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/LICENSE +21 -21
- package/README.md +169 -146
- package/bin/create-claude-context.js +75 -61
- package/lib/ai-orchestrator.js +423 -0
- package/lib/call-tracer.js +444 -0
- package/lib/detector.js +456 -373
- package/lib/environment-detector.js +239 -0
- package/lib/index.js +271 -170
- package/lib/installer.js +371 -362
- package/lib/placeholder.js +269 -208
- package/lib/prompts.js +287 -287
- package/lib/spinner.js +60 -60
- package/lib/static-analyzer.js +729 -0
- package/lib/template-populator.js +835 -0
- package/lib/validate.js +147 -147
- package/package.json +59 -59
- package/templates/CLAUDE.md.template +235 -235
- package/templates/base/README.md +257 -257
- package/templates/base/RPI_WORKFLOW_PLAN.md +320 -320
- package/templates/base/agents/api-developer.md +76 -76
- package/templates/base/agents/context-engineer.md +525 -525
- package/templates/base/agents/core-architect.md +76 -76
- package/templates/base/agents/database-ops.md +76 -76
- package/templates/base/agents/deployment-ops.md +76 -76
- package/templates/base/agents/integration-hub.md +76 -76
- package/templates/base/analytics/README.md +114 -114
- package/templates/base/automation/config.json +58 -0
- package/templates/base/automation/generators/code-mapper.js +308 -0
- package/templates/base/automation/generators/index-builder.js +321 -0
- package/templates/base/automation/hooks/post-commit.sh +83 -0
- package/templates/base/automation/hooks/pre-commit.sh +103 -0
- package/templates/base/ci-templates/README.md +108 -108
- package/templates/base/ci-templates/github-actions/context-check.yml +144 -144
- package/templates/base/ci-templates/github-actions/validate-docs.yml +105 -105
- package/templates/base/commands/analytics.md +238 -238
- package/templates/base/commands/auto-sync.md +172 -0
- package/templates/base/commands/collab.md +194 -194
- package/templates/base/commands/help.md +450 -450
- package/templates/base/commands/rpi-implement.md +115 -115
- package/templates/base/commands/rpi-plan.md +93 -93
- package/templates/base/commands/rpi-research.md +88 -88
- package/templates/base/commands/session-resume.md +144 -0
- package/templates/base/commands/session-save.md +112 -0
- package/templates/base/commands/validate-all.md +77 -77
- package/templates/base/commands/verify-docs-current.md +86 -86
- package/templates/base/config/base.json +57 -57
- package/templates/base/config/environments/development.json +13 -13
- package/templates/base/config/environments/production.json +17 -17
- package/templates/base/config/environments/staging.json +13 -13
- package/templates/base/config/local.json.example +21 -21
- package/templates/base/context/.meta/generated-at.json +18 -0
- package/templates/base/context/ARCHITECTURE_SNAPSHOT.md +156 -156
- package/templates/base/context/CODE_TO_WORKFLOW_MAP.md +94 -94
- package/templates/base/context/FILE_OWNERSHIP.md +57 -0
- package/templates/base/context/INTEGRATION_POINTS.md +92 -0
- package/templates/base/context/KNOWN_GOTCHAS.md +195 -195
- package/templates/base/context/TESTING_MAP.md +95 -0
- package/templates/base/context/WORKFLOW_INDEX.md +129 -129
- package/templates/base/context/workflows/WORKFLOW_TEMPLATE.md +294 -294
- package/templates/base/indexes/agents/CAPABILITY_MATRIX.md +255 -255
- package/templates/base/indexes/agents/CATEGORY_INDEX.md +44 -44
- package/templates/base/indexes/code/CATEGORY_INDEX.md +38 -38
- package/templates/base/indexes/routing/CATEGORY_INDEX.md +39 -39
- package/templates/base/indexes/search/CATEGORY_INDEX.md +39 -39
- package/templates/base/indexes/workflows/CATEGORY_INDEX.md +38 -38
- package/templates/base/knowledge/README.md +98 -98
- package/templates/base/knowledge/sessions/README.md +88 -88
- package/templates/base/knowledge/sessions/TEMPLATE.md +150 -150
- package/templates/base/knowledge/shared/decisions/0001-adopt-context-engineering.md +144 -144
- package/templates/base/knowledge/shared/decisions/README.md +49 -49
- package/templates/base/knowledge/shared/decisions/TEMPLATE.md +123 -123
- package/templates/base/knowledge/shared/patterns/README.md +62 -62
- package/templates/base/knowledge/shared/patterns/TEMPLATE.md +120 -120
- package/templates/base/plans/PLAN_TEMPLATE.md +250 -250
- package/templates/base/research/RESEARCH_TEMPLATE.md +153 -153
- package/templates/base/schemas/agent.schema.json +141 -141
- package/templates/base/schemas/anchors.schema.json +54 -0
- package/templates/base/schemas/automation.schema.json +93 -0
- package/templates/base/schemas/command.schema.json +134 -134
- package/templates/base/schemas/hashes.schema.json +40 -0
- package/templates/base/schemas/manifest.schema.json +117 -117
- package/templates/base/schemas/plan.schema.json +136 -136
- package/templates/base/schemas/research.schema.json +115 -115
- package/templates/base/schemas/roles.schema.json +34 -0
- package/templates/base/schemas/session.schema.json +77 -0
- package/templates/base/schemas/settings.schema.json +244 -244
- package/templates/base/schemas/staleness.schema.json +53 -0
- package/templates/base/schemas/team-config.schema.json +42 -0
- package/templates/base/schemas/workflow.schema.json +126 -126
- package/templates/base/session/checkpoints/.gitkeep +2 -0
- package/templates/base/session/current/state.json +20 -0
- package/templates/base/session/history/.gitkeep +2 -0
- package/templates/base/settings.json +3 -57
- package/templates/base/standards/COMPATIBILITY.md +219 -219
- package/templates/base/standards/EXTENSION_GUIDELINES.md +280 -280
- package/templates/base/standards/QUALITY_CHECKLIST.md +211 -211
- package/templates/base/standards/README.md +66 -66
- package/templates/base/sync/anchors.json +6 -0
- package/templates/base/sync/hashes.json +6 -0
- package/templates/base/sync/staleness.json +10 -0
- package/templates/base/team/README.md +168 -168
- package/templates/base/team/config.json +79 -79
- package/templates/base/team/roles.json +145 -145
- package/templates/base/tools/bin/claude-context.js +151 -151
- package/templates/base/tools/lib/anchor-resolver.js +276 -0
- package/templates/base/tools/lib/config-loader.js +363 -363
- package/templates/base/tools/lib/detector.js +350 -350
- package/templates/base/tools/lib/diagnose.js +206 -206
- package/templates/base/tools/lib/drift-detector.js +373 -0
- package/templates/base/tools/lib/errors.js +199 -199
- package/templates/base/tools/lib/index.js +36 -24
- package/templates/base/tools/lib/init.js +192 -192
- package/templates/base/tools/lib/logger.js +230 -230
- package/templates/base/tools/lib/placeholder.js +201 -201
- package/templates/base/tools/lib/session-manager.js +354 -0
- package/templates/base/tools/lib/validate.js +521 -521
- package/templates/base/tools/package.json +49 -49
|
@@ -1,150 +1,150 @@
|
|
|
1
|
-
# Session Handoff: {{DATE}} {{TIME}}
|
|
2
|
-
|
|
3
|
-
## Metadata
|
|
4
|
-
|
|
5
|
-
| Field | Value |
|
|
6
|
-
|-------|-------|
|
|
7
|
-
| **Session ID** | {{SESSION_ID}} |
|
|
8
|
-
| **Date** | {{DATE}} |
|
|
9
|
-
| **Duration** | {{DURATION}} |
|
|
10
|
-
| **Member** | {{MEMBER_NAME}} |
|
|
11
|
-
| **Next Owner** | {{NEXT_OWNER}} (or "Any") |
|
|
12
|
-
|
|
13
|
-
## Session Summary
|
|
14
|
-
|
|
15
|
-
Brief overview of what was accomplished in this session.
|
|
16
|
-
|
|
17
|
-
## Work Completed
|
|
18
|
-
|
|
19
|
-
### Tasks Finished
|
|
20
|
-
|
|
21
|
-
- [ ] Task 1 - Brief description
|
|
22
|
-
- Files modified: `path/to/file.ext`
|
|
23
|
-
- Commit: `abc1234`
|
|
24
|
-
|
|
25
|
-
- [ ] Task 2 - Brief description
|
|
26
|
-
- Files modified: `path/to/file.ext`
|
|
27
|
-
- Commit: `def5678`
|
|
28
|
-
|
|
29
|
-
### Code Changes
|
|
30
|
-
|
|
31
|
-
| File | Change Type | Description |
|
|
32
|
-
|------|-------------|-------------|
|
|
33
|
-
| `path/to/file.ext` | Modified | What changed |
|
|
34
|
-
| `path/to/new.ext` | Created | Why created |
|
|
35
|
-
| `path/to/old.ext` | Deleted | Why deleted |
|
|
36
|
-
|
|
37
|
-
### Tests
|
|
38
|
-
|
|
39
|
-
- Tests added: X
|
|
40
|
-
- Tests modified: X
|
|
41
|
-
- Test status: Passing / Failing (details if failing)
|
|
42
|
-
|
|
43
|
-
### Documentation Updated
|
|
44
|
-
|
|
45
|
-
- [ ] `path/to/doc.md` - What was updated
|
|
46
|
-
- [ ] Workflow files updated per CODE_TO_WORKFLOW_MAP.md
|
|
47
|
-
|
|
48
|
-
## Work In Progress
|
|
49
|
-
|
|
50
|
-
### Incomplete Tasks
|
|
51
|
-
|
|
52
|
-
1. **Task Name**
|
|
53
|
-
- Status: XX% complete
|
|
54
|
-
- Current state: Description
|
|
55
|
-
- Files being modified: `path/to/file.ext`
|
|
56
|
-
- Next steps: What needs to be done
|
|
57
|
-
|
|
58
|
-
2. **Task Name**
|
|
59
|
-
- Status: XX% complete
|
|
60
|
-
- Current state: Description
|
|
61
|
-
- Blockers: What's blocking progress
|
|
62
|
-
|
|
63
|
-
### Uncommitted Changes
|
|
64
|
-
|
|
65
|
-
```bash
|
|
66
|
-
# Output of git status
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
### Temporary Files / Notes
|
|
70
|
-
|
|
71
|
-
- `.claude/temp/notes.md` - Working notes
|
|
72
|
-
- Local branch: `feature/xyz`
|
|
73
|
-
|
|
74
|
-
## Blockers and Issues
|
|
75
|
-
|
|
76
|
-
### Active Blockers
|
|
77
|
-
|
|
78
|
-
1. **Blocker Title**
|
|
79
|
-
- Description: What's blocking
|
|
80
|
-
- Impact: What can't proceed
|
|
81
|
-
- Needed: What would unblock
|
|
82
|
-
|
|
83
|
-
### Issues Encountered
|
|
84
|
-
|
|
85
|
-
1. **Issue Title**
|
|
86
|
-
- Description: What happened
|
|
87
|
-
- Attempted solutions: What was tried
|
|
88
|
-
- Current status: Resolved / Workaround / Open
|
|
89
|
-
|
|
90
|
-
### Open Questions
|
|
91
|
-
|
|
92
|
-
1. Question that needs team input?
|
|
93
|
-
2. Architectural decision needed?
|
|
94
|
-
|
|
95
|
-
## Context for Next Session
|
|
96
|
-
|
|
97
|
-
### Key Files to Review
|
|
98
|
-
|
|
99
|
-
- `path/to/important.ext` - Why it's important
|
|
100
|
-
- `path/to/related.ext` - How it relates
|
|
101
|
-
|
|
102
|
-
### Relevant Documentation
|
|
103
|
-
|
|
104
|
-
- [Workflow document](../../context/workflows/domain.md)
|
|
105
|
-
- [Architecture section](../../context/ARCHITECTURE_SNAPSHOT.md#section)
|
|
106
|
-
|
|
107
|
-
### Important Context
|
|
108
|
-
|
|
109
|
-
Information the next person needs to know that isn't in the files:
|
|
110
|
-
- Business context
|
|
111
|
-
- Stakeholder requirements
|
|
112
|
-
- Technical constraints discovered
|
|
113
|
-
|
|
114
|
-
## Recommended Next Steps
|
|
115
|
-
|
|
116
|
-
### Immediate (Next Session)
|
|
117
|
-
|
|
118
|
-
1. [ ] First priority task
|
|
119
|
-
2. [ ] Second priority task
|
|
120
|
-
3. [ ] Third priority task
|
|
121
|
-
|
|
122
|
-
### Short-term (This Week)
|
|
123
|
-
|
|
124
|
-
1. [ ] Task for this week
|
|
125
|
-
2. [ ] Another task
|
|
126
|
-
|
|
127
|
-
### Notes for Specific Scenarios
|
|
128
|
-
|
|
129
|
-
**If continuing the same work:**
|
|
130
|
-
- Start with X
|
|
131
|
-
- Be aware of Y
|
|
132
|
-
|
|
133
|
-
**If blocked by Z:**
|
|
134
|
-
- Alternative approach: Description
|
|
135
|
-
- Who to contact: Person/team
|
|
136
|
-
|
|
137
|
-
## Session Metrics
|
|
138
|
-
|
|
139
|
-
| Metric | Value |
|
|
140
|
-
|--------|-------|
|
|
141
|
-
| Files Modified | X |
|
|
142
|
-
| Lines Added | X |
|
|
143
|
-
| Lines Removed | X |
|
|
144
|
-
| Tests Added | X |
|
|
145
|
-
| Commits Made | X |
|
|
146
|
-
| Context Used | ~Xk tokens |
|
|
147
|
-
|
|
148
|
-
---
|
|
149
|
-
|
|
150
|
-
*Generated by /collab handoff on {{TIMESTAMP}}*
|
|
1
|
+
# Session Handoff: {{DATE}} {{TIME}}
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **Session ID** | {{SESSION_ID}} |
|
|
8
|
+
| **Date** | {{DATE}} |
|
|
9
|
+
| **Duration** | {{DURATION}} |
|
|
10
|
+
| **Member** | {{MEMBER_NAME}} |
|
|
11
|
+
| **Next Owner** | {{NEXT_OWNER}} (or "Any") |
|
|
12
|
+
|
|
13
|
+
## Session Summary
|
|
14
|
+
|
|
15
|
+
Brief overview of what was accomplished in this session.
|
|
16
|
+
|
|
17
|
+
## Work Completed
|
|
18
|
+
|
|
19
|
+
### Tasks Finished
|
|
20
|
+
|
|
21
|
+
- [ ] Task 1 - Brief description
|
|
22
|
+
- Files modified: `path/to/file.ext`
|
|
23
|
+
- Commit: `abc1234`
|
|
24
|
+
|
|
25
|
+
- [ ] Task 2 - Brief description
|
|
26
|
+
- Files modified: `path/to/file.ext`
|
|
27
|
+
- Commit: `def5678`
|
|
28
|
+
|
|
29
|
+
### Code Changes
|
|
30
|
+
|
|
31
|
+
| File | Change Type | Description |
|
|
32
|
+
|------|-------------|-------------|
|
|
33
|
+
| `path/to/file.ext` | Modified | What changed |
|
|
34
|
+
| `path/to/new.ext` | Created | Why created |
|
|
35
|
+
| `path/to/old.ext` | Deleted | Why deleted |
|
|
36
|
+
|
|
37
|
+
### Tests
|
|
38
|
+
|
|
39
|
+
- Tests added: X
|
|
40
|
+
- Tests modified: X
|
|
41
|
+
- Test status: Passing / Failing (details if failing)
|
|
42
|
+
|
|
43
|
+
### Documentation Updated
|
|
44
|
+
|
|
45
|
+
- [ ] `path/to/doc.md` - What was updated
|
|
46
|
+
- [ ] Workflow files updated per CODE_TO_WORKFLOW_MAP.md
|
|
47
|
+
|
|
48
|
+
## Work In Progress
|
|
49
|
+
|
|
50
|
+
### Incomplete Tasks
|
|
51
|
+
|
|
52
|
+
1. **Task Name**
|
|
53
|
+
- Status: XX% complete
|
|
54
|
+
- Current state: Description
|
|
55
|
+
- Files being modified: `path/to/file.ext`
|
|
56
|
+
- Next steps: What needs to be done
|
|
57
|
+
|
|
58
|
+
2. **Task Name**
|
|
59
|
+
- Status: XX% complete
|
|
60
|
+
- Current state: Description
|
|
61
|
+
- Blockers: What's blocking progress
|
|
62
|
+
|
|
63
|
+
### Uncommitted Changes
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
# Output of git status
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### Temporary Files / Notes
|
|
70
|
+
|
|
71
|
+
- `.claude/temp/notes.md` - Working notes
|
|
72
|
+
- Local branch: `feature/xyz`
|
|
73
|
+
|
|
74
|
+
## Blockers and Issues
|
|
75
|
+
|
|
76
|
+
### Active Blockers
|
|
77
|
+
|
|
78
|
+
1. **Blocker Title**
|
|
79
|
+
- Description: What's blocking
|
|
80
|
+
- Impact: What can't proceed
|
|
81
|
+
- Needed: What would unblock
|
|
82
|
+
|
|
83
|
+
### Issues Encountered
|
|
84
|
+
|
|
85
|
+
1. **Issue Title**
|
|
86
|
+
- Description: What happened
|
|
87
|
+
- Attempted solutions: What was tried
|
|
88
|
+
- Current status: Resolved / Workaround / Open
|
|
89
|
+
|
|
90
|
+
### Open Questions
|
|
91
|
+
|
|
92
|
+
1. Question that needs team input?
|
|
93
|
+
2. Architectural decision needed?
|
|
94
|
+
|
|
95
|
+
## Context for Next Session
|
|
96
|
+
|
|
97
|
+
### Key Files to Review
|
|
98
|
+
|
|
99
|
+
- `path/to/important.ext` - Why it's important
|
|
100
|
+
- `path/to/related.ext` - How it relates
|
|
101
|
+
|
|
102
|
+
### Relevant Documentation
|
|
103
|
+
|
|
104
|
+
- [Workflow document](../../context/workflows/domain.md)
|
|
105
|
+
- [Architecture section](../../context/ARCHITECTURE_SNAPSHOT.md#section)
|
|
106
|
+
|
|
107
|
+
### Important Context
|
|
108
|
+
|
|
109
|
+
Information the next person needs to know that isn't in the files:
|
|
110
|
+
- Business context
|
|
111
|
+
- Stakeholder requirements
|
|
112
|
+
- Technical constraints discovered
|
|
113
|
+
|
|
114
|
+
## Recommended Next Steps
|
|
115
|
+
|
|
116
|
+
### Immediate (Next Session)
|
|
117
|
+
|
|
118
|
+
1. [ ] First priority task
|
|
119
|
+
2. [ ] Second priority task
|
|
120
|
+
3. [ ] Third priority task
|
|
121
|
+
|
|
122
|
+
### Short-term (This Week)
|
|
123
|
+
|
|
124
|
+
1. [ ] Task for this week
|
|
125
|
+
2. [ ] Another task
|
|
126
|
+
|
|
127
|
+
### Notes for Specific Scenarios
|
|
128
|
+
|
|
129
|
+
**If continuing the same work:**
|
|
130
|
+
- Start with X
|
|
131
|
+
- Be aware of Y
|
|
132
|
+
|
|
133
|
+
**If blocked by Z:**
|
|
134
|
+
- Alternative approach: Description
|
|
135
|
+
- Who to contact: Person/team
|
|
136
|
+
|
|
137
|
+
## Session Metrics
|
|
138
|
+
|
|
139
|
+
| Metric | Value |
|
|
140
|
+
|--------|-------|
|
|
141
|
+
| Files Modified | X |
|
|
142
|
+
| Lines Added | X |
|
|
143
|
+
| Lines Removed | X |
|
|
144
|
+
| Tests Added | X |
|
|
145
|
+
| Commits Made | X |
|
|
146
|
+
| Context Used | ~Xk tokens |
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
*Generated by /collab handoff on {{TIMESTAMP}}*
|
|
@@ -1,144 +1,144 @@
|
|
|
1
|
-
# ADR-0001: Adopt Context Engineering Template
|
|
2
|
-
|
|
3
|
-
## Metadata
|
|
4
|
-
|
|
5
|
-
| Field | Value |
|
|
6
|
-
|-------|-------|
|
|
7
|
-
| **Status** | accepted |
|
|
8
|
-
| **Created** | {{DATE}} |
|
|
9
|
-
| **Updated** | {{DATE}} |
|
|
10
|
-
| **Author** | {{AUTHOR_NAME}} |
|
|
11
|
-
| **Reviewers** | Team |
|
|
12
|
-
| **Supersedes** | N/A |
|
|
13
|
-
| **Superseded by** | N/A |
|
|
14
|
-
|
|
15
|
-
## Context
|
|
16
|
-
|
|
17
|
-
When working with Claude Code on complex codebases, we face several challenges:
|
|
18
|
-
|
|
19
|
-
### Background
|
|
20
|
-
|
|
21
|
-
- Claude Code has a 200k token context window
|
|
22
|
-
- Loading entire codebases exceeds this limit
|
|
23
|
-
- Ad-hoc exploration wastes tokens and time
|
|
24
|
-
- Knowledge is lost between sessions
|
|
25
|
-
- Team members lack shared context
|
|
26
|
-
|
|
27
|
-
### Current State
|
|
28
|
-
|
|
29
|
-
Without structured context management:
|
|
30
|
-
- Each session starts from scratch
|
|
31
|
-
- Developers manually guide Claude to relevant code
|
|
32
|
-
- Documentation and code drift apart
|
|
33
|
-
- Tribal knowledge remains undocumented
|
|
34
|
-
|
|
35
|
-
## Decision
|
|
36
|
-
|
|
37
|
-
Adopt the Context Engineering Template for Claude Code, implementing:
|
|
38
|
-
|
|
39
|
-
1. **3-Level Chain-of-Index Architecture** - Progressive detail loading
|
|
40
|
-
2. **RPI Workflow** - Research-Plan-Implement methodology
|
|
41
|
-
3. **Self-Maintaining Documentation** - Code-to-workflow mapping
|
|
42
|
-
4. **Specialized Agents** - Domain-specific assistants
|
|
43
|
-
|
|
44
|
-
### Key Points
|
|
45
|
-
|
|
46
|
-
1. Keep context budget under 40% (80k tokens) for working room
|
|
47
|
-
2. Use indexes to navigate, not to hold all information
|
|
48
|
-
3. Update documentation when code changes
|
|
49
|
-
4. Use RPI workflow for all significant features
|
|
50
|
-
|
|
51
|
-
## Alternatives Considered
|
|
52
|
-
|
|
53
|
-
### Alternative 1: Flat Documentation
|
|
54
|
-
|
|
55
|
-
**Description:** Single large CLAUDE.md with all information
|
|
56
|
-
|
|
57
|
-
**Pros:**
|
|
58
|
-
- Simple to maintain
|
|
59
|
-
- Everything in one place
|
|
60
|
-
|
|
61
|
-
**Cons:**
|
|
62
|
-
- Quickly exceeds context budget
|
|
63
|
-
- No progressive loading
|
|
64
|
-
- Hard to navigate
|
|
65
|
-
|
|
66
|
-
**Why not chosen:** Doesn't scale with codebase size
|
|
67
|
-
|
|
68
|
-
### Alternative 2: No Documentation Structure
|
|
69
|
-
|
|
70
|
-
**Description:** Rely on Claude's code exploration
|
|
71
|
-
|
|
72
|
-
**Pros:**
|
|
73
|
-
- Zero maintenance overhead
|
|
74
|
-
- Always up-to-date with code
|
|
75
|
-
|
|
76
|
-
**Cons:**
|
|
77
|
-
- Wastes context on exploration
|
|
78
|
-
- No curated knowledge
|
|
79
|
-
- Inconsistent results
|
|
80
|
-
|
|
81
|
-
**Why not chosen:** Inefficient use of context window
|
|
82
|
-
|
|
83
|
-
## Consequences
|
|
84
|
-
|
|
85
|
-
### Positive
|
|
86
|
-
|
|
87
|
-
- Efficient context utilization
|
|
88
|
-
- Consistent navigation patterns
|
|
89
|
-
- Knowledge persists across sessions
|
|
90
|
-
- Team shares common understanding
|
|
91
|
-
|
|
92
|
-
### Negative
|
|
93
|
-
|
|
94
|
-
- Initial setup overhead
|
|
95
|
-
- Requires maintenance discipline
|
|
96
|
-
- Learning curve for team
|
|
97
|
-
|
|
98
|
-
### Risks
|
|
99
|
-
|
|
100
|
-
- Documentation drift if not maintained
|
|
101
|
-
- Mitigation: Use CODE_TO_WORKFLOW_MAP.md and /verify-docs-current
|
|
102
|
-
- Over-documentation consuming budget
|
|
103
|
-
- Mitigation: Regular audits, keep to 40% target
|
|
104
|
-
|
|
105
|
-
## Implementation
|
|
106
|
-
|
|
107
|
-
### Steps
|
|
108
|
-
|
|
109
|
-
1. Copy template to project root
|
|
110
|
-
2. Run initialization (`npx claude-context init`)
|
|
111
|
-
3. Customize placeholders for project
|
|
112
|
-
4. Train team on RPI workflow
|
|
113
|
-
5. Establish documentation update habits
|
|
114
|
-
|
|
115
|
-
### Affected Components
|
|
116
|
-
|
|
117
|
-
- Development workflow: Add documentation updates
|
|
118
|
-
- Code review: Include documentation check
|
|
119
|
-
- CI/CD: Add validation workflow
|
|
120
|
-
|
|
121
|
-
### Migration Plan
|
|
122
|
-
|
|
123
|
-
Gradual adoption - start with core workflows, expand as team learns.
|
|
124
|
-
|
|
125
|
-
## Verification
|
|
126
|
-
|
|
127
|
-
- [ ] Context budget stays under 40%
|
|
128
|
-
- [ ] Team can navigate without manual guidance
|
|
129
|
-
- [ ] Documentation accuracy above 80%
|
|
130
|
-
- [ ] Session handoffs are effective
|
|
131
|
-
|
|
132
|
-
## References
|
|
133
|
-
|
|
134
|
-
- [Context Engineering Template README](../../../README.md)
|
|
135
|
-
- [RPI Workflow Plan](../../../RPI_WORKFLOW_PLAN.md)
|
|
136
|
-
- [Chain-of-Index Architecture](../../../indexes/README.md)
|
|
137
|
-
|
|
138
|
-
---
|
|
139
|
-
|
|
140
|
-
## Revision History
|
|
141
|
-
|
|
142
|
-
| Date | Author | Changes |
|
|
143
|
-
|------|--------|---------|
|
|
144
|
-
| {{DATE}} | {{AUTHOR_NAME}} | Initial adoption decision |
|
|
1
|
+
# ADR-0001: Adopt Context Engineering Template
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **Status** | accepted |
|
|
8
|
+
| **Created** | {{DATE}} |
|
|
9
|
+
| **Updated** | {{DATE}} |
|
|
10
|
+
| **Author** | {{AUTHOR_NAME}} |
|
|
11
|
+
| **Reviewers** | Team |
|
|
12
|
+
| **Supersedes** | N/A |
|
|
13
|
+
| **Superseded by** | N/A |
|
|
14
|
+
|
|
15
|
+
## Context
|
|
16
|
+
|
|
17
|
+
When working with Claude Code on complex codebases, we face several challenges:
|
|
18
|
+
|
|
19
|
+
### Background
|
|
20
|
+
|
|
21
|
+
- Claude Code has a 200k token context window
|
|
22
|
+
- Loading entire codebases exceeds this limit
|
|
23
|
+
- Ad-hoc exploration wastes tokens and time
|
|
24
|
+
- Knowledge is lost between sessions
|
|
25
|
+
- Team members lack shared context
|
|
26
|
+
|
|
27
|
+
### Current State
|
|
28
|
+
|
|
29
|
+
Without structured context management:
|
|
30
|
+
- Each session starts from scratch
|
|
31
|
+
- Developers manually guide Claude to relevant code
|
|
32
|
+
- Documentation and code drift apart
|
|
33
|
+
- Tribal knowledge remains undocumented
|
|
34
|
+
|
|
35
|
+
## Decision
|
|
36
|
+
|
|
37
|
+
Adopt the Context Engineering Template for Claude Code, implementing:
|
|
38
|
+
|
|
39
|
+
1. **3-Level Chain-of-Index Architecture** - Progressive detail loading
|
|
40
|
+
2. **RPI Workflow** - Research-Plan-Implement methodology
|
|
41
|
+
3. **Self-Maintaining Documentation** - Code-to-workflow mapping
|
|
42
|
+
4. **Specialized Agents** - Domain-specific assistants
|
|
43
|
+
|
|
44
|
+
### Key Points
|
|
45
|
+
|
|
46
|
+
1. Keep context budget under 40% (80k tokens) for working room
|
|
47
|
+
2. Use indexes to navigate, not to hold all information
|
|
48
|
+
3. Update documentation when code changes
|
|
49
|
+
4. Use RPI workflow for all significant features
|
|
50
|
+
|
|
51
|
+
## Alternatives Considered
|
|
52
|
+
|
|
53
|
+
### Alternative 1: Flat Documentation
|
|
54
|
+
|
|
55
|
+
**Description:** Single large CLAUDE.md with all information
|
|
56
|
+
|
|
57
|
+
**Pros:**
|
|
58
|
+
- Simple to maintain
|
|
59
|
+
- Everything in one place
|
|
60
|
+
|
|
61
|
+
**Cons:**
|
|
62
|
+
- Quickly exceeds context budget
|
|
63
|
+
- No progressive loading
|
|
64
|
+
- Hard to navigate
|
|
65
|
+
|
|
66
|
+
**Why not chosen:** Doesn't scale with codebase size
|
|
67
|
+
|
|
68
|
+
### Alternative 2: No Documentation Structure
|
|
69
|
+
|
|
70
|
+
**Description:** Rely on Claude's code exploration
|
|
71
|
+
|
|
72
|
+
**Pros:**
|
|
73
|
+
- Zero maintenance overhead
|
|
74
|
+
- Always up-to-date with code
|
|
75
|
+
|
|
76
|
+
**Cons:**
|
|
77
|
+
- Wastes context on exploration
|
|
78
|
+
- No curated knowledge
|
|
79
|
+
- Inconsistent results
|
|
80
|
+
|
|
81
|
+
**Why not chosen:** Inefficient use of context window
|
|
82
|
+
|
|
83
|
+
## Consequences
|
|
84
|
+
|
|
85
|
+
### Positive
|
|
86
|
+
|
|
87
|
+
- Efficient context utilization
|
|
88
|
+
- Consistent navigation patterns
|
|
89
|
+
- Knowledge persists across sessions
|
|
90
|
+
- Team shares common understanding
|
|
91
|
+
|
|
92
|
+
### Negative
|
|
93
|
+
|
|
94
|
+
- Initial setup overhead
|
|
95
|
+
- Requires maintenance discipline
|
|
96
|
+
- Learning curve for team
|
|
97
|
+
|
|
98
|
+
### Risks
|
|
99
|
+
|
|
100
|
+
- Documentation drift if not maintained
|
|
101
|
+
- Mitigation: Use CODE_TO_WORKFLOW_MAP.md and /verify-docs-current
|
|
102
|
+
- Over-documentation consuming budget
|
|
103
|
+
- Mitigation: Regular audits, keep to 40% target
|
|
104
|
+
|
|
105
|
+
## Implementation
|
|
106
|
+
|
|
107
|
+
### Steps
|
|
108
|
+
|
|
109
|
+
1. Copy template to project root
|
|
110
|
+
2. Run initialization (`npx claude-context init`)
|
|
111
|
+
3. Customize placeholders for project
|
|
112
|
+
4. Train team on RPI workflow
|
|
113
|
+
5. Establish documentation update habits
|
|
114
|
+
|
|
115
|
+
### Affected Components
|
|
116
|
+
|
|
117
|
+
- Development workflow: Add documentation updates
|
|
118
|
+
- Code review: Include documentation check
|
|
119
|
+
- CI/CD: Add validation workflow
|
|
120
|
+
|
|
121
|
+
### Migration Plan
|
|
122
|
+
|
|
123
|
+
Gradual adoption - start with core workflows, expand as team learns.
|
|
124
|
+
|
|
125
|
+
## Verification
|
|
126
|
+
|
|
127
|
+
- [ ] Context budget stays under 40%
|
|
128
|
+
- [ ] Team can navigate without manual guidance
|
|
129
|
+
- [ ] Documentation accuracy above 80%
|
|
130
|
+
- [ ] Session handoffs are effective
|
|
131
|
+
|
|
132
|
+
## References
|
|
133
|
+
|
|
134
|
+
- [Context Engineering Template README](../../../README.md)
|
|
135
|
+
- [RPI Workflow Plan](../../../RPI_WORKFLOW_PLAN.md)
|
|
136
|
+
- [Chain-of-Index Architecture](../../../indexes/README.md)
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
## Revision History
|
|
141
|
+
|
|
142
|
+
| Date | Author | Changes |
|
|
143
|
+
|------|--------|---------|
|
|
144
|
+
| {{DATE}} | {{AUTHOR_NAME}} | Initial adoption decision |
|
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
# Architecture Decision Records (ADRs)
|
|
2
|
-
|
|
3
|
-
This directory contains Architecture Decision Records documenting significant technical decisions.
|
|
4
|
-
|
|
5
|
-
## Index
|
|
6
|
-
|
|
7
|
-
| ADR | Title | Status | Date |
|
|
8
|
-
|-----|-------|--------|------|
|
|
9
|
-
| [0001](0001-adopt-context-engineering.md) | Adopt Context Engineering Template | accepted | {{DATE}} |
|
|
10
|
-
|
|
11
|
-
## Creating a New ADR
|
|
12
|
-
|
|
13
|
-
1. Copy `TEMPLATE.md` to `NNNN-descriptive-title.md`
|
|
14
|
-
2. Use the next sequential number
|
|
15
|
-
3. Fill in all sections
|
|
16
|
-
4. Set status to `proposed`
|
|
17
|
-
5. Request review from team
|
|
18
|
-
6. Update status to `accepted` or `rejected` after review
|
|
19
|
-
|
|
20
|
-
## ADR Lifecycle
|
|
21
|
-
|
|
22
|
-
```
|
|
23
|
-
proposed → accepted → deprecated
|
|
24
|
-
↓
|
|
25
|
-
rejected
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
## Naming Convention
|
|
29
|
-
|
|
30
|
-
`NNNN-lowercase-hyphenated-title.md`
|
|
31
|
-
|
|
32
|
-
- NNNN: 4-digit sequential number
|
|
33
|
-
- Use lowercase letters
|
|
34
|
-
- Separate words with hyphens
|
|
35
|
-
- Keep title concise but descriptive
|
|
36
|
-
|
|
37
|
-
## When to Write an ADR
|
|
38
|
-
|
|
39
|
-
Write an ADR when:
|
|
40
|
-
- Choosing between significant alternatives
|
|
41
|
-
- Making irreversible or costly-to-reverse decisions
|
|
42
|
-
- Establishing patterns the team should follow
|
|
43
|
-
- Adopting new technologies or frameworks
|
|
44
|
-
- Changing architectural direction
|
|
45
|
-
|
|
46
|
-
Don't write an ADR for:
|
|
47
|
-
- Minor implementation details
|
|
48
|
-
- Obvious choices with no alternatives
|
|
49
|
-
- Temporary decisions
|
|
1
|
+
# Architecture Decision Records (ADRs)
|
|
2
|
+
|
|
3
|
+
This directory contains Architecture Decision Records documenting significant technical decisions.
|
|
4
|
+
|
|
5
|
+
## Index
|
|
6
|
+
|
|
7
|
+
| ADR | Title | Status | Date |
|
|
8
|
+
|-----|-------|--------|------|
|
|
9
|
+
| [0001](0001-adopt-context-engineering.md) | Adopt Context Engineering Template | accepted | {{DATE}} |
|
|
10
|
+
|
|
11
|
+
## Creating a New ADR
|
|
12
|
+
|
|
13
|
+
1. Copy `TEMPLATE.md` to `NNNN-descriptive-title.md`
|
|
14
|
+
2. Use the next sequential number
|
|
15
|
+
3. Fill in all sections
|
|
16
|
+
4. Set status to `proposed`
|
|
17
|
+
5. Request review from team
|
|
18
|
+
6. Update status to `accepted` or `rejected` after review
|
|
19
|
+
|
|
20
|
+
## ADR Lifecycle
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
proposed → accepted → deprecated
|
|
24
|
+
↓
|
|
25
|
+
rejected
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Naming Convention
|
|
29
|
+
|
|
30
|
+
`NNNN-lowercase-hyphenated-title.md`
|
|
31
|
+
|
|
32
|
+
- NNNN: 4-digit sequential number
|
|
33
|
+
- Use lowercase letters
|
|
34
|
+
- Separate words with hyphens
|
|
35
|
+
- Keep title concise but descriptive
|
|
36
|
+
|
|
37
|
+
## When to Write an ADR
|
|
38
|
+
|
|
39
|
+
Write an ADR when:
|
|
40
|
+
- Choosing between significant alternatives
|
|
41
|
+
- Making irreversible or costly-to-reverse decisions
|
|
42
|
+
- Establishing patterns the team should follow
|
|
43
|
+
- Adopting new technologies or frameworks
|
|
44
|
+
- Changing architectural direction
|
|
45
|
+
|
|
46
|
+
Don't write an ADR for:
|
|
47
|
+
- Minor implementation details
|
|
48
|
+
- Obvious choices with no alternatives
|
|
49
|
+
- Temporary decisions
|