Repository navigation
Cloud lite workers on self-hosted models, operator-driven jobs; release 0.4.0 - #10
Merged
Merged
Conversation
Cloud lite workers could only use the subscription login. They can now run
on a self-hosted OpenAI-compatible (Responses API) model through
plan.modelProvider, with the key passed as deploy({ providerKey }) and kept
inside the Codex process. Also added, all optional:
- deploy({ deployKey }): read-only SSH clone with GitHub's host key pinned
- plan.prepare: per-machine hook that returns each agent's folder
- plan.supervision 'operator', plan.sandbox, plan.boardTools
- streaming deltas no longer traced (plan.traceDeltas restores them),
plan.monitorIntervalMs
Version 0.4.0. Fixes #9.
npm audit fix within existing ranges: body-parser 2.4.0, zod 4.6.7, fast-uri 3.1.9, ip-address 10.7.6, qs 6.17.1. The production audit gate (high severity) failed on these new advisories; it now reports none.
This was referenced Nov 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Cloud lite workers could only use the subscription login: every Codex configuration was forced to that login, deploy required an auth broker, and repositories were cloned with a GitHub token. This lets them run on a self-hosted OpenAI-compatible model instead, and ships it as 0.4.0.
All new settings are optional; existing plans behave as before (one exception below).
plan.modelProvider: Codex gets a provider configuration for the Responses API, with the model's real context window and compaction point. Web search, multi-agent, apps, plugins, goals, memories and skill instructions are off, and agent commands inherit only the core environment. The key goes indeploy(plan, { providerKey })as a staged app secret. It is placed only in the Codex process environment and redacted from journals and traces. Machine i usesbaseUrls[i % n], so each machine keeps its prompt cache on one server.deploy(plan, { deployKey }): clones over SSH with a read-only deploy key and GitHub's published host key pinned. There is noghlogin and agents get no Git credential. The bundle bootstrap addsopenssh-client.plan.prepare: a hook that runs once per machine after the pinned clone. It returns each agent's folder, writable roots and instructions. A restarted machine reuses the recorded result instead of cloning again.plan.supervision: 'operator': agents start idle and every turn comes fromfleet.command(...). Alsoplan.sandbox(workspace-write/read-only) andplan.boardTools: false. Verified workflows refuse operator supervision and disabled board tools, because they need both.item/completedhas the same content.plan.traceDeltas: truerestores them; this is the one default change.plan.monitorIntervalMssets how often machines read operator commands.npm audit fixwithin existing ranges (body-parser, zod, fast-uri, ip-address, qs). Without it, the production audit gate fails on new high-severity advisories, on current main as well.The same changes have run on real Fly fleets, but no new live cloud or model run was made for this PR.
Fixes #9
Local CI (AGENTS.md)
Same steps as
.github/workflows/public-sdk.yml, from a clean tracked-source export of commit 7a36b4f (git archive) with a freshnpm ci:node:22.17.0-bookworm)node:24.22.2-bookworm)The focused list now includes
test/cloud-lite-provider.test.mjs(8 new tests), which the workflow also runs. Those tests cover plan validation, the provider Codex configuration and key isolation, sandbox and board-tool settings, delta classification, the prepare hook, provider and deploy-key deploys without a subscription broker, key redaction in uncertain outcomes, and observation without a refresh.scripts/verify-public-sdk.mjsalso checks provider plan validation in the packed package.On Windows the archive-based tests need the system
tar.exeahead of Git's GNU tar on PATH, as on a normal Windows shell.