Repository navigation
v0.12.0 moves bstack from opencode to Pi. The lead, build, judge and council roles, the desks, and the headless handoff and autopilot stages now all run on Pi. Claude runs on your Claude plan through pi-claude-bridge, and a rate-limited run falls back to the next model. opencode still works if you set [bstack] harness = "opencode".
Highlights
- Pi harness and profile.
bercail updaterenders a Pi profile for each bstack role under~/.local/share/bercail/pi/. Pi is now the default harness (#38, #44). - Claude plan via pi-claude-bridge, with model fallback. Claude roles use your Claude plan, through your Claude Code login and
npm:pi-claude-bridge. Once Pi's own retries give up on a rate limit, the run moves to the next model in[bstack] fallback(default claude → gpt → grok).bercail bstack statusandbercail doctorreport the bridge, the Claude login and the fallback order (#41). - Pi desks that come back after a reboot. A desk runs the lead from
pi/lead.json, records its Pi session id, and is resumed with that session after a reboot (#42). - Headless handoff and autopilot on Pi. The
bstackandautopilothandoff stages runpi -pwith a session id bercail picks, and--resumecontinues it. A guard extension blocks force-pushes,--no-verifyandgh pr mergeeverywhere. It blocks commits and pushes in headless runs, except that autopilot may commit and push to its PR branch (never main or master) (#44). /readyverifies with a real run before review, instead of convening the council (#37).- Git backend per repo. Each repo uses
gh,gtororigin, and stacks branches with that backend's own commands (#39). - Readable ids. Every bd and desk id now comes with the issue's short title: desk labels, the first prompt, the desk record, notify messages and webhooks (#43).
Upgrade notes
- Run
bercail update, thenbercail bstack setupif Pi or the bridge is missing.bercail doctorshows what's left. - With bstack on Pi, an
[agent] command = "opencode"in your config is migrated to"pi"on update. - Claude goes through pi-claude-bridge and your Claude Code login (
claude auth login), not Pi's/login anthropicor per-token Extra Usage. Sign in to GPT and Grok inside Pi with/login openaiand/login xai. - Headless sessions started on opencode (
ses_…ids) can't be resumed on Pi. Start a fresh run instead. - To stay on opencode, set
[bstack] harness = "opencode".
Pull requests
- #37 bstack: /ready verifies with a real run before review
- #38 bstack: add a Pi harness profile
- #39 git: choose gh, gt or origin per repo and stack with each
- #41 bstack: run Claude on the plan through pi-claude-bridge and fall back on rate limits
- #42 bstack: desks run Pi and come back after a reboot
- #43 Show the issue title next to every bd and desk id
- #44 Headless handoff runs on Pi
- #45 Release v0.12.0
Full Changelog: v0.11.0...v0.12.0