mirror of
https://github.com/block/buzz.git
synced 2026-08-18 06:50:31 +02:00
sprout-agent personas all failed because the desktop never injected SPROUT_AGENT_PROVIDER or model env vars at spawn time, and the goose config fallback only understood the old flat format. Extract goose config compat into an isolated submodule, add support for the newer active_provider + nested providers format, and wire a normalized config schema so Sprout injects the right env vars for any runtime. Key changes: - PersonaRecord.provider captures the LLM provider independently - SPROUT_AGENT_MODEL works as a universal model fallback - provider_env_var and model_env_var always injected at spawn time - Pack import now stores resolved env vars (was always empty) - runtime_env_vars() emits runtime-appropriate vars (SPROUT_AGENT_* vs GOOSE_*)
Sprout
Desktop chat shell with:
- Tauri + React + TypeScript + Vite
- Tailwind CSS
- shadcn/ui-ready shared components
- Biome (lint/format/check)
- Feature-driven frontend structure
Scripts
pnpm dev- run the web frontendpnpm tauri dev- run the desktop apppnpm build- typecheck and build frontendpnpm typecheck- TypeScript checkspnpm lint- Biome lintpnpm format- Biome format (write)pnpm check- Biome check
Structure
src/shared- reusable app-wide code (ui,lib,styles)src/features- feature modules (vertical slices)src/app- top-level app composition