freshcrate
Skin:/
Home > Testing > pilot

pilot

#1 Terminal Benchmark 2.0 โ€” AI that ships your tickets.

Why this rank:Strong adoptionRecent releaseHealthy release cadence

Description

#1 Terminal Benchmark 2.0 โ€” AI that ships your tickets.

README

   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•—      โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—
   โ–ˆโ–ˆโ•”โ•โ•โ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘     โ–ˆโ–ˆโ•”โ•โ•โ•โ–ˆโ–ˆโ•—โ•šโ•โ•โ–ˆโ–ˆโ•”โ•โ•โ•
   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•”โ•โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘     โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘
   โ–ˆโ–ˆโ•”โ•โ•โ•โ• โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ•‘     โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘   โ–ˆโ–ˆโ•‘
   โ–ˆโ–ˆโ•‘     โ–ˆโ–ˆโ•‘โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ•šโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•”โ•   โ–ˆโ–ˆโ•‘
   โ•šโ•โ•     โ•šโ•โ•โ•šโ•โ•โ•โ•โ•โ•โ• โ•šโ•โ•โ•โ•โ•โ•    โ•šโ•โ•
  

AI that ships your tickets while you sleep

ReleaseLicense: BSL 1.1 Go Report CardDiscord Docs โ€ข Install โ€ข Desktop โ€ข Quick Start โ€ข How It Works โ€ข Features โ€ข CLI โ€ข Discord โ€ข Deploy



The Problem

You have 47 tickets in your backlog. You agonize over which to prioritize. Half are "quick fixes" that somehow take 2 hours each. Your PM asks for status updates. Sound familiar?

The Solution

Pilot picks up tickets from GitHub, Linear, Jira, or Asanaโ€”plans the implementation, writes the code, runs tests, and opens a PR. You review and merge. That's it.

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”      โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”      โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”      โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚   Ticket    โ”‚ โ”€โ”€โ”€โ–ถ โ”‚   Pilot     โ”‚ โ”€โ”€โ”€โ–ถ โ”‚   Review    โ”‚ โ”€โ”€โ”€โ–ถ โ”‚   Ship      โ”‚
โ”‚  (GitHub)   โ”‚      โ”‚  (AI dev)   โ”‚      โ”‚   (You)     โ”‚      โ”‚  (Merge)    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜      โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜      โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜      โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
pilot-preview-screenshot

Install

Homebrew (recommended)

brew tap qf-studio/pilot
brew install pilot

Go Install

go install github.com/qf-studio/pilot/cmd/pilot@latest

From Source

git clone https://github.com/qf-studio/pilot
cd pilot
make build
sudo make install-global

Desktop App

Download the desktop app from the latest release:

Platform Download
macOS (Universal) Pilot-Desktop-macOS-universal.dmg
Windows (x64) Pilot-Desktop-Windows-amd64-setup.exe
Linux (x64) Pilot-Desktop-Linux-amd64.tar.gz

Requirements

  • Go 1.22+ (build only)
  • Claude Code CLI 2.1.17+
  • OpenAI API key (optional, for voice transcription)

Quick Start

# 1. Initialize config
pilot init

# 2. Start Pilot
pilot start --github              # GitHub issue polling
pilot start --telegram            # Telegram bot
pilot start --telegram --github   # Both

# 3. Create a GitHub issue with 'pilot' label, or message your Telegram bot

That's it. Go grab coffee. โ˜•

How It Works

You label issue "pilot"
        โ”‚
        โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Pilot claims it  โ”‚  โ† Adds "pilot/in-progress" label
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
        โ”‚
        โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Creates branch   โ”‚  โ† pilot/GH-{number}
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
        โ”‚
        โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Plans approach   โ”‚  โ† Analyzes codebase, designs solution
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
        โ”‚
        โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Implements       โ”‚  โ† Writes code with Claude Code
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
        โ”‚
        โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Quality gates    โ”‚  โ† Test, lint, build validation
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
        โ”‚
        โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Opens PR         โ”‚  โ† Links to issue, adds "pilot/done"
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
        โ”‚
        โ–ผ
    You review
        โ”‚
        โ–ผ
      Merge ๐Ÿš€

Features

133 features implemented across execution, intelligence, integrations, and infrastructure.

Core Execution

Feature Description
Autopilot CI monitoring, auto-merge, feedback loop (dev/stage/prod modes)
Epic Decomposition Complex tasks auto-split into sequential subtasks via Haiku API
Self-Review Auto code review before PR push catches issues early
Sequential Execution Wait for PR merge before next issue (prevents conflicts)
Quality Gates Test/lint/build validation with auto-retry
Execution Replay Record, playback, analyze, export (HTML/JSON/MD)

Intelligence

Feature Description
Model Routing Haiku (trivial) โ†’ Opus 4.6 (standard/complex), auto-detected
Effort Routing Maps task complexity to Claude thinking depth
Research Subagents Haiku-powered parallel codebase exploration
Navigator Integration Auto-detected .agent/, skipped for trivial tasks
Cross-Project Memory Shared patterns and context across repositories

Integrations

Feature Description
Telegram Bot Chat, research, planning, tasks + voice & images
GitHub Polling Auto-pick issues with pilot label
GitLab / Azure DevOps Full polling + webhook adapters
Linear/Jira/Asana Webhooks and task sync
Daily Briefs Scheduled reports via Slack/Email/Telegram
Alerting Task failures, cost thresholds, stuck detection

Infrastructure

Feature Description
Dashboard TUI Sparkline metrics cards, queue depth, autopilot status
Persistent Metrics Token/cost/task counts survive restarts via SQLite
Hot Upgrade Self-update with pilot upgrade or u key in dashboard
Cost Controls Budget limits with hard enforcement
Multiple Backends Claude Code + OpenCode support
BYOK Bring your own Anthropic key, Bedrock, or Vertex

Autopilot Modes

Control how much autonomy Pilot has:

# Fast iteration - skip CI, auto-merge
pilot start --autopilot=dev --github

# Balanced - wait for CI, then auto-merge
pilot start --autopilot=stage --github

# Safe - wait for CI + human approval
pilot start --autopilot=prod --github

Telegram Integration

Talk to Pilot naturally - it understands different interaction modes:

Mode Example What Happens
๐Ÿ’ฌ Chat "What do you think about using Redis?" Conversational response, no code changes
๐Ÿ” Question "What files handle authentication?" Quick read-only answer
๐Ÿ”ฌ Research "Research how the caching layer works" Deep analysis sent to chat
๐Ÿ“ Planning "Plan how to add rate limiting" Shows plan with Execute/Cancel buttons
๐Ÿš€ Task "Add rate limiting to /api/users" Confirms, then creates PR
You: "Plan how to add user authentication"
Pilot: ๐Ÿ“ Drafting plan...
Pilot: ๐Ÿ“‹ Implementation Plan
       1. Create auth middleware...
       2. Add JWT token validation...
       [Execute] [Cancel]

You: [clicks Execute]
Pilot: ๐Ÿš€ Executing...
Pilot: โœ… PR #142 ready: https://github.com/...

Send voice messages, images, or text. Pilot understands context.

Dashboard

Real-time visibility into what Pilot is doing:

