agentboot 0.1.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.
Files changed (78) hide show
  1. package/.github/ISSUE_TEMPLATE/persona-request.md +62 -0
  2. package/.github/ISSUE_TEMPLATE/quality-feedback.md +67 -0
  3. package/.github/workflows/cla.yml +25 -0
  4. package/.github/workflows/validate.yml +49 -0
  5. package/.idea/agentboot.iml +9 -0
  6. package/.idea/misc.xml +6 -0
  7. package/.idea/modules.xml +8 -0
  8. package/.idea/vcs.xml +6 -0
  9. package/CLA.md +98 -0
  10. package/CLAUDE.md +230 -0
  11. package/CONTRIBUTING.md +168 -0
  12. package/LICENSE +191 -0
  13. package/NOTICE +4 -0
  14. package/PERSONAS.md +156 -0
  15. package/README.md +172 -0
  16. package/agentboot.config.json +207 -0
  17. package/bin/agentboot.js +17 -0
  18. package/core/gotchas/README.md +35 -0
  19. package/core/instructions/baseline.instructions.md +133 -0
  20. package/core/instructions/security.instructions.md +186 -0
  21. package/core/personas/code-reviewer/SKILL.md +175 -0
  22. package/core/personas/code-reviewer/persona.config.json +11 -0
  23. package/core/personas/security-reviewer/SKILL.md +233 -0
  24. package/core/personas/security-reviewer/persona.config.json +11 -0
  25. package/core/personas/test-data-expert/SKILL.md +234 -0
  26. package/core/personas/test-data-expert/persona.config.json +10 -0
  27. package/core/personas/test-generator/SKILL.md +262 -0
  28. package/core/personas/test-generator/persona.config.json +10 -0
  29. package/core/traits/audit-trail.md +182 -0
  30. package/core/traits/confidence-signaling.md +172 -0
  31. package/core/traits/critical-thinking.md +129 -0
  32. package/core/traits/schema-awareness.md +132 -0
  33. package/core/traits/source-citation.md +174 -0
  34. package/core/traits/structured-output.md +199 -0
  35. package/docs/ci-cd-automation.md +548 -0
  36. package/docs/claude-code-reference/README.md +21 -0
  37. package/docs/claude-code-reference/agentboot-coverage.md +484 -0
  38. package/docs/claude-code-reference/feature-inventory.md +906 -0
  39. package/docs/cli-commands-audit.md +112 -0
  40. package/docs/cli-design.md +924 -0
  41. package/docs/concepts.md +1117 -0
  42. package/docs/config-schema-audit.md +121 -0
  43. package/docs/configuration.md +645 -0
  44. package/docs/delivery-methods.md +758 -0
  45. package/docs/developer-onboarding.md +342 -0
  46. package/docs/extending.md +448 -0
  47. package/docs/getting-started.md +298 -0
  48. package/docs/knowledge-layer.md +464 -0
  49. package/docs/marketplace.md +822 -0
  50. package/docs/org-connection.md +570 -0
  51. package/docs/plans/architecture.md +2429 -0
  52. package/docs/plans/design.md +2018 -0
  53. package/docs/plans/prd.md +1862 -0
  54. package/docs/plans/stack-rank.md +261 -0
  55. package/docs/plans/technical-spec.md +2755 -0
  56. package/docs/privacy-and-safety.md +807 -0
  57. package/docs/prompt-optimization.md +1071 -0
  58. package/docs/test-plan.md +972 -0
  59. package/docs/third-party-ecosystem.md +496 -0
  60. package/domains/compliance-template/README.md +173 -0
  61. package/domains/compliance-template/traits/compliance-aware.md +228 -0
  62. package/examples/enterprise/agentboot.config.json +184 -0
  63. package/examples/minimal/agentboot.config.json +46 -0
  64. package/package.json +63 -0
  65. package/repos.json +1 -0
  66. package/scripts/cli.ts +1069 -0
  67. package/scripts/compile.ts +1000 -0
  68. package/scripts/dev-sync.ts +149 -0
  69. package/scripts/lib/config.ts +137 -0
  70. package/scripts/lib/frontmatter.ts +61 -0
  71. package/scripts/sync.ts +687 -0
  72. package/scripts/validate.ts +421 -0
  73. package/tests/REGRESSION-PLAN.md +705 -0
  74. package/tests/TEST-PLAN.md +111 -0
  75. package/tests/cli.test.ts +705 -0
  76. package/tests/pipeline.test.ts +608 -0
  77. package/tests/validate.test.ts +278 -0
  78. package/tsconfig.json +62 -0
