joelhooks

Pi Discord Threads — Communication skill for Claude Code

Communication community

🧵 Portable Discord thread bridge for durable Pi coding-agent sessions.

How to install Pi Discord Threads

This entry records only its repository, not the path inside it, so there is no exact command to give. Open joelhooks/pi-discord-threads and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Pi Discord Threads does

🧵 Portable Discord thread bridge for durable Pi coding-agent sessions.

Alternatives in Communication

  • Lark Coding Agent Bridge — Bot that bridges Feishu/Lark messenger with a local Claude Code or Codex CLI 2.4k ★
  • Claude Skill Social Post — A Claude Code skill by Hao (駱君昊) that learns your Facebook voice and auto-posts to FB / IG / Threads / X with 625 ★
  • Claude To IM — Host-agnostic bridge connecting Claude Code SDK to IM platforms (Telegram, Discord, Feishu) 432 ★

README

pi-discord-threads

A local Discord bot that lets Joel talk to Pi coding-agent sessions from Discord threads.

ELI5: Discord is the remote control. Pi is the worker. This bridge keeps a thread mapped to a real Pi session file so the conversation can continue later instead of becoming a disposable chat blob.

What you can do right now

  • Start a Pi session from Discord with !pi or /pi ask.
  • Start a Claude Code session from Discord with /claude ask.
  • Keep talking in the created Discord thread to continue the same Pi session.
  • Point a thread at a local workspace with /pi workspace or !pi workspace.
  • Stop/escape active runs with /pi esc, /pi abort, !pi esc, or !pi abort.
  • Attach files; allowed files are saved locally and passed to Pi as paths.
  • Capture explicit URLs with /pi ingest, /pi capture, or !pi ingest.
  • Run as a macOS user LaunchAgent for long-lived local use.
  • Snapshot the current built release with release snapshot and list snapshots with release list.

Requirements

  • Node.js >=22.19.0
  • Local Pi configured and usable from this machine
  • Local secrets daemon with a Discord bot token
  • A Discord bot with:
    • Message Content Intent
    • applications.commands scope
    • read/send message permissions
    • public thread creation permission

Optional but recommended:

  • an allowed-user secret so only Joel can use the bot
  • a config file at ~/.config/pi-discord-threads/config.json

Fast setup

npm install
npm run build
npm run start -- init-config
npm run start -- doctor

Start in the foreground:

npm run start -- start --config ~/.config/pi-discord-threads/config.json

The default config path is:

~/.config/pi-discord-threads/config.json

See `config.example.json` for the full config shape.

Run it as a macOS daemon

Use the LaunchAgent for normal local operation. Do not use random `nohup` shells unless you enjoy future pain.

The LaunchAgent prefers `config.dataDir