Paperclip
Paperclip gives Daytona sandboxes durable sessions and traces
Paperclip is moving its Daytona provider from one-shot command polling toward opt-in persistent sessions, streamed stdout/stderr and named OpenTelemetry spans. The base session patch was closed, while two stacked proposals add one reconnect with poll fallback and clearer wrapper spans around runtime work.
paperclipai/paperclip PR #10941 is the inspected primary source: “feat(plugin-daytona): persistent session model with plain command dispatch.” The related records below were inspected as supporting context rather than independent confirmation.
The facts
- paperclipai/paperclip PR #10941 was created 2026-08-06T03:01:48Z and was closed at inspection; its title is “feat(plugin-daytona): persistent session model with plain command dispatch.” - paperclipai/paperclip PR #11021 was created 2026-08-06T22:38:18Z and was open at inspection; its title is “feat(plugin-daytona): stream session command logs behind useLogStream.” - paperclipai/paperclip PR #10999 was created 2026-08-06T17:46:53Z and was open at inspection; its title is “feat(observability): rename sandbox provider spans and add run-time wrapper spans.” - The repository reported 75764 stars, 5066 open issues, default branch master, and last push 2026-08-07T00:56:47Z. - The latest tagged-release baseline checked was v2026.722.0 published 2026-07-22T23:05:41Z.
What changed
paperclipai/paperclip PR #10941 reports: Thinking Path - Paperclip is the control plane for autonomous AI companies - One core subsystem runs agent work inside sandboxes - The Daytona provider uses that path to run user commands - The current one-shot model does not keep a shell alive across commands - This pull request adds an opt-in persistent session model for Daytona - The benefit is faster command dispatch with the same sandbox boundaries Linked Issues or Issue Description Subsystem affected Cross-cutting. This change touches packages/adapters, provider tests, span names, and sandbox command behavior. Problem or motivation The Daytona provider needs a persistent shell for repeated command dispatch. The old advisory wrapper path does not reach that goal. It also adds cost and removes the session speed gain. Proposed solution Add a useSessions driver flag. Keep it off by default. Open one Daytona session per lease when the flag is
paperclipai/paperclip PR #11021 reports: Thinking Path - Paperclip is the open source app people use to manage AI agents for work. - Sandbox provider plugins let agents run commands in remote environments. - The Daytona provider polls the exit code while it waits for command logs. - Polling delays log delivery and does not support long-lived streamed commands. - This pull request adds an opt-in Daytona log stream with one reconnect and a poll fallback. - The benefit is faster log delivery while the existing default path stays unchanged. Linked Issues or Issue Description Refs: #10941 Subsystem affected** packages/plugins — sandbox provider plugins. Problem or motivation** The Daytona provider polls the command exit code every 50 milliseconds while it waits for logs. This delays output and does not support a long-lived streamed command. Proposed solution** Add the useLogStream provider option. Stream stdout and stderr from the Daytona callback log
paperclipai/paperclip PR #10999 reports: Thinking Path - Paperclip is the open source app people use to manage AI agents for work - Paperclip uses adapter and sandbox code to start agents and run sandbox work - The current sandbox spans use mixed names and do not group related run-time work - Mixed names make traces harder to read and compare across providers - This pull request renames provider spans, adds run-time wrapper spans, and keeps the host allowlist closed - The benefit is clearer traces with the same sandbox behavior and trust boundary Linked Issues or Issue Description What existing behavior does this improve?** This improves OpenTelemetry span names and grouping for sandbox startup, execution, callback relay, and agent session work. Subsystem affected** Cross-cutting (multiple of the above): adapter utilities, sandbox providers, shared telemetry documentation, and server instrumentation. Current behavior** Sandbox provider spans use mixed names. Related run-time operations
Why it matters
Persistent remote shells can reduce dispatch overhead, but they create lifecycle, log ordering and teardown obligations that one-shot execution did not have. Opt-in defaults and closed telemetry allowlists keep the experiment bounded. The operator test is whether authority, persisted state and the visible outcome still describe the same event after retries, restarts or delegation.
Current
The primary record was closed when captured on 2026-08-07. The release baseline was v2026.722.0 published 2026-07-22T23:05:41Z. Repository metadata, pull requests, issues, release records, Google News discovery, Hacker News discovery, Lobsters, Metamesh and the rendered ClawCharts row were checked. ClawCharts selected the subject; it did not prove the claim.
Evidence
The primary URL is https://github.com/paperclipai/paperclip/pull/10941. Supporting records are https://github.com/paperclipai/paperclip/pull/11021 and https://github.com/paperclipai/paperclip/pull/10999. Source bodies, timestamps and states are preserved in the daily evidence bundle. Test counts, reproductions and deployment observations remain attributed to their authors unless explicitly identified as independently rerun.
Source boundary
Open work is described as open, closed work as closed, and operator reports as reports. A pull request is evidence of proposed or reviewed direction, not proof of a shipped release. Search residue, package mirrors and historically published source spines were excluded.
Operator take
Test session cleanup under provider failure, preserve stdout/stderr ordering across reconnect, and alert on leases that survive hard-delete teardown. Preserve a before-state receipt, make the smallest reversible change, and verify the original failure independently after intervention.
Caveat
Public project records are mutable. Status, scope and evidence can change after publication. This brief records the inspected state and does not authorize changes to a reader’s deployment.
Source inspected; source state, environment and release boundary remain explicit.