Changelog
New Features:
- Repositories for Sandboxed Agents: A sandboxed
ClaudeAgentorCodexAgenttakesrepository=Repository(url, branch="main")and starts every session in that repository at/workspace/repository. The first turn pins the exact commit, later turns keep the pin and the engineer's edits across warm reuse and checkpoint restore, and private repositories authenticate withGITHUB_READ_TOKENfrom the sandbox environment. See cookbook. (#11121) - S3 Checkpoint Store:
S3CheckpointStore(bucket, prefix=..., endpoint_url=...)keeps sandbox checkpoints in an S3-compatible bucket, so sandboxed agents run on several replicas without a shared filesystem. Objects are content-addressed, uploads are verified beforeputreturns, and credentials come from the AWS environment. See cookbook. (#11133) - Open a Run's Sandbox Checkpoint:
open_run_checkpoint(run_id)/aopen_run_checkpointon a sandboxed agent yield the verified archive a completed run committed, so a host process can read what a turn left behind after the container is gone.checkpoint_storeexposes the store the agent's turns write to. See cookbook. (#11131) - On-Demand Schedules: A schedule with an empty or omitted
cron_exprnever arms itself and runs only through its trigger route, over HTTP and throughScheduleManager.ScheduleResponse.cron_expris now optional and reports it asnull. (#11118) - KeenableTools: New toolkit for Keenable web search and page extraction (
web_search,fetch_url_content, with async variants). It works with no API key and no new dependency, and refuses fetches that resolve to private or loopback addresses. See cookbook. (#9558)
Improvements:
- External Agents in the Registry:
Registry(agents=[...])acceptsClaudeAgentandCodexAgent, and AgentOS agent, team and workflow responses carry asandboxedflag. (#11127) - Schedule Endpoint Edits: Changing a schedule's
endpointoverPATCH /schedules/{schedule_id}or throughScheduleManagernow updates its target columns instead of leaving them stale. (#11118)
Bug Fixes:
- AgentOS Form Defaults on FastAPI 0.147: FastAPI 0.147.0 reads omitted
boolform fields asFalse, so run and continue routes returned JSON instead of SSE whenstreamwas omitted and continues withoutregenerate=truefailed with 400. The routes now restore the declared defaults forstream,monitorandreplace_original. (#11160) - Sandbox Runs Without Redis: Sandboxed agent runs over
POST /agents/{agent_id}/runsno longer answer 400 on a Postgres durable queue without Redis. Cross-replica streaming and cancellation still need Redis. (#11161) - Workflow Files:
Fileoutputs produced insideParallel,Steps,Loop,ConditionandRoutersteps now reach the next step andworkflow_run_response.files. (#10950) - YouTubeTools: Video ids are read from Shorts, live, mobile, music and privacy-enhanced URLs, and empty ids return
No video ID foundbefore any request. (#10707) - PerplexitySearch and PubmedTools: An explicit
max_results=0is honoured instead of being replaced by the default. (#10595) - InMemoryDb:
upsert_user_memorystores a copy, so mutating theUserMemoryafter the upsert no longer changes the stored memory. (#11016)
What's Changed
- feat: add Company heartbeat routines and sources by @ashpreetbedi in #11102
- feat: automate Ready Tasks and bounded Routine acceptance by @ashpreetbedi in #11104
- feat: configure repositories for sandboxed harness agents by @ashpreetbedi in #11121
- fix: complete Company automation and configuration follow-up by @ashpreetbedi in #11118
- fix: stabilize Company Task session ownership and recovery by @ashpreetbedi in #11126
- feat: execute Company Tasks with sandboxed harness agents by @ashpreetbedi in #11127
- [fix] propagate files through workflow container steps by @Timotty in #10950
- [feat] Add KeenableTools for keyless web search and page extraction by @ilya-bogin-keenable in #9558
- fix: read the video ID from Shorts, live and mobile YouTube URLs by @devYRPauli in #10707
- [fix] Honor explicit max_results=0 in PerplexitySearch and PubmedTools by @ryanakml in #10595
- fix: detach the stored user memory from the caller's object by @insuffer in #11016
- feat: open a run's committed sandbox checkpoint through the agent by @ysolanky in #11131
- feat: add S3CheckpointStore for sandbox checkpoints in object storage by @kausmeows in #11133
- fix: allow sandbox API runs on a durable queue without Redis by @ashpreetbedi in #11161
- fix: restore AgentOS boolean form defaults under FastAPI 0.147 by @harshsinha03 in #11160
- feat: create Company Products and Routines from the OS Manager chat by @ashpreetbedi in #11159
- chore: Release v3.1.5 by @kausmeows in #11155
New Contributors
- @Timotty made their first contribution in #10950
- @ilya-bogin-keenable made their first contribution in #9558
- @ryanakml made their first contribution in #10595
- @insuffer made their first contribution in #11016
Full Changelog: v3.1.4...v3.1.5