@wbern/claude-instructions 1.3.0 → 1.5.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.
Files changed (39) hide show
  1. package/README.md +47 -13
  2. package/bin/cli.js +32 -8
  3. package/downloads/with-beads/add-command.md +2 -2
  4. package/downloads/with-beads/ask.md +14 -5
  5. package/downloads/with-beads/busycommit.md +56 -0
  6. package/downloads/with-beads/commands-metadata.json +5 -0
  7. package/downloads/with-beads/commit.md +0 -20
  8. package/downloads/with-beads/cycle.md +4 -1
  9. package/downloads/with-beads/gap.md +9 -6
  10. package/downloads/with-beads/green.md +4 -1
  11. package/downloads/with-beads/issue.md +3 -0
  12. package/downloads/with-beads/red.md +4 -0
  13. package/downloads/with-beads/refactor.md +4 -1
  14. package/downloads/with-beads/ship.md +7 -3
  15. package/downloads/with-beads/show.md +8 -2
  16. package/downloads/with-beads/spike.md +3 -0
  17. package/downloads/with-beads/summarize.md +3 -1
  18. package/downloads/with-beads/tdd.md +3 -0
  19. package/downloads/with-beads/worktree-add.md +1 -1
  20. package/downloads/with-beads/worktree-cleanup.md +2 -0
  21. package/downloads/without-beads/add-command.md +2 -2
  22. package/downloads/without-beads/ask.md +14 -5
  23. package/downloads/without-beads/busycommit.md +56 -0
  24. package/downloads/without-beads/commands-metadata.json +5 -0
  25. package/downloads/without-beads/commit.md +0 -20
  26. package/downloads/without-beads/cycle.md +4 -1
  27. package/downloads/without-beads/gap.md +8 -5
  28. package/downloads/without-beads/green.md +4 -1
  29. package/downloads/without-beads/issue.md +3 -0
  30. package/downloads/without-beads/red.md +4 -0
  31. package/downloads/without-beads/refactor.md +4 -1
  32. package/downloads/without-beads/ship.md +7 -3
  33. package/downloads/without-beads/show.md +8 -2
  34. package/downloads/without-beads/spike.md +3 -0
  35. package/downloads/without-beads/summarize.md +3 -1
  36. package/downloads/without-beads/tdd.md +3 -0
  37. package/downloads/without-beads/worktree-add.md +1 -1
  38. package/downloads/without-beads/worktree-cleanup.md +2 -0
  39. package/package.json +11 -4
@@ -1,5 +1,5 @@
1
1
  ---
2
- allowed-tools: mcp__github__*, Bash(git:*)
2
+ allowed-tools: mcp__github__create_pull_request, mcp__github__update_pull_request, Bash(git status:*), Bash(git log:*), Bash(git push:*), Bash(git branch:*)
3
3
  description: Show code to team with auto-merge - for changes that should be visible but don't need approval (Cursor's modern workflow)
4
4
  argument-hint: [optional-pr-title-and-description]
5
5
  ---
@@ -18,6 +18,7 @@ argument-hint: [optional-pr-title-and-description]
18
18
  > 🚀 **Cursor says**: Not every change needs a traditional review. Show your work, then merge.
19
19
 
20
20
  Show is for changes that teammates should see, but don't require approval. Examples:
21
+
21
22
  - Refactoring with test coverage
22
23
  - New features with comprehensive tests
23
24
  - Performance improvements
@@ -26,6 +27,7 @@ Show is for changes that teammates should see, but don't require approval. Examp
26
27
  ## Prerequisites
27
28
 
28
29
  Before using show:
30
+
29
31
  1. All tests must pass
30
32
  2. Changes should have good test coverage
31
33
  3. Changes should be non-breaking or backward compatible
@@ -60,6 +62,7 @@ Arguments: $ARGUMENTS
60
62
  - Add notice that feedback is welcome but not required
61
63
 
62
64
  4. **PR Description Template**:
