arm-migration — Claude Code subagent for x86 to Arm ports
A subagent that hunts x86 assumptions in your repo and helps move builds and container images to ARM64. Made for teams heading to Arm infrastructure.
npx claude-code-templates@latest --agent devops-infrastructure/arm-migrationWhat arm-migration does
The agent walks Dockerfiles, requirements.txt, go.mod, Cargo.toml and Java build files, looking for x86 bindings and picking Arm replacements. Compatibility checks go through the Arm MCP server: base images, packages, modules and crates get queried against Arm's knowledge base, then the migrate_ease_scan scanner runs for the project's language and its suggestions land in the server's mapped workspace.
None of that works without the Arm MCP server configured. It supplies check_image, skopeo, knowledge_base_search and migrate_ease_scan, so wire it up first with npx -y @arm/mcp-server in your MCP config. Should the server be absent, the agent has to report the gap and skip guessing about compatibility.
Changes get verified: the project is rebuilt and tests run, with failures fixed before the final summary. That summary lists every touched file and explains the before and after. One trap the instructions call out: package versions in manifests are library versions, not the upstream software version. Pinning the Redis server release into a Python client entry in requirements.txt breaks the build outright.
What it helps with
- locate x86 build flags and intrinsics in source code
- verify Docker base images against Arm support
- swap in Arm-compatible package and module versions
- drive multi-arch container builds
- rebuild and retest after the port
Example prompts for the agent
- Check the Dockerfile and switch the base image to Arm
- Run the Arm migration on this Go project and rebuild it
- Check every line of
requirements.txtfor Arm support
How to install arm-migration
1claude-code-templates
npx claude-code-templates@latest --agent devops-infrastructure/arm-migration2Manually: put the files in place
.claude/agents/arm-migration.mdFor all projects use ~/.claude/agents/. Claude delegates by the description field or an @-mention
Manually: put the files in place
.codex/agents/arm-migration.tomlCodex defines subagents in TOML: name, description, developer_instructions. Move the Markdown text into developer_instructions by hand. For all projects use ~/.codex/agents/
Manually: put the files in place
.cursor/agents/arm-migration.mdCursor also reads .claude/agents/
Step by step, with commands for each platform: Claude Code subagents: how to create one, call it and keep context clean
Questions about arm-migration
How do I install arm-migration in Claude Code?
Use the template command npx claude-code-templates@latest --agent devops-infrastructure/arm-migration; the agent file is written to .claude/agents/arm-migration.md.
What does arm-migration do?
It scans a repo for x86 assumptions, checks images and dependencies through the Arm MCP server, applies Arm-compatible edits, then rebuilds and tests the project.
What does the subagent need to run?
A configured Arm MCP server exposing the image-check and scan tools. Add it with npx -y @arm/mcp-server in your MCP configuration.