loadout-ai 0.5.7 → 0.5.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/MASTER_PLAN.md +22 -22
  3. package/README.md +29 -18
  4. package/catalog/discovered.json +56105 -9991
  5. package/catalog/packages.json +2 -1
  6. package/dist/src/cli.js +26 -2978
  7. package/dist/src/commands/agents.js +168 -0
  8. package/dist/src/commands/catalog.js +578 -0
  9. package/dist/src/commands/health.js +98 -0
  10. package/dist/src/commands/inventory.js +416 -0
  11. package/dist/src/commands/lifecycle.js +411 -0
  12. package/dist/src/commands/mcp.js +424 -0
  13. package/dist/src/commands/setup.js +67 -0
  14. package/dist/src/commands/sharing.js +358 -0
  15. package/dist/src/commands/support.js +226 -0
  16. package/dist/src/core/active-limit.js +2 -0
  17. package/dist/src/core/active-policy.js +2 -1
  18. package/dist/src/core/catalog-install.js +57 -13
  19. package/dist/src/core/catalog.js +2 -96
  20. package/dist/src/core/cli-guide.js +39 -34
  21. package/dist/src/core/completion.js +2 -20
  22. package/dist/src/core/github.js +3 -2
  23. package/dist/src/core/health-score-evidence.js +2 -2
  24. package/dist/src/core/health.js +83 -0
  25. package/dist/src/core/install.js +8 -3
  26. package/dist/src/core/loadout-card.js +14 -2
  27. package/dist/src/core/skill-inventory.js +3 -3
  28. package/dist/src/core/skills.js +6 -7
  29. package/dist/src/core/source.js +10 -3
  30. package/dist/src/core/upgrade.js +10 -9
  31. package/docs/ACTIVE_SET.md +1 -1
  32. package/docs/ACTIVE_SET_POLICY.md +1 -1
  33. package/docs/DEMO_SCRIPT.md +23 -22
  34. package/docs/DISCOVERED.md +249 -253
  35. package/docs/RELEASE_REVIEW.md +28 -143
  36. package/docs/SUBMISSION_COPY.md +90 -0
  37. package/docs/UPSTREAM_LICENSE_DECISIONS.md +32 -0
  38. package/docs/USER_TEST_GUIDE.md +1 -1
  39. package/docs/evidence/readme-claims.json +2 -14
  40. package/package.json +4 -3
  41. package/dist/src/core/benchmark-campaign.js +0 -496
  42. package/dist/src/core/benchmark-evidence.js +0 -458
  43. package/dist/src/core/benchmark-fixtures.js +0 -1157
  44. package/dist/src/core/benchmark-runner.js +0 -301
  45. package/dist/src/core/benchmark-trust.js +0 -795
  46. package/dist/src/core/catalog-release.js +0 -287
  47. package/dist/src/core/compatibility-intelligence.js +0 -465
  48. package/dist/src/core/ecosystem-import.js +0 -1072
  49. package/dist/src/core/head-to-head.js +0 -437
  50. package/dist/src/core/intelligence-feed-build.js +0 -59
  51. package/dist/src/core/intelligence-feed.js +0 -353
  52. package/dist/src/core/registry-api.js +0 -97
  53. package/dist/src/core/release-claims.js +0 -175
  54. package/dist/src/core/signing.js +0 -115
package/CHANGELOG.md CHANGED
@@ -2,6 +2,30 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 0.5.9 - 2026-07-21
6
+
7
+ ### Fixed
8
+
9
+ - Preserve active Stable skills when preparing Maximum Library by reserving their
10
+ managed targets before ordinary overlap deferral, while retaining fail-closed
11
+ commit, quarantine, and missing-source validation.
12
+ - Run the canonical `npm run verify` release gate on ordinary pushes and pull
13
+ requests so CI cannot silently omit evidence, README-flow, or package checks.
14
+
15
+ ### Changed
16
+
17
+ - Use one shared 30-skill recommended active-set limit in planning, inventory,
18
+ upgrade guidance, CLI defaults, and public workflow documentation.
19
+ - Clearly archive superseded dashboard-era release notes and keep the public launch
20
+ checklist aligned with completed demo work and the current CLI-only product.
21
+
22
+ ## 0.5.8 - 2026-07-21
23
+
24
+ ### Fixed
25
+
26
+ - Make `install --mode custom` genuinely additive: it now keeps existing managed
27
+ skills active and does not replace the saved profile.
28
+
5
29
  ## 0.5.7 - 2026-07-21
6
30
 
7
31
  ### Changed
