claude-code-arcane 2.1.0 → 2.3.0
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/CHANGELOG.md +29 -0
- package/README.md +57 -55
- package/agents/audio/audio-director.md +90 -0
- package/agents/audio/audio-programmer.md +97 -0
- package/agents/audio/audio-qa.md +95 -0
- package/agents/audio/composer.md +88 -0
- package/agents/audio/technical-sound-designer.md +90 -0
- package/agents/audio/voice-director.md +96 -0
- package/agents/career/career-strategist.md +88 -0
- package/agents/career/cv-reviewer.md +81 -0
- package/agents/career/hiring-manager.md +68 -0
- package/agents/career/mock-interviewer.md +76 -0
- package/agents/freelance/client-screener.md +84 -0
- package/agents/freelance/discovery-call.md +65 -0
- package/agents/freelance/pipeline-strategist.md +99 -0
- package/agents/freelance/proposal-reviewer.md +82 -0
- package/dist/cli.js +52 -13
- package/docs/RELEASE-SETUP.md +1 -1
- package/docs/SKILLS-CATALOG.md +47 -3
- package/docs/USER-GUIDE.md +77 -72
- package/docs/agent-hierarchy.md +21 -1
- package/docs/presentations/build_arcane_deck.py +2 -2
- package/docs/presentations/build_arcane_deck_12.py +2 -2
- package/package.json +2 -2
- package/profiles/audio.yaml +45 -0
- package/profiles/freelance.yaml +43 -0
- package/profiles/job-hunt.yaml +5 -2
- package/rules/drafter-reviewer.md +16 -3
- package/rules/freelance-guardrails.md +53 -0
- package/rules/gamedev/audio-code.md +45 -0
- package/skills/adaptive-music/SKILL.md +171 -0
- package/skills/adaptive-music/references/anti-patterns.md +53 -0
- package/skills/audio-audit/SKILL.md +164 -0
- package/skills/audio-audit/references/anti-patterns.md +65 -0
- package/skills/audio-audit/scripts/check_assets.py +208 -0
- package/skills/audio-bible/SKILL.md +119 -0
- package/skills/audio-bible/references/anti-patterns.md +39 -0
- package/skills/audio-mix/SKILL.md +151 -0
- package/skills/audio-mix/references/anti-patterns.md +65 -0
- package/skills/audio-spec/SKILL.md +107 -0
- package/skills/audio-spec/references/anti-patterns.md +45 -0
- package/skills/career-registry/SKILL.md +95 -0
- package/skills/career-registry/scripts/career_registry.py +488 -0
- package/skills/client-screen/SKILL.md +83 -0
- package/skills/client-screen/references/red-flags.md +95 -0
- package/skills/cover-letter/SKILL.md +4 -3
- package/skills/cv-tailor/SKILL.md +11 -2
- package/skills/freelance-deliver/SKILL.md +90 -0
- package/skills/freelance-hunt/SKILL.md +126 -0
- package/skills/freelance-hunt/references/templates/Connects.md +39 -0
- package/skills/freelance-hunt/references/templates/Contrato.md +60 -0
- package/skills/freelance-hunt/references/templates/Propuesta.md +66 -0
- package/skills/freelance-kickoff/SKILL.md +94 -0
- package/skills/freelance-pipeline/SKILL.md +109 -0
- package/skills/freelance-pipeline/scripts/import_history.py +425 -0
- package/skills/freelance-profile/SKILL.md +93 -0
- package/skills/freelance-proposal/SKILL.md +112 -0
- package/skills/freelance-scan/SKILL.md +196 -0
- package/skills/freelance-scan/references/dedup.md +35 -0
- package/skills/freelance-scan/references/platforms.md +167 -0
- package/skills/freelance-scan/scripts/freelance_search.py +1077 -0
- package/skills/interview-prep/SKILL.md +11 -3
- package/skills/job-aplicar/SKILL.md +5 -1
- package/skills/job-hunt/SKILL.md +17 -0
- package/skills/job-outcome/SKILL.md +15 -1
- package/skills/job-upskill/SKILL.md +10 -2
- package/skills/middleware-integration/SKILL.md +186 -0
- package/skills/middleware-integration/references/anti-patterns.md +69 -0
- package/skills/midi-compose/SKILL.md +136 -0
- package/skills/midi-compose/references/smf-format.md +129 -0
- package/skills/midi-compose/scripts/compose_midi.py +326 -0
- package/skills/midi-compose/templates/example-composition.json +69 -0
- package/skills/music-composition/SKILL.md +106 -0
- package/skills/music-composition/references/form.md +57 -0
- package/skills/music-composition/references/game-music.md +82 -0
- package/skills/music-composition/references/harmony.md +82 -0
- package/skills/music-composition/references/melody.md +48 -0
- package/skills/music-composition/references/orchestration.md +69 -0
- package/skills/music-composition/references/rhythm-groove.md +49 -0
- package/skills/procedural-audio/SKILL.md +157 -0
- package/skills/procedural-audio/references/anti-patterns.md +45 -0
- package/skills/sfx-design/SKILL.md +130 -0
- package/skills/sfx-design/references/anti-patterns.md +53 -0
- package/skills/spatial-audio/SKILL.md +139 -0
- package/skills/spatial-audio/references/anti-patterns.md +53 -0
- package/skills/ui-sound-design/SKILL.md +133 -0
- package/skills/ui-sound-design/references/anti-patterns.md +57 -0
- package/skills/voice-pipeline/SKILL.md +150 -0
- package/skills/voice-pipeline/references/anti-patterns.md +69 -0
package/docs/USER-GUIDE.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
## What is Arcane?
|
|
4
4
|
|
|
5
|
-
Arcane is a configuration harness for [Claude Code](https://docs.anthropic.com/en/docs/claude-code). It provides a curated library of **
|
|
5
|
+
Arcane is a configuration harness for [Claude Code](https://docs.anthropic.com/en/docs/claude-code). It provides a curated library of **397 skills**, **106 agents**, **16 hooks**, and **27 rules** that you selectively deploy into any project. Instead of shipping everything to every project (wasting tokens and degrading performance), you pick a **profile** that matches your stack and only the relevant tools get installed.
|
|
6
6
|
|
|
7
7
|
## Table of Contents
|
|
8
8
|
|
|
@@ -38,7 +38,7 @@ Arcane is a configuration harness for [Claude Code](https://docs.anthropic.com/e
|
|
|
38
38
|
No installation needed — Arcane runs via `npx`:
|
|
39
39
|
|
|
40
40
|
```bash
|
|
41
|
-
npx arcane install backend-ts+agile
|
|
41
|
+
npx claude-code-arcane install backend-ts+agile
|
|
42
42
|
```
|
|
43
43
|
|
|
44
44
|
That's it. `npx` downloads and runs the latest version automatically.
|
|
@@ -50,7 +50,7 @@ That's it. `npx` downloads and runs the latest version automatically.
|
|
|
50
50
|
cd ~/projects/my-app
|
|
51
51
|
|
|
52
52
|
# 2. Install a profile
|
|
53
|
-
npx arcane install backend-ts+agile
|
|
53
|
+
npx claude-code-arcane install backend-ts+agile
|
|
54
54
|
|
|
55
55
|
# 3. Open Claude Code
|
|
56
56
|
claude
|
|
@@ -62,130 +62,135 @@ Your project now has skills, agents, hooks, rules, and permissions tailored for
|
|
|
62
62
|
|
|
63
63
|
## Commands Reference
|
|
64
64
|
|
|
65
|
-
### `npx arcane install` — Install profiles
|
|
65
|
+
### `npx claude-code-arcane install` — Install profiles
|
|
66
66
|
|
|
67
67
|
```bash
|
|
68
68
|
# Show available profiles (interactive)
|
|
69
|
-
npx arcane install
|
|
69
|
+
npx claude-code-arcane install
|
|
70
70
|
|
|
71
71
|
# Install a specific profile
|
|
72
|
-
npx arcane install backend-ts
|
|
72
|
+
npx claude-code-arcane install backend-ts
|
|
73
73
|
|
|
74
74
|
# Combine profiles with +
|
|
75
|
-
npx arcane install backend-ts+agile+testing
|
|
75
|
+
npx claude-code-arcane install backend-ts+agile+testing
|
|
76
76
|
|
|
77
77
|
# Install to a specific directory (default: current dir)
|
|
78
|
-
npx arcane install unity-dev --target ~/projects/my-game
|
|
78
|
+
npx claude-code-arcane install unity-dev --target ~/projects/my-game
|
|
79
79
|
|
|
80
80
|
# Preview without installing
|
|
81
|
-
npx arcane install unity-dev --dry-run
|
|
81
|
+
npx claude-code-arcane install unity-dev --dry-run
|
|
82
82
|
|
|
83
83
|
# Force overwrite without backup
|
|
84
|
-
npx arcane install unity-dev --force
|
|
84
|
+
npx claude-code-arcane install unity-dev --force
|
|
85
85
|
```
|
|
86
86
|
|
|
87
87
|
If `.claude/` already exists, it gets backed up to `.claude.bak/` and replaced.
|
|
88
88
|
|
|
89
|
-
### `npx arcane add` — Add skills or profiles
|
|
89
|
+
### `npx claude-code-arcane add` — Add skills or profiles
|
|
90
90
|
|
|
91
91
|
```bash
|
|
92
92
|
# Add a single skill
|
|
93
|
-
npx arcane add api-design
|
|
93
|
+
npx claude-code-arcane add api-design
|
|
94
94
|
|
|
95
95
|
# Add multiple skills
|
|
96
|
-
npx arcane add security-audit owasp
|
|
96
|
+
npx claude-code-arcane add security-audit owasp
|
|
97
97
|
|
|
98
98
|
# Add an entire profile as addon
|
|
99
|
-
npx arcane add +security
|
|
99
|
+
npx claude-code-arcane add +security
|
|
100
100
|
|
|
101
101
|
# Add multiple profiles
|
|
102
|
-
npx arcane add +database +testing
|
|
102
|
+
npx claude-code-arcane add +database +testing
|
|
103
103
|
```
|
|
104
104
|
|
|
105
|
-
### `npx arcane remove` — Remove skills, profiles, or agents
|
|
105
|
+
### `npx claude-code-arcane remove` — Remove skills, profiles, or agents
|
|
106
106
|
|
|
107
107
|
```bash
|
|
108
108
|
# Remove a single skill
|
|
109
|
-
npx arcane remove api-design
|
|
109
|
+
npx claude-code-arcane remove api-design
|
|
110
110
|
|
|
111
111
|
# Remove multiple skills
|
|
112
|
-
npx arcane remove slack postman
|
|
112
|
+
npx claude-code-arcane remove slack postman
|
|
113
113
|
|
|
114
114
|
# Remove entire profile (exclusive skills + agents + rules)
|
|
115
|
-
npx arcane remove +agile
|
|
115
|
+
npx claude-code-arcane remove +agile
|
|
116
116
|
|
|
117
117
|
# Mix: remove a profile and a skill
|
|
118
|
-
npx arcane remove +testing api-design
|
|
118
|
+
npx claude-code-arcane remove +testing api-design
|
|
119
|
+
|
|
120
|
+
# Remove using a specific content source instead of the installed version
|
|
121
|
+
npx claude-code-arcane remove +testing --source bundled
|
|
119
122
|
```
|
|
120
123
|
|
|
121
124
|
When removing a profile, Arcane only deletes assets **exclusive** to that profile. Skills, agents, and rules shared with other active profiles are preserved. Core skills (21) and the core profile cannot be removed.
|
|
122
125
|
|
|
123
|
-
|
|
126
|
+
What gets deleted is read from that profile's definition, so `remove` uses the content of the version recorded in your manifest. If that version is no longer cached it falls back to the current one and says so: a profile whose skill or agent list changed between the two can leave files behind, and `--source` is the escape hatch. The known limit is that two builds sharing a version number (a local checkout and the published release, say) are indistinguishable, so removing content installed from an unreleased source needs `--source bundled` explicitly.
|
|
127
|
+
|
|
128
|
+
### `npx claude-code-arcane list` — List available profiles and skills
|
|
124
129
|
|
|
125
130
|
```bash
|
|
126
|
-
npx arcane list
|
|
131
|
+
npx claude-code-arcane list
|
|
127
132
|
```
|
|
128
133
|
|
|
129
134
|
Shows all base profiles and add-ons with descriptions, and marks which are currently installed.
|
|
130
135
|
|
|
131
|
-
### `npx arcane status` — Check current installation
|
|
136
|
+
### `npx claude-code-arcane status` — Check current installation
|
|
132
137
|
|
|
133
138
|
```bash
|
|
134
|
-
npx arcane status
|
|
139
|
+
npx claude-code-arcane status
|
|
135
140
|
```
|
|
136
141
|
|
|
137
142
|
Shows installed profiles, skill count, rules, agents, installation date, and worktree info.
|
|
138
143
|
|
|
139
|
-
### `npx arcane update` — Check for updates
|
|
144
|
+
### `npx claude-code-arcane update` — Check for updates
|
|
140
145
|
|
|
141
146
|
```bash
|
|
142
|
-
npx arcane update
|
|
147
|
+
npx claude-code-arcane update
|
|
143
148
|
|
|
144
149
|
# Quiet mode (for hooks — fails silently)
|
|
145
|
-
npx arcane update --quiet
|
|
150
|
+
npx claude-code-arcane update --quiet
|
|
146
151
|
```
|
|
147
152
|
|
|
148
|
-
### `npx arcane clean` — Remove Arcane from a project
|
|
153
|
+
### `npx claude-code-arcane clean` — Remove Arcane from a project
|
|
149
154
|
|
|
150
155
|
```bash
|
|
151
|
-
npx arcane clean --force
|
|
156
|
+
npx claude-code-arcane clean --force
|
|
152
157
|
```
|
|
153
158
|
|
|
154
159
|
Removes `.claude/` and `.claude.bak/` from the current directory. Requires `--force` flag.
|
|
155
160
|
|
|
156
|
-
### `npx arcane worktree` — Create worktrees with Arcane
|
|
161
|
+
### `npx claude-code-arcane worktree` — Create worktrees with Arcane
|
|
157
162
|
|
|
158
163
|
```bash
|
|
159
164
|
# Create worktree + install Arcane in one step
|
|
160
|
-
npx arcane worktree feat/new-api --profile backend-ts+agile
|
|
165
|
+
npx claude-code-arcane worktree feat/new-api --profile backend-ts+agile
|
|
161
166
|
|
|
162
167
|
# Inherits profile from current installation
|
|
163
|
-
npx arcane worktree feat/new-api
|
|
168
|
+
npx claude-code-arcane worktree feat/new-api
|
|
164
169
|
|
|
165
170
|
# With dependency install and Docker port isolation
|
|
166
|
-
npx arcane worktree feat/new-api --install-deps --isolate
|
|
171
|
+
npx claude-code-arcane worktree feat/new-api --install-deps --isolate
|
|
167
172
|
|
|
168
173
|
# Custom path and base branch
|
|
169
|
-
npx arcane worktree feat/new-api --path ../my-api-worktree --base develop
|
|
174
|
+
npx claude-code-arcane worktree feat/new-api --path ../my-api-worktree --base develop
|
|
170
175
|
|
|
171
176
|
# Preview without creating
|
|
172
|
-
npx arcane worktree feat/new-api --dry-run
|
|
177
|
+
npx claude-code-arcane worktree feat/new-api --dry-run
|
|
173
178
|
|
|
174
179
|
# Don't share hooks/docs from current installation
|
|
175
|
-
npx arcane worktree feat/new-api --no-share
|
|
180
|
+
npx claude-code-arcane worktree feat/new-api --no-share
|
|
176
181
|
```
|
|
177
182
|
|
|
178
|
-
### `npx arcane global` — Manage global hooks
|
|
183
|
+
### `npx claude-code-arcane global` — Manage global hooks
|
|
179
184
|
|
|
180
185
|
```bash
|
|
181
186
|
# Install global SessionStart hook (worktree-isolation auto-apply)
|
|
182
|
-
npx arcane global
|
|
187
|
+
npx claude-code-arcane global
|
|
183
188
|
|
|
184
189
|
# Show global hooks status
|
|
185
|
-
npx arcane global --status
|
|
190
|
+
npx claude-code-arcane global --status
|
|
186
191
|
|
|
187
192
|
# Remove global hooks
|
|
188
|
-
npx arcane global --remove
|
|
193
|
+
npx claude-code-arcane global --remove
|
|
189
194
|
```
|
|
190
195
|
|
|
191
196
|
---
|
|
@@ -252,7 +257,7 @@ Every installation automatically loads `core.yaml` first:
|
|
|
252
257
|
Profiles are combined using the `+` separator. The system deduplicates skills automatically.
|
|
253
258
|
|
|
254
259
|
```bash
|
|
255
|
-
npx arcane install <base>[+<base>][+<addon>][+<addon>]
|
|
260
|
+
npx claude-code-arcane install <base>[+<base>][+<addon>][+<addon>]
|
|
256
261
|
```
|
|
257
262
|
|
|
258
263
|
### Rules
|
|
@@ -274,30 +279,30 @@ After the initial install, you can incrementally add or remove skills and profil
|
|
|
274
279
|
|
|
275
280
|
```bash
|
|
276
281
|
# Start with a base profile
|
|
277
|
-
npx arcane install backend-ts
|
|
282
|
+
npx claude-code-arcane install backend-ts
|
|
278
283
|
|
|
279
284
|
# Later, add testing and security
|
|
280
|
-
npx arcane add +testing +security
|
|
285
|
+
npx claude-code-arcane add +testing +security
|
|
281
286
|
|
|
282
287
|
# Add a specific skill you need
|
|
283
|
-
npx arcane add docker-setup
|
|
288
|
+
npx claude-code-arcane add docker-setup
|
|
284
289
|
|
|
285
290
|
# Check what you have
|
|
286
|
-
npx arcane status
|
|
291
|
+
npx claude-code-arcane status
|
|
287
292
|
```
|
|
288
293
|
|
|
289
294
|
### Remove workflow
|
|
290
295
|
|
|
291
296
|
```bash
|
|
292
297
|
# Remove a profile you no longer need (only exclusive assets are deleted)
|
|
293
|
-
npx arcane remove +testing
|
|
298
|
+
npx claude-code-arcane remove +testing
|
|
294
299
|
|
|
295
300
|
# Remove a specific skill
|
|
296
|
-
npx arcane remove docker-setup
|
|
301
|
+
npx claude-code-arcane remove docker-setup
|
|
297
302
|
|
|
298
303
|
# Start over completely
|
|
299
|
-
npx arcane clean --force
|
|
300
|
-
npx arcane install backend-ts+agile
|
|
304
|
+
npx claude-code-arcane clean --force
|
|
305
|
+
npx claude-code-arcane install backend-ts+agile
|
|
301
306
|
```
|
|
302
307
|
|
|
303
308
|
---
|
|
@@ -310,18 +315,18 @@ Work on multiple features in parallel using git worktrees, each with its own Arc
|
|
|
310
315
|
|
|
311
316
|
```bash
|
|
312
317
|
# Create worktree + install Arcane in one step
|
|
313
|
-
npx arcane worktree feat/new-api --profile backend-ts+agile
|
|
318
|
+
npx claude-code-arcane worktree feat/new-api --profile backend-ts+agile
|
|
314
319
|
|
|
315
320
|
# Inherits profile from current installation
|
|
316
|
-
npx arcane worktree feat/new-api
|
|
321
|
+
npx claude-code-arcane worktree feat/new-api
|
|
317
322
|
|
|
318
323
|
# With dependency install and Docker port isolation
|
|
319
|
-
npx arcane worktree feat/new-api --install-deps --isolate
|
|
324
|
+
npx claude-code-arcane worktree feat/new-api --install-deps --isolate
|
|
320
325
|
```
|
|
321
326
|
|
|
322
327
|
### Worktree-aware installation
|
|
323
328
|
|
|
324
|
-
When you run `npx arcane install` inside a git worktree, Arcane automatically:
|
|
329
|
+
When you run `npx claude-code-arcane install` inside a git worktree, Arcane automatically:
|
|
325
330
|
- Detects it's in a worktree
|
|
326
331
|
- Finds the main worktree's Arcane installation
|
|
327
332
|
- **Shares** hooks/ and docs/ via symlink (read-only, identical across worktrees)
|
|
@@ -347,13 +352,13 @@ Install worktree-isolation scripts that auto-apply on every new Claude Code sess
|
|
|
347
352
|
|
|
348
353
|
```bash
|
|
349
354
|
# Install global hooks
|
|
350
|
-
npx arcane global
|
|
355
|
+
npx claude-code-arcane global
|
|
351
356
|
|
|
352
357
|
# Check status
|
|
353
|
-
npx arcane global --status
|
|
358
|
+
npx claude-code-arcane global --status
|
|
354
359
|
|
|
355
360
|
# Remove
|
|
356
|
-
npx arcane global --remove
|
|
361
|
+
npx claude-code-arcane global --remove
|
|
357
362
|
```
|
|
358
363
|
|
|
359
364
|
This copies scripts to `~/.claude/scripts/worktree-isolation/` and adds a `SessionStart` hook to `~/.claude/settings.json`.
|
|
@@ -364,41 +369,41 @@ This copies scripts to `~/.claude/scripts/worktree-isolation/` and adds a `Sessi
|
|
|
364
369
|
|
|
365
370
|
```bash
|
|
366
371
|
# Unity dev only
|
|
367
|
-
npx arcane install unity-dev
|
|
372
|
+
npx claude-code-arcane install unity-dev
|
|
368
373
|
|
|
369
374
|
# Unity with team and management
|
|
370
|
-
npx arcane install unity-dev+unity-design+agile+clickup
|
|
375
|
+
npx claude-code-arcane install unity-dev+unity-design+agile+clickup
|
|
371
376
|
|
|
372
377
|
# Go microservice with infra
|
|
373
|
-
npx arcane install backend-go+infra+agile+jira
|
|
378
|
+
npx claude-code-arcane install backend-go+infra+agile+jira
|
|
374
379
|
|
|
375
380
|
# Full-stack monorepo
|
|
376
|
-
npx arcane install backend-ts+frontend+testing+database
|
|
381
|
+
npx claude-code-arcane install backend-ts+frontend+testing+database
|
|
377
382
|
|
|
378
383
|
# Mobile app with CI/CD
|
|
379
|
-
npx arcane install mobile+agile+clickup+testing
|
|
384
|
+
npx claude-code-arcane install mobile+agile+clickup+testing
|
|
380
385
|
|
|
381
386
|
# Secure backend with docs
|
|
382
|
-
npx arcane install backend-ts+security+docs+database
|
|
387
|
+
npx claude-code-arcane install backend-ts+security+docs+database
|
|
383
388
|
|
|
384
389
|
# AI/ML project with data pipelines
|
|
385
|
-
npx arcane install backend-go+ai+infra
|
|
390
|
+
npx claude-code-arcane install backend-go+ai+infra
|
|
386
391
|
|
|
387
392
|
# SaaS with full marketing stack
|
|
388
|
-
npx arcane install backend-ts+marketing+business+finance
|
|
393
|
+
npx claude-code-arcane install backend-ts+marketing+business+finance
|
|
389
394
|
|
|
390
395
|
# Regulated medical device
|
|
391
|
-
npx arcane install backend-ts+regulatory+security+testing
|
|
396
|
+
npx claude-code-arcane install backend-ts+regulatory+security+testing
|
|
392
397
|
|
|
393
398
|
# With status bar
|
|
394
|
-
npx arcane install backend-ts+agile+statusline
|
|
399
|
+
npx claude-code-arcane install backend-ts+agile+statusline
|
|
395
400
|
```
|
|
396
401
|
|
|
397
402
|
---
|
|
398
403
|
|
|
399
404
|
## What Gets Installed
|
|
400
405
|
|
|
401
|
-
When you run `npx arcane install`, the following structure is created inside your project:
|
|
406
|
+
When you run `npx claude-code-arcane install`, the following structure is created inside your project:
|
|
402
407
|
|
|
403
408
|
```
|
|
404
409
|
my-project/.claude/
|
|
@@ -471,7 +476,7 @@ Once installed, manage the installation from within a Claude Code session:
|
|
|
471
476
|
|
|
472
477
|
### "Profile not found" error
|
|
473
478
|
|
|
474
|
-
Check available profiles with `npx arcane list`. Profile names are exact: `unity-dev`, not `unity`.
|
|
479
|
+
Check available profiles with `npx claude-code-arcane list`. Profile names are exact: `unity-dev`, not `unity`.
|
|
475
480
|
|
|
476
481
|
### Skills show as "WARN: not found"
|
|
477
482
|
|
|
@@ -511,15 +516,15 @@ Yes. The `.claude/` directory is part of your project. It persists until you run
|
|
|
511
516
|
|
|
512
517
|
### Can I add a single skill without changing profiles?
|
|
513
518
|
|
|
514
|
-
Yes. Use `npx arcane add <skill-name>` to add individual skills. Use `npx arcane remove <skill-name>` to remove them. Changes are tracked in the manifest.
|
|
519
|
+
Yes. Use `npx claude-code-arcane add <skill-name>` to add individual skills. Use `npx claude-code-arcane remove <skill-name>` to remove them. Changes are tracked in the manifest.
|
|
515
520
|
|
|
516
521
|
### How do I update Arcane?
|
|
517
522
|
|
|
518
523
|
```bash
|
|
519
|
-
npx arcane update
|
|
524
|
+
npx claude-code-arcane update
|
|
520
525
|
```
|
|
521
526
|
|
|
522
|
-
Since Arcane runs via `npx`, you always get the latest version. Use `npx arcane update` to check if a newer version is available.
|
|
527
|
+
Since Arcane runs via `npx`, you always get the latest version. Use `npx claude-code-arcane update` to check if a newer version is available.
|
|
523
528
|
|
|
524
529
|
### What's the difference between `+clickup` and `+jira`?
|
|
525
530
|
|
|
@@ -536,7 +541,7 @@ Yes, and it's recommended. This way everyone on the team gets the same Claude Co
|
|
|
536
541
|
|
|
537
542
|
### How many tokens does a profile consume?
|
|
538
543
|
|
|
539
|
-
Each skill adds ~30-100 tokens to the system prompt. A typical base profile (20-30 skills) adds ~1-2k tokens. The core profile adds ~500 tokens. Compare that to loading all
|
|
544
|
+
Each skill adds ~30-100 tokens to the system prompt. A typical base profile (20-30 skills) adds ~1-2k tokens. The core profile adds ~500 tokens. Compare that to loading all 397 skills, which is why selective deploy matters.
|
|
540
545
|
|
|
541
546
|
### Why replace instead of merge on install?
|
|
542
547
|
|
package/docs/agent-hierarchy.md
CHANGED
|
@@ -21,7 +21,7 @@ Cada división sigue una jerarquía de estudio real con 3 niveles de autoridad:
|
|
|
21
21
|
|
|
22
22
|
---
|
|
23
23
|
|
|
24
|
-
## Roster Completo (
|
|
24
|
+
## Roster Completo (143 Agentes)
|
|
25
25
|
|
|
26
26
|
### División 1 — Game Development Studio (44)
|
|
27
27
|
|
|
@@ -121,6 +121,26 @@ Cada división sigue una jerarquía de estudio real con 3 niveles de autoridad:
|
|
|
121
121
|
|
|
122
122
|
**Specialists (2):** `quality-manager`, `compliance-officer`
|
|
123
123
|
|
|
124
|
+
### División 14 — Career & Job Hunt (4)
|
|
125
|
+
|
|
126
|
+
**Leads (1):** `career-strategist`
|
|
127
|
+
|
|
128
|
+
**Specialists (3):** `cv-reviewer`, `hiring-manager`, `mock-interviewer`
|
|
129
|
+
|
|
130
|
+
Los cuatro son **read-only por diseño, no por precaución**. Existen porque la búsqueda laboral tiene lecturas que solo sirven con contexto fresco: el que escribió el CV no lo puede revisar, y el que preparó las respuestas STAR no puede simular la entrevista. Un agente que hereda ese contexto no agrega nada.
|
|
131
|
+
|
|
132
|
+
Se lanzan desde los skills del perfil `+job-hunt`, no entre ellos: `cv-reviewer` y `hiring-manager` son lentes independientes sobre la misma postulación y corren **en paralelo**.
|
|
133
|
+
|
|
134
|
+
### División 15 — Freelance (4)
|
|
135
|
+
|
|
136
|
+
**Leads (1):** `pipeline-strategist`
|
|
137
|
+
|
|
138
|
+
**Specialists (3):** `client-screener`, `proposal-reviewer`, `discovery-call`
|
|
139
|
+
|
|
140
|
+
Read-only, igual que la División 14, y por la misma razón de fondo con una vuelta más: acá el que redacta no solo está convencido de su propio texto, además **está gastando plata en enviarlo**. `client-screener` es explícitamente adversarial - arranca de la hipótesis de que el trabajo es un problema, porque el sesgo del usuario apunta al otro lado.
|
|
141
|
+
|
|
142
|
+
Se lanzan desde los skills de `+freelance`. `client-screener` y `proposal-reviewer` corren **en paralelo**: uno juzga al cliente, el otro la propuesta.
|
|
143
|
+
|
|
124
144
|
---
|
|
125
145
|
|
|
126
146
|
## Reglas de Delegación
|
|
@@ -152,7 +152,7 @@ txt(s, 0.78, 2.0, 11.7, 1.0,
|
|
|
152
152
|
rect(s, 0.78, 3.25, 11.7, 1.5, RGBColor(0x14, 0x11, 0x33), radius=True, line=VIOLET, line_w=1.5)
|
|
153
153
|
txt(s, 1.1, 3.45, 11, 0.4, [[("terminal", 11, MUTED, False)]])
|
|
154
154
|
txt(s, 1.1, 3.85, 11, 0.7,
|
|
155
|
-
[[("$ ", 26, CYAN, True), ("npx arcane install ", 26, WHITE, True),
|
|
155
|
+
[[("$ ", 26, CYAN, True), ("npx claude-code-arcane install ", 26, WHITE, True),
|
|
156
156
|
("backend-ts", 26, GREEN, True), ("+agile", 26, AMBER, True), ("+testing", 26, AMBER, True)]])
|
|
157
157
|
|
|
158
158
|
cols = [("backend-ts", "base", GREEN), ("+agile", "addon", AMBER), ("+testing", "addon", AMBER)]
|
|
@@ -301,7 +301,7 @@ txt(s, 0.78, 5.7, 11.7, 0.55,
|
|
|
301
301
|
[[("Configuracion de IA, modular y versionada — un comando para empezar.", 19, WHITE, True)]],
|
|
302
302
|
align=PP_ALIGN.CENTER)
|
|
303
303
|
txt(s, 0.78, 6.25, 11.7, 0.5,
|
|
304
|
-
[[("npx arcane install <profile>", 22, WHITE, True)]], align=PP_ALIGN.CENTER)
|
|
304
|
+
[[("npx claude-code-arcane install <profile>", 22, WHITE, True)]], align=PP_ALIGN.CENTER)
|
|
305
305
|
badge(s, 8); footer(s)
|
|
306
306
|
|
|
307
307
|
out = os.path.join(os.path.dirname(os.path.abspath(__file__)), "arcane-overview.pptx")
|
|
@@ -172,7 +172,7 @@ txt(s, 0.78, 1.95, 11.7, 0.9,
|
|
|
172
172
|
rect(s, 0.78, 3.05, 11.7, 1.45, CODEBG, radius=True, line=VIOLET, line_w=1.5)
|
|
173
173
|
txt(s, 1.1, 3.22, 11, 0.35, [[("terminal", 11, MUTED, False)]], font=MONO)
|
|
174
174
|
txt(s, 1.1, 3.62, 11, 0.7,
|
|
175
|
-
[[("$ ", 24, CYAN, True), ("npx arcane install ", 24, WHITE, True),
|
|
175
|
+
[[("$ ", 24, CYAN, True), ("npx claude-code-arcane install ", 24, WHITE, True),
|
|
176
176
|
("backend-ts", 24, GREEN, True), ("+agile", 24, AMBER, True), ("+testing", 24, AMBER, True)]], font=MONO)
|
|
177
177
|
cols = [("backend-ts", "base", GREEN), ("+agile", "addon", AMBER), ("+testing", "addon", AMBER)]
|
|
178
178
|
cx = 0.78
|
|
@@ -390,7 +390,7 @@ rect(s, 0.78, 5.25, 11.7, 1.45, VIOLET, radius=True)
|
|
|
390
390
|
txt(s, 0.78, 5.4, 11.7, 0.5,
|
|
391
391
|
[[("Configuracion de IA, modular y versionada — un comando para empezar.", 17, WHITE, True)]],
|
|
392
392
|
align=PP_ALIGN.CENTER)
|
|
393
|
-
txt(s, 0.78, 5.95, 11.7, 0.5, [[("npx arcane install backend-ts+agile", 21, WHITE, True)]],
|
|
393
|
+
txt(s, 0.78, 5.95, 11.7, 0.5, [[("npx claude-code-arcane install backend-ts+agile", 21, WHITE, True)]],
|
|
394
394
|
align=PP_ALIGN.CENTER, font=MONO)
|
|
395
395
|
|
|
396
396
|
out = os.path.join(os.path.dirname(os.path.abspath(__file__)), "arcane-overview-12.pptx")
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "claude-code-arcane",
|
|
3
|
-
"version": "2.
|
|
4
|
-
"description": "Skills, agents, hooks and rules for Claude Code — installable via npx arcane",
|
|
3
|
+
"version": "2.3.0",
|
|
4
|
+
"description": "Skills, agents, hooks and rules for Claude Code — installable via npx claude-code-arcane",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"arcane": "./dist/cli.js"
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
name: audio
|
|
2
|
+
description: "Game Audio — direccion sonora, composicion, sound design, middleware, VO y QA"
|
|
3
|
+
type: base
|
|
4
|
+
|
|
5
|
+
skills:
|
|
6
|
+
- audio-bible
|
|
7
|
+
- audio-spec
|
|
8
|
+
- music-composition
|
|
9
|
+
- adaptive-music
|
|
10
|
+
- midi-compose
|
|
11
|
+
- sfx-design
|
|
12
|
+
- procedural-audio
|
|
13
|
+
- ui-sound-design
|
|
14
|
+
- spatial-audio
|
|
15
|
+
- audio-mix
|
|
16
|
+
- middleware-integration
|
|
17
|
+
- voice-pipeline
|
|
18
|
+
- audio-audit
|
|
19
|
+
|
|
20
|
+
rules:
|
|
21
|
+
universal:
|
|
22
|
+
[]
|
|
23
|
+
gamedev:
|
|
24
|
+
- audio-code
|
|
25
|
+
|
|
26
|
+
agents:
|
|
27
|
+
- audio
|
|
28
|
+
|
|
29
|
+
permissions:
|
|
30
|
+
allow:
|
|
31
|
+
- "Bash(python *)"
|
|
32
|
+
- "Bash(python3 *)"
|
|
33
|
+
- "Bash(git status*)"
|
|
34
|
+
- "Bash(git add*)"
|
|
35
|
+
- "Bash(git commit*)"
|
|
36
|
+
- "Bash(git diff*)"
|
|
37
|
+
- "Bash(git log*)"
|
|
38
|
+
- "Bash(ls *)"
|
|
39
|
+
- "Bash(find *)"
|
|
40
|
+
- "Read(*)"
|
|
41
|
+
- "Glob(*)"
|
|
42
|
+
- "Grep(*)"
|
|
43
|
+
deny:
|
|
44
|
+
- "Bash(rm -rf *)"
|
|
45
|
+
- "Bash(git push --force*)"
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
name: freelance
|
|
2
|
+
description: "Freelance — conseguir proyectos como freelancer y ejecutarlos: scan de fuentes publicas sin API key con dedup y scoring, busqueda en los marketplaces (Upwork, Workana) via WebSearch, inteligencia de tarifas de mercado, screening de riesgo del cliente, perfil de plataforma, propuestas con cotizacion sobre piso de tarifa neto, contratos y SOWs, kickoff con validacion de horas contra lo cotizado, registro de horas y change orders, pipeline con costo de adquisicion y utilizacion, y 4 agentes de contexto fresco (review de propuesta, screener adversarial, discovery call, estratega de pipeline)"
|
|
3
|
+
type: addon
|
|
4
|
+
|
|
5
|
+
skills:
|
|
6
|
+
# Nucleo del perfil
|
|
7
|
+
- freelance-hunt
|
|
8
|
+
- freelance-profile
|
|
9
|
+
- freelance-scan
|
|
10
|
+
- client-screen
|
|
11
|
+
- freelance-proposal
|
|
12
|
+
- freelance-pipeline
|
|
13
|
+
- freelance-kickoff
|
|
14
|
+
- freelance-deliver
|
|
15
|
+
# Compartidas con +job-hunt (una sola fuente de verdad del perfil profesional)
|
|
16
|
+
- master-profile
|
|
17
|
+
- portfolio-site
|
|
18
|
+
- cold-outreach
|
|
19
|
+
- job-outcome
|
|
20
|
+
- career-registry
|
|
21
|
+
# Compartidas con +business y +agile
|
|
22
|
+
- contract-and-proposal-writer
|
|
23
|
+
- estimate
|
|
24
|
+
|
|
25
|
+
rules:
|
|
26
|
+
universal:
|
|
27
|
+
- freelance-guardrails
|
|
28
|
+
gamedev:
|
|
29
|
+
[]
|
|
30
|
+
|
|
31
|
+
agents:
|
|
32
|
+
- freelance
|
|
33
|
+
|
|
34
|
+
permissions:
|
|
35
|
+
allow:
|
|
36
|
+
- "Bash(python *import_history.py*)"
|
|
37
|
+
- "Bash(python3 *import_history.py*)"
|
|
38
|
+
- "Bash(python *career_registry.py*)"
|
|
39
|
+
- "Bash(python3 *career_registry.py*)"
|
|
40
|
+
- "Bash(python *freelance_search.py*)"
|
|
41
|
+
- "Bash(python3 *freelance_search.py*)"
|
|
42
|
+
deny:
|
|
43
|
+
[]
|
package/profiles/job-hunt.yaml
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
name: job-hunt
|
|
2
|
-
description: "Job Hunt — busqueda laboral end-to-end: perfil maestro, CV ATS con verificacion, scraping de ofertas con dedup, pipeline de postulacion, LinkedIn, portfolio, cover letters, outreach a recruiters, scoring de ofertas, gaps/upskill y
|
|
2
|
+
description: "Job Hunt — busqueda laboral end-to-end: perfil maestro, CV ATS con verificacion, scraping de ofertas con dedup, pipeline de postulacion, LinkedIn, portfolio, cover letters, outreach a recruiters, scoring de ofertas, gaps/upskill, prep de entrevistas y 4 agentes de contexto fresco (review de CV, hiring manager, mock interview, diagnostico del embudo)"
|
|
3
3
|
type: addon
|
|
4
4
|
|
|
5
5
|
skills:
|
|
@@ -13,6 +13,7 @@ skills:
|
|
|
13
13
|
- job-scrape
|
|
14
14
|
- job-aplicar
|
|
15
15
|
- job-outcome
|
|
16
|
+
- career-registry
|
|
16
17
|
- job-upskill
|
|
17
18
|
- cover-letter
|
|
18
19
|
- cold-outreach
|
|
@@ -27,10 +28,12 @@ rules:
|
|
|
27
28
|
[]
|
|
28
29
|
|
|
29
30
|
agents:
|
|
30
|
-
|
|
31
|
+
- career
|
|
31
32
|
|
|
32
33
|
permissions:
|
|
33
34
|
allow:
|
|
35
|
+
- "Bash(python *career_registry.py*)"
|
|
36
|
+
- "Bash(python3 *career_registry.py*)"
|
|
34
37
|
- "Bash(python *cv_export.py*)"
|
|
35
38
|
- "Bash(python3 *cv_export.py*)"
|
|
36
39
|
- "Bash(python *verify_pdf.py*)"
|
|
@@ -9,14 +9,19 @@ Las rutas son relativas al career workspace (`./career-workspace/` o env `CAREER
|
|
|
9
9
|
- Al terminar el borrador de un CV custom (flujo cv-tailor) o de una cover / mensaje de aplicación (flujo cover-letter) destinado a una postulación concreta.
|
|
10
10
|
- NO aplica a ediciones menores de un CV ya revisado (typos, cambiar una fecha) ni a los CVs base de `02-CVs/` fuera de una postulación.
|
|
11
11
|
|
|
12
|
+
Quién la ejecuta: `/job-aplicar` (paso 7, obligatorio), y `/cv-tailor` y `/cover-letter` cuando se corren sueltos. Los tres declaran `Task` en `allowed-tools` justamente para poder cumplirla - un skill sin `Task` no puede aplicar esta regla, y ahí la regla sería solo una intención.
|
|
13
|
+
|
|
12
14
|
## El paso reviewer
|
|
13
15
|
|
|
14
|
-
Lanzar UN agente
|
|
16
|
+
Lanzar UN agente **`cv-reviewer`** de contexto fresco vía el Agent tool. El agente ya trae la persona, el límite de lectura y el contrato de salida; el prompt solo tiene que aportar lo que el agente no puede saber:
|
|
15
17
|
|
|
16
18
|
1. El texto completo de la job description.
|
|
17
19
|
2. El borrador del CV y/o cover, verbatim.
|
|
18
|
-
3.
|
|
19
|
-
|
|
20
|
+
3. Cuál es el perfil usado, para que sepa qué archivo de `01-Perfiles/` puede leer.
|
|
21
|
+
|
|
22
|
+
Va inline en el prompt para que no dependa de leer archivos de la conversación.
|
|
23
|
+
|
|
24
|
+
Si el agente `cv-reviewer` no está instalado (perfil `+job-hunt` sin su directorio de agentes), usar un `general-purpose` y pasarle en el prompt las cuatro restricciones: lectura acotada a `01-Perfiles/<perfil usado>.md`, prohibido leer templates y el resto del workspace, research web breve de la empresa, y el contrato de salida de abajo.
|
|
20
25
|
|
|
21
26
|
El reviewer devuelve dos partes:
|
|
22
27
|
|
|
@@ -27,6 +32,14 @@ El reviewer devuelve dos partes:
|
|
|
27
32
|
- Bullets que se pueden reformular como logro medible
|
|
28
33
|
- Tono / estilo (registro, longitud, muletillas)
|
|
29
34
|
|
|
35
|
+
## Segunda lente (opcional): `hiring-manager`
|
|
36
|
+
|
|
37
|
+
`cv-reviewer` contesta "¿pasa el filtro?". Un CV puede pasar con match del 85% y morir igual en el escritorio de quien contrata, por una razón distinta: **no hay evidencia de que la persona ya hizo el trabajo**.
|
|
38
|
+
|
|
39
|
+
Cuándo vale el segundo agente: postulación que importa, rol senior, o racha de rechazos post-CV. Se lanza **en paralelo** con `cv-reviewer` (no en cadena: son lentes independientes y encadenarlos solo suma latencia). Devuelve veredicto, evidencia faltante y las 3 preguntas que haría, que además son material de `/interview-prep`.
|
|
40
|
+
|
|
41
|
+
No es obligatorio. Para una aplicación de rutina, `cv-reviewer` solo alcanza.
|
|
42
|
+
|
|
30
43
|
## Reglas de aplicación del feedback
|
|
31
44
|
|
|
32
45
|
- **Una sola ronda.** El drafter aplica la Parte A, incorpora de la Parte B lo que corresponda, y sigue. Sin ida y vuelta iterativo.
|