# ATM Expert Agent Plan ## Goal Replace `.opencode/agent/computercraft.md` with `atm10-expert`. The agent targets ATM10 / All The Mods 10, Minecraft `1.21.1`, NeoForge, pack version `7.0` (`0.7.0` accepted as user alias). ## Known Facts CurseForge project id: `925200`. ATM10 `7.0` file id: `8091114`. Server pack file id: `8094893`. NeoForge version: `21.1.228`. GitHub source: ## Files To Create Create `.opencode/agent/atm10-expert.md`. Create `.opencode/agent-context/atm10-expert/INDEX.md`. Create `.opencode/agent-context/atm10-expert/glossaries/`. Create `.opencode/agent-context/atm10-expert/scripts/`. Create `.opencode/agent-context/atm10-expert/modpacks/atm10-7.0.md`. ## Files To Move Move in-game glossaries only: `docs/cc_glossary.md` to agent context. `docs/create_cc_tweaked_glossary.md` to agent context. `docs/advanced_peripherals_glossary.md` to agent context. Keep `docs/craftos_pc_glossary.md` in `docs/`. Update `docs/README.md` links. ## Agent Behavior Delete old `computercraft` agent. New agent answers players concisely for in-game terminals. Use local glossaries first, then websearch/webfetch. Default to non-technical answers. Adapt language to the user, usually French. If a new useful mod documentation source is found, update or create a glossary and update `INDEX.md`. Keep replies short unless the user asks for detail. Use MCP bridge carefully: probe first, execute only bounded/read-only Lua unless explicitly asked. ## Permissions Allow local read/search and web lookup. Keep MCP bridge `probe-computers` and `exec-lua`. Make edit/bash approval-gated or tightly limited, because this agent is player-facing. Allow `just check` for markdown validation. ## ATM10 Mod List Script Add `.opencode/agent-context/atm10-expert/scripts/fetch-atm10-7.0-mods.sh`. Script should download CurseForge file `8091114`. Extract `manifest.json`. Write raw project/file ids and best available names to `modpacks/atm10-7.0.md`. If `CURSEFORGE_API_KEY` exists, resolve project names through the CurseForge API. Without API key, preserve ids and URLs for later glossary enrichment. ## TrapOS AI Context Update `programs/ai.lua` / `apis/libai.lua` so each prompt includes hidden caller context: computer id. computer label, if any. This helps `atm10-expert` know which in-game computer is calling. Add tests in `tests/ai.lua`. Bump `packages/trapos-ai/ccpm.json` and `packages/index.json`. ## Verification Run `just check`. Fix Lua lint and markdown link issues. Restart opencode after agent/config changes.