@hopla/claude-setup 1.12.1 → 1.14.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.
Files changed (40) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/README.md +209 -144
  4. package/agents/system-reviewer.md +13 -0
  5. package/cli.js +301 -399
  6. package/commands/code-review-fix.md +1 -1
  7. package/commands/create-prd.md +1 -1
  8. package/commands/execute.md +27 -8
  9. package/commands/guide.md +14 -8
  10. package/commands/guides/ai-optimized-codebase.md +1 -1
  11. package/commands/guides/mcp-integration.md +3 -3
  12. package/commands/guides/remote-coding.md +3 -3
  13. package/commands/guides/review-checklist.md +5 -5
  14. package/commands/guides/scaling-beyond-engineering.md +6 -9
  15. package/commands/init-project.md +12 -10
  16. package/commands/plan-feature.md +18 -2
  17. package/commands/rca.md +9 -4
  18. package/commands/review-plan.md +2 -2
  19. package/commands/validate.md +2 -2
  20. package/global-rules.md +18 -50
  21. package/hooks/env-protect.js +39 -8
  22. package/hooks/hooks.json +1 -1
  23. package/hooks/session-prime.js +39 -12
  24. package/hooks/tsc-check.js +21 -10
  25. package/package.json +1 -1
  26. package/skills/brainstorm/SKILL.md +7 -2
  27. package/skills/code-review/SKILL.md +4 -2
  28. package/skills/debug/SKILL.md +8 -0
  29. package/skills/execution-report/SKILL.md +2 -2
  30. package/skills/git/commit.md +20 -3
  31. package/skills/git/flow-detection.md +68 -0
  32. package/skills/git/pr.md +46 -16
  33. package/skills/prime/SKILL.md +1 -1
  34. package/skills/subagent-execution/SKILL.md +1 -1
  35. package/skills/tdd/SKILL.md +1 -1
  36. package/skills/verify/SKILL.md +11 -1
  37. package/skills/worktree/SKILL.md +83 -38
  38. package/commands/end-to-end.md +0 -67
  39. package/commands/git-commit.md +0 -76
  40. package/commands/git-pr.md +0 -138
