Changelog All Tiers

Release history and what's new in each version of PairCoder

This page documents user-facing changes in each PairCoder release.

v2.25.1 -- April 17, 2026

Engage reliability hotfix

Root cause fix for engage sprint reliability issues that persisted across several releases. Hook failures now propagate correctly instead of being silently swallowed, preventing cascading dependency failures that caused sprints to produce incomplete results.

Also in this release

  • Security audit findings are now visible when engage blocks a PR
  • Driver self-commit completeness: remaining uncommitted changes are committed automatically
  • Pre-dispatch satisfaction checks exclude non-source directories to prevent false skips
  • Release workflow hardened: correct ref on manual dispatch, PyPI-first ordering
  • 13,550+ tests passing

v2.25.0 -- April 14, 2026

Smarter sprint drivers

Engage now checks whether a task's acceptance criteria are already satisfied before spawning a driver. Tasks completed in prior sprints are skipped automatically. Drivers that commit their own work are recognized, preventing false "no output" failures.

Also in this release

  • bpsai-pair preflight: run tests with CI-matching environment locally before pushing
  • Headless enforcement bypass: drivers in engage sessions no longer blocked by interactive-mode gates
  • CI triggers on dev only (no duplicate test runs on main + dev)
  • Sweep full-file parsing: reads complete files from git refs instead of diff fragments

v2.24.0 -- April 13, 2026

Sweep: find dead code after changes

New command: bpsai-pair sweep. When you rename, delete, or refactor code, sweep identifies what the change made unnecessary -- dead imports, orphaned tests, stale helpers, and unreachable exports. Works on any stack with auto-detected language providers. --fix auto-removes high-confidence dead imports. See the Sweep guide.

Also in this release

  • Engage sprints complete reliably across all workspace repos
  • Full CI test suite (13,253+ tests) passing on every push
  • Review findings post correctly to GitHub PRs

v2.23.0 — April 12, 2026

Resume interrupted sprints

engage --resume picks up where you left off. Completed tasks are skipped, pending tasks re-run. No more losing work to session limits or machine resets.

Reliable on Windows

Security agent no longer silently bypasses on large diffs. UTF-8 encoding on all subprocess calls. Backslash paths work. The engage pipeline now works correctly on Windows 11.

Hook intelligence

Tasks that produce no output are flagged as failures. Subagent crashes block the next task instead of being silently ignored. Agent lifecycle events push to A2A channels for live dashboard visibility. Pre-engage containment audit warns about protected-path conflicts before they can silently fail tasks.

Also in this release

  • Human-gated tasks: requires: human in backlog frontmatter pauses engage
  • --create-branch and --branch flags for branch management
  • Pre-task budget heuristic warns before session limits hit
  • Full test suite CI on every push (13,275 tests)
  • Forgiving backlog parser accepts multiple formatting variants

v2.22.0 — April 9, 2026

Named agents

Every agent now has a mythology-inspired identity. When you run bpsai-pair review pr, you see findings from Nayru (code quality), Laverna (security audit), and Vaivora (cross-module contracts). Agent names appear in review headers, dispatch logs, and CLI feedback throughout.

Vaivora: cross-module review

Large pull requests (500+ lines or 10+ files) now get a third reviewer: Vaivora. She catches cross-module contract breaks, dependency conflicts, and architectural inconsistencies that single-file reviewers miss. Dispatched automatically alongside Nayru and Laverna.

Smarter review routing

Say “review these PRs” in a Claude Code session and PairCoder routes it to the proper 3-agent review pipeline instead of generic agent reasoning. The REVIEW intent classifier detects review-related language and invokes the right command.

Also in this release

  • Laverna (security auditor) upgraded to Opus model for complete findings on large PRs
  • Engage auto-created PRs now target dev when a dev branch exists
  • New projects scaffolded with mythology-named agent definitions

v2.21.5 — April 8, 2026

Branch enforcement

Source code changes on main or dev are now blocked with a clear message directing you to create a feature branch. Documentation, configuration, and state files pass through freely. Enable with workflow.require_feature_branch: true in your project config (on by default for new projects).

Smarter merge strategy

Pull requests now get the right merge strategy automatically. Hotfix branches use merge commits to preserve traceability. Sprint branches use squash for clean history. The strategy is carried as a PR label and applied at merge time. Override with --method when you need manual control.

Also in this release

  • Engage no longer stalls on dirty working tree from auto-upgrade
  • Stale containment checkpoint stashes cleaned up automatically

v2.21.4 — April 7, 2026

Review your code with one command

bpsai-pair review pr 42 dispatches a reviewer and security auditor against any pull request, scaling the number of reviewers for larger diffs. review branch checks your current work before you PR, and review task T18.3 reviews a single task. The review process is now Python-enforced, not optional.