package/MASTER_PLAN.md CHANGED
@@ -13,7 +13,7 @@ history** is evidence of how the product was built, not unfinished launch scope.
13
13
 
14
14
  ### Product complete
15
15
 
16
- - [x] Publish the CLI as `loadout-ai@0.5.6`; keep the product usable without cloning
16
+ - [x] Publish the CLI as `loadout-ai`; keep the product usable without cloning
17
17
  this repository or providing an OpenAI/Anthropic API key.
18
18
  - [x] Ship Stable, Power, Maximum, and Custom profiles with preview-first apply,
19
19
  snapshots, drift protection, explicit rollback, removal, and complete uninstall.
@@ -35,27 +35,27 @@ history** is evidence of how the product was built, not unfinished launch scope.
35
35
 
36
36
  ### Final founder acceptance
37
37
 
38
- - [ ] Install the exact public npm release in a fresh terminal and run the final short
39
- path: Humanizer Custom preview/apply/scan/rollback, read-only update/discovery,
40
- complete uninstall, and clean reinstall. Stable, Power, Maximum, project
41
- optimization, Graphify, and both-host Playwright MCP lifecycles have already
42
- been exercised on the founder's real profiles.
43
- - [ ] Decide whether to rename the GitHub repository from `loadout` to `loadout-ai`.
44
- If approved, rename it before recording and update canonical links; keep the
45
- product name **Loadout** and npm package/CLI identity `loadout-ai` / `loadout`.
46
- - [ ] Make the six unresolved upstream-license decisions explicit. Do not silently
47
- convert `NOASSERTION` into a license claim because a repository is popular.
38
+ - [x] Install the exact public npm release, verify `loadout --version`, and scan the
39
+ founder's restored real profiles. Stable, Power, Maximum, project optimization,
40
+ Humanizer, Graphify, both-host Playwright MCP lifecycles, rollback, complete
41
+ uninstall, and clean reinstall were exercised during founder acceptance.
42
+ - [x] Keep the GitHub repository name `loadout`. The product remains **Loadout** and
43
+ the npm package/CLI identities remain `loadout-ai` / `loadout`.
44
+ - [x] Record explicit decisions for all six `NOASSERTION` sources in
45
+ `docs/UPSTREAM_LICENSE_DECISIONS.md` without inventing a license claim.
48
46
 
49
47
  ### Submission work
50
48
 
51
- - [ ] Record the real CLI demo using `docs/DEMO_SCRIPT.md`; keep it under three
49
+ - [x] Record the real CLI demo using `docs/DEMO_SCRIPT.md`; keep it under three
52
50
  minutes, include a voiceover, upload it publicly to YouTube, and verify the URL.
53
- - [ ] Replace the README demo placeholder with the final YouTube link.
54
- - [ ] In the voiceover, explain what Loadout does and how Codex and GPT-5.6 were used.
51
+ - [x] Replace the README demo placeholder with the final YouTube link.
52
+ - [x] In the voiceover, explain what Loadout does and how Codex and GPT-5.6 were used.
55
53
  - [ ] Run `/feedback` in Codex, copy the resulting session ID, and enter it in Devpost.
56
- - [ ] Confirm the repository URL is accessible to Devpost and OpenAI.
57
- - [ ] Confirm all team invitations are accepted, select **Developer Tools**, complete
58
- the edited Devpost description, and submit rather than leaving a draft.
54
+ - [x] Confirm the public repository URL is accessible to Devpost and OpenAI.
55
+ - [x] Confirm all team invitations are accepted. Both teammates are collaborators and
56
+ there are no pending repository invitations.
57
+ - [ ] Select **Developer Tools**, complete the edited Devpost description, and submit
58
+ rather than leaving a draft.
59
59
 
60
60
  ### Deliberately not part of this submission
61
61
 
@@ -72,12 +72,12 @@ These are not launch blockers and should not be rebuilt before submission:
72
72
  - Restoring GitHub-hosted Actions capacity before submission; the full gate can run
73
73
  locally, and the latest completed `main` CI is already passing.
74
74
 
75
- ## Archived current-status diary (historical, not active scope)
75
+ ## Archived implementation diary (historical, not active scope)
76
76
 
77
- This section preserves the chronological implementation and founder-testing record.
78
- Its unchecked boxes may describe older release numbers, superseded acceptance paths,
79
- external research, or intentionally deferred work. They are not active launch tasks;
80
- use the launch finish line above.
77
+ Everything below this heading is a frozen chronological implementation record. Its
78
+ dashboard references, old release numbers, unchecked boxes, and superseded acceptance
79
+ paths describe earlier product states; they are neither current capabilities nor
80
+ active launch tasks. Use only the launch finish line above for current status.
81
81
 
