@arthai/agents 1.0.7 → 1.0.9
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 +166 -46
- package/VERSION +1 -1
- package/bin/cli.js +7 -3
- package/dist/plugins/canvas/.claude-plugin/plugin.json +1 -1
- package/dist/plugins/canvas/VERSION +1 -1
- package/dist/plugins/compass/.claude-plugin/plugin.json +1 -1
- package/dist/plugins/compass/VERSION +1 -1
- package/dist/plugins/counsel/.claude-plugin/plugin.json +1 -1
- package/dist/plugins/counsel/VERSION +1 -1
- package/dist/plugins/cruise/.claude-plugin/plugin.json +1 -1
- package/dist/plugins/cruise/VERSION +1 -1
- package/dist/plugins/forge/.claude-plugin/plugin.json +1 -1
- package/dist/plugins/forge/VERSION +1 -1
- package/dist/plugins/prime/.claude-plugin/plugin.json +1 -1
- package/dist/plugins/prime/VERSION +1 -1
- package/dist/plugins/prime/hooks/sync-agents.sh +1 -1
- package/dist/plugins/prism/.claude-plugin/plugin.json +1 -1
- package/dist/plugins/prism/VERSION +1 -1
- package/dist/plugins/scalpel/.claude-plugin/plugin.json +1 -1
- package/dist/plugins/scalpel/VERSION +1 -1
- package/dist/plugins/sentinel/.claude-plugin/plugin.json +1 -1
- package/dist/plugins/sentinel/VERSION +1 -1
- package/dist/plugins/shield/.claude-plugin/plugin.json +1 -1
- package/dist/plugins/shield/VERSION +1 -1
- package/dist/plugins/spark/.claude-plugin/plugin.json +1 -1
- package/dist/plugins/spark/VERSION +1 -1
- package/hooks/sync-agents.sh +1 -1
- package/package.json +1 -1
- package/skills/license/SKILL.md +1 -1
package/README.md
CHANGED
|
@@ -5,18 +5,37 @@ AI development toolkit for Claude Code — agents, skills, and hooks organized i
|
|
|
5
5
|
## Quick Start
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
|
-
# 1.
|
|
8
|
+
# 1. Get a license key (email productive@getarth.ai)
|
|
9
|
+
|
|
10
|
+
# 2. Activate your license (one time)
|
|
9
11
|
npx @arthai/agents activate ARTH-XXXX-XXXX-XXXX-XXXX
|
|
10
12
|
|
|
11
|
-
#
|
|
13
|
+
# 3. Install a bundle into your project
|
|
12
14
|
npx @arthai/agents install forge .
|
|
13
15
|
|
|
14
|
-
#
|
|
16
|
+
# 4. Open Claude Code — skills are ready
|
|
15
17
|
/calibrate # auto-configure for your codebase
|
|
16
18
|
/planning my-feature # start building
|
|
17
19
|
```
|
|
18
20
|
|
|
19
|
-
Don't have a key?
|
|
21
|
+
Don't have a key? Email **productive@getarth.ai** to get one.
|
|
22
|
+
|
|
23
|
+
Already have the toolkit cloned at `~/.claude-agents/`? You don't need to activate — your existing key works automatically.
|
|
24
|
+
|
|
25
|
+
## Explore Before Installing
|
|
26
|
+
|
|
27
|
+
No license needed to browse:
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
# See all available bundles with descriptions
|
|
31
|
+
npx @arthai/agents list
|
|
32
|
+
|
|
33
|
+
# See what's inside a specific bundle (agents, skills, hooks)
|
|
34
|
+
npx @arthai/agents info forge
|
|
35
|
+
|
|
36
|
+
# See what's inside every bundle
|
|
37
|
+
npx @arthai/agents info prime
|
|
38
|
+
```
|
|
20
39
|
|
|
21
40
|
## Install
|
|
22
41
|
|
|
@@ -24,50 +43,82 @@ Don't have a key? Contact us at arthai.dev/pricing
|
|
|
24
43
|
# Install a bundle into your project
|
|
25
44
|
npx @arthai/agents install forge .
|
|
26
45
|
|
|
27
|
-
# Install multiple bundles
|
|
46
|
+
# Install multiple bundles at once
|
|
28
47
|
npx @arthai/agents install forge spark shield .
|
|
29
48
|
|
|
30
|
-
#
|
|
31
|
-
npx @arthai/agents
|
|
49
|
+
# Install everything
|
|
50
|
+
npx @arthai/agents install prime .
|
|
51
|
+
```
|
|
32
52
|
|
|
33
|
-
|
|
34
|
-
|
|
53
|
+
### What gets installed
|
|
54
|
+
|
|
55
|
+
When you install a bundle, these files are created in your project:
|
|
56
|
+
|
|
57
|
+
```
|
|
58
|
+
your-project/
|
|
59
|
+
.claude/
|
|
60
|
+
skills/ # slash commands (/planning, /implement, /qa, etc.)
|
|
61
|
+
agents/ # specialized AI agents (architect, backend, QA, etc.)
|
|
62
|
+
hooks/ # automation hooks (guardrails, deploy health, etc.)
|
|
63
|
+
settings.json # hooks registered here
|
|
64
|
+
CLAUDE.md # project context file (created if missing)
|
|
65
|
+
.gitignore # updated with toolkit entries
|
|
35
66
|
```
|
|
36
67
|
|
|
68
|
+
### How skills, agents, and hooks work
|
|
69
|
+
|
|
70
|
+
| Component | What it is | How you use it | Example |
|
|
71
|
+
|-----------|-----------|----------------|---------|
|
|
72
|
+
| **Skills** | Slash commands with structured workflows | Type `/skillname` in Claude Code | `/planning my-feature` — spawns PM + Architect + DA for adversarial planning |
|
|
73
|
+
| **Agents** | Specialized AI personas with domain expertise | Skills spawn them automatically, or use Agent tool directly | `architect` — designs systems, `backend` — writes backend code, `qa` — validates |
|
|
74
|
+
| **Hooks** | Shell scripts that fire on events | Automatic — run on session start, before/after commands | `pre-bash-guard` — blocks dangerous commands, `escalation-guard` — circuit breaker on 3 failures |
|
|
75
|
+
|
|
76
|
+
**Skills are what you interact with. Agents and hooks work behind the scenes.**
|
|
77
|
+
|
|
37
78
|
## Bundles
|
|
38
79
|
|
|
39
80
|
Pick what you need. Each bundle is a self-contained set of agents, skills, and hooks.
|
|
40
81
|
|
|
41
82
|
### Development
|
|
42
83
|
|
|
43
|
-
| Bundle |
|
|
44
|
-
|
|
45
|
-
| **forge** |
|
|
46
|
-
| **scalpel** |
|
|
47
|
-
| **spark** |
|
|
84
|
+
| Bundle | What you get |
|
|
85
|
+
|--------|-------------|
|
|
86
|
+
| **forge** | Full dev workflow: `/planning`, `/implement`, `/qa`, `/pr`, `/precheck`, `/review-pr` + architect, PM, backend, frontend, QA, code-reviewer agents + triage router + escalation guard |
|
|
87
|
+
| **scalpel** | Bug fixing: `/fix`, `/ci-fix`, `/issue` + code-reviewer + troubleshooter agents |
|
|
88
|
+
| **spark** | Project setup: `/onboard`, `/calibrate`, `/scan`, `/setup` + setup and explore agents |
|
|
48
89
|
|
|
49
90
|
### Operations
|
|
50
91
|
|
|
51
|
-
| Bundle |
|
|
52
|
-
|
|
53
|
-
| **sentinel** |
|
|
54
|
-
| **prism** |
|
|
55
|
-
| **shield** |
|
|
92
|
+
| Bundle | What you get |
|
|
93
|
+
|--------|-------------|
|
|
94
|
+
| **sentinel** | SRE + ops: `/sre`, `/incident`, `/restart` + SRE, ops agents + deploy health, port guard, crash watcher hooks |
|
|
95
|
+
| **prism** | Deep QA: `/qa`, `/qa-learn`, `/qa-incident` + 6 QA agents (qa, e2e, domain, challenger, baseline, promoter) |
|
|
96
|
+
| **shield** | Safety guardrails only: bash guard, edit guard, session bootstrap, triage router, escalation guard (no skills — hooks only) |
|
|
56
97
|
|
|
57
98
|
### Strategy
|
|
58
99
|
|
|
59
|
-
| Bundle |
|
|
60
|
-
|
|
61
|
-
| **canvas** |
|
|
62
|
-
| **compass** |
|
|
63
|
-
| **counsel** |
|
|
100
|
+
| Bundle | What you get |
|
|
101
|
+
|--------|-------------|
|
|
102
|
+
| **canvas** | Design: `/planning` + design-studio agents (think, create, critique) + frontend agent |
|
|
103
|
+
| **compass** | Product: `/planning` + PM, GTM, user researcher, content strategist agents |
|
|
104
|
+
| **counsel** | Consulting: 13 skills (client-discovery, proposals, deliverables, ROI, etc.) + 4 consulting agents |
|
|
64
105
|
|
|
65
106
|
### Power
|
|
66
107
|
|
|
67
|
-
| Bundle |
|
|
68
|
-
|
|
69
|
-
| **cruise** |
|
|
70
|
-
| **prime** |
|
|
108
|
+
| Bundle | What you get |
|
|
109
|
+
|--------|-------------|
|
|
110
|
+
| **cruise** | Autonomous mode: `/autopilot` — picks up issues, implements, QAs, creates PRs. Auto-installs forge + scalpel + sentinel. |
|
|
111
|
+
| **prime** | Everything. All agents, skills, and hooks. |
|
|
112
|
+
|
|
113
|
+
### Which bundle should I start with?
|
|
114
|
+
|
|
115
|
+
| You want to... | Install |
|
|
116
|
+
|----------------|---------|
|
|
117
|
+
| Build features end-to-end | `forge` |
|
|
118
|
+
| Fix bugs with formal pipeline | `scalpel` |
|
|
119
|
+
| Get set up on a new project | `spark` |
|
|
120
|
+
| All of the above | `forge spark scalpel` |
|
|
121
|
+
| Everything including SRE, QA, design, consulting | `prime` |
|
|
71
122
|
|
|
72
123
|
## Workflows
|
|
73
124
|
|
|
@@ -96,7 +147,7 @@ After installing, use skills in Claude Code:
|
|
|
96
147
|
|
|
97
148
|
**Autonomous mode:**
|
|
98
149
|
```
|
|
99
|
-
/autopilot # picks up issues
|
|
150
|
+
/autopilot # picks up issues, implements, QAs, creates PRs
|
|
100
151
|
```
|
|
101
152
|
|
|
102
153
|
**Operations:**
|
|
@@ -106,51 +157,120 @@ After installing, use skills in Claude Code:
|
|
|
106
157
|
/restart # restart local dev servers
|
|
107
158
|
```
|
|
108
159
|
|
|
109
|
-
##
|
|
160
|
+
## Updating
|
|
110
161
|
|
|
111
162
|
```bash
|
|
112
|
-
|
|
163
|
+
# Update to latest version (re-run install with @latest)
|
|
164
|
+
npx @arthai/agents@latest install forge .
|
|
113
165
|
```
|
|
114
166
|
|
|
115
|
-
|
|
167
|
+
### When to update
|
|
168
|
+
|
|
169
|
+
- **After a new release** — check the changelog or Discord #deployments
|
|
170
|
+
- **When a skill isn't working as expected** — updates often fix edge cases
|
|
171
|
+
- **After `npx` cache issues** — clear cache and reinstall:
|
|
116
172
|
|
|
117
173
|
```bash
|
|
118
|
-
|
|
174
|
+
# Clear npx cache if you're getting stale versions
|
|
175
|
+
rm -rf ~/.npm/_npx
|
|
176
|
+
npx @arthai/agents@latest install forge .
|
|
119
177
|
```
|
|
120
178
|
|
|
121
|
-
|
|
179
|
+
### What happens on update
|
|
122
180
|
|
|
123
|
-
|
|
181
|
+
- Skills, agents, and hooks are **overwritten** with the latest versions
|
|
182
|
+
- Your `CLAUDE.md` is **never overwritten** — only the managed toolkit block is updated
|
|
183
|
+
- Your `.claude/settings.json` hooks are **merged** — existing hooks are preserved
|
|
184
|
+
- Your project-specific files (`.claude/project-profile.md`, `.claude/knowledge/`) are **never touched**
|
|
124
185
|
|
|
125
|
-
|
|
126
|
-
|---------|-----|
|
|
127
|
-
| Skills not showing | Restart Claude Code in the project |
|
|
128
|
-
| `/planning` says unknown skill | Verify files exist: `ls .claude/skills/planning/SKILL.md` |
|
|
129
|
-
| Install says "not found in dist/" | Update: `npx @arthai/agents@latest install forge .` |
|
|
186
|
+
## Uninstall
|
|
130
187
|
|
|
131
|
-
|
|
188
|
+
```bash
|
|
189
|
+
# Remove a specific bundle
|
|
190
|
+
npx @arthai/agents uninstall forge .
|
|
132
191
|
|
|
192
|
+
# Remove all bundles at once
|
|
193
|
+
npx @arthai/agents uninstall prime .
|
|
133
194
|
```
|
|
134
|
-
|
|
135
|
-
|
|
195
|
+
|
|
196
|
+
This removes skills and agents (63 files for prime). To fully clean up including hooks:
|
|
197
|
+
|
|
198
|
+
```bash
|
|
199
|
+
# 1. Remove hook scripts
|
|
200
|
+
rm -rf .claude/hooks
|
|
201
|
+
|
|
202
|
+
# 2. Remove hook entries from settings.json
|
|
203
|
+
python3 -c "
|
|
204
|
+
import json
|
|
205
|
+
with open('.claude/settings.json') as f: s = json.load(f)
|
|
206
|
+
s.pop('hooks', None)
|
|
207
|
+
with open('.claude/settings.json', 'w') as f: json.dump(s, f, indent=2)
|
|
208
|
+
"
|
|
136
209
|
```
|
|
137
210
|
|
|
211
|
+
**What uninstall removes vs keeps:**
|
|
212
|
+
|
|
213
|
+
| Removed | Kept (never deleted) |
|
|
214
|
+
|---------|------|
|
|
215
|
+
| `.claude/skills/` | `CLAUDE.md` (your project context) |
|
|
216
|
+
| `.claude/agents/` | `.claude/project-profile.md` (calibration data) |
|
|
217
|
+
| | `.claude/knowledge/` (project knowledge base) |
|
|
218
|
+
| | `.claude/settings.json` (hook entries — clean manually) |
|
|
219
|
+
| | `.claude/hooks/` (script files — `rm -rf` manually) |
|
|
220
|
+
| | `~/.arthai/license` (license key — per-machine) |
|
|
221
|
+
|
|
138
222
|
## License Activation
|
|
139
223
|
|
|
140
|
-
A license key is required to install bundles.
|
|
224
|
+
A license key is required to install bundles. Browsing (`list`, `info`) is free.
|
|
141
225
|
|
|
142
226
|
```bash
|
|
143
227
|
# Activate (one time — saves key locally)
|
|
144
228
|
npx @arthai/agents activate ARTH-XXXX-XXXX-XXXX-XXXX
|
|
145
229
|
|
|
146
230
|
# Key is stored at ~/.arthai/license — all future installs use it automatically
|
|
147
|
-
# You can also set ARTHAI_LICENSE_KEY env var (useful for CI/teams)
|
|
148
231
|
```
|
|
149
232
|
|
|
233
|
+
**For CI/teams:** Set `ARTHAI_LICENSE_KEY` environment variable instead of activating per-machine.
|
|
234
|
+
|
|
150
235
|
**Key precedence:** `ARTHAI_LICENSE_KEY` env var > `~/.arthai/license` file > `--key` flag
|
|
151
236
|
|
|
237
|
+
## Troubleshooting
|
|
238
|
+
|
|
239
|
+
| Problem | Fix |
|
|
240
|
+
|---------|-----|
|
|
241
|
+
| Skills not showing in Claude Code | Restart Claude Code in the project directory |
|
|
242
|
+
| `/planning` says unknown skill | Verify: `ls .claude/skills/planning/SKILL.md` |
|
|
243
|
+
| Install crashes on CLAUDE.md setup | Update: `rm -rf ~/.npm/_npx && npx @arthai/agents@latest install forge .` |
|
|
244
|
+
| "License required" after activation | Check: `cat ~/.arthai/license` — should contain your key |
|
|
245
|
+
| "License server unavailable" | Check internet connection. Try again in a minute. |
|
|
246
|
+
| Old version stuck | Clear cache: `rm -rf ~/.npm/_npx` then reinstall |
|
|
247
|
+
| Hooks not firing | Check `.claude/settings.json` has hook entries. Restart Claude Code. |
|
|
248
|
+
|
|
249
|
+
## Best Practices
|
|
250
|
+
|
|
251
|
+
1. **Start with `forge`** — it covers 80% of workflows. Add other bundles as needed.
|
|
252
|
+
2. **Run `/calibrate` after install** — this teaches the toolkit your project's patterns, stack, and conventions. Without it, agents work generically.
|
|
253
|
+
3. **Run `/onboard` every session** — quick briefing on open PRs, issues, and priorities.
|
|
254
|
+
4. **Use `/precheck` before pushing** — catches CI failures locally in 30s instead of a 4-minute round-trip.
|
|
255
|
+
5. **Don't edit files in `.claude/skills/` or `.claude/agents/`** — they get overwritten on update. Customize by adding your own files alongside them.
|
|
256
|
+
6. **Keep `CLAUDE.md` up to date** — agents read it for project context. The more accurate it is, the better they perform.
|
|
257
|
+
|
|
258
|
+
## Gotchas
|
|
259
|
+
|
|
260
|
+
- **`npx` caches aggressively** — if you're not getting the latest version, run `rm -rf ~/.npm/_npx` before reinstalling
|
|
261
|
+
- **Hooks stack, they don't replace** — installing a bundle twice adds duplicate hook entries to `settings.json`. Uninstall first if reinstalling.
|
|
262
|
+
- **`CLAUDE.md` managed block is auto-updated** — the section between `<!-- >>> claude-agents toolkit -->` markers is overwritten on install. Don't put your content there.
|
|
263
|
+
- **Agent teams require experimental flag** — set `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` in your Claude Code settings (auto-configured by the installer)
|
|
264
|
+
|
|
265
|
+
## Also available as Claude Code plugin
|
|
266
|
+
|
|
267
|
+
```
|
|
268
|
+
/plugin marketplace add ArthTech-AI/arthai-marketplace
|
|
269
|
+
/plugin install forge@arthai-marketplace
|
|
270
|
+
```
|
|
271
|
+
|
|
152
272
|
## Requirements
|
|
153
273
|
|
|
154
274
|
- [Claude Code CLI](https://docs.anthropic.com/en/docs/claude-code)
|
|
155
275
|
- Node.js 18+
|
|
156
|
-
- License key (get one at
|
|
276
|
+
- License key (get one at productive@getarth.ai)
|
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
1.0.
|
|
1
|
+
1.0.9
|
package/bin/cli.js
CHANGED
|
@@ -107,7 +107,7 @@ function handleInstall(rawArgs) {
|
|
|
107
107
|
const licenseKey = readLicenseKey(rawArgs);
|
|
108
108
|
if (!licenseKey) {
|
|
109
109
|
console.error('License required. Run: npx @arthai/agents activate ARTH-XXXX-XXXX-XXXX-XXXX');
|
|
110
|
-
console.error('Get a license at
|
|
110
|
+
console.error('Get a license at productive@getarth.ai');
|
|
111
111
|
process.exit(1);
|
|
112
112
|
}
|
|
113
113
|
const licenseResult = validateWithWorker(licenseKey);
|
|
@@ -116,7 +116,7 @@ function handleInstall(rawArgs) {
|
|
|
116
116
|
console.error('License server unavailable. Cannot install without a validated license.');
|
|
117
117
|
console.error('Check your internet connection and try again.');
|
|
118
118
|
} else {
|
|
119
|
-
console.error('Invalid license key. Check your key or get one at
|
|
119
|
+
console.error('Invalid license key. Check your key or get one at productive@getarth.ai');
|
|
120
120
|
}
|
|
121
121
|
process.exit(1);
|
|
122
122
|
}
|
|
@@ -273,7 +273,7 @@ function handleActivate(key) {
|
|
|
273
273
|
if (!result.valid) {
|
|
274
274
|
const reason = result.reason === 'revoked'
|
|
275
275
|
? 'This license key has been revoked.'
|
|
276
|
-
: 'Invalid license key. Check your key or get one at
|
|
276
|
+
: 'Invalid license key. Check your key or get one at productive@getarth.ai';
|
|
277
277
|
console.error(`Activation failed: ${reason}`);
|
|
278
278
|
process.exit(1);
|
|
279
279
|
}
|
|
@@ -489,6 +489,10 @@ function handleUninstall(rawArgs) {
|
|
|
489
489
|
|
|
490
490
|
// ── helpers ───────────────────────────────────────────────────────────────────
|
|
491
491
|
|
|
492
|
+
function looksLikePath(arg) {
|
|
493
|
+
return typeof arg === 'string' && (arg.includes(path.sep) || arg.startsWith('.') || arg.startsWith('~') || arg.startsWith('/'));
|
|
494
|
+
}
|
|
495
|
+
|
|
492
496
|
// Validate bundle names: only lowercase alphanumeric and hyphens, max 64 chars.
|
|
493
497
|
// Prevents path traversal via names like "../../etc/passwd".
|
|
494
498
|
function isValidBundleName(name) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
1.0.
|
|
1
|
+
1.0.9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
1.0.
|
|
1
|
+
1.0.9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
1.0.
|
|
1
|
+
1.0.9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
1.0.
|
|
1
|
+
1.0.9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
1.0.
|
|
1
|
+
1.0.9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
1.0.
|
|
1
|
+
1.0.9
|
|
@@ -306,7 +306,7 @@ if ! $LICENSE_VALID; then
|
|
|
306
306
|
fi
|
|
307
307
|
|
|
308
308
|
echo "Invalid license key. Toolkit has been disabled for this project."
|
|
309
|
-
echo " Check your key or get one at
|
|
309
|
+
echo " Check your key or get one at productive@getarth.ai"
|
|
310
310
|
exit 0
|
|
311
311
|
fi
|
|
312
312
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
1.0.
|
|
1
|
+
1.0.9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
1.0.
|
|
1
|
+
1.0.9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
1.0.
|
|
1
|
+
1.0.9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
1.0.
|
|
1
|
+
1.0.9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
1.0.
|
|
1
|
+
1.0.9
|
package/hooks/sync-agents.sh
CHANGED
|
@@ -306,7 +306,7 @@ if ! $LICENSE_VALID; then
|
|
|
306
306
|
fi
|
|
307
307
|
|
|
308
308
|
echo "Invalid license key. Toolkit has been disabled for this project."
|
|
309
|
-
echo " Check your key or get one at
|
|
309
|
+
echo " Check your key or get one at productive@getarth.ai"
|
|
310
310
|
exit 0
|
|
311
311
|
fi
|
|
312
312
|
|
package/package.json
CHANGED
package/skills/license/SKILL.md
CHANGED
|
@@ -128,7 +128,7 @@ Returns:
|
|
|
128
128
|
NEW USER ONBOARDING:
|
|
129
129
|
1. User finds toolkit (npm, marketplace, docs)
|
|
130
130
|
2. User tries: npx @arthai/agents install forge .
|
|
131
|
-
→ "License required. Get a key at
|
|
131
|
+
→ "License required. Get a key at productive@getarth.ai"
|
|
132
132
|
3. User contacts you
|
|
133
133
|
4. You run: /license issue customer-name
|
|
134
134
|
5. You send them the key
|