Faster autonomous sprints

Engage tasks now run only the tests that matter for each change instead of the full suite. A sprint that previously spent 30 minutes on test runs now finishes in a fraction of the time. Engage also no longer crashes when lifecycle hooks fail, and bookkeeping files are excluded from commits so you never get merge conflicts from telemetry data.

Also in this release

  • Review agents are now identified by name in output for easier tracking
  • Failed reviews are no longer silently treated as approvals
  • Task review finds the correct commit instead of always reviewing the latest

v2.21.3 — April 7, 2026

Version management you can trust

PairCoder no longer overwrites your config with older version numbers when switching between environments. A new bpsai-pair release validate-versions command checks that all version files agree before you tag a release, and --fix auto-repairs any that are out of sync. bpsai-pair fleet check scans your workspace to verify every project is running the same version.

Smarter autonomous sprints

Autonomous sprints (bpsai-pair engage) now include a built-in quality loop. Each task is reviewed after implementation, and issues are automatically sent back for correction. A security check runs before the pull request is created, blocking it if critical issues are found. Larger sprints get additional review coverage focused on how changes interact across modules.

Upgrades preserve your customizations

Running bpsai-pair upgrade no longer overwrites custom fields you have added to your agent definitions. Settings like memory, maxTurns, and display names survive upgrades.

Also in this release

  • support open shows the actual error when authentication fails instead of a generic message
  • Permission denial events are now tracked for operational visibility
  • Autonomous sprint pull requests use descriptive titles from the backlog

v2.21.2 — April 4, 2026

Fixed the PyPI package page to show current features instead of stale v2.17 content. No code changes.

v2.21.1 — April 4, 2026

Remote sessions get enforcement automatically

Claude Code's new ultraplan mode opens remote sessions that previously ran without PairCoder's enforcement gates. Now, a SessionStart hook auto-installs PairCoder when any remote session starts. Task lifecycle, budget checks, and telemetry work from the first command. New projects get this automatically on bpsai-pair init.

Better error diagnostics

Commands that talk to the API (support open, subscription manage, license activate) now show actual HTTP status codes and error details instead of generic failure messages. Add --verbose to support open for full diagnostic output.

Also in this release

  • Perpetual licenses no longer attempt to open the Stripe billing portal
  • Task boundary validation errors are now visible (were silently swallowed)
  • Bootstrap script pins exact version for supply chain safety

v2.21.0 — April 3, 2026

Your agent asks before it acts

PairCoder now classifies what you're saying before taking action. Ask a question, get an answer. Request a design, get a proposal. Say "make it so" or "dispatch" to authorize autonomous work. The system never dispatches agents unless you explicitly approve.

See what's going wrong

New operational signals detect problems automatically: driver code that didn't commit, sessions abandoned mid-task, repeated permission blocks, and manual fixes on automated branches. Cache health monitoring catches when session resumes waste tokens rebuilding context.

Protected branches

bpsai-pair engage now refuses to run on main or dev. Work happens on feature branches, merged via PR. No more accidental commits to protected branches.

Security hardening

All dispatch paths now enforce an approval allowlist. Telemetry no longer includes code snippets or sensitive content. Path validation on all subprocess operations. 21 security findings addressed.

Also in this release

  • 12,333 tests passing
  • Engage error logging: git failures now surface instead of silently swallowing
  • Capability gate: tells you when PairCoder already has what you're asking to build
  • Frustration detection: observation-only telemetry that helps us improve the workflow

v2.20.0 — March 31, 2026

Run entire sprints hands-free

bpsai-pair engage now handles the full development cycle autonomously. Give it a backlog, and it creates a feature branch, works through every task, commits as it goes, opens a PR with a summary, and dispatches code reviewers. You review the PR when it's done.

One command from idea to PR

Type /make-it-so "add retry logic to the API client" and PairCoder drafts a backlog, shows you the plan, and on your approval runs the full engage pipeline. You go from a sentence to a reviewed PR.

Is my setup healthy?

bpsai-pair doctor checks everything: Python version, Claude Code, project files, git, linting tools, telemetry. Green, yellow, or red for each check. --fix auto-repairs what it can.

Script-friendly output

Every major command now supports --json with a consistent response shape. Build automations on top of PairCoder without parsing terminal output.

Smarter model selection

Tasks are routed to the right model based on complexity. Simple tasks use faster models, complex ones get the heavy hitters. Configurable per project.

