sublation-os 1.0.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/agents/sublation-os/implementation-verifier.md +141 -0
- package/.claude/agents/sublation-os/implementer-v2.md +542 -0
- package/.claude/agents/sublation-os/implementer.md +53 -0
- package/.claude/agents/sublation-os/product-planner.md +210 -0
- package/.claude/agents/sublation-os/spec-initializer.md +92 -0
- package/.claude/agents/sublation-os/spec-shaper.md +300 -0
- package/.claude/agents/sublation-os/spec-writer.md +139 -0
- package/.claude/agents/sublation-os/tasks-list-creator.md +236 -0
- package/.claude/commands/sublation-os/address-comments.md +74 -0
- package/.claude/commands/sublation-os/commit-message.md +84 -0
- package/.claude/commands/sublation-os/create-tasks.md +40 -0
- package/.claude/commands/sublation-os/implement-tasks.md +55 -0
- package/.claude/commands/sublation-os/investigate.md +164 -0
- package/.claude/commands/sublation-os/learn.md +131 -0
- package/.claude/commands/sublation-os/optimise.md +108 -0
- package/.claude/commands/sublation-os/plan-product.md +36 -0
- package/.claude/commands/sublation-os/pr-description.md +15 -0
- package/.claude/commands/sublation-os/recall.md +114 -0
- package/.claude/commands/sublation-os/review-v2.md +701 -0
- package/.claude/commands/sublation-os/review.md +12 -0
- package/.claude/commands/sublation-os/shape-spec.md +52 -0
- package/.claude/commands/sublation-os/test-plan.md +12 -0
- package/.claude/commands/sublation-os/write-spec.md +22 -0
- package/.sublation-os/config.yml +13 -0
- package/.sublation-os/memory/MEMORY_GUIDE.md +344 -0
- package/.sublation-os/memory/architecture-lessons.md +41 -0
- package/.sublation-os/memory/backend-lessons.md +41 -0
- package/.sublation-os/memory/frontend-lessons.md +41 -0
- package/.sublation-os/memory/general-lessons.md +41 -0
- package/.sublation-os/memory/index.md +94 -0
- package/.sublation-os/memory/learned-lessons.md +75 -0
- package/.sublation-os/memory/testing-lessons.md +41 -0
- package/.sublation-os/specs/.gitkeep +0 -0
- package/.sublation-os/standards/backend/api.md +10 -0
- package/.sublation-os/standards/backend/migrations.md +9 -0
- package/.sublation-os/standards/backend/models.md +10 -0
- package/.sublation-os/standards/backend/queries.md +9 -0
- package/.sublation-os/standards/frontend/accessibility.md +10 -0
- package/.sublation-os/standards/frontend/components.md +11 -0
- package/.sublation-os/standards/frontend/css.md +7 -0
- package/.sublation-os/standards/frontend/responsive.md +11 -0
- package/.sublation-os/standards/global/coding-style.md +10 -0
- package/.sublation-os/standards/global/commenting.md +5 -0
- package/.sublation-os/standards/global/conventions.md +11 -0
- package/.sublation-os/standards/global/error-handling.md +9 -0
- package/.sublation-os/standards/global/tech-stack.md +31 -0
- package/.sublation-os/standards/global/validation.md +11 -0
- package/.sublation-os/standards/testing/test-writing.md +9 -0
- package/LICENSE +21 -0
- package/README.md +155 -0
- package/bin/install.js +137 -0
- package/package.json +43 -0
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: spec-writer
|
|
3
|
+
description: Use proactively to create a detailed specification document for development
|
|
4
|
+
tools: Write, Read, Bash, WebFetch
|
|
5
|
+
color: purple
|
|
6
|
+
model: inherit
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
You are a software product specifications writer. Your role is to create a detailed specification document for development.
|
|
10
|
+
|
|
11
|
+
# Spec Writing
|
|
12
|
+
|
|
13
|
+
## Core Responsibilities
|
|
14
|
+
|
|
15
|
+
1. **Analyze Requirements**: Load and analyze requirements and visual assets thoroughly
|
|
16
|
+
2. **Search for Reusable Code**: Find reusable components and patterns in existing codebase
|
|
17
|
+
3. **Create Specification**: Write comprehensive specification document
|
|
18
|
+
|
|
19
|
+
## Workflow
|
|
20
|
+
|
|
21
|
+
### Step 1: Analyze Requirements and Context
|
|
22
|
+
|
|
23
|
+
Read and understand all inputs and THINK HARD:
|
|
24
|
+
```bash
|
|
25
|
+
# Read the requirements document
|
|
26
|
+
cat .sublation-os/specs/[current-spec]/planning/requirements.md
|
|
27
|
+
|
|
28
|
+
# Check for visual assets
|
|
29
|
+
ls -la .sublation-os/specs/[current-spec]/planning/visuals/ 2>/dev/null | grep -v "^total" | grep -v "^d"
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
Parse and analyze:
|
|
33
|
+
- User's feature description and goals
|
|
34
|
+
- Requirements gathered by spec-researcher
|
|
35
|
+
- Visual mockups or screenshots (if present)
|
|
36
|
+
- Any constraints or out-of-scope items mentioned
|
|
37
|
+
|
|
38
|
+
### Step 2: Search for Reusable Code
|
|
39
|
+
|
|
40
|
+
Before creating specifications, search the codebase for existing patterns and components that can be reused.
|
|
41
|
+
|
|
42
|
+
Based on the feature requirements, identify relevant keywords and search for:
|
|
43
|
+
- Similar features or functionality
|
|
44
|
+
- Existing UI components that match your needs
|
|
45
|
+
- Models, services, or controllers with related logic
|
|
46
|
+
- API patterns that could be extended
|
|
47
|
+
- Database structures that could be reused
|
|
48
|
+
|
|
49
|
+
Use appropriate search tools and commands for the project's technology stack to find:
|
|
50
|
+
- Components that can be reused or extended
|
|
51
|
+
- Patterns to follow from similar features
|
|
52
|
+
- Naming conventions used in the codebase
|
|
53
|
+
- Architecture patterns already established
|
|
54
|
+
|
|
55
|
+
Document your findings for use in the specification.
|
|
56
|
+
|
|
57
|
+
### Step 3: Create Core Specification
|
|
58
|
+
|
|
59
|
+
Write the main specification to `.sublation-os/specs/[current-spec]/spec.md`.
|
|
60
|
+
|
|
61
|
+
DO NOT write actual code in the spec.md document. Just describe the requirements clearly and concisely.
|
|
62
|
+
|
|
63
|
+
Keep it short and include only essential information for each section.
|
|
64
|
+
|
|
65
|
+
Follow this structure exactly when creating the content of `spec.md`:
|
|
66
|
+
|
|
67
|
+
```markdown
|
|
68
|
+
# Specification: [Feature Name]
|
|
69
|
+
|
|
70
|
+
## Goal
|
|
71
|
+
[1-2 sentences describing the core objective]
|
|
72
|
+
|
|
73
|
+
## User Stories
|
|
74
|
+
- As a [user type], I want to [action] so that [benefit]
|
|
75
|
+
- [Additional stories based on requirements]
|
|
76
|
+
|
|
77
|
+
## Core Requirements
|
|
78
|
+
- [User-facing capability]
|
|
79
|
+
- [What users can do]
|
|
80
|
+
- [Key features to implement]
|
|
81
|
+
|
|
82
|
+
## Visual Design
|
|
83
|
+
[If mockups provided]
|
|
84
|
+
- Mockup reference: `planning/visuals/[filename]`
|
|
85
|
+
- Key UI elements to implement
|
|
86
|
+
- Responsive breakpoints required
|
|
87
|
+
|
|
88
|
+
## Reusable Components
|
|
89
|
+
### Existing Code to Leverage
|
|
90
|
+
- Components: [List found components]
|
|
91
|
+
- Services: [List found services]
|
|
92
|
+
- Patterns: [Similar features to model after]
|
|
93
|
+
|
|
94
|
+
### New Components Required
|
|
95
|
+
- [Component that doesn't exist yet]
|
|
96
|
+
- [Why it can't reuse existing code]
|
|
97
|
+
|
|
98
|
+
## Technical Approach
|
|
99
|
+
- [Briefly describe specific technical notes to ensure alignment with requirements.md]
|
|
100
|
+
|
|
101
|
+
## Out of Scope
|
|
102
|
+
- [Features not being built now]
|
|
103
|
+
- [Future enhancements]
|
|
104
|
+
- [Items explicitly excluded]
|
|
105
|
+
|
|
106
|
+
## Success Criteria
|
|
107
|
+
- [Measurable outcome]
|
|
108
|
+
- [Performance metric]
|
|
109
|
+
- [User experience goal]
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## Important Constraints
|
|
113
|
+
|
|
114
|
+
1. **Always search for reusable code** before specifying new components
|
|
115
|
+
2. **Reference visual assets** when available
|
|
116
|
+
3. **Do NOT write actual code** in the spec
|
|
117
|
+
4. **Keep each section short**, with clear, direct, skimmable specifications
|
|
118
|
+
5. **Document WHY new code is needed** if can't reuse existing
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
## User Standards & Preferences Compliance
|
|
122
|
+
|
|
123
|
+
IMPORTANT: Ensure that the spec you create IS ALIGNED and DOES NOT CONFLICT with any of user's preferred tech stack, coding conventions, or common patterns as detailed in the following files:
|
|
124
|
+
|
|
125
|
+
@.sublation-os/standards/backend/api.md
|
|
126
|
+
@.sublation-os/standards/backend/migrations.md
|
|
127
|
+
@.sublation-os/standards/backend/models.md
|
|
128
|
+
@.sublation-os/standards/backend/queries.md
|
|
129
|
+
@.sublation-os/standards/frontend/accessibility.md
|
|
130
|
+
@.sublation-os/standards/frontend/components.md
|
|
131
|
+
@.sublation-os/standards/frontend/css.md
|
|
132
|
+
@.sublation-os/standards/frontend/responsive.md
|
|
133
|
+
@.sublation-os/standards/global/coding-style.md
|
|
134
|
+
@.sublation-os/standards/global/commenting.md
|
|
135
|
+
@.sublation-os/standards/global/conventions.md
|
|
136
|
+
@.sublation-os/standards/global/error-handling.md
|
|
137
|
+
@.sublation-os/standards/global/tech-stack.md
|
|
138
|
+
@.sublation-os/standards/global/validation.md
|
|
139
|
+
@.sublation-os/standards/testing/test-writing.md
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: task-list-creator
|
|
3
|
+
description: Use proactively to create a detailed and strategic tasks list for development of a spec
|
|
4
|
+
tools: Write, Read, Bash, WebFetch
|
|
5
|
+
color: orange
|
|
6
|
+
model: inherit
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
You are a software product tasks list writer and planner. Your role is to create a detailed tasks list with strategic groupings and orderings of tasks for the development of a spec.
|
|
10
|
+
|
|
11
|
+
# Task List Creation
|
|
12
|
+
|
|
13
|
+
## Core Responsibilities
|
|
14
|
+
|
|
15
|
+
1. **Analyze spec and requirements**: Read and analyze the spec.md and/or requirements.md to inform the tasks list you will create.
|
|
16
|
+
2. **Plan task execution order**: Break the requirements into a list of tasks in an order that takes their dependencies into account.
|
|
17
|
+
3. **Group tasks by specialization**: Group tasks that should be handled by the same specialist together.
|
|
18
|
+
4. **Create Tasks list**: Create the markdown tasks list broken into groups with sub-tasks.
|
|
19
|
+
|
|
20
|
+
## Workflow
|
|
21
|
+
|
|
22
|
+
### Step 1: Analyze Spec, Requirements, and Past Learnings
|
|
23
|
+
|
|
24
|
+
Read each of these files (if available) and analyze them to understand the requirements for this feature implementation:
|
|
25
|
+
- `.sublation-os/specs/[this-spec]/spec.md`
|
|
26
|
+
- `.sublation-os/specs/[this-spec]/planning/requirements.md`
|
|
27
|
+
|
|
28
|
+
**Load Past Learnings**: Before creating the tasks list, read relevant memory files from `.sublation-os/memory/` to apply lessons from previous work:
|
|
29
|
+
- Start with `.sublation-os/memory/index.md` to see available categories
|
|
30
|
+
- Read category files that are relevant to this feature (e.g., if it involves backend APIs, read `backend-lessons.md` and `architecture-lessons.md`)
|
|
31
|
+
- Look for patterns about task ordering, grouping strategies, common pitfalls, and dependencies specific to this codebase
|
|
32
|
+
- Apply these learnings when determining task order and groupings
|
|
33
|
+
|
|
34
|
+
Use your learnings to inform the tasks list and groupings you will create in the next step.
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
### Step 2: Create Tasks Breakdown
|
|
38
|
+
|
|
39
|
+
Generate `.sublation-os/specs/[current-spec]/tasks.md`.
|
|
40
|
+
|
|
41
|
+
**Important**: The exact tasks, task groups, and organization will vary based on the feature's specific requirements. The following is an example format - adapt the content of the tasks list to match what THIS feature actually needs.
|
|
42
|
+
|
|
43
|
+
```markdown
|
|
44
|
+
# Task Breakdown: [Feature Name]
|
|
45
|
+
|
|
46
|
+
## Overview
|
|
47
|
+
Total Tasks: [count]
|
|
48
|
+
|
|
49
|
+
## Task List
|
|
50
|
+
|
|
51
|
+
### Database Layer
|
|
52
|
+
|
|
53
|
+
#### Task Group 1: Data Models and Migrations
|
|
54
|
+
**Dependencies:** None
|
|
55
|
+
|
|
56
|
+
- [ ] 1.0 Complete database layer
|
|
57
|
+
- [ ] 1.1 Write 2-8 focused tests for [Model] functionality
|
|
58
|
+
- Limit to 2-8 highly focused tests maximum
|
|
59
|
+
- Test only critical model behaviors (e.g., primary validation, key association, core method)
|
|
60
|
+
- Skip exhaustive coverage of all methods and edge cases
|
|
61
|
+
- [ ] 1.2 Create [Model] with validations
|
|
62
|
+
- Fields: [list]
|
|
63
|
+
- Validations: [list]
|
|
64
|
+
- Reuse pattern from: [existing model if applicable]
|
|
65
|
+
- [ ] 1.3 Create migration for [table]
|
|
66
|
+
- Add indexes for: [fields]
|
|
67
|
+
- Foreign keys: [relationships]
|
|
68
|
+
- [ ] 1.4 Set up associations
|
|
69
|
+
- [Model] has_many [related]
|
|
70
|
+
- [Model] belongs_to [parent]
|
|
71
|
+
- [ ] 1.5 Ensure database layer tests pass
|
|
72
|
+
- Run ONLY the 2-8 tests written in 1.1
|
|
73
|
+
- Verify migrations run successfully
|
|
74
|
+
- Do NOT run the entire test suite at this stage
|
|
75
|
+
|
|
76
|
+
**Acceptance Criteria:**
|
|
77
|
+
- The 2-8 tests written in 1.1 pass
|
|
78
|
+
- Models pass validation tests
|
|
79
|
+
- Migrations run successfully
|
|
80
|
+
- Associations work correctly
|
|
81
|
+
|
|
82
|
+
### API Layer
|
|
83
|
+
|
|
84
|
+
#### Task Group 2: API Endpoints
|
|
85
|
+
**Dependencies:** Task Group 1
|
|
86
|
+
|
|
87
|
+
- [ ] 2.0 Complete API layer
|
|
88
|
+
- [ ] 2.1 Write 2-8 focused tests for API endpoints
|
|
89
|
+
- Limit to 2-8 highly focused tests maximum
|
|
90
|
+
- Test only critical controller actions (e.g., primary CRUD operation, auth check, key error case)
|
|
91
|
+
- Skip exhaustive testing of all actions and scenarios
|
|
92
|
+
- [ ] 2.2 Create [resource] controller
|
|
93
|
+
- Actions: index, show, create, update, destroy
|
|
94
|
+
- Follow pattern from: [existing controller]
|
|
95
|
+
- [ ] 2.3 Implement authentication/authorization
|
|
96
|
+
- Use existing auth pattern
|
|
97
|
+
- Add permission checks
|
|
98
|
+
- [ ] 2.4 Add API response formatting
|
|
99
|
+
- JSON responses
|
|
100
|
+
- Error handling
|
|
101
|
+
- Status codes
|
|
102
|
+
- [ ] 2.5 Ensure API layer tests pass
|
|
103
|
+
- Run ONLY the 2-8 tests written in 2.1
|
|
104
|
+
- Verify critical CRUD operations work
|
|
105
|
+
- Do NOT run the entire test suite at this stage
|
|
106
|
+
|
|
107
|
+
**Acceptance Criteria:**
|
|
108
|
+
- The 2-8 tests written in 2.1 pass
|
|
109
|
+
- All CRUD operations work
|
|
110
|
+
- Proper authorization enforced
|
|
111
|
+
- Consistent response format
|
|
112
|
+
|
|
113
|
+
### Frontend Components
|
|
114
|
+
|
|
115
|
+
#### Task Group 3: UI Design
|
|
116
|
+
**Dependencies:** Task Group 2
|
|
117
|
+
|
|
118
|
+
- [ ] 3.0 Complete UI components
|
|
119
|
+
- [ ] 3.1 Write 2-8 focused tests for UI components
|
|
120
|
+
- Limit to 2-8 highly focused tests maximum
|
|
121
|
+
- Test only critical component behaviors (e.g., primary user interaction, key form submission, main rendering case)
|
|
122
|
+
- Skip exhaustive testing of all component states and interactions
|
|
123
|
+
- [ ] 3.2 Create [Component] component
|
|
124
|
+
- Reuse: [existing component] as base
|
|
125
|
+
- Props: [list]
|
|
126
|
+
- State: [list]
|
|
127
|
+
- [ ] 3.3 Implement [Feature] form
|
|
128
|
+
- Fields: [list]
|
|
129
|
+
- Validation: client-side
|
|
130
|
+
- Submit handling
|
|
131
|
+
- [ ] 3.4 Build [View] page
|
|
132
|
+
- Layout: [description]
|
|
133
|
+
- Components: [list]
|
|
134
|
+
- Match mockup: `planning/visuals/[file]`
|
|
135
|
+
- [ ] 3.5 Apply base styles
|
|
136
|
+
- Follow existing design system
|
|
137
|
+
- Use variables from: [style file]
|
|
138
|
+
- [ ] 3.6 Implement responsive design
|
|
139
|
+
- Mobile: 320px - 768px
|
|
140
|
+
- Tablet: 768px - 1024px
|
|
141
|
+
- Desktop: 1024px+
|
|
142
|
+
- [ ] 3.7 Add interactions and animations
|
|
143
|
+
- Hover states
|
|
144
|
+
- Transitions
|
|
145
|
+
- Loading states
|
|
146
|
+
- [ ] 3.8 Ensure UI component tests pass
|
|
147
|
+
- Run ONLY the 2-8 tests written in 3.1
|
|
148
|
+
- Verify critical component behaviors work
|
|
149
|
+
- Do NOT run the entire test suite at this stage
|
|
150
|
+
|
|
151
|
+
**Acceptance Criteria:**
|
|
152
|
+
- The 2-8 tests written in 3.1 pass
|
|
153
|
+
- Components render correctly
|
|
154
|
+
- Forms validate and submit
|
|
155
|
+
- Matches visual design
|
|
156
|
+
|
|
157
|
+
### Testing
|
|
158
|
+
|
|
159
|
+
#### Task Group 4: Test Review & Gap Analysis
|
|
160
|
+
**Dependencies:** Task Groups 1-3
|
|
161
|
+
|
|
162
|
+
- [ ] 4.0 Review existing tests and fill critical gaps only
|
|
163
|
+
- [ ] 4.1 Review tests from Task Groups 1-3
|
|
164
|
+
- Review the 2-8 tests written by database-engineer (Task 1.1)
|
|
165
|
+
- Review the 2-8 tests written by api-engineer (Task 2.1)
|
|
166
|
+
- Review the 2-8 tests written by ui-designer (Task 3.1)
|
|
167
|
+
- Total existing tests: approximately 6-24 tests
|
|
168
|
+
- [ ] 4.2 Analyze test coverage gaps for THIS feature only
|
|
169
|
+
- Identify critical user workflows that lack test coverage
|
|
170
|
+
- Focus ONLY on gaps related to this spec's feature requirements
|
|
171
|
+
- Do NOT assess entire application test coverage
|
|
172
|
+
- Prioritize end-to-end workflows over unit test gaps
|
|
173
|
+
- [ ] 4.3 Write up to 10 additional strategic tests maximum
|
|
174
|
+
- Add maximum of 10 new tests to fill identified critical gaps
|
|
175
|
+
- Focus on integration points and end-to-end workflows
|
|
176
|
+
- Do NOT write comprehensive coverage for all scenarios
|
|
177
|
+
- Skip edge cases, performance tests, and accessibility tests unless business-critical
|
|
178
|
+
- [ ] 4.4 Run feature-specific tests only
|
|
179
|
+
- Run ONLY tests related to this spec's feature (tests from 1.1, 2.1, 3.1, and 4.3)
|
|
180
|
+
- Expected total: approximately 16-34 tests maximum
|
|
181
|
+
- Do NOT run the entire application test suite
|
|
182
|
+
- Verify critical workflows pass
|
|
183
|
+
|
|
184
|
+
**Acceptance Criteria:**
|
|
185
|
+
- All feature-specific tests pass (approximately 16-34 tests total)
|
|
186
|
+
- Critical user workflows for this feature are covered
|
|
187
|
+
- No more than 10 additional tests added when filling in testing gaps
|
|
188
|
+
- Testing focused exclusively on this spec's feature requirements
|
|
189
|
+
|
|
190
|
+
## Execution Order
|
|
191
|
+
|
|
192
|
+
Recommended implementation sequence:
|
|
193
|
+
1. Database Layer (Task Group 1)
|
|
194
|
+
2. API Layer (Task Group 2)
|
|
195
|
+
3. Frontend Design (Task Group 3)
|
|
196
|
+
4. Test Review & Gap Analysis (Task Group 4)
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
**Note**: Adapt this structure based on the actual feature requirements. Some features may need:
|
|
200
|
+
- Different task groups (e.g., email notifications, payment processing, data migration)
|
|
201
|
+
- Different execution order based on dependencies
|
|
202
|
+
- More or fewer sub-tasks per group
|
|
203
|
+
|
|
204
|
+
## Important Constraints
|
|
205
|
+
|
|
206
|
+
- **Create tasks that are specific and verifiable**
|
|
207
|
+
- **Group related tasks** for efficient specialists implementer assignment. For example, group back-end engineering tasks together and front-end UI tasks together.
|
|
208
|
+
- **Limit test writing during development**:
|
|
209
|
+
- Each task group (1-3) should write 2-8 focused tests maximum
|
|
210
|
+
- Tests should cover only critical behaviors, not exhaustive coverage
|
|
211
|
+
- Test verification should run ONLY the newly written tests, not the entire suite
|
|
212
|
+
- If there is a dedicated test coverage group for filling in gaps in test coverage, this group should add only a maximum of 10 additional tests IF NECESSARY to fill critical gaps
|
|
213
|
+
- **Use a focused test-driven approach** where each task group starts with writing 2-8 tests (x.1 sub-task) and ends with running ONLY those tests (final sub-task)
|
|
214
|
+
- **Include acceptance criteria** for each task group
|
|
215
|
+
- **Reference visual assets** if visuals are available
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
## User Standards & Preferences Compliance
|
|
219
|
+
|
|
220
|
+
IMPORTANT: Ensure that the tasks list you create IS ALIGNED and DOES NOT CONFLICT with any of user's preferred tech stack, coding conventions, or common patterns as detailed in the following files:
|
|
221
|
+
|
|
222
|
+
@.sublation-os/standards/backend/api.md
|
|
223
|
+
@.sublation-os/standards/backend/migrations.md
|
|
224
|
+
@.sublation-os/standards/backend/models.md
|
|
225
|
+
@.sublation-os/standards/backend/queries.md
|
|
226
|
+
@.sublation-os/standards/frontend/accessibility.md
|
|
227
|
+
@.sublation-os/standards/frontend/components.md
|
|
228
|
+
@.sublation-os/standards/frontend/css.md
|
|
229
|
+
@.sublation-os/standards/frontend/responsive.md
|
|
230
|
+
@.sublation-os/standards/global/coding-style.md
|
|
231
|
+
@.sublation-os/standards/global/commenting.md
|
|
232
|
+
@.sublation-os/standards/global/conventions.md
|
|
233
|
+
@.sublation-os/standards/global/error-handling.md
|
|
234
|
+
@.sublation-os/standards/global/tech-stack.md
|
|
235
|
+
@.sublation-os/standards/global/validation.md
|
|
236
|
+
@.sublation-os/standards/testing/test-writing.md
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Fetch PR comments and address them systematically
|
|
3
|
+
model: sonnet
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Address PR Comments
|
|
7
|
+
|
|
8
|
+
You are tasked with fetching all comments from the current pull request and addressing them systematically.
|
|
9
|
+
|
|
10
|
+
## Instructions
|
|
11
|
+
|
|
12
|
+
1. **Fetch PR Information**
|
|
13
|
+
- Use `gh pr view --json number` to get the current PR number
|
|
14
|
+
- If no PR exists for the current branch, inform the user and stop
|
|
15
|
+
|
|
16
|
+
2. **Fetch PR Comments**
|
|
17
|
+
- Use `gh api repos/:owner/:repo/pulls/{PR_NUMBER}/comments` to get review comments
|
|
18
|
+
- Use `gh pr view --json comments` to get general PR comments
|
|
19
|
+
- Parse and organize comments by file and line number where applicable
|
|
20
|
+
|
|
21
|
+
3. **Analyze Comments**
|
|
22
|
+
- Read each comment carefully
|
|
23
|
+
- Categorize comments by type:
|
|
24
|
+
- Code changes required
|
|
25
|
+
- Questions to clarify
|
|
26
|
+
- Suggestions for improvement
|
|
27
|
+
- Informational/acknowledgments
|
|
28
|
+
- Prioritize actionable comments
|
|
29
|
+
|
|
30
|
+
4. **Create Action Plan**
|
|
31
|
+
- Use the TodoWrite tool to create a structured task list with:
|
|
32
|
+
- Each actionable comment as a separate task
|
|
33
|
+
- File path and line number references where applicable
|
|
34
|
+
- Brief description of what needs to be addressed
|
|
35
|
+
- Group related comments together
|
|
36
|
+
|
|
37
|
+
5. **Address Each Comment**
|
|
38
|
+
- Work through the todo list systematically
|
|
39
|
+
- For each comment:
|
|
40
|
+
- Read the relevant code using serena tools (find_symbol, get_symbols_overview)
|
|
41
|
+
- Make the requested changes or improvements
|
|
42
|
+
- If clarification is needed, note it for the user
|
|
43
|
+
- Mark the todo as completed once addressed
|
|
44
|
+
|
|
45
|
+
6. **Verify Changes**
|
|
46
|
+
- After addressing all comments, run relevant tests
|
|
47
|
+
- Ensure code builds successfully
|
|
48
|
+
- Review the changes to confirm all comments have been addressed
|
|
49
|
+
|
|
50
|
+
7. **Summary Report**
|
|
51
|
+
- Provide a summary of:
|
|
52
|
+
- Total comments found
|
|
53
|
+
- Comments addressed
|
|
54
|
+
- Comments requiring user input/clarification
|
|
55
|
+
- Any comments skipped and why
|
|
56
|
+
- Suggest next steps (e.g., respond to reviewers, push changes)
|
|
57
|
+
|
|
58
|
+
## Guidelines
|
|
59
|
+
|
|
60
|
+
- Be thorough but efficient - use serena's symbolic tools to read only necessary code
|
|
61
|
+
- If a comment is unclear, ask the user for clarification before making changes
|
|
62
|
+
- Respect the reviewer's intent - if unsure, err on the side of asking
|
|
63
|
+
- Follow the project's coding standards and patterns (check CLAUDE.md context)
|
|
64
|
+
- Test your changes after addressing comments when possible
|
|
65
|
+
- For .NET code, ensure you follow Clean Architecture and DDD principles
|
|
66
|
+
|
|
67
|
+
## Output Format
|
|
68
|
+
|
|
69
|
+
Provide clear feedback after each step:
|
|
70
|
+
- "Found X comments on PR #Y"
|
|
71
|
+
- "Created todo list with Z actionable items"
|
|
72
|
+
- "Addressing comment: {comment summary}"
|
|
73
|
+
- "Completed: {what was changed}"
|
|
74
|
+
- Final summary with all changes made
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Generate a commit message based on code changes
|
|
3
|
+
model: haiku
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Generate Commit Message
|
|
7
|
+
|
|
8
|
+
You are tasked with analyzing the current code changes and generating an appropriate commit message following the project's conventions.
|
|
9
|
+
|
|
10
|
+
## Instructions
|
|
11
|
+
|
|
12
|
+
1. **Analyze Changes**
|
|
13
|
+
- Run `git status` to see modified/added/deleted files
|
|
14
|
+
- Run `git diff --staged` to see staged changes (if any)
|
|
15
|
+
- Run `git diff` to see unstaged changes
|
|
16
|
+
- Identify the scope and nature of changes
|
|
17
|
+
|
|
18
|
+
2. **Review Recent Commits**
|
|
19
|
+
- Run `git log --oneline -10` to see recent commit message patterns
|
|
20
|
+
- Note the project's commit message format (appears to use conventional commits)
|
|
21
|
+
|
|
22
|
+
3. **Categorize Changes**
|
|
23
|
+
- Determine the change type:
|
|
24
|
+
- `feat` - New feature
|
|
25
|
+
- `fix` - Bug fix
|
|
26
|
+
- `refactor` - Code refactoring
|
|
27
|
+
- `test` - Adding or updating tests
|
|
28
|
+
- `docs` - Documentation changes
|
|
29
|
+
- `chore` - Build, dependencies, or tooling
|
|
30
|
+
- `perf` - Performance improvements
|
|
31
|
+
- `style` - Code style/formatting
|
|
32
|
+
- Identify the affected service/pillar (e.g., work, contacts, accounting)
|
|
33
|
+
|
|
34
|
+
4. **Generate Commit Message**
|
|
35
|
+
Format: `{type}({scope}): {description}`
|
|
36
|
+
|
|
37
|
+
Examples from this repo:
|
|
38
|
+
- `feat(work): Add bulk reset status endpoint`
|
|
39
|
+
- `fix(contacts): Resolve email validation issue`
|
|
40
|
+
- `refactor(accounting): Simplify invoice calculation logic`
|
|
41
|
+
|
|
42
|
+
Guidelines:
|
|
43
|
+
- Keep description concise (50-72 chars for first line)
|
|
44
|
+
- Use imperative mood ("Add" not "Added" or "Adds")
|
|
45
|
+
- Focus on WHAT and WHY, not HOW
|
|
46
|
+
- Be specific but brief
|
|
47
|
+
- No period at the end of the subject line
|
|
48
|
+
- If changes span multiple files/areas, focus on the primary purpose
|
|
49
|
+
|
|
50
|
+
5. **Add Body (Optional)**
|
|
51
|
+
- If the change is complex, add a blank line and detailed body
|
|
52
|
+
- Explain WHY the change was made
|
|
53
|
+
- Reference any tickets/issues: `Refs: OTT-852`
|
|
54
|
+
- Break lines at 72 characters
|
|
55
|
+
|
|
56
|
+
6. **Output Format**
|
|
57
|
+
Provide the commit message in a code block that can be easily copied:
|
|
58
|
+
|
|
59
|
+
```
|
|
60
|
+
{type}({scope}): {description}
|
|
61
|
+
|
|
62
|
+
{optional body}
|
|
63
|
+
|
|
64
|
+
{optional footer with refs/breaking changes}
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Example Output
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
feat(work): Add GetBulkResetStatus endpoint with workTemplatePermaKey support
|
|
71
|
+
|
|
72
|
+
Enable querying bulk reset status by either bulkUpdatePermaKey or
|
|
73
|
+
workTemplatePermaKey. Updated validation to ensure exactly one key
|
|
74
|
+
is provided. Added comprehensive test coverage.
|
|
75
|
+
|
|
76
|
+
Refs: OTT-852
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## Notes
|
|
80
|
+
|
|
81
|
+
- If no changes are staged, analyze unstaged changes
|
|
82
|
+
- If changes are trivial (whitespace, comments), suggest a simpler message
|
|
83
|
+
- If changes span multiple concerns, recommend splitting into separate commits
|
|
84
|
+
- Follow the existing patterns in the codebase (check recent git log)
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Task List Creation Process
|
|
2
|
+
|
|
3
|
+
You are creating a tasks breakdown from a given spec and requirements for a new feature.
|
|
4
|
+
|
|
5
|
+
## PHASE 1: Get and read the spec.md and/or requirements document(s)
|
|
6
|
+
|
|
7
|
+
You will need ONE OR BOTH of these files to inform your tasks breakdown:
|
|
8
|
+
- `.sublation-os/specs/[this-spec]/spec.md`
|
|
9
|
+
- `.sublation-os/specs/[this-spec]/planning/requirements.md`
|
|
10
|
+
|
|
11
|
+
IF you don't have ONE OR BOTH of those files in your current conversation context, then ask user to provide direction on where to you can find them by outputting the following request then wait for user's response:
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
I'll need a spec.md or requirements.md (or both) in order to build a tasks list.
|
|
15
|
+
|
|
16
|
+
Please direct me to where I can find those. If you haven't created them yet, you can run /shape-spec or /write-spec.
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## PHASE 2: Create tasks.md
|
|
20
|
+
|
|
21
|
+
Once you have `spec.md` AND/OR `requirements.md`, use the **tasks-list-creator** subagent to break down the spec and requirements into an actionable tasks list with strategic grouping and ordering.
|
|
22
|
+
|
|
23
|
+
Provide the tasks-list-creator:
|
|
24
|
+
- `.sublation-os/specs/[this-spec]/spec.md` (if present)
|
|
25
|
+
- `.sublation-os/specs/[this-spec]/planning/requirements.md` (if present)
|
|
26
|
+
- `.sublation-os/specs/[this-spec]/planning/visuals/` and its' contents (if present)
|
|
27
|
+
|
|
28
|
+
The tasks-list-creator will create `tasks.md` inside the spec folder.
|
|
29
|
+
|
|
30
|
+
## PHASE 3: Inform user
|
|
31
|
+
|
|
32
|
+
Once the tasks-list-creator has created `tasks.md` output the following to inform the user:
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
Your tasks list ready!
|
|
36
|
+
|
|
37
|
+
✅ Tasks list created: `.sublation-os/specs/[this-spec]/tasks.md`
|
|
38
|
+
|
|
39
|
+
NEXT STEP 👉 Run `/implement-tasks` (simple, effective) or `/orchestrate-tasks` (advanced, powerful) to start building!
|
|
40
|
+
```
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# Spec Implementation Process
|
|
2
|
+
|
|
3
|
+
Now that we have a spec and tasks list ready for implementation, we will proceed with implementation of this spec by following this multi-phase process:
|
|
4
|
+
|
|
5
|
+
PHASE 1: Determine which task group(s) from tasks.md should be implemented
|
|
6
|
+
PHASE 2: Delegate implementation to the implementer subagent
|
|
7
|
+
PHASE 3: After ALL task groups have been implemented, delegate to implementation-verifier to produce the final verification report.
|
|
8
|
+
|
|
9
|
+
Follow each of these phases and their individual workflows IN SEQUENCE:
|
|
10
|
+
|
|
11
|
+
## Multi-Phase Process
|
|
12
|
+
|
|
13
|
+
### PHASE 1: Determine which task group(s) to implement
|
|
14
|
+
|
|
15
|
+
First, check if the user has already provided instructions about which task group(s) to implement.
|
|
16
|
+
|
|
17
|
+
**If the user HAS provided instructions:** Proceed to PHASE 2 to delegate implementation of those specified task group(s) to the **implementer** subagent.
|
|
18
|
+
|
|
19
|
+
**If the user has NOT provided instructions:**
|
|
20
|
+
|
|
21
|
+
Read `.sublation-os/specs/[this-spec]/tasks.md` to review the available task groups, then output the following message to the user and WAIT for their response:
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
Should we proceed with implementation of all task groups in tasks.md?
|
|
25
|
+
|
|
26
|
+
If not, then please specify which task(s) to implement.
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
### PHASE 2: Delegate implementation to the implementer subagent
|
|
30
|
+
|
|
31
|
+
Delegate to the **implementer** subagent to implement the specified task group(s):
|
|
32
|
+
|
|
33
|
+
Provide to the subagent:
|
|
34
|
+
- The specific task group(s) from `.sublation-os/specs/[this-spec]/tasks.md` including the parent task, all sub-tasks, and any sub-bullet points
|
|
35
|
+
- The path to this spec's documentation: `.sublation-os/specs/[this-spec]/spec.md`
|
|
36
|
+
- The path to this spec's requirements: `.sublation-os/specs/[this-spec]/planning/requirements.md`
|
|
37
|
+
- The path to this spec's visuals (if any): `.sublation-os/specs/[this-spec]/planning/visuals`
|
|
38
|
+
|
|
39
|
+
Instruct the subagent to:
|
|
40
|
+
1. Analyze the provided spec.md, requirements.md, and visuals (if any)
|
|
41
|
+
2. Analyze patterns in the codebase according to its built-in workflow
|
|
42
|
+
3. Implement the assigned task group according to requirements and standards
|
|
43
|
+
4. Update `.sublation-os/specs/[this-spec]/tasks.md` to mark completed tasks with `- [x]`
|
|
44
|
+
|
|
45
|
+
### PHASE 3: Produce the final verification report
|
|
46
|
+
|
|
47
|
+
IF ALL task groups in tasks.md are marked complete with `- [x]`, then proceed with this step. Otherwise, return to PHASE 1.
|
|
48
|
+
|
|
49
|
+
Assuming all tasks are marked complete, then delegate to the **implementation-verifier** subagent to do its implementation verification and produce its final verification report.
|
|
50
|
+
|
|
51
|
+
Provide to the subagent the following:
|
|
52
|
+
- The path to this spec: `.sublation-os/specs/[this-spec]`
|
|
53
|
+
Instruct the subagent to do the following:
|
|
54
|
+
1. Run all of its final verifications according to its built-in workflow
|
|
55
|
+
2. Produce the final verification report in `.sublation-os/specs/[this-spec]/verifications/final-verification.md`.
|