Skip to content

feat: land agentOS dylib on main (agentos-* / @agentos-software rename)#1505

Open
NathanFlurry wants to merge 6 commits into
mainfrom
integrate-dylib-into-main
Open

feat: land agentOS dylib on main (agentos-* / @agentos-software rename)#1505
NathanFlurry wants to merge 6 commits into
mainfrom
integrate-dylib-into-main

Conversation

@NathanFlurry

Copy link
Copy Markdown
Member

Merges the dylib actor-plugin feature (PR #1501 / codex branch) onto main, unifying naming on agentos-* + @agentos-software/*. Conflicts resolved toward the dylib branch; examples/docs taken from it. Re-ported main's #1491 (cron/OPFS security) and #1497 (shell local-mode) where applicable. cargo check --workspace passes.

🤖 Generated with Claude Code

NathanFlurry and others added 5 commits June 20, 2026 12:15
* feat(agentos): native actor plugin cdylib + @rivet-dev/agentos TS forwarder + tests

Rust plugin (crates/agentos-actor-plugin, cdylib): plugin side of
rivet-actor-plugin-abi; imports the UNMODIFIED agent-os-client, drives the
sidecar on its own tokio runtime, calls back into the host vtable for durable
storage + events. ABI exports + HostCtx bridge (incl. the required startup_ready
handshake), run loop + lazy VM lifecycle, full 24-op fs persistence + session
events, ~40-action dispatch (abi codec + encode_json_compat), config_json
deserializer, HTTP /preview proxy. Built end-to-end as a cdylib against the real
client + secure-exec.

Persistence e2e test (src/persistence_e2e.rs): drives the REAL handle_fs_call
dispatch (the VM's sqlite_vfs storage callback) through a mock HostVtable backed
by an in-memory rusqlite Connection, speaking the exact CBOR db_* wire contract
— migrate + mkdir/writeFile/exists/readFile/stat/readDir/removeFile round-trip.
Proves the durable-storage core against real SQLite, no VM/sidecar needed.
  cargo test -p agentos-actor-plugin

TS forwarder (packages/agentos, @rivet-dev/agentos): agentOs(config) ->
ActorDefinition whose nativeFactoryBuilder calls createNativePluginFactory
({pluginPath,configJson,sidecarPath}); buildConfigJson (lock-step with
config.rs), schema, nodeModulesMount, getPluginPath(), types.

Gated on infra (spec phases 2,5-7): publish abi + rivetkit + secure-exec; CI
dylib matrix; npm platform packages; live-VM e2e (needs the built sidecar).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* feat(agentos): default LLM egress allowlist + auto-mount agent node_modules

- session.rs: resolve renamed @rivet-dev/agentos-* agent packages (acpAdapter/agentPackage), fixing createSession("pi") on a verbatim install
- default network egress is now a deny-by-default allowlist of LLM provider hosts (anthropic/openai/gemini/openrouter) instead of allow-all; quickstart needs no permissions block
- forwarder auto-derives the /root/node_modules host_dir mount from agent descriptors' packageDir; quickstart needs no manual nodeModulesMount
- retains rivetkit preview c44621f + rivet-actor-plugin-abi 2.3.2

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* feat(agentos): include common software by default (auto-injected)

@rivet-dev/agentos now depends on @agent-os-pkgs/common and the forwarder
auto-injects it into the software list (deduped against explicit entries) so the
quickstart is just software: [pi]. Opt out with options.defaultSoftware: false.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@mintlify

mintlify Bot commented Jun 22, 2026

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
rivet-c4d395ab 🟡 Building Jun 22, 2026, 12:02 PM

💡 Tip: Enable Workflows to automatically generate PRs for you.

@railway-app

railway-app Bot commented Jun 22, 2026

Copy link
Copy Markdown

🚅 Deployed to the agentos-pr-1505 environment in agentos

Service Status Web Updated (UTC)
agentos 😴 Sleeping (View Logs) Web Jun 22, 2026 at 12:28 pm

🚅 Deployed to the agentos-pr-1505 environment in rivet-frontend

Service Status Web Updated (UTC)
agent-os 😴 Sleeping (View Logs) Jun 22, 2026 at 12:29 pm

Merges the dylib actor-plugin feature (codex/session-resume-architecture-docs, PR #1501)
onto main. Unifies naming on agentos-* + @agentos-software/*. Examples/docs taken from
the dylib branch. Re-ported main's #1491 (cron/OPFS security — survived auto-merge) and
#1497 (shell local-mode) where applicable.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant