Go CLI tool that maintains a developer identity TOML file and distributes it as context to AI coding tools.
Go, cobra, huh (charmbracelet), bubbletea, lipgloss, BurntSushi/toml
- No Viper - BurntSushi/toml handles the single TOML file directly
- Section markers (
<!-- devid:start -->/<!-- devid:end -->) for distribution targets - devid owns content between markers, leaves everything else untouched [private]section in identity.toml is excluded from all rendered output viaIdentity.WithoutPrivate()- Atomic writes via temp file + os.Rename to prevent corruption
- Queue-based sync: candidates are individual TOML files in
~/.devid/queue/
- Conventional commits, lowercase, imperative mood
- Explicit error handling, no silent swallows
- Golden file tests in
testdata/golden/for renderer output (run tests with-updateto regenerate) - Test injection via
config.SetHomeDir()anddistribute.SetRepoDetector()to avoid touching real filesystem
cmd/devid/- entrypointinternal/cmd/- cobra commandsinternal/config/- TOML schema and load/saveinternal/extract/- extraction prompts and TOML response parsinginternal/generate/- renderers for each distribution targetinternal/distribute/- file writing with marker managementinternal/sync/- candidate queue and diff/mergeinternal/review/- bubbletea TUI for approving/rejecting candidates