Skip to content

Run MiniMax Code with its native tools - #766

Merged
SaladDay merged 3 commits into
mainfrom
run-minimax-code-with-its-native-tools
Oct 19, 2026
Merged

SaladDay merged 3 commits into
mainfrom
run-minimax-code-with-its-native-tools

Conversation

@SaladDay

@SaladDay SaladDay commented Oct 19, 2026 •

Copy link
Copy Markdown
Collaborator

MiniMax Code on a workspace placement now runs its own builtin tools in the workspace, as it does locally. The oac_workspace MCP bridge, which re-exposed six workspace tools while the native ones were withheld, is deleted along with the native tool-gate patch. Its original reasons, a native sandbox that covered only bash and a native cwd outside the workspace, no longer hold.

What changes

  • Native tools. The workspace profile admits the native read, write, edit, bash, grep, glob, todowrite and web_fetch with bypassPermissions. Subagent children get the same native tools within their native profile ceilings. The Runtime's frozen tool environment now reaches tools through the native process environment.
  • Bounded Turns. Native background bash spawns detached processes that outlive the Turn and escape the process group. When they finish, they start native delivery Turns that OAC never observes. One small env-gated patch turns background bash and 15-second auto-promotion off and keeps task_output, so Subagent results stay readable. The ACP initialize handshake (oac/subagents version 2) reports the switch, and the adapter rejects a CLI that does not report it off. The companion readiness protocol goes to 3. The Subagent concurrency patch is unchanged.
  • Overrides kept, each with its reason in code.
    • Turned off because they ask the user or keep work going after a Turn: ask-user, thread goals.
    • Turned off because they need a MiniMax account Core does not hold: mcode-tools, mavis, native web search, Matrix builtin tools and website_deploy.
    • The redundant beta.browserUseTooling is removed.
    • Bundled Skills follow the native selection on a workspace. environment: none still has no tools or Skills.
  • Search. web_search: disabled also removes web_fetch, as it removes Claude Code's WebFetch. An omitted control keeps it.
  • Items.
    • Native bash calls become command observations with the Session's workspace as cwd. The exit code is reported only when the native result carries one, and failure prose is not parsed.
    • Native web_fetch calls become web_search observations with an open_page action.
  • Settings. OAC_RUNTIME_MCODE_COMPANION (the companion directory) replaces OAC_RUNTIME_MCODE_WORKSPACE_BRIDGE. The daemon derives it from the installation at start, so nothing persisted changes.
  • Deleted. bridge.mjs, worker.ts, native-pi-tools.ts, tool-executor.mjs, launch.mjs, build.mjs, their tests and the companion's npm package and lock. Also the bridge steps in the build, installer and manifest scripts, and the oac_workspace reservations in the declaration and adapter.

The native data directory, including the generated configuration that holds the provider credential, is readable by native tools. The bridge already inherited it, and the deploy guide now documents it as for Claude Code.

Checks

  • go test for apps/daemon/internal/agent/mcode, apps/daemon/internal/cli and internal/harnessconfig/...; go build ./...; go vet ./apps/daemon/.... Mutation checks: removing the handshake check, the exit-code read, the web_fetch removal, the background-bash env, the real cwd or the none Skill ceiling each fails a test.
  • make check-mcode-harness, with the patch test against the pinned source (3/3), plus make check-docs, make check-harness-catalog and the website translation tests.
  • Live, real MiniMax-M3 (Anthropic-compatible endpoint), with an artifact built from the patched pinned source:
    • TestNativeMCodeWorkspaceTools, with Subagents enabled, checks that:
      • native read, edit and bash change a workspace file and produce command observations;
      • sleep 20 completes in the foreground and run_in_background is refused;
      • a child's native bash is projected;
      • web_fetch is present by default and absent with disabled, and website_deploy, ask-user, mavis and web_search never appear;
      • none has no builtin tools.
    • TestNativeMCodeExecutorReuse also passes.

View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

@SaladDay
SaladDay merged commit 39511e8 into main Oct 19, 2026
25 checks passed
@SaladDay
SaladDay deleted the run-minimax-code-with-its-native-tools branch October 19, 2026 05:09
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