65
+
63
66
  ```markdown
64
67
  ## 🚀 Show - Auto-merging after CI
65
68
 
@@ -71,12 +74,15 @@ Arguments: $ARGUMENTS
71
74
  -->
72
75
 
73
76
  ### What changed
77
+
74
78
  [Brief description]
75
79
 
76
80
  ### Why
81
+
77
82
  [Rationale for change]
78
83
 
79
84
  ### Test coverage
85
+
80
86
  - [ ] All tests pass
81
87
  - [ ] Coverage maintained/improved
82
88
  - [ ] No breaking changes
@@ -87,6 +93,7 @@ Arguments: $ARGUMENTS
87
93
  ## Decision Guide
88
94
 
89
95
  Use **Show** when:
96
+
90
97
  - ✅ Tests are comprehensive
91
98
  - ✅ Changes are non-breaking
92
99
  - ✅ You're confident in the approach
@@ -104,4 +111,3 @@ Use Beads MCP to:
104
111
  - Track dependencies with `bd dep add`
105
112
 
106
113
  See https://github.com/steveyegge/beads for more information.
107
-
@@ -29,8 +29,11 @@ The foundation of TDD is the Red-Green-Refactor cycle:
29
29
 
30
30
  - The test must fail for the RIGHT reason (not syntax/import errors)
31
31
  - Only one test at a time - this is critical for TDD discipline
32
+ - Exception: For browser-level tests or expensive setup (e.g., Storybook `*.stories.tsx`), group multiple assertions within a single test block to avoid redundant setup - but only when adding assertions to an existing interaction flow. If new user interactions are required, still create a new test. Split files by category if they exceed ~1000 lines.
32
33
  - **Adding a single test to a test file is ALWAYS allowed** - no prior test output needed
33
34
  - Starting TDD for a new feature is always valid, even if test output shows unrelated work
35
+ - For DOM-based tests, use `data-testid` attributes to select elements rather than CSS classes, tag names, or text content
36
+ - Avoid hard-coded timeouts both in form of sleep() or timeout: 5000 etc; use proper async patterns (`waitFor`, `findBy*`, event-based sync) instead and rely on global test configs for timeout settings
34
37
 
35
38
  2. **Green Phase**: Write MINIMAL code to make the test pass
36
39
 
@@ -1,10 +1,12 @@
1
1
  ---
2
- allowed-tools: AskUserQuestion, mcp__beads__list, mcp__beads__stats
2
+ allowed-tools: AskUserQuestion
3
3
  description: Summarize conversation progress and next steps
4
4
  ---
5
5
 
6
6
  Create a concise summary of the current conversation suitable for transferring context to a new conversation.
7
7
 
8
+ Additional info: $ARGUMENTS
9
+
8
10
  ## Summary Structure
9
11
 
10
12
  Provide a summary with these sections:
@@ -23,8 +23,11 @@ The foundation of TDD is the Red-Green-Refactor cycle:
23
23
 
24
24
  - The test must fail for the RIGHT reason (not syntax/import errors)
25
25
  - Only one test at a time - this is critical for TDD discipline
26
+ - Exception: For browser-level tests or expensive setup (e.g., Storybook `*.stories.tsx`), group multiple assertions within a single test block to avoid redundant setup - but only when adding assertions to an existing interaction flow. If new user interactions are required, still create a new test. Split files by category if they exceed ~1000 lines.
26
27
  - **Adding a single test to a test file is ALWAYS allowed** - no prior test output needed
27
28
  - Starting TDD for a new feature is always valid, even if test output shows unrelated work
29
+ - For DOM-based tests, use `data-testid` attributes to select elements rather than CSS classes, tag names, or text content
30
+ - Avoid hard-coded timeouts both in form of sleep() or timeout: 5000 etc; use proper async patterns (`waitFor`, `findBy*`, event-based sync) instead and rely on global test configs for timeout settings
28
31
 
29
32
  2. **Green Phase**: Write MINIMAL code to make the test pass
30
33
 
@@ -69,7 +69,7 @@ Uncommitted changes: !git status --short`
69
69
 
70
70
  <step_2>
71
71
  <description>Parse the arguments</description>
72
- <input>$ARGUMENTS</input>
72
+ <input>The user-provided arguments</input>
73
73
  <expected_format>branch-name-or-github-url [optional-base-branch]</expected_format>
74
74
  <example>fix/issue-123-main-content-area-visually-clipped main</example>
75
75
  <example_github_url>https://github.com/owner/project/issues/123 main</example_github_url>
@@ -15,6 +15,8 @@ argument-hint: (no arguments)
15
15
 
16
16
  Clean up merged worktrees by finding the oldest merged branch, consolidating settings, and removing stale worktrees.
17
17
 
