@caddis/cli 0.4.9 → 0.4.11

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 (74) hide show
  1. package/bundles/antigravity-plugin/agents/code-reviewer.md +2 -2
  2. package/bundles/antigravity-plugin/plugin.json +1 -1
  3. package/bundles/antigravity-plugin/scripts/enforcement_inventory.py +1 -1
  4. package/bundles/antigravity-plugin/scripts/oss_review.py +10 -2
  5. package/bundles/antigravity-plugin/skills/_registry.md +0 -1
  6. package/bundles/antigravity-plugin/skills/brainstorming/SKILL.md +2 -2
  7. package/bundles/antigravity-plugin/skills/cross-review/SKILL.md +5 -2
  8. package/bundles/antigravity-plugin/skills/explainer-doc/SKILL.md +1 -1
  9. package/bundles/antigravity-plugin/skills/ship-pr/SKILL.md +1 -1
  10. package/bundles/antigravity-plugin/skills/spawn-session/SKILL.md +2 -2
  11. package/bundles/antigravity-plugin-extras/plugin.json +1 -1
  12. package/bundles/antigravity-plugin-extras/skills/_registry.md +1 -19
  13. package/bundles/codex/.codex/skills/docs/explainer-doc/SKILL.md +1 -1
  14. package/bundles/codex/.codex/skills/workflow/brainstorming/SKILL.md +2 -2
  15. package/bundles/manifest.json +3 -3
  16. package/package.json +1 -1
  17. package/bundles/antigravity-plugin-extras/skills/competitive-ads-extractor/SKILL.md +0 -294
  18. package/bundles/antigravity-plugin-extras/skills/content-research-writer/SKILL.md +0 -539
  19. package/bundles/antigravity-plugin-extras/skills/domain-name-brainstormer/SKILL.md +0 -213
  20. package/bundles/antigravity-plugin-extras/skills/humanizer/SKILL.md +0 -194
  21. package/bundles/antigravity-plugin-extras/skills/image-enhancer/SKILL.md +0 -100
  22. package/bundles/antigravity-plugin-extras/skills/invoice-organizer/SKILL.md +0 -447
  23. package/bundles/antigravity-plugin-extras/skills/job-application/SKILL.md +0 -188
  24. package/bundles/antigravity-plugin-extras/skills/lead-research-assistant/SKILL.md +0 -200
  25. package/bundles/antigravity-plugin-extras/skills/meeting-insights-analyzer/SKILL.md +0 -328
  26. package/bundles/antigravity-plugin-extras/skills/notebooklm/AUTHENTICATION.md +0 -154
  27. package/bundles/antigravity-plugin-extras/skills/notebooklm/SKILL.md +0 -270
  28. package/bundles/antigravity-plugin-extras/skills/notebooklm/references/api_reference.md +0 -309
  29. package/bundles/antigravity-plugin-extras/skills/notebooklm/references/troubleshooting.md +0 -376
  30. package/bundles/antigravity-plugin-extras/skills/notebooklm/references/usage_patterns.md +0 -338
  31. package/bundles/antigravity-plugin-extras/skills/notebooklm/scripts/__init__.py +0 -81
  32. package/bundles/antigravity-plugin-extras/skills/notebooklm/scripts/ask_question.py +0 -256
  33. package/bundles/antigravity-plugin-extras/skills/notebooklm/scripts/auth_manager.py +0 -358
  34. package/bundles/antigravity-plugin-extras/skills/notebooklm/scripts/browser_session.py +0 -255
  35. package/bundles/antigravity-plugin-extras/skills/notebooklm/scripts/browser_utils.py +0 -107
  36. package/bundles/antigravity-plugin-extras/skills/notebooklm/scripts/cleanup_manager.py +0 -302
  37. package/bundles/antigravity-plugin-extras/skills/notebooklm/scripts/config.py +0 -44
  38. package/bundles/antigravity-plugin-extras/skills/notebooklm/scripts/notebook_manager.py +0 -410
  39. package/bundles/antigravity-plugin-extras/skills/notebooklm/scripts/run.py +0 -102
  40. package/bundles/antigravity-plugin-extras/skills/notebooklm/scripts/setup_environment.py +0 -204
  41. package/bundles/antigravity-plugin-extras/skills/onboard-project/SKILL.md +0 -192
  42. package/bundles/antigravity-plugin-extras/skills/pipeline-state/SKILL.md +0 -208
  43. package/bundles/antigravity-plugin-extras/skills/raffle-winner-picker/SKILL.md +0 -159
  44. package/bundles/antigravity-plugin-extras/skills/relay/SKILL.md +0 -246
  45. package/bundles/antigravity-plugin-extras/skills/requesting-code-review/SKILL.md +0 -105
  46. package/bundles/antigravity-plugin-extras/skills/requesting-code-review/code-reviewer.md +0 -146
  47. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/LICENSE.txt +0 -202
  48. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/SKILL.md +0 -646
  49. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/core/color_palettes.py +0 -302
  50. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/core/easing.py +0 -230
  51. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/core/frame_composer.py +0 -469
  52. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/core/gif_builder.py +0 -246
  53. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/core/typography.py +0 -357
  54. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/core/validators.py +0 -264
  55. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/core/visual_effects.py +0 -494
  56. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/requirements.txt +0 -4
  57. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/templates/bounce.py +0 -106
  58. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/templates/explode.py +0 -331
  59. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/templates/fade.py +0 -329
  60. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/templates/flip.py +0 -291
  61. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/templates/kaleidoscope.py +0 -211
  62. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/templates/morph.py +0 -329
  63. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/templates/move.py +0 -293
  64. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/templates/pulse.py +0 -268
  65. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/templates/shake.py +0 -127
  66. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/templates/slide.py +0 -291
  67. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/templates/spin.py +0 -269
  68. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/templates/wiggle.py +0 -300
  69. package/bundles/antigravity-plugin-extras/skills/slack-gif-creator/templates/zoom.py +0 -312
  70. package/bundles/antigravity-plugin-extras/skills/state-tracking/SKILL.md +0 -131
  71. package/bundles/antigravity-plugin-extras/skills/video-downloader/SKILL.md +0 -107
  72. package/bundles/antigravity-plugin-extras/skills/youtube-transcript/SKILL.md +0 -416
  73. package/bundles/codex/.codex/skills/workflow/golden-plan/SKILL.md +0 -586
  74. /package/bundles/{antigravity-plugin → antigravity-plugin-extras}/skills/golden-plan/SKILL.md +0 -0
