worclaude 1.1.0 → 1.2.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 CHANGED
@@ -1,278 +1,85 @@
1
- # worclaude
1
+ # Worclaude
2
2
 
3
- A CLI tool that scaffolds a comprehensive Claude Code workflow into any project — derived from 53 tips by Boris Cherny, the creator of Claude Code at Anthropic.
3
+ > One command. 53 best practices. Your Claude Code environment, production-ready.
4
4
 
5
5
  [![npm version](https://img.shields.io/npm/v/worclaude.svg)](https://www.npmjs.com/package/worclaude)
6
- [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
6
+ [![license](https://img.shields.io/npm/l/worclaude.svg)](LICENSE)
7
+ [![tests](https://img.shields.io/badge/tests-135%2B%20passing-brightgreen)]()
7
8
 
8
- ## Quick Start
9
-
10
- ```bash
11
- npm install -g worclaude
12
- cd your-project
13
- worclaude init
14
- ```
15
-
16
- That's it. The `init` command walks you through project setup interactively.
17
-
18
- ## What It Does
19
-
20
- Claude Code is powerful out of the box, but it gets dramatically better with structured guidance. `worclaude` installs a complete workflow system — agents, slash commands, skills, hooks, and configuration — that turns Claude Code into a disciplined engineering partner. It's the difference between a capable assistant and a well-organized team.
21
-
22
- The workflow is based on [53 tips by Boris Cherny](https://www.howborisusesclaudecode.com/), the creator of Claude Code at Anthropic, distilled into a reusable scaffold that works with any tech stack.
23
-
24
- ## What Gets Installed
25
-
26
- ```
27
- your-project/
28
- ├── CLAUDE.md # Project-specific guidance for Claude
29
- ├── .claude/
30
- │ ├── settings.json # Permissions, hooks, sandbox config
31
- │ ├── workflow-meta.json # Version tracking and file hashes
32
- │ ├── agents/
33
- │ │ ├── universal/ # 5 always-installed agents
34
- │ │ └── optional/ # Selected agents by category
35
- │ ├── commands/ # 10 slash commands
36
- │ └── skills/
37
- │ ├── universal/ # 9 knowledge files
38
- │ └── templates/ # 3 project-specific placeholders
39
- ├── .mcp.json # MCP server configuration
40
- └── docs/spec/
41
- ├── PROGRESS.md # Session-to-session tracking
42
- └── SPEC.md # Project specification template
43
- ```
44
-
45
- - **CLAUDE.md** — Lean (<50 lines) project config that Claude reads every session. Points to skills for deeper guidance.
46
- - **Agents** — Autonomous specialist workers that run in isolation (worktrees) for focused tasks.
47
- - **Commands** — Slash commands (`/start`, `/end`, `/verify`, etc.) for common workflows.
48
- - **Skills** — Knowledge files Claude loads on demand — testing philosophy, git conventions, context management, and more.
49
- - **Settings** — Permissions, hooks, and sandbox configuration tuned for your tech stack.
50
-
51
- ## Commands
52
-
53
- | Command | Purpose |
54
- |---|---|
55
- | `worclaude init` | Set up workflow in a new or existing project |
56
- | `worclaude upgrade` | Update workflow to latest version |
57
- | `worclaude status` | Show current installation status |
58
- | `worclaude backup` | Create a backup of Claude setup |
59
- | `worclaude restore` | Restore from a backup |
60
- | `worclaude diff` | Compare current setup vs installed version |
61
-
62
- ## Three Scenarios
63
-
64
- `init` detects your project state and adapts:
65
-
66
- ### 1. Fresh project — full interactive scaffold
67
-
68
- No existing `.claude/` directory or `CLAUDE.md`. You get the full setup flow: choose project type, tech stack, languages, and optional agents. Everything is scaffolded from scratch.
69
-
70
- ### 2. Existing project — smart merge
71
-
72
- You already have a `CLAUDE.md` or `.claude/` directory. The tool creates a timestamped backup, then merges intelligently:
73
-
74
- - **Missing files** (agents, commands, skills) are added directly
75
- - **Conflicting files** are saved as `.workflow-ref.md` alongside yours
76
- - **CLAUDE.md** is analyzed for missing sections — merge interactively or save suggestions to a separate file
77
- - **Hooks and permissions** offer keep/replace/chain options for conflicts
78
-
79
- ### 3. Upgrade — update to latest version
80
-
81
- You already have `workflow-meta.json` from a previous install. The tool compares file hashes to detect what changed, auto-updates unmodified files, and prompts for files you've customized.
82
-
83
- ## Agents
84
-
85
- ### Universal Agents (always installed)
86
-
87
- | Agent | Purpose |
88
- |---|---|
89
- | plan-reviewer | Reviews plans for ambiguity, missing verification, and scope |
90
- | code-simplifier | Finds duplication, simplifies complexity, ensures consistency |
91
- | test-writer | Writes comprehensive unit, integration, and edge case tests |
92
- | build-validator | Validates build, tests, linting, and type checking |
93
- | verify-app | Tests actual running application behavior end-to-end |
94
-
95
- ### Optional Agent Catalog
96
-
97
- During `init`, you choose from 18 optional agents across 6 categories. The tool pre-selects categories based on your project type:
98
-
99
- | Project Type | Recommended Categories |
100
- |---|---|
101
- | Full-stack web | Frontend, Backend, Quality, Documentation |
102
- | Backend / API | Backend, Quality |
103
- | Frontend / UI | Frontend, Quality |
104
- | CLI tool | Quality, Documentation |
105
- | Data / ML / AI | Data/AI, Backend |
106
- | Library / Package | Documentation, Quality |
107
- | DevOps / Infrastructure | DevOps |
108
-
109
- **Available categories:**
110
-
111
- | Category | Agents |
112
- |---|---|
113
- | Frontend | ui-reviewer, style-enforcer |
114
- | Backend | api-designer, database-analyst, auth-auditor |
115
- | DevOps | dependency-manager, ci-fixer, docker-helper, deploy-validator |
116
- | Quality | bug-fixer, security-reviewer, performance-auditor, refactorer |
117
- | Documentation | doc-writer, changelog-generator |
118
- | Data / AI | data-pipeline-reviewer, ml-experiment-tracker, prompt-engineer |
9
+ <!-- GIF goes here once recorded -->
10
+ <!-- ![worclaude init demo](docs/public/demo.gif) -->
119
11
 
120
- After selecting categories, you can fine-tune by adding or removing individual agents.
12
+ [Full Documentation](https://sefaertunc.github.io/Worclaude/) · [Interactive Demo](https://sefaertunc.github.io/Worclaude/demo/) · [npm](https://www.npmjs.com/package/worclaude)
121
13
 
122
- ## Slash Commands
14
+ 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, 10 slash commands, 12 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.
123
15
 
124
- All 10 commands are installed in every project:
16
+ ---
125
17
 
126
- | Command | Purpose |
127
- |---|---|
128
- | `/start` | Read PROGRESS.md, report current state and what's next |
129
- | `/end` | Update PROGRESS.md with session work, blockers, next steps |
130
- | `/commit-push-pr` | Stage, commit, push, and create PR with description |
131
- | `/review-plan` | Send implementation plan to plan-reviewer agent |
132
- | `/techdebt` | Scan for duplicated code, dead code, TODOs, complexity |
133
- | `/verify` | Run full verification: tests, build, lint, type checks |
134
- | `/compact-safe` | Compress context; PostCompact hook re-reads key files |
135
- | `/status` | Report current task, branch, test status, context usage |
136
- | `/update-claude-md` | Propose CLAUDE.md updates based on session learnings |
137
- | `/setup` | **Post-install interview** — fills in all project-specific content |
18
+ ## What You Get
138
19
 
139
- `/setup` is the key post-install action. After running `worclaude init`, open Claude Code and run `/setup`. It interviews you about your project and fills in CLAUDE.md, skills, SPEC.md, and configuration files with real content.
20
+ `worclaude init` installs a production-ready Claude Code workflow:
140
21
 
141
- ## Skills
22
+ **Agents (23 total)**
142
23
 
143
- Skills are knowledge files that Claude loads on demand. They keep CLAUDE.md lean while providing deep guidance when needed.
24
+ - 5 universal: plan-reviewer, code-simplifier, test-writer, build-validator, verify-app
25
+ - 18 optional across 6 categories: Backend, Frontend, DevOps, Quality, Documentation, Data/AI
144
26
 
145
- ### Universal Skills (9)
27
+ **Slash Commands (10)**
28
+ `/start` `/end` `/commit-push-pr` `/review-plan` `/techdebt` `/verify` `/compact-safe` `/status` `/update-claude-md` `/setup`
146
29
 
147
- | Skill | What it teaches |
148
- |---|---|
149
- | context-management | Context budget, compaction timing, subagent offloading |
150
- | git-conventions | Branch naming, commits, PR workflow, worktrees |
151
- | planning-with-files | Implementation plan structure and review process |
152
- | review-and-handoff | Session endings, handoff format, progress tracking |
153
- | prompt-engineering | Effective prompting patterns for Claude |
154
- | verification | Domain-specific verification beyond running tests |
155
- | testing | Test philosophy, coverage strategy, test structure |
156
- | claude-md-maintenance | Writing and maintaining rules in CLAUDE.md |
157
- | subagent-usage | When and how to delegate work to subagents |
30
+ **Skills (12)**
158
31
 
159
- ### Template Skills (3)
32
+ - 9 universal knowledge files (testing, git conventions, context management, and more)
33
+ - 3 project-specific templates filled in by `/setup`
160
34
 
161
- These are project-specific placeholders filled in by `/setup`:
35
+ **Hooks**
162
36
 
163
- - **backend-conventions** Stack-specific backend patterns and conventions
164
- - **frontend-design-system** Design system, components, styling approach
165
- - **project-patterns** Architectural patterns specific to your codebase
37
+ - PostToolUse formatter (auto-formats on every write)
38
+ - PostCompact re-injection (re-reads key files after compaction)
39
+ - Stop notifications (desktop alert when Claude finishes)
166
40
 
167
- ## The Pipeline
41
+ **Configuration**
168
42
 
169
- The workflow follows a 6-stage pipeline for every significant task:
43
+ - Pre-configured permissions per tech stack (Node.js, Python, Go, Rust, and more)
44
+ - CLAUDE.md template with progressive disclosure
45
+ - Sandbox, effort, and output defaults ready out of the box
170
46
 
171
- ```
172
- Design → Review → Execute → Quality → Verify → PR
173
- ```
174
-
175
- 1. **Design** — Write an implementation plan in a plan file
176
- 2. **Review** — Send plan to `plan-reviewer` agent for critical review
177
- 3. **Execute** — Implement the plan, one step at a time
178
- 4. **Quality** — Run `code-simplifier`, `test-writer` agents
179
- 5. **Verify** — Run `build-validator`, `verify-app` agents, then `/verify`
180
- 6. **PR** — Use `/commit-push-pr` to stage, commit, push, and create a pull request
181
-
182
- ## Configuration
183
-
184
- ### Permissions
185
-
186
- Settings include allow-lists for common tools, tuned per tech stack:
187
-
188
- ```json
189
- {
190
- "permissions": {
191
- "allow": [
192
- "Read(*)", "Glob(*)", "Grep(*)",
193
- "Bash(git *)", "Bash(npm test)", "Bash(npx prettier *)"
194
- ]
195
- }
196
- }
197
- ```
198
-
199
- ### Hooks
47
+ ---
200
48
 
201
- Three universal hooks are installed:
202
-
203
- 1. **Format on write** — Auto-formats files after every Write/Edit (prettier, ruff, cargo fmt, gofmt — based on your stack)
204
- 2. **Notification on stop** — Desktop notification when Claude finishes a long task (Linux, macOS, Windows)
205
- 3. **PostCompact re-inject** — Automatically re-reads CLAUDE.md and PROGRESS.md after context compaction
206
-
207
- ### Sandbox
208
-
209
- Default: `auto-allow` mode. Safety comes from structural isolation (worktrees, focused agents) rather than restrictive permissions.
210
-
211
- ### Effort & Output
212
-
213
- - **Effort:** `high` by default, escalate to `max` per session for complex tasks
214
- - **Output:** `concise` by default, switch to `explanatory` when exploring unfamiliar territory
215
-
216
- ## After Install — `/setup`
217
-
218
- After running `worclaude init`, start Claude Code in your project and run:
49
+ ## Quick Start
219
50
 
51
+ ```bash
52
+ npm install -g worclaude
53
+ cd your-project
54
+ worclaude init
220
55
  ```
221
- /setup
222
- ```
223
-
224
- This launches an interactive interview that:
225
- - Asks about your project's purpose, architecture, and conventions
226
- - Fills in CLAUDE.md with real project context
227
- - Populates SPEC.md with your actual tech stack and requirements
228
- - Configures template skills with your specific patterns
229
- - Sets up PROGRESS.md with your current state
230
-
231
- This is the single most important step after installation. The scaffold provides structure; `/setup` fills it with your project's substance.
232
-
233
- ## Customization
234
-
235
- ### Adding custom agents
236
-
237
- Create a `.md` file in `.claude/agents/` with a task description and instructions. Agents run autonomously — give them clear scope, success criteria, and verification steps.
238
56
 
239
- ### Adding custom commands
57
+ Follow the interactive prompts to select your project type, tech stack, and agents. Then open Claude Code and run `/setup` to fill in your project-specific content.
240
58
 
241
- Create a `.md` file in `.claude/commands/`. Commands are invoked as `/command-name` in Claude Code. Keep them focused on a single workflow.
59
+ For parallel tasks, run Claude with worktrees: `claude --worktree --tmux`
242
60
 
243
- ### Adding custom skills
61
+ ---
244
62
 
245
- Create a `.md` file in `.claude/skills/`. Skills are loaded on demand when Claude needs domain knowledge. Reference them from CLAUDE.md with `See .claude/skills/your-skill.md`.
246
-
247
- ### Settings
248
-
249
- `settings.json` controls permissions, hooks, and sandbox. Edit directly or use `worclaude upgrade` to merge in new defaults while preserving your customizations.
250
-
251
- ### CLAUDE.md
252
-
253
- CLAUDE.md grows naturally during development. Use `/update-claude-md` to propose additions based on patterns and gotchas discovered during sessions. Keep it under 50 lines — move detailed guidance to skills.
254
-
255
- ## Philosophy
256
-
257
- Six principles guide the workflow design:
258
-
259
- 1. **Be a dispatcher, not an operator** — Use agents for focused tasks. The main session coordinates; specialists execute.
260
- 2. **Compounding improvement** — CLAUDE.md, skills, and PROGRESS.md accumulate project knowledge over time. Every session makes the next one better.
261
- 3. **Verification multiplies quality** — Tests alone aren't enough. Verify the running application, review plans before executing, validate builds after changes.
262
- 4. **Reduce friction, maintain safety** — Auto-allow sandbox, permissive tool access, auto-formatting. Safety comes from structure (worktrees, focused agents), not restrictions.
263
- 5. **Progressive disclosure** — CLAUDE.md is lean. Skills load on demand. Agents activate when needed. Complexity is available but not imposed.
264
- 6. **Plan before you build** — Write implementation plans in files. Review them with `plan-reviewer`. Execute step by step. This prevents wasted work and catches issues early.
265
-
266
- ## Why?
63
+ ## Commands
267
64
 
268
- Boris Cherny published [53 tips for using Claude Code effectively](https://www.howborisusesclaudecode.com/). They cover everything from CLAUDE.md structure to agent design to session management. The tips are excellent — but implementing them manually in every project is tedious and error-prone.
65
+ | Command | Description |
66
+ | ------------------- | ---------------------------------------------- |
67
+ | `worclaude init` | Scaffold workflow into new or existing project |
68
+ | `worclaude upgrade` | Update universal components to latest version |
69
+ | `worclaude status` | Show current workflow state and version |
70
+ | `worclaude backup` | Create timestamped backup of workflow files |
71
+ | `worclaude restore` | Restore from a previous backup |
72
+ | `worclaude diff` | Compare current setup vs latest version |
269
73
 
270
- `worclaude` packages all 53 tips into a single `init` command. You get the full workflow in seconds, customized for your tech stack, with upgrade support to pick up improvements over time.
74
+ The `init` command detects existing setups and merges intelligently no data is overwritten without your confirmation. Use `upgrade` to pull in new features while preserving your customizations.
271
75
 
272
- ## Credits
76
+ See the [full command reference](https://sefaertunc.github.io/Worclaude/reference/commands) for detailed usage and options.
273
77
 
274
- This project is derived from the [53 tips by Boris Cherny](https://www.howborisusesclaudecode.com/), the creator of Claude Code at Anthropic. The tips were analyzed, systematized, and packaged into a reusable CLI tool.
78
+ ---
275
79
 
276
- ## License
80
+ ## Links
277
81
 
278
- MIT
82
+ - [Full Documentation](https://sefaertunc.github.io/Worclaude/)
83
+ - [Interactive Demo](https://sefaertunc.github.io/Worclaude/demo/)
84
+ - [Contributing](CONTRIBUTING.md)
85
+ - [License: MIT](LICENSE)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "worclaude",
3
- "version": "1.1.0",
3
+ "version": "1.2.1",
4
4
  "description": "CLI tool that scaffolds a comprehensive Claude Code workflow into any project",
5
5
  "type": "module",
6
6
  "bin": {
@@ -31,6 +31,9 @@
31
31
  "test:coverage": "vitest run --coverage",
32
32
  "lint": "eslint src/ tests/",
33
33
  "format": "prettier --write .",
34
+ "docs:dev": "vitepress dev docs",
35
+ "docs:build": "vitepress build docs",
36
+ "docs:preview": "vitepress preview docs",
34
37
  "prepublishOnly": "npm test && npm run lint"
35
38
  },
36
39
  "keywords": [
@@ -57,6 +60,7 @@
57
60
  "devDependencies": {
58
61
  "eslint": "^9.22.0",
59
62
  "prettier": "^3.5.3",
63
+ "vitepress": "^1.6.4",
60
64
  "vitest": "^3.0.9"
61
65
  }
62
66
  }
@@ -19,8 +19,8 @@ export async function backupCommand() {
19
19
  }
20
20
 
21
21
  display.newline();
22
- display.success(`Backed up to ${path.basename(backupDir)}/`);
23
- display.newline();
22
+ display.success(`Backup created!`);
23
+ display.success(`${display.dimColor(path.basename(backupDir) + '/')}`);
24
24
 
25
25
  // Summarize contents
26
26
  const contents = [];
@@ -35,7 +35,6 @@ export async function backupCommand() {
35
35
  const commands = await listFiles(path.join(claudeBackup, 'commands'));
36
36
  const skills = await listFiles(path.join(claudeBackup, 'skills'));
37
37
  const parts = [];
38
- if (await fileExists(path.join(claudeBackup, 'settings.json'))) parts.push('settings.json');
39
38
  if (agents.length > 0) parts.push(`${agents.length} agents`);
40
39
  if (commands.length > 0) parts.push(`${commands.length} commands`);
41
40
  if (skills.length > 0) parts.push(`${skills.length} skills`);
@@ -47,9 +46,6 @@ export async function backupCommand() {
47
46
  }
48
47
 
49
48
  if (contents.length > 0) {
50
- display.info('Contents:');
51
- for (const item of contents) {
52
- display.dim(` ${item}`);
53
- }
49
+ display.dim(` ${contents.join(' · ')}`);
54
50
  }
55
51
  }
@@ -17,52 +17,52 @@ export async function diffCommand() {
17
17
  }
18
18
 
19
19
  const categories = await categorizeFiles(projectRoot, meta);
20
+ const cliVersion = await getPackageVersion();
20
21
 
21
- display.header('Worclaude Diff');
22
- display.newline();
23
- display.dim(` Comparing current setup to workflow v${meta.version}:`);
22
+ display.sectionHeader(`WORCLAUDE DIFF (v${meta.version} → v${cliVersion})`);
24
23
  display.newline();
25
24
 
26
25
  let hasChanges = false;
27
26
 
28
27
  if (categories.modified.length > 0) {
29
28
  hasChanges = true;
30
- display.info('Modified (your changes):');
29
+ display.barLine(`${display.yellow('~')} Modified (your changes):`);
31
30
  for (const { key } of categories.modified) {
32
- display.dim(` ~ .claude/${key}`);
31
+ display.barLine(` ${display.yellow(key)}`);
33
32
  }
34
33
  display.newline();
35
34
  }
36
35
 
37
36
  if (categories.deleted.length > 0) {
38
37
  hasChanges = true;
39
- display.info('Deleted (removed since install):');
38
+ display.barLine(`${display.red('-')} Deleted (removed since install):`);
40
39
  for (const { key } of categories.deleted) {
41
- display.dim(` - .claude/${key}`);
40
+ display.barLine(` ${display.red(key)}`);
42
41
  }
43
42
  display.newline();
44
43
  }
45
44
 
46
45
  if (categories.userAdded.length > 0) {
47
46
  hasChanges = true;
48
- display.info('Extra (you added):');
47
+ display.barLine(`${display.green('+')} Extra (you added):`);
49
48
  for (const { key } of categories.userAdded) {
50
- display.dim(` + .claude/${key}`);
49
+ display.barLine(` ${display.green(key)}`);
51
50
  }
52
51
  display.newline();
53
52
  }
54
53
 
55
54
  if (categories.outdated.length > 0) {
56
55
  hasChanges = true;
57
- const cliVersion = await getPackageVersion();
58
- display.info(`Outdated (newer version available in CLI v${cliVersion}):`);
56
+ display.barLine(`${display.blue('↑')} Outdated (newer version available):`);
59
57
  for (const { key } of categories.outdated) {
60
- display.dim(`.claude/${key}`);
58
+ display.barLine(` ${display.blue(key)}`);
61
59
  }
62
60
  display.newline();
63
61
  }
64
62
 
65
- display.dim(` Unchanged: ${categories.unchanged.length} files`);
63
+ display.barLine(
64
+ `${display.dimColor('=')} Unchanged: ${display.dimColor(`${categories.unchanged.length} files`)}`
65
+ );
66
66
 
67
67
  if (!hasChanges) {
68
68
  display.newline();
@@ -71,6 +71,6 @@ export async function diffCommand() {
71
71
 
72
72
  if (categories.outdated.length > 0) {
73
73
  display.newline();
74
- display.info('Run `worclaude upgrade` to update outdated files.');
74
+ display.barLine(`Run ${display.purple('worclaude upgrade')} to apply changes.`);
75
75
  }
76
76
  }