loadout-ai 0.8.0 → 0.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/CHANGELOG.md +136 -0
  2. package/README.md +149 -309
  3. package/SECURITY.md +21 -1
  4. package/catalog/discovered.json +29122 -25325
  5. package/catalog/packages.json +4 -4
  6. package/dist/src/cli.js +12 -4
  7. package/dist/src/commands/agents.js +3 -1
  8. package/dist/src/commands/catalog-candidate.js +150 -0
  9. package/dist/src/commands/catalog-workflows.js +365 -0
  10. package/dist/src/commands/catalog.js +9 -354
  11. package/dist/src/commands/coordinate.js +730 -0
  12. package/dist/src/commands/coordination-discussions.js +218 -0
  13. package/dist/src/commands/coordination-sessions.js +197 -0
  14. package/dist/src/commands/inventory.js +4 -2
  15. package/dist/src/core/{routing → agents}/model-config.js +7 -2
  16. package/dist/src/core/catalog/catalog.js +1 -0
  17. package/dist/src/core/catalog/registry.js +5 -19
  18. package/dist/src/core/coordination/adapters/claude-code.js +154 -0
  19. package/dist/src/core/coordination/adapters/codex.js +160 -0
  20. package/dist/src/core/coordination/adapters/types.js +64 -0
  21. package/dist/src/core/coordination/auth.js +59 -0
  22. package/dist/src/core/coordination/auto-contract.js +457 -0
  23. package/dist/src/core/coordination/bridge-lease.js +79 -0
  24. package/dist/src/core/coordination/conflict-preview.js +167 -0
  25. package/dist/src/core/coordination/contract-diff.js +106 -0
  26. package/dist/src/core/coordination/coordinator.js +552 -0
  27. package/dist/src/core/coordination/crash-recovery.js +169 -0
  28. package/dist/src/core/coordination/daemon.js +670 -0
  29. package/dist/src/core/coordination/discussion-pipeline.js +313 -0
  30. package/dist/src/core/coordination/discussion.js +340 -0
  31. package/dist/src/core/coordination/events.js +161 -0
  32. package/dist/src/core/coordination/git-ownership.js +217 -0
  33. package/dist/src/core/coordination/http-api.js +118 -0
  34. package/dist/src/core/coordination/interrupt-policy.js +89 -0
  35. package/dist/src/core/coordination/lock.js +140 -0
  36. package/dist/src/core/coordination/mcp-server.js +424 -0
  37. package/dist/src/core/coordination/quick-start.js +200 -0
  38. package/dist/src/core/coordination/redaction.js +85 -0
  39. package/dist/src/core/coordination/replay.js +188 -0
  40. package/dist/src/core/coordination/retention.js +180 -0
  41. package/dist/src/core/coordination/runtime.js +21 -0
  42. package/dist/src/core/coordination/session-manager.js +366 -0
  43. package/dist/src/core/coordination/watcher.js +128 -0
  44. package/dist/src/core/{routing → delegation}/first-party-skills.js +25 -13
  45. package/dist/src/core/delegation/handoff-bundle.js +253 -0
  46. package/dist/src/core/delegation/handoff-templates.js +222 -0
  47. package/dist/src/core/delegation/handoff-verification.js +117 -0
  48. package/dist/src/core/delegation/handoff.js +537 -0
  49. package/dist/src/core/discovery/candidate-intelligence-evidence.js +108 -0
  50. package/dist/src/core/discovery/candidate-intelligence-types.js +1 -0
  51. package/dist/src/core/discovery/candidate-intelligence-validation.js +108 -0
  52. package/dist/src/core/discovery/candidate-intelligence.js +3 -214
  53. package/dist/src/core/discovery/community.js +12 -4
  54. package/dist/src/core/discovery/github-discovery.js +6 -2
  55. package/dist/src/core/discovery/private-discovery.js +6 -2
  56. package/dist/src/core/install/reconcile.js +1 -1
  57. package/dist/src/core/install/snapshot.js +24 -5
  58. package/dist/src/core/install/uninstall.js +39 -3
  59. package/dist/src/core/reporting/cli-guide.js +9 -5
  60. package/dist/src/core/reporting/completion.js +43 -38
  61. package/dist/src/core/reporting/doctor.js +1 -1
  62. package/dist/src/core/runtime/bounded-json.js +65 -0
  63. package/dist/src/core/runtime/github.js +30 -16
  64. package/dist/src/core/runtime/mcp-recipes.js +1 -1
  65. package/dist/src/core/workspace/active-policy.js +1 -1
  66. package/docs/DEMO_SCRIPT.md +19 -23
  67. package/docs/DISCOVERED.md +250 -251
  68. package/docs/FEATURE_TEST_MATRIX.md +30 -15
  69. package/docs/LIVE_COLLABORATION.md +283 -0
  70. package/docs/REFERENCE.md +263 -0
  71. package/docs/RELEASE_REVIEW.md +1 -1
  72. package/docs/TESTING.md +17 -1
  73. package/docs/USER_TEST_GUIDE.md +211 -3
  74. package/docs/assets/loadout-discover-activate.webp +0 -0
  75. package/docs/assets/loadout-handoff-coordinate.webp +0 -0
  76. package/docs/assets/loadout-social-preview.png +0 -0
  77. package/docs/decisions/001-coordination-jsonl-locking.md +35 -0
  78. package/docs/decisions/002-local-daemon-authentication.md +32 -0
  79. package/docs/decisions/003-bounded-agent-discussions.md +91 -0
  80. package/docs/evidence/coordination-provider-check-2026-09-05.md +33 -0
  81. package/docs/specs/BOUNDED_AGENT_DISCUSSIONS.md +169 -0
  82. package/docs/specs/HANDOFF_CONTEXT_BUNDLES.md +139 -0
  83. package/docs/specs/HANDOFF_VERIFICATION.md +83 -0
  84. package/docs/superpowers/plans/2026-09-03-coordination-hardening.md +231 -0
  85. package/docs/superpowers/plans/2026-09-03-release-readiness.md +232 -0
  86. package/docs/superpowers/plans/2026-09-04-bounded-agent-discussions.md +121 -0
  87. package/docs/superpowers/plans/2026-09-04-handoff-context-bundles.md +109 -0
  88. package/docs/superpowers/plans/2026-09-04-handoff-verification.md +56 -0
  89. package/docs/superpowers/plans/2026-09-05-pre-release-hardening.md +175 -0
  90. package/docs/superpowers/plans/2026-09-05-public-readiness.md +20 -0
  91. package/package.json +15 -5
  92. package/skills/loadout-handoff/SKILL.md +291 -0
  93. package/dist/src/core/routing/handoff.js +0 -314
  94. package/dist/src/core/routing/policy.js +0 -147
  95. package/dist/src/core/routing/route.js +0 -411
  96. package/docs/assets/loadout-workflow.png +0 -0
  97. package/skills/loadout-router/SKILL.md +0 -85
  98. /package/dist/src/core/{routing → agents}/credentials.js +0 -0
