# Changelog
All notable changes to devist are documented here.
The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/).
## [0.3.0] - 2026-05-02
### Changed (breaking)
- Removed `devist brief`, `devist scan`, `devist explain`, `devist watch`
CLI commands. The underlying scanner/git helpers remain as internal
libraries for the worker.
### Added
- `devist worker` background daemon that observes a parent folder of
projects and records every file event into a local SQLite store
(`~/.devist/worker/worker.db`).
- `worker start` (with first-run setup), `worker stop`, `worker status`,
`worker watch` (live tail), `worker config show|get|set|path`.
- AI advice generation (Phase 2):
- Idle-burst trigger: after `advice_idle_seconds` of quiet on a
project, the daemon spawns the `claude` CLI with the changed
snippets and recent mem0 memories to extract facts + advice.
- mem0 Cloud integration (`api.mem0.ai`) for long-term semantic
memory of facts above `mem0_confidence_threshold`.
- 4-tier guard against runaway calls: `advice_enabled` kill switch,
`advice_min_batch`, per-project `advice_max_per_hour`, global
`mem0_max_writes_per_hour` sliding-window limiters.
- `worker advice [--project N] [--limit N]` lists generated advice.
- `worker memory search <query>` for ad-hoc mem0 lookup.
- `devist doctor` now also checks the `claude` CLI.
### Notes
- The daemon writes its log to `~/.devist/worker/worker.log` and PID to
`worker.pid`. Restart after changing config (`worker stop && start`).
- mem0 + Claude integration is opt-in: without `mem0_api_key` the worker
silently skips advice generation; the SQLite event log still works.
## [0.2.0] - 2026-05-02
### Changed (breaking)
- Renamed CLI command `devist projects` → `devist project`
(e.g. `devist project list`, `devist project forget <name>`).
### Added
- `devist start <name> --dev` now runs the template's `install` command
(e.g. `pnpm install`) automatically when `package.json` exists but
`node_modules` is missing, before launching the dev server.
- Release workflow publishes GitHub Releases directly (no draft step).
## [0.1.1] - 2026-05-02
### Fixed
- Release workflow now downloads SHA files via GitHub API,
supporting draft releases.
- `cargo publish` step is idempotent — re-running on an existing
version is treated as a non-fatal no-op.
## [0.1.0] - 2026-05-02
Initial beta release. Phase 1 through Phase 4 complete.
### Added
- Core CLI with 12 commands: `setup`, `doctor`, `about`, `template` (list/add/sync/remove),
`projects` (list/forget), `init`, `start`, `stop`, `brief`, `scan`, `explain`, `watch`.
- Template system with `devist.toml` manifest, variable substitution via
`*.tmpl` files, automatic discovery of single- and multi-template repos.
- Lazy backend management: only one project's `supabase`/`docker-compose`
stack runs at a time. `start` automatically stops any other active
project's backend.
- Code comprehension commands (`brief`, `scan`, `explain`, `watch`) for
understanding AI-assisted codebases.
- Workspace at `~/.devist/` with `config.toml`, `registry.toml`, `state.toml`,
and template cache.
- 7 official templates: `react-supabase`, `react-native-supabase`,
`flutter-supabase`, `fastapi-postgres`, `nestjs-postgres`, `rust-axum`,
`wordpress`.
### Notes
- Beta — APIs and template manifest schema may change before v1.0.
- Public Homebrew tap and crates.io publish targeted for v1.0.
[Unreleased]: https://github.com/WebchemistCorp/devist/compare/v0.3.0...HEAD
[0.3.0]: https://github.com/WebchemistCorp/devist/releases/tag/v0.3.0
[0.2.0]: https://github.com/WebchemistCorp/devist/releases/tag/v0.2.0
[0.1.1]: https://github.com/WebchemistCorp/devist/releases/tag/v0.1.1
[0.1.0]: https://github.com/WebchemistCorp/devist/releases/tag/v0.1.0