bps-kit 1.0.7 → 1.0.8
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 +19 -6
- package/bin/cli.js +27 -16
- package/package.json +1 -1
- package/templates/VAULT_INDEX.md +2 -2
- package/templates/agents-template/rules/GEMINI.md +4 -4
- package/templates/agents-template/scripts/convert_to_vscode.js +87 -0
- package/templates/skills_basic/behavioral-modes/SKILL.md +247 -0
- package/templates/skills_basic/brainstorming/SKILL.md +232 -0
- package/templates/skills_basic/clean-code/SKILL.md +94 -0
- package/templates/skills_basic/concise-planning/SKILL.md +68 -0
- package/templates/skills_basic/executing-plans/SKILL.md +82 -0
- package/templates/skills_basic/git-pushing/SKILL.md +36 -0
- package/templates/skills_basic/git-pushing/scripts/smart_commit.sh +19 -0
- package/templates/skills_basic/lint-and-validate/SKILL.md +50 -0
- package/templates/skills_basic/lint-and-validate/scripts/lint_runner.py +172 -0
- package/templates/skills_basic/lint-and-validate/scripts/type_coverage.py +173 -0
- package/templates/skills_basic/plan-writing/SKILL.md +154 -0
- package/templates/skills_basic/systematic-debugging/CREATION-LOG.md +119 -0
- package/templates/skills_basic/systematic-debugging/SKILL.md +299 -0
- package/templates/skills_basic/systematic-debugging/condition-based-waiting-example.ts +158 -0
- package/templates/skills_basic/systematic-debugging/condition-based-waiting.md +115 -0
- package/templates/skills_basic/systematic-debugging/defense-in-depth.md +122 -0
- package/templates/skills_basic/systematic-debugging/find-polluter.sh +63 -0
- package/templates/skills_basic/systematic-debugging/root-cause-tracing.md +169 -0
- package/templates/skills_basic/systematic-debugging/test-academic.md +14 -0
- package/templates/skills_basic/systematic-debugging/test-pressure-1.md +58 -0
- package/templates/skills_basic/systematic-debugging/test-pressure-2.md +68 -0
- package/templates/skills_basic/systematic-debugging/test-pressure-3.md +69 -0
- package/templates/skills_basic/verification-before-completion/SKILL.md +145 -0
- package/templates/skills_basic/vulnerability-scanner/SKILL.md +281 -0
- package/templates/skills_basic/vulnerability-scanner/checklists.md +121 -0
- package/templates/skills_basic/vulnerability-scanner/scripts/security_scan.py +458 -0
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: brainstorming
|
|
3
|
+
description: "Use before creative or constructive work (features, architecture, behavior). Transforms vague ideas into validated designs through disciplined reasoning and collaboration."
|
|
4
|
+
risk: unknown
|
|
5
|
+
source: community
|
|
6
|
+
date_added: "2026-02-27"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Brainstorming Ideas Into Designs
|
|
10
|
+
|
|
11
|
+
## Purpose
|
|
12
|
+
|
|
13
|
+
Turn raw ideas into **clear, validated designs and specifications**
|
|
14
|
+
through structured dialogue **before any implementation begins**.
|
|
15
|
+
|
|
16
|
+
This skill exists to prevent:
|
|
17
|
+
- premature implementation
|
|
18
|
+
- hidden assumptions
|
|
19
|
+
- misaligned solutions
|
|
20
|
+
- fragile systems
|
|
21
|
+
|
|
22
|
+
You are **not allowed** to implement, code, or modify behavior while this skill is active.
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## Operating Mode
|
|
27
|
+
|
|
28
|
+
You are operating as a **design facilitator and senior reviewer**, not a builder.
|
|
29
|
+
|
|
30
|
+
- No creative implementation
|
|
31
|
+
- No speculative features
|
|
32
|
+
- No silent assumptions
|
|
33
|
+
- No skipping ahead
|
|
34
|
+
|
|
35
|
+
Your job is to **slow the process down just enough to get it right**.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## The Process
|
|
40
|
+
|
|
41
|
+
### 1️⃣ Understand the Current Context (Mandatory First Step)
|
|
42
|
+
|
|
43
|
+
Before asking any questions:
|
|
44
|
+
|
|
45
|
+
- Review the current project state (if available):
|
|
46
|
+
- files
|
|
47
|
+
- documentation
|
|
48
|
+
- plans
|
|
49
|
+
- prior decisions
|
|
50
|
+
- Identify what already exists vs. what is proposed
|
|
51
|
+
- Note constraints that appear implicit but unconfirmed
|
|
52
|
+
|
|
53
|
+
**Do not design yet.**
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
### 2️⃣ Understanding the Idea (One Question at a Time)
|
|
58
|
+
|
|
59
|
+
Your goal here is **shared clarity**, not speed.
|
|
60
|
+
|
|
61
|
+
**Rules:**
|
|
62
|
+
|
|
63
|
+
- Ask **one question per message**
|
|
64
|
+
- Prefer **multiple-choice questions** when possible
|
|
65
|
+
- Use open-ended questions only when necessary
|
|
66
|
+
- If a topic needs depth, split it into multiple questions
|
|
67
|
+
|
|
68
|
+
Focus on understanding:
|
|
69
|
+
|
|
70
|
+
- purpose
|
|
71
|
+
- target users
|
|
72
|
+
- constraints
|
|
73
|
+
- success criteria
|
|
74
|
+
- explicit non-goals
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
### 3️⃣ Non-Functional Requirements (Mandatory)
|
|
79
|
+
|
|
80
|
+
You MUST explicitly clarify or propose assumptions for:
|
|
81
|
+
|
|
82
|
+
- Performance expectations
|
|
83
|
+
- Scale (users, data, traffic)
|
|
84
|
+
- Security or privacy constraints
|
|
85
|
+
- Reliability / availability needs
|
|
86
|
+
- Maintenance and ownership expectations
|
|
87
|
+
|
|
88
|
+
If the user is unsure:
|
|
89
|
+
|
|
90
|
+
- Propose reasonable defaults
|
|
91
|
+
- Clearly mark them as **assumptions**
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
### 4️⃣ Understanding Lock (Hard Gate)
|
|
96
|
+
|
|
97
|
+
Before proposing **any design**, you MUST pause and do the following:
|
|
98
|
+
|
|
99
|
+
#### Understanding Summary
|
|
100
|
+
Provide a concise summary (5–7 bullets) covering:
|
|
101
|
+
- What is being built
|
|
102
|
+
- Why it exists
|
|
103
|
+
- Who it is for
|
|
104
|
+
- Key constraints
|
|
105
|
+
- Explicit non-goals
|
|
106
|
+
|
|
107
|
+
#### Assumptions
|
|
108
|
+
List all assumptions explicitly.
|
|
109
|
+
|
|
110
|
+
#### Open Questions
|
|
111
|
+
List unresolved questions, if any.
|
|
112
|
+
|
|
113
|
+
Then ask:
|
|
114
|
+
|
|
115
|
+
> “Does this accurately reflect your intent?
|
|
116
|
+
> Please confirm or correct anything before we move to design.”
|
|
117
|
+
|
|
118
|
+
**Do NOT proceed until explicit confirmation is given.**
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
### 5️⃣ Explore Design Approaches
|
|
123
|
+
|
|
124
|
+
Once understanding is confirmed:
|
|
125
|
+
|
|
126
|
+
- Propose **2–3 viable approaches**
|
|
127
|
+
- Lead with your **recommended option**
|
|
128
|
+
- Explain trade-offs clearly:
|
|
129
|
+
- complexity
|
|
130
|
+
- extensibility
|
|
131
|
+
- risk
|
|
132
|
+
- maintenance
|
|
133
|
+
- Avoid premature optimization (**YAGNI ruthlessly**)
|
|
134
|
+
|
|
135
|
+
This is still **not** final design.
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
### 6️⃣ Present the Design (Incrementally)
|
|
140
|
+
|
|
141
|
+
When presenting the design:
|
|
142
|
+
|
|
143
|
+
- Break it into sections of **200–300 words max**
|
|
144
|
+
- After each section, ask:
|
|
145
|
+
|
|
146
|
+
> “Does this look right so far?”
|
|
147
|
+
|
|
148
|
+
Cover, as relevant:
|
|
149
|
+
|
|
150
|
+
- Architecture
|
|
151
|
+
- Components
|
|
152
|
+
- Data flow
|
|
153
|
+
- Error handling
|
|
154
|
+
- Edge cases
|
|
155
|
+
- Testing strategy
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
### 7️⃣ Decision Log (Mandatory)
|
|
160
|
+
|
|
161
|
+
Maintain a running **Decision Log** throughout the design discussion.
|
|
162
|
+
|
|
163
|
+
For each decision:
|
|
164
|
+
- What was decided
|
|
165
|
+
- Alternatives considered
|
|
166
|
+
- Why this option was chosen
|
|
167
|
+
|
|
168
|
+
This log should be preserved for documentation.
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
## After the Design
|
|
173
|
+
|
|
174
|
+
### 📄 Documentation
|
|
175
|
+
|
|
176
|
+
Once the design is validated:
|
|
177
|
+
|
|
178
|
+
- Write the final design to a durable, shared format (e.g. Markdown)
|
|
179
|
+
- Include:
|
|
180
|
+
- Understanding summary
|
|
181
|
+
- Assumptions
|
|
182
|
+
- Decision log
|
|
183
|
+
- Final design
|
|
184
|
+
|
|
185
|
+
Persist the document according to the project’s standard workflow.
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
### 🛠️ Implementation Handoff (Optional)
|
|
190
|
+
|
|
191
|
+
Only after documentation is complete, ask:
|
|
192
|
+
|
|
193
|
+
> “Ready to set up for implementation?”
|
|
194
|
+
|
|
195
|
+
If yes:
|
|
196
|
+
- Create an explicit implementation plan
|
|
197
|
+
- Isolate work if the workflow supports it
|
|
198
|
+
- Proceed incrementally
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## Exit Criteria (Hard Stop Conditions)
|
|
203
|
+
|
|
204
|
+
You may exit brainstorming mode **only when all of the following are true**:
|
|
205
|
+
|
|
206
|
+
- Understanding Lock has been confirmed
|
|
207
|
+
- At least one design approach is explicitly accepted
|
|
208
|
+
- Major assumptions are documented
|
|
209
|
+
- Key risks are acknowledged
|
|
210
|
+
- Decision Log is complete
|
|
211
|
+
|
|
212
|
+
If any criterion is unmet:
|
|
213
|
+
- Continue refinement
|
|
214
|
+
- **Do NOT proceed to implementation**
|
|
215
|
+
|
|
216
|
+
---
|
|
217
|
+
|
|
218
|
+
## Key Principles (Non-Negotiable)
|
|
219
|
+
|
|
220
|
+
- One question at a time
|
|
221
|
+
- Assumptions must be explicit
|
|
222
|
+
- Explore alternatives
|
|
223
|
+
- Validate incrementally
|
|
224
|
+
- Prefer clarity over cleverness
|
|
225
|
+
- Be willing to go back and clarify
|
|
226
|
+
- **YAGNI ruthlessly**
|
|
227
|
+
|
|
228
|
+
---
|
|
229
|
+
If the design is high-impact, high-risk, or requires elevated confidence, you MUST hand off the finalized design and Decision Log to the `multi-agent-brainstorming` skill before implementation.
|
|
230
|
+
|
|
231
|
+
## When to Use
|
|
232
|
+
This skill is applicable to execute the workflow or actions described in the overview.
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: clean-code
|
|
3
|
+
description: "Applies principles from Robert C. Martin's 'Clean Code'. Use this skill when writing, reviewing, or refactoring code to ensure high quality, readability, and maintainability. Covers naming, functio..."
|
|
4
|
+
risk: safe
|
|
5
|
+
source: "ClawForge (https://github.com/jackjin1997/ClawForge)"
|
|
6
|
+
date_added: "2026-02-27"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Clean Code Skill
|
|
10
|
+
|
|
11
|
+
This skill embodies the principles of "Clean Code" by Robert C. Martin (Uncle Bob). Use it to transform "code that works" into "code that is clean."
|
|
12
|
+
|
|
13
|
+
## 🧠 Core Philosophy
|
|
14
|
+
> "Code is clean if it can be read, and enhanced by a developer other than its original author." — Grady Booch
|
|
15
|
+
|
|
16
|
+
## When to Use
|
|
17
|
+
Use this skill when:
|
|
18
|
+
- **Writing new code**: To ensure high quality from the start.
|
|
19
|
+
- **Reviewing Pull Requests**: To provide constructive, principle-based feedback.
|
|
20
|
+
- **Refactoring legacy code**: To identify and remove code smells.
|
|
21
|
+
- **Improving team standards**: To align on industry-standard best practices.
|
|
22
|
+
|
|
23
|
+
## 1. Meaningful Names
|
|
24
|
+
- **Use Intention-Revealing Names**: `elapsedTimeInDays` instead of `d`.
|
|
25
|
+
- **Avoid Disinformation**: Don't use `accountList` if it's actually a `Map`.
|
|
26
|
+
- **Make Meaningful Distinctions**: Avoid `ProductData` vs `ProductInfo`.
|
|
27
|
+
- **Use Pronounceable/Searchable Names**: Avoid `genymdhms`.
|
|
28
|
+
- **Class Names**: Use nouns (`Customer`, `WikiPage`). Avoid `Manager`, `Data`.
|
|
29
|
+
- **Method Names**: Use verbs (`postPayment`, `deletePage`).
|
|
30
|
+
|
|
31
|
+
## 2. Functions
|
|
32
|
+
- **Small!**: Functions should be shorter than you think.
|
|
33
|
+
- **Do One Thing**: A function should do only one thing, and do it well.
|
|
34
|
+
- **One Level of Abstraction**: Don't mix high-level business logic with low-level details (like regex).
|
|
35
|
+
- **Descriptive Names**: `isPasswordValid` is better than `check`.
|
|
36
|
+
- **Arguments**: 0 is ideal, 1-2 is okay, 3+ requires a very strong justification.
|
|
37
|
+
- **No Side Effects**: Functions shouldn't secretly change global state.
|
|
38
|
+
|
|
39
|
+
## 3. Comments
|
|
40
|
+
- **Don't Comment Bad Code—Rewrite It**: Most comments are a sign of failure to express ourselves in code.
|
|
41
|
+
- **Explain Yourself in Code**:
|
|
42
|
+
```python
|
|
43
|
+
# Check if employee is eligible for full benefits
|
|
44
|
+
if employee.flags & HOURLY and employee.age > 65:
|
|
45
|
+
```
|
|
46
|
+
vs
|
|
47
|
+
```python
|
|
48
|
+
if employee.isEligibleForFullBenefits():
|
|
49
|
+
```
|
|
50
|
+
- **Good Comments**: Legal, Informative (regex intent), Clarification (external libraries), TODOs.
|
|
51
|
+
- **Bad Comments**: Mumbling, Redundant, Misleading, Mandated, Noise, Position Markers.
|
|
52
|
+
|
|
53
|
+
## 4. Formatting
|
|
54
|
+
- **The Newspaper Metaphor**: High-level concepts at the top, details at the bottom.
|
|
55
|
+
- **Vertical Density**: Related lines should be close to each other.
|
|
56
|
+
- **Distance**: Variables should be declared near their usage.
|
|
57
|
+
- **Indentation**: Essential for structural readability.
|
|
58
|
+
|
|
59
|
+
## 5. Objects and Data Structures
|
|
60
|
+
- **Data Abstraction**: Hide the implementation behind interfaces.
|
|
61
|
+
- **The Law of Demeter**: A module should not know about the innards of the objects it manipulates. Avoid `a.getB().getC().doSomething()`.
|
|
62
|
+
- **Data Transfer Objects (DTO)**: Classes with public variables and no functions.
|
|
63
|
+
|
|
64
|
+
## 6. Error Handling
|
|
65
|
+
- **Use Exceptions instead of Return Codes**: Keeps logic clean.
|
|
66
|
+
- **Write Try-Catch-Finally First**: Defines the scope of the operation.
|
|
67
|
+
- **Don't Return Null**: It forces the caller to check for null every time.
|
|
68
|
+
- **Don't Pass Null**: Leads to `NullPointerException`.
|
|
69
|
+
|
|
70
|
+
## 7. Unit Tests
|
|
71
|
+
- **The Three Laws of TDD**:
|
|
72
|
+
1. Don't write production code until you have a failing unit test.
|
|
73
|
+
2. Don't write more of a unit test than is sufficient to fail.
|
|
74
|
+
3. Don't write more production code than is sufficient to pass the failing test.
|
|
75
|
+
- **F.I.R.S.T. Principles**: Fast, Independent, Repeatable, Self-Validating, Timely.
|
|
76
|
+
|
|
77
|
+
## 8. Classes
|
|
78
|
+
- **Small!**: Classes should have a single responsibility (SRP).
|
|
79
|
+
- **The Stepdown Rule**: We want the code to read like a top-down narrative.
|
|
80
|
+
|
|
81
|
+
## 9. Smells and Heuristics
|
|
82
|
+
- **Rigidity**: Hard to change.
|
|
83
|
+
- **Fragility**: Breaks in many places.
|
|
84
|
+
- **Immobility**: Hard to reuse.
|
|
85
|
+
- **Viscosity**: Hard to do the right thing.
|
|
86
|
+
- **Needless Complexity/Repetition**.
|
|
87
|
+
|
|
88
|
+
## 🛠️ Implementation Checklist
|
|
89
|
+
- [ ] Is this function smaller than 20 lines?
|
|
90
|
+
- [ ] Does this function do exactly one thing?
|
|
91
|
+
- [ ] Are all names searchable and intention-revealing?
|
|
92
|
+
- [ ] Have I avoided comments by making the code clearer?
|
|
93
|
+
- [ ] Am I passing too many arguments?
|
|
94
|
+
- [ ] Is there a failing test for this change?
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: concise-planning
|
|
3
|
+
description: "Use when a user asks for a plan for a coding task, to generate a clear, actionable, and atomic checklist."
|
|
4
|
+
risk: unknown
|
|
5
|
+
source: community
|
|
6
|
+
date_added: "2026-02-27"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Concise Planning
|
|
10
|
+
|
|
11
|
+
## Goal
|
|
12
|
+
|
|
13
|
+
Turn a user request into a **single, actionable plan** with atomic steps.
|
|
14
|
+
|
|
15
|
+
## Workflow
|
|
16
|
+
|
|
17
|
+
### 1. Scan Context
|
|
18
|
+
|
|
19
|
+
- Read `README.md`, docs, and relevant code files.
|
|
20
|
+
- Identify constraints (language, frameworks, tests).
|
|
21
|
+
|
|
22
|
+
### 2. Minimal Interaction
|
|
23
|
+
|
|
24
|
+
- Ask **at most 1–2 questions** and only if truly blocking.
|
|
25
|
+
- Make reasonable assumptions for non-blocking unknowns.
|
|
26
|
+
|
|
27
|
+
### 3. Generate Plan
|
|
28
|
+
|
|
29
|
+
Use the following structure:
|
|
30
|
+
|
|
31
|
+
- **Approach**: 1-3 sentences on what and why.
|
|
32
|
+
- **Scope**: Bullet points for "In" and "Out".
|
|
33
|
+
- **Action Items**: A list of 6-10 atomic, ordered tasks (Verb-first).
|
|
34
|
+
- **Validation**: At least one item for testing.
|
|
35
|
+
|
|
36
|
+
## Plan Template
|
|
37
|
+
|
|
38
|
+
```markdown
|
|
39
|
+
# Plan
|
|
40
|
+
|
|
41
|
+
<High-level approach>
|
|
42
|
+
|
|
43
|
+
## Scope
|
|
44
|
+
|
|
45
|
+
- In:
|
|
46
|
+
- Out:
|
|
47
|
+
|
|
48
|
+
## Action Items
|
|
49
|
+
|
|
50
|
+
[ ] <Step 1: Discovery>
|
|
51
|
+
[ ] <Step 2: Implementation>
|
|
52
|
+
[ ] <Step 3: Implementation>
|
|
53
|
+
[ ] <Step 4: Validation/Testing>
|
|
54
|
+
[ ] <Step 5: Rollout/Commit>
|
|
55
|
+
|
|
56
|
+
## Open Questions
|
|
57
|
+
|
|
58
|
+
- <Question 1 (max 3)>
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## Checklist Guidelines
|
|
62
|
+
|
|
63
|
+
- **Atomic**: Each step should be a single logical unit of work.
|
|
64
|
+
- **Verb-first**: "Add...", "Refactor...", "Verify...".
|
|
65
|
+
- **Concrete**: Name specific files or modules when possible.
|
|
66
|
+
|
|
67
|
+
## When to Use
|
|
68
|
+
This skill is applicable to execute the workflow or actions described in the overview.
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: executing-plans
|
|
3
|
+
description: "Use when you have a written implementation plan to execute in a separate session with review checkpoints"
|
|
4
|
+
risk: unknown
|
|
5
|
+
source: community
|
|
6
|
+
date_added: "2026-02-27"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Executing Plans
|
|
10
|
+
|
|
11
|
+
## Overview
|
|
12
|
+
|
|
13
|
+
Load plan, review critically, execute tasks in batches, report for review between batches.
|
|
14
|
+
|
|
15
|
+
**Core principle:** Batch execution with checkpoints for architect review.
|
|
16
|
+
|
|
17
|
+
**Announce at start:** "I'm using the executing-plans skill to implement this plan."
|
|
18
|
+
|
|
19
|
+
## The Process
|
|
20
|
+
|
|
21
|
+
### Step 1: Load and Review Plan
|
|
22
|
+
1. Read plan file
|
|
23
|
+
2. Review critically - identify any questions or concerns about the plan
|
|
24
|
+
3. If concerns: Raise them with your human partner before starting
|
|
25
|
+
4. If no concerns: Create TodoWrite and proceed
|
|
26
|
+
|
|
27
|
+
### Step 2: Execute Batch
|
|
28
|
+
**Default: First 3 tasks**
|
|
29
|
+
|
|
30
|
+
For each task:
|
|
31
|
+
1. Mark as in_progress
|
|
32
|
+
2. Follow each step exactly (plan has bite-sized steps)
|
|
33
|
+
3. Run verifications as specified
|
|
34
|
+
4. Mark as completed
|
|
35
|
+
|
|
36
|
+
### Step 3: Report
|
|
37
|
+
When batch complete:
|
|
38
|
+
- Show what was implemented
|
|
39
|
+
- Show verification output
|
|
40
|
+
- Say: "Ready for feedback."
|
|
41
|
+
|
|
42
|
+
### Step 4: Continue
|
|
43
|
+
Based on feedback:
|
|
44
|
+
- Apply changes if needed
|
|
45
|
+
- Execute next batch
|
|
46
|
+
- Repeat until complete
|
|
47
|
+
|
|
48
|
+
### Step 5: Complete Development
|
|
49
|
+
|
|
50
|
+
After all tasks complete and verified:
|
|
51
|
+
- Announce: "I'm using the finishing-a-development-branch skill to complete this work."
|
|
52
|
+
- **REQUIRED SUB-SKILL:** Use superpowers:finishing-a-development-branch
|
|
53
|
+
- Follow that skill to verify tests, present options, execute choice
|
|
54
|
+
|
|
55
|
+
## When to Stop and Ask for Help
|
|
56
|
+
|
|
57
|
+
**STOP executing immediately when:**
|
|
58
|
+
- Hit a blocker mid-batch (missing dependency, test fails, instruction unclear)
|
|
59
|
+
- Plan has critical gaps preventing starting
|
|
60
|
+
- You don't understand an instruction
|
|
61
|
+
- Verification fails repeatedly
|
|
62
|
+
|
|
63
|
+
**Ask for clarification rather than guessing.**
|
|
64
|
+
|
|
65
|
+
## When to Revisit Earlier Steps
|
|
66
|
+
|
|
67
|
+
**Return to Review (Step 1) when:**
|
|
68
|
+
- Partner updates the plan based on your feedback
|
|
69
|
+
- Fundamental approach needs rethinking
|
|
70
|
+
|
|
71
|
+
**Don't force through blockers** - stop and ask.
|
|
72
|
+
|
|
73
|
+
## Remember
|
|
74
|
+
- Review plan critically first
|
|
75
|
+
- Follow plan steps exactly
|
|
76
|
+
- Don't skip verifications
|
|
77
|
+
- Reference skills when plan says to
|
|
78
|
+
- Between batches: just report and wait
|
|
79
|
+
- Stop when blocked, don't guess
|
|
80
|
+
|
|
81
|
+
## When to Use
|
|
82
|
+
This skill is applicable to execute the workflow or actions described in the overview.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: git-pushing
|
|
3
|
+
description: "Stage, commit, and push git changes with conventional commit messages. Use when user wants to commit and push changes, mentions pushing to remote, or asks to save and push their work. Also activate..."
|
|
4
|
+
risk: unknown
|
|
5
|
+
source: community
|
|
6
|
+
date_added: "2026-02-27"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Git Push Workflow
|
|
10
|
+
|
|
11
|
+
Stage all changes, create a conventional commit, and push to the remote branch.
|
|
12
|
+
|
|
13
|
+
## When to Use
|
|
14
|
+
|
|
15
|
+
Automatically activate when the user:
|
|
16
|
+
|
|
17
|
+
- Explicitly asks to push changes ("push this", "commit and push")
|
|
18
|
+
- Mentions saving work to remote ("save to github", "push to remote")
|
|
19
|
+
- Completes a feature and wants to share it
|
|
20
|
+
- Says phrases like "let's push this up" or "commit these changes"
|
|
21
|
+
|
|
22
|
+
## Workflow
|
|
23
|
+
|
|
24
|
+
**ALWAYS use the script** - do NOT use manual git commands:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
bash skills/git-pushing/scripts/smart_commit.sh
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
With custom message:
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
bash skills/git-pushing/scripts/smart_commit.sh "feat: add feature"
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Script handles: staging, conventional commit message, Claude footer, push with -u flag.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
set -e
|
|
3
|
+
|
|
4
|
+
# Default commit message if none provided
|
|
5
|
+
MESSAGE="${1:-chore: update code}"
|
|
6
|
+
|
|
7
|
+
# Add all changes
|
|
8
|
+
git add .
|
|
9
|
+
|
|
10
|
+
# Commit with the provided message
|
|
11
|
+
git commit -m "$MESSAGE"
|
|
12
|
+
|
|
13
|
+
# Get current branch name
|
|
14
|
+
BRANCH=$(git rev-parse --abbrev-ref HEAD)
|
|
15
|
+
|
|
16
|
+
# Push to remote, setting upstream if needed
|
|
17
|
+
git push -u origin "$BRANCH"
|
|
18
|
+
|
|
19
|
+
echo "✅ Successfully pushed to $BRANCH"
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: lint-and-validate
|
|
3
|
+
description: "Automatic quality control, linting, and static analysis procedures. Use after every code modification to ensure syntax correctness and project standards. Triggers onKeywords: lint, format, check, v..."
|
|
4
|
+
risk: unknown
|
|
5
|
+
source: community
|
|
6
|
+
date_added: "2026-02-27"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Lint and Validate Skill
|
|
10
|
+
|
|
11
|
+
> **MANDATORY:** Run appropriate validation tools after EVERY code change. Do not finish a task until the code is error-free.
|
|
12
|
+
|
|
13
|
+
### Procedures by Ecosystem
|
|
14
|
+
|
|
15
|
+
#### Node.js / TypeScript
|
|
16
|
+
1. **Lint/Fix:** `npm run lint` or `npx eslint "path" --fix`
|
|
17
|
+
2. **Types:** `npx tsc --noEmit`
|
|
18
|
+
3. **Security:** `npm audit --audit-level=high`
|
|
19
|
+
|
|
20
|
+
#### Python
|
|
21
|
+
1. **Linter (Ruff):** `ruff check "path" --fix` (Fast & Modern)
|
|
22
|
+
2. **Security (Bandit):** `bandit -r "path" -ll`
|
|
23
|
+
3. **Types (MyPy):** `mypy "path"`
|
|
24
|
+
|
|
25
|
+
## The Quality Loop
|
|
26
|
+
1. **Write/Edit Code**
|
|
27
|
+
2. **Run Audit:** `npm run lint && npx tsc --noEmit`
|
|
28
|
+
3. **Analyze Report:** Check the "FINAL AUDIT REPORT" section.
|
|
29
|
+
4. **Fix & Repeat:** Submitting code with "FINAL AUDIT" failures is NOT allowed.
|
|
30
|
+
|
|
31
|
+
## Error Handling
|
|
32
|
+
- If `lint` fails: Fix the style or syntax issues immediately.
|
|
33
|
+
- If `tsc` fails: Correct type mismatches before proceeding.
|
|
34
|
+
- If no tool is configured: Check the project root for `.eslintrc`, `tsconfig.json`, `pyproject.toml` and suggest creating one.
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
**Strict Rule:** No code should be committed or reported as "done" without passing these checks.
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## Scripts
|
|
42
|
+
|
|
43
|
+
| Script | Purpose | Command |
|
|
44
|
+
|--------|---------|---------|
|
|
45
|
+
| `scripts/lint_runner.py` | Unified lint check | `python scripts/lint_runner.py <project_path>` |
|
|
46
|
+
| `scripts/type_coverage.py` | Type coverage analysis | `python scripts/type_coverage.py <project_path>` |
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
## When to Use
|
|
50
|
+
This skill is applicable to execute the workflow or actions described in the overview.
|