@skein-code/cli 0.3.25 → 0.3.27

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
@@ -96,7 +96,7 @@ To build, verify, and install a local package artifact from this checkout:
96
96
 
97
97
  ```bash
98
98
  npm run verify:package -- --output-dir artifacts/package
99
- npm install -g ./artifacts/package/skein-code-cli-0.3.25.tgz
99
+ npm install -g ./artifacts/package/skein-code-cli-0.3.27.tgz
100
100
  ```
101
101
 
102
102
  To install the published package from npm:
@@ -214,12 +214,27 @@ only to the originating session, expire after seven days, and are removed when
214
214
  that session is deleted. A receipt marked `source-truncated` is honest about
215
215
  bytes already omitted by the producing tool; those bytes cannot be recovered.
216
216
 
217
- Normal chat runs discover MCP servers lazily. Startup exposes only a compact
218
- `mcp_activate` catalog of configured servers; selecting one connects that
219
- server, runs remote discovery, and loads at most eight request-relevant schemas
220
- into the live tool registry. All activated MCP tools remain `network`
221
- operations. The explicit `skein mcp status` diagnostic still connects
222
- configured servers eagerly.
217
+ Normal chat runs discover MCP servers lazily through `mcp_search mcp_inspect
218
+ mcp_activate`. Search and inspection use only redacted local manifests and
219
+ perform no transport I/O. Activation is rejected until the user confirms the
220
+ exact workspace-bound manifest fingerprint with `skein mcp trust <server>` or
221
+ `/mcp trust <server> --confirm`; the model cannot grant trust. A trusted
222
+ activation connects one server, runs remote discovery, and loads at most eight
223
+ request-relevant schemas into the live registry. `skein mcp status` is now a
224
+ no-connect diagnostic; only explicitly `required` servers may connect and block
225
+ during startup.
226
+
227
+ Manifests declare source, version, tools, permission categories, network,
228
+ command and path scopes, sensitive fields, background/process-tree effects,
229
+ and completion-evidence support. Legacy manifests without declared tools remain
230
+ inspectable but cannot be trusted or activated. MCP calls always retain the local `network`
231
+ boundary, and server annotations cannot lower declared permissions. When a
232
+ manifest names tools, undeclared schemas injected by the server are skipped.
233
+ Sensitive arguments are redacted from text, TUI, JSON, and approval events.
234
+ Remote mutations without a Skein-bound checkpoint plus changed-file, artifact,
235
+ and completion receipts remain explicitly `unresolved`. Use `skein mcp disable`
236
+ or `skein mcp revoke --yes` (and the matching `/mcp` commands) to unload schemas
237
+ and persist the decision.
223
238
 
224
239
  At 96 columns and wider, a fresh session uses a two-column welcome surface. The
225
240
  left side keeps Skein's brand, workspace path, and next actions close to the
@@ -278,6 +293,24 @@ allowed by policy. Use `--auto-edit` to allow file edits while retaining prompts
278
293
  for shell/Git/network, or `--yes` for intentionally unattended runs. Hard deny
279
294
  rules still win over both flags.
280
295
 
296
+ JSON emits one `type: "result"` object; JSONL ends with a `type: "session"`
297
+ record, or `type: "final"` after a runtime error. These terminal records follow
298
+ [`docs/headless-output.schema.json`](docs/headless-output.schema.json), include
299
+ `schemaVersion: 1`, `status`, `reason`, and `exitCode`, and use this stable
300
+ exit-code contract:
301
+
302
+ | Code | Status | Meaning |
303
+ | ---: | --- | --- |
304
+ | 0 | `completed`, `verified` | The read-only run completed or current changes were verified. |
305
+ | 1 | `error` | Setup, provider, extension, or runtime failure. |
306
+ | 2 | `needs_input` | One persisted clarification is required; resume the same session. |
307
+ | 3 | `unverified` | Changes or required acceptance evidence remain unverified. |
308
+ | 4 | `verification_failed` | A current verification command failed. |
309
+ | 5 | `blocked` | The active Task Contract records a blocked required criterion. |
310
+ | 6 | `cancelled` | The run was interrupted; its session state was saved. |
311
+ | 7 | `max_turns` | The configured turn limit ended the run. |
312
+ | 8 | `token_budget` | The lifetime token budget ended the run. |
313
+
281
314
  ## Commands
282
315
 
283
316
  ```text
@@ -296,6 +329,8 @@ skein session list|show|delete local session management
296
329
  skein session export <id> Markdown audit export
297
330
  skein checkpoint list <session> inspect snapshots
298
331
  skein checkpoint restore <s> <c> restore a snapshot
332
+ skein /review [scope] read-only fixed-scope review in the TUI
333
+ skein /recover [action] recovery status, retry, resume, diff, audit, rollback
299
334
  skein tools tool schemas and categories
300
335
  skein rules loaded user/workspace rule files
301
336
  ```