Skip to main content

AI-augmented pair programming framework with 215+ CLI commands for planning, orchestration, Trello/GitHub integration, and autonomous workflows

Project description

bpsai-pair

AI-augmented pair programming framework with 210+ CLI commands

PyPI version Python 3.10+ License

Overview

bpsai-pair (PairCoder) is a comprehensive AI pair programming framework that provides structured workflows, enforcement gates, and integrations to ensure AI agents follow proper development practices.

  • Planning & Task Management — Sprint planning, task lifecycle, Trello sync, and budget tracking
  • Skill-Based Workflows — 9 built-in skills for TDD, code review, releases, architecture, and more
  • Integration Hub — Trello, GitHub, MCP servers, and Toggl time tracking
  • Architecture Enforcement — File size limits, function boundaries, import caps, and auto-split suggestions
  • Telemetry & Feedback — Session telemetry, self-calibrating estimation, anomaly detection
  • Workspace Orchestration — Multi-project workspaces, cross-repo contract detection, impact analysis
  • Intelligence Pipeline — Usage snapshots, value extraction scoring, tamper detection
  • Interactive Setup Wizard — Web-based project configuration with AI-guided setup
  • Licensing & Security — Tiered feature gating, secret scanning, containment mode
  • Quality Control — Browser-based QC with spec format, execution runtime, and gate enforcement
  • Containment Mode — Tiered file access control via PreToolUse hooks
  • Autonomous Sprint Executionbpsai-pair engage runs full sprints: branch, tasks, PR, review, observations
  • Machine Interface--json envelope on all commands for programmatic consumption
  • Health Checkbpsai-pair doctor validates setup with 9 checks and auto-repair
  • Slash Commands/make-it-so (intent to PR), /draft-backlog (engage-compatible backlogs)

Installation

# Core installation
pip install bpsai-pair

# With integrations
pip install bpsai-pair[trello]      # Trello board sync
pip install bpsai-pair[github]      # GitHub PR management
pip install bpsai-pair[mcp]         # MCP server support
pip install bpsai-pair[all]         # All extras

Quick Start

# Initialize a new project
bpsai-pair init

# Or use the interactive wizard
bpsai-pair wizard

# Check project status
bpsai-pair status

# Create a sprint plan
bpsai-pair plan new my-feature --type feature

# Start a task (with Trello sync)
bpsai-pair ttask start TRELLO-123

# Run architecture checks
bpsai-pair arch check

# Pack context for AI assistants
bpsai-pair pack

Key Command Groups

Group Commands Description
plan 8 Sprint planning, task creation, Trello sync
task 12 Task lifecycle, status updates, archival
trello / ttask 27 Trello board management, card workflows
github 8 PR creation, merge, auto-archive
skill 8 Workflow skills, export to Cursor/Windsurf
license 10 License management, feature gating
telemetry 3 Session telemetry, privacy config, export
feedback 4 Calibration, accuracy, task-type estimates
workspace 5 Multi-project orchestration, impact analysis
arch 2 Architecture enforcement, split suggestions
budget 3 Token budget tracking, task cost estimates
security 4 Secret scanning, containment mode
qc 6 Quality check specs, execution, reporting
query 3 Cross-agent state and telemetry queries
engage 1 Autonomous sprint execution from backlog
fleet 1 Workspace version compliance checking
release 2 Pre-release validation, version file checking
containment 2 File access enforcement and status

License Tiers

Feature Solo Pro Enterprise
Planning & tasks Y Y Y
Skills & enforcement Y Y Y
Setup wizard Y Y Y
Telemetry & feedback Y Y Y
Trello integration Y Y
GitHub integration Y Y
MCP servers Y Y
Token budget & cost tracking Y Y
Workspace orchestration Y Y
Remote access & SSO Y

Check your license: bpsai-pair license status

What's New

v2.25.4 -- Engage Hardening + Provider Presets

  • Engage circuit-breaker false-positives fixed: text-generation tasks writing to .paircoder/outputs/ and .paircoder/artifacts/ now correctly count as meaningful output (#295)
  • bpsai-pair engage rejects plan-style markdown (no **AC:** checkboxes) with an actionable error pointing at /draft-backlog instead of running the file to failure (#295)
  • Backlog parser accepts **Acceptance criteria:** as a synonym for **AC:**, restoring Navigator → engage dispatch from bpsai-computer (#295)
  • 5 MB size cap on backlog files to fail fast on pathological inputs (#295)
  • bpsai-pair config provider <name> for env-var-based provider switching (Anthropic / OpenRouter / Ollama / LM Studio / Azure-via-proxy) plus docs/providers.md (#256)
  • /prime-learn in-session knowledge capture with A2A #knowledge channel push (#260)
  • Engage A2A push payloads now satisfy the SendMessageRequest contract — closes weeks of silent telemetry loss (#267)
  • Version-mismatch warning gated on TTY: stops Click 8.2's StreamMixer from polluting CliRunner.result.output and fixes ~22 flaky tests (#264)
  • --hooks-advisory flag deleted: hook failures always reclassify the task as hook_failed; persisted run-state from older releases still loads (#257)

v2.25.3 -- CLI Hardening + Test Parallelization

  • Test suite 22+ min → 1:50 with pytest-xdist parallelization (10× speedup, ~13,700 tests)
  • License machine binding actually enforced: copying license.json to a second machine is now rejected (3-day grace period for legitimate first-install activation)
  • Pre-dispatch AC check tightened: tasks with no implementation no longer falsely "satisfy" the heuristic via stray symbol matches
  • New sysproc.run() UTF-8-safe subprocess wrapper closes the Windows cp1252 crash class permanently
  • New bpsai-pair arch check-subprocess lint rule (report-only by default)
  • Lifecycle hooks (Stop/SubagentStop) wrapped to degrade gracefully when commands aren't yet installed
  • platform-check workflow no longer requires A2A secrets — sources project context from local state.md
  • 28 task-level cleanups closing #126, #157, #178 (phase 1), #195, #196, #197, #213

v2.25.2 -- Engage Stability Patches + Windows UTF-8 Fix

  • Windows engage now usable: UTF-8 encoding sweep on engage subprocess (security agent dispatch + PR creation paths)
  • Engage hook chain no longer noisy: orchestrate evaluate --quiet flag now exists, ending No such option errors on every TaskCompleted/TeammateIdle
  • Self-PR --request-changes review-post no longer silently swallowed (falls back to --comment for solo developers)
  • Workspace scope leak fixed: bpsai-pair plan new from a non-workspace project no longer pushes bogus task files to unrelated sibling repos
  • Greedy task-file glob fixed: searching T1 no longer matches T18.1.task.md
  • Nayru/Vaivora model config aligned across config.yaml and agent frontmatter (regen path also fixed)
  • sync_pm/sync_trello hook chain deduped (legacy sync_trello removed via DEPRECATED_HOOKS)
  • 4 pure-CLI skills marked slash-command-only via disable-model-invocation: true
  • PreToolUse containment hooks now emit JSON additionalContext payload on block; fail-closed with clean error on unexpected exception (no traceback bleed into hook stdin)
  • New E2E smoke test for bpsai-pair mcp serve --transport stdio (skipped on older mcp packages)

v2.25.1 -- Engage Hook Failure Loop Hotfix

  • Root cause fix: hook failures now propagate correctly instead of being silently swallowed
  • Security audit findings are now visible when engage blocks a PR
  • Driver self-commit completeness: remaining uncommitted changes are committed automatically
  • Pre-dispatch AC satisfaction check excludes non-source directories
  • Release workflow hardened: correct ref on manual dispatch, PyPI-first ordering

v2.25.0 -- Engage Driver Intelligence + Pipeline Reliability

  • Pre-dispatch AC check: skip tasks whose work was already completed in prior sprints
  • Driver self-commit detection: recognize when drivers commit their own work
  • Engage-mode enforcement bypass: headless drivers no longer blocked by interactive hooks
  • bpsai-pair preflight: run tests with CI-matching env before pushing
  • CI triggers on dev only (no more duplicate runs on main+dev)
  • Sweep full-file parsing fix: reads complete files from git refs instead of diff fragments

v2.24.0 -- Sweep: Diff-Aware Dead Code Cleanup

  • bpsai-pair sweep: find dead imports, orphaned tests, stale helpers after code changes
  • Diff-aware reverse impact analysis with provider auto-detection (Python AST + generic regex)
  • --fix auto-removes high-confidence dead imports
  • --deep requests full dependency graph analysis from Amunet via A2A
  • Post-engage hook: cleanup opportunities in PR body (advisory)
  • Review posting fix: large review bodies piped via stdin
  • Engage lifecycle hooks pass --allow-dirty for reliable automated sprints
  • Full CI test suite green (13,253+ tests) with license bypass for CI

v2.23.2 -- Hotfix: Engage Lifecycle + CI Test Suite

  • Engage lifecycle hooks pass --allow-dirty (dirty-tree guard no longer blocks automated task completion)
  • Full CI test suite green: 13,253 tests passing on every push
  • BPSAI_UNLOCK_ALL_FEATURES env var for CI testing without a license
  • NO_COLOR in CI prevents Rich ANSI codes from breaking assertions

v2.23.1 -- Hotfix: Engage Commit Verification + Upgrade Commit

  • Fixed false positive engage_commit_empty on every task when repo had a stale CLI version
  • Auto-upgrade now commits config artifacts to git (clean tree after upgrade)
  • upgrade --commit flag for explicit commit after manual upgrade
  • fleet check --upgrade --commit triggers project upgrade + commit per repo

v2.23.0 -- Engage Reliability + Hook Intelligence + Resume

  • engage --resume: skip completed tasks on retry, no more re-running entire sprints
  • Security agent fail-closed for ALL exceptions (not just OSError). Diff piped via temp file.
  • Hook failure propagation: tasks no longer silently succeed when hooks fail
  • On-disk dependency verification prevents stale in-memory state
  • Human-gated tasks: requires: human in backlog frontmatter pauses engage
  • --create-branch / --branch flags for branch lifecycle management
  • Pre-engage containment audit warns about protected path conflicts
  • TaskCompleted verifies meaningful output (empty commits flagged)
  • StopFailure blocks next task and surfaces reason
  • SubagentStop + TeammateIdle push status to A2A channels
  • Pre-task budget heuristic warns before session limits hit
  • Review skills use context: fork for agent isolation
  • Forgiving backlog parser (em dash, double hyphen, single hyphen)
  • UTF-8 encoding on all engage subprocess calls (Windows cp1252 fix)
  • Full test suite CI on every push to dev/main
  • 13,275+ tests passing

v2.22.1 -- Hotfix: License Activation Auth

  • Machine activation, deactivation, and listing now send the required X-License-Key auth header

v2.22.0 -- Mythology Agent Identity + Vaivora Review Agent

  • All agents use mythology names as identifiers: Nayru (reviewer), Laverna (security auditor), Bellona (pre-execution gatekeeper), Vaivora (cross-module review), Divona (QC)
  • Vaivora wired as third review agent for large diffs (>500 lines or >10 files)
  • Review pipeline refactored: engage, branch, and PR review use shared dispatch with mythology display names
  • REVIEW intent type: "review these PRs" routes to the review skill instead of generic reasoning
  • Laverna upgraded to Opus model for complete security findings
  • Engage auto-created PRs now target dev branch when dev exists
  • 12,844+ tests passing

v2.21.5 -- Branch Enforcement + Intent Merge Strategy

  • Branch enforcement: source code on main/dev is blocked, docs/state allowed through
  • Intent-driven merge strategy: squash vs merge based on work intent and branch pattern
  • PR labels (merge:squash, merge:merge) carry strategy to merge time
  • Auto-upgrade stages .paircoder/ files to prevent dirty tree in engage
  • Stale containment stash cleanup in engage pre-flight
  • 12,500+ tests passing

v2.21.4 -- Review Command + Targeted Tests + Engage Fixes

  • bpsai-pair review pr/branch/task: Python-enforced review dispatch with agent scaling
  • Intent sub-classification routes review requests to the right variant
  • Engage tasks run targeted tests (seconds) instead of full suite (minutes)
  • Engage executor no longer crashes on lifecycle hook failures
  • Engage commits exclude .paircoder/ bookkeeping files (no more merge conflicts)
  • Agent mythology display names in review dispatch and output
  • Error-as-approval bug fixed: failed reviews no longer pass as approvals
  • 12,500+ tests passing

v2.21.3 -- Release Hardening + Engage Review Loop

  • Version downgrade protection: CLI no longer overwrites config with older versions
  • bpsai-pair release validate-versions: pre-tag gate with --fix auto-repair
  • bpsai-pair fleet check: workspace version compliance with --upgrade and --json
  • Per-task review loop in autonomous sprints with automatic correction
  • Pre-PR security gate blocks pull requests with critical findings
  • Agent upgrade preserves custom fields (memory, maxTurns, display names)
  • support open shows actual error details instead of generic messages
  • 12,500+ tests passing

v2.21.1 -- Remote Session Enforcement

  • SessionStart hook auto-installs PairCoder in remote sessions
  • API error surfacing across all license, support, and subscription commands

v2.21.0 -- Enforcement + Observability

  • Intent recognition and approval gate for autonomous dispatch
  • Operational signals: uncommitted code, abandoned sessions, gate blocks
  • Protected branch guard: engage refuses to run on main/dev

v2.20.0 -- Engage Pipeline

  • bpsai-pair engage runs full sprints autonomously (branch, tasks, PR, review)
  • /make-it-so command: intent to shipped PR in one command
  • bpsai-pair doctor with 9 health checks and --fix auto-repair

Documentation

Requirements

  • Python 3.10 or higher
  • Git (for project management features)

Support

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bpsai_pair-2.25.4.tar.gz (1.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bpsai_pair-2.25.4-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file bpsai_pair-2.25.4.tar.gz.

File metadata

  • Download URL: bpsai_pair-2.25.4.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for bpsai_pair-2.25.4.tar.gz
Algorithm Hash digest
SHA256 84e08b6dd509a184c90154e75a8586cee48d7a3644eeed7072d16eb709c75164
MD5 9dc22aa7fc11a814b8ad3e1e34dbf013
BLAKE2b-256 81d22b2af31f3844c93c7519d597d09a670c36e1c4db542b59339459924c0c17

See more details on using hashes here.

File details

Details for the file bpsai_pair-2.25.4-py3-none-any.whl.

File metadata

  • Download URL: bpsai_pair-2.25.4-py3-none-any.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for bpsai_pair-2.25.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b7526bba31fd20c8dc56f8437d5e806c8de6cd31584b7bbb5caf5bf57fcda7e8
MD5 18d3d84e6767ba36f147d6c0ca8877a4
BLAKE2b-256 64698b89f4e2e5a3310b4c86247df8023034fe69bdcc82cf7d47fc26225de961

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page