@hasna/skills 0.10.20 → 0.10.22
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/README.md +39 -8
- package/bin/index.js +603 -349
- package/bin/mcp.js +308 -119
- package/bin/migrate.js +1 -1
- package/bin/server.js +1 -1
- package/bin/worker.js +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +417 -172
- package/dist/lib/agent-discovery.d.ts +4 -1
- package/dist/lib/agent-integration.d.ts +4 -0
- package/dist/lib/codex-hook-rpc.d.ts +1 -1
- package/dist/lib/codex-native-compatibility.d.ts +3 -0
- package/dist/lib/codex-native-skill-catalog.d.ts +4 -0
- package/dist/lib/codex-plugin-skill-controls.d.ts +1 -0
- package/dist/lib/codex-settings-witness-v1.d.ts +12 -0
- package/dist/lib/codex-settings-witness.d.ts +13 -5
- package/dist/sdk/index.js +488 -244
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -459,14 +459,34 @@ skills hook rebind-settings --agent codex \
|
|
|
459
459
|
--expected-settings-sha256 <current-settings-sha256> --json
|
|
460
460
|
```
|
|
461
461
|
|
|
462
|
-
The plan proves the preserved original matches
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
462
|
+
The plan proves the preserved original matches every witness being replaced,
|
|
463
|
+
permits only the documented non-discovery differences, and labels the replacement
|
|
464
|
+
witness (the JSON receipt lists them under `replacedWitnesses`). `--apply`
|
|
465
|
+
preserves and reads back the original policy before writing, and never writes the
|
|
466
|
+
native configuration. Claude upgrades to `claude-settings-v3`; Codex uses
|
|
467
|
+
`codex-settings-v2`, which also replaces the narrower automatic
|
|
468
|
+
`plugins`/`marketplaces`/`skills` projection of the same file once the preserved
|
|
469
|
+
original is proved to explain it. That projection is order-sensitive, so it keeps
|
|
470
|
+
failing after Codex re-serializes the file it owns.
|
|
471
|
+
|
|
472
|
+
Existing `codex-settings-v1` witnesses retain their original verifier. New reviews
|
|
473
|
+
use `skills hook witness --kind codex-settings-v2 --path <config.toml> --json`.
|
|
474
|
+
The guarded rebind accepts a raw or v1 witness only when the exact preserved
|
|
475
|
+
configuration proves its original digest and any automatic projection. Without
|
|
476
|
+
that preimage, capture a fresh native catalog and explicitly review all discovery
|
|
477
|
+
inputs before installing a v2 binding; runtime never adopts drift automatically.
|
|
478
|
+
|
|
479
|
+
The Codex v2 witness binds the whole configuration apart from native-owned state
|
|
480
|
+
that is not a discovery input: the `hooks.state` trust ledger Codex rewrites when
|
|
481
|
+
it trusts a hook, table order and other serialization-only differences, retired
|
|
482
|
+
`[[skills.config]]` entries that explicitly disable one skill, and `model`,
|
|
483
|
+
`model_reasoning_effort` and `model_verbosity` at the root or in `[profiles.*]`.
|
|
484
|
+
Every hook declaration, provider mapping, plugin, skill source or enablement,
|
|
485
|
+
project-trust entry, environment setting and unknown field stays bound, and a
|
|
486
|
+
malformed inference selection refuses instead of being adopted. Runtime hooks
|
|
487
|
+
never silently upgrade a witness.
|
|
488
|
+
|
|
489
|
+
A supported Codex native skill and installed-plugin receipt can be captured through the
|
|
470
490
|
package-owned client into a new private file, then reviewed and passed to
|
|
471
491
|
`hook install` with `--codex-native-catalog <file>`:
|
|
472
492
|
|
|
@@ -475,6 +495,11 @@ skills hook native-catalog --cwd /absolute/project --output /private/catalog.jso
|
|
|
475
495
|
skills hook install --agent codex --codex-native-catalog /private/catalog.json --json
|
|
476
496
|
```
|
|
477
497
|
|
|
498
|
+
Codex 0.159.2 and 0.160.0 have measured qualified-name catalog support. Native
|
|
499
|
+
transport, capture and review use one capability registry. Unmeasured releases
|
|
500
|
+
refuse until the native catalog/name-denial and hook-dispatch acceptance tests
|
|
501
|
+
pass; an RPC handshake alone does not establish those semantics.
|
|
502
|
+
|
|
478
503
|
The capture refuses an existing output file, writes mode `0600`, verifies the
|
|
479
504
|
exact bytes, and reports only version, directory, count, file path and SHA-256.
|
|
480
505
|
Its safe catalog shape is `{version,cwd,skills,plugins}`; skills have
|
|
@@ -2221,3 +2246,9 @@ assertPortableAuthoringPath(destination, { homeDir: accountHome });
|
|
|
2221
2246
|
```
|
|
2222
2247
|
|
|
2223
2248
|
`homeDir` defaults to the current account home. Missing destination descendants are supported. The check reads configuration without loading plugins, fetching skills, or creating directories; it throws on refusal. It is a pre-write check, not a reservation against concurrent configuration or symlink changes. Call it again immediately before each later write. Native inventory and migration remain available for preserving existing copies.
|
|
2249
|
+
|
|
2250
|
+
Remote Codex plugins can report no installed release version. Fresh discovery can
|
|
2251
|
+
review a cached skill only when its native installed/enabled plugin ID matches
|
|
2252
|
+
Codex's local remote install receipt, its manifest and capability controls are
|
|
2253
|
+
bound, and its exact path is already effectively disabled. This reviews a denied
|
|
2254
|
+
materialization; it does not infer the installed version or enable cached skills.
|