โ”Œโ”€ Pilot Dashboard โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                                                           โ”‚
โ”‚  Status: โ— Running    Autopilot: stage    Queue: 3        โ”‚
โ”‚                                                           โ”‚
โ”‚  Current Task                                             โ”‚
โ”‚  โ”œโ”€ GH-156: Add user authentication                       โ”‚
โ”‚  โ”œโ”€ Phase: Implementing (65%)                             โ”‚
โ”‚  โ””โ”€ Duration: 2m 34s                                      โ”‚
โ”‚                                                           โ”‚
โ”‚  Token Usage          Cost                                โ”‚
โ”‚  โ”œโ”€ Input:  124k      Today:    $4.82                     โ”‚
โ”‚  โ”œโ”€ Output:  31k      This Week: $28.40                   โ”‚
โ”‚  โ””โ”€ Total:  155k      Budget:    $100.00                  โ”‚
โ”‚                                                           โ”‚
โ”‚  Recent Tasks                                             โ”‚
โ”‚  โ”œโ”€ โœ… GH-155  Fix login redirect      1m 12s   $0.45     โ”‚ 
โ”‚  โ”œโ”€ โœ… GH-154  Add dark mode toggle    3m 45s   $1.20     โ”‚
โ”‚  โ””โ”€ โœ… GH-153  Update dependencies     0m 34s   $0.15     โ”‚
โ”‚                                                           โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
pilot start --dashboard --github

Environment Variables

Pilot uses Claude Code for AI execution:

Variable Description
ANTHROPIC_API_KEY Custom Anthropic API key (uses your own account)
ANTHROPIC_BASE_URL Custom API endpoint (proxies, enterprise)
CLAUDE_CODE_USE_BEDROCK Set to 1 for AWS Bedrock
CLAUDE_CODE_USE_VERTEX Set to 1 for Google Vertex AI

Example: Using AWS Bedrock

export CLAUDE_CODE_USE_BEDROCK=1
export AWS_REGION=us-east-1
pilot start --github

Configuration

Config location: ~/.pilot/config.yaml

version: "1.0"

gateway:
  host: "127.0.0.1"
  port: 9090

adapters:
  telegram:
    enabled: true
    bot_token: "${TELEGRAM_BOT_TOKEN}"
    chat_id: "${TELEGRAM_CHAT_ID}"

  github:
    enabled: true
    token: "${GITHUB_TOKEN}"
    repo: "owner/repo"
    pilot_label: "pilot"
    polling:
      enabled: true
      interval: 30s

orchestrator:
  execution:
    mode: sequential           # "sequential" or "parallel"
    wait_for_merge: true       # Wait for PR merge before next task
    poll_interval: 30s
    pr_timeout: 1h

projects:
  - name: "my-project"
    path: "~/Projects/my-project"
    navigator: true
    default_branch: main

daily_brief:
  enabled: true
  schedule: "0 8 * * *"
  timezone: "Europe/Berlin"

alerts:
  enabled: true
  channels:
    - name: telegram-alerts
      type: telegram
      severities: [critical, error, warning]

executor:
  backend: claude-code          # "claude-code" or "opencode"

CLI Reference

Core Commands

pilot start          # Start with configured inputs
pilot stop           # Stop daemon
pilot status         # Show running tasks
pilot init           # Initialize configuration
pilot version        # Show version info

pilot start

pilot start                          # Config-driven
pilot start --telegram               # Enable Telegram polling
pilot start --github                 # Enable GitHub issue polling
pilot start --linear                 # Enable Linear webhooks
pilot start --telegram --github      # Enable both
pilot start --dashboard              # With TUI dashboard
pilot start --no-gateway             # Polling only (no HTTP server)
pilot start --sequential             # Sequential execution mode
pilot start --autopilot=stage        # Autopilot mode (dev/stage/prod)
pilot start -p ~/Projects/myapp      # Specify project
pilot start --replace                # Kill existing instance first

pilot task

pilot task "Add user authentication"                    # Run in cwd
pilot task "Fix login bug" -p ~/Projects/myapp          # Specify project
pilot task "Refactor API" --verbose                     # Stream output
pilot task "Update docs" --dry-run                      # Preview only
pilot task "Implement feature" --backend opencode       # Use OpenCode

pilot upgrade

pilot upgrade                    # Check and upgrade
pilot upgrade check              # Only check for updates
pilot upgrade rollback           # Restore previous version
pilot upgrade --force            # Skip task completion wait
pilot upgrade --no-restart       # Don't restart after upgrade
pilot upgrade --yes              # Skip confirmation

Analytics Commands

pilot brief                       # Show scheduler status
pilot brief --now                 # Generate and send immediately
pilot brief --weekly              # Generate weekly summary

pilot metrics summary             # Last 7 days overview
pilot metrics summary --days 30   # Last 30 days
pilot metrics daily               # Daily breakdown
pilot metrics projects            # Per-project stats

pilot usage summary               # Billable usage summary
pilot usage daily                 # Daily breakdown
pilot usage export --format json  # Export for billing

pilot patterns list               # List learned patterns
pilot patterns search "auth"      # Search by keyword

Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                          PILOT                              โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ Gateway      โ”‚ HTTP/WebSocket server, routing               โ”‚
โ”‚ Adapters     โ”‚ Telegram, Slack, GitHub, Jira, Linear, Asana โ”‚
โ”‚ Executor     โ”‚ Claude Code process management               โ”‚
โ”‚ Orchestrator โ”‚ Task planning, phase management              โ”‚
โ”‚ Memory       โ”‚ SQLite + cross-project knowledge graph       โ”‚
โ”‚ Briefs       โ”‚ Scheduled reports, multi-channel delivery    โ”‚
โ”‚ Alerts       โ”‚ Failure detection, cost monitoring           โ”‚
โ”‚ Metrics      โ”‚ Token usage, execution analytics             โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Development

make deps        # Install dependencies
make build       # Build binary
make test        # Run tests
make lint        # Run linter
make dev         # Development mode with hot reload

FAQ

Is this safe?

Pilot runs in your environment with your permissions. It can only access repos you configure. All changes go through PR review (unless you enable auto-merge). You stay in control.

How much does it cost?

Pilot is free. You pay for Claude API usage (~$0.50-2.00 per typical task). Set budget limits to control costs.

What tasks can it handle?

Best for: bug fixes, small features, refactoring, tests, docs, dependency updates.

Not ideal for: large architectural changes, security-critical code, tasks requiring human judgment.

Does it learn my codebase?

Yes. Pilot uses Navigator to understand your patterns, conventions, and architecture. Cross-project memory shares learnings across repositories.

License

Business Source License 1.1 ยฉ Aleksei Petrov

Use Case Allowed
Internal use โœ…
Self-hosting โœ…
Modification & forking โœ…
Non-competing products โœ…
Competing SaaS โŒ (requires license)

Converts to Apache 2.0 after 4 years.

Contributing

Contributions welcome. Please open an issue first for major changes.

git checkout -b feature/my-feature
make test
# Submit PR

Stop agonizing over tickets. Let Pilot ship them.

โญ Star on GitHub

Built with Claude Code + Navigator

Release History

