feat(seed): zero-touch boot from a personalized seed (provider keys → provider.env) #110
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "seed-zero-touch-provisioning"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Why
The live seed importer already ingests a full per-agent payload (
env,harness.toml,soul/, ssh keys) from the FAT32CLAWDIESEEDpartition. But it merged provider keys into the operator's~/.env, whilecolibri_daemonreads/usr/local/etc/colibri/provider.env(colibri_daemon_provider_envin rc.conf). So a personalized stick carrying real provider keys never reached the daemon, and no agent auto-spawned — onboarding still needed the Join Hive click + Vaultwarden round-trip.What
Route the active agent's non-
BW_*keys intoprovider.env(0600 root) in addition to~/.env.The boot ordering already makes this zero-touch:
clawdie_live_seedruns as root,BEFORE: LOGINcolibri_daemonrunsREQUIRE: LOGIN— strictly afterSo the daemon starts after the keys land, finds
DEEPSEEK_API_KEY, and auto-spawns the agent (COLIBRI_AUTOSPAWN_PI=YES) on first boot — no click, no vault round-trip, no typing.BW_*still route to~/.config/vault-bootstrap.envfor operators who prefer the vault-fetch path.This makes a personalized seed the onboarding primitive: the image stays generic and publishable, the FAT32 seed is the (offline, secret-bearing) personalization layer. It supersedes the earlier xdg-autostart "delete the click" plan — removes the click for free without a first-login sentinel or a first-boot network dependency.
Changes
live/operator-session/clawdie-live-seed—SEED_PROVIDER_ENVvar + merge active-agent provider keys into itlive/operator-session/clawdie-live-seed.README.txt— document the routing + zero-touch behaviorlive/operator-session/START-HERE.txt— "seeded = nothing to do" notedocs/ONBOARDING-SIMPLIFICATION.md— record the implemented direct-keys pathTest
Exercised the importer offline (
CLAWDIE_SEED_TEST=1, fake mount): provider keys land in bothprovider.envand~/.env(0600),BW_*route to vault-bootstrap, soul staged, active-agent recorded.sh -nclean; markdown format gate green.🤖 Generated with Claude Code