@@ -1,76 +0,0 @@
1
- ---
2
- description: Create a conventional commit with Git Flow awareness
3
- argument-hint: "[optional: commit message or scope]"
4
- ---
5
-
6
- > 🌐 **Language:** All user-facing output must match the user's language. Code, paths, and commands stay in English.
7
-
8
- Review the current git state and create an appropriate commit.
9
-
10
- ## Step 1: Gather Context
11
-
12
- Run these commands to understand what changed:
13
-
14
- ```bash
15
- git status
16
- git diff --staged
17
- git diff
18
- git log --oneline -5
19
- ```
20
-
21
- ## Step 2: Analyze Changes
22
-
23
- - Identify what was added, modified, or deleted
24
- - Determine the appropriate commit type: `feat`, `fix`, `refactor`, `docs`, `test`, `chore`, `style`
25
- - Identify the scope if relevant (e.g., `auth`, `api`, `ui`)
26
- - Check current branch — confirm it follows Git Flow naming (`feature/`, `fix/`, `hotfix/`, `develop`, `dev`)
27
-
28
- ## Step 3: Stage Files
29
-
30
- Stage only the relevant files for this commit (avoid `git add -A` unless all changes belong together):
31
-
32
- ```bash
33
- git add <specific files>
34
- ```
35
-
36
- ## Step 4: Propose Commit
37
-
38
- Present the proposed commit message to the user **before executing**:
39
-
40
- > "Proposed commit:
41
- > `feat(products): add price filter to search endpoint`
42
- >
43
- > Files included: [list files]
44
- > Shall I proceed?"
45
-
46
- Wait for explicit approval before running `git commit`.
47
-
48
- ## Step 5: Version Bump (if configured)
49
-
50
- Before committing, check the project's `CLAUDE.md` for a `## Versioning` section. If it exists:
51
-
52
- 1. Read the versioning configuration (command, trigger, files)
53
- 2. Check if the **trigger condition** matches (e.g., specific branches, always, etc.)
54
- 3. If it matches, run the version bump command
55
- 4. Stage the version files alongside the other changes
56
-
57
- If no `## Versioning` section exists in the project's `CLAUDE.md`, skip this step entirely.
58
-
59
- ## Step 6: Execute Commit
60
-
61
- Once approved, create the commit:
62
-
63
- ```bash
64
- git commit -m "<type>(<scope>): <description>"
65
- ```
66
-
67
- ## Step 7: Push Reminder
68
-
69
- After committing, remind the user:
70
-
71
- > "Commit created locally. Do you want to push to `origin/<branch>`?"
72
-
73
- **Never push automatically** — wait for explicit confirmation.
74
-
75
- If the user confirms the push (or if the branch was already pushed), suggest:
76
- > "Ready to create a Pull Request? Run `/hopla-git-pr` to create one."
@@ -1,138 +0,0 @@
1
- ---
2
- description: Create a GitHub Pull Request with a structured description
3
- argument-hint: "[optional: base branch, defaults to develop]"
4
- ---
5
-
6
- > 🌐 **Language:** All user-facing output must match the user's language. Code, paths, and commands stay in English.
7
-
8
- Create a Pull Request on GitHub for the current branch.
9
-
10
- ## Step 1: Gather Context
11
-
12
- ```bash
13
- git status
14
- git branch --show-current
15
- git log --oneline origin/$(git rev-parse --abbrev-ref --symbolic-full-name @{u} 2>/dev/null | sed 's|.*/||' || echo 'develop')..HEAD
16
- git diff --stat origin/$(git rev-parse --abbrev-ref --symbolic-full-name @{u} 2>/dev/null | sed 's|.*/||' || echo 'develop')..HEAD
17
- ```
18
-
19
- Read the following if they exist:
20
- - The plan file in `.agents/plans/` related to this feature
21
- - `CLAUDE.md` — for project context
22
-
23
- ## Step 2: Determine Base Branch
24
-
25
- **If `$1` is provided**, use it as the base branch.
26
-
27
- **Otherwise, infer from Git Flow branch naming:**
28
-
29
- | Current branch prefix | Base branch |
30
- |---|---|
31
- | `feature/*` | `develop` or `dev` |
32
- | `fix/*` | `develop` or `dev` |
33
- | `hotfix/*` | `main` |
34
- | `release/*` | `main` |
35
-
36
- To resolve `develop` vs `dev`: run `git branch -r` and look for `origin/develop` or `origin/dev`. Use whichever exists.
37
-
38
- **Guard rails:**
39
- - If the current branch is `main`, `master`, `develop`, or `dev` → stop and warn: "You're on `[branch]` — PRs should come from feature branches."
40
- - If the branch name doesn't match any Git Flow prefix → ask the user: "I can't determine the base branch from `[branch]`. Should this PR target `develop` or `main`?"
41
- - **Always show the resolved base branch in Step 5** so the user can catch mistakes before the PR is created.
42
-
43
- ## Step 3: Check Push Status
44
-
45
- ```bash
46
- git status
47
- ```
48
-
49
- If the branch hasn't been pushed yet:
50
- > "Branch not pushed yet. Push to origin first?"
51
-
52
- Wait for confirmation before pushing:
53
- ```bash
54
- git push -u origin <branch>
55
- ```
56
-
57
- ## Step 4: Build PR Description
58
-
59
- Using the commits and plan context, draft:
60
-
61
- **Title:** `[type(scope)]: short description` — match the main commit or feature name, max 70 chars
62
-
63
- **Body:**
64
- ```markdown
65
- ## Summary
66
- - [What was built — 2-3 bullets max]
67
-
68
- ## Changes
69
- - [Key files modified and why]
70
-
71
- ## Test Plan
72
- - [ ] [How to verify this works]
73
- - [ ] [Edge cases to check]
74
-
75
- ## Related
76
- - Plan: `.agents/plans/[feature-name].md` (if exists)
77
- ```
78
-
79
- ## Step 5: Propose and Confirm
80
-
81
- Show the proposed PR title and body to the user:
82
- > "Proposed PR:
83
- > Title: `[title]`
84
- > Base: `[base branch]`
85
- > [body preview]
86
- > Shall I create it?"
87
-
88
- Wait for explicit approval before creating.
89
-
90
- ## Step 6: Create PR
91
-
92
- ```bash
93
- gh pr create --title "[title]" --body "[body]" --base [base-branch]
94
- ```
95
-
96
- After creating, show the PR URL to the user.
97
-
98
- **Never merge automatically** — the PR is for human review.
99
-
100
- After showing the PR URL, suggest:
101
- > "PR created. To complete the cycle, run `/hopla-execution-report` (if not done yet) and `/hopla-system-review` after the PR is merged."
102
-
103
- ## Step 7: Post-Merge Cleanup
104
-
105
- After the user confirms the PR was approved and merged on GitHub, run the cleanup workflow based on the branch type:
106
-
107
- ### For feature and fix branches (merged to `dev`/`develop`):
108
-
109
- ```bash
110
- git checkout [base-branch]
111
- git pull origin [base-branch]
112
- git branch -d [merged-branch]
113
- git push origin --delete [merged-branch] 2>/dev/null # skip if GitHub already deleted it
114
- ```
115
-
116
- **Important:** When `dev` is merged to `main` via PR, do NOT pull `main` back into `dev` — `dev` already has all the commits. Only sync `main` → `dev` for hotfix/release branches (see below).
117
-
118
- ### Additional steps for `hotfix/*` and `release/*` ONLY:
119
-
120
- These branches were merged to `main` but `develop` also needs the changes:
121
-
122
- ```bash
123
- git checkout develop
124
- git pull origin develop
125
- git merge main
126
- git push origin develop
127
- ```
128
-
129
- Then create a version tag:
130
-
131
- ```bash
132
- git tag -a v[version] -m "Release [version]"
133
- git push origin v[version]
134
- ```
135
-
136
- Ask the user for the version number before tagging.
137
-
138
- **Always confirm each destructive action** (branch deletion, tag creation) before executing.