@arvorco/relentless 0.1.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/.claude/commands/relentless.analyze.md +20 -0
- package/.claude/commands/relentless.checklist.md +15 -0
- package/.claude/commands/relentless.clarify.md +19 -0
- package/.claude/commands/relentless.constitution.md +78 -0
- package/.claude/commands/relentless.implement.md +15 -0
- package/.claude/commands/relentless.plan.md +22 -0
- package/.claude/commands/relentless.plan.old.md +89 -0
- package/.claude/commands/relentless.specify.md +254 -0
- package/.claude/commands/relentless.tasks.md +25 -0
- package/.claude/commands/relentless.taskstoissues.md +15 -0
- package/.claude/settings.local.json +23 -0
- package/.claude/skills/analyze/SKILL.md +149 -0
- package/.claude/skills/checklist/SKILL.md +173 -0
- package/.claude/skills/checklist/templates/checklist-template.md +40 -0
- package/.claude/skills/clarify/SKILL.md +174 -0
- package/.claude/skills/constitution/SKILL.md +150 -0
- package/.claude/skills/constitution/templates/constitution-template.md +228 -0
- package/.claude/skills/implement/SKILL.md +141 -0
- package/.claude/skills/plan/SKILL.md +179 -0
- package/.claude/skills/plan/templates/plan-template.md +104 -0
- package/.claude/skills/prd/SKILL.md +242 -0
- package/.claude/skills/relentless/SKILL.md +265 -0
- package/.claude/skills/specify/SKILL.md +220 -0
- package/.claude/skills/specify/scripts/bash/check-prerequisites.sh +166 -0
- package/.claude/skills/specify/scripts/bash/common.sh +156 -0
- package/.claude/skills/specify/scripts/bash/create-new-feature.sh +305 -0
- package/.claude/skills/specify/scripts/bash/setup-plan.sh +61 -0
- package/.claude/skills/specify/scripts/bash/update-agent-context.sh +799 -0
- package/.claude/skills/specify/templates/spec-template.md +115 -0
- package/.claude/skills/tasks/SKILL.md +202 -0
- package/.claude/skills/tasks/templates/tasks-template.md +251 -0
- package/.claude/skills/taskstoissues/SKILL.md +97 -0
- package/.specify/memory/constitution.md +50 -0
- package/.specify/scripts/bash/check-prerequisites.sh +166 -0
- package/.specify/scripts/bash/common.sh +156 -0
- package/.specify/scripts/bash/create-new-feature.sh +297 -0
- package/.specify/scripts/bash/setup-plan.sh +61 -0
- package/.specify/scripts/bash/update-agent-context.sh +799 -0
- package/.specify/templates/agent-file-template.md +28 -0
- package/.specify/templates/checklist-template.md +40 -0
- package/.specify/templates/plan-template.md +104 -0
- package/.specify/templates/spec-template.md +115 -0
- package/.specify/templates/tasks-template.md +251 -0
- package/CHANGES_SUMMARY.md +255 -0
- package/CLAUDE.md +92 -0
- package/GEMINI_SETUP.md +256 -0
- package/LICENSE +21 -0
- package/README.md +1171 -0
- package/REFACTOR_SUMMARY.md +267 -0
- package/bin/relentless.ts +536 -0
- package/bun.lock +352 -0
- package/eslint.config.js +37 -0
- package/package.json +61 -0
- package/prd.json.example +64 -0
- package/prompt.md +108 -0
- package/ralph.sh +80 -0
- package/relentless/config.json +38 -0
- package/relentless/features/.gitkeep +0 -0
- package/relentless/features/ghsk-ideas/prd.json +229 -0
- package/relentless/features/ghsk-ideas/prd.md +191 -0
- package/relentless/features/ghsk-ideas/progress.txt +408 -0
- package/relentless/prompt.md +79 -0
- package/skills/checklist/SKILL.md +349 -0
- package/skills/clarify/SKILL.md +476 -0
- package/skills/prd/SKILL.md +242 -0
- package/skills/relentless/SKILL.md +268 -0
- package/skills/tasks/SKILL.md +577 -0
- package/src/agents/amp.ts +115 -0
- package/src/agents/claude.ts +185 -0
- package/src/agents/codex.ts +89 -0
- package/src/agents/droid.ts +90 -0
- package/src/agents/gemini.ts +109 -0
- package/src/agents/index.ts +16 -0
- package/src/agents/opencode.ts +88 -0
- package/src/agents/registry.ts +95 -0
- package/src/agents/types.ts +101 -0
- package/src/config/index.ts +8 -0
- package/src/config/loader.ts +237 -0
- package/src/config/schema.ts +115 -0
- package/src/execution/index.ts +8 -0
- package/src/execution/router.ts +49 -0
- package/src/execution/runner.ts +512 -0
- package/src/index.ts +11 -0
- package/src/init/index.ts +7 -0
- package/src/init/scaffolder.ts +377 -0
- package/src/prd/analyzer.ts +512 -0
- package/src/prd/index.ts +11 -0
- package/src/prd/issues.ts +249 -0
- package/src/prd/parser.ts +281 -0
- package/src/prd/progress.ts +198 -0
- package/src/prd/types.ts +170 -0
- package/src/tui/App.tsx +85 -0
- package/src/tui/TUIRunner.tsx +400 -0
- package/src/tui/components/AgentOutput.tsx +45 -0
- package/src/tui/components/AgentStatus.tsx +64 -0
- package/src/tui/components/CurrentStory.tsx +66 -0
- package/src/tui/components/Header.tsx +49 -0
- package/src/tui/components/ProgressBar.tsx +39 -0
- package/src/tui/components/StoryGrid.tsx +86 -0
- package/src/tui/hooks/useTUI.ts +147 -0
- package/src/tui/hooks/useTimer.ts +51 -0
- package/src/tui/index.tsx +17 -0
- package/src/tui/theme.ts +41 -0
- package/src/tui/types.ts +77 -0
- package/templates/constitution.md +228 -0
- package/templates/plan.md +273 -0
- package/tsconfig.json +27 -0
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
# Technical Planning Document
|
|
2
|
+
|
|
3
|
+
## Feature Overview
|
|
4
|
+
|
|
5
|
+
**Feature Name**: [Feature Name]
|
|
6
|
+
**PRD Reference**: [Link or path to PRD]
|
|
7
|
+
**Planning Date**: [YYYY-MM-DD]
|
|
8
|
+
**Author**: [Name or Agent ID]
|
|
9
|
+
|
|
10
|
+
### Problem Statement
|
|
11
|
+
|
|
12
|
+
[Describe the problem this feature solves. What pain point are we addressing?]
|
|
13
|
+
|
|
14
|
+
### Goals and Non-Goals
|
|
15
|
+
|
|
16
|
+
**Goals:**
|
|
17
|
+
- [Goal 1]
|
|
18
|
+
- [Goal 2]
|
|
19
|
+
- [Goal 3]
|
|
20
|
+
|
|
21
|
+
**Non-Goals:**
|
|
22
|
+
- [What this feature will NOT do]
|
|
23
|
+
- [Scope limitations]
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Technical Approach
|
|
28
|
+
|
|
29
|
+
### High-Level Architecture
|
|
30
|
+
|
|
31
|
+
[Describe the overall architectural approach. Include diagrams if helpful.]
|
|
32
|
+
|
|
33
|
+
### Technology Stack
|
|
34
|
+
|
|
35
|
+
**Languages/Frameworks:**
|
|
36
|
+
- [Technology 1]: [Justification]
|
|
37
|
+
- [Technology 2]: [Justification]
|
|
38
|
+
|
|
39
|
+
**Libraries/Dependencies:**
|
|
40
|
+
- [Dependency 1]: [Version] - [Purpose]
|
|
41
|
+
- [Dependency 2]: [Version] - [Purpose]
|
|
42
|
+
|
|
43
|
+
### Design Patterns
|
|
44
|
+
|
|
45
|
+
[Which design patterns will be used and why?]
|
|
46
|
+
- [Pattern 1]: [Rationale]
|
|
47
|
+
- [Pattern 2]: [Rationale]
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Implementation Details
|
|
52
|
+
|
|
53
|
+
### Data Models
|
|
54
|
+
|
|
55
|
+
```typescript
|
|
56
|
+
// Example schema definitions
|
|
57
|
+
interface Example {
|
|
58
|
+
field: string;
|
|
59
|
+
// ...
|
|
60
|
+
}
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
### API Design
|
|
64
|
+
|
|
65
|
+
**Endpoints/Functions:**
|
|
66
|
+
- `functionName(params)`: [Description]
|
|
67
|
+
- `anotherFunction(params)`: [Description]
|
|
68
|
+
|
|
69
|
+
**Request/Response Formats:**
|
|
70
|
+
```json
|
|
71
|
+
{
|
|
72
|
+
"example": "payload"
|
|
73
|
+
}
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
### File Structure
|
|
77
|
+
|
|
78
|
+
```
|
|
79
|
+
src/
|
|
80
|
+
├── feature/
|
|
81
|
+
│ ├── module1.ts
|
|
82
|
+
│ ├── module2.ts
|
|
83
|
+
│ └── types.ts
|
|
84
|
+
└── tests/
|
|
85
|
+
└── feature.test.ts
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
## Integration Points
|
|
91
|
+
|
|
92
|
+
### Existing Systems
|
|
93
|
+
|
|
94
|
+
- **System 1**: [How does this feature integrate?]
|
|
95
|
+
- **System 2**: [Dependencies or interactions]
|
|
96
|
+
|
|
97
|
+
### Database Changes
|
|
98
|
+
|
|
99
|
+
**Schema Updates:**
|
|
100
|
+
- [Table/Collection 1]: [Changes]
|
|
101
|
+
- [Table/Collection 2]: [Changes]
|
|
102
|
+
|
|
103
|
+
**Migration Strategy:**
|
|
104
|
+
- [Backward compatibility considerations]
|
|
105
|
+
- [Data migration approach]
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
## Testing Strategy
|
|
110
|
+
|
|
111
|
+
### Unit Tests
|
|
112
|
+
|
|
113
|
+
- [What units will be tested?]
|
|
114
|
+
- [Coverage goals]
|
|
115
|
+
|
|
116
|
+
### Integration Tests
|
|
117
|
+
|
|
118
|
+
- [Integration scenarios]
|
|
119
|
+
- [External dependencies to mock]
|
|
120
|
+
|
|
121
|
+
### E2E Tests
|
|
122
|
+
|
|
123
|
+
- [User flows to test]
|
|
124
|
+
- [Critical paths]
|
|
125
|
+
|
|
126
|
+
### Performance Tests
|
|
127
|
+
|
|
128
|
+
- [Load testing requirements]
|
|
129
|
+
- [Performance benchmarks]
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## Security Considerations
|
|
134
|
+
|
|
135
|
+
### Authentication/Authorization
|
|
136
|
+
|
|
137
|
+
- [How is access controlled?]
|
|
138
|
+
- [Role-based permissions]
|
|
139
|
+
|
|
140
|
+
### Data Privacy
|
|
141
|
+
|
|
142
|
+
- [PII handling]
|
|
143
|
+
- [Encryption requirements]
|
|
144
|
+
|
|
145
|
+
### Vulnerability Analysis
|
|
146
|
+
|
|
147
|
+
- [Potential security risks]
|
|
148
|
+
- [Mitigation strategies]
|
|
149
|
+
|
|
150
|
+
---
|
|
151
|
+
|
|
152
|
+
## Rollout Strategy
|
|
153
|
+
|
|
154
|
+
### Feature Flags
|
|
155
|
+
|
|
156
|
+
- [Which flags to use?]
|
|
157
|
+
- [Gradual rollout plan]
|
|
158
|
+
|
|
159
|
+
### Deployment Steps
|
|
160
|
+
|
|
161
|
+
1. [Step 1]
|
|
162
|
+
2. [Step 2]
|
|
163
|
+
3. [Step 3]
|
|
164
|
+
|
|
165
|
+
### Rollback Plan
|
|
166
|
+
|
|
167
|
+
- [How to revert if needed]
|
|
168
|
+
- [Data cleanup strategy]
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
## Monitoring and Observability
|
|
173
|
+
|
|
174
|
+
### Metrics
|
|
175
|
+
|
|
176
|
+
- [Metric 1]: [What it measures]
|
|
177
|
+
- [Metric 2]: [What it measures]
|
|
178
|
+
|
|
179
|
+
### Logging
|
|
180
|
+
|
|
181
|
+
- [Key events to log]
|
|
182
|
+
- [Log levels and structured logging approach]
|
|
183
|
+
|
|
184
|
+
### Alerting
|
|
185
|
+
|
|
186
|
+
- [What triggers alerts?]
|
|
187
|
+
- [Escalation procedures]
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
## Open Questions
|
|
192
|
+
|
|
193
|
+
- [ ] [Question 1]
|
|
194
|
+
- [ ] [Question 2]
|
|
195
|
+
- [ ] [Question 3]
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
## Alternatives Considered
|
|
200
|
+
|
|
201
|
+
### Alternative 1: [Name]
|
|
202
|
+
|
|
203
|
+
**Pros:**
|
|
204
|
+
- [Pro 1]
|
|
205
|
+
- [Pro 2]
|
|
206
|
+
|
|
207
|
+
**Cons:**
|
|
208
|
+
- [Con 1]
|
|
209
|
+
- [Con 2]
|
|
210
|
+
|
|
211
|
+
**Why not chosen:** [Reasoning]
|
|
212
|
+
|
|
213
|
+
### Alternative 2: [Name]
|
|
214
|
+
|
|
215
|
+
**Pros:**
|
|
216
|
+
- [Pro 1]
|
|
217
|
+
|
|
218
|
+
**Cons:**
|
|
219
|
+
- [Con 1]
|
|
220
|
+
|
|
221
|
+
**Why not chosen:** [Reasoning]
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
## Dependencies and Risks
|
|
226
|
+
|
|
227
|
+
### External Dependencies
|
|
228
|
+
|
|
229
|
+
- [Dependency 1]: [Risk if unavailable]
|
|
230
|
+
- [Dependency 2]: [Mitigation strategy]
|
|
231
|
+
|
|
232
|
+
### Technical Risks
|
|
233
|
+
|
|
234
|
+
1. **Risk**: [Description]
|
|
235
|
+
- **Impact**: [High/Medium/Low]
|
|
236
|
+
- **Mitigation**: [Strategy]
|
|
237
|
+
|
|
238
|
+
2. **Risk**: [Description]
|
|
239
|
+
- **Impact**: [High/Medium/Low]
|
|
240
|
+
- **Mitigation**: [Strategy]
|
|
241
|
+
|
|
242
|
+
### Timeline Risks
|
|
243
|
+
|
|
244
|
+
- [Risk 1]: [Mitigation]
|
|
245
|
+
- [Risk 2]: [Mitigation]
|
|
246
|
+
|
|
247
|
+
---
|
|
248
|
+
|
|
249
|
+
## Success Criteria
|
|
250
|
+
|
|
251
|
+
### Definition of Done
|
|
252
|
+
|
|
253
|
+
- [ ] All acceptance criteria met
|
|
254
|
+
- [ ] All tests passing
|
|
255
|
+
- [ ] Code reviewed and approved
|
|
256
|
+
- [ ] Documentation complete
|
|
257
|
+
- [ ] Performance benchmarks met
|
|
258
|
+
- [ ] Security review passed
|
|
259
|
+
|
|
260
|
+
### Success Metrics
|
|
261
|
+
|
|
262
|
+
- [Metric 1]: [Target value]
|
|
263
|
+
- [Metric 2]: [Target value]
|
|
264
|
+
- [Metric 3]: [Target value]
|
|
265
|
+
|
|
266
|
+
---
|
|
267
|
+
|
|
268
|
+
## References
|
|
269
|
+
|
|
270
|
+
- [Link to PRD]
|
|
271
|
+
- [Related design docs]
|
|
272
|
+
- [External documentation]
|
|
273
|
+
- [Research papers or articles]
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "ES2022",
|
|
4
|
+
"module": "ESNext",
|
|
5
|
+
"moduleResolution": "bundler",
|
|
6
|
+
"strict": true,
|
|
7
|
+
"skipLibCheck": true,
|
|
8
|
+
"noEmit": true,
|
|
9
|
+
"esModuleInterop": true,
|
|
10
|
+
"allowSyntheticDefaultImports": true,
|
|
11
|
+
"forceConsistentCasingInFileNames": true,
|
|
12
|
+
"resolveJsonModule": true,
|
|
13
|
+
"isolatedModules": true,
|
|
14
|
+
"verbatimModuleSyntax": true,
|
|
15
|
+
"lib": ["ES2022"],
|
|
16
|
+
"types": ["bun-types"],
|
|
17
|
+
"baseUrl": ".",
|
|
18
|
+
"paths": {
|
|
19
|
+
"@/*": ["src/*"]
|
|
20
|
+
},
|
|
21
|
+
"outDir": "dist",
|
|
22
|
+
"jsx": "react-jsx",
|
|
23
|
+
"jsxImportSource": "react"
|
|
24
|
+
},
|
|
25
|
+
"include": ["src/**/*.ts", "src/**/*.tsx", "bin/**/*.ts"],
|
|
26
|
+
"exclude": ["node_modules", "dist"]
|
|
27
|
+
}
|