Files
nanoclaw/scripts
gavrielc 3eca5588f9 feat(skills): inputs option — fully programmatic apply, no prompter needed
ApplyOptions gains `inputs` (prompt var → value), checked before the prompter.
Pass every answer and the whole skill runs through with no human interaction and
no prompter; the prompter (now optional) only fills prompts `inputs` doesn't
cover. A prompt with neither still defers (headless rebuild, unchanged).

- ApplyResult gains `operatorMessages`: every `nc:operator` body is collected
  (and still rendered live when an interactive prompter is present), so a
  programmatic caller relays/outputs the human steps instead of them blocking.
- `fullyApplied(res)` — the check a programmatic caller makes: nothing deferred
  for a missing input, nothing bounced to an agent.

Proof: the real add-slack skill applied from `inputs` alone (no prompter) →
fullyApplied true, 0 deferred / 0 agentTasks, the captured DM channel flows into
all 5 ncl commands, and both operator walkthroughs are collected for relay.

Tests: run-through-from-inputs, missing-input-defers, inputs-win-over-prompter.
604 pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 16:56:32 +03:00
..
2026-05-08 15:56:09 +03:00