| name | pitchfork |
| description | Manage Gram's local development services (server, worker, dashboard, streams, etc.) with pitchfork — start/stop/restart daemons, check health, and query their logs. Activate whenever you need to bring up the local dev stack, restart a service after a code change, check whether a service is running or why it failed, or read/search service logs — even if the user just says "start the server", "is the worker running?", or "check the logs". |
Pitchfork — Local Dev Services
Pitchfork is a daemon manager. All Gram local services are declared in pitchfork.toml at the repo root and run under a pitchfork supervisor. Each daemon's run command is a mise task (mise run start:<name>) and its readiness is polled via mise run check:daemon --name <name>, so start only returns once the service is actually healthy.
How to interact with pitchfork (in order of preference)
- MCP server — if the
pitchfork MCP tools are available (pitchfork_status, pitchfork_logs, pitchfork_start, pitchfork_stop, pitchfork_restart), use them. They return structured output and skip pager/formatting concerns entirely.
- CLI — otherwise use the
pitchfork CLI directly (commands below).
- Mise tasks —
mise run start / mise run stop bring the whole stack up/down. Use these for whole-stack operations even when the MCP/CLI are available, because mise run start also starts the supervisor and cleans up stale daemon entries. If the pitchfork binary itself is missing, run mise install first (mise provides it).