YeonGyu-Kim
d57ed97386
feat(hephaestus): upgrade default model from gpt-5.3-codex to gpt-5.4
...
Hephaestus now uses gpt-5.4 as its default model across all providers
(openai, github-copilot, venice, opencode), matching Sisyphus's GPT 5.4
support. The separate gpt-5.3-codex → github-copilot fallback entry is
removed since gpt-5.4 is available on all required providers.
2026-03-26 19:02:37 +09:00
github-actions[bot]
6a510c01e0
@kuitos has signed the CLA in code-yeongyu/oh-my-openagent#2833
2026-03-26 09:56:02 +00:00
MoerAI
95801a4850
fix(ralph-loop): extract text from parsed entry instead of testing raw JSONL
2026-03-26 18:16:07 +09:00
YeonGyu-Kim
b34eab3884
fix(test): isolate model-capabilities from local provider cache
...
Mock connected-providers-cache in model-capabilities.test.ts to prevent
findProviderModelMetadata from reading disk-cached model metadata.
Without this mock, the 'prefers runtime models.dev cache' test gets
polluted by real cached data from opencode serve runs, causing the
test to receive different maxOutputTokens/supportsTemperature values
than the mock runtime snapshot provides.
This was the last CI-only failure — passes locally with cache, fails
on CI without cache, now passes everywhere via mock isolation.
Full suite: 4484 pass, 0 fail.
2026-03-26 18:14:51 +09:00
YeonGyu-Kim
4efc181390
fix(ci): resolve all test failures + complete rename compat layer
...
Sisyphus-authored fixes across 15 files:
- plugin-identity: align CONFIG_BASENAME with actual config file name
- add-plugin-to-opencode-config: handle legacy→canonical name migration
- plugin-detection tests: update expectations for new identity constants
- doctor/system: fix legacy name warning test assertions
- install tests: align with new plugin name
- chat-params tests: fix mock isolation
- model-capabilities tests: fix snapshot expectations
- image-converter: fix platform-dependent test assertions (Linux CI)
- example configs: expanded with more detailed comments
Full suite: 4484 pass, 0 fail, typecheck clean.
2026-03-26 18:04:31 +09:00
PR Bot
3601061da0
feat: upgrade remaining MiniMax M2.5 fallbacks to M2.7-highspeed
...
Upgrade the secondary MiniMax fallback entries in librarian and explore
agents from M2.5 to M2.7-highspeed, completing the M2.5→M2.7 migration.
- librarian: minimax-m2.5 → minimax-m2.7-highspeed (2nd fallback)
- explore: minimax-m2.7 → minimax-m2.7-highspeed (2nd), minimax-m2.5 → minimax-m2.7 (3rd)
- Update corresponding test assertions
2026-03-26 16:49:31 +08:00
YeonGyu-Kim
e86edca633
feat(doctor): warn on legacy package name + add example configs
...
- Doctor now detects when opencode.json references 'oh-my-opencode'
(legacy name) and warns users to switch to 'oh-my-openagent' with
the exact replacement string.
- Added 3 example config files in docs/examples/:
- default.jsonc: balanced setup with all agents documented
- coding-focused.jsonc: Sisyphus + Hephaestus heavy
- planning-focused.jsonc: Prometheus + Atlas heavy
All examples include every agent (sisyphus, hephaestus, atlas,
prometheus, explore, librarian) with model recommendations.
Helps with #2823
2026-03-26 17:01:42 +09:00
YeonGyu-Kim
a8ec92748c
fix(model-resolution): honor user config overrides on cold cache
...
When provider-models cache is cold (first run / cache miss),
resolveModelForDelegateTask returns {skipped: true}. Previously this
caused the subagent resolver to:
1. Ignore the user's explicit model override (e.g. explore.model)
2. Fall through to the hardcoded fallback chain which may contain
model IDs that don't exist in the provider catalog
Now:
- subagent-resolver: if resolution is skipped but user explicitly
configured a model, use it directly
- subagent-resolver: don't assign hardcoded fallback chain on skip
- category-resolver: same — don't leak hardcoded chain on skip
- general-agents: if user model fails resolution, use it as-is
instead of falling back to hardcoded chain first entry
Closes #2820
2026-03-26 16:54:04 +09:00
YeonGyu-Kim
dd85d1451a
fix(model-requirements): align fallback models with available provider catalogs
...
- opencode/minimax-m2.7-highspeed → opencode/minimax-m2.5 (provider lacks m2.7 variants)
- opencode-go/minimax-m2.7-highspeed → opencode-go/minimax-m2.7 (provider lacks -highspeed)
- opencode/minimax-m2.7 → opencode/minimax-m2.5 (provider only has m2.5)
- added xai as alternative provider for grok-code-fast-1 (prevents wrong provider prefix)
2026-03-26 16:00:02 +09:00
YeonGyu-Kim
682eead61b
Merge pull request #2845 from code-yeongyu/fix/path-discovery-parity-followup
...
fix: add remaining path discovery parity coverage
2026-03-26 13:13:15 +09:00
YeonGyu-Kim
42f5386100
fix(tests): drop duplicate tilde config regression
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 13:08:53 +09:00
YeonGyu-Kim
5bc019eb7c
fix(skills): remove duplicate homedir import
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 13:06:32 +09:00
YeonGyu-Kim
097e2be7e8
fix(slashcommand): discover nested opencode commands with slash names
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 13:05:03 +09:00
YeonGyu-Kim
c637d77965
fix(commands): discover ancestor opencode project commands
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 13:04:39 +09:00
YeonGyu-Kim
4c8aacef48
fix(agents): include .agents skills in agent awareness
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 13:02:52 +09:00
YeonGyu-Kim
8413bc6a91
fix(skills): expand tilde config source paths
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 13:02:36 +09:00
YeonGyu-Kim
86a62aef45
fix(skills): discover ancestor project skill directories
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 13:02:36 +09:00
YeonGyu-Kim
961cc788f6
fix(shared): support opencode directory aliases
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 13:02:12 +09:00
YeonGyu-Kim
19838b78a7
fix(shared): add bounded project discovery helpers
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 13:01:06 +09:00
YeonGyu-Kim
9d4a8f2183
Merge pull request #2844 from code-yeongyu/fix/opencode-followup-gaps
...
fix: close remaining upstream path discovery gaps
2026-03-26 12:35:39 +09:00
YeonGyu-Kim
7f742723b5
fix(slashcommand): use slash separator for nested commands
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 12:29:42 +09:00
YeonGyu-Kim
b20a34bfa7
fix(slashcommand): discover nested opencode commands
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 12:15:47 +09:00
YeonGyu-Kim
12a4318439
fix(commands): load .agents skills into command config
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 12:15:47 +09:00
YeonGyu-Kim
e4a5973b16
fix(agents): include .agents skills in agent awareness
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 12:15:47 +09:00
YeonGyu-Kim
83819a15d3
fix(shared): stop ancestor discovery at worktree root
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 12:15:47 +09:00
YeonGyu-Kim
829c58ccb0
refactor(aliases): migrate to pattern-based model alias resolution
...
Move from hardcoded exact aliases to pattern-based canonicalization:
- Populate PATTERN_ALIAS_RULES with regex patterns for:
- Claude thinking variants (claude-opus-4-6-thinking → claude-opus-4-6)
- Gemini tier suffixes (gemini-3.1-pro-{high,low} → gemini-3.1-pro)
- Add stripProviderPrefixForAliasLookup() for provider-prefixed models
(anthropic/claude-sonnet-4-6 → claude-sonnet-4-6 for capability lookup)
- Preserve requestedModelID (with prefix) for API transport
- Reduce EXACT_ALIAS_RULES to exceptional cases only
(gemini-3-pro-{high,low} → gemini-3-pro-preview)
- Comprehensive test coverage for patterns, prefix stripping, negatives
Addresses Discussion #2835 (pattern matching architecture)
Related to PR #2834 (alias guardrails)
41 targeted tests pass, 4467 full suite tests pass, tsc clean.
2026-03-26 12:04:50 +09:00
YeonGyu-Kim
a391f44420
Merge pull request #2842 from code-yeongyu/fix/opencode-skill-override-gaps
...
fix: align path discovery with upstream opencode
2026-03-26 11:54:08 +09:00
YeonGyu-Kim
94b4a4f850
fix(slashcommand): deduplicate opencode command aliases
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 11:36:59 +09:00
YeonGyu-Kim
9fde370838
fix(commands): preserve nearest opencode command precedence
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 11:36:59 +09:00
YeonGyu-Kim
b6ee7f09b1
fix(slashcommand): discover ancestor opencode commands
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 11:22:00 +09:00
YeonGyu-Kim
28bcab066e
fix(commands): load opencode command dirs from aliases
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 11:22:00 +09:00
YeonGyu-Kim
b5cb50b561
fix(skills): discover ancestor project skill directories
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 11:22:00 +09:00
YeonGyu-Kim
8242500856
fix(skills): expand tilde config source paths
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 11:22:00 +09:00
YeonGyu-Kim
6d688ac0ae
fix(shared): support opencode directory aliases
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 11:22:00 +09:00
YeonGyu-Kim
da3e80464d
fix(shared): add ancestor project discovery helpers
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-26 11:22:00 +09:00
YeonGyu-Kim
23df6bd255
Merge pull request #2841 from code-yeongyu/fix/model-fallback-test-isolation
...
fix(tests): resolve 5 cross-file test isolation failures
2026-03-26 09:31:09 +09:00
YeonGyu-Kim
7895361f42
fix(tests): resolve 5 cross-file test isolation failures
...
- model-fallback hook: mock selectFallbackProvider and add _resetForTesting()
to test-setup.ts to clear module-level state between files
- fallback-retry-handler: add afterAll(mock.restore) and use mockReturnValueOnce
to prevent connected-providers mock leaking to subsequent test files
- opencode-config-dir: use win32.join for Windows APPDATA path construction
so tests pass on macOS (path.join uses POSIX semantics regardless of
process.platform override)
- system-loaded-version: use resolveSymlink from file-utils instead of
realpathSync to handle macOS /var -> /private/var symlink consistently
All 4456 tests pass (0 failures) on full bun test suite.
2026-03-26 09:30:34 +09:00
YeonGyu-Kim
90919bf359
Merge pull request #2664 from kilhyeonjun/fix/anthropic-1m-ga-context-limit
...
fix(shared): respect cached model context limits for Anthropic providers post-GA
2026-03-26 08:55:04 +09:00
YeonGyu-Kim
32f2c688e7
Merge pull request #2707 from MoerAI/fix/windows-symlink-config
...
fix(windows): resolve symlinked config paths and plugin name parsing (fixes #2271 )
2026-03-26 08:54:45 +09:00
YeonGyu-Kim
e6d0484e57
Merge pull request #2710 from MoerAI/fix/rate-limit-hang
...
fix(runtime-fallback): detect bare 429 rate-limit signals (fixes #2677 )
2026-03-26 08:53:41 +09:00
YeonGyu-Kim
abd62472cf
Merge pull request #2752 from MoerAI/fix/quota-error-fallback-detection
...
fix(runtime-fallback): detect prettified quota errors without HTTP status codes (fixes #2747 )
2026-03-26 08:50:58 +09:00
YeonGyu-Kim
b1e099130a
Merge pull request #2756 from MoerAI/fix/plugin-display-name
...
fix(plugin): display friendly name in configuration UI instead of file path (fixes #2644 )
2026-03-26 08:50:29 +09:00
YeonGyu-Kim
09fb364bfb
Merge pull request #2833 from kuitos/feat/agent-order-support
...
feat(agent-priority): inject order field for deterministic agent Tab cycling
2026-03-26 08:49:58 +09:00
YeonGyu-Kim
d1ff8b1e3f
Merge pull request #2727 from octo-patch/feature/upgrade-minimax-m2.7
...
feat: upgrade MiniMax from M2.5 to M2.7 and expand to more agents/categories
2026-03-26 08:49:11 +09:00
YeonGyu-Kim
6e42b553cc
Merge origin/dev into feature/upgrade-minimax-m2.7 (resolve conflicts)
2026-03-26 08:48:53 +09:00
YeonGyu-Kim
02ab83f4d4
Merge pull request #2834 from RaviTharuma/feat/model-capabilities-canonical-guardrails
...
fix(model-capabilities): harden canonical alias guardrails
2026-03-26 08:46:43 +09:00
github-actions[bot]
ce1bffbc4d
@ventsislav-georgiev has signed the CLA in code-yeongyu/oh-my-openagent#2840
2026-03-25 23:11:43 +00:00
github-actions[bot]
4d4680be3c
@clansty has signed the CLA in code-yeongyu/oh-my-openagent#2839
2026-03-25 21:33:49 +00:00
Ravi Tharuma
ce877ec0d8
test(atlas): avoid shared barrel mock pollution
2026-03-25 22:27:26 +01:00
Ravi Tharuma
ec20a82b4e
fix(model-capabilities): align gemini aliases and alias lookup
2026-03-25 22:19:51 +01:00