Also in this release

  • /draft-backlog command creates properly formatted backlogs that engage can parse
  • Backlog parser now accepts flexible formatting (no more reformatting your markdown)
  • Telemetry now captures actual token usage, cost, and which model ran
  • Five bug fixes for headless sessions, Windows, and MCP integration
  • Security hardening across the engage pipeline

v2.19.1 — March 30, 2026

Added

  • Workspace telemetry aggregate — New bpsai-pair telemetry aggregate command collects telemetry across all projects in your workspace. Deduped, garbage-filtered, sorted by time.
  • Active time estimation — Every telemetry record now shows estimated active time vs wall time, so you can see which long sessions were idle vs real work.
  • Statusline heartbeat — The status bar writes a heartbeat on every prompt cycle, enabling idle gap detection across sessions.

v2.19.0 — March 30, 2026

Added

  • AC pre-flight check — Completion gate now verifies all acceptance criteria checkboxes before allowing task completion, eliminating the costly fail-retry loop

Fixed

  • Telemetry integrity — Archived phantom records that were polluting duration and cost aggregations

v2.18.2 — March 29, 2026

Added

  • Heimdall platform sentinel — Automated monitoring of Claude Code updates. Classifies changes by impact and pushes critical alerts to coordination channels so your team knows before something breaks.
  • Intent-aware telemetry — Session intent (feature, bug fix, refactor) now flows into calibration data automatically, even for ad-hoc sessions outside the task lifecycle
  • Signal source tagging — Signals tagged by origin (human, automated, Metis) for better observability analysis
  • Engage review dispatch — After driver tasks complete, bpsai-pair engage dispatches reviewer and security-auditor agents automatically

Fixed

  • Budget gate false alerts — Fixed an issue where the token budget check fired false critical signals on every engage task

v2.18.1 — March 29, 2026

Improved

  • Telemetry recording — Fail decomposition (outcome_detail) and token type classification now recorded on all sessions, not just headless. Your calibration data is more accurate.
  • Engage review dispatch — After driver tasks complete, bpsai-pair engage can dispatch reviewer and security-auditor agents automatically
  • Commit after task — Engage auto-commits after each successful task, preventing work loss between sequential driver sessions
  • Platform checker upgrade — Classifies Claude Code changes by impact (breaking/simplifying/informational), pushes critical findings to coordination channels

Fixed

  • Privacy improvements — Telemetry error context now automatically redacted and length-capped for cleaner data

v2.18.0 — March 29, 2026

Added

  • Intelligence pipeline — Signal-driven decision engine with 5 data sources (telemetry, task state, session history, skill usage, cross-agent queries). Try bpsai-pair skill recommend for context-aware suggestions
  • Coordination channels — Cross-agent communication via MCP plugin. Use --channels flag to subscribe agents to typed channels, with automatic file role detection and remote query support
  • Dynamic thresholds — 7-role taxonomy with per-role confidence thresholds that adapt to project context. Fail-closed gate ensures safe defaults when signal data is unavailable
  • Headless task runnerbpsai-pair engage parses markdown backlogs, materializes task files, and spawns parallel Claude Code sessions for autonomous sprint execution
  • Telemetry P0 — Headless sessions emit telemetry automatically. Includes fail decomposition, complexity-per-minute velocity tracking, token type tagging, and signal source tagging

Fixed

  • Engage pipeline reliability — 11 fixes including backlog parser accepting any task ID prefix, materializer preserving IDs, and increased headless timeout (300s → 1800s)

v2.17.1 — March 25, 2026

Fixed

  • Faster CLI startup — License validation no longer runs on every command. Checks happen at task lifecycle boundaries instead, with a local cache for session starts. You should notice snappier response times across all commands.
  • Upgrade no longer downgrades config — Running bpsai-pair upgrade on a newer version no longer reverts your config version to an older number

Improved

  • Faster agent spawns — Background agents now auto-start their first action when spawned, reducing latency for parallel task execution (requires Claude Code 2.1.83+)

v2.17.0 — March 24, 2026

Added

  • SQLite-backed telemetry — Session, telemetry, and task state stores now use indexed SQLite databases instead of flat files, with automatic migration of existing data
  • Containment enforcement — New file access control system that blocks writes to protected paths during agent sessions — configure via the setup wizard or bpsai-pair containment status
  • Quality control framework — Browser-based QC testing with spec files, environment config, and execution runtime — bpsai-pair qc init to get started, then qc list, qc validate, and qc report
  • QC gate hook — QC validation can now run as a pre-completion gate, blocking task completion until quality checks pass
  • Query skills — Five cross-agent query skills for task state, driver activity, review findings, quality metrics, and session outcomes — accessible via bpsai-pair query
  • Workspace task queriesbpsai-pair query task-state --scope workspace spans sibling projects in a multi-repo workspace
  • Subagent context injection — Spawned subagents automatically receive context from the parent agent’s prior session
  • Signal emission — Session hooks now emit structured monitoring signals for anomaly detection, budget alerts, and enforcement pattern tracking