package/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  <p align="center">
2
- <img src="./docs/assets/loadout-workflow.png" alt="Loadout discovers skills, tools, and MCP servers, keeps them in a screened library, matches an active set to each project, and manages them across AI coding agents." width="960">
2
+ <img src="./docs/assets/loadout-discover-activate.webp" alt="Loadout discovers agent skills, tools, and MCP servers; screens and pins them; activates the right set for a repository; and lets users preview or roll back every change." width="960">
3
3
  </p>
4
4
 
5
5
  <h1 align="center">Loadout</h1>
@@ -8,8 +8,9 @@
8
8
 
9
9
  <p align="center">
10
10
  <strong>The package manager for your AI coding setup.</strong><br>
11
- Install skills across 12 agents. Route each task to the right model.<br>
12
- Hand work between Claude Code and Codex. Undo any of it.
11
+ Find skills worth having, activate the right ones per project,<br>
12
+ install them across 12 agents, hand work from Claude Code to Codex,<br>
13
+ and undo any of it.
13
14
  </p>
14
15
 
15
16
  <p align="center">
@@ -25,41 +26,52 @@
25
26
  <a href="#what-it-looks-like">See it</a> ·
26
27
  <a href="#install">Install</a> ·
27
28
  <a href="#use-it-from-inside-your-agent">Use it in your agent</a> ·
28
- <a href="#working-across-two-agents">Two agents</a> ·
29
+ <a href="#passing-work-between-two-agents">Two agents</a> ·
29
30
  <a href="#why-loadout">Why</a> ·
30
- <a href="#trust-and-limits">Trust</a> ·
31
31
  <a href="#command-reference">Commands</a>
32
32
  </p>
33
33
 
34
34
  ## What it looks like
35
35
 
36
36
  ```console
37
- $ loadout status
38
- Loadout — grade A: Healthy and up to date
39
-
40
- ✓ Claude Code
41
- ~/.claude/skills
42
- 43 skills | supports: skill, command, agent, mcp, plugin, root
43
- ✓ Codex
44
- ~/.agents/skills
45
- 30 skills | supports: skill, command, agent, mcp, plugin, root
46
-
47
- $ loadout route
48
- Default routing policy (not saved yet)
49
-
50
- hard Claude Opus 5 $5/$25 per M
51
- architecture, security, migrations, tricky debugging, risky review
52
- normal Claude Sonnet 5 $3/$15 per M
53
- most implementation, ordinary debugging, refactors
54
- cheap GPT-5.6 Luna $0.2/$1.2 per M
55
- tests, docs, boilerplate, renames, mechanical edits
56
-
57
- Change it: loadout route --set normal=gpt-5.6-terra
37
+ $ loadout doctor
38
+ loadout doctor — HEALTHY
39
+
40
+ Platform: darwin
41
+ State: ~/.loadout ✓ writable
42
+ Agents: 3 detected, 9 available
43
+
44
+ DETECTED AGENTS
45
+ ✓ Claude Code
46
+ ~/.claude/skills
47
+ 43 skills | supports: skill, command, agent, mcp, plugin, root
48
+ ✓ Codex
49
+ ~/.agents/skills
50
+ 30 skills | supports: skill, command, agent, mcp, plugin, root
51
+
52
+ $ loadout recommend --project .
53
+ Project: checkout-service
54
+ Detected: TypeScript, Zod, Vitest, next.js, react
55
+
56
+ Rule-based project suggestions:
57
+ superpowers [high, skill library] — Useful engineering planning, testing, and review workflows.
58
+ context7 [high, skill library] — Current library documentation helps agents avoid outdated APIs.
59
+ ui-ux-pro-max [high, skill library] — Frontend framework detected: next.js, react.
60
+ playwright-mcp [medium, MCP/runtime setup] — Browser verification may help test the detected frontend.
58
61
  ```
59
62
 
