Prerequisites
Bug Description
On OpenCode 1.3.15 with oh-my-openagent 3.15.1, my old user config no longer takes effect.
Previously I used:
~/.config/opencode/oh-my-opencode.json
After upgrading, that file stopped working.
I tried cleaning all of these, but the config still did not apply:
~/.cache/opencode
~/.cache/oh-my-opencode
~/.config/opencode/node_modules
~/.config/opencode/package.json
~/.config/opencode/package-lock.json
Then I tried renaming the config to:
~/.config/opencode/oh-my-openagent.json
That also did not work.
After that I created all of these files at the same time:
oh-my-openagent.json
oh-my-openagent.jsonc
oh-my-opencode.json
oh-my-opencode.jsonc
Then after restarting OpenCode, my config suddenly started working again.
I also noticed two generated files in .config:
oh-my-openagent.jsonc.bak.2026-04-05T03-17-49-446Z
oh-my-openagent.jsonc.tmp
The .tmp file content also looked correct.
So it looks like the config file is detected and rewritten, but the final effective config is still inconsistent.
Then I deleted the other three files and kept only the one I thought was correct. After restarting OpenCode again, my config stopped taking effect again.
So the current behavior seems to depend on having multiple basename/extension variants present, which should not be necessary.
Steps to Reproduce
- Use OpenCode 1.3.15 and oh-my-openagent 3.15.1.
- Put user config in
~/.config/opencode/oh-my-opencode.json.
- Start OpenCode and observe that the config does not take effect.
- Delete caches and local install artifacts:
~/.cache/opencode
~/.cache/oh-my-opencode
~/.config/opencode/node_modules
~/.config/opencode/package.json
~/.config/opencode/package-lock.json
- Try canonical rename to
~/.config/opencode/oh-my-openagent.json.
- Start OpenCode again and observe that it still does not take effect.
- Create these four files together:
oh-my-openagent.json
oh-my-openagent.jsonc
oh-my-opencode.json
oh-my-opencode.jsonc
- Start OpenCode again. In my case, config starts working, and backup/tmp files appear.
- Delete the extra three files and keep only one config file.
- Start OpenCode again.
- Observe that the config stops taking effect again.
Expected Behavior
A single valid config file should load consistently.
I should not need to keep multiple filename variants (oh-my-opencode / oh-my-openagent, .json / .jsonc) in the same directory just to make the config apply.
If migration happens, the migrated canonical file should continue to work by itself on the next startup.
Actual Behavior
Config loading is inconsistent.
- Old legacy config no longer works reliably.
- Renamed canonical config also does not work reliably.
- If multiple basename/extension variants exist together, config may start working.
- After removing the extra variants and restarting again, config stops taking effect.
.bak.* and .tmp files are generated, suggesting migration/write logic runs, but the final active config is still wrong.
Doctor Output
oh-my-opencode: Platform binary not installed.
Your platform: win32-x64
Expected packages (in order): oh-my-opencode-windows-x64, oh-my-opencode-windows-x64-baseline
To fix, run:
npm install oh-my-opencode-windows-x64
Error Logs
Observed generated files during startup:
oh-my-openagent.jsonc.bak.2026-04-05T03-17-49-446Z
oh-my-openagent.jsonc.tmp
Configuration
{
"$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/master/assets/oh-my-opencode.schema.json",
"agents": {
"sisyphus": {
"model": "openai/gpt-5.4",
"variant": "medium"
},
"hephaestus": {
"model": "openai/gpt-5.4",
"prompt_append": "Explore thoroughly, then implement. Prefer small, testable changes."
},
"oracle": {
"model": "openai/gpt-5.4",
"variant": "high"
},
"librarian": {
"model": "zhipuai-coding-plan/glm-4.7"
},
"explore": {
"model": "opencode/minimax-m2.5-free"
},
"multimodal-looker": {
"model": "openai/gpt-5.4",
"variant": "medium"
},
"prometheus": {
"model": "openai/gpt-5.4",
"variant": "high",
"prompt_append": "Always interview first. Validate scope before planning."
},
"metis": {
"model": "openai/gpt-5.4",
"variant": "high"
},
"momus": {
"model": "openai/gpt-5.4",
"variant": "xhigh"
},
"atlas": {
"model": "openai/gpt-5.4",
"variant": "medium"
},
"sisyphus-junior": {
"model": "opencode/minimax-m2.5-free"
}
},
"categories": {
"visual-engineering": {
"model": "openai/gpt-5.4",
"variant": "high"
},
"ultrabrain": {
"model": "openai/gpt-5.4"
},
"deep": {
"model": "openai/gpt-5.3-codex"
},
"artistry": {
"model": "openai/gpt-5.4-mini"
},
"quick": {
"model": "opencode/minimax-m2.5-free"
},
"unspecified-low": {
"model": "openai/gpt-5.3-codex"
},
"unspecified-high": {
"model": "openai/gpt-5.4",
"variant": "high"
},
"writing": {
"model": "openai/gpt-5.4",
"variant": "medium"
}
}
}
Additional Context
This seems related to the rename transition from oh-my-opencode to oh-my-openagent.
Possibly related existing issues:
But I can still reproduce inconsistent behavior on 3.15.1, so this may be a regression or an incomplete fix in config detection / migration / precedence.
Operating System
Windows
OpenCode Version
1.3.15
Prerequisites
Bug Description
On OpenCode 1.3.15 with oh-my-openagent 3.15.1, my old user config no longer takes effect.
Previously I used:
~/.config/opencode/oh-my-opencode.jsonAfter upgrading, that file stopped working.
I tried cleaning all of these, but the config still did not apply:
~/.cache/opencode~/.cache/oh-my-opencode~/.config/opencode/node_modules~/.config/opencode/package.json~/.config/opencode/package-lock.jsonThen I tried renaming the config to:
~/.config/opencode/oh-my-openagent.jsonThat also did not work.
After that I created all of these files at the same time:
oh-my-openagent.jsonoh-my-openagent.jsoncoh-my-opencode.jsonoh-my-opencode.jsoncThen after restarting OpenCode, my config suddenly started working again.
I also noticed two generated files in
.config:oh-my-openagent.jsonc.bak.2026-04-05T03-17-49-446Zoh-my-openagent.jsonc.tmpThe
.tmpfile content also looked correct.So it looks like the config file is detected and rewritten, but the final effective config is still inconsistent.
Then I deleted the other three files and kept only the one I thought was correct. After restarting OpenCode again, my config stopped taking effect again.
So the current behavior seems to depend on having multiple basename/extension variants present, which should not be necessary.
Steps to Reproduce
~/.config/opencode/oh-my-opencode.json.~/.cache/opencode~/.cache/oh-my-opencode~/.config/opencode/node_modules~/.config/opencode/package.json~/.config/opencode/package-lock.json~/.config/opencode/oh-my-openagent.json.oh-my-openagent.jsonoh-my-openagent.jsoncoh-my-opencode.jsonoh-my-opencode.jsoncExpected Behavior
A single valid config file should load consistently.
I should not need to keep multiple filename variants (
oh-my-opencode/oh-my-openagent,.json/.jsonc) in the same directory just to make the config apply.If migration happens, the migrated canonical file should continue to work by itself on the next startup.
Actual Behavior
Config loading is inconsistent.
.bak.*and.tmpfiles are generated, suggesting migration/write logic runs, but the final active config is still wrong.Doctor Output
Error Logs
Configuration
{ "$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/master/assets/oh-my-opencode.schema.json", "agents": { "sisyphus": { "model": "openai/gpt-5.4", "variant": "medium" }, "hephaestus": { "model": "openai/gpt-5.4", "prompt_append": "Explore thoroughly, then implement. Prefer small, testable changes." }, "oracle": { "model": "openai/gpt-5.4", "variant": "high" }, "librarian": { "model": "zhipuai-coding-plan/glm-4.7" }, "explore": { "model": "opencode/minimax-m2.5-free" }, "multimodal-looker": { "model": "openai/gpt-5.4", "variant": "medium" }, "prometheus": { "model": "openai/gpt-5.4", "variant": "high", "prompt_append": "Always interview first. Validate scope before planning." }, "metis": { "model": "openai/gpt-5.4", "variant": "high" }, "momus": { "model": "openai/gpt-5.4", "variant": "xhigh" }, "atlas": { "model": "openai/gpt-5.4", "variant": "medium" }, "sisyphus-junior": { "model": "opencode/minimax-m2.5-free" } }, "categories": { "visual-engineering": { "model": "openai/gpt-5.4", "variant": "high" }, "ultrabrain": { "model": "openai/gpt-5.4" }, "deep": { "model": "openai/gpt-5.3-codex" }, "artistry": { "model": "openai/gpt-5.4-mini" }, "quick": { "model": "opencode/minimax-m2.5-free" }, "unspecified-low": { "model": "openai/gpt-5.3-codex" }, "unspecified-high": { "model": "openai/gpt-5.4", "variant": "high" }, "writing": { "model": "openai/gpt-5.4", "variant": "medium" } } }Additional Context
This seems related to the rename transition from
oh-my-opencodetooh-my-openagent.Possibly related existing issues:
But I can still reproduce inconsistent behavior on 3.15.1, so this may be a regression or an incomplete fix in config detection / migration / precedence.
Operating System
Windows
OpenCode Version
1.3.15