Pizza Bot OSS

Pizza Bot maakt gebruik van een stateful DeepAgents/LangGraph runtime met dezelfde React-ervaring in Electron en de browser. De desktop-app, web-app en terminal CLI communiceren allemaal met de api-server via HTTP/SSE.

Pizza Bot is ontwikkeld bij Amazon en is uitgebracht onder de Apache 2.0-licentie.

Waarom Pizza Bot?

  • Asynchroon werken: Wissel tussen conversaties zonder dat de actieve runs worden gestopt.
  • Efficiënte wachtrijen: Voltooid werk komt terecht in Unread; duurzame goedkeuringsverzoeken landen in Action.
  • Organisatie van conversaties: Groepeer threads in mappen zonder dat overeenkomend werk wordt verborgen uit de globale Unread en Action wachtrijen.
  • Hervatten van echt werk: 'Checkpointed' runs overleven het verbreken van de verbinding met de client, en cron- of webhook-triggers kunnen werk starten zonder dat er een open conversatie is.
  • Delegeren aan specialisten: 'Skills' worden tool-scoped subagents waarvan de voortgang zichtbaar is in het activiteitenpaneel.
  • Eigen modelprovider: Ondersteuning voor Amazon Bedrock, Anthropic, Google Gemini, OpenAI, OpenRouter en Ollama.
  • Controle over belangrijke acties: Human-in-the-loop goedkeuringen, langetermijngeheugen, bestandsbijlagen en desktopmeldingen zijn ingebouwd in de workflow.
  • Expliciete lokale toegang: Voeg individuele lees- of schrijfmappen toe onder Settings > Files; Pizza Bot heeft standaard geen toegang tot de home-directory.

Downloaden en Installatie

Installers voor macOS (Intel en Apple silicon), Windows en Linux (x64 en arm64) zijn bijgevoegd bij elke release, inclusief SHA256SUMS om de download te controleren. De macOS-builds zijn ondertekend en genoteerd; de Linux-pakketten zijn niet ondertekend, dus verifieer deze aan de hand van de checksums.

Snelstart

Node.js 24 of nieuwer is vereist.

npm install
npm run build
npm run dev

npm run dev start de Vite-frontend en de Electron-desktop shell. De shell maakt een eigen api-server aan en houdt deze in de gaten, wat overeenkomt met het procesmodel van de gepackaged applicatie. Configureer een model onder Settings > Providers voordat je een live run start.

Manieren om te draaien

ErvaringBest voorStart hier
Electron desktopLokale inbox met een ingebedde backendnpm run dev
BrowserWebontwikkeling of statische implementatieBrowser development
Terminal CLIScripts, terminals en remote backendsCLI
Standalone backendRemote Electron, browsers, containers of Linux-servicesBackend guide

Backend gids

Een draaiende api-server heeft toegang nodig tot ten minste één modelprovider; HTTP-clients hebben dit niet nodig. Configureer Amazon Bedrock, Anthropic, Google Gemini, OpenAI, OpenRouter of Ollama in Settings > Providers.

Bedrock accepteert een AWS-profiel, AWS-toegangssleutels of een Bedrock-API-sleutel, met een optionele region-override; anders wordt AWS_REGION of us-west-2 gebruikt. Bedrock combineert zijn native catalogus met de regionale Mantle-catalogus en routeert modellen via Converse, OpenAI Responses, Chat Completions of Anthropic Messages, afhankelijk van hun geadverteerde API-familie.

OpenAI en Anthropic accepteren ook aangepaste basis-URL's voor compatibele endpoints; OpenAI kan expliciet Responses of Chat Completions selecteren, en Anthropic ondersteunt x-api-key of bearer-authenticatie. Selecteer een model met PIZZA_MODEL=<provider>:<id>. De desktop-app beschermt ingevoerde geheimen met Electron safeStorage; serverconfiguraties bewaren alleen referenties naar omgevingsvariabelen.

Uitbreidingen

Voeg MCP-servers toe via de UI of via <PIZZADATAROOT>/.mcp.json. Voeg Agent Skills toe onder <PIZZADATAROOT>/skills, of installeer plugins die MCP-servers en skills samen verpakken. Skills worden beschikbaar nadat hun gedeclareerde tools zijn ingeschakeld en verbonden.

Een aangepaste skill kan een ingebouwde ('Built-in') of Plugin-skill met dezelfde id vervangen zonder het origineel te wijzigen; het verwijderen van de aanpassing brengt de oorspronkelijke versie weer terug. De ingebouwde Pizza Bot Guide kan functies uitleggen, workflows suggereren, helpen bij de installatie en verwijzen naar de projectdocumentatie.

Projectstructuur

  • apps/: api-server (Hono) | cli | desktop-shell (Electron) | web (React)
  • packages/: core | runtime-langgraph | inference-providers | plugin-api | plugin-sdk | storage | logging
  • plugins/: Gebundelde Plugin-pakketten en hun packaging workspace
  • skills/: Optionele ingebouwde Agent Skills
  • tests/: LangGraph-compatibiliteit en protocol-conformiteit

De productie-graph-engine is geïsoleerd in packages/runtime-langgraph; front-ends consumeren protocol-projecties in plaats van runtime- of model-bindings te importeren.

Documentatie

  • Running: Desktop, browser, CLI en package-commando's.
  • Extending: MCP-servers, skills en plugins.
  • Architecture: Systeemgrenzen, event-model, persistentie, transporten en ontwerpbeslissingen.
  • Standalone backend: Authenticatie, remote Electron, statische browser-implementatie, Docker, Compose en Kubernetes.
  • Contributing: Ontwikkelingsopstelling, CI-checks, worktrees, releases en layering-regels.
  • Security: Netwerkstandaarden, inloggegevens, lokale data en plugin-vertrouwen.
  • Logging: Diagnostiek, retentie, weergave en redactie.
  • Roadmap: Verkennende richtingen en de principes die worden gebruikt om deze te evalueren.
  • Code of Conduct: Verwachtingen voor participatie in de community.

Beveiliging en Data

  • Standaard local-first: De api-server bindt aan 127.0.0.1; binding aan een non-loopback adres vereist authenticatie en een expliciete origin-allowlist.
  • Lokale applicatiestatus: Threads, checkpoints, herinneringen, bijlagen en logs bevinden zich onder <PIZZADATAROOT> (standaard ~/.pizza-bot-oss). Model- en tool-aanvragen gaan naar de door jou geconfigureerde providers en endpoints.
  • Expliciete lokale mappen: Elke map die wordt toegevoegd onder Settings > Files is alleen-lezen, tenzij je schrijfrechten toestaat. Remote grants benoemen paden op de backend-host.
  • Vertrouwen in MCP-servers en plugins: Hun commando's en materializers kunnen worden uitgevoerd met de rechten van jouw gebruikersaccount. Installeer alleen bronnen die je vertrouwt.

Bijdragers

Pizza Bot is ontworpen, gebouwd en openbaar gemaakt door zijn Executive Chefs en Sous Chefs. Daarnaast is Pizza Bot gevormd door meer dan 2.000 gebruikers bij Amazon die eerdere versies testten en feedback deelden uit praktijkervaringen.

Licentie

Apache-2.0. Zie NOTICE voor attributie-meldingen.