shelbi send
View as markdownshelbi send [OPTIONS] <ID> <MESSAGE>shelbi send injects a follow-up message into a running
workspace. The text is typed into the
workspace's live tmux pane as keystrokes, exactly as if you'd typed it there
yourself. Use it to nudge, correct, or add a note to an agent that's already
working, without interrupting or restarting the pane.
Shelbi delivers the text first, sends Enter as a separate key event, and then
waits for evidence that the pane accepted the submission. If the text remains
in the input box, Shelbi retries Enter once. A busy Claude pane may keep the
accepted text visible as queued input until its current turn ends. Every result
is recorded in ~/.shelbi/events.log as status=submitted, status=queued,
or status=stuck; a stuck result also makes the command fail instead of
silently waiting for a human keypress. Codex and custom runners still receive
the split text/Enter sequence, but Shelbi does not apply Claude's UI parser to
them. Their result is explicit status=unverified, which preserves delivery
without claiming runner-specific proof.
NAME is resolved against the project YAML's workspaces: block.
Because send writes keystrokes into a pane, the message content is
ephemeral. Shelbi records and verifies the delivery result, but the worker
does not semantically acknowledge or persist the message body. When you need a
message that survives, is logged, and is acked by the workspace, reach for
shelbi message instead. See the comparison there.
Arguments
| Argument | Type | Default | Description |
|---|---|---|---|
<ID> | string | — | Workspace name, resolved against workspaces: (required). |
<MESSAGE> | string | — | The message to type into the pane (required). |
Flags
| Flag | Type | Default | Description |
|---|---|---|---|
-p, --project <PROJECT> | string | env / cwd lookup | Project to operate on. Defaults to $SHELBI_PROJECT, or the registered project whose work_dir contains the current directory. |
Examples
Nudge the alpha workspace with a follow-up instruction:
shelbi send alpha "also update the changelog before you commit"See also
shelbi message— the durable, acked counterpart: appends a JSON record to a task's message log instead of typing into a pane.- Workspaces — what a workspace is and how the
workspaces:block names them.