Improved

  • Telemetry performance — SQL-based queries replace full-file scans for metrics, session lookups, and trend analysis
  • Concurrent agent safety — SQLite WAL mode with configurable timeouts for reliable concurrent access from worktree agents

Fixed

  • Metrics query --days filter was silently ignored — now correctly validated
  • File permission hardening on all new SQLite database files
  • Path traversal guards added to reviewer file content loading
  • Workspace discovery now capped at 20 sibling repos to prevent resource exhaustion

v2.16.1 — March 12, 2026

Added

  • Wizard workflow step — New workflow configuration step in the setup wizard with preset selection (simple, full, or custom YAML)
  • Scope auto-detectionbpsai-pair plan new --total-cx automatically determines epic vs story scope based on complexity budget
  • PM config in upgradebpsai-pair upgrade now adds the pm: config section to projects that don’t have one yet

Fixed

  • Upgrade config drift — Upgrade command now detects all missing config sections instead of only a hardcoded subset
  • Stale hook cleanup — Upgrade detects outdated hook lists, removes deprecated hooks, and adds new template hooks while preserving any custom hooks you’ve added

v2.16.0 — March 12, 2026

Added

  • Provider-agnostic project management — New bpsai-pair pm command group replaces direct Trello calls with an abstraction layer that supports any PM backend — includes status, create, done, sync, sprint management, hierarchy visualization, and diagnostics
  • Workflow engine — Configurable workflow presets (BPS, Kanban, Scrum) with state validation and transition rules for task lifecycle management
  • PM sync — Bidirectional sync between local task files and your PM provider with conflict detection
  • bpsai-pair engage — Autonomous sprint execution from a markdown backlog file — parses tasks, orchestrates phases, and generates a PR when done
  • Session finalization — Automatic telemetry flush and handoff generation when a Claude Code session ends
  • bpsai-pair query sessions — Query session history with duration, tasks touched, test results, and outcome status
  • Agent memory retention — Automatically archives agent memory files older than 60 days to keep context lean

Changed

  • ttask start and ttask done now route through the PM abstraction layer, making Trello one provider option rather than a hard dependency

Fixed

  • Improved input validation on session and telemetry file writes
  • Plan matching no longer produces false positives when plan names share a common prefix

v2.15.11 — March 1, 2026

Fixed

  • Telemetry data accuracy — Fixed several issues causing inconsistent telemetry data including missing cache metrics and incorrect token attribution

Added

  • Telemetry aggregation — Automatic weekly compaction of telemetry records for long-term retention
  • Historical data recoverybpsai-pair telemetry recover recovers telemetry data from session archives
  • Cache effectiveness analytics — Cache hit rate tracking in telemetry status and calibration

v2.15.10 — February 18, 2026

Fixed

  • Task lifecycle hooks — State updates now correctly reflect the actual lifecycle event instead of always recording a completion
  • Cross-project task IDs — Project-prefixed task IDs (e.g., CLI-T34.1, WEB-T35.1) are now recognized across all CLI commands and Trello sync
  • Upgrade detectionbpsai-pair upgrade no longer shows false "outdated" warnings on current projects

v2.15.8 — February 17, 2026

Added

  • Branded status linebpsai-pair-statusline console script for Claude Code status bar showing active task, agent role, sprint progress, and session economics
  • Status line install systembpsai-pair setup statusline command with --theme, --remove, and --preview options
  • Task completion timestampscompleted_at field on tasks; standup --since filter now correctly excludes old tasks

Changed

  • Model routing defaults to Sonnet 4.6 — driver/reviewer models, routing presets, pricing tables, and wizard defaults updated

Fixed

  • Task start instructions — Task descriptions are now correctly included when starting a new task
  • Standup time window--since flag included all completed tasks regardless of window
  • Tier display — Tier names now consistently match the current plan lineup

v2.15.7 — February 15, 2026

Added

  • Unified analytics — Velocity, accuracy, and cost reporting now use a single consolidated data source for consistent results across all metrics commands.
  • Smarter model routing — Model selection now uses calibration data and quality thresholds to optimize cost without sacrificing output quality.

Improved

  • Metrics commandsmetrics summary, velocity, accuracy, and breakdown now read from TelemetryStore instead of legacy metrics files.
  • Token handling — Large token values are now preserved with a warning instead of being silently capped.

v2.15.6 — February 14, 2026

