craig-cli 0.13.1 → 0.13.3
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 +41 -1
- package/dist/cli.js +213 -71
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -162,6 +162,19 @@ craig task wait [<task-id>] --state <states> [--tab <tab-id>] [--timeout <durati
|
|
|
162
162
|
craig events list [--task <task-id>] [--type <glob>] [--after <cursor>] --json
|
|
163
163
|
craig events watch [--task <task-id>] [--type <glob>] [--after <cursor>] [--format jsonl]
|
|
164
164
|
|
|
165
|
+
craig fury validate <file> --json
|
|
166
|
+
craig fury plan <file> [--root-task <task-id>] [--input key=value] --json
|
|
167
|
+
craig fury approve <plan-id> --json
|
|
168
|
+
craig fury run <plan-id> --json
|
|
169
|
+
craig fury status <run-id> --json
|
|
170
|
+
craig fury watch <run-id> [--after <cursor>] [--format jsonl]
|
|
171
|
+
craig fury cancel <run-id> --json
|
|
172
|
+
craig fury resume <run-id> --json
|
|
173
|
+
craig fury step complete --run <run-id> --step <step-id> [--output <json> | --output-file <path> | --stdin] --json
|
|
174
|
+
craig fury step fail --run <run-id> --step <step-id> --reason <text> --json
|
|
175
|
+
craig fury reviews list [--run <run-id>] [--state <state>] --json
|
|
176
|
+
craig fury review show|approve|reject|request-changes|resubmit <review-id> --json
|
|
177
|
+
|
|
165
178
|
craig command show <command-id> --json
|
|
166
179
|
craig command list [--task <task-id>] --json
|
|
167
180
|
craig command cancel <command-id> --json
|
|
@@ -198,7 +211,34 @@ Optional workspace-local config at `.craig/config.json`:
|
|
|
198
211
|
|
|
199
212
|
Feature previews are experimental, workspace-local, and off by default. They can also be toggled from Options > Feature Previews in the TUI.
|
|
200
213
|
|
|
201
|
-
|
|
214
|
+
An interactive Craig launched from inside an agent session will not implicitly attach to that agent's live workspace. Pass `--workspace-root <live-root>` to confirm that attachment, or create and pass a different directory for an isolated blank workspace. A client also refuses to replace a live PTY daemon that uses an incompatible protocol; exit the other Craig instance before restarting explicitly.
|
|
215
|
+
|
|
216
|
+
Event commands, new prompt dispatch creation, child-task creation, and fury validation/planning require the `agentOrchestration` preview. Preview-enabled agent PTYs receive an opaque workspace-local capability token scoped to their own task, the stable delegation command families, an expiry, and bounded child/depth/concurrency/prompt limits; only a non-authorizing reference is stored on the task. Fury operations reuse that scoped token according to each command's preview and recovery policy without persisting preview-only command families into the base capability record, so stable Craig can still read the workspace after preview use. `task children` and idempotent `task cancel-tree` remain available when the preview is disabled so existing lineage can be inspected and safely stopped. Craig may still maintain durable semantic events internally for stable daemon services such as pull request synchronization. Disabling the preview stops new dispatch and child creation but leaves command inspection, waiting, cancellation, and safe reconciliation available for existing durable work. Prompt delivery defaults to `when-ready`; `immediate` explicitly interrupts a busy target.
|
|
217
|
+
|
|
218
|
+
Fury definitions are strict, versioned YAML DAGs stored under `.craig/fury/`. `fury validate` checks the schema, limits, templates, references, dependencies, output schemas, and human-review checkpoints without mutating runtime state. `fury plan` resolves declared inputs, binds the graph to a planning task, persists an immutable content-hashed plan, and requests human sign-off.
|
|
219
|
+
|
|
220
|
+
Only a human can `fury approve` the exact plan hash. `fury run` accepts only an approved plan id, creates at most one run for that approval, and schedules every new task as a direct child of the planning task; graph dependencies never create visual grandchildren. Every agent step must explicitly call `fury step complete` or `fury step fail`; terminal silence is never success. Declared outputs are JSON-schema validated before dependents can run. Human-review steps remain blocked until an attributable human approval, while request-changes routes durable feedback to the declared task and requires an explicit resubmission. The sidebar shows one flat Fury attention row when plan or review approvals are waiting. The heartbeat reconciles interrupted dispatch, deadlines, missing agent sessions, and pending work. Retries, conditions, fan-out, and recursive Fury runs remain deferred.
|
|
221
|
+
|
|
222
|
+
```yaml
|
|
223
|
+
version: 1
|
|
224
|
+
name: inspect-and-review
|
|
225
|
+
limits: { max_concurrency: 2, max_tasks: 4, timeout: 2h }
|
|
226
|
+
inputs:
|
|
227
|
+
task_id: { type: string, required: true }
|
|
228
|
+
steps:
|
|
229
|
+
inspect:
|
|
230
|
+
task: "${{ inputs.task_id }}"
|
|
231
|
+
prompt: Inspect the task and submit structured findings.
|
|
232
|
+
output:
|
|
233
|
+
schema: { type: object, required: [findings] }
|
|
234
|
+
review:
|
|
235
|
+
needs: [inspect]
|
|
236
|
+
human_review:
|
|
237
|
+
title: Review findings
|
|
238
|
+
summary: Review the submitted findings before execution continues.
|
|
239
|
+
feedback_target: { task: "${{ steps.inspect.task_id }}" }
|
|
240
|
+
timeout: 1h
|
|
241
|
+
```
|
|
202
242
|
|
|
203
243
|
The TUI sidebar groups descendants beneath their root task while enforcing a single visual child level. Grandchildren and deeper descendants use the same indentation as direct children, and every task row continues to show only that task's agent-tab activity roll-up.
|
|
204
244
|
|