loadout-ai 0.5.8 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +17 -0
- package/MASTER_PLAN.md +9 -9
- package/README.md +84 -121
- package/catalog/discovered.json +59800 -10065
- package/catalog/packages.json +4 -3
- package/dist/src/cli.js +26 -2979
- package/dist/src/commands/agents.js +168 -0
- package/dist/src/commands/catalog.js +708 -0
- package/dist/src/commands/health.js +98 -0
- package/dist/src/commands/inventory.js +417 -0
- package/dist/src/commands/lifecycle.js +411 -0
- package/dist/src/commands/mcp.js +424 -0
- package/dist/src/commands/setup.js +67 -0
- package/dist/src/commands/sharing.js +358 -0
- package/dist/src/commands/support.js +246 -0
- package/dist/src/core/active-limit.js +2 -0
- package/dist/src/core/active-policy.js +2 -1
- package/dist/src/core/catalog-install.js +47 -10
- package/dist/src/core/catalog.js +15 -96
- package/dist/src/core/cli-guide.js +43 -37
- package/dist/src/core/completion.js +2 -20
- package/dist/src/core/doctor.js +73 -24
- package/dist/src/core/github.js +3 -2
- package/dist/src/core/handoff.js +161 -0
- package/dist/src/core/health-score-evidence.js +2 -2
- package/dist/src/core/health.js +83 -0
- package/dist/src/core/install.js +8 -3
- package/dist/src/core/loadout-card.js +14 -2
- package/dist/src/core/review-queue.js +7 -2
- package/dist/src/core/route.js +248 -0
- package/dist/src/core/skill-inventory.js +3 -3
- package/dist/src/core/skills.js +6 -7
- package/dist/src/core/source.js +10 -3
- package/dist/src/core/upgrade.js +10 -9
- package/docs/ACTIVE_SET.md +1 -1
- package/docs/ACTIVE_SET_POLICY.md +1 -1
- package/docs/CATALOG.md +2 -2
- package/docs/DEMO_SCRIPT.md +5 -5
- package/docs/DISCOVERED.md +250 -253
- package/docs/RELEASE_REVIEW.md +28 -143
- package/docs/SUBMISSION_COPY.md +4 -4
- package/docs/UPSTREAM_LICENSE_DECISIONS.md +19 -12
- package/docs/USER_TEST_GUIDE.md +1 -1
- package/docs/evidence/readme-claims.json +2 -14
- package/package.json +4 -3
- package/dist/src/core/benchmark-campaign.js +0 -496
- package/dist/src/core/benchmark-evidence.js +0 -458
- package/dist/src/core/benchmark-fixtures.js +0 -1157
- package/dist/src/core/benchmark-runner.js +0 -301
- package/dist/src/core/benchmark-trust.js +0 -795
- package/dist/src/core/catalog-release.js +0 -287
- package/dist/src/core/compatibility-intelligence.js +0 -465
- package/dist/src/core/ecosystem-import.js +0 -1072
- package/dist/src/core/head-to-head.js +0 -437
- package/dist/src/core/intelligence-feed-build.js +0 -59
- package/dist/src/core/intelligence-feed.js +0 -353
- package/dist/src/core/registry-api.js +0 -97
- package/dist/src/core/release-claims.js +0 -175
- package/dist/src/core/signing.js +0 -115
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,23 @@
|
|
|
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
|
+
|
|
5
22
|
## 0.5.8 - 2026-07-21
|
|
6
23
|
|
|
7
24
|
### Fixed
|
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
|
|
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.
|
|
@@ -46,10 +46,10 @@ history** is evidence of how the product was built, not unfinished launch scope.
|
|
|
46
46
|
|
|
47
47
|
### Submission work
|
|
48
48
|
|
|
49
|
-
- [
|
|
49
|
+
- [x] Record the real CLI demo using `docs/DEMO_SCRIPT.md`; keep it under three
|
|
50
50
|
minutes, include a voiceover, upload it publicly to YouTube, and verify the URL.
|
|
51
|
-
- [
|
|
52
|
-
- [
|
|
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.
|
|
53
53
|
- [ ] Run `/feedback` in Codex, copy the resulting session ID, and enter it in Devpost.
|
|
54
54
|
- [x] Confirm the public repository URL is accessible to Devpost and OpenAI.
|
|
55
55
|
- [x] Confirm all team invitations are accepted. Both teammates are collaborators and
|
|
@@ -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
|
|
75
|
+
## Archived implementation diary (historical, not active scope)
|
|
76
76
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
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
|
|
37
|
+
npm install --global loadout-ai
|
|
38
38
|
loadout setup --mode stable
|
|
39
39
|
```
|
|
40
40
|
|
|
@@ -54,23 +54,37 @@ Nothing changes until you approve it. If anything goes wrong, start with the
|
|
|
54
54
|
|
|
55
55
|
### Abridged terminal transcript
|
|
56
56
|
|
|
57
|
-
This is an explicitly abridged transcript from a disposable
|
|
57
|
+
This is an explicitly abridged transcript from a disposable Stable run. A literal `…` marks omitted fetch output; `<snapshot-id>` is a variable placeholder because snapshot IDs vary. Loadout auto-detects installed agents; `--agents` narrows the selection when needed.
|
|
58
58
|
|
|
59
59
|
```console
|
|
60
|
-
$ loadout setup --mode stable
|
|
60
|
+
$ loadout setup --mode stable
|
|
61
61
|
…
|
|
62
62
|
Loadout: Stable Boost
|
|
63
|
-
Detected agents: Codex
|
|
63
|
+
Detected agents: Claude Code, Cursor, Codex
|
|
64
64
|
Catalog selection: 4 repositories
|
|
65
65
|
Ready to install: 4 skill repositories (30 agent skill directories)
|
|
66
66
|
Preview complete; nothing was changed. Re-run with --yes to install this exact screened plan.
|
|
67
67
|
|
|
68
|
-
$ loadout setup --mode stable --
|
|
68
|
+
$ loadout setup --mode stable --yes
|
|
69
69
|
…
|
|
70
|
-
Loadout installed 4 repositories for
|
|
70
|
+
Loadout installed 4 repositories for 3 agent(s). Snapshot: <snapshot-id>
|
|
71
71
|
|
|
72
72
|
$ loadout rollback
|
|
73
73
|
Restored snapshot <snapshot-id>
|
|
74
|
+
|
|
75
|
+
$ loadout route design the authentication system
|
|
76
|
+
Phase: plan
|
|
77
|
+
Tier: Frontier (deep reasoning)
|
|
78
|
+
Models: Claude Opus 5 ($5/$25)
|
|
79
|
+
GPT-5.6 Sol ($5/$30)
|
|
80
|
+
Agents: claude-code
|
|
81
|
+
Why: Architecture and decomposition need deep reasoning to avoid costly rework
|
|
82
|
+
|
|
83
|
+
$ loadout doctor
|
|
84
|
+
loadout doctor — HEALTHY
|
|
85
|
+
Platform: darwin
|
|
86
|
+
State: ~/.loadout ✓ writable
|
|
87
|
+
Agents: 3 detected, 9 available
|
|
74
88
|
```
|
|
75
89
|
|
|
76
90
|
The final preview sentence above is captured CLI wording. A later `--yes` invocation recomputes the plan from pinned sources and current agent and filesystem state; it does not persist or prove identity with the earlier preview.
|
|
@@ -106,19 +120,25 @@ everything into every prompt.
|
|
|
106
120
|
| Hope updates do not break anything | Preview updates and protect every managed change with a snapshot |
|
|
107
121
|
| Manually remember what was changed | Scan, reconcile, remove, roll back, or completely uninstall |
|
|
108
122
|
|
|
109
|
-
Loadout is local, open source, and preview-first. It does not need an
|
|
110
|
-
|
|
111
|
-
|
|
123
|
+
Loadout is local, open source, and preview-first. It does not need an LLM API key
|
|
124
|
+
to manage skills. MCP servers and executable tools stay behind their own explicit
|
|
125
|
+
setup and permission steps.
|
|
112
126
|
|
|
113
127
|
### Demo
|
|
114
128
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
129
|
+
<p align="center">
|
|
130
|
+
<a href="https://www.youtube.com/watch?v=opNqJKX7xMw">
|
|
131
|
+
<img src="https://img.youtube.com/vi/opNqJKX7xMw/maxresdefault.jpg" alt="Watch the 72-second Loadout demo" width="880">
|
|
132
|
+
</a>
|
|
133
|
+
</p>
|
|
134
|
+
|
|
135
|
+
**[Watch the 72-second Loadout demo on YouTube](https://www.youtube.com/watch?v=opNqJKX7xMw).**
|
|
136
|
+
It shows the real CLI product, including profiles, project-aware selection,
|
|
137
|
+
discovery, explicit integrations, and snapshot-backed rollback. The exact
|
|
138
|
+
[recording and voiceover script](./docs/DEMO_SCRIPT.md) is public.
|
|
119
139
|
|
|
120
|
-
|
|
121
|
-
|
|
140
|
+
The [end-to-end acceptance guide](./docs/USER_TEST_GUIDE.md) contains the commands
|
|
141
|
+
you can run yourself.
|
|
122
142
|
|
|
123
143
|
## Stable workflow
|
|
124
144
|
|
|
@@ -212,9 +232,9 @@ project choose a focused active set:
|
|
|
212
232
|
|
|
213
233
|
```bash
|
|
214
234
|
loadout setup --mode maximum
|
|
215
|
-
loadout recommend --project .
|
|
216
|
-
loadout optimize --project . --
|
|
217
|
-
loadout optimize --project . --
|
|
235
|
+
loadout recommend --project .
|
|
236
|
+
loadout optimize --project . --limit 30
|
|
237
|
+
loadout optimize --project . --limit 30 --yes
|
|
218
238
|
```
|
|
219
239
|
|
|
220
240
|
This is the difference between “install everything” and “have everything ready.”
|
|
@@ -236,11 +256,11 @@ managed profile:
|
|
|
236
256
|
|
|
237
257
|
```bash
|
|
238
258
|
|
|
239
|
-
# Install the reviewed Humanizer writing skill
|
|
240
|
-
loadout install --mode custom --package humanizer
|
|
259
|
+
# Install the reviewed Humanizer writing skill
|
|
260
|
+
loadout install --mode custom --package humanizer
|
|
241
261
|
|
|
242
|
-
# Install the reviewed Obsidian skills
|
|
243
|
-
loadout install --mode custom --package obsidian-skills --agents
|
|
262
|
+
# Install the reviewed Obsidian skills for specific agents
|
|
263
|
+
loadout install --mode custom --package obsidian-skills --agents claude-code,cursor
|
|
244
264
|
```
|
|
245
265
|
|
|
246
266
|
Run `loadout profiles` to compare every mode. MCP servers always use a separate
|
|
@@ -260,12 +280,9 @@ loadout mcp-recipe --credential-free
|
|
|
260
280
|
Preview and configure one for the host you use:
|
|
261
281
|
|
|
262
282
|
```bash
|
|
263
|
-
loadout mcp-recipe playwright --agent codex
|
|
264
|
-
loadout mcp-recipe playwright --agent codex --yes
|
|
265
|
-
loadout mcp-recipe playwright --agent codex --verify
|
|
266
|
-
|
|
267
283
|
loadout mcp-recipe playwright --agent claude-code
|
|
268
284
|
loadout mcp-recipe playwright --agent claude-code --yes
|
|
285
|
+
loadout mcp-recipe playwright --agent claude-code --verify
|
|
269
286
|
```
|
|
270
287
|
|
|
271
288
|
Configuration alone does not start the server. Test a real connection separately
|
|
@@ -276,12 +293,12 @@ variables or the OS keychain without printing their values.
|
|
|
276
293
|
|
|
277
294
|
[Graphify](https://github.com/Graphify-Labs/graphify) is an optional codebase graph
|
|
278
295
|
tool. It installs both a command and an agent skill, so Loadout keeps it separate from
|
|
279
|
-
the normal profiles. It does not require an
|
|
296
|
+
the normal profiles. It does not require an LLM API key:
|
|
280
297
|
|
|
281
298
|
```bash
|
|
282
|
-
loadout tool graphify
|
|
283
|
-
loadout tool graphify --
|
|
284
|
-
loadout tool graphify --remove --
|
|
299
|
+
loadout tool graphify
|
|
300
|
+
loadout tool graphify --yes --approve-risk
|
|
301
|
+
loadout tool graphify --remove --yes --approve-risk
|
|
285
302
|
```
|
|
286
303
|
|
|
287
304
|
Executable tools remain an explicit choice instead of hiding inside a profile.
|
|
@@ -324,7 +341,7 @@ The bundled catalog currently contains **53 credited public repositories** acros
|
|
|
324
341
|
|
|
325
342
|
<!-- loadout:evidence-stages:start -->
|
|
326
343
|
|
|
327
|
-
Catalog maturity: **53 sourced**, **53 technically inspected**, and **4 selected for Stable**. Independent human-review attestations
|
|
344
|
+
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
345
|
|
|
329
346
|
<!-- loadout:evidence-stages:end -->
|
|
330
347
|
|
|
@@ -332,7 +349,7 @@ Loadout does not claim there is one universally “best” configuration. Recomm
|
|
|
332
349
|
|
|
333
350
|
<!-- loadout:daily-discovery:start -->
|
|
334
351
|
|
|
335
|
-
**Discovery snapshot (generated 2026-
|
|
352
|
+
**Discovery snapshot (generated 2026-08-30):** [237 repositories observed](./docs/DISCOVERED.md), including 218 uncataloged review candidates and 19 repositories already in the inspected catalog.
|
|
336
353
|
<!-- loadout:daily-discovery:end -->
|
|
337
354
|
|
|
338
355
|
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 +358,7 @@ The checked-in discovery report proves only its dated snapshot, not the success
|
|
|
341
358
|
|
|
342
359
|
- A pinned commit identifies source bytes; it does not prove safety, correct licensing, usefulness, or future compatibility.
|
|
343
360
|
- Static inspection reports scripts, hooks, binaries, domains, credential references, and unsupported components. It is not a security audit.
|
|
344
|
-
- No bundled source is called
|
|
361
|
+
- No bundled source is called proven until human review and recorded local outcomes support it; static inspection alone never earns that label.
|
|
345
362
|
- Project recommendations read bounded local metadata. The documented local flow does not upload project source.
|
|
346
363
|
- Catalog fetches, discovery, update checks, and optional live checks use the network where stated.
|
|
347
364
|
- MCP servers and executable tools have separate preview and approval paths because they can use credentials, start processes, or contact services.
|
|
@@ -349,11 +366,11 @@ The checked-in discovery report proves only its dated snapshot, not the success
|
|
|
349
366
|
|
|
350
367
|
<!-- loadout:current-limits:start -->
|
|
351
368
|
|
|
352
|
-
- **
|
|
369
|
+
- **4 catalog records** currently have `NOASSERTION` license status and need upstream-license review before a public release decision.
|
|
353
370
|
|
|
354
371
|
<!-- loadout:current-limits:end -->
|
|
355
372
|
|
|
356
|
-
The
|
|
373
|
+
The four records have an explicit public-release decision rather than an assumed
|
|
357
374
|
license. Read [Upstream license decisions](./docs/UPSTREAM_LICENSE_DECISIONS.md) for
|
|
358
375
|
the source-by-source record and the boundary applied to Power, Maximum, and Custom.
|
|
359
376
|
|
|
@@ -381,97 +398,43 @@ Configured paths and disposable filesystem lifecycle tests do not prove that nat
|
|
|
381
398
|
|
|
382
399
|
Start at the top and stop whenever Loadout does everything you need.
|
|
383
400
|
|
|
384
|
-
| Priority | What it does | Command
|
|
385
|
-
| -------: | --------------------------------------------------------------- |
|
|
386
|
-
| 1 | Opens the beginner-friendly guided path | `loadout guide`
|
|
387
|
-
| 2 | Previews the recommended 30-skill daily setup | `loadout setup --mode stable`
|
|
388
|
-
| 3 | Previews the broader Power setup | `loadout setup --mode power`
|
|
389
|
-
| 4 | Downloads the broad screened library, disabled by default | `loadout setup --mode maximum`
|
|
390
|
-
| 5 | Shows Loadout-managed packages and active skills | `loadout status`; `loadout library`
|
|
391
|
-
| 6 | Inventories skills across detected agents without changing them | `loadout scan`
|
|
392
|
-
| 7 | Explains what fits the current repository | `loadout recommend --project
|
|
393
|
-
| 8 | Previews a bounded project-specific active set | `loadout optimize --project . --limit 30`
|
|
394
|
-
| 9 | Compares existing skills with reviewed catalog copies | `loadout reconcile --refresh`
|
|
395
|
-
| 10 | Checks managed active and disabled-library sources for changes | `loadout update`
|
|
396
|
-
| 11 | Finds newly launched or newly popular candidates | `loadout discover --source all --queue`
|
|
397
|
-
| 12 | Shows candidates waiting for deeper review | `loadout review-queue`
|
|
398
|
-
| 13 | Lists MCP recipes and credential needs | `loadout mcp-recipe`; `loadout mcp-recipe --credential-free`
|
|
399
|
-
| 14 | Previews an MCP configuration | `loadout mcp-recipe playwright --agent
|
|
400
|
-
| 15 |
|
|
401
|
-
| 16 |
|
|
402
|
-
| 17 |
|
|
403
|
-
| 18 |
|
|
404
|
-
| 19 |
|
|
405
|
-
| 20 |
|
|
401
|
+
| Priority | What it does | Command |
|
|
402
|
+
| -------: | --------------------------------------------------------------- | ------------------------------------------------------------ |
|
|
403
|
+
| 1 | Opens the beginner-friendly guided path | `loadout guide` |
|
|
404
|
+
| 2 | Previews the recommended 30-skill daily setup | `loadout setup --mode stable` |
|
|
405
|
+
| 3 | Previews the broader Power setup | `loadout setup --mode power` |
|
|
406
|
+
| 4 | Downloads the broad screened library, disabled by default | `loadout setup --mode maximum` |
|
|
407
|
+
| 5 | Shows Loadout-managed packages and active skills | `loadout status`; `loadout library` |
|
|
408
|
+
| 6 | Inventories skills across detected agents without changing them | `loadout scan` |
|
|
409
|
+
| 7 | Explains what fits the current repository | `loadout recommend --project .` |
|
|
410
|
+
| 8 | Previews a bounded project-specific active set | `loadout optimize --project . --limit 30` |
|
|
411
|
+
| 9 | Compares existing skills with reviewed catalog copies | `loadout reconcile --refresh` |
|
|
412
|
+
| 10 | Checks managed active and disabled-library sources for changes | `loadout update` |
|
|
413
|
+
| 11 | Finds newly launched or newly popular candidates | `loadout discover --source all --queue` |
|
|
414
|
+
| 12 | Shows candidates waiting for deeper review | `loadout review-queue` |
|
|
415
|
+
| 13 | Lists MCP recipes and credential needs | `loadout mcp-recipe`; `loadout mcp-recipe --credential-free` |
|
|
416
|
+
| 14 | Previews an MCP configuration | `loadout mcp-recipe playwright --agent claude-code` |
|
|
417
|
+
| 15 | Recommends the right model and agent for a task | `loadout route design the auth system` |
|
|
418
|
+
| 16 | Shows the full model catalog with pricing | `loadout route --models`; `loadout route --cost` |
|
|
419
|
+
| 17 | Sends a task to another agent via file-based handoff | `loadout handoff send codex "write tests for auth"` |
|
|
420
|
+
| 18 | Checks agent health, permissions, and setup | `loadout doctor`; `loadout doctor --verbose` |
|
|
421
|
+
| 19 | Lists and installs isolated runtime tools such as Graphify | `loadout tool`; `loadout tool graphify` |
|
|
422
|
+
| 20 | Lists snapshots or restores the latest managed change | `loadout rollback --list`; `loadout rollback` |
|
|
423
|
+
| 21 | Previews removal of one managed package | `loadout remove <package-id>` |
|
|
424
|
+
| 22 | Previews complete removal of Loadout-managed state | `loadout uninstall` |
|
|
425
|
+
| 23 | Enables read-only daily discovery and update checks | `loadout autopilot --yes` |
|
|
426
|
+
| 24 | Shows the complete CLI | `loadout --help`; `loadout advanced` |
|
|
406
427
|
|
|
407
428
|
Most mutating commands are dry runs first. After reading the preview, add `--yes` to
|
|
408
429
|
apply. Commands with executable or connection risk require the additional approval
|
|
409
430
|
shown in their output.
|
|
410
431
|
|
|
411
|
-
## Built with
|
|
412
|
-
|
|
413
|
-
Loadout was
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
### From a broad idea to a working product
|
|
419
|
-
|
|
420
|
-
The starting idea was simple: one install that gives every coding agent the best
|
|
421
|
-
extensions on GitHub. The difficult part was everything hidden inside that sentence.
|
|
422
|
-
What counts as “best”? How much should stay active? What happens to skills a user
|
|
423
|
-
already has? How do you update a repository without silently trusting new code? How
|
|
424
|
-
do you undo changes across several agents?
|
|
425
|
-
|
|
426
|
-
We used GPT-5.6 through Codex for the repo-wide reasoning behind those decisions.
|
|
427
|
-
Together, we turned the idea into three distinct modes: a bounded Stable daily
|
|
428
|
-
driver, a larger Power setup, and a Maximum library that keeps broad optionality
|
|
429
|
-
without loading thousands of skills into every prompt.
|
|
430
|
-
|
|
431
|
-
| Part of the build | How we used Codex and GPT-5.6 | What made it into Loadout |
|
|
432
|
-
| ------------------ | ---------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
|
|
433
|
-
| Product planning | Broke the original idea into testable user journeys and challenged unsafe assumptions | Stable, Power, Maximum, Custom, project optimization, discovery, updates, and complete uninstall |
|
|
434
|
-
| Architecture | Traced how catalogs, adapters, agent directories, manifests, and snapshots affect one another | A local TypeScript CLI with a shared catalog, 12 agent adapters, and snapshot-backed transactions |
|
|
435
|
-
| 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 |
|
|
436
|
-
| 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 |
|
|
437
|
-
| 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 |
|
|
438
|
-
| Testing | Generated adversarial cases, reproduced failures from real terminal sessions, and converted them into regression tests | 625 passing tests, CLI and README end-to-end flows, package smoke tests, and a 1,000-skill performance gate |
|
|
439
|
-
| 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 |
|
|
440
|
-
| 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 |
|
|
441
|
-
|
|
442
|
-
### Real testing changed the code
|
|
443
|
-
|
|
444
|
-
Codex was most useful when the neat plan met a messy laptop. A few examples:
|
|
445
|
-
|
|
446
|
-
- A Graphify install appeared in Claude Code but vanished from Codex inventory
|
|
447
|
-
because the generated runtime skill and the normal skill scanner used different
|
|
448
|
-
Codex paths. The scan now recognizes managed runtime-tool skills explicitly.
|
|
449
|
-
- Update checks repeatedly timed out on large repositories. We measured the real
|
|
450
|
-
clone cost, changed the update path to check remote commit metadata first, and only
|
|
451
|
-
fetch a full snapshot when a pinned source actually changed.
|
|
452
|
-
- Existing unmanaged skills could occupy the same target as a Stable install.
|
|
453
|
-
Instead of overwriting them, Loadout now stops, scans, compares, and offers a
|
|
454
|
-
separate reconciliation path for exact or unambiguous matches.
|
|
455
|
-
- ChatGPT and Claude subscriptions were easy to confuse with separately billed API
|
|
456
|
-
access. Setup now asks about API access explicitly, while credentialed MCP servers
|
|
457
|
-
remain separate from automatic skill installation.
|
|
458
|
-
|
|
459
|
-
Those fixes came from a loop we repeated throughout the week: run the real command,
|
|
460
|
-
paste the exact output into Codex, trace the behavior through the codebase, write a
|
|
461
|
-
regression test, fix the smallest responsible layer, and run the full release gate.
|
|
462
|
-
|
|
463
|
-
### What the team owned
|
|
464
|
-
|
|
465
|
-
The humans chose the product direction, selected the tradeoffs, reviewed upstream
|
|
466
|
-
projects, tested Loadout on real Codex and Claude Code profiles, approved risky
|
|
467
|
-
operations, and made every release decision. GPT-5.6 helped with high-context design,
|
|
468
|
-
debugging, and review; Codex handled the implementation loop and verification tools.
|
|
469
|
-
Neither replaced human judgment about what should be installed on someone else's
|
|
470
|
-
machine.
|
|
471
|
-
|
|
472
|
-
Loadout itself does **not** call GPT-5.6 and does not require an OpenAI API key to
|
|
473
|
-
manage skills. Codex and GPT-5.6 helped build the tool; they are not a hidden runtime
|
|
474
|
-
dependency.
|
|
432
|
+
## Built with Claude
|
|
433
|
+
|
|
434
|
+
Loadout was designed and built by [Viraj Mishra](https://github.com/VirajMishra1) with Claude Code.
|
|
435
|
+
|
|
436
|
+
Loadout itself does **not** call any LLM API and does not require an LLM API key
|
|
437
|
+
to manage skills. Claude helped build the tool; it is not a hidden runtime dependency.
|
|
475
438
|
|
|
476
439
|
## Development
|
|
477
440
|
|