Added

  • Support ticket system — File and track support tickets directly from the CLI with support create, support list, and support show. Automatic system info collection included.
  • Support portalsupport open authenticates and opens the web portal via license key exchange.

Improved

  • Agent memory — Navigator, Driver, and Reviewer agents gain persistent memory directories for cross-session learning.

Fixed

  • Config version driftbpsai-pair upgrade now bumps stale config version even when no sections are missing.

v2.15.5 — February 11, 2026

Added

  • Post-install upgrade prompt — CLI detects version changes after pip upgrade and prompts to run bpsai-pair upgrade when config is stale. --auto flag for non-interactive mode.
  • Config staleness warning — Startup check warns when project config version is behind schema version.
  • Budget/cost display on task startttask start now shows estimated token cost and budget percentage.
  • State.md auto-update hook — Automatically updates state.md when tasks are completed via ttask done.

Fixed

  • Task completion dead end — Non-Trello task IDs in Trello-enabled projects no longer block completion.
  • Trello resilience — Trello API failures or missing cards no longer block task completion.
  • Flexible task IDs — All task ID formats are now accepted everywhere.

v2.15.4 — February 10, 2026

Improved

  • Sprint completion workflowbpsai-pair sprint complete now auto-archives completed tasks and warns when state.md exceeds 200 lines. Use --no-archive to skip.

Fixed

  • Task archival bug — Sprint completion now correctly archives all completed tasks instead of silently skipping some.

v2.15.3 — February 9, 2026

Improved

  • Estimation accuracy — Task estimates now automatically improve with each completion as actuals are compared against predictions.
  • Agent roles — Navigator, Driver, and Reviewer agents are now correctly assigned by task type.

v2.15.2 — February 9, 2026

Fixed

  • Setup wizard improvements — The Trello integration page now correctly generates the token authorization URL from your API key. Credential fields are masked during input.
  • Documentation links — Fixed broken documentation links throughout the CLI and setup wizard.

v2.15.1 — February 7, 2026

Fixed

  • Wizard documentation link — The setup wizard success page now links to the correct getting-started guide.
  • PyPI version badge — Version badge on the package page now updates reliably after each release.

v2.15.0 — February 6, 2026

Intelligence Pipeline Wiring

  • Planning intelligence — Calibration-backed estimates (tokens, duration, effort, model) enriching plan creation per task type
  • Cross-repo task push — WorkspaceOrchestrator task distribution wired into plan new with auto-push and sprint context
  • License feature gating@require_feature() decorator applied to 12+ commands with hard and soft gates
  • Upgrade runtime dirsbpsai-pair upgrade now bootstraps telemetry, feedback, and history directories

Fixed

  • Telemetry config accesstelemetry config is now available on all tiers

v2.14.2 — February 6, 2026

Fixed

  • Cleaner project scaffolding — Projects created or upgraded via bpsai-pair upgrade no longer contain internal paths or defaults.
  • Fewer false drift warnings — Template checks no longer flag files that are expected to differ between your project and the default template.

v2.14.1 — February 6, 2026

Changed

  • Improved TDD skill — The implementing-with-tdd skill now enforces incremental red-green-refactor cycles instead of monolithic test-first batches. Includes cycle planning guidance and test file organization tips.
  • Relaxed architecture limits for test files — Test files (test_*.py, *_test.py, conftest.py) now use relaxed architecture limits so large test suites no longer trigger false-positive violations.
  • Test override configuration — New test_overrides section in config.yaml for customizable test file architecture thresholds.

v2.14.0 — February 6, 2026

Added

  • Cross-repo audit commandbpsai-pair workspace audit audits sibling projects for contract compliance across your workspace.
  • Enhanced upgrade commandbpsai-pair upgrade now syncs skills, scripts, and reference files in addition to core templates.

Changed

  • Workspace config discovery.paircoder-workspace.yaml is now found by searching parent directories, giving consistent behavior across all workspace commands.

v2.13.3 — February 6, 2026

Fixed

  • Telemetry accuracy — Per-task metrics now report correct values instead of inflated running totals.

v2.13.2 — February 6, 2026

Fixed

  • Task archivingtask archive --completed and task restore now correctly handle tasks stored in the flat .paircoder/tasks/ directory.

v2.13.1 — February 6, 2026

Fixed

  • Wizard validation — The setup wizard now properly validates privacy levels and model selections against allowed values.
  • YAML quoting — Fixed edge case where strings starting with @, *, or ! could break YAML task files.

v2.13.0 — February 5, 2026

