Pizza Bot
github.com/pizza-bot-app/pizza-bot- Category
- AI Agents
- Rank
- No. 1100Tools index
Previous survey · No. 1093 ·
- Pricing
- Open Source
- Type
- TOOL
- Use case
- Workflow Automation
- GitHub
- 531 stars
- Latest release
- v1.2.0
- Date
About
Pizza Bot is a local-first inbox for long-running AI agents, built on DeepAgents and LangGraph. It lets users start or schedule background agent tasks and collects completed runs in an Unread queue so work doesn't require constant supervision.
What it does
A desktop, browser and terminal app for handing work to an AI assistant and walking away. One server process does the thinking and keeps state on your machine; the Electron app, web page and command line are thin clients talking to it over HTTP with server-sent event streams. Closing a window does not stop work in progress. Finished results land in one list, and approval requests land in a separate Action list. Skills you write become specialist helpers the main assistant can delegate to, each limited to the tools it declares.
Why it's ranked here
This is a serious, Apache 2.0 codebase from a team at Amazon, and the engineering shows in the details rather than the pitch. It ships signed installers for macOS, Windows installers and Linux packages, supports seven model providers including Ollama for local models, and documents its architecture boundaries with conformance tests pinning upstream library behavior. The security defaults are conservative: the server listens only on the local machine, and folder access is opt-in and read-only unless you allow writes.
What's good
Run limits are concrete: the main assistant gets 40 model calls and 100 tool calls per run by default, each delegated helper gets 40 and 150, and hitting the tool limit refuses extra calls without failing the run. Folder grants reject path traversal and symlink escapes, and removing a grant revokes access immediately, even for agents already built. Secrets entered in the desktop app are protected by Electron's secure storage, while server configs store only references to environment variables. Approval gates are declared per tool in a skill's frontmatter, with approve, edit and reject choices.
Tradeoffs
It requires Node.js 24 or newer, and building from source runs a browser download for its bundled Playwright plugin on first start. Linux packages are not signed. Plugins and MCP servers run with your full user permissions, and the project says plainly to install only sources you trust. The runtime is built tightly around the DeepAgents and LangGraph stack by design, so swapping the agent engine is not an option. A per-step task planner is deliberately left out, which may surprise users expecting one.
How to use it well
Suited to someone who wants to fire off research or automation jobs, close the window, and review results plus pending approvals later. Start with the desktop installer, pick a provider under Settings, then grant only the folders a job needs. Put approval gates on any tool that publishes or deletes. For a shared or headless setup, run the standalone backend with authentication and point the CLI or browser at it. Remember the server process must stay running for work to continue.
Technical notes+
Monorepo with npm workspaces and Turbo (package.json). docs/ARCHITECTURE.md fixes the layering: packages/core imports no graph engine, only @langchain/core types, and runtime-langgraph is the sole production package importing deepagents, enforced by an eslint rule. packages/runtime-langgraph/src/index.ts defines AGENT_RUN_LIMITS (40 model calls each for orchestrator and subagent) and runLimitMiddleware, which uses exitBehavior "continue" for the tool limiter so excess calls are refused in place; -1 disables it. The QuickJS code interpreter gets an 8,000 character result cap and a 120 second timeout, and MCP tools are withheld from it so sandboxed code cannot bypass interruptOn approvals. apps/api-server/src/agent-host.ts redacts MCP env and header values before listing servers and falls back to a Bedrock Claude model when none is configured.
Observed
- License
- Apache-2.0 (LICENSE, package.json)
- Language
- TypeScript on Node.js 24 or newer
- Interfaces
- Electron desktop app, browser web app, terminal CLI, standalone HTTP/SSE backend
- Platforms
- macOS (Apple silicon, Intel), Windows x64, Linux x64 and arm64
- Packaging
- Signed and notarized macOS .dmg/.zip; Windows setup.exe; unsigned Linux .deb/.rpm with SHA256SUMS
- Model providers
- Amazon Bedrock, Anthropic, Google Gemini, OpenAI, OpenRouter, Requesty, Ollama
- Extensibility
- MCP servers, Agent Skills, ZIP plugin bundles (docs/EXTENDING.md)
- Network default
- api-server binds to loopback; non-loopback binding requires authentication and an origin allowlist
Read from README.md, package.json, docs/ARCHITECTURE.md, docs/EXTENDING.md, docs/RUNNING.md, packages/core/src/index.ts, packages/runtime-langgraph/src/index.ts, packages/inference-providers/src/index.ts, packages/plugin-api/src/index.ts, apps/api-server/src/agent-host.ts, LICENSE, ROADMAP.md.
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.