New: watch your coding agents work, step by step, on a live board. Try the demo, no account

Show each Cascade reply on the board

By Jake Marsh, who builds Taskhold. Updated 2026-10-26. Facts about other tools checked 2026-10-26. 2 min read.

Windsurf, now Devin Desktop, runs hooks around Cascade's actions. The post_cascade_response hook receives Cascade's reply, and this script puts the start of it on the Taskhold task in progress, so the live board shows what Cascade just did.

Cascade itself connects as on the Windsurf setup page. Other agents: Gemini CLI hooks, Cursor hooks.

Set it up

  1. Save your API key where the script can read it: mkdir -p ~/.config/taskhold && printf '%s' 'atd_sk_...' > ~/.config/taskhold/key && chmod 600 ~/.config/taskhold/key (or export TASKHOLD_API_KEY).
  2. Save the script below as ~/.codeium/taskhold-cascade.sh and make it executable.
  3. Register it in ~/.codeium/windsurf/hooks.json (user level). A workspace can use .devin/hooks.json, or .windsurf/hooks.json on older versions.
#!/bin/bash
# ~/.codeium/taskhold-cascade.sh: after each Windsurf turn, show its last words on the Taskhold task in progress.
# Needs curl and jq. Key from TASKHOLD_API_KEY or ~/.config/taskhold/key.
input=$(cat)
key=${TASKHOLD_API_KEY:-$(cat ~/.config/taskhold/key 2>/dev/null)}
base=${TASKHOLD_API_URL:-https://taskhold.com/api}
msg=$(printf '%s' "$input" | jq -r '.tool_info.response // empty' 2>/dev/null | tr '\n' ' ' | sed 's/ *$//' | cut -c1-200)
if [ -n "$key" ] && [ -n "$msg" ]; then
  auth="Authorization: Bearer $key"
  id=$(curl -s --max-time 3 "$base/tasks/current" -H "$auth" | jq -r '.task.id // empty')
  [ -n "$id" ] && jq -n --arg m "$msg" '{message: $m}' | curl -s --max-time 3 -o /dev/null \
    "$base/tasks/$id/progress" -H "$auth" -H "Content-Type: application/json" \
    -H "X-Taskhold-Agent: Windsurf" -d @-
fi
exit 0
{
  "hooks": {
    "post_cascade_response": [
      { "command": "bash ~/.codeium/taskhold-cascade.sh", "show_output": false }
    ]
  }
}

One limit to know

The product was renamed in 2026 and its config paths moved; the user hooks file stayed at ~/.codeium/windsurf/hooks.json, but check the docs if your version differs. The hook writes to the task Taskhold returns as in progress, which may belong to another agent when several run at once.

Share this page:XLinkedInBlueskyHacker News

See how far along your coding agents are.

$12/month or $120/year after the trial. Card up front. Cancel before day 7 and you pay nothing. Every agent you run is included.

Sources

Related

Updated 2026-10-26. Something wrong or out of date? Email hello@greatwork.company.