Added

  • Privacy baseline enforcement — The OFF privacy level has been removed. MINIMAL is now the mandatory baseline, ensuring usage snapshots are always available for license validation. Existing configs are auto-migrated.
  • Usage snapshots — Tiered usage snapshot assembly during license validation. Data collected depends on your privacy level (minimal, standard, or full).
  • Value scoring — A 0–100 value extraction score helps identify license utilization patterns with actionable recommendations.
  • Cross-repo orchestration — New workspace commands for multi-repo workflows:
    • workspace check-impact — Detect contract-breaking changes across projects
    • workspace audit — Audit a sibling project for compliance
  • Automated enforcement hooks — New gate hooks that run automatically on task completion:
    • Architecture check on modified files
    • Cross-repo contract break detection
    • Workspace impact scanning
    • Telemetry snapshot capture

Changed

  • Privacy levels — OFF level removed; MINIMAL is now mandatory.

Fixed

  • Architecture checks — Now correctly detect changed files in your working tree.
  • Default branch detection — Commands no longer assume main; your default branch is auto-detected.

v2.12.0 — February 5, 2026

Added

  • Session telemetry — Parse Claude Code transcripts into structured telemetry records with privacy-aware storage.
    • telemetry status — View collection status and storage summary
    • telemetry config — Configure privacy level and retention
    • telemetry export — Export data as JSON, JSONL, or CSV with optional anonymization
  • Feedback and calibration system — Self-improving estimation from your telemetry data:
    • feedback status — Calibration health and per-type estimates
    • feedback accuracy — Estimated vs actual performance
    • feedback calibrate — Trigger recalibration from telemetry
    • feedback query <type> — Get estimates, model, and effort recommendations per task type
  • Anomaly detection — Automatic detection of token spikes, duration spikes, repeated failures, and overhead spikes.
  • Workspace management — Multi-project workspace support:
    • workspace init — Initialize a workspace with --scan for auto-discovery
    • workspace status — View project states, dependencies, and agent teams
    • workspace pull — Pull latest across all projects (skips dirty repos)

v2.11.4 — February 4, 2026

Fixed

  • Windows wizard encoding — Fixed UnicodeEncodeError when creating projects with non-ASCII characters on Windows.

v2.11.3 — February 4, 2026

Added

  • Subscription management — New self-service commands:
    • subscription status — View tier, renewal date, and machine slots
    • subscription manage — Open Stripe Billing Portal for payment and plan changes

Fixed

  • Windows terminal output — Fixed emoji and Unicode rendering on Windows terminals.

v2.11.2 — February 3, 2026

Fixed

  • Wizard templates — Fixed the setup wizard writing minimal placeholder files instead of full templates. capabilities.yaml, workflow.md, and state.md now contain complete content.

v2.11.1 — February 2, 2026

Added

  • Automatic tier change detection — The CLI now detects when your license tier changes server-side and auto-fetches the updated license with signature verification.
  • Subscription upgrade/downgrade — Upgrade or downgrade your plan with Stripe proration support. Downgrades automatically deactivate excess machines.

v2.11.0 — February 1, 2026

Added

  • Machine binding — Bind licenses to specific machines with per-tier limits (Solo: 1, Pro: 2, Team: 3, Enterprise: 5).
    • license activate [--name NAME] — Activate current machine
    • license deactivate — Deactivate current machine
    • license machines — List all activated machines
    • license machine-id — Display your machine identifier
  • Online license validation — Licenses are validated against the PairCoder API on startup with a 7-day offline grace period. Use --offline or PAIRCODER_OFFLINE=1 to skip.
  • License revocation — Revoked licenses are immediately blocked with clear error messaging and renewal instructions.
  • Expiration warnings — 7-day advance warning before license expiry with renewal links.
  • Cache managementlicense clear-cache command for troubleshooting validation issues.

Changed

  • License errors — License validation messages now go to stderr instead of stdout, avoiding interference with JSON output and piping.
  • Silent startup — Only critical errors (revoked licenses) are shown on startup. Warnings are suppressed for normal operation.

v2.10.6 — January 29, 2026

Added

  • Global user preferences — Persistent user settings in ~/.paircoder/preferences.yaml:
    • config prefs set <key> <value>
    • config prefs get <key>
    • config prefs list

Fixed

  • WSL terminal detection — Auto-detect WSL and use appropriate terminal (wt.exe/cmd.exe).
  • Wizard confirmation — Fixed 400 error during project creation.

v2.10.1 — January 29, 2026

Fixed

  • Wizard packaging — Fixed "Directory does not exist" error when running the setup wizard from a pip install.

Changed

  • Simpler installation — Wizard dependencies (FastAPI, Jinja2, Uvicorn) and metric tracking (toggl-py) are now included in the base install for easier onboarding.

v2.10.0 — January 29, 2026