@@ -0,0 +1,62 @@
1
+ ---
2
+ name: Persona request
3
+ about: Propose a new persona for AgentBoot core
4
+ title: "persona: [name here]"
5
+ labels: persona-request
6
+ assignees: ""
7
+ ---
8
+
9
+ ## Persona name
10
+
11
+ <!-- What would you call this persona? This becomes the display name in PERSONAS.md. -->
12
+
13
+ ## Invocation
14
+
15
+ <!-- What slash command would invoke it? e.g., /review-architecture, /audit-deps -->
16
+
17
+ ## Use case
18
+
19
+ <!-- What problem does this persona solve? Describe the situation: what does a developer
20
+ want to do, what is painful about doing it today, and how does this persona make
21
+ it better? Be concrete. -->
22
+
23
+ ## What traits would it compose?
24
+
25
+ <!-- List the core traits this persona would use, with weights where applicable.
26
+ Example:
27
+ - critical-thinking: HIGH
28
+ - structured-output: true
29
+ - source-citation: true
30
+
31
+ If this persona requires a new trait that does not exist yet, explain what that
32
+ trait would do and why existing traits are insufficient. -->
33
+
34
+ ## Example invocation
35
+
36
+ <!-- Show a realistic prompt a developer would give this persona and describe
37
+ the output they would expect. This is the primary way maintainers evaluate
38
+ whether the persona is scoped correctly and fills a real gap. -->
39
+
40
+ **Input:**
41
+ ```
42
+ [paste a realistic prompt here]
43
+ ```
44
+
45
+ **Expected output structure:**
46
+ ```
47
+ [describe or sketch the expected output here]
48
+ ```
49
+
50
+ ## Why core, not a domain extension?
51
+
52
+ <!-- AgentBoot core contains only generic, domain-agnostic personas that are useful
53
+ to any engineering team regardless of industry. Explain why this persona fits
54
+ that bar.
55
+
56
+ If it is specific to a compliance regime, a framework, an industry, or an internal
57
+ standard, it should be a domain extension instead. See docs/extending.md. -->
58
+
59
+ ## Additional context
60
+
61
+ <!-- Anything else that would help maintainers evaluate this proposal. Links to
62
+ prior art, related issues, examples from other tools, etc. -->
@@ -0,0 +1,67 @@
1
+ ---
2
+ name: Quality feedback
3
+ about: Report bad or unexpected output from a persona
4
+ title: "quality: [persona-id] [brief description]"
5
+ labels: quality-feedback
6
+ assignees: ""
7
+ ---
8
+
9
+ ## Persona name
10
+
11
+ <!-- Which persona produced the bad output? e.g., code-reviewer, security-reviewer -->
12
+
13
+ ## What you asked it to do
14
+
15
+ <!-- Describe what you asked the persona to do. Include the exact prompt or command
16
+ if you can. If the input is large, include the most relevant portion. -->
17
+
18
+ **Prompt / invocation:**
19
+ ```
20
+ [paste your prompt here]
21
+ ```
22
+
23
+ **Input (if relevant):**
24
+ ```
25
+ [paste the code, file, or context you gave it, or a representative excerpt]
26
+ ```
27
+
28
+ ## What it actually did
29
+
30
+ <!-- Describe what the persona produced. If the output was long, include the most
31
+ relevant portion — the finding that was wrong, the section that was missing,
32
+ the format that was broken, etc. -->
33
+
34
+ **Actual output:**
35
+ ```
36
+ [paste the relevant portion of the output here]
37
+ ```
38
+
39
+ ## What you expected
40
+
41
+ <!-- Describe what you expected it to do instead. Be specific. "Better output" is
42
+ not actionable. "The persona should have flagged the missing null check on line 14
43
+ but instead flagged a style preference" is actionable. -->
44
+
45
+ ## Claude Code version
46
+
47
+ <!-- Run `claude --version` and paste the output here. -->
48
+
49
+ ## Trait weight or config (if known)
50
+
51
+ <!-- If you know which trait weight was active for this persona (HIGH / MEDIUM / LOW),
52
+ include it here. If you modified any agentboot.config.json settings that might
53
+ be relevant, include those too. -->
54
+
55
+ ## Is this a regression?
56
+
57
+ <!-- Did this persona work correctly before and then stop working? If so, when did you
58
+ last see it working correctly, and do you know of any changes (to Claude Code,
59
+ to AgentBoot, to the persona file) that happened around that time? -->
60
+
61
+ - [ ] Yes, this worked correctly before
62
+ - [ ] No, this is a first-time deployment and it has never worked correctly
63
+ - [ ] Unknown
64
+
65
+ ## Additional context
66
+
67
+ <!-- Anything else that would help reproduce or understand the issue. -->
@@ -0,0 +1,25 @@
1
+ name: CLA Assistant
2
+ on:
3
+ issue_comment:
4
+ types: [created]
5
+ pull_request_target:
6
+ types: [opened, synchronize, reopened]
7
+
8
+ permissions:
9
+ actions: write
10
+ contents: write
11
+ pull-requests: write
12
+ statuses: write
13
+
14
+ jobs:
15
+ cla:
16
+ runs-on: ubuntu-latest
17
+ steps:
18
+ - uses: contributor-assistant/github-action@v2
19
+ env:
20
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
21
+ with:
22
+ path-to-signatures: "signatures/cla.json"
23
+ path-to-document: "https://github.com/agentboot-dev/agentboot/blob/main/CLA.md"
24
+ branch: "main"
25
+ allowlist: "saavyone,dependabot[bot]"
@@ -0,0 +1,49 @@
1
+ name: Validate
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ pull_request:
8
+
9
+ jobs:
10
+ validate:
11
+ name: Validate and build
12
+ runs-on: ubuntu-latest
13
+
14
+ steps:
15
+ - name: Checkout
16
+ uses: actions/checkout@v4
17
+
18
+ - name: Set up Node.js
19
+ uses: actions/setup-node@v4
20
+ with:
21
+ node-version: "18"
22
+ cache: "npm"
23
+
24
+ - name: Install dependencies
25
+ run: npm install
26
+
27
+ - name: Validate personas and traits
28
+ run: npm run validate
29
+ # Exits 1 if any persona is missing required frontmatter fields,
30
+ # any trait referenced in a persona does not exist, or
31
+ # agentboot.config.json fails schema validation.
32
+
33
+ - name: Build
34
+ run: npm run build
35
+ # Resolves all trait compositions and produces compiled output in .build/.
36
+ # Fails if any persona cannot be compiled (missing trait, malformed SKILL.md, etc.).
37
+
38
+ - name: Check PERSONAS.md is up to date
39
+ run: |
40
+ # The build step regenerates PERSONAS.md from the compiled persona set.
41
+ # If the committed PERSONAS.md differs from the regenerated version,
42
+ # this step fails. Run `npm run build` locally and commit the updated
43
+ # PERSONAS.md to fix this check.
44
+ if ! git diff --exit-code PERSONAS.md; then
45
+ echo ""
46
+ echo "PERSONAS.md is out of date."
47
+ echo "Run 'npm run build' locally and commit the updated PERSONAS.md."
48
+ exit 1
49
+ fi
@@ -0,0 +1,9 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <module type="JAVA_MODULE" version="4">
3
+ <component name="NewModuleRootManager" inherit-compiler-output="true">
4
+ <exclude-output />
5
+ <content url="file://$MODULE_DIR$" />
6
+ <orderEntry type="inheritedJdk" />
7
+ <orderEntry type="sourceFolder" forTests="false" />
8
+ </component>
9
+ </module>
package/.idea/misc.xml ADDED
@@ -0,0 +1,6 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="ProjectRootManager" version="2">
4
+ <output url="file://$PROJECT_DIR$/out" />
5
+ </component>
6
+ </project>
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="ProjectModuleManager">
4
+ <modules>
5
+ <module fileurl="file://$PROJECT_DIR$/.idea/agentboot.iml" filepath="$PROJECT_DIR$/.idea/agentboot.iml" />
6
+ </modules>
7
+ </component>
8
+ </project>
package/.idea/vcs.xml ADDED
@@ -0,0 +1,6 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="VcsDirectoryMappings">
4
+ <mapping directory="" vcs="Git" />
5
+ </component>
6
+ </project>
package/CLA.md ADDED
@@ -0,0 +1,98 @@
1
+ # AgentBoot Contributor License Agreement
2
+
3
+ **Version 1.0 — Effective 2026-03-21**
4
+
5
+ Thank you for your interest in contributing to AgentBoot. This Contributor License
6
+ Agreement ("Agreement") defines the terms under which you ("You") submit
7
+ Contributions to the AgentBoot project, owned and maintained by Michel Saavedra
8
+ ("Maintainer").
9
+
10
+ You accept this Agreement by commenting "I have read the CLA Document and I hereby
11
+ sign the CLA" on your first pull request. This is a one-time process.
12
+
13
+ ---
14
+
15
+ ## 1. Definitions
16
+
17
+ **"Contribution"** means any original work of authorship, including any modifications
18
+ or additions to existing work, that You intentionally submit to the AgentBoot project
19
+ for inclusion. "Submit" means any form of communication sent to the project — including
20
+ pull requests, issues, comments, and commits — but excluding communications
21
+ conspicuously marked "Not a Contribution."
22
+
23
+ **"Project"** means the AgentBoot software and associated documentation maintained at
24
+ https://github.com/agentboot-dev/agentboot and any successor repositories.
25
+
26
+ ---
27
+
28
+ ## 2. Grant of Copyright License
29
+
30
+ You hereby grant to the Maintainer and to recipients of software distributed by the
31
+ Maintainer a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable
32
+ copyright license to reproduce, prepare derivative works of, publicly display, publicly
33
+ perform, sublicense, and distribute Your Contributions and any derivative works thereof.
34
+
35
+ ---
36
+
37
+ ## 3. Grant of Patent License
38
+
39
+ You hereby grant to the Maintainer and to recipients of software distributed by the
40
+ Maintainer a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable
41
+ patent license to make, have made, use, offer to sell, sell, import, and otherwise
42
+ transfer Your Contributions, where such license applies only to those patent claims
43
+ licensable by You that are necessarily infringed by Your Contributions alone or by
44
+ combination of Your Contributions with the Project.
45
+
46
+ ---
47
+
48
+ ## 4. Right to Relicense
49
+
50
+ You acknowledge that the Maintainer may, at their sole discretion, relicense the
51
+ Project (including Your Contributions) under different license terms in the future.
52
+ This right is granted to ensure the long-term sustainability and evolution of the
53
+ Project. Any relicensing will not revoke the rights already granted to recipients
54
+ under the license in effect at the time they received the software.
55
+
56
+ ---
57
+
58
+ ## 5. Your Representations
59
+
60
+ You represent that:
61
+
62
+ (a) You are legally entitled to grant the above licenses. If your employer has rights
63
+ to intellectual property that you create, you represent that you have received
64
+ permission to make Contributions on behalf of that employer, or that your employer
65
+ has waived such rights for Contributions to this Project.
66
+
67
+ (b) Each Contribution is Your original creation. If any part of Your Contribution is
68
+ based on or derived from existing work, You will clearly identify that work and its
69
+ license in the Contribution.
70
+
71
+ (c) You are not aware of any third-party claims, liens, or encumbrances on the
72
+ Contribution.
73
+
74
+ ---
75
+
76
+ ## 6. No Obligation
77
+
78
+ You understand that the decision to include Your Contribution in the Project is
79
+ entirely at the discretion of the Maintainer. This Agreement does not create any
80
+ obligation for the Maintainer to use, merge, or distribute Your Contribution.
81
+
82
+ ---
83
+
84
+ ## 7. No Warranty
85
+
86
+ Your Contributions are provided on an "AS IS" basis, without warranties or conditions
87
+ of any kind, either express or implied.
88
+
89
+ ---
90
+
91
+ ## 8. Governing Law
92
+
93
+ This Agreement shall be governed by and construed in accordance with the laws of the
94
+ State of Florida, United States, without regard to its conflict of law provisions.
95
+
96
+ ---
97
+
98
+ *This CLA is adapted from the Apache Individual Contributor License Agreement v2.0.*
package/CLAUDE.md ADDED
@@ -0,0 +1,230 @@
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