VersionChangesUrgencyDate
v2.294.1## Changelog ### ๐Ÿ› Bug Fixes * e88a68c171901e525bae3d65e806d245c7173552: fix(dashboard): hydrated queue rows lose project + timestamps ((no project) group); split finished slot into run-time / time-ago columns (#5848) (@alekspetrov) ### ๐Ÿ“š Documentation * e71ae5b0821e8a6ecc9e21f801f9eef194ab57ca: docs(config): daily_brief block with weekly_day in pilot.example.yaml; pilot brief --weekly uses the scheduled window and stores the payload (follow-up to #5822) (#5847) (@alekspetrov) High10/24/2026
v2.294.0## Changelog ### ๐Ÿš€ Features * 0e115d5deced8bc47029c49af5ec18848daaac75: feat(autopilot): revive a size-guard-parked PR when CI goes green on the same head SHA (#5825) (@alekspetrov) * 6e53962ae335501e4f23f12828978aea7ff8b25c: feat(briefs): add timezone to the structured brief payload before the console binds to schema 1 (follow-up to #5799) (#5834) (@alekspetrov) * b8fa43099badcefcbf2b57ee6f8c6c798e13399b: feat(briefs): weekly brief on Monday with proof numbers โ€” tickets shipped, median time toHigh10/23/2026
v2.293.0## Changelog ### ๐Ÿš€ Features * d814c2381d90af25a47f504aa5191f73b6a4d7a5: feat(briefs): one brief object with console and email payloads; receipts digest folds in; cost lines only on own-key (#5799) (@alekspetrov) * 4666917db7a3e72b213a5aa460a92b9bb41cad68: feat(scripts): nav-dispatch-legs probe: lines pin a leg's premise on origin/main; docs: 10-22 failure research โ€” Postgres memory corrected, mem-268..273, SOP Rule 3d; fixes filed console#428, pilot#5800/#5801/#5802 ( <>) * 7e7eae2acee977a56ff5High10/22/2026
v2.290.0## Changelog ### ๐Ÿš€ Features * b0646f38590a415f5615cb41e4b6cac454a03762: feat(autopilot): sweep orphaned `pilot/*` remote branches that no tracked PR will ever delete (#5775) (@alekspetrov) * 276ee1431ccbafd086637d2c93e99d6ab603b03f: feat(autopilot): wire the PR lifecycle notifier behind an opt-in key (#5766) (@alekspetrov) ### ๐Ÿ› Bug Fixes * 5813530536717984865ab079ee70de7363730476: fix(approval): Telegram approval asks must go to the configured chat first, like Slack (GH-4808) (#5768) (@alekspHigh10/20/2026
v2.288.1## Changelog ### ๐Ÿ› Bug Fixes * 488c8a9c85be3a44de1cd84235109c661aaede8b: fix(autopilot): a self-closed PR hand-off must mark the original task superseded and the fix issue must close it, so the dispatcher never re-picks the original into the fix run's branch (#5743) (@alekspetrov) * ffe957bca4ba365c0b666f469d5b6e5ba41c7a6f: fix(ci): resolve CI failure from PR #5733 (#5737) (@alekspetrov) * f59732d524b63d9992b9cae0bfc65b7d7eb3373c: fix(executor): Navigator auto-init and bootstrap must honour a pHigh10/17/2026
v2.288.0## Changelog ### ๐Ÿš€ Features * 15a521345c19be3e72b26ee30ccdf49f336067a5: feat(executor): adopt a green auto-preserved commit as the deliverable โ€” run the gates on it and open the PR instead of failing the task (GH-5701 class) (#5713) (@alekspetrov) ### ๐Ÿ› Bug Fixes * c06e89508c5d5d7f6fc1fbe19b6df63a44324f47: fix(executor): Navigator copy-back must honour navigator:false and must not trip the root-clean finish tripwire with its own untracked .agent files (#5721) (@alekspetrov) * 8ffdd66e9f6f29966High10/16/2026
v2.287.0## Changelog ### ๐Ÿš€ Features * f44f387e66e55b23ce253a185034796ab49966c6: feat(linear): native workflow-state write-back on start, PR and merge (#5702) (@alekspetrov) ### ๐Ÿ› Bug Fixes * 811a7102c2f2895ae44f265e777b98c5cc75346f: fix(linear): drive the Linear comment and state move from the classified execution outcome, not Success/PRURL (no_op posts a failure, needs_human posts 'nothing waiting') (#5706) (@alekspetrov) * 32a642b68a2685482bed0512daa18a870afcb16e: fix(linear): state write-back must High10/15/2026
v2.286.0## Changelog ### ๐Ÿš€ Features * d2a63763c2773f9661b4aff9af3c4b8be1304f92: feat(gateway): extend GET /api/v1/executions/usage with a kind field and chat_turn rows on top of GH-5676, keeping the chat_turns table, recording and metrics from PR #5682 (#5693) (@alekspetrov) ### ๐Ÿ› Bug Fixes * c0a17e344943008fb9e40158fc0dac06641817e9: fix(executor): base worktrees on the project's default branch, not a hardcoded origin/main (#5620) (@sandeepraju) * fe28fc661be1511b751497c7e2f03cb49000a54a: fix(executorHigh10/15/2026
v2.284.0## Changelog ### ๐Ÿš€ Features * 1de7bc8d68d7c90200153b0b9cd1aef7fcf772ec: feat(autopilot): alert when the epic-parent reconciler pass goes stale, like tickStaleness does for the PR loop (#5667) (@alekspetrov) ### ๐Ÿ› Bug Fixes * 50f29c74559a676ad6df6bdb4e0947f24a6c293f: fix(autopilot): a merged-but-untagged release-backfill row backs off but never counts toward abandonment (#5674) (@alekspetrov) * 3a2cde3e5201b62c1a6a77f0a0e247ace7736240: fix(autopilot): keep the release-backfill tag list across pHigh10/14/2026
v2.282.0## Changelog ### ๐Ÿš€ Features * 133af510609073966a9866eccec9cde559043b1c: feat(upgrade): headless self-upgrade so hosted tenants track the release train (#5654) (@alekspetrov) * 73dab12228bd823c885e732f6275f5f8cd7ceac2: feat(upgrade): verify release asset sha256 against checksums.txt before install (#5655) (@alekspetrov) ### ๐Ÿ› Bug Fixes * 38b993a4e2bd547026cda749efdab0616932acad: fix(comms): chat-filed issues must not cite untracked paths (base-presence hold) (#5653) (@alekspetrov) ### ๐Ÿ“š DocumeHigh10/13/2026
v2.280.0## Changelog ### ๐Ÿš€ Features * 7087bac38f63aa177329c4fde8e8ad44af85cf74: feat(chat): wire a per-project IssueCreator into the web chat handler in both daemon modes (#5639) (@alekspetrov) * 0ece5d63f8dc6d1a52babf2c5738ba0b037b6dbe: feat(comms): route web chat turns through ExecuteChatTurn with progress events and a confirmed pilot-issue card (#5637) (@alekspetrov) ### ๐Ÿ“š Documentation * b0a828f6c92014ebc25bd3a4c209f6ec68911b8f: docs(memory): pitfall โ€” a spec that reroutes a platform must name theHigh10/11/2026
v2.279.0## Changelog ### ๐Ÿš€ Features * c818cfa212b597e5a353137f64e9e1da4b1918e1: feat(executor): read-only chat-turn execution mode with session resume, progress events and a Navigator chat prompt (#5633) (@alekspetrov) High10/10/2026
v2.278.0## Changelog ### ๐Ÿš€ Features * 47c307f33ff95d7cfdadd8a76963079de51bcb1a: feat(executor): acceptance-evidence gate โ€” annotate freeform mutation pins in the prompt so the executor runs them, and build vitest/pytest/cargo mutation commands instead of go-only (#5626) (@alekspetrov) ### ๐Ÿ› Bug Fixes * 9d255bc876286dc94fd2c38d4c5dd60130681f0f: fix(executor): mutation runner reports every non-Go pin as 'no test failed' โ€” extractFailingTests only knows Go's '--- FAIL:' lines (#5628) (@alekspetrov) ### ๏ฟฝ๏ฟฝ๏ฟฝHigh10/9/2026
v2.277.6## Changelog ### ๐Ÿ› Bug Fixes * 7fd23c63845a61c090384b69dacb7d215146be78: fix(quality): fall back from make to the native toolchain when make is missing (exit 127), and surface the gate command/exit code in the failure comment (#5623) (@alekspetrov) ### ๐Ÿ“š Documentation * a3e02cf9ee313ea252903630e41d5a3cfbdc7eab: docs(graph): TASK-512 node path + concepts ( <>) * d99f514a303db78fd15affd1e8d55d1e2d76995c: docs(nav): README current state 10-06โ†’10-07 (TASK-512 shipped+live, TASK-513 opened); task rHigh10/7/2026
v2.277.5## Changelog ### ๐Ÿ› Bug Fixes * 83b6c71c342ec5d5ac336b274ca3e0c1598175a4: fix(executor): acceptance-evidence paste-output bullets must run only allowlisted command spans, not every inline code span (#5618) (@alekspetrov) ### ๐Ÿ“š Documentation * 4ae27df8324dcb78bfd285b2d5a81bded7cd4397: docs(nav): README current state 10-05 (v2.277.4, leg 1 shipped, leg 4 live), mem-214 evidence-gate span pitfall, mem-215 AWS pager learning ( <>) High10/6/2026
v2.277.4## Changelog ### ๐Ÿ› Bug Fixes * 03a2febaa4fe8b76d62ef29abeb77f4f73e9b2eb: fix(autopilot): approval message must carry every gate reason, CancelPending must not record a system timeout decision, live-smoke hold comment dedupe must key on the prefix (#5607) (@alekspetrov) * 518ca6403733e2440adcf371229247ac5bbcb2b4: fix(executor): base-presence local probe โ€” ctx cancel must not read as absent, cache the fetch per project, unparseable origin must not fall back to gh, state the Linear release limitatHigh10/5/2026
v2.277.3## Changelog ### ๐Ÿ› Bug Fixes * 48a24a696394c82170da75d29d9cb2dbdaf73e30: fix(autopilot): live-smoke Not-verified hold must gate at handleCIPassed and release on approval, not fail an approved PR in handleMerging (#5598) (@alekspetrov) * ee110d62ce19e1d71485eb6f7493d56afee427c1: fix(autopilot): live-smoke hold must fail closed on approval timeout, reset stale decisions on re-escalation, and name its reason in the approval request (#5600) (@alekspetrov) * bd367c01619a3a873ba39de8cbd064f17f45856b:High10/3/2026
v2.277.2## Changelog ### ๐Ÿ› Bug Fixes * c2bc83a0074a5cf6efb976cccadb3bf4cb8d7058: fix(executor): epic parent PR still uses `gh pr create` โ€” route it through resolvePRCreator so epics on a GitLab-hosted project open an MR (#5590) (@alekspetrov) * 29ec23601c0fa2c554f78464e2dce04cca347818: fix(executor): evidence block must keep the tail status lines and must not merge a key-gated live-smoke bullet silently as Not verified (#5595) (@alekspetrov) * a45ea6c1d20716c57815946b0a779ba63d489c37: fix(linear): a poHigh10/2/2026
v2.277.1## Changelog ### ๐Ÿš€ Features * 73f6ce963af6a6269d50a169e28c1210af26d583: feat(forge): per-project `gitlab:` block โ€” register a project-keyed MR creator at startup and resolve the PR creator by project, so Linear-sourced tasks on a GitLab-hosted project open GitLab MRs (#5585) (@alekspetrov) * ae10345ba0618c5ba6154ad90dfd9fb64ca26a45: feat(linear): tier 3 of the polling resolver โ€” honour the workspace projects mapping when it names exactly one Pilot project (#5579) (@alekspetrov) ### ๐Ÿ› Bug FixesHigh10/2/2026
v2.276.12## Changelog ### ๐Ÿš€ Features * c06f47408fa20cb6ae257a14af2b45c92688c12e: feat(executor): Jev classifier for backticked path spans in the base-presence gate, shadow mode, regex floor kept (#5546) (@alekspetrov) * 870fe7fd5d3f64d7ec5cbb4d1b73c1843777b4da: feat(executor): per-item debug line for both Jev shadow classifiers so low_confidence items can be labelled (#5549) (@alekspetrov) ### ๐Ÿ› Bug Fixes * 2b75e879ddc1d5f7838cd0c40ef9a1d9cb90b2ea: fix(autopilot): per-stage deadline and tick-liveness aHigh10/1/2026
v2.276.7## Changelog ### ๐Ÿ› Bug Fixes * 22780ab6ba4f8ad8281b65a2253cf91f015ac179: fix(executor): acceptance-evidence gate silently skips "Evidence in the PR body" items (#5480) (@alekspetrov) * 652df80fc152e16f49a34afbaa9b2d41d31fe25f: fix(executor): populate lines_added/lines_removed on the executions row from git diff --numstat at the metrics-fill seam (#5478) (@alekspetrov) ### ๐Ÿ“š Documentation * 9fc24d1c95ff0f5c179420533330590b3b07b63b: docs(bench): Sonnet 5 vs 5.5 like-for-like table extended with High9/29/2026
v2.276.6## Changelog ### ๐Ÿš€ Features * e8dc52188cbf1bbdd497aff464266b100a9666e0: feat(executor): acceptance-evidence gate lists files named in the issue's Change section that the PR did not touch under Not verified (#5467) (@alekspetrov) ### ๐Ÿ› Bug Fixes * d78b655752c77e0d5c34deec56c0393226e38140: fix(autopilot): a failed check-run that is not in ci_checks.required must block the merge; the [test, lint] allowlist silently ignores every other check (#5470) (@alekspetrov) * c47274de7cfc36595a0a01c7caaf7fcHigh9/28/2026
v2.276.5## Changelog ### ๐Ÿ› Bug Fixes * 486b6b211e17f470bb3d17f7301c81e8c8c6c366: fix(executor): hook cleanup leaves a dangling pilot-bash-guard entry and an untracked .claude/settings.json in root-mode execution (#5463) (@alekspetrov) High9/26/2026
v2.276.4## Changelog ### ๐Ÿ› Bug Fixes * 2ece339d0e8c82fde690f196e7234e7236c290f2: fix(executor): CreatePR must extract the URL from gh output instead of returning combined stdout+stderr verbatim (#5461) (@alekspetrov) ### ๐Ÿ“š Documentation * 38f533b4ec2f5670b6df1041669606d70f4d69b7: docs(nav): Current State 09-23โ†’24 (mock-UI false success fixed, real console run, first provision blocked+unblocked on reconciler IAM); TASK-495/499 updated ( <>) * 256722c969a3dfbc71baa3f5be90d152d7d94796: docs(task): TASK-4High9/25/2026
v2.276.3## Changelog ### ๐Ÿ› Bug Fixes * 623a25239eb13aeb50d3d637e97f85fc25be278f: fix(executor): a failed pre-branch fetch must not silently base the worktree on a stale origin/main (use FETCH_HEAD, retry, else fail closed) (#5457) (@alekspetrov) ### ๐Ÿ“š Documentation * 85e6833601f463f282100aa780540e9d2b57a663: docs(task): TASK-495 โ€” first real console run blocked: console-api task role lacks ssm:PutParameter on /tenants/* (asked Nelya) ( <>) * e9a87d2ebdc308a4695768b5250a0a684ab474c6: docs(task): TASK-5High9/24/2026
v2.276.2## Changelog ### ๐Ÿ› Bug Fixes * 5876fed62dd3d0a321796f0a5dc57b5a14570dda: fix(autopilot): ci-fix excerpt drops the failing package output when it lands in the step's final second (floored completed_at) (#5455) (@alekspetrov) ### ๐Ÿ“š Documentation * 678ba040d2da9839aa30640ea6305301f9aeb189: docs(nav): Current State 09-22โ†’23 (console usable e2e, AMI refreshed, estate closed, reconciler blocked); 5 new memories; TASK-499 row ( <>) * d506b896377ab50f2cbe369033e6690f6071d628: docs(nav): L6 card paymenHigh9/23/2026
v2.276.1## Changelog ### ๐Ÿ› Bug Fixes * 0396df0ab67fc0ba1cb7c29af20b49c6584aa78d: fix(executor): escalate auto-preserved dirty worktrees instead of re-picking (#5446) (@alekspetrov) ### ๐Ÿ“š Documentation * ba041c3b09d9cec0bce8c743017c6f65b2a77f8c: docs(nav): #306 merged+reviewed; #308 5x failed โ†’ preserved 0e704c0 verified โ†’ continuation console#310; pitfall memory on auto-preserved WIP recovery ( <>) * 824a57b7ddc7ad3e12f94c32a3a2ed818217f838: docs(nav): L5 part 1 landed as console PR#312 (reviewed); PRHigh9/14/2026
v2.276.0## Changelog ### ๐Ÿš€ Features * 806991266f5b321e44387efdfa66b83271a24b96: feat(executor): acceptance-evidence gate revision, part 1 โ€” allowlist, redaction, confinement, timeout (GH-5437) (#5439) (@alekspetrov) * d070f1068d9e439514d34dac6ba27e2932eefc8d: feat(executor): classify every mutation phrasing, wiring pin for PR-body evidence hook (GH-5438) (#5440) (@alekspetrov) ### ๐Ÿ› Bug Fixes * 30a0d86c2080b1e3a9b0202dfbd0bbe87cd4a35f: fix(executor): acceptance-evidence runner โ€” validate commands as aHigh9/13/2026
v2.275.0## Changelog ### ๐Ÿš€ Features * 327a5b4641b71a0ded52cab99508d48df3151ec5: feat(gateway): active-only filter on the dashboard queue endpoint so consumers can see running work older than the 50 newest rows (#5428) (@alekspetrov) ### ๐Ÿ› Bug Fixes * e4b1893a89422b9f731e677aba7fb6fef0dd4cfd: fix(autopilot): OnPRCreated branch/issue guard skips fix-issue PRs on a borrowed origin branch (PR #5412 follow-up) (#5416) (@alekspetrov) * 4e68957dc6bc010e1eb07605019c67691d0b0ea3: fix(autopilot): borrowed-brancHigh9/10/2026
v2.271.1## Changelog ### ๐Ÿ› Bug Fixes * ca19ba9b72d32471b4ead0b930e9b0ce63434508: fix(autopilot): healthy continuation hand-offs are recorded as pipeline failures โ€” StageFailed/TerminalLabel conflation (GH-5227 leg 2) (#5248) (@alekspetrov) * 1283d21f547d05627c7ab60962c321130dfbfc29: fix(autopilot): open pilot-superseded hand-off sources are re-dispatched unbounded โ€” count superseded as terminal (PR#5248 remediation) (#5250) (@alekspetrov) * 0953a94ebb0564cd144e546d01d6db9bd568a8c1: fix(autopilot): owneHigh8/28/2026
v2.259.3## Changelog ### ๐Ÿ› Bug Fixes * 05df58d2c1bb9897bcc6d1f5b33207c5e8c5dfe1: fix(autopilot): write terminal merged event on external-merge finalize (GH-4869) (#4870) (@alekspetrov) ### ๐Ÿ“š Documentation * b48ea7785995d5156ac31e7a7b5c3b631ec2f324: docs(agent): PR#4867 post-merge review APPROVE recorded (TASK-477) โ€” D1 warn-unasserted + D2 latent registration gap noted; re-drill unblocked (@alekspetrov) * 1cbd244e3f051e89e6947fe202cc947135ccf6c4: docs(agent): TASK-441 kill-drill re-run PASS โ€” dead-manHigh8/15/2026
v2.252.0## Changelog ### ๐Ÿš€ Features * 35856e00b68a0b0571a4f8c565f1bcd4b1742565: feat(executor): add child-ledger gate check function (#4666) (@alekspetrov) ### ๐Ÿ› Bug Fixes * b4bd5f2f3335fc123d1de9f6b143ca78b03ff788: fix(autopilot): close conflicting PR whose source issue is closed instead of escalating (GH-4657) (#4658) (@alekspetrov) * a91de084b6a250e71f7e45ba0f7b011d909db369: fix(executor): heartbeat monitor SIGKILLs healthy runs during long local tool executions โ€” make test >5m โ‡’ exit 137 infra chuHigh8/3/2026
v2.243.0## Changelog ### ๐Ÿš€ Features * b3216f27ad70ca3fffab3f739da5de28c3cb43b9: feat(github): per-project Projects V2 board config (GH-4472) (#4473) (@alekspetrov) * 5a470b7fb5f3b7bd711d743500e362417c22e256: feat: nightly ledger backup to S3 โ€” script + systemd units + restore SOP (#4466) (@alekspetrov) ### ๐Ÿ› Bug Fixes * 8a34490461bf437df9d270a0d5eda5a9867181b9: fix(autopilot): per-project CI-checks override, fixing pointer#108 forever-pending CI (GH-4478) (#4479) (@alekspetrov) * 4e7d9219fb9bc9d9883c9High7/20/2026
v2.236.0## Changelog ### ๐Ÿš€ Features * 6ad1ac0f5390a65cc071ccd0c3a9d19189b2514f: feat(cmd): fan out SDK poller per repo โ€” default + all projects[] (M7 4d.2b/c) (#4115) (@alekspetrov) * d6ab3c6bb3ce15d4db841d501009363e80f7898c: feat(metrics): hydrate PR-family counters from execution_events at daemon start (@alekspetrov) * 955f83150d71148647cd74704df0c8ba3c990b7f: feat(upgrade): cross-process drain signal + poll handshake (GH-4106) (@alekspetrov) ### ๐Ÿ› Bug Fixes * 0387c0714bb3dde4297511bbbc328814b7a56eeHigh7/8/2026
v2.201.0## Changelog ### ๐Ÿš€ Features * d503f3a8f67719e1f176397d6bd4d43698612c33: feat(api): add /ping health check endpoint (@alekspetrov) High6/26/2026
v2.188.0## Changelog ### ๐Ÿš€ Features * 3c61ab596936185afd11f3b39671c481844b95e7: feat(cli): interactive pilot project add wizard with gh CLI integration (GH-3017) (#3612) (@alekspetrov) High6/18/2026
v2.182.0## Changelog ### ๐Ÿš€ Features * 3098d553694684864f415da3eb2ed8ba59dd6a96: feat(dashboard): scope TUI dashboard to a single project when -p is set (TASK-284, GH-3513) (@alekspetrov) High6/10/2026
v2.166.12## Changelog ### ๐Ÿ“š Documentation * bf02df534a4aa53677fc35276781127ac0e8e9e4: docs(nav): close + archive TASK-358 (dashboard failed-count classification, v2.166.10โ€“11); +2 memories; refresh Current State (@alekspetrov) ### Other * 67dbfbd92e9ece66dc6430b5c7e234c081b1f8b0: perf(docs): cache + compression + security headers (@alekspetrov) High6/3/2026
v2.155.2## Changelog ### ๐Ÿ› Bug Fixes * 5384ddc21705e06e13063004c2e274a84d1a0454: fix(executor): ghost-SHA guard + IsTaskShipped hardening (TASK-300) (@alekspetrov) High5/26/2026
v2.146.7## P0 bugfix: `syncMainBranch` no longer silently destroys local commits Replaces destructive `git reset --hard origin/main` with `git merge --ff-only origin/<currentBranch>` in the post-task main-branch sync. ### What was broken `syncMainBranch()` ran `git reset --hard origin/main` after every task. When GitHub push-propagation lagged behind the immediately-following fetch+reset (a race in the remote, **not** push failure), Pilot's just-committed work was silently rewound and only reflog-recHigh5/20/2026
v2.146.6## Changelog ### ๐Ÿ› Bug Fixes * a107194bdac0b7b6e56c73e92f8f5e8454353983: fix(observability): repair Grafana mount shadow + Approval Persist Misses panel coloring (@alekspetrov) High5/11/2026
v2.145.0## Changelog ### ๐Ÿš€ Features * 856d12ce0b0d58b72488df802e531e4f538de13b: feat(deploy): add token/cost/executions panels to Pilot Grafana dashboard (@alekspetrov) High5/8/2026
v2.107.0## Changelog ### ๐Ÿš€ Features * 2eb2a15e6870218c66b3dcad7b94e7baf0659e34: feat(github,memory): add SearchPRsForIssue and InvalidateCompletion primitives (@alekspetrov) High5/2/2026
v2.101.0## Changelog ### ๐Ÿš€ Features * 216b9f2bc8ad3455c5e3ed666b1e46986bfa7de2: feat(memory): wire usage_events table from dispatcher (@alekspetrov) High4/27/2026
v2.99.3## Changelog ### ๐Ÿ› Bug Fixes * b992a653206475751b2b9ac14d1eb699063d26fa: fix(orchestrator): preserve priority from non-Linear adapters in processTask (#2387) (@alekspetrov) ### ๐Ÿ“š Documentation * 0d1f5638c29288313351855d953164dac5690365: docs(guides): add custom model providers guide (#2381) (@alekspetrov) * 51361214a34d3c42dd77103c2efbb14e31856ae6: docs(nav): bring .agent/DEVELOPMENT-README.md current to v2.99.1 (@alekspetrov) High4/23/2026
v2.99.1## Changelog ### ๐Ÿ› Bug Fixes * b4f1ad57079989eaf5dccaa3ddf2472b9859c07f: fix(executor): self-review --resume fallback + sanitize marker filename path separators (@alekspetrov) ### โ™ป๏ธ Refactoring * 0b4a6c828ae1df5fa244fa1ef0b0e8eb09d0e689: refactor(autopilot): remove dead prod-X.Y.Z tag auto-push (@alekspetrov) High4/18/2026
v2.99.0## Changelog ### ๐Ÿš€ Features * e5b96bedc63434b7f17218d8c3bdcbf4e556798c: feat(executor): inject api_base_url/default_model/api_auth_token into Claude Code subprocess env (GH-2287 follow-up) (@alekspetrov) High4/18/2026
v2.98.0## Changelog ### ๐Ÿš€ Features * 02d258a566c381165294629580284ddb62b1c82f: feat(release): auto-push prod-X.Y.Z tag alongside vX.Y.Z to trigger docs deploy (@alekspetrov) High4/18/2026
v2.97.0## Changelog ### ๐Ÿš€ Features * 303a7b31afd3ae51e97cc1ee96e2d42123fd3bc1: feat(executor): honor project.default_branch for base branch and PR target (GitLab and GitHub) (@alekspetrov) High4/18/2026
v2.96.0## Changelog ### ๐Ÿš€ Features * 3207559850a2c365bfc727642c7ec727b9806906: feat(autopilot): after 2nd conventional-commit rejection, post suggested rewrite + stop retrying (@alekspetrov) ### ๐Ÿ› Bug Fixes * 33d1cb9eb841173b5b59853ddcfb0b3f7e46df4f: fix: migrate alekspetrov/anthropics refs to qf-studio (GH-2175) (@alekspetrov) High4/18/2026
v2.95.13## Changelog ### ๐Ÿ› Bug Fixes * 00a965e87ccc453607b127f35f56a9c59ca754b2: fix(doctor): warn when projects configured but no issue adapter enabled; fail start --github loudly (@alekspetrov) High4/18/2026
v2.95.12## Changelog ### Other * af7306ad7fd864888edd31e4794b2abb634d9deb: fix stress test timeout + re-land GH-2341 poller fix (@alekspetrov) High4/18/2026
v2.95.11## Changelog ### ๐Ÿ› Bug Fixes * 3b9bb9296dabee9194a1ecc1b4cd227506fa9213: fix(dashboard): queue view includes closed issues with stale pilot-in-progress label (@alekspetrov) High4/17/2026
v2.95.10## Changelog ### ๐Ÿ› Bug Fixes * 64ad86c6a49dfb644ddea866b26290ca71c6946f: fix(autopilot): ScanExistingPRs clobbers RestoreState on startup (@alekspetrov) High4/17/2026
v2.95.9## Changelog ### ๐Ÿ› Bug Fixes * 823a5169ead7235b17586b20c95296448d3f5aa9: fix(autopilot): idempotent merge-completion notification (dedup on re-entry) (@alekspetrov) * 30d5fb879247ab134c5dd113a274fafdb1c4beb0: fix(autopilot): skip pilot-retry-ready when pilot-done already on issue (@alekspetrov) High4/17/2026
v2.95.8## Changelog ### ๐Ÿ› Bug Fixes * f6f6f963f4c659cf12253b0cdadb5a4fc8290c66: fix(dispatcher): add hasLiveWorker guard to running-task reaper (mirror GH-2331) (@alekspetrov) * 745bac5842e4e7e5b22b8f4f4d3e515c9d2aa241: fix(epic): validate sub-issue titles โ€” reject LLM analysis-style titles in decomposition (@alekspetrov) * 5a02f79727a7ee793e692403c9db6d17e269494d: fix(executor): Claude Code subprocess OOM-killed on large Navigator context tasks (GH-2324) (@alekspetrov) * b6054b9698ee3b995a77e33463430High4/17/2026
v2.95.7## Changelog ### ๐Ÿ› Bug Fixes * aa62b02caf3478d13dcd8d40c503678883137db0: fix(executor): signal executor mode to Claude + classify no-diff (GH-2328) (@alekspetrov) High4/17/2026
v2.95.6## Changelog ### ๐Ÿ› Bug Fixes * bbc33cb662e1fd10829e151ba056718c2b968cf4: fix(dashboard): gate stdout prints on dashboard mode (GH-2333) (@alekspetrov) ### Other * e5df708dea9e8dcdb44ec4e7508a2ad9bbe0ac76: Fix dashboard startup log and polling-mode warning (`cmd/pilot/main.go`) (@alekspetrov) High4/17/2026
v2.95.5## Changelog ### ๐Ÿ› Bug Fixes * 84c4ccb14eea3861233df5fa8d16e596bb7424c0: fix(dispatcher): don't reap queued tasks when live worker exists (GH-2331) (#2331) (@alekspetrov) * 96ff63b24a88ccba2fc1820489cb7288c94ecb1c: fix(executor): persist backend stderr + final message on failure (GH-2328) (#2330) (@alekspetrov) ### ๐Ÿ“š Documentation * 7180185746652173871e0f2ecf6532b94850d690: docs(claude): scope Navigator-only rules to interactive sessions (#2327) (@alekspetrov) High4/17/2026
v2.95.4## Changelog ### ๐Ÿ› Bug Fixes * 13e815368a5ebcc06114243d6b3f6e3aa9b90432: fix(dashboard): adapter poller tasks invisible in gateway mode with --dashboard (GH-2291) (#2292) (@efesler) * 811e3091e77adbb30636895e540115e65b0eb543: fix(dispatcher): persist Task.Labels across queue round-trip (GH-2326) (#2326) (@alekspetrov) * 89df7fc75f6ecc1af40fb92ea91d0297ed6492ef: fix(gitlab): use string type for MergeRequest.detailed_merge_status field (#2295) (@efesler) * e12cf14940750bb7094fd05cfe280b15d7ea2c7aHigh4/17/2026
v2.95.3## Changelog ### Other * 70c14dc580adc3e1242facb3dace5b63608d4b15: Dispatcher `recoverStaleTasks()` (line 188) already marks orphans as `"failed"`, not `"completed"`. The status appears correct in the current code. (@alekspetrov) High4/15/2026
v2.95.2## Changelog ### ๐Ÿ› Bug Fixes * fd1db6e16e83b6869224ab08da589b9dd1c6bfde: GH-2312: fix(autopilot): strip GH-XXXX prefix from squash commit title for conventional commit detection (@alekspetrov) High4/15/2026
v2.95.1## Changelog ### Other * f1a956de2bb4c826466f1123cc30a2a5bce41caf: GH-2304: Add GitHub config validation to `pilot doctor` (`internal/health/health.go` +... (@alekspetrov) * 97b022b71a32b7f520f6548aa725d5042b952c9a: GH-2306: Add GitHub adapter config validation to `pilot doctor` (@alekspetrov) * aa7629f225f38c4c4bfbf0ebc51dae81b33025fc: GH-2307: Fix dashboard startup log and add zero-poller warning (@alekspetrov) High4/14/2026
v2.94.4## Changelog ### ๐Ÿ› Bug Fixes * d7d19ea70c5c9c82ae37ea429a534d2153d90c7f: GH-2301: fix(poller): clear stale pilot-in-progress on startup to avoid restart requirement (@alekspetrov) Medium4/14/2026
v2.94.3## Changelog ### ๐Ÿ› Bug Fixes * d5c6fb3c0369ba148eb0467417dc6640dc5e813e: GH-2297: fix(autopilot): post success comment on merge close โ€” stale failure comments (@alekspetrov) Medium4/14/2026
v2.95.0## Changelog ### ๐Ÿš€ Features * 934f3c196f678744b2a9cfe141eecfc46be74175: GH-2298: feat(github): add issue templates for bug reports, features, and pilot tasks (@alekspetrov) Medium4/14/2026
v2.94.2## Changelog ### ๐Ÿ› Bug Fixes * 0e9db39650a35787a0c9efea692fa3218ce08025: GH-2286: fix: all bare NewRunner() callsites ignore executor config (@alekspetrov) Medium4/14/2026
v2.94.1## Changelog ### ๐Ÿš€ Features * 555ffb2a44ecb676e0b4fa35a2040b4bd0edc42f: GH-2287: feat(executor): non-Anthropic model provider support โ€” default_model + api_base_url (TASK-24) (@alekspetrov) Medium4/14/2026
v2.94.0## Changelog ### ๐Ÿš€ Features * 2f5620cc1a539e98e0a261bdfc68249b4834612a: feat(executor): non-Anthropic model provider support โ€” default_model + api_base_url (GH-2287) (@alekspetrov) ### ๐Ÿ› Bug Fixes * 0c19431db94ec61e423dc9fbfcbd4cafe02c7acd: fix(autopilot): update execution status to completed when PR is merged externally (GH-2279) (#2281) (@alekspetrov) * 63e6235d8856b9d1c54f5aa083e46e8e3d635af6: fix(executor): complete non-Anthropic provider support โ€” add missing classifier methods (@alekspetHigh4/12/2026
v2.93.2## Changelog ### ๐Ÿš€ Features * 85d812245b93ea2a7c993f8f6b64242e6fd0929e: feat(github): auto-retry issues with pilot-retry-ready label (GH-2276) (#2277) (@alekspetrov) ### ๐Ÿ› Bug Fixes * 12e7b3a3a6c512a4ce4e1ea0730beddec0c80b01: GH-2280: fix(dashboard): sparkline graphs wiped after 5s DB refresh (@alekspetrov) High4/10/2026
v2.93.1## Changelog ### ๐Ÿ› Bug Fixes * b33ea39d2f79fa1a17f987a5363c386a45d4080c: GH-2269: fix(bench/aws): stale task manifest โ€” always regenerate before run (@alekspetrov) Medium4/10/2026
v2.93.0## Changelog ### ๐Ÿ› Bug Fixes * c46d4e9c2019396f4566478037028e25eb97e38f: GH-2267: fix(bench/aws): orchestrator hangs forever, no signal handling, crash loses results (@alekspetrov) Medium4/10/2026
v2.92.1## Changelog ### ๐Ÿ› Bug Fixes * 4896b8ff7f2b33e5ead2d122533901f340fe7c20: GH-2260: fix(install): replace fragile grep+sed version parsing with jq (@alekspetrov) * dfdffa7d65122265d0b5140405d65eafeebce290: fix(autopilot): scan for externally-merged PRs periodically, not just on startup (GH-2251) (#2253) (@alekspetrov) * de6df8681bffd7ffcb61036adad08a08c93dee27: fix(poller): skip retry of closed issues with stale pilot-failed label (GH-2252) (#2255) (@alekspetrov) ### Other * a7bfefa1864aef8b58cabMedium4/10/2026
v2.92.0## Changelog ### ๐Ÿ› Bug Fixes * bc90a923dbb66b7d20fea34fe2f4c797101218a5: GH-2256: fix(executor): add dryRun guard to Runner gh CLI methods + idempotency check (@alekspetrov) Medium4/10/2026
v2.91.0## Changelog ### ๐Ÿš€ Features * 7cc86fea9cd1806e9bf29535e0d0826cf2483455: feat(bench): add self-verification harness to PilotAgent (#2238) (#2244) (@alekspetrov) ### ๐Ÿ› Bug Fixes * 5a7c70bf376669566634f68c6aa91994420f66a5: fix(autopilot): use PR source repo for release operations on cross-repo PRs (GH-2243) (#2249) (@alekspetrov) * 3cc191dfa658dfb058b8a6af135374e4030e18f0: fix(dashboard): refresh history and metrics from DB every 5s (GH-2248) (#2250) (@alekspetrov) * 7d73d29ee2f79e41df9752a599fd2Medium4/10/2026
v2.90.8## Changelog ### Other * ab545453d12c044f461a7145d6a76fc03fd2664c: GH-2237: bench: remove oracle test access from PilotAgent (@alekspetrov) Medium4/10/2026
v2.90.7## Changelog ### ๐Ÿ› Bug Fixes * 9ff6e82ba955f7bbdc86a8ba58da2ad3fc17dc95: fix(bench): remove oracle test access from PilotAgent (#2239) (@alekspetrov) * 29585eba8988f46efa5c50725f563f060fede588: fix: update broken Discord invite link (#2231) (@alekspetrov) ### Other * d0264719fa778d130dd8538c8b29937fbf452b73: GH-2211: Wire native sub-issue linking into epic decomposition (`internal/executor/`) (@alekspetrov) Medium4/10/2026
v2.90.6## Changelog ### ๐Ÿ› Bug Fixes * 6d92123fa1adf79e49898b6130c211b4eca8b3e7: GH-2226: fix(executor): resolve stale threshold defaults treating 0 as unset (@alekspetrov) ### Other * cf7c513b9c41b561531a58fee28072ef2360606c: GH-2221: Add `GetStaleQueuedExecutions` to memory store (`internal/memory/`) (@alekspetrov) High4/7/2026
v2.90.5## Changelog ### ๐Ÿ› Bug Fixes * 71d90ba0a2cb51bc16b61f43e074db2c592db9a6: GH-2176: fix(poller): auto-retry issues stuck with pilot-failed from execution failures (@alekspetrov) Medium4/7/2026
v2.90.4## Changelog ### Other * af8dce3b27c6db6833de3980add4e1c6530c79a1: GH-2212: Replace search-based parent closing with native GraphQL + fallback (`internal... (@alekspetrov) Medium4/7/2026
v2.90.3## Changelog ### Other * 589ef957a916ed0c84e5ff66486bedd922a95711: GH-2212: Replace search-based parent closing with native GraphQL + fallback (`internal/autopilot/`) (@alekspetrov) Medium4/7/2026
v2.90.2## Changelog ### ๐Ÿ› Bug Fixes * 875bfe50ac12f029fe6b672cd84c8b7f764f98bc: GH-2206: fix(docs): navbar stuck at v2.87.2 โ€” docs-version-sync workflow trigger broken (GoReleaser GITHUB_TOKEN limitation) (@alekspetrov) Medium4/6/2026
v2.90.1## Changelog ### ๐Ÿ› Bug Fixes * e54908d84150a8ca20ccbb4c9b00fb66912036e9: GH-2204: fix(alerts): task_stuck floods Slack โ€” progress never emitted, per-rule cooldown rotates, no orphan cleanup (@alekspetrov) Medium4/6/2026
v2.90.0## Changelog ### Other * 80465794faf1b00efa59fae1642d43ff6fa318d2: GH-2201: Add retry grace period and TaskChecker to GitHub poller (@alekspetrov) Medium4/5/2026
v2.89.4## Changelog ### ๐Ÿ› Bug Fixes * a4592a7063a7fbb98bc0033872ddffbabafc686d: GH-2198: fix(autopilot): call maybeCloseParentIssue in notifyExternalClose path (@alekspetrov) Medium4/4/2026
v2.89.3## Changelog ### ๐Ÿ› Bug Fixes * 454a21e19472896e9f47b513aab501226101ec94: GH-2196: fix: update remaining alekspetrov/pilot references to qf-studio in non-Go files (@alekspetrov) * b1e31ed1b522e83e36b9262ca3bf37791c79c412: fix(brew): migrate tap from alekspetrov to qf-studio/homebrew-pilot (@alekspetrov) Medium4/4/2026
v2.89.2## Changelog ### ๐Ÿš€ Features * 090c5db2842e8ba77ab035298126dcc2a08c959d: GH-2188: feat(release): add GoReleaser brews section for Homebrew auto-publish (@alekspetrov) ### ๐Ÿ› Bug Fixes * ec66ba597b8127a2746f4c08967ed756c08916ea: GH-2192: fix: update llms.txt GitHub URLs from alekspetrov to qf-studio (@alekspetrov) Medium4/4/2026
v2.89.1## Changelog ### ๐Ÿ› Bug Fixes * c2f55a81ebc0e379f010c01bbb9b98fafb3f6406: GH-2189: fix(docs): correct brew tap and install script repo references (@alekspetrov) ### ๐Ÿ“š Documentation * 47a5a09b7cab1fd732d9231feb4c922e57282861: GH-2183: docs(epic): add merge-wait section to epic-decomposition page (@alekspetrov) ### ๐Ÿ”ง Maintenance * e992858b3afd32b7b4733a3e51d6d15fb275731c: GH-2185: chore: update CLAUDE.md version to v2.89.0 (@alekspetrov) Medium4/4/2026
v2.89.0## Feature - **feat(epic):** Wire merge-wait into production and test paths (GH-2179). `MergeWaiter` closure in `main.go` for both multi-repo and gateway modes, gated on `execution.wait_for_merge` config. Test harness wired with immediate-success callback. Parity test updated (18 checks). ## Changelog ### ๐Ÿš€ Features * 73e1584a: Wire SubIssueMergeWaitFn in main.go and harness.go (GH-2179) (@alekspetrov)Medium4/3/2026
v2.88.0## Feature - **feat(epic):** Add merge-wait between sequential sub-issues (GH-2177). After each sub-issue's PR is created, Pilot waits for it to merge before starting the next one. Prevents conflicts when sub-issues touch overlapping files. Includes `SubIssueMergeWaitFn` callback injection, `syncMainBranch` after each merge, graceful nil degradation, and 4 test cases. ## Changelog ### ๐Ÿš€ Features * fa0e7727: Add SubIssueMergeWaitFn to Runner and wire merge-wait logic in ExecuteSubIssues (GH-21Medium4/3/2026
v2.87.7## Changelog ### ๐Ÿš€ Features * c94742e2741d9ba29fafd8301bc644eb1bb089c2: feat(epic): enable worktree isolation for sub-issues (GH-2178) (@alekspetrov) Medium4/3/2026
v2.87.6## Bug Fix - **fix(git):** Pass `--head` flag to `gh pr create` to bypass dirty worktree check. Worktree-based execution could fail PR creation when the main checkout had uncommitted changes. ## Changelog ### ๐Ÿ› Bug Fixes * 178a8bec: fix(git): pass --head to gh pr create to bypass dirty worktree check (GH-2177) (@alekspetrov)Medium4/3/2026
v2.87.5## Bug Fix - **fix(epic):** Sub-issues now branch from the real repository path instead of inheriting the parent's worktree path. Previously, `SwitchToDefaultBranchAndPull` failed inside worktrees โ†’ empty branch โ†’ push fails with "src refspec does not match". `ExecuteSubIssues` now takes explicit `repoPath` param. ## Changelog ### ๐Ÿ› Bug Fixes * 715529a2: fix(epic): sub-issues branch from real repo, not parent worktree (GH-2177) (@alekspetrov)Medium4/3/2026
v2.87.4## Changelog ### ๐Ÿ› Bug Fixes * a1778eed0a64bc519fafd39eda542c4b6ea0503a: fix(poller): don't mark failed issues as processed (GH-2176) (@alekspetrov) Medium4/3/2026
v2.87.3## Changelog Medium4/3/2026

Dependencies & License Audit

Loading dependencies...

Similar Packages

AgentLintLint your repo for AI agent compatibility.v1.1.13
mxcliMendix cli tool, a headless way to work with Mendix projects. Enables Mendix projects for use with 3rd party agentic coding tools like Claude Code and Copilot. Includes a starlark linter for quality vv0.28.0
story-flow๐Ÿค–๐Ÿง  Agentic development workflow for AIโ€“HI (Human Intelligence) collaborationmain@2026-10-23
vibe-replayTurn AI coding sessions into animated, interactive web replaysv0.2.13
structured-prompt-skillโœ๏ธ Write effective AI prompts with this structured prompt engineering library and Claude Code skill, featuring 300+ curated examples for high-quality results.main@2026-10-13

More in Testing

promptfooTest your prompts, agents, and RAGs. Red teaming/pentesting/vulnerability scanning for AI. Compare performance of GPT, Claude, Gemini, Llama, and more. Simple declarative configs with command line and
giskard-oss๐Ÿข Open-Source Evaluation & Testing library for LLM Agents
claw-evalClaw-Eval is an evaluation harness for evaluating LLM as agents. All tasks verified by humans.
phoenixAI Observability & Evaluation