Added

  • Interactive setup wizardbpsai-pair wizard launches a full-featured web-based setup wizard:
    • Quick Setup and Guided Setup tracks
    • Project basics, enforcement settings, and integration configuration
    • Tier-aware feature gating with upgrade prompts
    • Update mode for editing existing configurations
    • License installation flow
  • Licensing system — Tier-based feature access (Solo, Pro, Enterprise):
    • license status — View current license and tier
    • license features — List available features
    • license install <file> — Install a license file
    • license verify-keypair — Verify CLI/API key alignment

Changed

  • "Free" tier renamed to "Solo" — Consistent branding across CLI and documentation.

v2.9.4 — January 22, 2026

Fixed

  • State validation performancestate validate reduced from 69+ seconds to under 1 second. Default is now fast local validation; use --full for complete Trello API validation.
  • Docker sandbox — Fixed tmpfs mount error when blocking individual files in containment mode.
  • PyPI installs — Fixed wheel installs failing to create scaffolding files (skills, agents, context files).

Added

  • Optional dependency groups — Install only what you need:
    • pip install bpsai-pair[all] — Everything
    • pip install bpsai-pair[trello,github] — Specific integrations

v2.9.3 — January 21, 2026

Added

  • Architecture enforcement — Code quality gates to keep files maintainable:
    • arch check — Check files against line, function, and import limits
    • arch suggest-split — AI-assisted suggestions for splitting large files
    • Configurable limits in config.yaml
    • Integrated into task completion gates

v2.9.1 — January 14, 2026

Added

  • Contained autonomy mode — Docker-enforced isolation for autonomous AI sessions:
    • contained-auto [TASK] — Start a contained session with protected paths
    • containment status — View current containment mode
    • containment rollback [CHECKPOINT] — Rollback to a checkpoint
    • containment list — List checkpoints
    • containment cleanup --keep N — Remove old checkpoints
  • Three-tier access control — Blocked (no access), Read-only, and Read-write file tiers.
  • Network allowlist — iptables-based domain filtering in strict mode. Configurable via containment.allow_network.
  • Auto-checkpoint — Git checkpoint created automatically on containment entry with rollback support.

Changed

  • Python compatibility — CLI now supports Python 3.11+ (down from 3.12).

v2.9.0 — January 5, 2026

Added

  • Task state machine — Formal lifecycle states for tasks (NOT_STARTED → BUDGET_CHECKED → IN_PROGRESS → AC_VERIFIED → COMPLETED):
    • state show <task> / state list / state history <task>
    • state advance <task> <state> --reason — Manual state transitions
  • Bypass audit logging — All enforcement bypasses are logged for accountability:
    • audit bypasses [--since DAYS] — View bypass history
    • audit summary — Breakdown by type

Changed (Breaking)

  • skill export --forceskill export --overwrite
  • skill install --forceskill install --overwrite
  • security install-hook --forcesecurity install-hook --overwrite
  • sprint complete --forcesprint complete --skip-checklist --reason "..."
  • ttask done now verifies acceptance criteria by default (use --no-strict to bypass)
  • ttask start checks budget by default (use --budget-override to bypass)

v2.8.0 — December 23, 2025

Added

  • Token budget system — Track and control token usage per session:
    • budget estimate <task-id> — Token estimate breakdown
    • budget status — Current session token usage with color-coded progress bar
    • budget check <task-id> — Pre-flight check against limits
    • Automatic warnings when a task may exceed 75% of session budget
  • Skill export to other platforms — Export skills to Codex, ChatGPT, Cursor, Continue.dev, and Windsurf:
    • skill export --format codex
    • skill export --format chatgpt
    • skill export --format all

Deprecated

  • Flow commandsflow list, flow show, flow run, flow validate are deprecated in favor of Skills. Removal planned for v2.11.0. Use --no-deprecation-warnings in CI/CD.

v2.7.0 — December 22, 2025

Added

  • Session management — Automatic session detection and context recovery:
    • session check — Detects new sessions (>30 min gap) and displays context
    • session status — Current session info
    • Configurable session timeout in config.yaml
  • Compaction recovery — Preserve context across Claude Code compaction events:
    • compaction snapshot save/list — Manage snapshots
    • compaction check — Detect unrecovered compaction
    • compaction recover — Restore context
  • Plan token estimationplan estimate <plan-id> shows token breakdown with batching suggestions.
  • Skill validationskill validate checks all skills against Anthropic spec with --fix for auto-correction.
  • Trello AC verificationttask done verifies all acceptance criteria checklist items are checked before completion.
  • Migration commandbpsai-pair migrate upgrades legacy v1.x and v2.0–2.3 project structures to the latest format.