60
- The routing policy is a file you own, not a table I decided for you. Loadout
61
- knows which agents you actually have, prices the tradeoff before you spend the
62
- tokens, and previews and snapshots every write.
63
+ It reads your repository rather than a config file, knows which agents you
64
+ actually have, and previews and snapshots every write before it touches them.
65
+
66
+ ### Demo
67
+
68
+ <p align="center">
69
+ <a href="https://www.youtube.com/watch?v=opNqJKX7xMw">
70
+ <img src="https://img.youtube.com/vi/opNqJKX7xMw/maxresdefault.jpg" alt="Watch the 72-second Loadout demo" width="880">
71
+ </a>
72
+ </p>
73
+
74
+ **[Watch the 72-second Loadout demo on YouTube](https://www.youtube.com/watch?v=opNqJKX7xMw).**
63
75
 
64
76
  ## Install
65
77
 
@@ -74,43 +86,48 @@ The second command detects your agents and previews the 30-skill Stable loadout.
74
86
  Nothing changes until you approve it. If anything goes wrong, start with the
75
87
  [user test guide](./docs/USER_TEST_GUIDE.md).
76
88
 
77
- For a reproducible install, pin the release: `npm install --global loadout-ai@0.8.0`.
89
+ For a reproducible install, pin the release: `npm install --global loadout-ai@0.9.1`.
78
90
 
79
91
  ## Use it from inside your agent
80
92
 
81
- A CLI you have to leave your agent to run is a context switch. Loadout ships its
82
- own skill so you do not have to:
93
+ A CLI you have to leave your agent to run is a context switch. Loadout ships two
94
+ skills so you do not have to: one for agent handoffs and one for choosing a
95
+ focused skill set for the current repository.
83
96
 
84
97
  ```bash
85
- loadout skills install loadout-router --yes
98
+ loadout skills install loadout-handoff --yes
99
+ loadout skills install loadout-curator --yes
86
100
  ```
87
101
 
88
102
  Start a new agent session and just ask, in the conversation you are already in:
89
103
 
90
- > _"Which model should I use to refactor this auth module?"_
91
- > _"I'm running low on usage — what should I switch to?"_
92
104
  > _"Hand the test writing to Codex."_
105
+ > _"What did Codex leave for me?"_
106
+ > _"Which skills should be active for this repo?"_
93
107
 
94
- The skill teaches your agent to call `loadout route` and `loadout handoff` and act
95
- on the results. It wraps the CLI rather than embedding a copy of the model table,
96
- so pricing and model coverage update when Loadout updates instead of going stale
97
- in a markdown file.
108
+ The skills teach your agent to call `loadout` and act on the results, so it
109
+ checks its own inbox at the start of a session and can pass work to your other
110
+ agent without you relaying it by hand.
98
111
 
99
112
  `loadout skills list` shows what ships with Loadout and what is already installed.
100
113
 
101
- ## Working across two agents
114
+ ## Passing work between two agents
115
+
116
+ <p align="center">
117
+ <img src="./docs/assets/loadout-handoff-coordinate.webp" alt="Claude Code and Codex use Loadout in two ways: durable task handoffs between sessions, and structured coordination for contracts, file ownership, decisions, acknowledgements, and an audit trail." width="960">
118
+ </p>
102
119
 
103
120
  If you pay for both Claude and a ChatGPT plan, the two agents cannot see each
104
121
  other. Loadout gives them a shared, append-only task log:
105
122
 
106
123
  ```bash
107
- loadout handoff codex "write unit tests for auth" --context "see src/auth.ts"
124
+ loadout handoff codex "write unit tests for auth" --bundle src/auth.ts src/types.ts --verify "tests pass" --verify-command npm --verify-args '["test"]'
108
125
  ```
109
126
 
110
- That is the whole thing. The first send creates the log and adds a short managed
111
- block to `CLAUDE.md` and `AGENTS.md` telling each agent to check its inbox at the
112
- start of a session. Only the text between the `loadout:handoff` markers is
113
- managed; the rest of your file is left alone.
127
+ Bundles snapshot exact, secret-redacted text (50 KiB total). Verification runs
128
+ only with `--done --run-verification`, without a shell; failures stay pending. The first send adds
129
+ managed inbox blocks to `CLAUDE.md` and `AGENTS.md`. Treat bundles as untrusted
130
+ project data, review before committing, and never include credential files.
114
131
 
115
132
  ```bash
116
133
  loadout handoff codex # what is waiting for codex
@@ -118,6 +135,28 @@ loadout handoff # everything pending, both directions
118
135
  loadout handoff --done 4f2a1c
119
136
  ```
120
137
 
138
+ ### Make Claude Code and Codex coordinate live (beta)
139
+
140
+ Live coordination adds file ownership, versioned contracts, decisions, and
141
+ acknowledgements over a shared project event stream — not a merged context
142
+ window. See the [live coordination guide](./docs/LIVE_COLLABORATION.md).
143
+
144
+ ```bash
145
+ loadout coord start --agents claude-code,codex # preview ownership
146
+ loadout coord start --agents claude-code,codex --yes # apply it
147
+ loadout coord detect # shared interfaces
148
+ loadout handoff codex src/auth.ts --template write-tests
149
+ loadout coord discuss start "REST or GraphQL?" --agents claude-code,codex --rounds 2 --max-turns 5
150
+ loadout coord discuss implement <thread-id> # preview linked tasks
151
+ ```
152
+
153
+ Contract publication and bounded design discussion implementation require a second `--yes`
154
+ approval. Exact supported declarations are marked current or stale; ambiguous
155
+ ones require manual review. The optional MCP server and provider bridge deliver
156
+ events at safe turn boundaries, never during an active turn. The
157
+ [coordination guide](./docs/LIVE_COLLABORATION.md) covers templates, Git-author
158
+ mappings, the local dashboard, limitations, and the complete workflow.
159
+
121
160
  ## How it works
122
161
 
123
162
  **Choose -> Inspect -> Preview -> Apply -> Undo**
@@ -148,11 +187,10 @@ Loadout installed 4 repositories for 3 agent(s). Snapshot: <snapshot-id>
148
187
  $ loadout rollback
149
188
  Restored snapshot <snapshot-id>
150
189
 
151
- $ loadout route design the authentication system
152
- Task: design the authentication system
153
-
154
- Bucket: hard — architecture, security, migrations, tricky debugging, risky review
155
- Use: Claude Opus 5 ($5/$25 per M)
190
+ $ loadout handoff codex "write tests for the auth module" --context "zod schemas exist"
191
+ created .handoff/
192
+ told codex to check its inbox
193
+ Sent to codex: write tests for the auth module
156
194
 
157
195
  $ loadout doctor
158
196
  loadout doctor — HEALTHY
@@ -180,11 +218,15 @@ coding agents without making you rebuild the setup for every agent and every pro
180
218
  Most extension tools begin with a repo you already know. Loadout begins one step
181
219
  earlier: **what is actually worth knowing?** It stays with you after installation.
182
220
 
221
+ Some tools distribute agent configuration. Others share memory or coordinate
222
+ running agents. Loadout connects the whole lifecycle: discover and inspect what is
223
+ worth using, activate it reversibly across agents, then hand work off or coordinate
224
+ structured project facts when Claude Code and Codex work together.
225
+
183
226
  Everything on this page is enforced. `docs/evidence/readme-claims.json` records
184
227
  each material claim with the code or command that proves it, and CI fails the
185
228
  build when the README and the implementation disagree — including the pinned
186
- version in the install line above. A README that cannot drift is a strange thing
187
- to build, and it is the reason the rest of this page is worth believing.
229
+ version in the install line above.
188
230
 
189
231
  Loadout watches a much wider catalog than it activates. You can keep thousands of
190
232
  technically screened skill copies in the disabled Maximum library, discover new projects as
@@ -204,84 +246,26 @@ Loadout is local, open source, and preview-first. It does not need an LLM API ke
204
246
  to manage skills. MCP servers and executable tools stay behind their own explicit
205
247
  setup and permission steps.
206
248
 
207
- ### Demo
208
-
209
- <p align="center">
210
- <a href="https://www.youtube.com/watch?v=opNqJKX7xMw">
211
- <img src="https://img.youtube.com/vi/opNqJKX7xMw/maxresdefault.jpg" alt="Watch the 72-second Loadout demo" width="880">
212
- </a>
213
- </p>
214
-
215
- **[Watch the 72-second Loadout demo on YouTube](https://www.youtube.com/watch?v=opNqJKX7xMw).**
216
- It shows the real CLI product, including profiles, project-aware selection,
217
- discovery, explicit integrations, and snapshot-backed rollback. The exact
218
- [recording and voiceover script](./docs/DEMO_SCRIPT.md) is public.
219
-
220
- The [end-to-end acceptance guide](./docs/USER_TEST_GUIDE.md) contains the commands
221
- you can run yourself.
222
-
223
249
  ## Stable workflow
224
250
 
225
251
  ### Stable: install the essentials and start building
226
252
 
227
253
  Stable is the recommended daily driver: **30 selected skill directories from four
228
- pinned public sources**, installed into each agent you choose. It covers planning,
229
- implementation, debugging, testing, documentation, code review, frontend work,
230
- performance, Git, shipping, and more without turning every discovered skill on.
231
-
232
- | Included source | What Stable takes from it | GitHub |
233
- | ---------------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
234
- | [Superpowers](https://github.com/obra/superpowers) | Planning, execution, testing, review, verification | [![GitHub stars](https://img.shields.io/github/stars/obra/superpowers?style=flat&label=stars)](https://github.com/obra/superpowers) |
235
- | [Context7](https://github.com/upstash/context7) | Current documentation and MCP workflows | [![GitHub stars](https://img.shields.io/github/stars/upstash/context7?style=flat&label=stars)](https://github.com/upstash/context7) |
236
- | [Addy Osmani Agent Skills](https://github.com/addyosmani/agent-skills) | Engineering, frontend, debugging, performance, docs, shipping | [![GitHub stars](https://img.shields.io/github/stars/addyosmani/agent-skills?style=flat&label=stars)](https://github.com/addyosmani/agent-skills) |
237
- | [Agent Skills Marketplace](https://github.com/wshobson/agents) | Architecture, review, error handling, JavaScript, Python | [![GitHub stars](https://img.shields.io/github/stars/wshobson/agents?style=flat&label=stars)](https://github.com/wshobson/agents) |
238
-
239
- Every row links directly to the upstream project. Loadout does not claim ownership
240
- or endorsement; it pins, credits, screens, and selects from their public work.
254
+ pinned public sources**, installed into each agent you choose.
241
255
 
242
256
  ```bash
243
- # Preview for detected agents
244
257
  loadout setup --mode stable
245
-
246
- # Recompute from current state and apply after reviewing the preview
247
258
  loadout setup --mode stable --yes
248
-
249
- # Inspect managed state, then undo the install if needed
250
259
  loadout status
251
260
  loadout scan
252
261
  loadout rollback
253
262
  ```
254
263
 
255
264
  Stable is Loadout's strongest general starting point, not a claim that one setup is
256
- best for every person or project. Run `loadout profiles stable --json` when you want
257
- the machine-readable selection.
258
-
259
- ## Manage skills you already have
260
-
261
- Already have skills? Loadout can compare them with exact catalog copies and manage
262
- the ones it can identify confidently:
263
-
264
- ```bash
265
- # Read-only inventory and source/update comparison
266
- loadout scan
267
- loadout reconcile --refresh
268
-
269
- # Record ownership only for exact byte-for-byte matches; files are not rewritten
270
- loadout reconcile --yes
271
-
272
- # Preview old copies that have one unambiguous reviewed source
273
- loadout reconcile --replace-outdated
274
- ```
275
-
276
- Unknown or ambiguous copies stay untouched. Replacing an old copy is a separate,
277
- previewed transaction with its own rollback snapshot. Managed copies can then be
278
- checked by `loadout update` without moving them to a different agent path.
265
+ best for every person or project.
279
266
 
280
267
  ## Profiles
281
268
 
282
- Loadout is opinionated when you want it to be and precise when you do not. The
283
- modes differ in one thing: how much of the reviewed catalog they install.
284
-
285
269
  | Mode | Sources | Skills | Active by default |
286
270
  | --------- | --------------------- | ------ | -------------------------------- |
287
271
  | `stable` | 4 | 30 | yes — recommended starting point |
@@ -289,150 +273,23 @@ modes differ in one thing: how much of the reviewed catalog they install.
289
273
  | `maximum` | all reviewed | all | **no — downloaded but disabled** |
290
274
  | `custom` | your `--package` list | varies | yes |
291
275
 
292
- **Maximum is the one worth understanding.** It downloads the entire reviewed
293
- library and leaves every skill _disabled_. Nothing reaches an agent prompt until
294
- a project activates what it needs:
276
+ **Maximum** downloads the entire reviewed library and leaves every skill _disabled_.
277
+ Nothing reaches an agent prompt until a project activates what it needs.
295
278
 
296
- ```bash
297
- loadout setup --mode maximum --yes
298
- cd ~/code/my-app
299
- loadout optimize --project . # scans the repo, proposes an active set
300
- loadout activate # enable just those here
301
- ```
302
-
303
- That trade is deliberate: disk is cheap and context is not. A large disabled
304
- library plus a small active set beats installing everything into every prompt.
305
-
306
- ### Power: a larger cross-project toolkit
307
-
308
- Power draws a skill-level allowlist from eight major collections. The prepared set
309
- is deduplicated and invalid units are quarantined, so the final count can be lower
310
- than the raw allowlist. In current acceptance testing it prepared about 50 active
311
- skills per agent.
312
-
313
- | Included source | Focus | GitHub |
314
- | ------------------------------------------------------------------------ | --------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
315
- | [Anthropic Skills](https://github.com/anthropics/skills) | Documents, frontend, MCP building, web testing | [![GitHub stars](https://img.shields.io/github/stars/anthropics/skills?style=flat&label=stars)](https://github.com/anthropics/skills) |
316
- | [OpenAI Skills](https://github.com/openai/skills) | CLI, docs, browser work, images, security | [![GitHub stars](https://img.shields.io/github/stars/openai/skills?style=flat&label=stars)](https://github.com/openai/skills) |
317
- | [Vercel Agent Skills](https://github.com/vercel-labs/agent-skills) | React, web design, composition, deployment | [![GitHub stars](https://img.shields.io/github/stars/vercel-labs/agent-skills?style=flat&label=stars)](https://github.com/vercel-labs/agent-skills) |
318
- | [Superpowers](https://github.com/obra/superpowers) | Planning, debugging, testing, collaboration | [![GitHub stars](https://img.shields.io/github/stars/obra/superpowers?style=flat&label=stars)](https://github.com/obra/superpowers) |
319
- | [UI UX Pro Max](https://github.com/nextlevelbuilder/ui-ux-pro-max-skill) | UI systems, slides, styling, product design | [![GitHub stars](https://img.shields.io/github/stars/nextlevelbuilder/ui-ux-pro-max-skill?style=flat&label=stars)](https://github.com/nextlevelbuilder/ui-ux-pro-max-skill) |
320
- | [Context7](https://github.com/upstash/context7) | Current documentation and MCP workflows | [![GitHub stars](https://img.shields.io/github/stars/upstash/context7?style=flat&label=stars)](https://github.com/upstash/context7) |
321
- | [Agent Skills Marketplace](https://github.com/wshobson/agents) | Architecture, testing, APIs, TypeScript, Python | [![GitHub stars](https://img.shields.io/github/stars/wshobson/agents?style=flat&label=stars)](https://github.com/wshobson/agents) |
322
- | [Awesome Copilot](https://github.com/github/awesome-copilot) | Codebase knowledge, plans, browser and security workflows | [![GitHub stars](https://img.shields.io/github/stars/github/awesome-copilot?style=flat&label=stars)](https://github.com/github/awesome-copilot) |
323
-
324
- ```bash
325
- loadout setup --mode power
326
- ```
327
-
328
- ### Maximum Library: download broadly, activate intelligently
329
-
330
- Maximum is for explorers. It downloads every non-archived, technically screened
331
- skill component in the catalog into Loadout's **disabled local library**. Disabled
332
- means cached and available, not injected into agent context. Then let the current
333
- project choose a focused active set:
334
-
335
- ```bash
336
- loadout setup --mode maximum
337
- loadout recommend --project .
338
- loadout optimize --project . --limit 30
339
- loadout optimize --project . --limit 30 --yes
340
- ```
341
-
342
- This is the difference between “install everything” and “have everything ready.”
343
- The first overloads agents; the second gives you a large library with a small,
344
- relevant active loadout.
345
-
346
- ### Custom: take exact control
347
-
348
- Use `setup` when the listed packages should become the complete managed profile for
349
- the selected agents. Packages from the previous managed profile that are not listed
350
- will be retired, and the preview names every retirement:
351
-
352
- ```bash
353
- loadout setup --mode custom --package superpowers --package context7
354
- ```
355
-
356
- Use `install` when you only want to add a package without replacing the current
357
- managed profile:
358
-
359
- ```bash
360
-
361
- # Install the reviewed Humanizer writing skill
362
- loadout install --mode custom --package humanizer
363
-
364
- # Install the reviewed Obsidian skills for specific agents
365
- loadout install --mode custom --package obsidian-skills --agents claude-code,cursor
366
- ```
367
-
368
- Run `loadout profiles` to compare every mode. MCP servers always use a separate
369
- approval step. Obsidian skills are also proposed automatically when `recommend` or
370
- `optimize` detects an Obsidian vault; they are not added to the universal Stable set.
371
-
372
- ## MCP integrations
373
-
374
- Profiles never start MCP servers silently. First list the available recipes and see
375
- which ones need credentials:
376
-
377
- ```bash
378
- loadout mcp-recipe
379
- loadout mcp-recipe --credential-free
380
- ```
381
-
382
- Preview and configure one for the host you use:
383
-
384
- ```bash
385
- loadout mcp-recipe playwright --agent claude-code
386
- loadout mcp-recipe playwright --agent claude-code --yes
387
- loadout mcp-recipe playwright --agent claude-code --verify
388
- ```
389
-
390
- Configuration alone does not start the server. Test a real connection separately
391
- with `--connect --approve-risk`. Loadout can reference credentials from environment
392
- variables or the OS keychain without printing their values.
393
-
394
- ## Optional runtime tools
395
-
396
- [Graphify](https://github.com/Graphify-Labs/graphify) is an optional codebase graph
397
- tool. It installs both a command and an agent skill, so Loadout keeps it separate from
398
- the normal profiles. It does not require an LLM API key:
399
-
400
- ```bash
401
- loadout tool graphify
402
- loadout tool graphify --yes --approve-risk
403
- loadout tool graphify --remove --yes --approve-risk
404
- ```
405
-
406
- Executable tools remain an explicit choice instead of hiding inside a profile.
279
+ For detailed profile tables, source lists, and custom configuration, see the
280
+ **[full reference](./docs/REFERENCE.md)**.
407
281
 
408
282
  ## Catalog and discovery
409
283
 
410
- ### GitHub moves every day. Your loadout should not stand still.
411
-
412
- The catalog is not a frozen “top 50” list. Loadout separates **discovery** from
284
+ The catalog is not a frozen list. Loadout separates **discovery** from
413
285
  **installation** so a viral repo can be noticed quickly without being trusted
414
- blindly. Candidates enter a review queue; catalog entries are pinned and inspected;
415
- only the bounded Stable policy gets the strongest automatic recommendation.
286
+ blindly.
416
287
 
417
288
  ```bash
418
- # Find candidates across configured discovery sources
419
289
  loadout discover --source all --queue
420
-
421
- # Inspect the queue and one candidate before promotion
422
290
  loadout review-queue
423
291
  loadout candidate inspect owner/repository
424
-
425
- # Check whether managed active or disabled-library sources changed
426
292
  loadout update
427
- loadout health --updates
428
- ```
429
-
430
- Daily checks are opt-in and read-only. They tell you what changed; they do not
431
- silently rewrite your agents:
432
-
433
- ```bash
434
- loadout autopilot --yes
435
- loadout autopilot --status
436
293
  ```
437
294
 
438
295
  <!-- loadout:catalog-coverage:start -->
@@ -443,39 +300,30 @@ The bundled catalog currently contains **53 credited public repositories** acros
443
300
 
444
301
  <!-- loadout:evidence-stages:start -->
445
302
 
446
- Catalog maturity: **53 sourced**, **53 technically inspected**, and **4 selected for Stable**. Independent human-review attestations are not yet published, so Loadout does not pretend static inspection proves usefulness. The pinned catalog remains usable today, and local outcomes can be recorded to improve later rankings. Definitions and promotion rules are in the [catalog policy](./docs/CATALOG_POLICY.md).
303
+ Catalog maturity: **53 sourced**, **53 technically inspected**, and **4 selected for Stable**. Independent human-review attestations and signed comparative benchmarks are not yet published, so Loadout does not pretend static inspection proves usefulness. The pinned catalog remains usable today, and local outcomes can be recorded to improve later rankings. Definitions and promotion rules are in the [catalog policy](./docs/CATALOG_POLICY.md).
447
304
 
448
305
  <!-- loadout:evidence-stages:end -->
449
306
 
450
- Loadout does not claim there is one universally “best” configuration. Recommendations are bounded, rule-based proposals; stars and discovery results are signals for review, not quality proof.
451
-
452
307
  <!-- loadout:daily-discovery:start -->
453
308
 
454
- **Discovery snapshot (generated 2026-09-02):** [239 repositories observed](./docs/DISCOVERED.md), including 221 uncataloged review candidates and 18 repositories already in the inspected catalog.
309
+ **Discovery snapshot (generated 2026-09-05):** [238 repositories observed](./docs/DISCOVERED.md), including 222 uncataloged review candidates and 16 repositories already in the inspected catalog.
455
310
  <!-- loadout:daily-discovery:end -->
456
311
 
457
- The checked-in discovery report proves only its dated snapshot, not the success of every scheduled run. Use `loadout discover --source all --queue`, `loadout review-queue`, and `loadout candidate inspect owner/repository` to inspect candidates before catalog promotion.
458
-
459
312
  ## Trust and limits
460
313
 
461
314
  - A pinned commit identifies source bytes; it does not prove safety, correct licensing, usefulness, or future compatibility.
462
315
  - Static inspection reports scripts, hooks, binaries, domains, credential references, and unsupported components. It is not a security audit.
463
- - No bundled source is called proven until human review and recorded local outcomes support it; static inspection alone never earns that label.
316
+ - No bundled source is called proven until human review and recorded local outcomes support it.
464
317
  - Project recommendations read bounded local metadata. The documented local flow does not upload project source.
465
- - Catalog fetches, discovery, update checks, and optional live checks use the network where stated.
466
- - MCP servers and executable tools have separate preview and approval paths because they can use credentials, start processes, or contact services.
318
+ - MCP servers and executable tools have separate preview and approval paths.
467
319
  - Shared manifests hold environment-variable or OS-keychain references, not secret values.
468
320
 
469
321
  <!-- loadout:current-limits:start -->
470
322
 
471
- - **4 catalog records** currently have `NOASSERTION` license status and need upstream-license review before a public release decision.
323
+ - All catalog records have identified SPDX licenses. See the [recorded license decisions](./docs/UPSTREAM_LICENSE_DECISIONS.md) for the source-by-source record.
472
324
 
473
325
  <!-- loadout:current-limits:end -->
474
326
 
475
- The four records have an explicit public-release decision rather than an assumed
476
- license. Read [Upstream license decisions](./docs/UPSTREAM_LICENSE_DECISIONS.md) for
477
- the source-by-source record and the boundary applied to Power, Maximum, and Custom.
478
-
479
327
  Read the [security policy](./SECURITY.md), [catalog policy](./docs/CATALOG_POLICY.md), and [credential and update policy](./docs/CREDENTIAL_AND_UPDATE_POLICY.md) before trusting third-party content.
480
328
 
481
329
  ## Agent support
@@ -494,50 +342,44 @@ Configured CI platforms describe a manually triggered workflow, not evidence tha
494
342
 
495
343
  <!-- loadout:support-summary:end -->
496
344
 
497
- Configured paths and disposable filesystem lifecycle tests do not prove that native applications recognize or execute installed skills. Use `loadout doctor --verbose` for the local component matrix.
498
-
499
345
  ## Command reference
500
346
 
501
- Start at the top and stop whenever Loadout does everything you need.
502
-
503
- | Priority | What it does | Command |
504
- | -------: | --------------------------------------------------------------- | ------------------------------------------------------------ |
505
- | 1 | Opens the beginner-friendly guided path | `loadout guide` |
506
- | 2 | Previews the recommended 30-skill daily setup | `loadout setup --mode stable` |
507
- | 3 | Previews the broader Power setup | `loadout setup --mode power` |
508
- | 4 | Downloads the broad screened library, disabled by default | `loadout setup --mode maximum` |
509
- | 5 | Shows Loadout-managed packages and active skills | `loadout status`; `loadout library` |
510
- | 6 | Inventories skills across detected agents without changing them | `loadout scan` |
511
- | 7 | Explains what fits the current repository | `loadout recommend --project .` |
512
- | 8 | Previews a bounded project-specific active set | `loadout optimize --project . --limit 30` |
513
- | 9 | Compares existing skills with reviewed catalog copies | `loadout reconcile --refresh` |
514
- | 10 | Checks managed active and disabled-library sources for changes | `loadout update` |
515
- | 11 | Finds newly launched or newly popular candidates | `loadout discover --source all --queue` |
516
- | 12 | Shows candidates waiting for deeper review | `loadout review-queue` |
517
- | 13 | Lists MCP recipes and credential needs | `loadout mcp-recipe`; `loadout mcp-recipe --credential-free` |
518
- | 14 | Previews an MCP configuration | `loadout mcp-recipe playwright --agent claude-code` |
519
- | 15 | Installs Loadout's own skill into your agents | `loadout skills install loadout-router --yes` |
520
- | 16 | Recommends the right model and agent for a task | `loadout route design the auth system` |
521
- | 17 | Shows the full model catalog with pricing | `loadout route --models`; `loadout route --cost` |
522
- | 18 | Sends a task to another agent via file-based handoff | `loadout handoff codex "write tests for auth"` |
523
- | 19 | Checks agent health, permissions, and setup | `loadout doctor`; `loadout doctor --verbose` |
524
- | 20 | Lists and installs isolated runtime tools such as Graphify | `loadout tool`; `loadout tool graphify` |
525
- | 21 | Lists snapshots or restores the latest managed change | `loadout rollback --list`; `loadout rollback` |
526
- | 22 | Previews removal of one managed package | `loadout remove <package-id>` |
527
- | 23 | Previews complete removal of Loadout-managed state | `loadout uninstall` |
528
- | 24 | Enables read-only daily discovery and update checks | `loadout autopilot --yes` |
529
- | 25 | Shows the complete CLI | `loadout --help`; `loadout advanced` |
530
-
531
- Most mutating commands are dry runs first. After reading the preview, add `--yes` to
532
- apply. Commands with executable or connection risk require the additional approval
533
- shown in their output.
534
-
535
- ## Built with Claude
536
-
537
- Loadout was designed and built by [Viraj Mishra](https://github.com/VirajMishra1) with Claude Code.
538
-
539
- Loadout itself does **not** call any LLM API and does not require an LLM API key
540
- to manage skills. Claude helped build the tool; it is not a hidden runtime dependency.
347
+ | What it does | Command |
348
+ | --------------------------------------- | ---------------------------------------------------------- |
349
+ | Beginner-friendly guided path | `loadout guide` |
350
+ | Preview the 30-skill Stable setup | `loadout setup --mode stable` |
351
+ | Apply after reviewing the preview | `loadout setup --mode stable --yes` |
352
+ | Show managed packages and active skills | `loadout status` · `loadout library` |
353
+ | What fits this repository | `loadout recommend --project .` |
354
+ | Project-specific active set | `loadout optimize --project . --limit 30` |
355
+ | Scan existing skills across agents | `loadout scan` |
356
+ | Check for source updates | `loadout update` |
357
+ | Find newly launched candidates | `loadout discover --source all --queue` |
358
+ | Install Loadout's own skill | `loadout skills install loadout-handoff --yes` |
359
+ | Send a task to another agent | `loadout handoff codex "write tests"` |
360
+ | Use a reusable handoff template | `loadout handoff codex src/auth.ts --template write-tests` |
361
+ | Preview two-agent ownership setup | `loadout coord start --agents claude-code,codex` |
362
+ | Detect shared contract candidates | `loadout coord detect` |
363
+ | Inspect shared agent state | `loadout coord snapshot codex` |
364
+ | Detect live provider runtimes | `loadout coord agents detect` |
365
+ | Debate one design with both providers | `loadout coord discuss start "<topic>" ...` |
366
+ | Turn a decision into linked tasks | `loadout coord discuss implement <thread-id>` |
367
+ | Start the coordination MCP server | `loadout serve` |
368
+ | Agent health check | `loadout doctor` |
369
+ | Rollback the latest managed change | `loadout rollback` |
370
+ | Preview complete removal | `loadout uninstall` |
371
+ | Full CLI reference | `loadout --help` · `loadout advanced` |
372
+
373
+ Most mutating commands are dry runs first. Add `--yes` to apply.
374
+
375
+ ## Built with Claude and Codex
376
+
377
+ Loadout was designed and built by [Viraj Mishra](https://github.com/VirajMishra1) with Claude Code and Codex.
378
+
379
+ Loadout's core skill management does **not** call an LLM API or require an LLM API
380
+ key. The opt-in provider bridge and design room do invoke your configured
381
+ Claude/Codex sessions and spend their quota; neither is a hidden requirement for
382
+ discovering, installing, or rolling back extensions.
541
383
 
542
384
  ## Development
543
385
 
@@ -549,28 +391,26 @@ npm run verify:full
549
391
 
550
392
  <!-- loadout:verification-summary:start -->
551
393
 
552
- `verify` invokes `format:check`, `lint`, `typecheck`, `check:evidence`, `test`, `test:e2e:cli`, `test:e2e:readme`, `test:package`, `test:performance` in that order. `npm run verify:full` is an alias for the same complete CLI release gate.
394
+ `verify` invokes `format:check`, `lint`, `typecheck`, `check:audit`, `check:evidence`, `test`, `test:e2e:cli`, `test:e2e:readme`, `test:e2e:coordination`, `test:package`, `test:performance` in that order. `verify:full` runs that gate and the coverage suite.
553
395
 
554
396
  <!-- loadout:verification-summary:end -->
555
397
 
556
- The repository's mixed README product-flow test uses an isolated build, disposable state, an offline fixture, direct core calls, and CLI subprocesses. It does not prove live-network availability or behavior inside native agent applications. The [testing guide](./docs/TESTING.md) documents the exact checks and their boundaries.
398
+ The [testing guide](./docs/TESTING.md) documents the exact checks and their boundaries.
557
399
 
558
400
  ## Documentation
559
401
 
402
+ - [Full reference (profiles, MCP, discovery, tools)](./docs/REFERENCE.md)
560
403
  - [Catalog and upstream credits](./docs/CATALOG.md)
561
404
  - [Catalog evidence policy](./docs/CATALOG_POLICY.md)
562
405
  - [Feature and evidence matrix](./docs/FEATURE_TEST_MATRIX.md)
563
406
  - [Testing contract](./docs/TESTING.md)
564
- - [User test and troubleshooting guide](./docs/USER_TEST_GUIDE.md)
565
- - [Daily discovery snapshot](./docs/DISCOVERED.md)
566
- - [Candidate inspection and promotion](./docs/CANDIDATE_INTELLIGENCE.md)
567
- - [Credential and update policy](./docs/CREDENTIAL_AND_UPDATE_POLICY.md)
568
- - [Upstream license decisions](./docs/UPSTREAM_LICENSE_DECISIONS.md)
407
+ - [User test guide](./docs/USER_TEST_GUIDE.md)
408
+ - [Live Codex ↔ Claude collaboration design](./docs/LIVE_COLLABORATION.md)
569
409
  - [Changelog](./CHANGELOG.md)
570
410
 
571
411
  ## Contributing, security, and attribution
572
412
 
573
- Keep changes scoped, add regression coverage for behavior changes, and run `npm run verify:full`. Report vulnerabilities through [SECURITY.md](./SECURITY.md), without credentials, private source, or unredacted state. General bugs and proposals belong in the [issue tracker](https://github.com/VirajMishra1/loadout/issues).
413
+ See [CONTRIBUTING.md](./CONTRIBUTING.md) · [Code of Conduct](./CODE_OF_CONDUCT.md) · Report vulnerabilities through [SECURITY.md](./SECURITY.md), without credentials, private source, or unredacted state. General bugs and proposals belong in the [issue tracker](https://github.com/VirajMishra1/loadout/issues).
574
414
 
575
415
  The catalog contains 53 credited public repositories. Inclusion records discovery and attribution; it does not transfer ownership, imply endorsement, or relicense upstream work.
576
416