v0.18.0
·
231 commits
to master
since this release
🚀 Features
- Add GrowthBook feature flags, OAuth layer, voice mode, and usage tracking - by @Ashesh3 and Claude Opus 4.6 (1M context) (14494)
- Add varlock + 1Password integration, stub remaining API endpoints, Sentry logging - by @Ashesh3 and Claude Opus 4.6 (1M context) (5fcaf)
- Add verbose error logging with full request/response details to Sentry - by @Ashesh3 (fd678)
- Send enriched request logs to Sentry with model, endpoint, and token details - by @Ashesh3 (375c9)
- Add WebSocket transport for /v1/responses endpoint - by @Ashesh3 and Claude Opus 4.6 (1M context) (4fe74)
- Add TraceRecorder module with SQLite storage - by @Ashesh3 and Claude Opus 4.6 (1M context) (71d85)
- Add trace data retention with configurable cleanup - by @Ashesh3 and Claude Opus 4.6 (1M context) (2673c)
- Instrument all request handlers with trace recording - by @Ashesh3 and Claude Opus 4.6 (1M context) (3d9e6)
- Instrument chat-completions and responses handlers with tracing - by @Ashesh3 and Claude Opus 4.6 (1M context) (104e8)
- Add cookie-based auth middleware for traces UI - by @Ashesh3 and Claude Opus 4.6 (1M context) (d8719)
- Mount Breadcrumb tRPC router and trace viewer UI at /traces - by @Ashesh3 and Claude Opus 4.6 (1M context) (f1e48)
- Add Sentry AI Agent Monitoring spans for LLM observability - by @Ashesh3 and Claude Opus 4.6 (1M context) (70680)
- Map model names to canonical IDs for Sentry cost calculation - by @Ashesh3 and Claude Opus 4.6 (1M context) (74d3d)
- Emit synthetic tool execution spans for Sentry AI Tools tab - by @Ashesh3 and Claude Opus 4.6 (1M context) (a8408)
- Add invoke_agent spans for Sentry AI Agents dashboard - by @Ashesh3 and Claude Opus 4.6 (1M context) (f4400)
- Report cached input tokens and reasoning tokens to Sentry - by @Ashesh3 and Claude Opus 4.6 (1M context) (99c41)
- Session-affinity account routing for multi-token mode - by @Ashesh3 and Claude Opus 4.6 (1M context) (c27ae)
- Add code sessions types, store, and event bus - by @Ashesh3 and Claude Opus 4.6 (1M context) (365b4)
- Add missing Claude Code API stubs for organizations, MCP, tasks - by @Ashesh3 and Claude Opus 4.6 (1M context) (910f7)
- Add default feature flags for Remote Control and voice mode - by @Ashesh3 and Claude Opus 4.6 (1M context) (9d2b1)
- Add /v1/code/sessions API routes for Remote Control - by @Ashesh3 and Claude Opus 4.6 (1M context) (78200)
- Add /v1/sessions API for archive and events - by @Ashesh3 and Claude Opus 4.6 (1M context) (dcc72)
- Add direct-connect WebSocket sessions for --server mode - by @Ashesh3 and Claude Opus 4.6 (1M context) (8089e)
- Add listSessions and listEnvironments exports for dashboard - by @Ashesh3 and Claude Opus 4.6 (1M context) (f7829)
- Add dashboard route with API endpoints - by @Ashesh3 and Claude Opus 4.6 (1M context) (1e604)
- Add complete dashboard HTML page with all sections - by @Ashesh3 and Claude Opus 4.6 (1M context) (1b44c)
- Add tengu_ccr_bridge default flag for Remote Control entitlement - by @Ashesh3 (052d8)
- Add Remote Control web client page - by @Ashesh3 and Claude Opus 4.6 (1M context) (4387f)
- Add all missing Claude Code API endpoint stubs (environment_providers, mcp_servers, triggers, teleport, sessions list, etc.) - by @Ashesh3 (59a8f)
- Switch remote control client from SSE to WebSocket for proxy compatibility - by @Ashesh3 and Claude Opus 4.6 (1M context) (e95f5)
- Add remote control button to dashboard sessions, redirect /code/session_* URLs, persist API key in localStorage - by @Ashesh3 (bf5cb)
- Add WebSocket stream support for Codex CLI, bump to v0.16.0 - by @Ashesh3 and Claude Opus 4.6 (1M context) (797a4)
- Log failed auth attempts and IP bans to console - by @Ashesh3 (7ee7b)
- Complete environment-based remote control flow - by @Ashesh3 and Claude Opus 4.6 (1M context) (f6e61)
- Full parity audit fixes — headers, retry, streaming, billing, caching (v0.18.0) - by @Ashesh3 and Claude Opus 4.6 (1M context) (6de6e)
🐞 Bug Fixes
- Resolve varlock secrets before building CLI args, support GITHUB_TOKENS - by @Ashesh3 and Claude Opus 4.6 (1M context) (0e10b)
- Bump Bun to 1.3.3 for varlock compatibility - by @Ashesh3 and Claude Opus 4.6 (1M context) (50ae1)
- Use correct varlock command (load --format shell, not resolve --shell) - by @Ashesh3 and Claude Opus 4.6 (1M context) (a3f3b)
- Use varlock run instead of eval shell output - by @Ashesh3 and Claude Opus 4.6 (1M context) (5846a)
- Pass --api-key-auth without value so app reads from env after varlock - by @Ashesh3 and Claude Opus 4.6 (1M context) (ca533)
- Uncomment all env vars in schema to fix varlock detached decorator errors - by @Ashesh3 and Claude Opus 4.6 (1M context) (11f53)
- Return can_fetch instead of safe in domain_info response - by @Ashesh3 and Claude Opus 4.6 (1M context) (af8b3)
- Only count IP ban strikes on copilot-proxying endpoints - by @Ashesh3 and Claude Opus 4.6 (1M context) (b38f8)
- Log IP blocks and ban events to console and Sentry - by @Ashesh3 and Claude Opus 4.6 (1M context) (8d54d)
- Use shared SCHEMA_SQL from @breadcrumb/server - by @Ashesh3 and Claude Opus 4.6 (1M context) (f84cd)
- Capture token counts in Responses API streaming traces - by @Ashesh3 and Claude Opus 4.6 (1M context) (12411)
- Record input messages on all copilot-api-call spans - by @Ashesh3 and Claude Opus 4.6 (1M context) (dc8bf)
- Increase trace payload limit to 500KB for full prompt capture - by @Ashesh3 and Claude Opus 4.6 (1M context) (0b664)
- Fix PricePerToken API integration - by @Ashesh3 and Claude Opus 4.6 (1M context) (9789f)
- Keep Sentry AI spans open for streaming duration - by @Ashesh3 and Claude Opus 4.6 (1M context) (eb5ba)
- Add privacy controls for Sentry AI prompt recording - by @Ashesh3 and Claude Opus 4.6 (1M context) (aca8f)
- Capture token usage from web-search tool iterations - by @Ashesh3 and Claude Opus 4.6 (1M context) (1f61c)
- Detach streaming AI spans from request lifecycle - by @Ashesh3 and Claude Opus 4.6 (1M context) (aa95b)
- Consolidate AI spans to one-per-request with correct token accounting - by @Ashesh3 and Claude Opus 4.6 (1M context) (781f1)
- Remove duplicate outer spans for streaming and skip tokens on web-search - by @Ashesh3 and Claude Opus 4.6 (1M context) (d94b9)
- Expand compaction items in compact handler before sending upstream - by @Ashesh3 and Claude Opus 4.6 (1M context) (c9f66)
- Properly render usage data with utilization bars, token counts, and reset timers - by @Ashesh3 (7421c)
- Resolve all TypeScript errors in start.ts and handler.ts - by @Ashesh3 (4a9f5)
- Default api_base_url to https in bridge credentials - by @Ashesh3 (a7209)
- Resolve duplicate cbSubs declaration in broadcastEvents - by @Ashesh3 (fe918)
- Deduplicate messages and hide synthetic connecting message in remote control UI - by @Ashesh3 (816a9)
- Skip all inbound user message echoes in remote control UI - by @Ashesh3 (5326d)
- Add WebSocket keepalive ping every 30s to prevent Cloudflare idle timeout - by @Ashesh3 (d68c9)
- Improve mobile UX for dashboard and remote control pages - by @Ashesh3 and Claude Opus 4.6 (1M context) (e4f84)
- Add POST /worker/register endpoint for CCR v2 bridge sessions - by @Ashesh3 and Claude Opus 4.6 (1M context) (f3498)
- Deduplicate events and filter noise in remote control UI - by @Ashesh3 and Claude Opus 4.6 (1M context) (42bad)
- Update assistant bubble in-place instead of creating duplicates - by @Ashesh3 and Claude Opus 4.6 (1M context) (4035e)
- Default max_tokens and skip retries on generic 400 Bad Request - by @Ashesh3 and Claude Opus 4.6 (1M context) (af183)
- Eliminate intermittent 400 errors via parity audit fixes (v0.17.0) - by @Ashesh3 and Claude Opus 4.6 (1M context) (e899f)
- Preserve date-suffixed and multi-digit model IDs in normalizer - by @Ashesh3 and Claude Opus 4.6 (1M context) (137f0)
- Add "generate" to known Responses fields for Codex prewarm - by @Ashesh3 and Claude Opus 4.6 (1M context) (2cc7a)
- Preserve websocket response.create continuation fields - by @Ashesh3 and Copilot (f7848)
- Add client_metadata to known Responses fields for Codex telemetry - by @Ashesh3 and Claude Opus 4.6 (1M context) (9a043)
- Handle Codex websocket startup prewarm - by @Ashesh3 and Copilot (9a565)