v2.6.0 — December 18, 2025

Added

  • Time tracking — Automatic timer start/stop tied to task status changes. Duration-based estimation with min/expected/max hours by complexity band (XS–XL).
  • Velocity trackingmetrics velocity for weekly and sprint-based velocity. metrics burndown --sprint <id> for burndown chart data.
  • Estimation accuracy reportsmetrics accuracy for breakdown by task type and complexity with calibration recommendations.
  • Token estimation — Predict token usage per task with a self-improving feedback loop. metrics tokens for accuracy reports.

Changed

  • Task storage — All tasks now stored flat in .paircoder/tasks/ (no subdirectories).

v2.5.3 — December 17, 2025

Added

  • Secret detection — Pre-commit scanning for AWS keys, GitHub tokens, Slack tokens, and private keys with allowlist support.
  • Dependency vulnerability scanningscan-deps checks Python (pip-audit) and npm (npm audit) dependencies for CVEs with --fail-on severity threshold.

v2.5.2 — December 17, 2025

Added

  • Command allowlist — Classify commands as ALLOW, REVIEW, or BLOCK. Configurable via .paircoder/security/allowlist.yaml.
  • Pre-execution security review — Hooks scan staged code for secrets, SQL injection, command injection, and path traversal before execution.
  • Docker sandbox — Isolated container execution for untrusted commands with memory/CPU limits and network isolation.
  • Git checkpoint/rollback — Automatic safety nets for code changes with checkpoint creation, preview, and rollback.

v2.5.1 — December 17, 2025

Added

  • Trello deep integration — Full Trello card management from the CLI:
    • Custom field sync (Project, Stack, Status, Effort, Deployment Tag)
    • BPS label colors for stack types
    • Two-way sync — card movements update local task status
    • Checklist support from acceptance criteria
    • Due date sync from sprint dates
    • Activity log comments on status changes

v2.5.0 — December 16, 2025

Added

  • Preset system — 8 built-in presets for quick project initialization:
    • preset list / preset show <name> / preset preview <name>
    • init --preset <name>
    • Presets: python-cli, python-api, react, fullstack, library, minimal, autonomous, bps
  • GitHub PR integration — Automated pull request workflows:
    • github auto-pr — Auto-create PR from branch name
    • github archive-merged <pr> — Archive task when PR merges
    • github link <task> — Link task to existing PR
  • Trello progress comments — Post progress updates, blockers, and completions directly on Trello cards.
  • Daily standup summarystandup generate with Slack format support and configurable lookback period.
  • Intent detectionintent detect <text> detects work intent from natural language to suggest appropriate workflows.

v2.4.0 — December 16, 2025

Added

  • MCP server — Claude and MCP-compatible agents can call PairCoder tools directly:
    • mcp serve — Start MCP server (stdio transport)
    • mcp tools — List all 13 available tools
    • mcp test <tool> — Test tools locally
  • Auto-hooks system — Automatic actions on task state changes (start_timer, stop_timer, record_metrics, sync_trello, update_state, check_unblocked). Configurable in config.yaml.
  • Plan-to-Trello syncplan sync-trello <plan-id> creates Trello cards from plan tasks.

v2.3.0 — December 15, 2025

Added

  • Trello integration — Full board and card management:
    • trello connect / trello status / trello boards / trello use-board
    • ttask list / ttask show / ttask start / ttask done / ttask block
    • ttask comment / ttask move

v2.2.0 — December 15, 2025

Added

  • Prompt caching — Efficient context management for repeated interactions.
  • cache stats / cache clear / cache invalidate commands.
  • Codex-optimized packingpack --lite for compact context output.

v2.1.0 — December 15, 2025

Added

  • Headless mode — Run PairCoder in headless mode for orchestration and CI integration.
  • Agent handoff protocol — Structured context passing between Navigator, Driver, and Reviewer agents.
  • Task lifecycle management — Formal task states with hooks for automation.
  • Token tracking and cost estimation — Track token usage and estimate costs per task.
  • Time tracking — Built-in timer with Toggl integration.

v1.0.0 — September 5, 2025

Closed Beta

Initial closed beta release for feedback and validation of the pair programming workflow.


v0.2.0 — August 21, 2025

Added

  • Cross-platform CLI — Core commands implemented in pure Python (no Bash required). Full Windows support.
  • status — View current context and recent changes.
  • validate — Check repo structure and context consistency.
  • ci — Run local checks.
  • pack --dry-run / --list / --json for context packing previews.

v0.1.0 — August 7, 2025

Initial Release

First development release with core CLI commands: init, feature, pack, context-sync. Cookiecutter template for project scaffolding.


PairCoder is built by BPS AI Software.