Extend devlog init with an interactive onboarding flow for first-time setup.
Context:
- Current init creates the base config but does not guide the user through setup
- DevLog has several useful defaults that are easier to configure once during onboarding
- An interactive mode would improve first-run UX without removing the ability to script initialization
Expected behavior:
- Add an interactive mode, preferably via devlog init
--interactive
- Prompt the user for initial configuration values such as:
- default project
- default summary style
- default language
- whether AI summaries should be enabled
- If AI is enabled, prompt for:
- provider
- model
- API key environment variable name
Important behavior:
- Do not prompt for or persist the actual API key secret value in config
- Instead, store the environment variable name and print follow-up instructions for exporting the key in the shell
Related improvements:
- Make init truly idempotent
- Create the full directory structure:
~/.devlog/
~/.devlog/entries/
~/.devlog/summaries/
~/.devlog/templates/
- Avoid overwriting existing config unless explicitly confirmed or forced
Implementation notes:
- Keep non-interactive
devlog init available for automation
- Interactive mode should use existing config defaults as suggested values where appropriate
- At the end of setup, print a short “next steps” guide
Acceptance criteria:
devlog init --interactive exists and appears in help output
- The user can complete a guided setup flow
- Chosen values are saved to
~/.devlog/config.json
- The full directory structure is created if missing
- Existing config is not overwritten silently
- The command prints clear next steps after initialization
Extend
devlog initwith an interactive onboarding flow for first-time setup.Context:
Expected behavior:
--interactiveImportant behavior:
Related improvements:
~/.devlog/~/.devlog/entries/~/.devlog/summaries/~/.devlog/templates/Implementation notes:
devlog initavailable for automationAcceptance criteria:
devlog init --interactiveexists and appears in help output~/.devlog/config.json