@hasna/skills 0.10.62 → 0.10.63

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 CHANGED
@@ -560,6 +560,47 @@ the managed policy, so the witness is a tripwire, not a security boundary. See
560
560
  A stronger witness for plugins outside receipt-backed admission is planned and
561
561
  not yet implemented.
562
562
 
563
+ Captured review catalogs are immutable evidence, while configuration and plugin
564
+ files remain live discovery inputs. To retain a captured Codex native catalog,
565
+ explicitly add `reviewArtifacts` to its Codex entry in `--discovery-inputs`:
566
+
567
+ ```json
568
+ "reviewArtifacts": [{
569
+ "kind": "codex-native-catalog",
570
+ "path": "/absolute/private/reviewed-catalog.json",
571
+ "sha256": "<exact original file SHA-256>"
572
+ }]
573
+ ```
574
+
575
+ The same path and digest must already be a full byte witness in `sources`.
576
+ The normal read-only install plan validates the catalog using its owning schema;
577
+ apply retains its exact bytes privately under the resolved Skills data directory
578
+ at `agent-discovery/artifacts/<sha256>/catalog.json` before changing the policy.
579
+ The stored witness includes the original path, byte digest and projected catalog
580
+ digest. Later hooks verify the retained bytes and permissions, so removal of the
581
+ original scratch copy cannot break discovery. Live native roots, configuration,
582
+ plugin files and trust still require their original witnesses; retention does
583
+ not refresh or exempt them. No artifact is inferred from a filename.
584
+
585
+ For an existing reviewed policy, plan one exact legacy witness migration:
586
+
587
+ ```bash
588
+ skills hook retain-review-artifact --kind codex-native-catalog \
589
+ --source /absolute/private/reviewed-catalog.json \
590
+ --expected-policy-sha256 <current-policy-byte-sha256> \
591
+ --expected-source-sha256 <original-reviewed-byte-sha256> --json
592
+ ```
593
+
594
+ Run from the same reviewed project directory; add `--apply` to execute that
595
+ guarded transaction. It requires the original bytes to exist and all current
596
+ bridge, discovery and trust checks to pass. Missing originals need exact recovery
597
+ first; this command never captures a replacement catalog or rehashes a changed
598
+ source. Apply preserves and reads back the old policy, leaves the original source
599
+ and session pins intact, and records retention lineage in the transaction
600
+ receipt. Existing sources without an explicit declaration keep their live-path
601
+ semantics. Immutable files left by a compensated transaction are retained and
602
+ may be reused only after exact verification.
603
+
563
604
  When `hook install` omits `--discovery-inputs`, it reuses an existing reviewed
564
605
  binding only after rechecking its sources, directory membership, configuration
565
606
  coverage, managed bridge and native trust. Unchanged reviews need no new input