18
+ Additional info: $ARGUMENTS
19
+
18
20
  <current_state>
19
21
  Current branch: !git branch --show-current`
20
22
  Current worktrees: !git worktree list`
@@ -58,7 +58,7 @@ echo "Review this code for bugs and suggest fixes" > ~/.claude/commands/review.m
58
58
 
59
59
  ### Command with Arguments
60
60
  ```markdown
61
- Fix issue #$ARGUMENTS following our coding standards
61
+ Fix issue #ARGUMENTS following our coding standards
62
62
  ```
63
63
 
64
64
  ### Command with File References
@@ -83,7 +83,7 @@ Create commit for these changes.
83
83
  ### Namespaced Command
84
84
  ```bash
85
85
  mkdir -p ~/.claude/commands/ai
86
- echo "Ask GPT-5 about: $ARGUMENTS" > ~/.claude/commands/ai/gpt5.md
86
+ echo "Ask GPT-5 about: ARGUMENTS" > ~/.claude/commands/ai/gpt5.md
87
87
  # Creates: /ai:gpt5
88
88
  ```
89
89
 
@@ -1,5 +1,5 @@
1
1
  ---
2
- allowed-tools: mcp__github__*, Bash(git:*)
2
+ allowed-tools: mcp__github__create_pull_request, mcp__github__update_pull_request, Bash(git status:*), Bash(git log:*), Bash(git push:*), Bash(git branch:*)
3
3
  description: Request team review and approval - for complex changes needing discussion (OK fine, traditional PRs still have their place - Cursor)
4
4
  argument-hint: [optional-pr-title-and-description]
5
5
  ---
@@ -18,6 +18,7 @@ argument-hint: [optional-pr-title-and-description]
18
18
  > 💭 **Cursor says**: Fine, SOME things still need traditional PRs. But be intentional about it.
19
19
 
20
20
  Ask is for complex changes that need team discussion and approval. Examples:
21
+
21
22
  - Breaking API changes
22
23
  - New architecture decisions
23
24
  - Significant feature additions
@@ -27,6 +28,7 @@ Ask is for complex changes that need team discussion and approval. Examples:
27
28
  ## When to Ask
28
29
 
29
30
  Use **Ask** when:
31
+
30
32
  - Changes affect multiple systems
31
33
  - Breaking changes are needed
32
34
  - You need input on approach
@@ -54,10 +56,11 @@ Arguments: $ARGUMENTS
54
56
  - Push to remote: `git push origin [branch-name]`
55
57
 
56
58
  2. **Create Ask PR**: Create a PR that clearly needs review
57
-
59
+
58
60
  Title: conventional commits format, prefixed with `[ASK]`
59
-
61
+
60
62
  Description template:
63
+
61
64
  ```markdown
62
65
  ## 🤔 Ask - Review and Approval Needed
63
66
 
@@ -68,32 +71,38 @@ Arguments: $ARGUMENTS
68
71
  -->
69
72
 
70
73
  ### What changed
74
+
71
75
  [Detailed description of changes]
72
76
 
73
77
  ### Why
78
+
74
79
  [Rationale and context]
75
80
 
76
81
  ### Questions for reviewers
82
+
77
83
  - [ ] Question 1
78
84
  - [ ] Question 2
79
85
 
80
86
  ### Concerns
87
+
81
88
  - Potential concern 1
82
89
  - Potential concern 2
83
90
 
84
91
  ### Test Plan
92
+
85
93
  - [ ] Unit tests
86
94
  - [ ] Integration tests
87
95
  - [ ] Manual testing steps
88
96
 
89
97
  ### Alternatives considered
98
+
90
99
  - Alternative 1: [why not chosen]
91
100
  - Alternative 2: [why not chosen]
92
101
  ```
93
102
 
94
103
  3. **Request Reviewers**: Assign specific reviewers who should weigh in
95
104
 
96
- 4. **Add Labels**:
105
+ 4. **Add Labels**:
97
106
  - "needs-review"
98
107
  - "breaking-change" (if applicable)
99
108
  - "security" (if applicable)
@@ -113,6 +122,7 @@ Arguments: $ARGUMENTS
113
122
  ## Decision Guide
114
123
 
115
124
  Use **Ask** when:
125
+
116
126
  - ✅ Change is complex or risky
117
127
  - ✅ Breaking changes involved
118
128
  - ✅ Need team input on approach
