worclaude 1.5.0 → 1.6.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/README.md +3 -3
- package/package.json +1 -1
- package/src/core/remover.js +1 -1
- package/src/data/agents.js +2 -0
- package/templates/commands/commit-push-pr.md +28 -23
- package/templates/commands/conflict-resolver.md +41 -0
- package/templates/commands/end.md +16 -10
- package/templates/commands/start.md +8 -0
- package/templates/commands/sync.md +50 -0
- package/templates/core/claude-md.md +5 -1
- package/templates/skills/universal/git-conventions.md +13 -0
package/README.md
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
|
|
11
11
|
[Full Documentation](https://sefaertunc.github.io/Worclaude/) · [Interactive Demo](https://sefaertunc.github.io/Worclaude/demo/) · [npm](https://www.npmjs.com/package/worclaude)
|
|
12
12
|
|
|
13
|
-
Worclaude scaffolds a complete Claude Code workflow into any project in seconds. It implements all [53 tips by Boris Cherny](https://www.howborisusesclaudecode.com/) — the creator of Claude Code at Anthropic — as a reusable, upgradable scaffold. One `init` command gives you 23 agents,
|
|
13
|
+
Worclaude scaffolds a complete Claude Code workflow into any project in seconds. It implements all [53 tips by Boris Cherny](https://www.howborisusesclaudecode.com/) — the creator of Claude Code at Anthropic — as a reusable, upgradable scaffold. One `init` command gives you 23 agents, 12 slash commands, 13 skills, hooks, permissions, and a CLAUDE.md template tuned for your tech stack. Whether you're starting fresh or adding structure to an existing project, Worclaude handles the setup so you can focus on building.
|
|
14
14
|
|
|
15
15
|
---
|
|
16
16
|
|
|
@@ -23,8 +23,8 @@ Worclaude scaffolds a complete Claude Code workflow into any project in seconds.
|
|
|
23
23
|
- 5 universal: plan-reviewer, code-simplifier, test-writer, build-validator, verify-app
|
|
24
24
|
- 18 optional across 6 categories: Backend, Frontend, DevOps, Quality, Documentation, Data/AI
|
|
25
25
|
|
|
26
|
-
**Slash Commands (
|
|
27
|
-
`/start` `/end` `/commit-push-pr` `/review-plan` `/techdebt` `/verify` `/compact-safe` `/status` `/update-claude-md` `/setup`
|
|
26
|
+
**Slash Commands (12)**
|
|
27
|
+
`/start` `/end` `/commit-push-pr` `/review-plan` `/techdebt` `/verify` `/compact-safe` `/status` `/update-claude-md` `/setup` `/sync` `/conflict-resolver`
|
|
28
28
|
|
|
29
29
|
**Skills (13)**
|
|
30
30
|
|
package/package.json
CHANGED
package/src/core/remover.js
CHANGED
|
@@ -179,7 +179,7 @@ export async function cleanGitignore(projectRoot) {
|
|
|
179
179
|
if (!(await fileExists(gitignorePath))) return false;
|
|
180
180
|
|
|
181
181
|
const content = await readFile(gitignorePath);
|
|
182
|
-
const lines = content.split(
|
|
182
|
+
const lines = content.split(/\r?\n/);
|
|
183
183
|
|
|
184
184
|
const REMOVE_LINES = new Set(['# Worclaude (generated workflow files)', '.claude/']);
|
|
185
185
|
|
package/src/data/agents.js
CHANGED
|
@@ -1,23 +1,28 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
1
|
+
Determine which branch you're on, then follow the appropriate flow.
|
|
2
|
+
Do not add Co-Authored-By trailers or AI-generated footers to commits or PR descriptions.
|
|
3
|
+
|
|
4
|
+
## On a feature branch (feature/*, fix/*, chore/*, refactor/*)
|
|
5
|
+
|
|
6
|
+
Feature branches contain ONLY the task changes. Do NOT touch shared-state
|
|
7
|
+
files (see git-conventions.md for the canonical list).
|
|
8
|
+
|
|
9
|
+
1. Stage all changes: git add -A
|
|
10
|
+
2. Write a clear, conventional commit message
|
|
11
|
+
3. Push to the current branch
|
|
12
|
+
4. Create a PR targeting develop: gh pr create --base develop
|
|
13
|
+
5. Include in PR description: title, changes, testing done, reviewer notes
|
|
14
|
+
|
|
15
|
+
## On develop
|
|
16
|
+
|
|
17
|
+
Only used for release merges after /sync has been run.
|
|
18
|
+
|
|
19
|
+
1. Stage all changes: git add -A
|
|
20
|
+
2. Write a clear, conventional commit message
|
|
21
|
+
3. Push to develop
|
|
22
|
+
4. Create a PR targeting main: gh pr create --base main
|
|
23
|
+
|
|
24
|
+
## On any other branch
|
|
25
|
+
|
|
26
|
+
Ask the user which base branch to target before creating a PR.
|
|
27
|
+
|
|
28
|
+
Use gh pr create for PR creation.
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
You are resolving merge conflicts. ONLY resolve conflicts — do not
|
|
2
|
+
update PROGRESS.md, SPEC.md, or bump versions. That is /sync's job.
|
|
3
|
+
|
|
4
|
+
## Step 1: Detect
|
|
5
|
+
|
|
6
|
+
Run: git status
|
|
7
|
+
Identify all files with merge conflicts (listed as "both modified").
|
|
8
|
+
If no conflicts found, report "No conflicts detected" and stop.
|
|
9
|
+
|
|
10
|
+
## Step 2: Understand
|
|
11
|
+
|
|
12
|
+
For each conflicted file:
|
|
13
|
+
- Read the file and find all <<<<<<< / ======= / >>>>>>> markers
|
|
14
|
+
- Understand what EACH side was trying to do
|
|
15
|
+
- Check git log for both branches to understand the intent
|
|
16
|
+
|
|
17
|
+
## Step 3: Resolve
|
|
18
|
+
|
|
19
|
+
For each conflict:
|
|
20
|
+
- Changes in DIFFERENT parts of the code → keep both
|
|
21
|
+
- Changes modify the SAME lines → combine intelligently based on intent
|
|
22
|
+
- Changes truly contradict → ask the user which to keep
|
|
23
|
+
- NEVER silently drop changes from either side
|
|
24
|
+
|
|
25
|
+
## Step 4: Verify clean
|
|
26
|
+
|
|
27
|
+
Search ALL tracked files for remaining conflict markers
|
|
28
|
+
(<<<<<<, =======, >>>>>>>). If any remain, resolve them.
|
|
29
|
+
|
|
30
|
+
## Step 5: Test
|
|
31
|
+
|
|
32
|
+
Run /verify (or the project's test and lint commands).
|
|
33
|
+
If anything fails, fix it.
|
|
34
|
+
|
|
35
|
+
## Step 6: Commit resolution only
|
|
36
|
+
|
|
37
|
+
- git add -A
|
|
38
|
+
- git commit -m "merge: resolve conflicts on develop"
|
|
39
|
+
Use exactly this message format — no trailers or Co-Authored-By lines.
|
|
40
|
+
|
|
41
|
+
Do NOT push. Do NOT create a PR. The user will run /sync next.
|
|
@@ -1,11 +1,17 @@
|
|
|
1
|
-
Use this
|
|
2
|
-
If the task is complete, use /commit-push-pr instead — it handles PROGRESS.md updates.
|
|
1
|
+
Use this ONLY when stopping work mid-task without committing.
|
|
3
2
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
2.
|
|
10
|
-
|
|
11
|
-
|
|
3
|
+
Do NOT update PROGRESS.md — /sync handles that on develop after merging.
|
|
4
|
+
|
|
5
|
+
## Mid-task handoff
|
|
6
|
+
|
|
7
|
+
1. Create docs/handoffs/HANDOFF-{branch-name}-{date}.md
|
|
8
|
+
2. Include:
|
|
9
|
+
- What was being worked on
|
|
10
|
+
- What is done so far
|
|
11
|
+
- What is left to do
|
|
12
|
+
- Decisions or context the next session needs
|
|
13
|
+
- Files that were modified
|
|
14
|
+
3. git add -A
|
|
15
|
+
4. git commit -m "wip: handoff for [task description]"
|
|
16
|
+
Use exactly this message format — no trailers or Co-Authored-By lines.
|
|
17
|
+
5. git push
|
|
@@ -1,3 +1,11 @@
|
|
|
1
1
|
Read docs/spec/PROGRESS.md to understand current state.
|
|
2
|
+
Read .claude/skills/agent-routing.md for agent usage guidance.
|
|
3
|
+
|
|
4
|
+
Check for handoff files from previous sessions:
|
|
5
|
+
- Look in docs/handoffs/ for any HANDOFF*.md files
|
|
6
|
+
(both HANDOFF-{branch}-{date}.md and legacy HANDOFF_{date}.md)
|
|
7
|
+
- Prioritize files matching the current branch name
|
|
8
|
+
- If found, read them for context and report what was handed off
|
|
9
|
+
|
|
2
10
|
If an active implementation prompt exists, read it.
|
|
3
11
|
Report: what was last completed, what's next, any blockers.
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
Update shared-state files after merging feature PRs into develop.
|
|
2
|
+
Run this on the develop branch AFTER all PRs are merged and any
|
|
3
|
+
conflicts are resolved.
|
|
4
|
+
|
|
5
|
+
ONLY update shared-state files — do not resolve conflicts. That is
|
|
6
|
+
/conflict-resolver's job. If you detect unresolved conflicts, stop
|
|
7
|
+
and tell the user to run /conflict-resolver first.
|
|
8
|
+
|
|
9
|
+
## Pre-check
|
|
10
|
+
|
|
11
|
+
1. Confirm you are on the develop branch. If not, stop and warn.
|
|
12
|
+
2. Check for unresolved conflict markers in tracked files.
|
|
13
|
+
If found, stop: "Run /conflict-resolver first."
|
|
14
|
+
3. Read git log to understand what was merged since the last sync
|
|
15
|
+
or version tag. If nothing was merged, report "Nothing to sync"
|
|
16
|
+
and stop.
|
|
17
|
+
|
|
18
|
+
## Update PROGRESS.md
|
|
19
|
+
|
|
20
|
+
4. Update docs/spec/PROGRESS.md:
|
|
21
|
+
- Mark completed items based on merged work
|
|
22
|
+
- Update "Last Updated" date to today
|
|
23
|
+
- Update Stats section by checking actual project values
|
|
24
|
+
(run the test suite, count source files, etc.)
|
|
25
|
+
- Move "In Progress" items to "Completed" if their PRs merged
|
|
26
|
+
- Update "Next Steps" if needed
|
|
27
|
+
|
|
28
|
+
## Update SPEC.md
|
|
29
|
+
|
|
30
|
+
5. If any merged PRs added features or changed behavior, update
|
|
31
|
+
docs/spec/SPEC.md to reflect the current state.
|
|
32
|
+
If nothing changed spec-wise, leave it alone.
|
|
33
|
+
|
|
34
|
+
## Version bump
|
|
35
|
+
|
|
36
|
+
6. Determine version bump using the Versioning Policy in
|
|
37
|
+
git-conventions.md. If bump needed: update version in package.json.
|
|
38
|
+
|
|
39
|
+
## Verify
|
|
40
|
+
|
|
41
|
+
7. Run /verify to confirm tests and lint pass.
|
|
42
|
+
If anything fails, fix it before proceeding.
|
|
43
|
+
|
|
44
|
+
## Commit, push, and PR
|
|
45
|
+
|
|
46
|
+
8. git add -A
|
|
47
|
+
9. git commit -m "chore: sync progress, spec, and version to [new version]"
|
|
48
|
+
Use exactly this message format — no trailers or Co-Authored-By lines.
|
|
49
|
+
10. git push origin develop
|
|
50
|
+
11. gh pr create --base main with description of what was merged
|
|
@@ -29,7 +29,9 @@ See `.claude/skills/` — load only what's relevant:
|
|
|
29
29
|
## Session Protocol
|
|
30
30
|
**Start:** Read PROGRESS.md → Read `.claude/skills/agent-routing.md` → Read active implementation prompt if any.
|
|
31
31
|
**During:** One task at a time. Commit after each. Use subagents per routing guide.
|
|
32
|
-
**
|
|
32
|
+
**Feature branch:** /start → work → /verify → /commit-push-pr
|
|
33
|
+
**After merging PRs:** git checkout develop → git pull → /conflict-resolver (if needed) → /sync
|
|
34
|
+
**Mid-task stop:** /end (writes handoff file)
|
|
33
35
|
|
|
34
36
|
## Critical Rules
|
|
35
37
|
1. SPEC.md is source of truth. Do not invent features.
|
|
@@ -39,6 +41,8 @@ See `.claude/skills/` — load only what's relevant:
|
|
|
39
41
|
5. Self-healing: same mistake twice → update CLAUDE.md.
|
|
40
42
|
6. Use subagents to keep main context clean.
|
|
41
43
|
7. Mediocre fix → scrap it, implement elegantly.
|
|
44
|
+
8. Feature branches NEVER modify shared-state files. Those are updated only on develop via /sync after merging PRs. See git-conventions.md Shared-State Files for the canonical list.
|
|
45
|
+
9. Never add Co-Authored-By trailers, AI attribution footers, or "Generated with" signatures to commits or PRs.
|
|
42
46
|
|
|
43
47
|
## Gotchas
|
|
44
48
|
[Grows during development]
|
|
@@ -46,6 +46,7 @@ Rules:
|
|
|
46
46
|
- No period at the end of the subject line
|
|
47
47
|
- Blank line between subject and body
|
|
48
48
|
- Body explains motivation, not mechanics
|
|
49
|
+
- Never append Co-Authored-By trailers, AI attribution lines, or "Generated with" footers
|
|
49
50
|
|
|
50
51
|
## When to Commit
|
|
51
52
|
|
|
@@ -76,6 +77,7 @@ All feature/bugfix branches are created from and merged back into `develop`. Nev
|
|
|
76
77
|
4. PR title follows same format as commit subject: `type(scope): description`
|
|
77
78
|
5. PR body includes: what changed, why, how to test, anything reviewers should know
|
|
78
79
|
6. Request review if the project has reviewers configured
|
|
80
|
+
7. Do not add AI-generated footers (e.g., "Generated with Claude Code") to PR descriptions
|
|
79
81
|
|
|
80
82
|
## Squash vs Merge
|
|
81
83
|
|
|
@@ -97,6 +99,17 @@ When using `git worktree` for parallel work:
|
|
|
97
99
|
Agents that use worktree isolation (code-simplifier, test-writer, ci-fixer, etc.)
|
|
98
100
|
create and clean up their own worktrees automatically.
|
|
99
101
|
|
|
102
|
+
## Shared-State Files
|
|
103
|
+
|
|
104
|
+
These files are modified ONLY on the develop branch (via /sync), never on feature branches:
|
|
105
|
+
|
|
106
|
+
- `docs/spec/PROGRESS.md` — project progress tracker
|
|
107
|
+
- `docs/spec/SPEC.md` — feature specification
|
|
108
|
+
- `README.md` — project documentation
|
|
109
|
+
- `package.json` version field — release versioning
|
|
110
|
+
|
|
111
|
+
This prevents merge conflicts when running parallel feature branches.
|
|
112
|
+
|
|
100
113
|
## Versioning Policy
|
|
101
114
|
|
|
102
115
|
Follow [semver](https://semver.org/) when the project publishes releases:
|