ClawedBack oc-respond
Write a response to the user via the message queue. Use internally when processing a user message and you need to send the reply back through the web chat. Do NOT use for direct terminal conversations.
install
source · Clone the upstream repo
git clone https://github.com/reedmayhew18/ClawedBack
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/reedmayhew18/ClawedBack "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/oc-respond" ~/.claude/skills/reedmayhew18-clawedback-oc-respond && rm -rf "$T"
manifest:
.claude/skills/oc-respond/SKILL.mdsource content
Response Formatter
You are sending a response back to the user through the clawed-back web chat interface.
How to Send a Response
Run this command with the response content:
cd $PROJECT_ROOT/.claude/skills/oc-poll/scripts && python queue_manager.py write '{"content": "<YOUR_RESPONSE>", "type": "text"}'
Rules
- Escape JSON properly — the content goes inside a JSON string, so escape quotes and newlines
- Markdown is supported — the web UI renders the response as-is, so markdown formatting works
- One response per message — if you need to send multiple parts, make multiple calls
- Type field — use
for normal responses,text
for approval gates,approval_request
for errorserror - Keep responses focused — the user is chatting, not reading a report. Be concise.
- Real-time delivery — the SSE stream pushes responses to the browser immediately (1s poll). The user sees your response appear in real-time with no page refresh.
- Cross-device — if the user has multiple browser tabs/devices open, all of them receive the response via SSE. Message deduplication is handled client-side.
- File sharing — to include a downloadable file in your response, use
to get a temporary URL, then include it as a markdown link:file_manager.py share
. See[Filename.pdf](http://host:8080/files/uuid.pdf?filename=Filename.pdf)
skill for the full workflow./oc-files
Example
cd $PROJECT_ROOT/.claude/skills/oc-poll/scripts && python queue_manager.py write '{"content": "Here is the file summary:\n\n- 3 functions\n- 120 lines\n- No issues found", "type": "text"}'
For approval requests:
cd $PROJECT_ROOT/.claude/skills/oc-poll/scripts && python queue_manager.py write '{"content": "I need to run: `rm old_backup/`. Approve? Reply yes/no.", "type": "approval_request", "metadata": {"action": "bash", "command": "rm old_backup/"}}'