Tiller — Communication skill for Claude Code
Local daemon + Claude Code mods for spawning, messaging and controlling agent sessions.
How to install Tiller
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open swicken/tiller and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
What Tiller does
Local daemon + Claude Code mods for spawning, messaging and controlling agent sessions.
Alternatives in Communication
- Gtm Strategy — Create GTM strategy with channels, messaging, and launch timeline 7.8k ★
- Lark Coding Agent Bridge — Bot that bridges Feishu/Lark messenger with a local Claude Code or Codex CLI 2.4k ★
- Hermes Bot Mode — Bot Mode for the Hermes desktop: a roster of named agents with their own chats, avatars, routines, and bot-to 650 ★
README
tiller
Tiller is a local daemon that runs several agent CLI sessions (Claude Code or Pi) as child processes, called nodes, and lets one of them, the orchestrator, spawn, message and watch the others. A root node (one with no parent) is an orchestrator; a node it spawns is a worker. The main front end is a native macOS app built with Tauri; the same UI runs in a browser. A Claude Code mod or Pi extension loaded into each agent node delivers messages and reports lifecycle events.
Requirements
macOS with the Xcode Command Line Tools (`xcode-select --install`); the native app is built with Tauri, which needs them.
Node 24 and your chosen agent CLI on your PATH: `claude` (Claude Code), or compatible `pi` (`@earendil-works/pi-coding-agent` 1.2.x). See [docs/harnesses.md](docs/harnesses.md) for Pi setup and limitations.
Rust, installed through Homebrew's rustup:
brew install rustup /opt/homebrew/opt/rustup/bin/rustup-init -yHomebrew's rustup is keg-only, so `cargo` is not on your PATH by default. `bin/tl-app` adds `/opt/homebrew/opt/rustup/bin` itself; to run `npm run app:build` or `cargo` from your own shell, add that directory to your PATH (for example `export PATH=/opt/homebrew/opt/rustup/bin:$PATH` in `~/.zshrc`).
Optional: `terminal-notifier` (`brew install terminal-notifier`), so clicking a macOS notification selects the node.
Install
npm install && npm link
npm run app:build
`npm install && npm link` puts `tl` (the client), `tld` (the daemon in the foreground) and `tl-app` (the native app) on your PATH. `npm run app:build` builds the browser UI and then the unsigned app, `src-tauri/target/release/bundle/macos/Tiller.app`; the first build compiles the Rust dependencies and takes a few minutes. Without a built app, `tl` op
Related Skills
Pokegents
Pokegents is a local, Pokémon-inspired dashboard that turns Claude Code and Codex sessions into a local team d
Codex Peer Bridge
Local Unix-socket messaging bridge between Codex sessions and Claude Code peers
Disco Demon
Discord + Claude Code daemon with persistent sessions, image support, and more.
Claude Persist
Persistent Claude Code sessions for VS Code / code-server — a server-side daemon + chat extension that survive
Session Glue
Reset the chat, not the work — zero-dependency, repo-local session handoffs for coding agents. Freeze a bloate
Cfn Loop Task
Execute CFN Loop in Task Mode with direct agent spawning (visible in main chat)
Related Agents
Langertha Test Writer
Write Langertha tests (Test2::Bundle::More) — regression tests, TDD red phase, coverage for a new engine/role/
Local Orchestrator
Runs one assigned slice of work that genuinely splits into independent parallel parts, by dispatching non-spaw
Chat Tracker
Read job-related conversations from WhatsApp Web and LinkedIn messaging by driving the user's logged-in Chrome