CLI

Ask the spec author

A live Q&A channel with the spec agent — answers grounded in your actual spec.

The other c4s commands return raw entities. ask is different: it puts a question to the spec agent and gets back a written answer grounded in your spec. Use it when you're implementing against a spec and a detail is unclear — ask the agent rather than guessing.

Unlike every other c4s command, ask needs a running editor server: it's talking to the live agent, so an instance of npx @inharness-ai/claude4spec must be up for the project.

  1. Start the editor server

    In the spec's directory, run the editor. ask discovers its port from .claude4spec/config.json.

    $npx @inharness-ai/claude4spec
  2. Ask a question

    Pass your message and a context type. chat is the general-purpose channel.

    $c4s ask "What auth does the create-order endpoint require?" --ct chat
  3. Continue the thread

    Each answer comes back with a thread id. Pass it on the next call to keep the context instead of starting fresh.

    $c4s ask "And what does it return on conflict?" --thread <id>

Context types

A new thread needs a --ct (context type) so the agent knows what it's reasoning about:

--ct chatGeneral questions about the spec. The default starting point.
--ct briefQuestions scoped to an implementation brief. Requires --brief <path>.
--thread <id>Continue an existing thread. Use this instead of --ct after the first turn.
--brief <path>Path to the brief file, required when --ct brief.
--server <url>Talk to a specific server instead of discovering one from config — for a remote spec or a one-off port.

Patch threads can't be started from ask — you can only continue one that already exists with --thread <id>. If you pass both --project and --server, --server wins.