@hopla/claude-setup 1.10.2 → 1.11.1
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-plugin/marketplace.json +20 -0
- package/.claude-plugin/plugin.json +23 -0
- package/README.md +137 -30
- package/agents/code-reviewer.md +62 -0
- package/agents/codebase-researcher.md +41 -0
- package/agents/system-reviewer.md +64 -0
- package/cli.js +45 -14
- package/commands/guides/ai-optimized-codebase.md +70 -0
- package/commands/guides/hooks-reference.md +82 -0
- package/commands/guides/mcp-integration.md +32 -0
- package/commands/guides/remote-coding.md +70 -0
- package/commands/guides/scaling-beyond-engineering.md +54 -0
- package/commands/guides/write-skill.md +78 -0
- package/{files/commands → commands}/hopla-code-review-fix.md +8 -0
- package/commands/hopla-end-to-end.md +67 -0
- package/{files/commands → commands}/hopla-execute.md +2 -0
- package/commands/hopla-guide.md +61 -0
- package/{files/commands → commands}/hopla-plan-feature.md +2 -0
- package/commands/hopla-rca.md +64 -0
- package/{files/commands → commands}/hopla-validate.md +5 -0
- package/{files/CLAUDE.md → global-rules.md} +45 -0
- package/hooks/hooks.json +40 -0
- package/{files/hooks → hooks}/session-prime.js +13 -0
- package/package.json +7 -2
- package/skills/hopla-brainstorm/SKILL.md +89 -0
- package/{files/skills → skills}/hopla-code-review/SKILL.md +2 -1
- package/skills/hopla-debug/SKILL.md +73 -0
- package/{files/skills → skills}/hopla-execution-report/SKILL.md +3 -1
- package/{files/skills → skills}/hopla-git/SKILL.md +1 -1
- package/skills/hopla-parallel-dispatch/SKILL.md +69 -0
- package/{files/skills → skills}/hopla-prime/SKILL.md +3 -1
- package/skills/hopla-subagent-execution/SKILL.md +70 -0
- package/skills/hopla-tdd/SKILL.md +73 -0
- package/skills/hopla-verify/SKILL.md +64 -0
- package/skills/hopla-worktree/SKILL.md +73 -0
- /package/{files/commands → commands}/guides/data-audit.md +0 -0
- /package/{files/commands → commands}/guides/review-checklist.md +0 -0
- /package/{files/commands → commands}/hopla-create-prd.md +0 -0
- /package/{files/commands → commands}/hopla-git-commit.md +0 -0
- /package/{files/commands → commands}/hopla-git-pr.md +0 -0
- /package/{files/commands → commands}/hopla-init-project.md +0 -0
- /package/{files/commands → commands}/hopla-review-plan.md +0 -0
- /package/{files/commands → commands}/hopla-system-review.md +0 -0
- /package/{files/hooks → hooks}/env-protect.js +0 -0
- /package/{files/hooks → hooks}/tsc-check.js +0 -0
- /package/{files/skills → skills}/hopla-git/commit.md +0 -0
- /package/{files/skills → skills}/hopla-git/pr.md +0 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: hopla-verify
|
|
3
|
+
description: "Verification gate that ensures all completion claims are backed by fresh evidence. Use when the agent is about to declare work as done, finished, complete, ready, or implemented. Also use when hearing 'listo', 'terminé', 'ya está', 'done', 'finished', 'all tests pass', 'everything works', or any completion claim. Do NOT use for intermediate progress updates or partial task completion."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Verification Before Completion
|
|
7
|
+
|
|
8
|
+
## Iron Law
|
|
9
|
+
**NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE.**
|
|
10
|
+
|
|
11
|
+
Never declare work as done based on memory, assumptions, or previous outputs. Every claim must be backed by a fresh execution right now.
|
|
12
|
+
|
|
13
|
+
## Gate Process
|
|
14
|
+
|
|
15
|
+
When about to declare any task as complete:
|
|
16
|
+
|
|
17
|
+
1. **IDENTIFY** — What verification command(s) confirm this claim?
|
|
18
|
+
2. **EXECUTE** — Run the verification fresh (never reuse previous output)
|
|
19
|
+
3. **READ** — Read the complete output carefully
|
|
20
|
+
4. **VERIFY** — Confirm the output actually proves the claim
|
|
21
|
+
5. **ONLY THEN** — Declare the work complete with evidence
|
|
22
|
+
|
|
23
|
+
## What Requires What Evidence
|
|
24
|
+
|
|
25
|
+
| Claim | Required Evidence |
|
|
26
|
+
|-------|------------------|
|
|
27
|
+
| "Tests pass" | Fresh `npm test` / `pytest` / test runner output showing all green |
|
|
28
|
+
| "Build succeeds" | Fresh build command output with no errors |
|
|
29
|
+
| "Lint is clean" | Fresh linter output showing 0 errors |
|
|
30
|
+
| "Types check" | Fresh `tsc --noEmit` / type checker output |
|
|
31
|
+
| "Feature works" | Demonstrate the feature running (test or manual verification) |
|
|
32
|
+
| "Bug is fixed" | Test that reproduces the bug now passes |
|
|
33
|
+
| "No regressions" | Full test suite passes, not just new tests |
|
|
34
|
+
|
|
35
|
+
## Prohibited Phrases Before Verification
|
|
36
|
+
|
|
37
|
+
These phrases are RED FLAGS — never use them without fresh evidence:
|
|
38
|
+
|
|
39
|
+
- "should work" / "debería funcionar"
|
|
40
|
+
- "probably passes" / "probablemente pase"
|
|
41
|
+
- "seems to be fine" / "parece estar bien"
|
|
42
|
+
- "I believe this fixes" / "creo que esto arregla"
|
|
43
|
+
- "this should resolve" / "esto debería resolver"
|
|
44
|
+
- "looks correct" / "se ve correcto"
|
|
45
|
+
|
|
46
|
+
Instead, run the verification and report actual results.
|
|
47
|
+
|
|
48
|
+
## Integration with Validation Pyramid
|
|
49
|
+
|
|
50
|
+
When completing a feature (not just a single file edit), run the full validation pyramid:
|
|
51
|
+
|
|
52
|
+
1. **Level 1**: Lint & format
|
|
53
|
+
2. **Level 2**: Type check
|
|
54
|
+
3. **Level 3**: Unit tests
|
|
55
|
+
4. **Level 4**: Integration tests (if applicable)
|
|
56
|
+
5. **Level 5**: Human review suggestion
|
|
57
|
+
|
|
58
|
+
Reference `/hopla-validate` for project-specific validation commands.
|
|
59
|
+
|
|
60
|
+
## Scope
|
|
61
|
+
|
|
62
|
+
- **Applies to**: Any declaration of completion, whether mid-conversation or at end of task
|
|
63
|
+
- **Does NOT apply to**: Intermediate progress updates ("I've finished editing file X, moving to file Y")
|
|
64
|
+
- **Partial completion**: You may say "file X is updated" without full validation, but "the feature is complete" requires the full gate
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: hopla-worktree
|
|
3
|
+
description: "Git worktree management for isolated feature development. Use when starting a new feature that benefits from isolation, when the user says 'worktree', 'isolated branch', 'parallel development', or when implementing multiple features simultaneously. Do NOT use for quick fixes or single-file changes."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Git Worktrees for Isolated Development
|
|
7
|
+
|
|
8
|
+
## What Are Worktrees?
|
|
9
|
+
Git worktrees create separate working directories for different branches, sharing the same git history. Each worktree is an independent workspace.
|
|
10
|
+
|
|
11
|
+
## When to Use
|
|
12
|
+
- Starting a feature that should be isolated from other work
|
|
13
|
+
- Developing multiple features in parallel
|
|
14
|
+
- Needing a clean baseline to test against
|
|
15
|
+
- Working on a risky change that might need to be abandoned
|
|
16
|
+
|
|
17
|
+
## Setup Process
|
|
18
|
+
|
|
19
|
+
### Step 1: Choose Worktree Directory
|
|
20
|
+
Check in order:
|
|
21
|
+
1. Existing `.worktrees/` or `worktrees/` directory
|
|
22
|
+
2. CLAUDE.md preference (if configured)
|
|
23
|
+
3. Ask the user
|
|
24
|
+
|
|
25
|
+
### Step 2: Ensure Directory is Gitignored
|
|
26
|
+
```bash
|
|
27
|
+
# Verify the worktree directory is in .gitignore
|
|
28
|
+
grep -q "worktrees" .gitignore || echo "worktrees/" >> .gitignore
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### Step 3: Create Worktree
|
|
32
|
+
```bash
|
|
33
|
+
# Create worktree with a new feature branch
|
|
34
|
+
git worktree add worktrees/feature-name -b feature/feature-name
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
### Step 4: Setup Project in Worktree
|
|
38
|
+
Auto-detect and run setup:
|
|
39
|
+
- **Node.js**: `npm install` or `yarn install`
|
|
40
|
+
- **Python**: `pip install -r requirements.txt` or `poetry install`
|
|
41
|
+
- **Rust**: `cargo build`
|
|
42
|
+
- **Go**: `go mod download`
|
|
43
|
+
|
|
44
|
+
### Step 5: Verify Clean Baseline
|
|
45
|
+
```bash
|
|
46
|
+
cd worktrees/feature-name
|
|
47
|
+
# Run tests to ensure baseline is green
|
|
48
|
+
npm test # or equivalent
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
If tests fail before any changes, STOP and report — the baseline is broken.
|
|
52
|
+
|
|
53
|
+
### Step 6: Work in the Worktree
|
|
54
|
+
All work for this feature happens in `worktrees/feature-name/`.
|
|
55
|
+
|
|
56
|
+
## Cleanup
|
|
57
|
+
|
|
58
|
+
### After Merge
|
|
59
|
+
```bash
|
|
60
|
+
git worktree remove worktrees/feature-name
|
|
61
|
+
git branch -d feature/feature-name
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### If Abandoned
|
|
65
|
+
```bash
|
|
66
|
+
git worktree remove --force worktrees/feature-name
|
|
67
|
+
git branch -D feature/feature-name
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Integration
|
|
71
|
+
- Use with `/hopla-execute` for isolated feature implementation
|
|
72
|
+
- Use with `/hopla-git-pr` for creating PRs from the worktree branch
|
|
73
|
+
- Combine with parallel dispatch for multiple features simultaneously
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|