diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 8032c17..38acea6 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.12.0" + ".": "0.12.1" } diff --git a/CHANGELOG.md b/CHANGELOG.md index c4b9835..258a0e7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,33 @@ ## Unreleased +## [0.12.1](https://github.com/promptfoo/crabcode/compare/v0.12.0...v0.12.1) (2026-02-26) + +### Features + +- add `crab md` command to render markdown in browser ([#40](https://github.com/promptfoo/crabcode/issues/40)) ([62798a1](https://github.com/promptfoo/crabcode/commit/62798a1e29e60fec2a48a30b831004706fc4042c)) +- **court,review:** allow starting fresh when session already exists ([412d7d3](https://github.com/promptfoo/crabcode/commit/412d7d3d2ac8012edea0d047fa38a75e63a72e0b)) +- **court:** enhance reviewer and judge prompts to catch silent data corruption ([#31](https://github.com/promptfoo/crabcode/issues/31)) ([f901632](https://github.com/promptfoo/crabcode/commit/f901632278897698ba32bf3ab910b105640ae7fc)) +- **crab-pf:** add --reasoning flag for GPT-5 reasoning_effort ([#34](https://github.com/promptfoo/crabcode/issues/34)) ([1cc404d](https://github.com/promptfoo/crabcode/commit/1cc404d861cee6435e97d13e8abd01095d17cb19)) +- **crab-pf:** default to gpt-5 with reasoning low ([#36](https://github.com/promptfoo/crabcode/issues/36)) ([916d46f](https://github.com/promptfoo/crabcode/commit/916d46f05c77a874470294e5be67fc13812bcad5)) +- **draw:** add collaborative Excalidraw plugin with real-time collab ([b013517](https://github.com/promptfoo/crabcode/commit/b01351793749e9e8db5fe0ea4e136255dd430b2f)) +- **md:** add inline editing with split view, diff highlights, and save ([f4461f3](https://github.com/promptfoo/crabcode/commit/f4461f398c49404e07ecb9b873eb3e1736e5cedf)) +- **promptfoo:** add `crab pf serve` Slack polling daemon ([#37](https://github.com/promptfoo/crabcode/issues/37)) ([1ee6707](https://github.com/promptfoo/crabcode/commit/1ee670787e1fd5f2c4a8bc5ca684618d7bf08d14)) +- **wip:** save and restore Claude sessions across WIP save/restore ([b303372](https://github.com/promptfoo/crabcode/commit/b303372deaa1995eabb678bb5c23052eb677d834)) + +### Bug Fixes + +- **crab-pf:** replace broken verify with smoke+session test, add session handling ([#32](https://github.com/promptfoo/crabcode/issues/32)) ([3f5ee99](https://github.com/promptfoo/crabcode/commit/3f5ee994e5b3e7dfbd345b1af040825dc0ce26fd)) +- **crab-pf:** require test prompts to match provider input format ([#33](https://github.com/promptfoo/crabcode/issues/33)) ([b5017cb](https://github.com/promptfoo/crabcode/commit/b5017cb093fb157f7658c8c9cde3a662901b3f98)) +- force checkout in restart/cleanup to handle dirty worktrees ([fc37b80](https://github.com/promptfoo/crabcode/commit/fc37b80c67c46f2d7e648dc951dd0f16ddb78405)) +- **md:** decode UTF-8 correctly when rendering markdown in browser ([7e6b8b2](https://github.com/promptfoo/crabcode/commit/7e6b8b22783874ac88268a65bd26c12746b83782)) +- **msg:** stop say from repeating in listen mode ([#23](https://github.com/promptfoo/crabcode/issues/23)) ([473c3f6](https://github.com/promptfoo/crabcode/commit/473c3f6d85971ed6d5f8e687d6666d08dab281c6)) +- **test:** fix all 14 pre-existing test failures, add test isolation ([#29](https://github.com/promptfoo/crabcode/issues/29)) ([57f2080](https://github.com/promptfoo/crabcode/commit/57f20808c6e58e7abddf2b50afc159b41f5e9e9c)) +- **update:** bypass GitHub raw CDN cache for self-update ([#22](https://github.com/promptfoo/crabcode/issues/22)) ([29f04fa](https://github.com/promptfoo/crabcode/commit/29f04fabd70312b71d4e4939a36793fb94b0440a)) +- **wip:** restore to current workspace, show project-level WIPs by default ([c1eb24f](https://github.com/promptfoo/crabcode/commit/c1eb24fb75e4a69db65c8549587cbb01203cd64d)) +- **wip:** use target workspace branch when restoring cross-workspace ([8734bf6](https://github.com/promptfoo/crabcode/commit/8734bf615cc1fc4a261129c86d77d46d8e7277d5)) +- **ws:** avoid shell init prompts eating command keystrokes after respawn-pane ([967eb91](https://github.com/promptfoo/crabcode/commit/967eb910c8c0ab2d42cb35cef1d8f4a2bdd81a8a)) + ## [0.12.0] - 2026-02-20 ### Added @@ -65,6 +92,7 @@ ## [0.8.0] - 2026-02-09 ### Added + - **Court Review system**: thorough multi-agent PR review with judge pattern - `crab court ` — spawns Judge (Claude) + Reviewer A (Claude teammate) + Reviewer B (Codex) - Judge orchestrates reviewers, verifies findings by tracing actual code @@ -78,17 +106,20 @@ - `crab review show ` displays saved review output ### Changed + - Simplified review system: removed `--with-codex` and `collab` modes in favor of `crab court` - `crab review ` now does quick single-agent review (fast, simple) - `crab court ` is the thorough option (judge + 2 reviewers) ### Fixed + - WIP restore now properly opens workspace when run from outside (was checking wrong directory) - Review sessions now run from session directory so Claude can write output files ## [0.7.0] - 2026-02-08 ### Added + - **Session management**: track and resume Claude conversations - `crab session ls` — list sessions with inline summaries - `crab session start "name"` — start new named session @@ -104,6 +135,7 @@ - PR context auto-fetched via gh CLI ### Changed + - `crab restart` now fully recreates window layout (fixes missing panes after close) - Team mode always enabled (instructions in .claude/CLAUDE.md) - Removed `--team` flag (no longer needed) @@ -111,6 +143,7 @@ ## [0.6.0] - 2026-02-05 ### Added + - **Agent Teams integration**: team mode always enabled in workspaces - Team instructions auto-added to `.claude/CLAUDE.md` - Claude spawns agent teammates when tasks warrant parallel work @@ -120,6 +153,7 @@ ## [0.5.0] - 2026-02-04 ### Added + - **Multi-project support**: manage multiple repos from a single crabcode install - `crab @alias ` — run any command against a specific project - `crab projects` — list all registered projects with tmux status @@ -131,6 +165,7 @@ - Project context shown in `config`, `doctor`, `status`, and `help` output ### Changed + - Config structure: project configs now live in `~/.crabcode/projects/.yaml` - Global config (`~/.crabcode/config.yaml`) now only stores `default_project` - Templates use `ALIAS_PLACEHOLDER` for `session_name` (was hardcoded `crab`) @@ -138,6 +173,7 @@ - `apply_template()` accepts a 4th `alias` parameter ### Fixed + - `crab restart` from a workspace dir now correctly detects the owning project - Legacy config migration no longer clobbers global config on subsequent `crab init` @@ -171,6 +207,7 @@ ## [0.3.0] - 2026-01-15 ### Added + - Workspace handoff (`crab handoff`, `crab receive`) - Time travel / snapshots (`crab rewind`, `crab snapshot`) - Live pairing sessions (`crab pair`, `crab join`, `crab spectate`) @@ -182,6 +219,7 @@ ## [0.2.0] - 2026-01-10 ### Added + - WIP save/restore system with global index - Port spacing and env_sync with refs - MCP server sync from main repo @@ -192,6 +230,7 @@ ## [0.1.0] - 2026-01-05 ### Added + - Initial release - Tmux-based workspace management with git worktrees - Configurable layouts with named panes diff --git a/src/crabcode b/src/crabcode index afa6740..34adac8 100755 --- a/src/crabcode +++ b/src/crabcode @@ -27,7 +27,7 @@ set -e -VERSION="0.12.0" # x-release-please-version +VERSION="0.12.1" # x-release-please-version CONFIG_DIR="$HOME/.crabcode" CONFIG_FILE="$CONFIG_DIR/config.yaml" WIP_BASE="$CONFIG_DIR/wip"