82
82
  ### Implemented product work
83
83
 
package/README.md CHANGED
@@ -34,7 +34,7 @@
34
34
  You need Node.js 20 or newer and Git.
35
35
 
36
36
  ```bash
37
- npm install --global loadout-ai@0.5.7
37
+ npm install --global loadout-ai@0.5.9
38
38
  loadout setup --mode stable
39
39
  ```
40
40
 
@@ -87,10 +87,10 @@ Useful skills, plugins, MCP servers, and settings arrive one experiment at a tim
87
87
  Soon it is hard to remember what is installed, where it came from, whether something
88
88
  better launched yesterday, or how to undo a change. The name comes from games, where
89
89
  your loadout is the set of tools you choose for the mission. This does the same for AI
90
- coding agentswithout making you rebuild the setup for every agent and every project.
90
+ coding agents without making you rebuild the setup for every agent and every project.
91
91
 
92
92
  Most extension tools begin with a repo you already know. Loadout begins one step
93
- earlier—**what is actually worth knowing?**—and stays with you after installation.
93
+ earlier: **what is actually worth knowing?** It stays with you after installation.
94
94
 
95
95
  Loadout watches a much wider catalog than it activates. You can keep thousands of
96
96
  technically screened skill copies in the disabled Maximum library, discover new projects as
@@ -112,17 +112,23 @@ their own explicit setup and permission steps.
112
112
 
113
113
  ### Demo
114
114
 
115
- **Demo video coming here.** The release walkthrough will show the real path—not a
116
- mock UI: Stable install, cross-agent inventory, project optimization, update and
117
- discovery checks, MCP setup, Graphify, rollback, and complete uninstall. The exact
118
- under-three-minute [recording and voiceover script](./docs/DEMO_SCRIPT.md) is public.
115
+ <p align="center">
116
+ <a href="https://www.youtube.com/watch?v=opNqJKX7xMw">
117
+ <img src="https://img.youtube.com/vi/opNqJKX7xMw/maxresdefault.jpg" alt="Watch the 72-second Loadout demo" width="880">
118
+ </a>
119
+ </p>
119
120
 
120
- For now, the [end-to-end acceptance guide](./docs/USER_TEST_GUIDE.md) contains the same
121
- commands you can run yourself.
121
+ **[Watch the 72-second Loadout demo on YouTube](https://www.youtube.com/watch?v=opNqJKX7xMw).**
122
+ It shows the real CLI product, including profiles, project-aware selection,
123
+ discovery, explicit integrations, and snapshot-backed rollback. The exact
124
+ [recording and voiceover script](./docs/DEMO_SCRIPT.md) is public.
125
+
126
+ The [end-to-end acceptance guide](./docs/USER_TEST_GUIDE.md) contains the commands
127
+ you can run yourself.
122
128
 
123
129
  ## Stable workflow
124
130
 
125
- ### Stable Boost install the essentials and start building
131
+ ### Stable Boost: install the essentials and start building
126
132
 
127
133
  Stable is the recommended daily driver: **30 selected skill directories from four
128
134
  pinned public sources**, installed into each agent you choose. It covers planning,
@@ -181,7 +187,7 @@ checked by `loadout update` without moving them to a different agent path.
181
187
 
182
188
  Loadout is opinionated when you want it to be and precise when you do not.
183
189
 
184
- ### Power Boost a larger cross-project toolkit
190
+ ### Power Boost: a larger cross-project toolkit
185
191
 
186
192
  Power draws a skill-level allowlist from eight major collections. The prepared set
187
193
  is deduplicated and invalid units are quarantined, so the final count can be lower
@@ -203,11 +209,11 @@ skills per agent.
203
209
  loadout setup --mode power
204
210
  ```
205
211
 
206
- ### Maximum Library download broadly, activate intelligently
212
+ ### Maximum Library: download broadly, activate intelligently
207
213
 
208
214
  Maximum is for explorers. It downloads every non-archived, technically screened
209
215
  skill component in the catalog into Loadout's **disabled local library**. Disabled
210
- means cached and availablenot injected into agent context. Then let the current
216
+ means cached and available, not injected into agent context. Then let the current
211
217
  project choose a focused active set:
212
218
 
213
219
  ```bash
@@ -221,7 +227,7 @@ This is the difference between “install everything” and “have everything r
221
227
  The first overloads agents; the second gives you a large library with a small,
222
228
  relevant active loadout.
223
229
 
224
- ### Custom take exact control
230
+ ### Custom: take exact control
225
231
 
226
232
  Use `setup` when the listed packages should become the complete managed profile for
227
233
  the selected agents. Packages from the previous managed profile that are not listed
@@ -324,7 +330,7 @@ The bundled catalog currently contains **53 credited public repositories** acros
324
330
 
325
331
  <!-- loadout:evidence-stages:start -->
326
332
 
327
- 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).
333
+ 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).
328
334
 
