loadout-ai 0.1.2 → 0.2.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.
- package/CHANGELOG.md +32 -0
- package/MASTER_PLAN.md +90 -8
- package/README.md +218 -330
- package/catalog/discovered.json +7925 -6183
- package/dist/src/cli.js +52 -27
- package/dist/src/core/access.js +42 -0
- package/dist/src/core/catalog-install.js +63 -13
- package/dist/src/core/health-score-evidence.js +8 -0
- package/dist/src/core/install.js +72 -39
- package/dist/src/core/mcp-recipes.js +37 -6
- package/dist/src/core/skills.js +20 -7
- package/dist/src/core/state.js +20 -4
- package/dist/src/core/update.js +111 -10
- package/dist/src/core/upgrade.js +1 -0
- package/dist/src/shared/schemas.js +8 -0
- package/docs/DISCOVERED.md +253 -253
- package/docs/FEATURE_TEST_MATRIX.md +8 -7
- package/docs/TESTING.md +44 -2
- package/package.json +2 -1
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## 0.2.1 - 2026-07-17
|
|
4
|
+
|
|
5
|
+
### Fixed
|
|
6
|
+
|
|
7
|
+
- Make Stable and Power setup safe to rerun when Loadout already owns some target skills.
|
|
8
|
+
- Preserve unmanaged skills and refuse to replace managed skills that changed outside Loadout.
|
|
9
|
+
- Verify every replacement byte and keep mixed existing/new-agent installs rollback-safe.
|
|
10
|
+
|
|
11
|
+
## 0.2.0 - 2026-07-17
|
|
12
|
+
|
|
13
|
+
### Added
|
|
14
|
+
|
|
15
|
+
- Subscription-aware onboarding with a non-secret `--api-access` declaration.
|
|
16
|
+
- Per-skill quarantine in Maximum Library so safe siblings remain available.
|
|
17
|
+
- Stored static-assessment evidence for the explainable Agent Health Score.
|
|
18
|
+
- Credential-gated MCP host configuration using resolved environment references only.
|
|
19
|
+
|
|
20
|
+
### Fixed
|
|
21
|
+
|
|
22
|
+
- Preserve matching active Stable units when downloading the broader Maximum Library.
|
|
23
|
+
- Scope collection-repository updates to the exact managed skill units.
|
|
24
|
+
- Prevent unrelated repository scripts from creating false update warnings or being installed.
|
|
25
|
+
- Reject plaintext MCP environment values during configuration verification.
|
|
26
|
+
- Redact accidental key-like values from setup and credential-mapping errors.
|
|
27
|
+
|
|
28
|
+
### Security
|
|
29
|
+
|
|
30
|
+
- Chat product subscriptions are no longer presented as provider API access.
|
|
31
|
+
- MCP-only and executable records remain explicit; broad setup still runs no third-party installer.
|
|
32
|
+
- Missing credentials, changed revisions, missing active units, and invalid environment references fail closed.
|
package/MASTER_PLAN.md
CHANGED
|
@@ -190,6 +190,14 @@ Post-MVP path: commit `loadout.lock` and restore it on another machine.
|
|
|
190
190
|
`discover`, `recommend`, `compare`, `optimize`, `remove`, and `rollback`. Commands
|
|
191
191
|
not yet implemented remain Phase 12 backlog items. The dashboard remains optional.
|
|
192
192
|
|
|
193
|
+
Account capability rule: interactive setup asks whether the user has separately billed
|
|
194
|
+
OpenAI API, Anthropic API, OpenRouter, other provider access, or none. ChatGPT and
|
|
195
|
+
Claude subscriptions do not count. The answer contains provider names only, is not a
|
|
196
|
+
credential, is not persisted by setup, and cannot weaken safety policy. Static skills
|
|
197
|
+
remain available without model API access; credentialed MCP/runtime/model operations
|
|
198
|
+
remain explicit and fail closed until a named environment or OS-keychain reference is
|
|
199
|
+
appropriate for that execution boundary.
|
|
200
|
+
|
|
193
201
|
### 5.2 Normal use
|
|
194
202
|
|
|
195
203
|
- `loadout status`: agents, packages, conflicts, and update health.
|
|
@@ -1015,13 +1023,12 @@ universal or permanent truth.
|
|
|
1015
1023
|
`NOASSERTION` records, before distribution.
|
|
1016
1024
|
- [ ] `P12-31 [TERRA]` Publish `loadout-ai` to npm and run clean-machine package tests
|
|
1017
1025
|
from outside the repository on macOS, Windows, Linux, and Node 20/22.
|
|
1018
|
-
- Partial: `loadout-ai@0.
|
|
1019
|
-
repository remained private. Registry
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
installs on Windows/macOS/Linux remain required.
|
|
1026
|
+
- Partial: `loadout-ai@0.2.0` was published publicly on 2026-07-17 while the GitHub
|
|
1027
|
+
repository remained private. Registry version/integrity, a clean external npm
|
|
1028
|
+
install, version/help, 50-record catalog coverage, and the real disposable
|
|
1029
|
+
Superpowers install/rollback demo pass on macOS. Hosted matrix evidence already
|
|
1030
|
+
covers Windows/macOS/Linux and Node 20/22; clean independent-user installs on
|
|
1031
|
+
Windows and Linux remain required.
|
|
1025
1032
|
- [ ] `P12-32 [HUMAN]` Run moderated founder testing on the real Claude and Codex
|
|
1026
1033
|
profiles with snapshots and explicit rollback checkpoints.
|
|
1027
1034
|
- Partial 2026-07-16: the founder ran the published npm CLI against the real macOS
|
|
@@ -1162,7 +1169,7 @@ universal or permanent truth.
|
|
|
1162
1169
|
1,000 on-disk skills at a 1.29-second p95 on macOS/Node 23.
|
|
1163
1170
|
- [ ] `P15-06 [HUMAN]` Approve public repository visibility, complete the six
|
|
1164
1171
|
`NOASSERTION` license decisions, authenticate npm, and publish `loadout-ai`.
|
|
1165
|
-
- Partial 2026-07-
|
|
1172
|
+
- Partial 2026-07-17: npm authentication and the public `loadout-ai@0.2.0`
|
|
1166
1173
|
publication succeeded. Repository visibility remains private at the owner's
|
|
1167
1174
|
request, and the six root-level `NOASSERTION` decisions remain a human release
|
|
1168
1175
|
gate; therefore this combined item is not ticked.
|
|
@@ -1542,6 +1549,81 @@ recommendation promotion cannot bypass earlier evidence/trust gates. More catalo
|
|
|
1542
1549
|
records, a new frontend, automatic candidate installation, and broad arbitrary
|
|
1543
1550
|
runtime execution are explicitly lower priority than these waves.
|
|
1544
1551
|
|
|
1552
|
+
### Phase 17: Credential-aware onboarding and install/update correctness
|
|
1553
|
+
|
|
1554
|
+
This phase was added after founder review identified a common misconception: paid
|
|
1555
|
+
ChatGPT or Claude chat subscriptions are not provider API billing. Loadout must give a
|
|
1556
|
+
useful no-key experience while making credentialed integrations impossible to apply by
|
|
1557
|
+
accident.
|
|
1558
|
+
|
|
1559
|
+
- [x] `P17-01 [SOL policy, TERRA implementation]` Define a non-secret setup access
|
|
1560
|
+
profile for `openai`, `anthropic`, `openrouter`, `other`, or `none`.
|
|
1561
|
+
- Interactive onboarding asks in plain language and explicitly excludes chat
|
|
1562
|
+
subscriptions. `--api-access` accepts provider names, rejects unknown/key-like
|
|
1563
|
+
values, and never persists a credential.
|
|
1564
|
+
- The answer is eligibility/explanation context only; it cannot bypass trust,
|
|
1565
|
+
compatibility, license, safety, approval, or transaction gates.
|
|
1566
|
+
- [x] `P17-02 [TERRA]` Keep broad setup credential-free by construction.
|
|
1567
|
+
- Stable, Power, Maximum, and Custom automatically copy only statically inspected
|
|
1568
|
+
skill directories at immutable commits. MCP-only and executable records remain
|
|
1569
|
+
explicit regardless of declared API access.
|
|
1570
|
+
- Product copy explains that a skill mentioning OpenAI or Anthropic does not itself
|
|
1571
|
+
require a model key; the specific runtime operation decides that requirement.
|
|
1572
|
+
- [x] `P17-03 [SOL security, TERRA implementation]` Fail closed on credentialed MCP
|
|
1573
|
+
configuration.
|
|
1574
|
+
- A credentialed recipe cannot be applied until every required environment reference
|
|
1575
|
+
resolves. Config output stores `${VARIABLE}` only and never a value.
|
|
1576
|
+
- OS-keychain references are accepted only at Loadout-controlled execution
|
|
1577
|
+
boundaries such as the explicit bounded connection verifier; arbitrary host
|
|
1578
|
+
configs are not falsely claimed to resolve Loadout keychain entries.
|
|
1579
|
+
- [x] `P17-04 [TERRA]` Quarantine invalid Maximum units rather than entire collections.
|
|
1580
|
+
- Deterministic critical validation still fails closed for the unit. Safe siblings at
|
|
1581
|
+
the same immutable source revision remain available, and every rejected unit and
|
|
1582
|
+
reason appears in the preview.
|
|
1583
|
+
- [x] `P17-05 [SOL invariant, TERRA implementation]` Support Maximum after Stable.
|
|
1584
|
+
- Matching active units stay active only when the incoming and installed reviewed
|
|
1585
|
+
commits match. Additional units enter the disabled library. Revision mismatch or a
|
|
1586
|
+
missing active unit blocks the transaction instead of relabeling or overwriting it.
|
|
1587
|
+
- [x] `P17-06 [SOL invariant, TERRA implementation]` Scope collection updates to the
|
|
1588
|
+
exact managed unit set.
|
|
1589
|
+
- Update diff, risk analysis, planning, copying, verification, and state replacement
|
|
1590
|
+
ignore unrelated repository siblings and root files. Missing or added managed-unit
|
|
1591
|
+
targets block instead of silently changing the active set.
|
|
1592
|
+
- [x] `P17-07 [TERRA]` Persist static assessment evidence in install state and expose it
|
|
1593
|
+
to Agent Health.
|
|
1594
|
+
- Store status, finding count, assessment time, and policy version without secret or
|
|
1595
|
+
source-content values. Recompute it on every applied revision.
|
|
1596
|
+
- [ ] `P17-08 [HUMAN+SOL]` Complete founder verification on the published package.
|
|
1597
|
+
- Test no-key Stable, Stable-to-Maximum overlay, quarantine output, project
|
|
1598
|
+
optimization, scoped update, credential-gated MCP configuration, health evidence,
|
|
1599
|
+
rollback, and clean uninstall on the founder's snapshotted real Codex profile.
|
|
1600
|
+
- Repeat the safe no-key journey with Claude, then collect one Windows and one Linux
|
|
1601
|
+
external session. Convert every reproducible failure into a regression test before
|
|
1602
|
+
public-release claims.
|
|
1603
|
+
- Partial 2026-07-17: the registry and clean external macOS install are verified for
|
|
1604
|
+
`0.2.0`; the published CLI loads the complete command surface, reports all 50
|
|
1605
|
+
catalog records, and completes its disposable install/rollback demo. Real founder
|
|
1606
|
+
Stable/Power/Maximum and Claude-profile exercises remain deliberately pending.
|
|
1607
|
+
- [x] `P17-09 [TERRA implementation, LUNA copy review]` Make Power resilient and
|
|
1608
|
+
explain the product in beginner language before the `0.2.0` release.
|
|
1609
|
+
- Power now quarantines a rejected selected skill while retaining safe selected
|
|
1610
|
+
siblings from the same immutable collection, matching Maximum's unit-level
|
|
1611
|
+
isolation without weakening Stable's exact bounded default.
|
|
1612
|
+
- A live Codex preview prepares all eight Power collections and 50 skill directories,
|
|
1613
|
+
quarantines six individual units, and reports every overlap and approval boundary.
|
|
1614
|
+
- README now leads with install/mode/project/daily workflows, directly credits all
|
|
1615
|
+
50 upstream repositories, and distinguishes a new lead, an available update, and
|
|
1616
|
+
a comparison-backed replacement instead of treating popularity as proof.
|
|
1617
|
+
|
|
1618
|
+
Engineering checkpoint 2026-07-17: the complete local gate passes 103 test files/460
|
|
1619
|
+
tests, packaged CLI smoke, the real CLI product journey, release-claim checks, and seven
|
|
1620
|
+
1,000-skill scans at a 1.88-second p95. A real read-only Maximum preview against the 50
|
|
1621
|
+
pinned catalog records prepared 29 repositories/1,158 Codex skill directories,
|
|
1622
|
+
quarantined 50 invalid units while retaining safe siblings, deferred 19 MCP-only
|
|
1623
|
+
records, and resolved 44 lower-ranked overlaps. Comparing that prepared plan with the
|
|
1624
|
+
founder's 30 active Stable units found zero missing units and zero commit mismatches;
|
|
1625
|
+
no real agent file was mutated.
|
|
1626
|
+
|
|
1545
1627
|
## 19. Seven-day schedule
|
|
1546
1628
|
|
|
1547
1629
|
### Day 1: Foundation
|