@hasna/skills 0.8.9 → 0.8.10

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
@@ -92,6 +92,13 @@ before synchronization or context loading. Review the hook installation and
92
92
  restart the native client to load its current commands. Explicit `skills load`,
93
93
  `skills context`, and `skills sync` commands can still select other profiles.
94
94
 
95
+ Reinstalling hooks without `--command` or `--selection-profile` preserves each
96
+ agent's existing executable and profile independently, including when using
97
+ `--agent all`. New agents use `skills` and `default`. Either explicit flag
98
+ overrides that choice for the requested agents. The policy's shared default
99
+ profile changes only when `--selection-profile` is supplied; older managed
100
+ agents without a per-agent profile retain that shared default.
101
+
95
102
  The hook install `--include-vendor` option is retained for compatibility with
96
103
  older scripts. Hook planning always inventories and disables discovered vendor
97
104
  system skills; use `migrate native --include-vendor` when retiring their
@@ -103,6 +110,24 @@ request a selected skill in a prompt, for example `Use $pdf-generate to create
103
110
  a PDF`. The hooks supply instructions; executing the skill remains a separate
104
111
  explicit action.
105
112
 
113
+ For Codex 0.153.0, 0.154.0, and 0.155.0, the normal installed Skills CLI can
114
+ plan native trust for its three exact managed hook definitions:
115
+
116
+ ```bash
117
+ skills hook trust --agent codex --json
118
+ skills hook trust --agent codex --apply --plan-digest <reviewed-plan-digest> --json
119
+ ```
120
+
121
+ Review the commands, current hashes, and existing trust/enable state in the
122
+ plan. Apply refuses if the plan, package, declarations, or configuration changed.
123
+ It enrolls the current exact definitions, including reviewed modified hooks,
124
+ and preserves unrelated trust, settings, and comments. A private journal keeps
125
+ the pre-write configuration; a failed write or verification requires journal
126
+ reconciliation before retry. Unsupported versions or configuration layouts
127
+ refuse without a configuration write. Enrollment uses a short-lived native
128
+ app-server and makes hooks eligible for new Codex processes. Existing sessions
129
+ retain their own configuration; use their native hook controls to refresh them.
130
+
106
131
  Each supported agent gets one small `skills-cli` native skill containing CLI
107
132
  instructions, without a copied catalogue. Claude's native Skill tool admits
108
133
  that bridge after other copies are retired. Prompt guards verify the owned
@@ -264,6 +289,14 @@ system configuration, process-specific overrides, and alternate agent home
264
289
  directories are outside automatic coverage and require their own integration
265
290
  review before declaring a station migrated.
266
291
 
292
+ For reviewed Claude plugins, `skills integration plugin plan`, `admit` and
293
+ `resolve` provide a command-source admission boundary before native discovery.
294
+ Original packages and migrated skill/command prompts remain in private versioned
295
+ Skills storage. Native projections retain ordinary components, and a typed
296
+ receipt permits only verified registry/cache transitions. See
297
+ [plugin admission](docs/plugin-admission.md) for the package, review and runtime
298
+ contracts; these commands do not change live agent registrations or settings.
299
+
267
300
  If your home `.claude` or `.codex` directory intentionally links to another
268
301
  directory within your home, add `--allow-root-aliases` to hook installation and
269
302
  native migration. The plan records and rechecks the exact link and target;
@@ -348,6 +381,24 @@ user and stable station ID, so rotating a key does not create a new station.
348
381
  Consumers need `skills:read` and `stations:write`; profile publishers need
349
382
  `skills:write`. Key scopes apply even to workspace owners.
350
383
 
384
+ `skills auth whoami --json` reports the current credential's effective
385
+ `permissions.publish` and `permissions.profilesWrite`, alongside its account
386
+ role and advertised scopes. Human output labels each permission `allowed`,
387
+ `denied`, or `unknown`; JSON uses `null` for unknown access. An owner role alone
388
+ does not grant either permission. `skills capabilities --json` and the SDK's
389
+ `getCapabilities()` also retain the server's typed permission and scope fields.
390
+
391
+ Before sending a bundle, `push` and `RemoteSkillsClient.publishSkill()` read
392
+ fresh capabilities and stop on an explicit publication denial. `profiles set`
393
+ similarly stops before a profile write. The refusal reports
394
+ `SKILLS_PERMISSION_DENIED` with the affected permission and guidance to obtain
395
+ an authorized credential; it never changes credentials or their scopes.
396
+ Servers that omit permissions (or predate the capabilities route) retain their
397
+ existing server-authorized write behavior, with access displayed as unknown.
398
+ Authentication failures and malformed permission responses do not bypass the
399
+ preflight. `push --dry-run` remains a local packing check and does not check
400
+ hosted publication access.
401
+
351
402
  `--selection-profile` chooses the shared skill selection. The top-level
352
403
  `--profile` option chooses an isolated credential file; these are separate
353
404
  settings. `HASNA_SKILLS_SELECTION_PROFILE` overrides the installed selection