|
| 1 | +# Changelog |
| 2 | + |
| 3 | +## [0.5.0] - 2026-02-04 |
| 4 | + |
| 5 | +### Added |
| 6 | +- **Multi-project support**: manage multiple repos from a single crabcode install |
| 7 | + - `crab @alias <cmd>` — run any command against a specific project |
| 8 | + - `crab projects` — list all registered projects with tmux status |
| 9 | + - `crab default [alias]` — show or set the default project |
| 10 | + - `crab init` now asks for a project alias and writes to `~/.crabcode/projects/<alias>.yaml` |
| 11 | +- **cwd-based project detection**: commands like `crab restart` auto-detect which project you're in based on your current directory |
| 12 | +- **Per-project WIP isolation**: WIP states stored under `~/.crabcode/wip/<alias>/` |
| 13 | +- **Legacy migration**: one-time prompt to migrate `~/.crabcode/config.yaml` to the new per-project format with automatic tmux session rename |
| 14 | +- Project context shown in `config`, `doctor`, `status`, and `help` output |
| 15 | + |
| 16 | +### Changed |
| 17 | +- Config structure: project configs now live in `~/.crabcode/projects/<alias>.yaml` |
| 18 | +- Global config (`~/.crabcode/config.yaml`) now only stores `default_project` |
| 19 | +- Templates use `ALIAS_PLACEHOLDER` for `session_name` (was hardcoded `crab`) |
| 20 | +- Tmux session names derived from project alias (e.g., `pf`, `cb`) instead of generic `crab` |
| 21 | +- `apply_template()` accepts a 4th `alias` parameter |
| 22 | + |
| 23 | +### Fixed |
| 24 | +- `crab restart` from a workspace dir now correctly detects the owning project |
| 25 | +- Legacy config migration no longer clobbers global config on subsequent `crab init` |
| 26 | + |
| 27 | +## [0.4.0] - 2026-01-18 |
| 28 | + |
| 29 | +### Added |
| 30 | +- Template system for project-type-aware setup (`crab init -t promptfoo-cloud`) |
| 31 | +- Auto-detection of project type from repo contents |
| 32 | +- `crab init --list-templates` to show available templates |
| 33 | +- `.crabcode.yaml` in-repo config import during init |
| 34 | + |
| 35 | +## [0.3.0] - 2026-01-15 |
| 36 | + |
| 37 | +### Added |
| 38 | +- Workspace handoff (`crab handoff`, `crab receive`) |
| 39 | +- Time travel / snapshots (`crab rewind`, `crab snapshot`) |
| 40 | +- Live pairing sessions (`crab pair`, `crab join`, `crab spectate`) |
| 41 | +- Mobile companion (`crab mobile serve`, push notifications) |
| 42 | +- Slack integration (`crab slack @user "msg"`) |
| 43 | +- Toolkit file sharing (`crab tk share`) |
| 44 | +- Mood system and status dashboard (`crab mood`, `crab status`) |
| 45 | + |
| 46 | +## [0.2.0] - 2026-01-10 |
| 47 | + |
| 48 | +### Added |
| 49 | +- WIP save/restore system with global index |
| 50 | +- Port spacing and env_sync with refs |
| 51 | +- MCP server sync from main repo |
| 52 | +- Shared volume support |
| 53 | +- Config scan (`crab config scan`) |
| 54 | +- Doctor diagnostics (`crab doctor`) |
| 55 | + |
| 56 | +## [0.1.0] - 2026-01-05 |
| 57 | + |
| 58 | +### Added |
| 59 | +- Initial release |
| 60 | +- Tmux-based workspace management with git worktrees |
| 61 | +- Configurable layouts with named panes |
| 62 | +- Port management and .env file sync |
| 63 | +- `crab ws`, `crab restart`, `crab cleanup`, `crab destroy` |
0 commit comments