@@ -123,4 +133,3 @@ Use **/show** instead if: confident in approach, just want visibility
123
133
 
124
134
  Use **/ship** instead if: change is tiny, obvious, and safe
125
135
 
126
-
@@ -0,0 +1,56 @@
1
+ ---
2
+ allowed-tools: Bash(pnpm test:*), Bash(pnpm lint:*)
3
+ description: Create multiple atomic git commits, one logical change at a time
4
+ argument-hint: [optional-commit-description]
5
+ ---
6
+
7
+ Create multiple atomic git commits, committing the smallest possible logical unit at a time
8
+
9
+ Include any of the following info if specified: $ARGUMENTS
10
+
11
+
12
+
13
+
14
+ ## Process
15
+
16
+ 1. Run `git status` and `git diff` to review changes
17
+ 2. Run `git log --oneline -5` to see recent commit style
18
+ 3. Stage relevant files with `git add`
19
+ 4. Create commit with descriptive message
20
+ 5. Verify with `git status`
21
+
22
+ ## Example
23
+
24
+ ```bash
25
+ git add <files>
26
+ git commit -m "feat(#123): add validation to user input form"
27
+ ```
28
+
29
+ ## Atomic Commit Approach
30
+
31
+ Each commit should represent ONE logical change. Do NOT bundle multiple unrelated changes into one commit.
32
+
33
+ - Identify the smallest atomic units of change
34
+ - For EACH atomic unit: stage only those files/hunks, commit, verify
35
+ - Use `git add -p` to stage partial file changes when a file contains multiple logical changes
36
+ - Repeat until all changes are committed
37
+ - It is OK to create multiple commits without stopping - keep going until `git status` shows clean
38
+
39
+ ## Multi-Commit Example
40
+
41
+ If a single file contains multiple unrelated changes, use `git add -p` to stage hunks interactively:
42
+
43
+ ```bash
44
+ # Stage only the validation-related hunks from the file
45
+ git add -p src/user-service.ts
46
+ # Select 'y' for validation hunks, 'n' for others
47
+ git commit -m "feat(#123): add email format validation"
48
+
49
+ # Stage the error handling hunks
50
+ git add -p src/user-service.ts
51
+ git commit -m "fix(#124): handle null user gracefully"
52
+
53
+ # Stage remaining changes
54
+ git add src/user-service.ts
55
+ git commit -m "refactor: extract user lookup to helper"
56
+ ```
@@ -14,6 +14,11 @@
14
14
  "category": "Utilities",
15
15
  "order": 2
16
16
  },
