Add Codex CLI, ?launch= URL helper, and product rename#45
Merged
Conversation
ffc6ffa to
0bd4f36
Compare
- "Apify AI Sandbox" → "Apify AI Code Sandbox" across UI, READMEs, logs - Drop the eyebrow + "Landing page" stub; promote the product name to H1 - Input: pythonRequirementsTxt → pythonRequirements - Input: idleTimeoutSeconds → idleTimeoutSecs (sandbox + sub-actors) - nodeDependencies description: note we accept the same syntax as `npm install <pkg>` https://claude.ai/code/session_01Vd2LZY2wcnUKayh5anMsAe
- /shell?launch=<cmd> translates to ttyd's arg=-c, arg=source bashrc; <cmd> for HTTP + WebSocket; works for arbitrary commands, not just agents - Sub-actor output URLs now use ?launch=claude / ?launch=opencode / ?launch=openclaw%20tui (instead of the long arg= form) - Quick links: replace the agent buttons with ?launch=, add an "Actor on Apify" link to https://apify.com/apify/ai-sandbox - Input: mcpConnections → mcpConnectors (matches the platform's "MCP Connectors" terminology) - Landing/llms: "Code execution" → "Code execution API", "Filesystem endpoints" → "Filesystem API", "Proxy Mappings" → "Proxy mappings", "Add Mapping" → "Add mapping" - Proxy mappings: explain what they're for (in landing copy and the actor.json input description) https://claude.ai/code/session_01Vd2LZY2wcnUKayh5anMsAe
Switch Claude Code and OpenCode from curl install scripts to npm-global, which gives the same binaries (Claude uses Node as launcher; OpenCode bundles Bun). Also add @openai/codex — a self-contained Rust binary delivered the same way. Single install mechanism, version-pinnable, no more curl pipelines. Welcome banner and the build-time version capture now include Codex; the landing page Quick links gain a Codex button. https://claude.ai/code/session_01Vd2LZY2wcnUKayh5anMsAe
Mirrors the claude-code / opencode metamorph pattern: a thin wrapper that metamorphs into the main AI Code Sandbox and lands the user in a terminal running codex (output URL: /shell?launch=codex). Codex CLI itself is already installed in the main sandbox image. https://claude.ai/code/session_01Vd2LZY2wcnUKayh5anMsAe
Drops the claude-code/ and opencode/ updates and the new codex/ sub-actor from this PR so they can be redone as a focused follow-up. The /shell?launch= plumbing in the main sandbox stays, so the new URLs will Just Work once the sub-actors are updated separately. https://claude.ai/code/session_01Vd2LZY2wcnUKayh5anMsAe
293659b to
835dbb1
Compare
?launch= URL helper, and product rename
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.
npm install -gpath, so all three agents share one install mechanism./shell?launch=<cmd>so the landing page can link to "Claude Code", "OpenCode", "Codex" terminals without hand-escapedarg=chains; sources/app/sandbox_bashrcbefore running the command.mcpConnections→mcpConnectors,idleTimeoutSeconds→idleTimeoutSecs,pythonRequirementsTxt→pythonRequirements).openclaw/updates are deferred to follow-up PRs; this one stays scoped to the sandbox Actor.