agentboot 0.1.0 → 0.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/README.md +9 -8
- package/agentboot.config.json +4 -1
- package/package.json +2 -2
- package/scripts/cli.ts +465 -18
- package/scripts/compile.ts +724 -75
- package/scripts/dev-sync.ts +1 -1
- package/scripts/lib/config.ts +259 -1
- package/scripts/lib/frontmatter.ts +3 -1
- package/scripts/validate.ts +12 -7
- package/website/docusaurus.config.ts +117 -0
- package/website/package-lock.json +18448 -0
- package/website/package.json +47 -0
- package/website/sidebars.ts +53 -0
- package/website/src/css/custom.css +23 -0
- package/website/src/pages/index.module.css +23 -0
- package/website/src/pages/index.tsx +125 -0
- package/website/static/.nojekyll +0 -0
- package/website/static/CNAME +1 -0
- package/website/static/img/favicon.ico +0 -0
- package/website/static/img/logo.svg +1 -0
- package/.github/ISSUE_TEMPLATE/persona-request.md +0 -62
- package/.github/ISSUE_TEMPLATE/quality-feedback.md +0 -67
- package/.github/workflows/cla.yml +0 -25
- package/.github/workflows/validate.yml +0 -49
- package/.idea/agentboot.iml +0 -9
- package/.idea/misc.xml +0 -6
- package/.idea/modules.xml +0 -8
- package/.idea/vcs.xml +0 -6
- package/CLAUDE.md +0 -230
- package/CONTRIBUTING.md +0 -168
- package/PERSONAS.md +0 -156
- package/core/instructions/baseline.instructions.md +0 -133
- package/core/instructions/security.instructions.md +0 -186
- package/core/personas/code-reviewer/SKILL.md +0 -175
- package/core/personas/security-reviewer/SKILL.md +0 -233
- package/core/personas/test-data-expert/SKILL.md +0 -234
- package/core/personas/test-generator/SKILL.md +0 -262
- package/core/traits/audit-trail.md +0 -182
- package/core/traits/confidence-signaling.md +0 -172
- package/core/traits/critical-thinking.md +0 -129
- package/core/traits/schema-awareness.md +0 -132
- package/core/traits/source-citation.md +0 -174
- package/core/traits/structured-output.md +0 -199
- package/docs/ci-cd-automation.md +0 -548
- package/docs/claude-code-reference/README.md +0 -21
- package/docs/claude-code-reference/agentboot-coverage.md +0 -484
- package/docs/claude-code-reference/feature-inventory.md +0 -906
- package/docs/cli-commands-audit.md +0 -112
- package/docs/cli-design.md +0 -924
- package/docs/concepts.md +0 -1117
- package/docs/config-schema-audit.md +0 -121
- package/docs/configuration.md +0 -645
- package/docs/delivery-methods.md +0 -758
- package/docs/developer-onboarding.md +0 -342
- package/docs/extending.md +0 -448
- package/docs/getting-started.md +0 -298
- package/docs/knowledge-layer.md +0 -464
- package/docs/marketplace.md +0 -822
- package/docs/org-connection.md +0 -570
- package/docs/plans/architecture.md +0 -2429
- package/docs/plans/design.md +0 -2018
- package/docs/plans/prd.md +0 -1862
- package/docs/plans/stack-rank.md +0 -261
- package/docs/plans/technical-spec.md +0 -2755
- package/docs/privacy-and-safety.md +0 -807
- package/docs/prompt-optimization.md +0 -1071
- package/docs/test-plan.md +0 -972
- package/docs/third-party-ecosystem.md +0 -496
- package/domains/compliance-template/README.md +0 -173
- package/domains/compliance-template/traits/compliance-aware.md +0 -228
- package/examples/enterprise/agentboot.config.json +0 -184
- package/examples/minimal/agentboot.config.json +0 -46
- package/tests/REGRESSION-PLAN.md +0 -705
- package/tests/TEST-PLAN.md +0 -111
- package/tests/cli.test.ts +0 -705
- package/tests/pipeline.test.ts +0 -608
- package/tests/validate.test.ts +0 -278
- package/tsconfig.json +0 -62
package/CLAUDE.md
DELETED
|
@@ -1,230 +0,0 @@
|
|
|
1
|
-
# CLAUDE.md
|
|
2
|
-
|
|
3
|
-
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
4
|
-
|
|
5
|
-
## Commands
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
npm install # Install dependencies (required before anything else)
|
|
9
|
-
npm run validate # Run pre-build validation checks
|
|
10
|
-
npm run build # Compile traits into persona output files
|
|
11
|
-
npm run sync # Distribute compiled output to target repos
|
|
12
|
-
npm run clean # Remove dist/
|
|
13
|
-
npm run full-build # clean → validate → build → dev-sync pipeline
|
|
14
|
-
npm run dev-sync # Copy dist/ to local repo for dogfooding (gitignored)
|
|
15
|
-
npm run lint # TypeScript type checking + lint
|
|
16
|
-
npm run test # Run vitest
|
|
17
|
-
npm run test:watch # Watch mode testing
|
|
18
|
-
npm run typecheck # TypeScript type checking (tsc --noEmit)
|
|
19
|
-
npm run cli # Run the agentboot CLI (e.g., npm run cli -- build)
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
The CLI (`scripts/cli.ts`) wraps all pipeline commands with proper argument parsing:
|
|
23
|
-
```bash
|
|
24
|
-
npx tsx scripts/cli.ts build [-c config]
|
|
25
|
-
npx tsx scripts/cli.ts validate [--strict]
|
|
26
|
-
npx tsx scripts/cli.ts sync [--repos-file path] [--dry-run]
|
|
27
|
-
npx tsx scripts/cli.ts full-build
|
|
28
|
-
npx tsx scripts/cli.ts --help
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
Run a single test file: `npx vitest run <path-to-test-file>`
|
|
32
|
-
|
|
33
|
-
## Architecture
|
|
34
|
-
|
|
35
|
-
AgentBoot is a **build tool** (not a runtime framework) that compiles agentic personas for distribution to target repos. The pipeline is: validate → compile → sync.
|
|
36
|
-
|
|
37
|
-
### Core Concepts
|
|
38
|
-
|
|
39
|
-
**Traits** (`core/traits/`) are reusable behavioral building blocks (e.g., `critical-thinking.md`, `source-citation.md`). They are composed at build time — never at runtime. (Trait weight configurations are a Phase 2 feature.)
|
|
40
|
-
|
|
41
|
-
**Personas** (`core/personas/{name}/`) each contain:
|
|
42
|
-
- `SKILL.md` — the agent definition with `<!-- traits:start -->` / `<!-- traits:end -->` injection markers
|
|
43
|
-
- `persona.config.json` — build metadata specifying which traits to inject
|
|
44
|
-
|
|
45
|
-
**Always-on Instructions** (`core/instructions/`) are universal guardrails distributed to every repo regardless of persona configuration.
|
|
46
|
-
|
|
47
|
-
**Gotchas** (`core/gotchas/`) are path-scoped knowledge rules that encode battle-tested operational knowledge. They use `paths:` frontmatter to activate only for matching files and are compiled into `.claude/rules/` during build.
|
|
48
|
-
|
|
49
|
-
### Build Pipeline
|
|
50
|
-
|
|
51
|
-
1. **`scripts/validate.ts`** — 4 pre-build checks: persona existence, trait references, SKILL.md frontmatter, secret scanning
|
|
52
|
-
2. **`scripts/compile.ts`** — loads `agentboot.config.json`, resolves trait references from `persona.config.json`, and emits **one self-contained folder per platform** under `dist/`:
|
|
53
|
-
- **`dist/skill/`** — cross-platform SKILL.md (agentskills.io format, traits inlined) + PERSONAS.md
|
|
54
|
-
- **`dist/claude/`** — CC-native: agents, skills, rules, traits, CLAUDE.md (`@imports`), settings.json, .mcp.json
|
|
55
|
-
- **`dist/copilot/`** — per-persona copilot-instructions.md fragments + instructions
|
|
56
|
-
3. **`scripts/sync.ts`** — reads `repos.json`, reads from `dist/{platform}/`, merges scopes (core → group → team, team wins on conflicts), writes to target repos in platform-native locations, generates `.agentboot-manifest.json` with file hashes
|
|
57
|
-
4. **`scripts/dev-sync.ts`** — copies `dist/{platform}/core/` to platform-native locations in the current repo for local dogfooding (gitignored output only, not the production sync)
|
|
58
|
-
|
|
59
|
-
Each `dist/{platform}/` folder is self-contained. Scope hierarchy (core → groups → teams) is preserved within each platform folder. Duplication across platforms is intentional (generated files are cattle not pets). `full-build` runs dev-sync (not sync) to load compiled personas locally.
|
|
60
|
-
|
|
61
|
-
### Scope Hierarchy
|
|
62
|
-
|
|
63
|
-
Four-level hierarchy: Org → Group → Team → Repo. More specific scopes layer on top of general ones. For optional behaviors, team overrides group overrides core. For mandatory behaviors, inheritance is top-down (org wins). Scope merging happens in `sync.ts`. For public repos, repo-specific enrichments live in the hub under `public-repos/{repo}/` (not committed to the public repo) — see "Public repo pattern" in concepts.md.
|
|
64
|
-
|
|
65
|
-
### Output Structure
|
|
66
|
-
|
|
67
|
-
Compiled artifacts go to `dist/`, organized by platform first, then by scope:
|
|
68
|
-
- `dist/skill/` — cross-platform SKILL.md (agentskills.io format, traits inlined) + persona.config.json + PERSONAS.md
|
|
69
|
-
- `dist/claude/` — CC-native: agents, skills, rules, traits, CLAUDE.md (@imports), settings.json, .mcp.json, PERSONAS.md
|
|
70
|
-
- `dist/copilot/` — per-persona copilot-instructions.md fragments + instructions + PERSONAS.md
|
|
71
|
-
|
|
72
|
-
Cursor and Gemini output are planned for Phase 2.
|
|
73
|
-
|
|
74
|
-
Within each platform folder, scope hierarchy is preserved:
|
|
75
|
-
- `dist/{platform}/core/` — org-level personas
|
|
76
|
-
- `dist/{platform}/groups/{group}/` — group-level overrides
|
|
77
|
-
- `dist/{platform}/teams/{group}/{team}/` — team-level overrides
|
|
78
|
-
|
|
79
|
-
### Distribution Model (Hub-and-Spoke)
|
|
80
|
-
|
|
81
|
-
This repo acts as the **hub**. Target repos listed in `repos.json` are **spokes**. One-way flow: hub publishes compiled artifacts → spokes receive them. Spokes don't hold source of truth.
|
|
82
|
-
|
|
83
|
-
### Configuration
|
|
84
|
-
|
|
85
|
-
Everything is driven by `agentboot.config.json` (JSONC format). Key sections: `org`, `groups`, `personas.enabled`, `traits.enabled`, `instructions.enabled`, `sync.repos`, `sync.dryRun`.
|
|
86
|
-
|
|
87
|
-
### Key Design Concepts
|
|
88
|
-
|
|
89
|
-
All design ideas are documented in `docs/concepts.md`:
|
|
90
|
-
|
|
91
|
-
**Core (Tier 1):** agentskills.io format, build-time trait composition, scope hierarchy, hub-and-spoke distribution, multi-format output. (Trait weight system — HIGH/MEDIUM/LOW — is designed but not yet implemented.)
|
|
92
|
-
|
|
93
|
-
**High Value (Tier 2):** per-persona extensions, gotchas rules (path-scoped battle-tested knowledge), compliance hooks (3-layer defense-in-depth), ADR governance (permanent exception lifecycle), behavioral tests, self-improvement reflections (A→B→C), reviewer selection config.
|
|
94
|
-
|
|
95
|
-
**V2+ (Tier 3):** HARD/SOFT guardrail elevation, team champions, SME discoverability fragment, MCP-first integrations, structured telemetry (GELF/NDJSON), persona arbitrator, autonomy progression (Advisory→Auto-approve→Autonomous), two-channel MDM distribution.
|
|
96
|
-
|
|
97
|
-
**Anti-patterns:** overcommitting V1 scope, plain text logs, runtime trait inclusion, vendor-locked formats, forking base personas, deep inheritance hierarchies.
|
|
98
|
-
|
|
99
|
-
See `docs/concepts.md` for full design rationale.
|
|
100
|
-
|
|
101
|
-
### Delivery Methods
|
|
102
|
-
|
|
103
|
-
`docs/delivery-methods.md` analyzes 8 delivery channels. Key decisions:
|
|
104
|
-
- **CC Plugin** is the primary delivery method (native marketplace, force-enable via managed settings)
|
|
105
|
-
- **CLI** (`agentboot`) is the build tool, not the end-user tool
|
|
106
|
-
- **Managed settings** carry HARD guardrails only (compliance, not convenience)
|
|
107
|
-
- **MCP server** is the cross-platform bridge for multi-agent orgs
|
|
108
|
-
- **Cowork** extends reach to non-engineers via the same plugin format
|
|
109
|
-
- `docs/org-connection.md` — how developers get their org's customizations (three-path strategy: managed settings, repo sync, self-service)
|
|
110
|
-
|
|
111
|
-
### Privacy & Psychological Safety
|
|
112
|
-
|
|
113
|
-
`docs/privacy-and-safety.md` — the prompt confidentiality model:
|
|
114
|
-
- **Three tiers:** Private (raw prompts, never leave machine) → Privileged (LLM analysis via Claude API, developer approves sharing) → Organizational (persona output metrics, anonymized)
|
|
115
|
-
- Raw prompts are NOT collected, transmitted, or exfiltrated. This is a design invariant, not a config option.
|
|
116
|
-
- `/insights` sends transcripts to Claude API (same trust boundary already in use), extracts patterns not transcripts, developer sees first and approves sharing
|
|
117
|
-
- Org dashboard shows persona effectiveness (rephrase rates, false positives, cost by team) — never individual prompts
|
|
118
|
-
- Escalation exception for genuinely harmful content (exfiltration, guardrail circumvention, harassment) — flag category only, not transcript
|
|
119
|
-
- High rephrase rates are framed as persona quality problems, not developer intelligence problems
|
|
120
|
-
|
|
121
|
-
### Prompt & Cost Optimization
|
|
122
|
-
|
|
123
|
-
`docs/prompt-optimization.md` — 8 sections covering the full optimization lifecycle:
|
|
124
|
-
- `agentboot lint` — static prompt analysis (token budgets, vague language, conflicts, security)
|
|
125
|
-
- Token budget system — per-persona context cost calculation and enforcement
|
|
126
|
-
- Model selection matrix — Haiku/Sonnet/Opus guidance per persona type
|
|
127
|
-
- `agentboot cost-estimate` — projected monthly cost per persona across the org
|
|
128
|
-
- Effectiveness metrics — efficiency (tokens, cost, latency), quality (accuracy, false positive rate), business (adoption, bug escapes)
|
|
129
|
-
- Prompt style guide — imperative voice, 20-rule max, falsifiable instructions, examples over descriptions
|
|
130
|
-
- `agentboot test` — deterministic (free) + behavioral (LLM) + regression (snapshot) testing
|
|
131
|
-
- Continuous optimization loop — weekly review process with metrics-driven prompt improvements
|
|
132
|
-
|
|
133
|
-
### CLI Design
|
|
134
|
-
|
|
135
|
-
`docs/cli-design.md` — standalone binary via `brew install agentboot`:
|
|
136
|
-
- `agentboot setup` — interactive wizard that detects role/tools/org and executes the right setup
|
|
137
|
-
- `agentboot build/sync/export/publish` — build pipeline for platform teams
|
|
138
|
-
- `agentboot connect` — developer self-service org connection
|
|
139
|
-
- `agentboot doctor/status` — diagnostics and deployment dashboard
|
|
140
|
-
- `agentboot add` — scaffold personas, traits, domains, gotchas, hooks; `add prompt` ingests raw prompts
|
|
141
|
-
- `agentboot discover` — scan repos/machines for existing agentic content, overlap analysis, migration plan
|
|
142
|
-
- Distributed via brew/apt/choco (zero runtime deps), npm/npx as fallback
|
|
143
|
-
|
|
144
|
-
### Knowledge Layer
|
|
145
|
-
|
|
146
|
-
`docs/knowledge-layer.md` — three-stage progression from flat files to RAG:
|
|
147
|
-
- **Stage 1 (Flat files):** Current default. Markdown gotchas/traits with path scoping. Works for 5-50 items.
|
|
148
|
-
- **Stage 2 (Structured store):** SQLite index generated from frontmatter. MCP server exposes tag/category queries. Handles 50-500 items. Zero new infrastructure.
|
|
149
|
-
- **Stage 3 (Vector/RAG):** Embeddings + semantic retrieval via sqlite-vss. Personas find knowledge by relevance, not keywords. "This code is similar to an incident last year." Handles 500+ items.
|
|
150
|
-
- MCP interface stays stable across all three stages — personas don't change when the backing store upgrades.
|
|
151
|
-
- Killer use case: context-aware review that brings organizational memory (incidents, ADRs, patterns) to every PR.
|
|
152
|
-
- Most orgs stay at Stage 1 forever. Stage 2 is the sweet spot for mature orgs. Stage 3 is for compliance-heavy industries.
|
|
153
|
-
|
|
154
|
-
### Test Plan
|
|
155
|
-
|
|
156
|
-
`docs/test-plan.md` — 6-layer test pyramid:
|
|
157
|
-
- **Unit/Schema** (free, every commit): config validation, frontmatter, trait composition, lint rules
|
|
158
|
-
- **Integration** (free, every commit): full build pipeline, plugin export, sync, uninstall
|
|
159
|
-
- **Behavioral** (~$5/PR): `claude -p` with known-buggy code, assert on findings patterns, 2-of-3 flake tolerance
|
|
160
|
-
- **Snapshot/Regression** (~$5, persona changes): compare output across versions, detect regressions
|
|
161
|
-
- **LLM-as-Judge** (~$20, major changes): Opus evaluates persona quality on 5 dimensions
|
|
162
|
-
- **Human Review** (monthly): `agentboot review` with guided questions on curated samples, 15min/persona
|
|
163
|
-
- Agents test agents, but humans always decide. Automation removes burden, not judgment.
|
|
164
|
-
- Mutation testing validates that tests catch the regressions they should.
|
|
165
|
-
- Monthly automated testing budget: ~$165 for 4 personas (less than 1 hour of manual review)
|
|
166
|
-
|
|
167
|
-
### Developer Onboarding
|
|
168
|
-
|
|
169
|
-
`docs/developer-onboarding.md` — lightweight agentic training assist (not an LMS):
|
|
170
|
-
- First-session welcome (~80 tokens in CLAUDE.md — try these personas now)
|
|
171
|
-
- `/learn` skill — contextual help ("how do I review one file?", "what do severity levels mean?")
|
|
172
|
-
- Curated external resource links (Anthropic docs, community guides) — AgentBoot curates, doesn't build content
|
|
173
|
-
- Contextual tips in persona output (first-invocation hints, vague-prompt nudges, rate-limited, disable-able)
|
|
174
|
-
- Generated onboarding checklist from org's actual config
|
|
175
|
-
- Org-authored tips (`onboarding/` dir in personas repo — institutional knowledge transfer)
|
|
176
|
-
|
|
177
|
-
### Marketplace & Community Sharing
|
|
178
|
-
|
|
179
|
-
`docs/marketplace.md` — three-layer marketplace (Core → Verified → Community):
|
|
180
|
-
- Traits are the most shareable unit (context-free behavioral blocks)
|
|
181
|
-
- Gotchas rules are technology-specific, not org-specific (universally useful)
|
|
182
|
-
- Domain layers package traits + personas + gotchas for compliance regimes (healthcare, fintech, govtech)
|
|
183
|
-
- SuperClaude partnership: shared trait format standard + cross-listing in marketplaces
|
|
184
|
-
- Contribution model with review process for Verified tier
|
|
185
|
-
- CC plugin packaging: each domain/category = one installable plugin
|
|
186
|
-
- Monetization paths documented for V2+ (premium domains, managed marketplace, consulting, certification)
|
|
187
|
-
|
|
188
|
-
### Third-Party Ecosystem
|
|
189
|
-
|
|
190
|
-
`docs/third-party-ecosystem.md` — 5 key tools analyzed (SuperClaude, ArcKit, spec-kit, Trail of Bits config + skills):
|
|
191
|
-
- AgentBoot is the governance/distribution layer, not competing with content tools
|
|
192
|
-
- All ideas developed independently; 3P tools are prior art (parallel evolution, not derivation)
|
|
193
|
-
- Marketplace curation (point to upstream) is the recommended partnership model over bundling
|
|
194
|
-
- Apache 2.0 license for core; domain layers carry their own licenses
|
|
195
|
-
- ACKNOWLEDGMENTS.md with prior art / complementary / integrated / includes categories
|
|
196
|
-
- CC-BY-SA-4.0 (ToB skills) requires ShareAlike — cannot be relicensed as MIT
|
|
197
|
-
|
|
198
|
-
### CI/CD & Automation
|
|
199
|
-
|
|
200
|
-
`docs/ci-cd-automation.md` covers 5 CI methods:
|
|
201
|
-
- `claude -p --agent --output-format json` is the primary CI interface (cost-bounded, schema-enforced)
|
|
202
|
-
- Hook scripts for deterministic compliance gates (free, <1s, no LLM)
|
|
203
|
-
- `agentboot validate/build/sync` for the personas repo pipeline
|
|
204
|
-
- MCP server for non-CC CI environments
|
|
205
|
-
- Reusable GitHub Actions workflow for lowest-friction integration
|
|
206
|
-
|
|
207
|
-
### Claude Code Reference
|
|
208
|
-
|
|
209
|
-
`docs/claude-code-reference/` is the living knowledge base of every CC feature:
|
|
210
|
-
- `feature-inventory.md` — exhaustive reference (35 tools, 25 hook events, all settings, all frontmatter fields)
|
|
211
|
-
- `agentboot-coverage.md` — gap analysis with 24 prioritized action items
|
|
212
|
-
|
|
213
|
-
### Planning Documents
|
|
214
|
-
|
|
215
|
-
`docs/plans/` contains the formal planning docs synthesized from all design work:
|
|
216
|
-
- `prd.md` (2,090 lines) — problem, users, vision, 52 feature requirements across 9 subsystems, 8 non-goals, success metrics, 32 open questions, 40+ term glossary
|
|
217
|
-
- `architecture.md` (2,658 lines) — system context, 8 component diagrams, data schemas, scope merge semantics, build pipeline, distribution, security, cross-platform, 15 architectural decisions (AD-01–AD-15), 20 open questions
|
|
218
|
-
- `technical-spec.md` (2,943 lines) — all 21 CLI commands specified, build system algorithms, persona.config.json schema (newly designed), 15 lint rules, canonical test YAML format, telemetry schema, MCP tools, plugin packaging, 20 open questions
|
|
219
|
-
- `design.md` (2,213 lines) — UX per user segment, privacy deep dive (13 subsections), marketplace/community, prompt lifecycle, onboarding flows, uninstall, brand, licensing, 31 open questions
|
|
220
|
-
|
|
221
|
-
Total: ~9,900 lines of planning documentation with ~103 open questions to resolve.
|
|
222
|
-
|
|
223
|
-
## Known Gaps
|
|
224
|
-
|
|
225
|
-
- No cursor or gemini output formats (Phase 2)
|
|
226
|
-
- Trait weight system (HIGH/MEDIUM/LOW) not yet implemented — traits are included or not (Phase 2)
|
|
227
|
-
- No runtime config schema validation (zod planned but not wired in) (Phase 2)
|
|
228
|
-
- Extension path `./personas` in config warns but doesn't block
|
|
229
|
-
- `repos.json` is empty — production sync path untested in real workflow (uses dev-sync for dogfooding)
|
|
230
|
-
- This repo is the build tool, not a personas hub — orgs create a separate `personas` repo that uses AgentBoot as the build tool
|
package/CONTRIBUTING.md
DELETED
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
# Contributing to AgentBoot
|
|
2
|
-
|
|
3
|
-
AgentBoot is a community project. This document explains what we are building together,
|
|
4
|
-
what belongs in the core versus a domain layer, and the quality bar for contributions.
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## What is in scope
|
|
9
|
-
|
|
10
|
-
### New core personas
|
|
11
|
-
A persona belongs in core if it addresses a universal development concern — something
|
|
12
|
-
any engineering team in any industry would benefit from. Good examples: an architecture
|
|
13
|
-
reviewer, a documentation reviewer, a dependency audit persona.
|
|
14
|
-
|
|
15
|
-
A persona does NOT belong in core if it assumes specific frameworks, compliance regimes,
|
|
16
|
-
business domains, or organizational structures. Those belong in a domain layer.
|
|
17
|
-
|
|
18
|
-
### New core traits
|
|
19
|
-
Traits are behavioral building blocks. A trait belongs in core if it describes a
|
|
20
|
-
reusable cognitive stance or output discipline that is domain-agnostic — the way
|
|
21
|
-
`critical-thinking` or `structured-output` are. If the trait only makes sense in the
|
|
22
|
-
context of a specific domain, it belongs in a domain layer instead.
|
|
23
|
-
|
|
24
|
-
### Domain templates
|
|
25
|
-
New domain templates under `domains/` are welcome. A domain template shows teams in
|
|
26
|
-
a specific vertical (healthcare, fintech, defense, government) how to build a compliance
|
|
27
|
-
layer on top of AgentBoot core without modifying core itself. Domain templates must
|
|
28
|
-
be generic enough that any team in that vertical can use them as a starting point.
|
|
29
|
-
They must not include real regulatory text, proprietary content, or org-specific rules.
|
|
30
|
-
|
|
31
|
-
### Bug fixes
|
|
32
|
-
Any defect in a persona, trait, instruction fragment, build script, sync script, or
|
|
33
|
-
CI configuration is in scope.
|
|
34
|
-
|
|
35
|
-
### Documentation
|
|
36
|
-
Improvements to any file under `docs/`, the main `README.md`, or inline documentation
|
|
37
|
-
inside trait and persona files are always welcome.
|
|
38
|
-
|
|
39
|
-
---
|
|
40
|
-
|
|
41
|
-
## What is NOT in scope
|
|
42
|
-
|
|
43
|
-
- **Org-specific personas.** A persona built for one company's engineering standards is
|
|
44
|
-
not useful to anyone else. Fork the repo or use the `extend` field in
|
|
45
|
-
`agentboot.config.json` to keep it private.
|
|
46
|
-
- **Proprietary domain content.** Do not contribute traits or personas that contain
|
|
47
|
-
internal compliance rules, internal coding standards, or references to non-public
|
|
48
|
-
specifications.
|
|
49
|
-
- **Opinions about coding styles.** AgentBoot ships agnostic on tabs vs. spaces,
|
|
50
|
-
semicolons, naming conventions, etc. Personas that enforce any particular style
|
|
51
|
-
convention belong in org forks, not in core.
|
|
52
|
-
- **Tool-specific integrations that are not widely applicable.** An integration with
|
|
53
|
-
a niche internal tool is not core material.
|
|
54
|
-
|
|
55
|
-
---
|
|
56
|
-
|
|
57
|
-
## How to propose a new persona
|
|
58
|
-
|
|
59
|
-
**Issue first, then PR.** Do not open a PR for a new persona without a corresponding
|
|
60
|
-
issue that has been acknowledged by a maintainer.
|
|
61
|
-
|
|
62
|
-
1. Open an issue using the [Persona Request](.github/ISSUE_TEMPLATE/persona-request.md)
|
|
63
|
-
template.
|
|
64
|
-
2. Describe the use case clearly. What problem does this persona solve? What does a
|
|
65
|
-
team look like before and after deploying it?
|
|
66
|
-
3. List the traits it would compose. If it requires a new trait, say so and explain why
|
|
67
|
-
existing traits are insufficient.
|
|
68
|
-
4. Provide an example invocation — a realistic prompt a developer would give it and
|
|
69
|
-
the output they would expect.
|
|
70
|
-
5. Explain why this belongs in core rather than a domain extension (see scope rules above).
|
|
71
|
-
6. Wait for maintainer acknowledgment before writing code. This prevents wasted effort
|
|
72
|
-
on proposals that don't fit the project direction.
|
|
73
|
-
|
|
74
|
-
---
|
|
75
|
-
|
|
76
|
-
## Trait design principles
|
|
77
|
-
|
|
78
|
-
Traits are the foundation of AgentBoot's composability. Bad traits make the whole system
|
|
79
|
-
worse. Good traits follow these principles:
|
|
80
|
-
|
|
81
|
-
**Generic, not specific.** A trait describes a cognitive stance or output discipline, not
|
|
82
|
-
a checklist of domain rules. `critical-thinking` is a stance. "Check that HIPAA audit
|
|
83
|
-
logs are present" is a domain rule and belongs in a domain layer.
|
|
84
|
-
|
|
85
|
-
**Composable, not monolithic.** A trait does one thing. If you are writing a trait that
|
|
86
|
-
covers two unrelated concerns, split it. Traits that try to do everything end up doing
|
|
87
|
-
nothing well.
|
|
88
|
-
|
|
89
|
-
**No domain assumptions.** A trait must not assume any particular framework, language,
|
|
90
|
-
industry, compliance regime, or organizational structure. If your trait works for a
|
|
91
|
-
Spring Boot API team but not for a React frontend team, it is not a core trait.
|
|
92
|
-
|
|
93
|
-
**Configurable where it matters.** Look at `critical-thinking` as the model: the trait
|
|
94
|
-
defines the behavior at each weight level, and the persona that composes it sets the
|
|
95
|
-
weight. Traits that have meaningful axes of variation should expose them in frontmatter
|
|
96
|
-
rather than hardcoding a single behavior.
|
|
97
|
-
|
|
98
|
-
**Negative space matters.** Every trait must include a "what not to do" section. Personas
|
|
99
|
-
that lack this section tend to produce output that is exhaustive but not useful.
|
|
100
|
-
|
|
101
|
-
---
|
|
102
|
-
|
|
103
|
-
## Persona quality bar
|
|
104
|
-
|
|
105
|
-
A persona is not ready to merge until it meets all of these requirements.
|
|
106
|
-
|
|
107
|
-
**Frontmatter.** Every persona file must include a YAML frontmatter block with:
|
|
108
|
-
- `id`: the slash-command identifier (e.g., `review-code`)
|
|
109
|
-
- `name`: human-readable display name
|
|
110
|
-
- `version`: semantic version starting at `1.0.0`
|
|
111
|
-
- `traits`: list of trait IDs with weights where applicable
|
|
112
|
-
- `scope`: one of `file`, `pr`, `repo`, `session`
|
|
113
|
-
- `output_format`: one of `structured`, `prose`, or `mixed`
|
|
114
|
-
|
|
115
|
-
**System prompt.** The persona must have a clear, complete system prompt that defines
|
|
116
|
-
its role, its operating assumptions, and its mandate. The system prompt should not be
|
|
117
|
-
a list of rules — it should read like a job description.
|
|
118
|
-
|
|
119
|
-
**Output format specification.** The persona must specify exactly what its output looks
|
|
120
|
-
like. If the output is structured, show the schema. If it is prose, describe the
|
|
121
|
-
sections. Ambiguous output specs lead to inconsistent persona behavior across models.
|
|
122
|
-
|
|
123
|
-
**What-not-to-do section.** Every persona must have a section describing anti-patterns —
|
|
124
|
-
things the persona must not do, tempting behaviors that would make it less useful, and
|
|
125
|
-
scope boundaries it must not cross.
|
|
126
|
-
|
|
127
|
-
**Example.** Every new persona must include at least one worked example: a realistic
|
|
128
|
-
input and the expected output. This is the primary way reviewers verify that the persona
|
|
129
|
-
does what it claims.
|
|
130
|
-
|
|
131
|
-
---
|
|
132
|
-
|
|
133
|
-
## Contributor License Agreement
|
|
134
|
-
|
|
135
|
-
First-time contributors must sign our CLA. When you open your first pull request,
|
|
136
|
-
the CLA bot will post a comment with instructions. This is a one-time process that
|
|
137
|
-
takes about 30 seconds — you sign by posting a comment on the PR.
|
|
138
|
-
|
|
139
|
-
The CLA grants the project maintainers the right to relicense your contributions if
|
|
140
|
-
needed for the long-term sustainability of the project. Your contributions remain
|
|
141
|
-
attributed to you. The full agreement is in [`CLA.md`](CLA.md).
|
|
142
|
-
|
|
143
|
-
---
|
|
144
|
-
|
|
145
|
-
## PR checklist
|
|
146
|
-
|
|
147
|
-
Before opening a PR, verify:
|
|
148
|
-
|
|
149
|
-
- [ ] `npm run validate` passes with no errors
|
|
150
|
-
- [ ] `npm run build` passes with no errors
|
|
151
|
-
- [ ] `PERSONAS.md` is updated if you added or changed a persona
|
|
152
|
-
- [ ] `README.md` is updated if the change affects the project overview
|
|
153
|
-
- [ ] An example is included if you added a new persona
|
|
154
|
-
- [ ] The trait design principles are satisfied if you added a new trait
|
|
155
|
-
- [ ] The persona quality bar is met if you added a new persona
|
|
156
|
-
- [ ] The issue number is referenced in the PR description
|
|
157
|
-
|
|
158
|
-
---
|
|
159
|
-
|
|
160
|
-
## Code of conduct
|
|
161
|
-
|
|
162
|
-
AgentBoot follows the [Contributor Covenant](https://www.contributor-covenant.org/version/2/1/code_of_conduct/)
|
|
163
|
-
version 2.1. By contributing, you agree to uphold these standards. Report violations
|
|
164
|
-
to the project maintainers.
|
|
165
|
-
|
|
166
|
-
---
|
|
167
|
-
|
|
168
|
-
*Thank you for making AgentBoot better.*
|
package/PERSONAS.md
DELETED
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
# AgentBoot Persona Registry
|
|
2
|
-
|
|
3
|
-
This file is the authoritative registry of all personas shipped with AgentBoot core.
|
|
4
|
-
It is generated automatically by `npm run build` — do not edit it manually.
|
|
5
|
-
If this file is out of date, run `npm run build` and commit the result.
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## V1 Personas
|
|
10
|
-
|
|
11
|
-
| Persona | ID | Invocation | Scope | Traits Composed | IDE Available |
|
|
12
|
-
|---|---|---|---|---|---|
|
|
13
|
-
| Code Reviewer | `code-reviewer` | `/review-code` | PR / file | critical-thinking (MEDIUM), structured-output, source-citation, confidence-signaling | Yes |
|
|
14
|
-
| Security Reviewer | `security-reviewer` | `/review-security` | PR / file | critical-thinking (HIGH), structured-output, source-citation, confidence-signaling, audit-trail | Yes |
|
|
15
|
-
| Test Generator | `test-generator` | `/gen-tests` | file | schema-awareness, structured-output, source-citation | Yes |
|
|
16
|
-
| Test Data Expert | `test-data-expert` | `/gen-testdata` | session | schema-awareness, structured-output | Yes |
|
|
17
|
-
|
|
18
|
-
### Code Reviewer
|
|
19
|
-
|
|
20
|
-
Performs code review against your team's standards. Produces severity-tiered findings
|
|
21
|
-
(CRITICAL / WARN / INFO) with source citations. Uses `critical-thinking: MEDIUM` —
|
|
22
|
-
flags clear defects and significant design concerns without opining on style preferences.
|
|
23
|
-
|
|
24
|
-
**Typical invocation:**
|
|
25
|
-
```
|
|
26
|
-
/review-code
|
|
27
|
-
```
|
|
28
|
-
or on a specific file:
|
|
29
|
-
```
|
|
30
|
-
/review-code src/services/payment-service.ts
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
**Output format:** Structured findings list. Each finding includes: severity, location
|
|
34
|
-
(file + line), description, citation, and recommendation.
|
|
35
|
-
|
|
36
|
-
---
|
|
37
|
-
|
|
38
|
-
### Security Reviewer
|
|
39
|
-
|
|
40
|
-
Security-focused code review. Uses `critical-thinking: HIGH` — treats absence of
|
|
41
|
-
evidence as a gap, surfaces worst-case scenarios first, never softens findings to
|
|
42
|
-
avoid friction. Covers: authentication, authorization, input validation, cryptographic
|
|
43
|
-
usage, secret handling, injection risks, and dependency vulnerabilities.
|
|
44
|
-
|
|
45
|
-
**Typical invocation:**
|
|
46
|
-
```
|
|
47
|
-
/review-security
|
|
48
|
-
```
|
|
49
|
-
or targeted:
|
|
50
|
-
```
|
|
51
|
-
/review-security src/auth/
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
**Output format:** Structured findings list. Security findings include an additional
|
|
55
|
-
`cvss_estimate` field (LOW / MEDIUM / HIGH / CRITICAL) and an `exploitability` note.
|
|
56
|
-
|
|
57
|
-
---
|
|
58
|
-
|
|
59
|
-
### Test Generator
|
|
60
|
-
|
|
61
|
-
Generates unit and integration tests from function signatures, class definitions, or
|
|
62
|
-
module exports. Produces tests in the testing framework already used in the repo
|
|
63
|
-
(detected from `package.json` devDependencies and existing test files). Covers: happy
|
|
64
|
-
path, boundary conditions, error cases, and null/undefined handling.
|
|
65
|
-
|
|
66
|
-
**Typical invocation:**
|
|
67
|
-
```
|
|
68
|
-
/gen-tests src/services/user-service.ts
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
**Output format:** Ready-to-run test file(s) following the repo's existing test
|
|
72
|
-
conventions. Includes a brief explanation of what each test covers and why.
|
|
73
|
-
|
|
74
|
-
---
|
|
75
|
-
|
|
76
|
-
### Test Data Expert
|
|
77
|
-
|
|
78
|
-
Generates realistic, schema-consistent synthetic test data. Reads the data model from
|
|
79
|
-
TypeScript types, Zod schemas, or database schema files and produces data that is
|
|
80
|
-
structurally valid, type-correct, and diverse enough to exercise edge cases.
|
|
81
|
-
|
|
82
|
-
**Typical invocation:**
|
|
83
|
-
```
|
|
84
|
-
/gen-testdata src/domains/user/user.types.ts
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
**Output format:** TypeScript constant declarations, JSON fixtures, or SQL INSERT
|
|
88
|
-
statements (detected from context). Each output includes a comment explaining any
|
|
89
|
-
domain assumptions made.
|
|
90
|
-
|
|
91
|
-
---
|
|
92
|
-
|
|
93
|
-
## IDE Availability
|
|
94
|
-
|
|
95
|
-
All V1 personas are available via Claude Code slash commands (the primary interface).
|
|
96
|
-
All personas that produce structured output also work in editor integrated mode —
|
|
97
|
-
when invoked from within an open file, they automatically scope to the visible file
|
|
98
|
-
context.
|
|
99
|
-
|
|
100
|
-
For GitHub Copilot and Cursor compatibility, see the note about agentskills.io in
|
|
101
|
-
[`README.md`](README.md). Personas compiled from AgentBoot follow the SKILL.md standard
|
|
102
|
-
and work in any agentskills.io-compatible tool.
|
|
103
|
-
|
|
104
|
-
---
|
|
105
|
-
|
|
106
|
-
## V1 Core Traits
|
|
107
|
-
|
|
108
|
-
| Trait | ID | Configurable | Used By |
|
|
109
|
-
|---|---|---|---|
|
|
110
|
-
| Critical Thinking | `critical-thinking` | Yes (HIGH/MEDIUM/LOW) | code-reviewer, security-reviewer |
|
|
111
|
-
| Structured Output | `structured-output` | No | all V1 personas |
|
|
112
|
-
| Source Citation | `source-citation` | No | code-reviewer, security-reviewer, test-generator |
|
|
113
|
-
| Confidence Signaling | `confidence-signaling` | No | code-reviewer, security-reviewer |
|
|
114
|
-
| Audit Trail | `audit-trail` | No | security-reviewer |
|
|
115
|
-
| Schema Awareness | `schema-awareness` | No | test-generator, test-data-expert |
|
|
116
|
-
|
|
117
|
-
---
|
|
118
|
-
|
|
119
|
-
## Personas in the growth pipeline
|
|
120
|
-
|
|
121
|
-
The following personas are under consideration for V2. None are committed or scheduled.
|
|
122
|
-
If you want to work on one, open an issue using the
|
|
123
|
-
[Persona Request](.github/ISSUE_TEMPLATE/persona-request.md) template.
|
|
124
|
-
|
|
125
|
-
- **Architecture Reviewer** — Reviews structural decisions, dependency direction, and
|
|
126
|
-
bounded context violations. Candidate scope: PR / ADR file.
|
|
127
|
-
- **Documentation Reviewer** — Checks that public APIs, complex functions, and
|
|
128
|
-
architectural decisions are documented adequately. Candidate scope: PR / file.
|
|
129
|
-
- **Dependency Auditor** — Audits `package.json` / `pom.xml` / `go.mod` for outdated,
|
|
130
|
-
vulnerable, or license-incompatible dependencies. Candidate scope: session.
|
|
131
|
-
- **Incident Analyst** — Given a log dump or error trace, identifies root cause, blast
|
|
132
|
-
radius, and remediation path. Candidate scope: session.
|
|
133
|
-
- **Database Reviewer** — Reviews schema migrations for safety, reversibility, and
|
|
134
|
-
performance risks. Candidate scope: PR / migration file.
|
|
135
|
-
|
|
136
|
-
---
|
|
137
|
-
|
|
138
|
-
## How to contribute a persona
|
|
139
|
-
|
|
140
|
-
1. Read [`docs/concepts.md`](docs/concepts.md) to understand what a persona is and how
|
|
141
|
-
it composes traits.
|
|
142
|
-
2. Read [`CONTRIBUTING.md`](CONTRIBUTING.md) for the quality bar and the issue-first policy.
|
|
143
|
-
3. Open a [Persona Request](.github/ISSUE_TEMPLATE/persona-request.md) issue.
|
|
144
|
-
4. Wait for maintainer acknowledgment before writing code.
|
|
145
|
-
|
|
146
|
-
The quality bar for a merged persona:
|
|
147
|
-
- Complete SKILL.md frontmatter (id, name, version, traits, scope, output_format)
|
|
148
|
-
- Clear system prompt that reads like a job description
|
|
149
|
-
- Explicit output format specification
|
|
150
|
-
- What-not-to-do section
|
|
151
|
-
- At least one worked example
|
|
152
|
-
|
|
153
|
-
---
|
|
154
|
-
|
|
155
|
-
*Generated by AgentBoot build. Do not edit manually.*
|
|
156
|
-
*Last updated: 2026-03-17*
|