17
+ "busycommit.md": {
18
+ "description": "Create multiple atomic git commits, one logical change at a time",
19
+ "category": "Workflow",
20
+ "order": 2
21
+ },
17
22
  "commit.md": {
18
23
  "description": "Create a git commit following project standards",
19
24
  "category": "Workflow",
@@ -8,28 +8,8 @@ Create a git commit following project standards
8
8
 
9
9
  Include any of the following info if specified: $ARGUMENTS
10
10
 
11
- ## General Guidelines
12
11
 
13
- ### Output Style
14
- - **Never explicitly mention TDD** in code, comments, commits, PRs, or issues
15
- - Write natural, descriptive code without meta-commentary about the development process
16
- - The code should speak for itself - TDD is the process, not the product
17
12
 
18
- ## Commit Message Rules
19
-
20
- Follows [Conventional Commits](https://www.conventionalcommits.org/) standard.
21
-
22
- 1. **Format**: `type(#issue): description`
23
- - Use `#123` for local repo issues
24
- - Use `owner/repo#123` for cross-repo issues
25
- - Common types: `feat`, `fix`, `docs`, `refactor`, `test`, `chore`
26
-
27
- 2. **AI Credits**: **NEVER include AI credits in commit messages**
28
- - No "Generated with Claude Code"
29
- - No "Co-Authored-By: Claude" or "Co-Authored-By: Happy"
30
- - Focus on the actual changes made, not conversation history
31
-
32
- 3. **Content**: Write clear, concise commit messages describing what changed and why
33
13
 
34
14
  ## Process
35
15
 
@@ -1,5 +1,5 @@
1
1
  ---
2
- allowed-tools: Read, Glob, Grep, Bash(pnpm test:*), Bash(pnpm:*)
2
+ allowed-tools: Read, Glob, Grep, Bash(pnpm test:*)
3
3
  description: Execute complete TDD cycle - Red, Green, and Refactor phases in sequence
4
4
  argument-hint: <feature or requirement description>
5
5
  ---
@@ -29,8 +29,11 @@ The foundation of TDD is the Red-Green-Refactor cycle:
29
29
 
30
30
  - The test must fail for the RIGHT reason (not syntax/import errors)
31
31
  - Only one test at a time - this is critical for TDD discipline
32
+ - Exception: For browser-level tests or expensive setup (e.g., Storybook `*.stories.tsx`), group multiple assertions within a single test block to avoid redundant setup - but only when adding assertions to an existing interaction flow. If new user interactions are required, still create a new test. Split files by category if they exceed ~1000 lines.
32
33
  - **Adding a single test to a test file is ALWAYS allowed** - no prior test output needed
33
34
  - Starting TDD for a new feature is always valid, even if test output shows unrelated work
35
+ - For DOM-based tests, use `data-testid` attributes to select elements rather than CSS classes, tag names, or text content
36
+ - Avoid hard-coded timeouts both in form of sleep() or timeout: 5000 etc; use proper async patterns (`waitFor`, `findBy*`, event-based sync) instead and rely on global test configs for timeout settings
34
37
 
35
38
  2. **Green Phase**: Write MINIMAL code to make the test pass
36
39
 
@@ -1,5 +1,4 @@
1
1
  ---
2
- allowed-tools: mcp__beads__list, mcp__beads__ready
3
2
  description: Analyze conversation context for unaddressed items and gaps
4
3
  ---
5
4
 
@@ -8,14 +7,18 @@ Analyze the current conversation context and identify things that have not yet b
8
7
  1. **Incomplete implementations** - Code that was started but not finished
9
8
  2. **Unused variables/results** - Values that were captured but never used
10
9
  3. **Missing tests** - Functionality without test coverage
11
- 5. **User requests** - Things the user asked for that weren't fully completed
12
- 6. **TODO comments** - Any TODOs mentioned in conversation
13
- 7. **Error handling gaps** - Missing error cases or edge cases
14
- 8. **Documentation gaps** - Undocumented APIs or features
10
+ 4. **User requests** - Things the user asked for that weren't fully completed
11
+ 5. **TODO comments** - Any TODOs mentioned in conversation
12
+ 6. **Error handling gaps** - Missing error cases or edge cases
13
+ 7. **Documentation gaps** - Undocumented APIs or features
15
14
 
16
15
  Present findings as a prioritized list with:
16
+
17
17
  - What the gap is
18
18
  - Why it matters
19
19
  - Suggested next action
20
20
 
21
21
  If there are no gaps, confirm that everything discussed has been addressed.
22
+
23
+ Additional info:
24
+ $ARGUMENTS
@@ -1,5 +1,5 @@
1
1
  ---
2
- allowed-tools: Read, Glob, Grep, Bash(pnpm test:*), Bash(pnpm:*)
2
+ allowed-tools: Read, Glob, Grep, Bash(pnpm test:*)
3
3
  description: Execute TDD Green Phase - write minimal implementation to pass the failing test
4
4
  argument-hint: <implementation description>
5
5
  ---
@@ -29,8 +29,11 @@ The foundation of TDD is the Red-Green-Refactor cycle:
29
29
 
30
30
  - The test must fail for the RIGHT reason (not syntax/import errors)
31
31
  - Only one test at a time - this is critical for TDD discipline
32
+ - Exception: For browser-level tests or expensive setup (e.g., Storybook `*.stories.tsx`), group multiple assertions within a single test block to avoid redundant setup - but only when adding assertions to an existing interaction flow. If new user interactions are required, still create a new test. Split files by category if they exceed ~1000 lines.
32
33
  - **Adding a single test to a test file is ALWAYS allowed** - no prior test output needed
33
34
  - Starting TDD for a new feature is always valid, even if test output shows unrelated work
35
+ - For DOM-based tests, use `data-testid` attributes to select elements rather than CSS classes, tag names, or text content
36
+ - Avoid hard-coded timeouts both in form of sleep() or timeout: 5000 etc; use proper async patterns (`waitFor`, `findBy*`, event-based sync) instead and rely on global test configs for timeout settings
34
37
 
35
38
  2. **Green Phase**: Write MINIMAL code to make the test pass
36
39
 
@@ -73,8 +73,11 @@ The foundation of TDD is the Red-Green-Refactor cycle:
73
73
 
74
74
  - The test must fail for the RIGHT reason (not syntax/import errors)
75
75
  - Only one test at a time - this is critical for TDD discipline
76
+ - Exception: For browser-level tests or expensive setup (e.g., Storybook `*.stories.tsx`), group multiple assertions within a single test block to avoid redundant setup - but only when adding assertions to an existing interaction flow. If new user interactions are required, still create a new test. Split files by category if they exceed ~1000 lines.
76
77
  - **Adding a single test to a test file is ALWAYS allowed** - no prior test output needed
77
78
  - Starting TDD for a new feature is always valid, even if test output shows unrelated work
79
+ - For DOM-based tests, use `data-testid` attributes to select elements rather than CSS classes, tag names, or text content
80
+ - Avoid hard-coded timeouts both in form of sleep() or timeout: 5000 etc; use proper async patterns (`waitFor`, `findBy*`, event-based sync) instead and rely on global test configs for timeout settings
78
81
 
79
82
  2. **Green Phase**: Write MINIMAL code to make the test pass
80
83
 
@@ -1,4 +1,5 @@
1
1
  ---
2
+ allowed-tools: Read, Glob, Grep, Bash(pnpm test:*)
2
3
  description: Execute TDD Red Phase - write ONE failing test
3
4
  ---
4
5
 
@@ -25,8 +26,11 @@ The foundation of TDD is the Red-Green-Refactor cycle:
25
26
 
26
27
  - The test must fail for the RIGHT reason (not syntax/import errors)
27
28
  - Only one test at a time - this is critical for TDD discipline
29
+ - Exception: For browser-level tests or expensive setup (e.g., Storybook `*.stories.tsx`), group multiple assertions within a single test block to avoid redundant setup - but only when adding assertions to an existing interaction flow. If new user interactions are required, still create a new test. Split files by category if they exceed ~1000 lines.
28
30
  - **Adding a single test to a test file is ALWAYS allowed** - no prior test output needed
29
31
  - Starting TDD for a new feature is always valid, even if test output shows unrelated work
32
+ - For DOM-based tests, use `data-testid` attributes to select elements rather than CSS classes, tag names, or text content
33
+ - Avoid hard-coded timeouts both in form of sleep() or timeout: 5000 etc; use proper async patterns (`waitFor`, `findBy*`, event-based sync) instead and rely on global test configs for timeout settings
30
34
 
31
35
  2. **Green Phase**: Write MINIMAL code to make the test pass
32
36
 
@@ -1,5 +1,5 @@
1
1
  ---
2
- allowed-tools: Read, Glob, Grep, Bash(pnpm test:*), Bash(pnpm:*)
2
+ allowed-tools: Read, Glob, Grep, Bash(pnpm test:*)
3
3
  description: Execute TDD Refactor Phase - improve code structure while keeping tests green
4
4
  argument-hint: <refactoring description>
5
5
  ---
@@ -27,8 +27,11 @@ The foundation of TDD is the Red-Green-Refactor cycle:
27
27
 
28
28
  - The test must fail for the RIGHT reason (not syntax/import errors)
29
29
  - Only one test at a time - this is critical for TDD discipline
30
+ - Exception: For browser-level tests or expensive setup (e.g., Storybook `*.stories.tsx`), group multiple assertions within a single test block to avoid redundant setup - but only when adding assertions to an existing interaction flow. If new user interactions are required, still create a new test. Split files by category if they exceed ~1000 lines.
30
31
  - **Adding a single test to a test file is ALWAYS allowed** - no prior test output needed
31
32
  - Starting TDD for a new feature is always valid, even if test output shows unrelated work
33
+ - For DOM-based tests, use `data-testid` attributes to select elements rather than CSS classes, tag names, or text content
34
+ - Avoid hard-coded timeouts both in form of sleep() or timeout: 5000 etc; use proper async patterns (`waitFor`, `findBy*`, event-based sync) instead and rely on global test configs for timeout settings
32
35
 
33
36
  2. **Green Phase**: Write MINIMAL code to make the test pass
34
37
 
@@ -1,5 +1,5 @@
1
1
  ---
2
- allowed-tools: mcp__github__*, Bash(git:*)
2
+ allowed-tools: Bash(git status:*), Bash(git log:*), Bash(git diff:*), Bash(git checkout:*), Bash(git pull:*), Bash(git merge:*), Bash(git push:*), Bash(git branch:*)
3
3
  description: Ship code directly to main - for small, obvious changes that don't need review (Cursor's modern alternative to PRs)
4
4
  argument-hint: [optional-commit-message]
5
5
  ---
@@ -18,6 +18,7 @@ argument-hint: [optional-commit-message]
18
18
  > 🎯 **Cursor says**: It's 2025! Not everything needs a PR. Ship small, obvious changes directly.
19
19
 
20
20
  Ship is for small, obvious changes that don't need code review. Examples:
21
+
21
22
  - Typo fixes
22
23
  - Formatting changes
23
24
  - Documentation updates
@@ -27,6 +28,7 @@ Ship is for small, obvious changes that don't need code review. Examples:
27
28
  ## Prerequisites
28
29
 
29
30
  Before shipping directly to main:
31
+
30
32
  1. All tests must pass
31
33
  2. Linter must pass
32
34
  3. Changes must be small and low-risk
@@ -57,10 +59,11 @@ Arguments: $ARGUMENTS
57
59
  - Is this a small, obvious change?
58
60
  - Do all tests pass?
59
61
  - Is CI green?
60
-
62
+
61
63
  If ANY of these are "no", suggest using `/show` or `/ask` instead.
62
64
 
63
65
  5. **Merge to Main**: If all checks pass and user confirms:
66
+
64
67
  ```bash
65
68
  git checkout main
66
69
  git pull origin main
@@ -69,6 +72,7 @@ Arguments: $ARGUMENTS
69
72
  ```
70
73
 
71
74
  6. **Cleanup**: Delete the feature branch
75
+
72
76
  ```bash
73
77
  git branch -d [feature-branch]
74
78
  git push origin --delete [feature-branch]
@@ -79,7 +83,7 @@ Arguments: $ARGUMENTS
79
83
  ## Safety Rails
80
84
 
81
85
  If tests fail, linter fails, or changes are large/complex, STOP and suggest:
86
+
82
87
  - Use `/show` for changes that should be seen but don't need approval
83
88
  - Use `/ask` (traditional PR) for complex changes needing discussion
84
89
 
85
-
@@ -1,5 +1,5 @@
1
1
  ---
2
- allowed-tools: mcp__github__*, Bash(git:*)
2
+ allowed-tools: mcp__github__create_pull_request, mcp__github__update_pull_request, Bash(git status:*), Bash(git log:*), Bash(git push:*), Bash(git branch:*)
3
3
  description: Show code to team with auto-merge - for changes that should be visible but don't need approval (Cursor's modern workflow)
4
4
  argument-hint: [optional-pr-title-and-description]
5
5
  ---
@@ -18,6 +18,7 @@ argument-hint: [optional-pr-title-and-description]
18
18
  > 🚀 **Cursor says**: Not every change needs a traditional review. Show your work, then merge.
19
19
 
20
20
  Show is for changes that teammates should see, but don't require approval. Examples:
21
+
21
22
  - Refactoring with test coverage
22
23
  - New features with comprehensive tests
23
24
  - Performance improvements
@@ -26,6 +27,7 @@ Show is for changes that teammates should see, but don't require approval. Examp
26
27
  ## Prerequisites
27
28
 
28
29
  Before using show:
30
+
29
31
  1. All tests must pass
30
32
  2. Changes should have good test coverage
31
33
  3. Changes should be non-breaking or backward compatible
@@ -60,6 +62,7 @@ Arguments: $ARGUMENTS
60
62
  - Add notice that feedback is welcome but not required
61
63
 
62
64
  4. **PR Description Template**:
65
+
63
66
  ```markdown
64
67
  ## 🚀 Show - Auto-merging after CI
65
68
 
@@ -71,12 +74,15 @@ Arguments: $ARGUMENTS
71
74
  -->
72
75
 
73
76
  ### What changed
77
+
74
78
  [Brief description]
75
79
 
76
80
  ### Why
81
+
77
82
  [Rationale for change]
78
83
 
79
84
  ### Test coverage
85
+
80
86
  - [ ] All tests pass
81
87
  - [ ] Coverage maintained/improved
82
88
  - [ ] No breaking changes
@@ -87,6 +93,7 @@ Arguments: $ARGUMENTS
87
93
  ## Decision Guide
88
94
 
89
95
  Use **Show** when:
96
+
90
97
  - ✅ Tests are comprehensive
91
98
  - ✅ Changes are non-breaking
92
99
  - ✅ You're confident in the approach
@@ -96,4 +103,3 @@ Use **/ship** instead if: change is tiny and obvious (typo, formatting)
96
103
 
97
104
  Use **/ask** instead if: change needs discussion, breaks APIs, or you're uncertain
98
105
 
99
-
@@ -29,8 +29,11 @@ The foundation of TDD is the Red-Green-Refactor cycle:
29
29
 
30
30
  - The test must fail for the RIGHT reason (not syntax/import errors)
31
31
  - Only one test at a time - this is critical for TDD discipline
32
+ - Exception: For browser-level tests or expensive setup (e.g., Storybook `*.stories.tsx`), group multiple assertions within a single test block to avoid redundant setup - but only when adding assertions to an existing interaction flow. If new user interactions are required, still create a new test. Split files by category if they exceed ~1000 lines.
32
33
  - **Adding a single test to a test file is ALWAYS allowed** - no prior test output needed
33
34
  - Starting TDD for a new feature is always valid, even if test output shows unrelated work
35
+ - For DOM-based tests, use `data-testid` attributes to select elements rather than CSS classes, tag names, or text content
36
+ - Avoid hard-coded timeouts both in form of sleep() or timeout: 5000 etc; use proper async patterns (`waitFor`, `findBy*`, event-based sync) instead and rely on global test configs for timeout settings
34
37
 
35
38
  2. **Green Phase**: Write MINIMAL code to make the test pass
36
39
 
@@ -1,10 +1,12 @@
1
1
  ---
2
- allowed-tools: AskUserQuestion, mcp__beads__list, mcp__beads__stats
2
+ allowed-tools: AskUserQuestion
3
3
  description: Summarize conversation progress and next steps
4
4
  ---
5
5
 
6
6
  Create a concise summary of the current conversation suitable for transferring context to a new conversation.
7
7
 
8
+ Additional info: $ARGUMENTS
9
+
8
10
  ## Summary Structure
9
11
 
10
12
  Provide a summary with these sections:
@@ -23,8 +23,11 @@ The foundation of TDD is the Red-Green-Refactor cycle:
23
23
 
24
24
  - The test must fail for the RIGHT reason (not syntax/import errors)
25
25
  - Only one test at a time - this is critical for TDD discipline
26
+ - Exception: For browser-level tests or expensive setup (e.g., Storybook `*.stories.tsx`), group multiple assertions within a single test block to avoid redundant setup - but only when adding assertions to an existing interaction flow. If new user interactions are required, still create a new test. Split files by category if they exceed ~1000 lines.
26
27
  - **Adding a single test to a test file is ALWAYS allowed** - no prior test output needed
27
28
  - Starting TDD for a new feature is always valid, even if test output shows unrelated work
29
+ - For DOM-based tests, use `data-testid` attributes to select elements rather than CSS classes, tag names, or text content
30
+ - Avoid hard-coded timeouts both in form of sleep() or timeout: 5000 etc; use proper async patterns (`waitFor`, `findBy*`, event-based sync) instead and rely on global test configs for timeout settings
28
31
 
29
32
  2. **Green Phase**: Write MINIMAL code to make the test pass
30
33
 
@@ -69,7 +69,7 @@ Uncommitted changes: !git status --short`
69
69
 
70
70
  <step_2>
71
71
  <description>Parse the arguments</description>
72
- <input>$ARGUMENTS</input>
72
+ <input>The user-provided arguments</input>
73
73
  <expected_format>branch-name-or-github-url [optional-base-branch]</expected_format>
74
74
  <example>fix/issue-123-main-content-area-visually-clipped main</example>
75
75
  <example_github_url>https://github.com/owner/project/issues/123 main</example_github_url>
@@ -15,6 +15,8 @@ argument-hint: (no arguments)
15
15
 
16
16
  Clean up merged worktrees by finding the oldest merged branch, consolidating settings, and removing stale worktrees.
17
17
 
18
+ Additional info: $ARGUMENTS
19
+
18
20
  <current_state>
19
21
  Current branch: !git branch --show-current`
20
22
  Current worktrees: !git worktree list`