send_to
Send text or a key through the shared delivery engine. send_to submits new messages. Key-Return supports pickers, menus, permission prompts, and recovery of this caller's exact typed draft on the same agent/session once the displayed…
Instructions
Send text or a key through the shared delivery engine. send_to submits new messages. Key-Return supports pickers, menus, permission prompts, and recovery of this caller's exact typed draft on the same agent/session once the displayed unambiguous reset time passes or new harness output confirms recovery; the old refusal may stay visible. Exact /usage, /usage-credits or /rate-limit-options navigation is also guarded. Read the pane and receipt first; never retype or repeat accepted input. Every receipt includes caller_agent_id (null when unknown). Workers with collab_path cannot address their own parent or ancestor leads in any mode; append to that collab file instead. Unknown callers remain allowed. Lead-originated and engine-internal pushes remain allowed. Targets may be one agent, structured agent targeting, or a raw surface in surface/command/key mode; for shell commands use mode:command. Text success requires a verified submit or new matching queue proof. Otherwise ok=false with submit_unverified retains pending verification and ownership for retries without retyping. Verified text success returns only ok, target identity, delivery_id, delivery_state, submitted, caller_agent_id, and queued_behind_turn when applicable. Key success returns its key verification fields. Pass verbose=true for full diagnostics; failures always retain them.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | agent | |
| text | No | Max 2-3 short lines. Longer payloads BREAK the receiving pane — write the payload to a file and send one line: `Read and follow <path>`. Text to send. Capped at 500 inline UTF-8 bytes by default. | |
| target | No | ||
| surface | No | ||
| verbose | No | Return the full legacy success receipt, including transport and timing diagnostics. Failures always keep full detail. | |
| agent_id | No | ||
| targeting | No | ||
| workspace | No | ||
| allow_busy | No | Deprecated no-op. Safety gates still refuse text at a picker/menu or permission prompt; use mode=key to drive those deliberately. | |
| background | No | ||
| chunk_size | No | ||
| press_enter | No | Press enter after sending text | |
| rename_to_task | No | ||
| codex_busy_mode | No | Busy Codex defaults to Return steering at the next tool call; queue opts into Tab after-turn delivery. Neither pending state is delivered. | |
| boot_prompt_path | No | ||
| allow_long_inline | No | Bypass the inline length and multi-paragraph safety guards for a deliberate raw send. Large allowed sends keep the existing chunked delivery behavior. | |
| boot_prompt_timeout_ms | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ok | Yes | ||
| key | No | ||
| model | No | ||
| title | No | ||
| typed | No | ||
| health | No | ||
| screen | No | ||
| status | No | ||
| command | No | ||
| surface | No | ||
| accepted | No | ||
| agent_id | No | ||
| delivery | No | ||
| receipts | No | ||
| terminal | No | ||
| delivered | No | ||
| agent_type | No | ||
| delivery_id | No | ||
| done_marker | No | ||
| report_path | No | ||
| retry_count | No | ||
| rpc_methods | No | ||
| duplicate_of | No | ||
| contract_path | No | ||
| delivery_state | No | ||
| registry_state | No | ||
| state_conflict | No | ||
| needs_attention | No | ||
| submit_evidence | No | ||
| submit_verified | No | ||
| attention_reason | No | ||
| submit_attempted | No | ||
| boot_prompt_bytes | No | ||
| submit_dispatched | No | ||
| boot_prompt_receipt | No | ||
| boot_prompt_warning | No | ||
| boot_prompt_delivered | No | ||
| coordination_footer_note | No | ||
| coordination_footer_bytes | No | ||
| boot_prompt_submit_verified | No | ||
| coordination_footer_delivered | No |