329
335
  <!-- loadout:evidence-stages:end -->
330
336
 
@@ -332,7 +338,7 @@ Loadout does not claim there is one universally “best” configuration. Recomm
332
338
 
333
339
  <!-- loadout:daily-discovery:start -->
334
340
 
335
- **Discovery snapshot (generated 2026-07-21):** [240 repositories observed](./docs/DISCOVERED.md), including 216 uncataloged review candidates and 24 repositories already in the inspected catalog.
341
+ **Discovery snapshot (generated 2026-08-27):** [236 repositories observed](./docs/DISCOVERED.md), including 217 uncataloged review candidates and 19 repositories already in the inspected catalog.
336
342
  <!-- loadout:daily-discovery:end -->
337
343
 
338
344
  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.
@@ -341,7 +347,7 @@ The checked-in discovery report proves only its dated snapshot, not the success
341
347
 
342
348
  - A pinned commit identifies source bytes; it does not prove safety, correct licensing, usefulness, or future compatibility.
343
349
  - Static inspection reports scripts, hooks, binaries, domains, credential references, and unsupported components. It is not a security audit.
344
- - No bundled source is called benchmarked until isolated real trials, signed evidence, and human approval exist.
350
+ - No bundled source is called proven until human review and recorded local outcomes support it; static inspection alone never earns that label.
345
351
  - Project recommendations read bounded local metadata. The documented local flow does not upload project source.
346
352
  - Catalog fetches, discovery, update checks, and optional live checks use the network where stated.
347
353
  - MCP servers and executable tools have separate preview and approval paths because they can use credentials, start processes, or contact services.
@@ -353,6 +359,10 @@ The checked-in discovery report proves only its dated snapshot, not the success
353
359
 
354
360
  <!-- loadout:current-limits:end -->
355
361
 
362
+ The six records have an explicit public-release decision rather than an assumed
363
+ license. Read [Upstream license decisions](./docs/UPSTREAM_LICENSE_DECISIONS.md) for
364
+ the source-by-source record and the boundary applied to Power, Maximum, and Custom.
365
+
356
366
  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.
357
367
 
358
368
  ## Agent support
@@ -431,7 +441,7 @@ without loading thousands of skills into every prompt.
431
441
  | Ecosystem research | Compared repositories, checked source layouts and licenses, and separated popularity from evidence | 53 pinned catalog sources plus a discovery snapshot watching 240 repositories |
432
442
  | Implementation | Wrote and refactored CLI commands, schemas, source fetchers, installers, active-set logic, and MCP configuration | The published `loadout-ai` package and the commands documented above |
433
443
  | Safety work | Looked for scripts, hooks, binaries, credential references, target collisions, stale previews, and external edits | Preview-first changes, quarantined skill units, explicit risk approval, drift protection, and rollback |
434
- | Testing | Generated adversarial cases, reproduced failures from real terminal sessions, and converted them into regression tests | 620 passing tests, CLI and README end-to-end flows, package smoke tests, and a 1,000-skill performance gate |
444
+ | Testing | Generated adversarial cases, reproduced failures from real terminal sessions, and converted them into regression tests | 632 passing tests, CLI and README end-to-end flows, package smoke tests, and a 1,000-skill performance gate |
435
445
  | Team integration | Audited teammate branches, compared them with `main`, prepared focused pull requests, and checked what was actually complete | One public history instead of three disconnected prototypes |
436
446
  | Release work | Verified npm contents, version behavior, GitHub metadata, documentation claims, and public CI | A public npm package, credited upstream catalog, release evidence, and a reproducible verification command |
437
447
 
@@ -495,6 +505,7 @@ The repository's mixed README product-flow test uses an isolated build, disposab
495
505
  - [Daily discovery snapshot](./docs/DISCOVERED.md)
496
506
  - [Candidate inspection and promotion](./docs/CANDIDATE_INTELLIGENCE.md)
497
507
  - [Credential and update policy](./docs/CREDENTIAL_AND_UPDATE_POLICY.md)
508
+ - [Upstream license decisions](./docs/UPSTREAM_LICENSE_DECISIONS.md)
498
509
  - [Changelog](./CHANGELOG.md)
499
510
 
500
511
  ## Contributing, security, and attribution