Skip to content

Releases: paperclipai/paperclip

v2026.416.0

16 Apr 11:44
b8725c5

Choose a tag to compare

v2026.416.0

Released: 2026-04-16

Highlights

  • Issue chat thread — Replaced the classic comment timeline with a full chat-style thread powered by assistant-ui. Agent run transcripts, chain-of-thought, and user messages now render inline as a continuous conversation with polished avatars, action bars, and relative timestamps. (#3079)
  • Execution policies — Issues can now carry a review/approval execution policy with multi-stage signoff workflows. Reviewers and approvers are selected per-stage, and Paperclip routes the issue through each stage automatically. (#3222)
  • Blocker dependencies — First-class issue blocker relations with automatic wake-on-dependency-resolved. Set blockedByIssueIds on any issue and Paperclip wakes the assignee when all blockers reach done. (#2797)
  • Issue-to-issue navigation — Faster navigation between issues with scroll reset, prefetch, and detail-view optimizations. (#3542)
  • Auto-checkout for scoped wakes — The agent harness now automatically checks out the scoped issue on comment-driven wakes, reducing latency for agent heartbeats. (#3538)
  • Inbox parent-child nesting — Parent issues group their children in the inbox Mine view with a toggle button, j/k keyboard traversal across nested items, and collapsible groups. (#2218, @HenkDz)

Improvements

  • BETA Standalone MCP server — New @paperclipai/mcp-server package exposing the Paperclip API as an MCP tool server, including approval creation. (#2435)
  • Board approvals — Generic issue-linked board approvals with card styling and visibility improvements in the issue detail sidebar. (#3220)
  • Inbox workspace grouping — Issues can now be grouped by workspace in the inbox with collapsible mobile groups and shared column controls across inbox and issues lists. (#3356)
  • Improvements to plugin system — Third-party adapters can now be installed as npm packages or loaded from local directories. Plugins declare a config schema and an optional UI transcript parser; built-in adapters can be overridden by external ones. Includes Hermes local session management and provider/model display in run details. (#2649, #2650, #2651, #2654, #2655, #2659, @plind-dm)
  • Issue search — Trigram-indexed full-text search across titles, identifiers, descriptions, and comments with debounced input. Comment matches now surface in search results. (#2999)
  • Sub-issues inline — Sub-issues moved from a separate tab to inline display on the issue detail, with parent-inherited workspace defaults and assignee propagation. (#3355)
  • Document revision diff viewer — Side-by-side diff viewer for issue document revisions with improved modal layout. (#2792)
  • Keyboard shortcut cheatsheet — Press ? to open a keyboard shortcut reference dialog; new g i (go to inbox), g c (comment composer), and inbox archive undo shortcuts. (#2772)
  • Bedrock model selection — Claude local adapter now supports AWS Bedrock authentication and model selection. (#3033, @kimnamu)
  • Codex fast mode — Added fast mode support for the Codex local adapter. (#3383)
  • Backup improvements — Gzip-compressed backups with tiered daily/weekly/monthly retention and UI controls in Instance Settings. (#3015, @aronprins)
  • GitHub webhook signing modes — Added github_hmac and none webhook signing modes with timing-safe HMAC comparison. (#1961, @antonio-mello-ai)
  • Project environment variables — Projects can now define environment variables that are inherited by workspace runs.
  • Routine improvements — Draft routine defaults, run-time overrides, routine title variables, and relaxed project/agent requirements for routines. (#3220)
  • Workspace runtime controls — Start/stop controls, runtime state reconciliation, runtime service JSON textarea improvements, and workspace branch/folder display in the issue properties sidebar. (#3354)
  • Attachment improvements — Arbitrary file attachments (not just images), drag-and-drop non-image files onto markdown editor, and square-cropped image gallery grid. (#2749)
  • Image gallery in chat — Clicking images in chat messages now opens a full gallery viewer.
  • Mobile UX — Gmail-inspired mobile top bar for inbox issue views, responsive execution workspace pages, mobile mention menu placement, and mobile comment copy button feedback.
  • Sidebar order persistence — Sidebar project and company ordering preferences now persist per-user.
  • Skill auto-enable — Mentioned skills are automatically enabled for heartbeat runs.
  • Comment wake batching — Multiple comment wakes are batched into a single inline payload for more efficient agent heartbeats.
  • Server-side adapter pause/resume — Builtin adapter types can now be paused/resumed from the server with overridePaused. (#2542, @plind-dm)
  • Skill slash-command autocomplete — Skill names now autocomplete in the editor.
  • Worktree reseed command — New CLI command to reseed worktrees from latest repo state. (#3353)

Fixes

  • Issue detail stability — Fixed visible refreshes during agent updates, comment post resets, ref update loops, split regressions, main-pane focus on navigation, and other detail-view rerender issues. (#3355)
  • Inbox badge count — Badge now correctly counts only unread Mine issues. (#2512, @AllenHyang)
  • Inbox keyboard navigation — Fixed j/k traversal across groups and nesting column alignment. (#2218, @HenkDz)
  • Vite HTML transforms — Fixed repeated Vite HTML transforms in dev mode.
  • Auth session lookup — Skipped unnecessary auth session lookups on non-API requests.
  • Stale execution locks — Fixed stale execution lock lifecycle with proper executionAgentNameKey clearing. (#2643, @chrisschwer)
  • Agent env bindings — Fixed cleared agent env bindings not persisting on save. (#3232, @officialasishkumar)
  • Capabilities field — Fixed blank screen when clearing the Capabilities field. (#2442, @sparkeros)
  • Skill deletion — Company skills can now be deleted with an agent usage check. (#2441, @DanielSousa)
  • Claude session resume — Fixed --append-system-prompt-file being sent on resumed Claude sessions, preserved instructions on resume fallback, and tightened fresh-session-only instruction file handling. (#2949, #2936, #2937, @Lempkey)
  • Typing lag — Fixed typing lag in long comment threads. (#3163)
  • Comment editor sync — Hardened issue comment editor synchronization.
  • Document revisions freshness — The latest issue document revision now stays current in the UI. (#3342)
  • Infinite render loop — Fixed infinite render loop in the inbox mobile toolbar.
  • Shimmer animation — Fixed shimmer text using an invalid hsl() wrapper on oklch colors, reduced loop jitter, and added a pause between repeats.
  • Mention selection — Restored touch mention selection and fixed spaced mention queries.
  • Inbox archive — Fixed archive flashing back after fade-out.
  • Goal description — Made the goal description area scrollable in the create dialog. (#2148, @shoaib050326)
  • Worktree provisioning — Fixed symlink relinking, fallback seeding, dependency hydration, and validated linked worktrees before reuse. (#3354)
  • Node keepAliveTimeout — Increased timeout behind reverse proxies to prevent 502 errors.
  • Noisy request logging — Reduced noisy server request logging.
  • Codex tool-use transcripts — Fixed Codex tool-use transcript completion parsing.
  • Codex resume error — Recognize missing-rollout Codex resume error as a stale session.
  • Pi quota exhaustion — Treat Pi quota exhaustion as a failed run. (#2305)
  • **Issue identifier co...
Read more

v2026.403.0

04 Apr 13:01
a072377

Choose a tag to compare

v2026.403.0

Released: 2026-04-03

Highlights

  • Inbox overhaul — New "Mine" inbox tab with mail-client keyboard shortcuts (j/k navigation, a/y archive, o open), swipe-to-archive, "Mark all as read" button, operator search with keyboard controls, and a "Today" divider. Read/dismissed state now extends to all inbox item types. (#2072, #2540)
  • Feedback and evals — Thumbs-up/down feedback capture flow with voting UI, feedback modal styling, and run link placement in the feedback row. (#2529)
  • Document revisions — Issue document revision history with a restore flow, replay-safe migrations, and revision tracking API. (#2317)
  • Telemetry — Anonymized App-side telemetry. Disable with DO_NOT_TRACK=1 or PAPERCLIP_TELEMETRY_DISABLED=1 (#2527)
  • Execution workspaces (EXPERIMENTAL) — Full workspace lifecycle management for agent runs: workspace-aware routine runs, execution workspace detail pages with linked issues, runtime controls (start/stop), close readiness checks, and follow-up issue workspace inheritance. Project workspaces get their own detail pages and a dedicated tab on the project view. (#2074, #2203)

Improvements

  • Comment interrupts — New interrupt support for issue comments with queued comment thread UX.
  • Docker improvements — Improved base image organization, host UID/GID mapping for volume mounts, and Docker file structure. (#2407, #1923, @radiusred)
  • Optimistic comments — Comments render instantly with optimistic IDs while the server confirms; draft clearing is fixed for a smoother composing experience.
  • GitHub Enterprise URL support — Skill and company imports now accept GitHub Enterprise URLs with hardened GHE URL detection and shared GitHub helpers. (#2449, @statxc)
  • Gemini local adapter — Added gemini_local to the adapter types validation enum so Gemini agents no longer fail validation. (#2430, @bittoby)
  • Routines skill — New paperclip-routines skill with documentation moved into Paperclip references. Routine runs now support workspace awareness and variables. (#2414, @aronprins)
  • GPT-5.4 and xhigh effort — Added GPT-5.4 model fallback and xhigh effort options for OpenAI-based adapters. (#112, @kevmok)
  • Commit metrics — New Paperclip commit metrics script with filtered exports and edge case handling.
  • CLI onboarding — Onboarding reruns now preserve existing config; exported tsx CLI entrypoint for cleaner startup. (#2071)
  • Board delegation guide — New documentation for board-operator delegation patterns. (#1889)
  • Agent capabilities in org chart — Agent capabilities field now renders on org chart cards. (#2349)
  • PR template updates — Added Model Used section to PR template; CONTRIBUTING.md now requires PR template, Greptile 5/5, and tests. (#2552, #2618)
  • Hermes adapter upgrade — Upgraded hermes-paperclip-adapter with UI adapter and skills support, plus detectModel improvements.
  • Markdown editor monospace — Agent instruction file editors now use monospace font. (#2620)
  • Markdown link styling — Links in markdown now render with underline and pointer cursor.
  • @-mention autocomplete — Mention autocomplete in project descriptions now renders via portal to prevent overflow clipping.
  • Skipped wakeup messages — Agent detail view now surfaces skipped wakeup messages for better observability.

Fixes

  • Inbox ordering — Self-touched issues no longer sink to the bottom of the inbox. (#2144)
  • Env var type switching — Switching an env var from Plain to Secret no longer loses the value; dropdown snap-back when switching is fixed. (#2327, @radiusred)
  • Adapter type switching — Adapter-agnostic keys are now preserved when changing adapter type.
  • Project slug collisions — Non-ASCII project names no longer produce duplicate slugs; a short UUID suffix is appended. (#2328, @bittoby)
  • Codex RPC spawn error — Fixed CodexRpcClient crash on ENOENT when spawning Codex. (#2048, @remdev)
  • Heartbeat session reuse — Fixed stale session reuse across heartbeat runs. (#2065, @edimuj)
  • Vite HMR with reverse proxy — Fixed WebSocket HMR connections behind reverse proxies and added StrictMode guard. (#2171)
  • Copy button fallback — Copy-to-clipboard now works in non-secure (HTTP) contexts. (#2472)
  • Worktree default branch — Worktree creation auto-detects the default branch when baseRef is not configured. (#2463)
  • Session continuity — Timer and heartbeat wakes now preserve session continuity.
  • Worktree isolation — Fixed worktree provision isolation, runtime recovery, and sibling port collisions.
  • Cursor adapter auth — Cursor adapter now checks native auth before warning about missing API key.
  • Codex skill injection — Fixed skill injection to use effective $CODEX_HOME/skills/ instead of cwd.
  • OpenCode config pollution — Prevented opencode.json config pollution in workspace directories.
  • Pi adapter — Fixed Pi local adapter execution, transcript parsing, and model detection from stderr.
  • x-forwarded-host origin check — Board mutation origin check now includes x-forwarded-host header.
  • Health DB probe — Fixed database connectivity health check probe.
  • Issue breadcrumb routing — Hardened issue breadcrumb source routing.
  • Instructions tab width — Removed max-w-6xl constraint from instructions tab for full-width content. (#2621)
  • Shell fallback on Windows — Uses sh instead of /bin/sh as shell fallback on Windows. (#891)
  • Feedback migration — Made feedback migration replay-safe after rebase.
  • Issue detail polish — Polished issue detail timelines and attachments display.

Upgrade Guide

Four new database migrations (00450048) will run automatically on startup. These migrations add workspace lifecycle columns, routine variables, feedback tables, and document revision tracking. All migrations are additive — no existing data is modified.

If you use execution workspaces, note that follow-up issues now automatically inherit workspace linkage from their parent. For non-child follow-ups tied to the same workspace, set inheritExecutionWorkspaceFromIssueId explicitly when creating the issue.

Contributors

Thank you to everyone who contributed to this release!

@aronprins, @bittoby, @cryppadotta, @edimuj, @HenkDz, @kevmok, @mvanhorn, @radiusred, @remdev, @statxc, @vanductai

v2026.325.0

25 Mar 13:33
db3883d

Choose a tag to compare

v2026.325.0

Released: 2026-03-25

Highlights

  • Company import/export — Full company portability with a file-browser UX for importing and exporting agent companies. Includes rich frontmatter preview, nested file picker, merge-history support, GitHub shorthand refs, and CLI company import/company export commands. Imported companies open automatically after import, and heartbeat timers are disabled for imported agents by default. (#840, #1631, #1632, #1655)
  • Company skills library — New company-scoped skills system with a skills UI, agent skill sync across all local adapters (Claude, Codex, Pi, Gemini), pinned GitHub skills with update checks, and built-in skill support. (#1346)
  • Routines and recurring tasks — Full routines engine with triggers, routine runs, coalescing, and recurring task portability. Includes API documentation and routine export support. (#1351, #1622, @aronprins)

Improvements

  • Inline join requests in inbox — Join requests now render inline in the inbox alongside approvals and other work items.
  • Onboarding seeding — New projects and issues are seeded with goal context during onboarding for a better first-run experience.
  • Agent instructions recovery — Managed agent instructions are recovered from disk on startup; instructions are preserved across adapter switches.
  • Heartbeats settings page — Shows all agents regardless of interval config; added a "Disable All" button for quick bulk control.
  • Agent history via participation — Agent issue history now uses participation records instead of direct assignment lookups.
  • Alphabetical agent sorting — Agents are sorted alphabetically by name across all views.
  • Company org chart assets — Improved generated org chart visuals for companies.
  • Improved CLI API connection errors — Better error messages when the CLI cannot reach the Paperclip API.
  • Markdown mention links — Custom URL schemes are now allowed in Lexical LinkNode, enabling mention pills with proper linking behavior. Atomic deletion of mention pills works correctly.
  • Issue workspace reuse — Workspaces are correctly reused after isolation runs.
  • Failed-run session resume — Explicit failed-run sessions can now be resumed via honor flag.
  • Docker image CI — Added Docker image build and deploy workflow. (#542, @albttx)
  • Project filter on issues — Issues list can now be filtered by project. (#552, @mvanhorn)
  • Inline comment image attachments — Uploaded images are now embedded inline in comments. (#551, @mvanhorn)
  • AGENTS.md fallback — Claude-local adapter gracefully falls back when AGENTS.md is missing. (#550, @mvanhorn)
  • Company-creator skill — New skill for scaffolding agent company packages from scratch.
  • Reports page rename — Reports section renamed for clarity. (#1380, @DanielSousa)
  • Eval framework bootstrap — Promptfoo-based evaluation framework with YAML test cases for systematic agent behavior testing. (#832, @mvanhorn)
  • Board CLI authentication — Browser-based auth flow for the CLI so board users can authenticate without manually copying API keys. (#1635)

Fixes

  • Embedded Postgres initdb in Docker slim — Fixed initdb failure in slim containers by adding proper initdbFlags types. (#737, @alaa-alghazouli)
  • OpenClaw gateway crash — Fixed unhandled rejection when challengePromise fails. (#743, @Sigmabrogz)
  • Agent mention pill alignment — Fixed vertical misalignment between agent mention pills and project mention pills.
  • Task assignment grants — Preserved task assignment grants for agents that have already joined.
  • Instructions tab state — Fixed tab state not updating correctly when switching between agents.
  • Imported agent bundle frontmatter — Fixed frontmatter leakage in imported agent bundles.
  • Login form 1Password detection — Fixed login form not being detected by password managers; Enter key now submits correctly. (#1014)
  • Pill contrast (WCAG) — Improved mention pill contrast using WCAG contrast ratios on composited backgrounds.
  • Documents horizontal scroll — Prevented documents row from causing horizontal scroll on mobile.
  • Toggle switch sizing — Fixed oversized toggle switches on mobile; added missing data-slot attributes.
  • Agent instructions tab responsive — Made agent instructions tab responsive on mobile.
  • Monospace font sizing — Adjusted inline code font size and added dark mode background.
  • Priority icon removal — Removed priority icon from issue rows for a cleaner list view.
  • Same-page issue toasts — Suppressed redundant toasts when navigating to an issue already on screen.
  • Noisy adapter log — Removed noisy "Loaded agent instructions file" log message from all adapters.
  • Pi local adapter — Fixed Pi adapter missing from isLocal check. (#1382, @lucas-stellet)
  • CLI auth migration idempotency — Made migration 0044 idempotent to avoid failures on re-run.
  • Dev restart tracking.paperclip and test-only paths are now ignored in dev restart detection.
  • Duplicate CLI auth flag — Fixed duplicate --company flag on auth login.
  • Gemini local execution — Fixed Gemini local adapter execution and diagnostics.
  • Sidebar ordering — Preserved sidebar ordering during company portability operations.
  • Company skill deduplication — Fixed duplicate skill inventory refreshes.
  • Worktree merge-history migrations — Fixed migration handling in worktree contexts. (#1385)

Upgrade Guide

Seven new database migrations (00380044) will run automatically on startup:

  • Migration 0038 adds process tracking columns to heartbeat runs (PID, started-at, retry tracking).
  • Migration 0039 adds the routines engine tables (routines, triggers, routine runs).
  • Migrations 0040–0042 extend company skills, recurring tasks, and portability metadata.
  • Migration 0043 adds the Codex managed-home and agent instructions recovery columns.
  • Migration 0044 adds board API keys and CLI auth challenge tables for browser-based CLI auth.

All migrations are additive (new tables and columns) — no existing data is modified. Standard paperclipai startup will apply them automatically.

If you use the company import/export feature, note that imported companies have heartbeat timers disabled by default. Re-enable them manually from the Heartbeats settings page after verifying adapter configuration.

Contributors

Thank you to everyone who contributed to this release!

@alaa-alghazouli, @albttx, @AOrobator, @aronprins, @cryppadotta, @DanielSousa, @lucas-stellet, @mvanhorn, @richardanaya, @Sigmabrogz

v2026.318.0

18 Mar 14:13
78c714c

Choose a tag to compare

v2026.318.0

Released: 2026-03-18

Highlights

  • Plugin framework and SDK — Full plugin system with runtime lifecycle management, CLI tooling, settings UI, breadcrumb and slot extensibility, domain event bridge, and a kitchen-sink example. The Plugin SDK now includes document CRUD methods and a testing harness. (#904, #910, #912, #909, #1074, @gsxdsm, @mvanhorn, @residentagent)
  • Upgraded costs and budgeting — Improved cost tracking and budget management surfaces. (#949)
  • Issue documents and attachments — Issues now support inline document editing, file staging before creation, deep-linked documents, copy and download actions, and live-event refresh. (#899)
  • Hermes agent adapter — New hermes_local adapter brings support for the Hermes CLI as an agent backend. (#587, @teknium1)
  • Execution workspaces (EXPERIMENTAL) — Isolated execution workspaces for agent runs, including workspace operation tracking, reusable workspace deduplication, and work product management. Project-level workspace policies are configurable. (#1038)
  • Heartbeat token optimization — Heartbeat cycles now skip redundant token usage.

Improvements

  • Session compaction is adapter-aware — Compaction logic now respects per-adapter context limits.
  • Company logos — Upload and display company logos with SVG sanitization and enhanced security headers for asset responses. (#162, @JonCSykes)
  • App version label — The sidebar now displays the running Paperclip version. (#1096, @saishankar404)
  • Project tab caching — Active project tab is remembered per-project; tabs have been renamed and reordered. (#990)
  • Copy-to-clipboard on issues — Issue detail headers now include a copy button; HTML entities no longer leak into copied text. (#990)
  • Me and Unassigned assignee options — Quick-filter assignee options for the current user and unassigned issues. (#990)
  • Skip pre-filled fields in new issue dialog — Tab order now skips assignee and project fields when they are already populated. (#990)
  • Worktree cleanup command — New worktree:cleanup command, env-var defaults, and auto-prefix for worktree branches. (#1038)
  • Release automation — Automated canary and stable release workflows with npm trusted publishing and provenance metadata. (#1151, #1162)
  • Documentation link — Sidebar documentation link now points to external docs.paperclip.ing.
  • Onboarding starter task delay — Starter tasks are no longer created until the user launches.

Fixes

  • Embedded PostgreSQL hardening — Startup adoption, data-dir verification, and UTF-8 encoding are now handled reliably. (@vkartaviy)
  • os.userInfo() guard — Containers with UID-only users no longer crash; HOME is excluded from the cache key. (#1145, @wesseljt)
  • opencode-local HOME resolutionos.userInfo() is used for model discovery instead of relying on the HOME env var. (#1145, @wesseljt)
  • dotenv cwd fallback — The server now loads .env from cwd when .paperclip/.env is missing. (#834, @mvanhorn)
  • Plugin event subscription wiring — Fixed subscription cleanup, filter nullability, and stale diagram. (#988, @leeknowsai)
  • Plugin slot rendering — Corrected slot registration and rendering for plugin UI extensions. (#916, #918, @gsxdsm)
  • Archive project UX — Archive now navigates to the dashboard and shows a toast; replaced window.confirm with inline confirmation.
  • Markdown editor spacing — Image drop/paste adds proper newlines; header top margins increased.
  • Workspace form refresh — Forms now refresh when projects are accessed via URL key and allow empty saves.
  • Legacy migration reconciliation — Fixed migration reconciliation for existing installations.
  • archivedAt type coercion — String-to-Date conversion before Drizzle update prevents type errors.
  • Agent HOME env varAGENT_HOME is now set correctly for child agent processes. (#864)
  • Sidebar scrollbar hover track — Fixed scrollbar track visibility on hover. (#919)
  • Sticky save bar on non-config tabs — Hidden to prevent layout push.
  • Empty goals display — Removed "None" text from empty goals.
  • Runs page padding — Removed unnecessary right padding.
  • Codex bootstrap logs — Treated as stdout instead of stderr.
  • Dev runner syntax — Fixed syntax issue in plugin dev runner. (#914, @gsxdsm)
  • Process list — Fixed process list rendering. (#903, @gsxdsm)

Upgrade Guide

Ten new database migrations (00280037) will run automatically on startup:

  • Migrations 0028–0029 add plugin framework tables.
  • Migrations 0030–0037 extend the schema for issue documents, execution workspaces, company logos, cost tracking, and plugin enhancements.

All migrations are additive (new tables and columns) — no existing data is modified. Standard paperclipai startup will apply them automatically.

If you use the .env file, note that the server now falls back to loading .env from the current working directory when .paperclip/.env is not found.

Contributors

Thank you to everyone who contributed to this release!

@gsxdsm, @JonCSykes, @leeknowsai, @mvanhorn, @residentagent, @saishankar404, @teknium1, @vkartaviy, @wesseljt

v0.3.1

12 Mar 18:12

Choose a tag to compare

v0.3.1

Released: 2026-03-12

Highlights

  • Gemini CLI adapter — Full local adapter support for Google's Gemini CLI. Includes API-key detection, turn-limit handling, sandbox and approval modes, skill injection into ~/.gemini/, and yolo-mode default. (#452, #656, @aaaaron)
  • Run transcript polish — Run transcripts render markdown, fold command stdout, redact home paths and user identities, and display humanized event labels across both detail and live surfaces. (#648, #695)
  • Inbox refinements — Improved tab behavior, badge counts aligned with visible unread items, better mobile layout, and smoother new-issue submit state. (#613)
  • Improved onboarding wizard — Onboarding now shows Claude Code and Codex as recommended adapters, collapses other types, and features animated step transitions with clickable tabs. Adapter environment checks animate on success and show debug output only on failure. (#700)

Improvements

  • Instance heartbeat settings sidebar — View and manage heartbeat configuration directly from the instance settings page with compact grouped run lists. (#697)
  • Project and agent configuration tabs — New tabbed configuration UI for projects and agents, including execution workspace policy settings. (#613)
  • Agent runs tab — Agent detail pages now include a dedicated runs tab.
  • Configurable attachment content types — The PAPERCLIP_ALLOWED_ATTACHMENT_TYPES env var lets operators control which file types can be uploaded. (#495, @subhendukundu)
  • Default max turns raised to 300 — Agents now default to 300 max turns instead of the previous limit. (#701)
  • Issue creator shown in sidebar — The issue properties pane now displays who created each issue. (#145, @cschneid)
  • Company-aware 404 handling — The UI now shows company-scoped not-found pages instead of a generic error.
  • Tools for Worktree workflow for developers — New paperclipai worktree:make command provisions isolated development instances with their own database, secrets, favicon branding, and git hooks. Worktrees support minimal seed mode, start-point selection, and automatic workspace rebinding. (#496, #530, #545)

Fixes

  • Gemini Docker build — Include the Gemini adapter manifest in the Docker deps stage so production builds succeed. (#706, @zvictor)
  • Approval retries made idempotent — Duplicate approval submissions no longer create duplicate records. (#502, @davidahmann)
  • Heartbeat cost recording — Costs are now routed through costService instead of being recorded inline, fixing missing cost attribution. (#386, @domocarroll)
  • Claude Code env var leak — Child adapter processes no longer inherit Claude Code's internal environment variables. (#485, @jknair)
  • parentId query filter — The issues list endpoint now correctly applies the parentId filter. (#491, @lazmo88)
  • Remove Cmd+1..9 shortcut — The company-switch keyboard shortcut conflicted with browser tab switching and has been removed. (#628, @STRML)
  • IME composition Enter — Pressing Enter during IME composition in the new-issue title no longer moves focus prematurely. (#578, @kaonash)
  • Restart hint after hostname change — The CLI now reminds users to restart the server after changing allowed hostnames. (#549, @mvanhorn)
  • Default dangerouslySkipPermissions for unattended agents — Agents running without a terminal now default to skipping permission prompts instead of hanging. (#388, @ohld)
  • Remove stale paperclip property from OpenClaw Gateway — Cleaned up an invalid agent parameter that caused warnings. (#626, @openagen)
  • Issue description overflow — Long descriptions no longer break the layout.
  • Worktree JWT persistence — Environment-sensitive JWT config is now correctly carried into worktree instances.
  • Dev migration prompt — Fixed embedded db:migrate flow for local development.
  • Markdown link dialog positioning — The link insertion dialog no longer renders off-screen.
  • Pretty logger metadata — Server log metadata stays on one line instead of wrapping.

Upgrade Guide

Two new database migrations (0026, 0027) will run automatically on startup:

  • Migration 0026 adds the workspace_runtime_services table for worktree-aware runtime support.
  • Migration 0027 adds execution_workspace_settings to issues and execution_workspace_policy to projects.

Both are additive (new table and new columns) — no existing data is modified. Standard paperclipai startup will apply them automatically.

Contributors

Thank you to everyone who contributed to this release!

@aaaaron, @adamrobbie-nudge, @cschneid, @davidahmann, @domocarroll, @jknair, @kaonash, @lazmo88, @mvanhorn, @ohld, @openagen, @STRML, @subhendukundu, @zvictor

v0.3.0

09 Mar 21:39

Choose a tag to compare

v0.3.0

Released: 2026-03-09

Highlights

  • New adapters: Cursor, OpenCode, and Pi — Paperclip now supports three additional local coding agents. Cursor and OpenCode integrate as first-class adapters with model discovery, run-log streaming, and skill injection. Pi adds a local RPC mode with cost tracking. All three appear in the onboarding wizard alongside Claude Code and Codex. (#62, #141, #240, #183, @aaaaron, @Konan69, @richardanaya)
  • OpenClaw gateway adapter — A new gateway-only OpenClaw flow replaces the legacy adapter. It uses strict SSE streaming, supports device-key pairing, and handles invite-based onboarding with join-token validation. (#270)
  • Inbox and unread semantics — Issues now track per-user read state. Unread indicators appear in the inbox, dashboard, and browser tab (blue dot). The inbox badge includes join requests and approvals, and inbox ordering is alert-focused. (#196, @hougangdev)
  • PWA support — The UI ships as an installable Progressive Web App with a service worker and enhanced manifest. The service worker uses a network-first strategy to prevent stale content.
  • Agent creation wizard — A new choice modal and full-page configuration flow make it easier to add agents. The sidebar AGENTS header now has a quick-add button.

Improvements

  • Mermaid diagrams in markdown — Fenced mermaid blocks render as diagrams in issue comments and descriptions.
  • Live run output — Run detail pages stream output over WebSocket in real time, with coalesced deltas and deduplicated feed items.
  • Copy comment as Markdown — Each comment header has a one-click copy-as-markdown button.
  • Retry failed runs — Failed and timed-out runs now show a Retry button on the run detail page.
  • Project status clickable — The status chip in the project properties pane is now clickable for quick updates.
  • Scroll-to-bottom button — Issue detail and run pages show a floating scroll-to-bottom button when you scroll up.
  • Database backup CLIpaperclipai db:backup lets you snapshot the database on demand, with optional automatic scheduling.
  • Disable sign-up — A new auth.disableSignUp config option (and AUTH_DISABLE_SIGNUP env var) lets operators lock registration. (#279, @JasonOA888)
  • Deduplicated shortnames — Agent and project shortnames are now auto-deduplicated on create and update instead of rejecting duplicates. (#264, @mvanhorn)
  • Human-readable role labels — The agent list and properties pane show friendly role names. (#263, @mvanhorn)
  • Assignee picker sorting — Recent selections appear first, then alphabetical.
  • Mobile layout polish — Unified GitHub-style issue rows across issues, inbox, and dashboard. Improved popover scrolling, command palette centering, and property toggles on mobile. (#118, @MumuTW)
  • Invite UX improvements — Invite links auto-copy to clipboard, snippet-only flow in settings, 10-minute invite TTL, and clearer network-host guidance.
  • Permalink anchors on comments — Each comment has a stable anchor link and a GET-by-ID API endpoint.
  • Docker deployment hardening — Authenticated deployment mode by default, named data volume, PAPERCLIP_PUBLIC_URL and PAPERCLIP_ALLOWED_HOSTNAMES exposed in compose files, health-check DB wait, and Node 24 base image. (#400, #283, #284, @AiMagic5000, @mingfang)
  • Updated model lists — Added claude-sonnet-4-6, claude-haiku-4-6, and gpt-5.4 to adapter model constants. (#293, #110, @cpfarhood, @artokun)
  • Playwright e2e tests — New end-to-end test suite covering the onboarding wizard flow.

Fixes

  • Secret redaction in run logs — Env vars sourced from secrets are now redacted by provenance, with consistent secretKeys tracking. (#261, @mvanhorn)
  • SPA catch-all 500s — The server serves cached index.html in the catch-all route and uses root in sendFile, preventing 500 errors on dotfile paths and SPA refreshes. (#269, #78, @mvanhorn, @MumuTW)
  • Unmatched API routes return 404 JSON — Previously fell through to the SPA handler. (#269, @mvanhorn)
  • Agent wake logic — Agents wake when issues move out of backlog, skip self-wake on own comments, and skip wakeup for backlog-status changes. Pending-approval agents are excluded from heartbeat timers. (#159, #154, #267, #72, @Logesh-waran2003, @cschneid, @mvanhorn, @STRML)
  • Run log fd leak — Fixed a file-descriptor leak in log append that caused spawn EBADF errors. (#266, @mvanhorn)
  • 500 error logging — Error logs now include the actual error message and request context instead of generic pino-http output.
  • Boolean env parsingparseBooleanFromEnv no longer silently treats common truthy values as false. (#91, @zvictor)
  • Onboarding env defaultsonboard now correctly derives secrets from env vars and reports ignored exposure settings in local_trusted mode. (#91, @zvictor)
  • Windows path compatibility — Migration paths use fileURLToPath for Windows-safe resolution. (#265, #413, @mvanhorn, @online5880)
  • Secure cookies on HTTP — Disabled secure cookie flag for plain HTTP deployments to prevent auth failures. (#376, @dalestubblefield)
  • URL encodingbuildUrl splits path and query to prevent %3F encoding issues. (#260, @mvanhorn)
  • Auth trusted origins — Effective trusted origins and allowed hostnames are now applied correctly in public mode. (#99, @zvictor)
  • UI stability — Fixed blank screen when prompt templates are emptied, search URL sync causing re-renders, issue title overflow in inbox, and sidebar badge counts including approvals. (#262, #196, #423, @mvanhorn, @hougangdev, @RememberV)

Contributors

Thank you to everyone who contributed to this release!

@aaaaron, @AiMagic5000, @artokun, @cpfarhood, @cschneid, @dalestubblefield, @dotta, @eltociear, @fahmmin, @gsxdsm, @hougangdev, @JasonOA888, @Konan69, @Logesh-waran2003, @mingfang, @MumuTW, @mvanhorn, @numman-ali, @online5880, @RememberV, @richardanaya, @STRML, @tylerwince, @zvictor