clideck ask lets one agent session send a question to another active session and wait for the answer. The response prints to stdout so the caller can use it immediately.
This is designed for agent-to-agent communication — one LLM agent asks another for help without you in the loop.
Discovery
Before asking, discover who’s available:--json for machine-readable output.
Same-Project Ask
When the caller and target are in the same project, use the session name directly:Cross-Project Ask
To reach a session in a different project, use the@project/session format:
Quoting Targets with Spaces
If the session name or project name contains spaces, quote the entire target:--session, the quotes go around the value:
Piping Input
You can pipe a file or command output as the message via stdin:--message flag is not needed.
Busy Target Behavior
clideck ask only sends to idle sessions. If the target is currently working, the request fails immediately with:
Timeout
The target is another LLM agent. It may need minutes to read files, think, use tools, and compose an answer.
Accepts durations like
30s, 10m, 1h.
While waiting, clideck ask prints progress updates to stderr every 15 seconds showing the target’s status and elapsed time. Use --no-progress to suppress these.
How It Works
- The caller agent runs
clideck askfrom its terminal - CliDeck resolves the target session (same-project or cross-project)
- If the target is busy, the request fails immediately
- CliDeck injects the message into the target’s terminal as a bracketed paste, prefixed with
[CliDeck ask from <caller>] - CliDeck waits for the target agent to go from working back to idle
- The target’s response is captured from the transcript and printed to the caller’s stdout
Full CLI Reference
clideck ask requires CLIDECK_SESSION_ID to be set, which CliDeck sets automatically for sessions launched from the UI. It cannot be used from a terminal outside CliDeck.