@@ -1,159 +0,0 @@
1
- ---
2
- name: raffle-winner-picker
3
- description: Picks random winners from lists, spreadsheets, or Google Sheets for giveaways, raffles, and contests. Ensures fair, unbiased selection with transparency.
4
- ---
5
-
6
- # Raffle Winner Picker
7
-
8
- This skill randomly selects winners from lists, spreadsheets, or Google Sheets for giveaways and contests.
9
-
10
- ## When to Use This Skill
11
-
12
- - Running social media giveaways
13
- - Picking raffle winners at events
14
- - Randomly selecting participants for surveys or tests
15
- - Choosing winners from contest submissions
16
- - Fair distribution of limited spots or resources
17
- - Random team assignments
18
-
19
- ## What This Skill Does
20
-
21
- 1. **Random Selection**: Uses cryptographically random selection
22
- 2. **Multiple Sources**: Works with CSV, Excel, Google Sheets, or plain lists
23
- 3. **Multiple Winners**: Can pick one or multiple winners
24
- 4. **Duplicate Prevention**: Ensures the same person can't win twice
25
- 5. **Transparent Results**: Shows the selection process clearly
26
- 6. **Winner Details**: Displays all relevant information about winners
27
-
28
- ## How to Use
29
-
30
- ### From Google Sheets
31
-
32
- ```
33
- Pick a random row from this Google Sheet to select a winner
34
- for a giveaway: [Sheet URL]
35
- ```
36
-
37
- ### From Local File
38
-
39
- ```
40
- Pick 3 random winners from entries.csv
41
- ```
42
-
43
- ### From List
44
-
45
- ```
46
- Pick a random winner from this list:
47
- - Alice (alice@email.com)
48
- - Bob (bob@email.com)
49
- - Carol (carol@email.com)
50
- ...
51
- ```
52
-
53
- ### Multiple Winners
54
-
55
- ```
56
- Pick 5 random winners from contest-entries.xlsx,
57
- make sure no duplicates
58
- ```
59
-
60
- ## Example
61
-
62
- **User**: "Pick a random row from this Google Sheet to select a winner for a giveaway."
63
-
64
- **Output**:
65
- ```
66
- Accessing Google Sheet...
67
- Total entries found: 247
68
-
69
- Randomly selecting winner...
70
-
71
- 🎉 WINNER SELECTED! 🎉
72
-
73
- Row #142
74
- Name: Sarah Johnson
75
- Email: sarah.j@email.com
76
- Entry Date: March 10, 2024
77
- Comment: "Love your newsletter!"
78
-
79
- Selection method: Cryptographically random
80
- Timestamp: 2024-03-15 14:32:18 UTC
81
-
82
- Would you like to:
83
- - Pick another winner (excluding Sarah)?
84
- - Export winner details?
85
- - Pick runner-ups?
86
- ```
87
-
88
- **Inspired by:** Lenny's use case - picking a Sora 2 giveaway winner from his subscriber Slack community
89
-
90
- ## Features
91
-
92
- ### Fair Selection
93
- - Uses secure random number generation
94
- - No bias or patterns
95
- - Transparent process
96
- - Repeatable with seed (for verification)
97
-
98
- ### Exclusions
99
- ```
100
- Pick a random winner excluding previous winners:
101
- Alice, Bob, Carol
102
- ```
103
-
104
- ### Weighted Selection
105
- ```
106
- Pick a winner with weighted probability based on
107
- the "entries" column (1 entry = 1 ticket)
108
- ```
109
-
110
- ### Runner-ups
111
- ```
112
- Pick 1 winner and 3 runner-ups from the list
113
- ```
114
-
115
- ## Example Workflows
116
-
117
- ### Social Media Giveaway
118
- 1. Export entries from Google Form to Sheets
119
- 2. "Pick a random winner from [Sheet URL]"
120
- 3. Verify winner details
121
- 4. Announce publicly with timestamp
122
-
123
- ### Event Raffle
124
- 1. Create CSV of attendee names and emails
125
- 2. "Pick 10 random winners from attendees.csv"
126
- 3. Export winner list
127
- 4. Email winners directly
128
-
129
- ### Team Assignment
130
- 1. Have list of participants
131
- 2. "Randomly split this list into 4 equal teams"
132
- 3. Review assignments
133
- 4. Share team rosters
134
-
135
- ## Tips
136
-
137
- - **Document the process**: Save the timestamp and method
138
- - **Public announcement**: Share selection details for transparency
139
- - **Check eligibility**: Verify winner meets contest rules
140
- - **Have backups**: Pick runner-ups in case winner is ineligible
141
- - **Export results**: Save winner list for records
142
-
143
- ## Privacy & Fairness
144
-
145
- ✓ Uses cryptographically secure randomness
146
- ✓ No manipulation possible
147
- ✓ Timestamp recorded for verification
148
- ✓ Can provide seed for third-party verification
149
- ✓ Respects data privacy
150
-
151
- ## Common Use Cases
152
-
153
- - Newsletter subscriber giveaways
154
- - Product launch raffles
155
- - Conference ticket drawings
156
- - Beta tester selection
157
- - Focus group participant selection
158
- - Random prize distribution at events
159
-
@@ -1,246 +0,0 @@
1
- ---
2
- name: relay
3
- description: Create or update a root relay.md session-continuation document for any repository. Use this skill whenever the user asks to preserve project context, resume later, hand work to a future session, create a session relay, summarize current implementation state, or generate a reusable continuation prompt. The workflow is generic and must discover project structure at runtime.
4
- ---
5
-
6
- # Relay Skill
7
-
8
- ## Purpose
9
-
10
- Create or update `relay.md` at the target repository root with enough verified context for a future agent or developer to resume work without re-discovering the project from scratch.
11
-
12
- This skill is generic. Do not include project-specific assumptions, fixed folder names, fixed frameworks, or domain-specific terminology unless those facts are discovered in the target repository.
13
-
14
- ## Core Rules
15
-
16
- - Write `relay.md` at the repository root by default.
17
- - Preserve only verified facts and verified file paths.
18
- - Do not invent plan names, phases, commands, architecture, owners, or completion state.
19
- - Do not assume `.github/plans`, `docs`, `src`, `tests`, package managers, branch models, or CI systems exist.
20
- - If evidence conflicts, describe the conflict and identify the files that disagree.
21
- - If a fact cannot be verified, mark it as `Unknown` or place it under open questions.
22
- - Do not commit changes unless the user explicitly asks.
23
-
24
- ## When To Use
25
-
26
- Use this skill when the user asks for:
27
-
28
- - `/relay`
29
- - a session-continuation file
30
- - a context document for returning later
31
- - a resume prompt for a future agent
32
- - a summary of current project state and next steps
33
- - a clean handover between sessions
34
-
35
- ## Discovery Workflow
36
-
37
- ### 1. Establish Repository Root
38
-
39
- Identify the target repository root from the current workspace. If there are multiple candidate roots, choose the one containing the active user request or ask a concise clarifying question only if choosing would be risky.
40
-
41
- ### 2. Gather Verified Signals
42
-
43
- Use lightweight scans first:
44
-
45
- ```bash
46
- git status --short
47
- git branch --show-current
48
- git log --oneline -5
49
- ```
50
-
51
- If git is unavailable, note that in `Validation State`.
52
-
53
- Read high-signal files only when they exist:
54
-
55
- - root overview files such as `README.md`, `CHANGELOG.md`, `STACK.md`, or equivalent
56
- - package, build, task, or CI configuration files
57
- - active plan, roadmap, TODO, or issue documents discovered by search
58
- - architecture or design documents that are referenced by active plans or recent work
59
-
60
- Search for likely workstream signals without assuming exact locations:
61
-
62
- ```bash
63
- rg -n "TODO|Next Step|Phase|Status|In Progress|Current Plan|Roadmap|Backlog|Validation|Acceptance" .
64
- ```
65
-
66
- Keep searches scoped enough to avoid generated folders, dependency folders, build output, and archives unless the archive is directly relevant.
67
-
68
- ### 3. Infer Current Workstream
69
-
70
- Determine the current plan or workstream using evidence in this order:
71
-
72
- 1. The user's latest instruction.
73
- 2. Current conversation context.
74
- 3. Recent file modifications or git status.
75
- 4. Plan or roadmap files with active status markers.
76
- 5. Recent commits.
77
- 6. Root documentation.
78
-
79
- If several candidates remain plausible, list them and state which one appears most likely.
80
-
81
- ### 4. Identify Validation Commands
82
-
83
- Discover validation commands from:
84
-
85
- - documented setup or test instructions
86
- - package scripts
87
- - make/task files
88
- - CI workflow files
89
- - test configuration files
90
- - commands already run in the current session
91
-
92
- Do not claim validation passed unless it was actually run or documented as already passing. If not run, say `Not run in this session`.
93
-
94
- ## `relay.md` Format
95
-
96
- Use this exact filename at the repository root: `relay.md`.
97
-
98
- ### Metadata Source Rules
99
-
100
- - Use full ISO 8601 UTC timestamps for `Creation Date` and `Last Updated`, for example `2026-05-21T13:30:00Z`.
101
- - Use the exact current model identifier or display name from the chat/runtime model selector or session metadata for `Creating Model` and `Last Model Used`, for example `gpt-5.4`, `gpt-5.3-codex`, or `GPT-5.5`.
102
- - Do not infer the model from the agent name, product name, or broad family. Generic agent, product, or family labels are not acceptable when the runtime exposes a precise model name.
103
- - If the runtime does not expose an exact model identifier, record the most precise deterministic runtime identity available and say the exact ID was unavailable, for example `Codex (GPT-5-based; exact runtime model ID unavailable)`.
104
-
105
- ### New File Frontmatter
106
-
107
- When creating a new file:
108
-
109
- ```yaml
110
- ---
111
- Original Author: <agent/user>
112
- Creation Date: YYYY-MM-DDTHH:MM:SSZ
113
- Creating Model: <exact runtime model identifier or display name>
114
- ---
115
- ```
116
-
117
- ### Existing File Frontmatter
118
-
119
- When updating an existing file:
120
-
121
- 1. Preserve the original `Original Author`, `Creation Date`, and `Creating Model` values.
122
- 2. Add or update the last-update fields above the original fields.
123
- 3. Use this order:
124
-
125
- ```yaml
126
- ---
127
- Last Author: <agent/user>
128
- Last Updated: YYYY-MM-DDTHH:MM:SSZ
129
- Last Model Used: <exact runtime model identifier or display name>
130
- Original Author: <preserved>
131
- Creation Date: <preserved>
132
- Creating Model: <preserved>
133
- ---
134
- ```
135
-
136
- If an original field is missing and cannot be recovered, use `unknown` for that field rather than inventing a value.
137
-
138
- ### Required Body Sections
139
-
140
- Use exactly these top-level headings:
141
-
142
- ```
143
- # Relay
144
-
145
- ## Purpose
146
-
147
- ## Current Project Context
148
-
149
- ## What Has Been Completed
150
-
151
- ## Current Plan Or Workstream
152
-
153
- ## Next Step
154
-
155
- ## Important Files To Read First
156
-
157
- ## Validation State
158
-
159
- ## Open Questions Or Blockers
160
-
161
- ## Resume Prompt
162
- ```
163
-
164
- ## Body Guidance
165
-
166
- ### Purpose
167
-
168
- State that `relay.md` is the current session-continuation document and should be read first when resuming work.
169
-
170
- ### Current Project Context
171
-
172
- Summarize the repository's goal and the current development direction. Cite only verified project facts.
173
-
174
- ### What Has Been Completed
175
-
176
- List completed work visible from plans, documentation, git history, tests, or changed files. Prefer evidence-backed bullets:
177
-
178
- ```
179
- - Completed <work> based on `<verified/path.md>`.
180
- ```
181
-
182
- ### Current Plan Or Workstream
183
-
184
- Name the active plan, phase, issue, branch, or workstream. If the plan is unclear, describe the ambiguity and likely candidates.
185
-
186
- ### Next Step
187
-
188
- Provide one exact next action. Include a fallback action if the first next step is blocked.
189
-
190
- ### Important Files To Read First
191
-
192
- List verified paths only:
193
-
194
- ```
195
- - `<path>` - why it matters.
196
- ```
197
-
198
- Do not list files that were not found.
199
-
200
- ### Validation State
201
-
202
- Include:
203
-
204
- - commands discovered
205
- - commands run in the current session
206
- - pass/fail/not-run state
207
- - known failing checks or missing validation
208
-
209
- ### Open Questions Or Blockers
210
-
211
- Capture decisions needed, missing access, conflicting docs, ambiguous plan state, or unverified assumptions.
212
-
213
- ### Resume Prompt
214
-
215
- Provide a ready-to-paste prompt inside a bare fenced code block. The opening fence must be exactly three backticks with no language label.
216
-
217
- ```
218
- Read `relay.md` first, then read the important files listed there. Continue from <current workstream>. The next step is <exact action>. Preserve unrelated user changes and run <validation command> when appropriate.
219
- ```
220
-
221
- Keep the prompt short, specific, and free of unsupported claims.
222
-
223
- ## Verification Checklist
224
-
225
- Before finishing:
226
-
227
- - [ ] `relay.md` exists at the repository root.
228
- - [ ] Required frontmatter fields are present.
229
- - [ ] `Creation Date` and `Last Updated` use full ISO 8601 UTC timestamps ending in `Z`.
230
- - [ ] `Creating Model` and `Last Model Used` use the exact runtime model identifier or display name when available, not only a generic model family.
231
- - [ ] Original metadata is preserved when updating an existing file.
232
- - [ ] All required body sections are present.
233
- - [ ] Every listed file path was verified.
234
- - [ ] Validation state distinguishes run, not run, pass, and fail.
235
- - [ ] The resume prompt names the next action and is wrapped in a bare fenced code block with no language label.
236
- - [ ] No project-specific terminology appears unless discovered in the target repository.
237
-
238
- ## Final Response
239
-
240
- Tell the user:
241
-
242
- - where `relay.md` was written
243
- - the inferred current workstream
244
- - the next step
245
- - validation commands found or run
246
- - any remaining ambiguity
@@ -1,105 +0,0 @@
1
- ---
2
- name: requesting-code-review
3
- description: Use when completing tasks, implementing major features, or before merging to verify work meets requirements
4
- ---
5
-
6
- # Requesting Code Review
7
-
8
- Dispatch superpowers:code-reviewer subagent to catch issues before they cascade.
9
-
10
- **Core principle:** Review early, review often.
11
-
12
- ## When to Request Review
13
-
14
- **Mandatory:**
15
- - After each task in subagent-driven development
16
- - After completing major feature
17
- - Before merge to main
18
-
19
- **Optional but valuable:**
20
- - When stuck (fresh perspective)
21
- - Before refactoring (baseline check)
22
- - After fixing complex bug
23
-
24
- ## How to Request
25
-
26
- **1. Get git SHAs:**
27
- ```bash
28
- BASE_SHA=$(git rev-parse HEAD~1) # or origin/main
29
- HEAD_SHA=$(git rev-parse HEAD)
30
- ```
31
-
32
- **2. Dispatch code-reviewer subagent:**
33
-
34
- Use Task tool with superpowers:code-reviewer type, fill template at `code-reviewer.md`
35
-
36
- **Placeholders:**
37
- - `{WHAT_WAS_IMPLEMENTED}` - What you just built
38
- - `{PLAN_OR_REQUIREMENTS}` - What it should do
39
- - `{BASE_SHA}` - Starting commit
40
- - `{HEAD_SHA}` - Ending commit
41
- - `{DESCRIPTION}` - Brief summary
42
-
43
- **3. Act on feedback:**
44
- - Fix Critical issues immediately
45
- - Fix Important issues before proceeding
46
- - Note Minor issues for later
47
- - Push back if reviewer is wrong (with reasoning)
48
-
49
- ## Example
50
-
51
- ```
52
- [Just completed Task 2: Add verification function]
53
-
54
- You: Let me request code review before proceeding.
55
-
56
- BASE_SHA=$(git log --oneline | grep "Task 1" | head -1 | awk '{print $1}')
57
- HEAD_SHA=$(git rev-parse HEAD)
58
-
59
- [Dispatch superpowers:code-reviewer subagent]
60
- WHAT_WAS_IMPLEMENTED: Verification and repair functions for conversation index
61
- PLAN_OR_REQUIREMENTS: Task 2 from .caddis/plans/deployment-plan.md
62
- BASE_SHA: a7981ec
63
- HEAD_SHA: 3df7661
64
- DESCRIPTION: Added verifyIndex() and repairIndex() with 4 issue types
65
-
66
- [Subagent returns]:
67
- Strengths: Clean architecture, real tests
68
- Issues:
69
- Important: Missing progress indicators
70
- Minor: Magic number (100) for reporting interval
71
- Assessment: Ready to proceed
72
-
73
- You: [Fix progress indicators]
74
- [Continue to Task 3]
75
- ```
76
-
77
- ## Integration with Workflows
78
-
79
- **Subagent-Driven Development:**
80
- - Review after EACH task
81
- - Catch issues before they compound
82
- - Fix before moving to next task
83
-
84
- **Executing Plans:**
85
- - Review after each batch (3 tasks)
86
- - Get feedback, apply, continue
87
-
88
- **Ad-Hoc Development:**
89
- - Review before merge
90
- - Review when stuck
91
-
92
- ## Red Flags
93
-
94
- **Never:**
95
- - Skip review because "it's simple"
96
- - Ignore Critical issues
97
- - Proceed with unfixed Important issues
98
- - Argue with valid technical feedback
99
-
100
- **If reviewer wrong:**
101
- - Push back with technical reasoning
102
- - Show code/tests that prove it works
103
- - Request clarification
104
-
105
- See template at: requesting-code-review/code-reviewer.md
@@ -1,146 +0,0 @@
1
- # Code Review Agent
2
-
3
- You are reviewing code changes for production readiness.
4
-
5
- **Your task:**
6
- 1. Review {WHAT_WAS_IMPLEMENTED}
7
- 2. Compare against {PLAN_OR_REQUIREMENTS}
8
- 3. Check code quality, architecture, testing
9
- 4. Categorize issues by severity
10
- 5. Assess production readiness
11
-
12
- ## What Was Implemented
13
-
14
- {DESCRIPTION}
15
-
16
- ## Requirements/Plan
17
-
18
- {PLAN_REFERENCE}
19
-
20
- ## Git Range to Review
21
-
22
- **Base:** {BASE_SHA}
23
- **Head:** {HEAD_SHA}
24
-
25
- ```bash
26
- git diff --stat {BASE_SHA}..{HEAD_SHA}
27
- git diff {BASE_SHA}..{HEAD_SHA}
28
- ```
29
-
30
- ## Review Checklist
31
-
32
- **Code Quality:**
33
- - Clean separation of concerns?
34
- - Proper error handling?
35
- - Type safety (if applicable)?
36
- - DRY principle followed?
37
- - Edge cases handled?
38
-
39
- **Architecture:**
40
- - Sound design decisions?
41
- - Scalability considerations?
42
- - Performance implications?
43
- - Security concerns?
44
-
45
- **Testing:**
46
- - Tests actually test logic (not mocks)?
47
- - Edge cases covered?
48
- - Integration tests where needed?
49
- - All tests passing?
50
-
51
- **Requirements:**
52
- - All plan requirements met?
53
- - Implementation matches spec?
54
- - No scope creep?
55
- - Breaking changes documented?
56
-
57
- **Production Readiness:**
58
- - Migration strategy (if schema changes)?
59
- - Backward compatibility considered?
60
- - Documentation complete?
61
- - No obvious bugs?
62
-
63
- ## Output Format
64
-
65
- ### Strengths
66
- [What's well done? Be specific.]
67
-
68
- ### Issues
69
-
70
- #### Critical (Must Fix)
71
- [Bugs, security issues, data loss risks, broken functionality]
72
-
73
- #### Important (Should Fix)
74
- [Architecture problems, missing features, poor error handling, test gaps]
75
-
76
- #### Minor (Nice to Have)
77
- [Code style, optimization opportunities, documentation improvements]
78
-
79
- **For each issue:**
80
- - File:line reference
81
- - What's wrong
82
- - Why it matters
83
- - How to fix (if not obvious)
84
-
85
- ### Recommendations
86
- [Improvements for code quality, architecture, or process]
87
-
88
- ### Assessment
89
-
90
- **Ready to merge?** [Yes/No/With fixes]
91
-
92
- **Reasoning:** [Technical assessment in 1-2 sentences]
93
-
94
- ## Critical Rules
95
-
96
- **DO:**
97
- - Categorize by actual severity (not everything is Critical)
98
- - Be specific (file:line, not vague)
99
- - Explain WHY issues matter
100
- - Acknowledge strengths
101
- - Give clear verdict
102
-
103
- **DON'T:**
104
- - Say "looks good" without checking
105
- - Mark nitpicks as Critical
106
- - Give feedback on code you didn't review
107
- - Be vague ("improve error handling")
108
- - Avoid giving a clear verdict
109
-
110
- ## Example Output
111
-
112
- ```
113
- ### Strengths
114
- - Clean database schema with proper migrations (db.ts:15-42)
115
- - Comprehensive test coverage (18 tests, all edge cases)
116
- - Good error handling with fallbacks (summarizer.ts:85-92)
117
-
118
- ### Issues
119
-
120
- #### Important
121
- 1. **Missing help text in CLI wrapper**
122
- - File: index-conversations:1-31
123
- - Issue: No --help flag, users won't discover --concurrency
124
- - Fix: Add --help case with usage examples
125
-
126
- 2. **Date validation missing**
127
- - File: search.ts:25-27
128
- - Issue: Invalid dates silently return no results
129
- - Fix: Validate ISO format, throw error with example
130
-
131
- #### Minor
132
- 1. **Progress indicators**
133
- - File: indexer.ts:130
134
- - Issue: No "X of Y" counter for long operations
135
- - Impact: Users don't know how long to wait
136
-
137
- ### Recommendations
138
- - Add progress reporting for user experience
139
- - Consider config file for excluded projects (portability)
140
-
141
- ### Assessment
142
-
143
- **Ready to merge: With fixes**
144
-
145
- **Reasoning:** Core implementation is solid with good architecture and tests. Important issues (help text, date validation) are easily fixed and don't affect core functionality.
146
- ```