Skip to content

Releases: cluesmith/codev

v2.1.1

24 Feb 09:12

Choose a tag to compare

What's Changed

Analytics Improvements

  • Median instead of average for time-to-merge and time-to-close-bugs — eliminates outlier skew (#548)
  • Consultation metrics now workspace-scoped — each workspace shows only its own consultation data (#545)
  • Prefix matching for builder worktrees — consultations run from .builders/ subdirectories correctly count toward the parent workspace (#548)
  • Removed activeBuilders metric from analytics (#548)
  • 30s → 5s analytics load time — batch GraphQL queries replace individual gh issue view calls (#543)

Bug Fixes

  • af open cross-workspace file resolution — files now open in the user's current workspace, not the workspace where the file resides (#535)
  • HTML preview in annotation viewer — sandboxed iframe preview with toggle, starts in annotate mode (#536)
  • Flaky CI test fixsend-integration.e2e.test.ts race condition resolved with retry loop (#CI)

Other

  • Added marketing materials

v2.1.0 — Ishtar Gate

22 Feb 19:53

Choose a tag to compare

v2.1.0 — Ishtar Gate

Named after the magnificent blue-glazed entrance to ancient Babylon — a grand gateway, fitting for a release that rebuilds the foundations.

662 commits | 41 feature specs | 78 bugfixes


New Protocols

  • AIR (Autonomous Implement & Review) — Lightweight two-phase protocol for small features (<300 LOC). No spec/plan artifacts; review goes in the PR body only. (#494)
  • ASPIR (Autonomous SPIR) — SPIR without human approval gates on spec and plan. Builder runs autonomously through all phases; human approval at PR gate only. (#438)
  • EXPERIMENT/Spike — Disciplined experimentation protocol with protocol.json, templates, and documentation. (#462)

Workspace Overview & Dashboard

  • Unified Work view replacing the old Dashboard — single view with Builders, Needs Attention, and project status (#126)
  • Analytics tab with GitHub metrics, builder stats, consultation costs, and Recharts visualizations (#456)
  • Open Files & Shells section showing active shells (running/idle status) and open annotation files (#467)
  • Collapse/expand buttons in architect toolbar for split pane panels, desktop only (#495, #513)
  • Emoji tab icons replacing static unicode symbols (#507)
  • TipBanner component with contextual tips in the Work view (#350)
  • Tower version displayed in dashboard header (#425)
  • Project name branding replacing "Agent Farm" in dashboard chrome (#425)
  • Clickable artifact links in Recently Closed items (#465)
  • Spike label support in Work view (#463)
  • Work tab font sizes increased 1.2x for readability (#466)
  • Scrollbar for Work view content (#477)
  • Builder elapsed time showing both wall clock and agent time (#405)
  • Tower hostname from registered name instead of OS hostname (#470)
  • GitHub integration layer for overview data (#126)
  • Overview API with GET /api/overview and POST /api/overview/refresh (#126)

Terminal Architecture

  • WebSocket auto-reconnect with session resumption and exponential backoff (#442)
  • Connection status icon in toolbar (replacing inline reconnecting text) (#451, #493)
  • WebSocket ping/pong heartbeat for dead connection detection (#109)
  • Terminal controls component — Reload, End, scroll buttons (#364)
  • Preserve scroll position during terminal fit/resize (#423)
  • Architect terminal auto-restart on crash with loop guard (#418)
  • Persistent terminal CWD in SQLite for annotator path resolution (#506)
  • Backpressure handling to prevent terminal unresponsiveness (#313)
  • Multi-client shellper — protocol extension for simultaneous tower + terminal connections (#118)
  • Shellper debug logging — stderr lifecycle logging, Tower-side SessionManager (#113)
  • af attach terminal mode with direct shellper socket connection (#118)
  • Database migrations v9 through v12

Messaging Infrastructure

  • af send Enter fix — delayed \r after multi-line paste so PTY processes the message before receiving Enter (#492)
  • Typing-aware delivery — defers message delivery when user is actively typing (#403)
  • Composing flag removal from deferral logic — was getting stuck true after non-Enter keystrokes, causing 60s delays (#492)
  • Tower send endpoint with address resolution (POST /api/send) (#110)
  • WebSocket message bus with subscriber management for real-time notifications (#110)
  • Standardized agent naming — consistent architect/builder identifiers (#110)
  • Structured message format with headers/footers (#110)
  • Push-based gate notifications via af send, replacing polling (#108)
  • CLI send refactor to use POST /api/send endpoint (#110)

Mobile

  • Duplicate character fix — replaced UA sniffing with pointer:coarse media query + composition event tracking. Catches iPads which report desktop UA. (#517)
  • Collapse buttons hidden on mobile (#513)
  • SSE auto-reconnect for dashboard after Tower restart (#472)

Consultation & Metrics

  • Consultation metrics & cost tracking — MetricsDB, usage extractor, per-model cost tracking (#115)
  • consult stats subcommand for viewing consultation statistics (#115)
  • Consultation output persistence — auto-saves results to project directory instead of temp files that get cleaned up (#512)
  • Codex SDK integration — replaced CLI subprocess with SDK (#120)
  • Rebuttal-based review advancement — porch advances after rebuttals without re-running consultation (#121)
  • porch --protocol/--project-id flags for flexible consultation routing (#115)

Developer Experience

  • Risk-based PR triage guide for architect integration reviews with subsystem mappings (#469)
  • Workflow reference documentation updates (#469)
  • af open from any directory — removed CWD restriction and workspace containment check (#500, #502)
  • af rename — Tower API endpoint and CLI command for renaming builders (#468)
  • codev update --agent flag for selective updates (#446)
  • porch rollback command to rewind project phase (#401)
  • Async workspace lifecycle — converted workspace creation and adoption to async exec (#127)
  • Periodic cleanup with defensive creation for stale state (#116)

Codebase Health

  • Workspace rename — "project" → "workspace" throughout codebase, database migration v9 (#112)
  • Dead code removal — vanilla dashboard code and clipboard test deleted (#111)
  • Gate watcher removal — polling infrastructure replaced by push notifications (#108)
  • Path boundary safety for prefix deletion (#474)
  • PrismJS, marked, DOMPurify bundled locally to avoid CSP blocks (#269)

Bugfixes (78 total)

Including: terminal reconnection reliability, tunnel keepalive, file path resolution, dashboard startup latency, tab switch delay, Work page performance, builder progress calculation, stale docstrings, monorepo build paths, and much more.


Full changelog: v2.0.0...v2.1.0

Install: npm install -g @cluesmith/codev@2.1.0

v2.0.16

21 Feb 02:57

Choose a tag to compare

v2.0.16

Bug Fixes

  • Dashboard hostname display (#470): Shows registered machine name instead of raw OS hostname (e.g. "codev on mac overview" instead of "Ms-MacBook-Pro-2.local codev dashboard")
  • GitHub CLI error logging: fetchPRList, fetchIssueList, and fetchRecentlyClosed now log actual error messages instead of silently returning null
  • CI health cron: Filtered to --branch main so builder branch failures no longer trigger alerts

v2.0.15

20 Feb 09:02

Choose a tag to compare

What's New

Features

  • Dashboard hostname display (#447) — Shows machine name in header when accessing remotely
  • Spawn improvements (#448) — af spawn no longer requires a pre-existing spec file; uses GitHub issue title for naming
  • codev update --agent (#449) — Non-interactive update mode for AI agents with structured JSON output

Bug Fixes

  • Reconnect status dot (#452) — Replaced intrusive overlay with subtle status dot; fixed premature give-up on reconnection
  • af send composing state (#453) — Messages held until user presses Enter, preventing typing interruption
  • ASPIR progress (#455) — Dashboard now shows correct progress for ASPIR builders
  • CI cron false alert — Fixed shell precedence bug in retry command

v2.0.14

19 Feb 15:21

Choose a tag to compare

What's New

  • Terminal WebSocket auto-reconnect (#442, PR #445): Automatic reconnection with exponential backoff when terminal connections drop. Shows reconnecting overlay, resumes session from ring buffer. No more manual page reloads on cloud connections.
  • af bench command (#440, PR #441): New af bench CLI command for consultation benchmarking with parallel execution, configurable iterations, and summary statistics.
  • ASPIR protocol (#438, PR #439): Autonomous SPIR — runs Specify → Plan → Implement → Review without human approval gates on spec and plan. PR gate remains.
  • Consult multi-project fix: --project-id from porch now used directly for project lookup, fixing failures in worktrees with historical project directories.

v2.0.13

19 Feb 11:13

Choose a tag to compare

New Features

  • ASPIR protocol (#438) — Autonomous SPIR: identical to SPIR but without spec-approval and plan-approval gates. Builder runs autonomously through all phases; only the PR gate requires human approval. Use af spawn N --protocol aspir for trusted, low-risk work.

Bug Fixes

  • Consult multi-project detection — Fixed consult failing in builder worktrees with "Multiple projects found" by extracting project ID from the worktree directory name
  • OSC 8 link confirm dialog — Removed xterm.js's default "This link could potentially be dangerous" confirm dialog when clicking terminal hyperlinks

CI Improvements

  • Playwright retries — Added --retries 3 to E2E tests to reduce false positives from flaky terminal rendering in headless CI
  • Removed Discord webhook — Removed broken Discord notification step from CI workflow

Install

npm install -g @cluesmith/codev@2.0.13

v2.0.12

19 Feb 05:48

Choose a tag to compare

Bug Fixes

  • Terminal scroll-to-top regression — Fixed tab switch causing terminals to scroll to top (ResizeObserver firing with 0x0 dimensions)
  • af open from worktrees (#427) — Fixed af open failing when run from builder worktrees by falling back to main repo path
  • Porch redundant checks (#432) — Skip redundant phase checks when porch done follows porch approve within 60 seconds
  • Restart button (#430) — Dashboard restart button now refreshes the page instead of killing all terminals
  • Markdown preview line breaks (#141) — Added regression tests for line break rendering
  • Markdown preview scroll (#143) — Added regression tests for scroll-to-bottom in preview

Improvements

  • Dashboard chrome cleanup (Spec 425) — Replaced Agent Farm branding with project name, show Tower version in header
  • Documentation sweep (Spec 422) — Four refinement rounds of arch.md and documentation
  • Flaky test guidance — Added handling instructions to all builder prompts and protocol phases

Install

npm install -g @cluesmith/codev@2.0.12

v2.0.10 Hagia Sophia

18 Feb 05:50

Choose a tag to compare

New Features

  • af cron (Spec 399): Tower-resident cron scheduler for automated monitoring. Define YAML tasks in .af-cron/ that run on a schedule, evaluate conditions, and deliver messages to architect/builder terminals. Includes af cron list/status/run/enable/disable CLI commands.
  • Typing-aware message delivery (Spec 403): af send now detects when a user is actively typing in a terminal and defers message delivery until they're idle, preventing disruption mid-thought. Messages are buffered up to 60s with a 3s idle threshold.
  • Porch rollback (Bugfix #401): porch rollback command allows rewinding project phase when a builder gets stuck or goes down the wrong path.

Improvements

  • Architect auto-restart (Bugfix #418): When the architect Claude session exits, it automatically restarts after 2 seconds — matching existing builder behavior.
  • Dashboard "Needs Attention" (Bugfix #409): Replaced the Pull Requests section with a Needs Attention view showing items requiring architect action.
  • Cross-workspace af send: Documented workspace:target syntax (e.g., af send marketmaker:architect "msg") for sending messages across workspaces.
  • Flaky test fixes: Fixed CLI Integration Tests ENOTEMPTY teardown race on macOS with retry logic. Improved tower proxies requests to dashboard test stability with longer polling window.

Bug Fixes

  • Fixed send-integration test port collision (Bugfix #411)
  • Fixed cron workspace field name and DB enable priority

Install

npm install -g @cluesmith/codev@2.0.10

v2.0.3 Hagia Sophia

15 Feb 13:10

Choose a tag to compare

v2.0.3 Hagia Sophia

Released: 2026-02-15

Summary

Patch release with a major naming refactor (project → workspace), reliability improvements, and dead code cleanup. Total net reduction of ~4,000 lines.

New Features

  • Spec 0108 - Porch Gate Notifications: Push-based af send from porch replaces broken poll-based gate watcher. Net -80 lines. (PR #272)
  • Spec 0109 - Tunnel Keepalive: WebSocket ping/pong heartbeat (30s ping, 10s pong timeout) detects and auto-recovers silent connection drops after sleep/wake. 10 new unit tests. (PR #271)

Improvements

  • Spec 0112 - Workspace Rename: All uses of "project" meaning "git repository" renamed to "workspace" across Tower, CLI, dashboard, and database. DB migration v9 renames project_pathworkspace_path. +2360/-1826 across 100 files. (PR #276)
  • Spec 0111 - Dead Vanilla Dashboard Removal: Deleted 16 dead template files from the pre-React dashboard. -4,614 lines. (PR #273)
  • Bugfix #277 - Dead Code Cleanup: Removed codev-hq package, hq-connector, and unused utilities. -2,928 lines. (PR #278)

Bug Fixes

  • Bugfix #266: codev init and codev adopt now correctly copy role files from skeleton (PR #267)
  • Bugfix #269: PrismJS, marked, and DOMPurify bundled locally to avoid CSP blocks in document viewer (PR #270)
  • Bugfix #274: Architect terminal no longer lost on Tower restart — fixed startup race between initInstances() and reconcileTerminalSessions(), added _reconciling guard (PR #275)

Documentation

  • Added mobile web debugging guide (codev/resources/mobile-web-debugging.md)
  • Added Spec 0115 draft (Consultation Metrics & Cost Tracking)

Breaking Changes

  • DB migration v9: Automatically renames project_pathworkspace_path columns. Rollback requires manual SQL.
  • API paths changed: /project/ routes renamed to /workspace/ in Tower server

Migration Notes

Upgrade with:

npm install -g @cluesmith/codev@2.0.3
af tower stop && af tower start

Database migration v9 runs automatically on first Tower start. Existing terminal sessions will be preserved.

v2.0.2

15 Feb 01:04

Choose a tag to compare

Always show connect dialog when clicking Connect, pre-populated with existing tower name and server URL so users can review or change preferences before reconnecting.