Sungho Park
816c22660d
Add xhigh reasoningEffort to config schema ( #965 )
...
* test: cover xhigh reasoningEffort
* feat: add xhigh reasoningEffort option
* test: make reasoningEffort xhigh test model-agnostic
2026-01-24 15:48:15 +09:00
YeonGyu-Kim
4c3e19c1a3
fix(multimodal-looker): update fallback chain order ( #1050 )
...
New order:
1. google/gemini-3-flash
2. openai/gpt-5.2
3. zai-coding-plan/glm-4.6v
4. anthropic/claude-haiku-4-5
5. opencode/gpt-5-nano (FREE, ultimate fallback)
Co-authored-by: justsisyphus <justsisyphus@users.noreply.github.com >
2026-01-24 15:40:24 +09:00
YeonGyu-Kim
8af6774ae8
fix(models): update model names to match OpenCode Zen catalog ( #1048 )
...
* fix(models): update model names to match OpenCode Zen catalog
OpenCode Zen recently updated their official model catalog, deprecating
several preview and free model variants:
DEPRECATED → NEW (Official Zen Names):
- gemini-3-pro-preview → gemini-3-pro
- gemini-3-flash-preview → gemini-3-flash
- grok-code → gpt-5-nano (FREE tier maintained)
- glm-4.7-free → big-pickle (FREE tier maintained)
- glm-4.6v → glm-4.6
Changes:
- Updated 6 source files (model-requirements, delegate-task, think-mode, etc.)
- Updated 9 documentation files (installation, configurations, features, etc.)
- Updated 14 test files with new model references
- Regenerated snapshots to reflect catalog changes
- Removed duplicate think-mode entries for preview variants
Impact:
- FREE tier access preserved via gpt-5-nano and big-pickle
- All 55 model-related tests passing
- Zero breaking changes - pure string replacement
- Aligns codebase with official OpenCode Zen model catalog
Verified:
- Zero deprecated model names in codebase
- All model-related tests pass (55/55)
- Snapshots regenerated and validated
Affects: 30 files (6 source, 9 docs, 14 tests, 1 snapshot)
* fix(multimodal-looker): update fallback chain with glm-4.6v and gpt-5-nano
- Change glm-4.6 to glm-4.6v for zai-coding-plan provider
- Add opencode/gpt-5-nano as 4th fallback (FREE tier)
- Push gpt-5.2 to 5th position
Fallback chain now:
1. gemini-3-flash (google, github-copilot, opencode)
2. claude-haiku-4-5 (anthropic, github-copilot, opencode)
3. glm-4.6v (zai-coding-plan)
4. gpt-5-nano (opencode) - FREE
5. gpt-5.2 (openai, github-copilot, opencode)
* chore: update bun.lock
---------
Co-authored-by: justsisyphus <justsisyphus@users.noreply.github.com >
2026-01-24 15:30:35 +09:00
justsisyphus
5d14e09279
feat(website): add layout with header, sidebar, footer and navigation
...
- Create Header component with logo, nav, theme toggle, language switcher
- Create Sidebar component with doc navigation from config
- Create Footer component
- Create MobileNav component with hamburger menu
- Create navigation config file (docsConfig)
- Integrate all layout components into [locale]/layout.tsx
- Add framer-motion for mobile nav animations
- All tests passing, build successful
2026-01-24 14:25:05 +09:00
justsisyphus
f28c8a45dd
feat(website): add next-intl i18n and dark mode support
2026-01-24 14:25:05 +09:00
justsisyphus
b7d3417d2e
fix(website): resolve @opennextjs/cloudflare and test configuration issues
...
- Successfully installed @opennextjs/cloudflare v1.15.1
- Fixed Vitest configuration to exclude e2e tests
- Renamed e2e test files from .spec.ts to .e2e.ts to avoid Bun test runner conflicts
- Updated eslint.config.mjs and playwright.config.ts
- All tests passing: Vitest (1/1), Playwright (6/6)
- Production bundle size: ~5MB < 10MiB limit
- Marked TODO 0 complete in plan
2026-01-24 14:25:05 +09:00
justsisyphus
e68600a76b
feat(website): initialize Next.js 15 project with @opennextjs/cloudflare
2026-01-24 14:25:05 +09:00
github-actions[bot]
691fffb2aa
@AndersHsueh has signed the CLA in code-yeongyu/oh-my-opencode#1042
2026-01-24 04:41:56 +00:00
github-actions[bot]
64d4d9b8b9
@gongxh0901 has signed the CLA in code-yeongyu/oh-my-opencode#1037
2026-01-24 02:27:36 +00:00
github-actions[bot]
7f6a334aa3
@RouHim has signed the CLA in code-yeongyu/oh-my-opencode#1031
2026-01-23 19:32:14 +00:00
github-actions[bot]
ed83f12753
release: v3.0.0-beta.16
2026-01-23 18:12:07 +00:00
justsisyphus
29d2f94979
fix(delegate-task): use lowercase sisyphus-junior agent name in API calls
...
Previous fix (7ed7bf5c ) only updated Atlas → atlas, but missed Sisyphus-Junior.
OpenCode does case-sensitive agent lookup, causing crash when delegate_task
tried to spawn 'Sisyphus-Junior' (registered as 'sisyphus-junior').
- SISYPHUS_JUNIOR_AGENT constant: 'Sisyphus-Junior' → 'sisyphus-junior'
- agent-tool-restrictions key: 'Sisyphus-Junior' → 'sisyphus-junior'
- Updated related test mocks
2026-01-24 03:00:58 +09:00
github-actions[bot]
d0497f0e86
release: v3.0.0-beta.15
2026-01-23 17:44:45 +00:00
justsisyphus
101c1a8965
fix(agents): use lowercase agent names in API calls
...
- atlas/index.ts: agent: 'Atlas' -> 'atlas'
- start-work/index.ts: updateSessionAgent(..., 'Atlas') -> 'atlas'
- builtin-commands/commands.ts: agent: 'Atlas' -> 'atlas'
- Updated tests to match lowercase convention
2026-01-24 02:39:12 +09:00
github-actions[bot]
f18778555b
release: v3.0.0-beta.14
2026-01-23 17:09:52 +00:00
justsisyphus
f92d2ec57f
refactor(agents): add prometheus agent and normalize agent key lookups
...
- Add 'prometheus' to BuiltinAgentNameSchema enum
- Update delegate_task parameter names in documentation (agent → subagent_type, background → run_in_background)
- Make agent name comparison case-insensitive in Atlas hook
- Implement case-insensitive agent config lookup in shared utilities
- Relax type signature for disabled agents parameter
🤖 Generated with assistance of OhMyOpenCode
2026-01-24 02:00:17 +09:00
justsisyphus
439d0e58c8
test: add integration tests for agent key normalization
2026-01-23 21:54:27 +09:00
justsisyphus
8e8fefa5da
test: update CLI tests for lowercase agent keys
2026-01-23 21:47:21 +09:00
justsisyphus
691021cca0
refactor(model-requirements): use lowercase agent keys
2026-01-23 21:41:55 +09:00
justsisyphus
0762195a2d
refactor(plugin): use lowercase agent keys throughout
2026-01-23 21:32:17 +09:00
justsisyphus
54c0ee372a
refactor(agents): use lowercase config keys in utils
2026-01-23 21:27:26 +09:00
justsisyphus
2e6df9781d
refactor(prometheus-hook): use lowercase config key
2026-01-23 20:49:17 +09:00
justsisyphus
fdb227a816
refactor(schema): use lowercase agent config keys
2026-01-23 20:46:09 +09:00
justsisyphus
815a7b20ee
refactor(migration): normalize agent keys to lowercase
2026-01-23 19:01:10 +09:00
justsisyphus
34035b9a04
feat(shared): add agent display names module
2026-01-23 18:50:03 +09:00
justsisyphus
9f6c777d79
feat(publish): add platform binary verification steps
...
- Add STEP 8.5: Wait for publish-platform workflow completion
- Add STEP 8.6: Verify all 7 platform binary packages on npm
- Update TODO list with platform verification tasks
- Add error handling for platform-specific failures
2026-01-23 17:35:24 +09:00
github-actions[bot]
cb1ab7315c
@veetase has signed the CLA in code-yeongyu/oh-my-opencode#985
2026-01-23 08:27:12 +00:00
justsisyphus
ce83507c76
docs: add model configuration section to overview and quick start to configurations
2026-01-23 17:05:45 +09:00
justsisyphus
32bfd59b00
feat(agents): add aggressive resume instructions to Atlas prompt
2026-01-23 17:04:14 +09:00
justsisyphus
5c587540f3
docs: update multimodal-looker model name and fallback chain
2026-01-23 17:02:11 +09:00
justsisyphus
2f56fd13b0
fix(cli): update zai-coding-plan hints to include multimodal-looker
2026-01-23 17:00:22 +09:00
justsisyphus
90264103b0
feat(agents): add zai-coding-plan/glm-4.6v fallback for multimodal-looker
2026-01-23 16:58:33 +09:00
yimingll
32113c5ad0
fix(lsp): add data dir to LSP server detection paths ( #992 )
...
OpenCode downloads LSP servers (like clangd) to ~/.local/share/opencode/bin,
but isServerInstalled() only checked ~/.config/opencode/bin. This caused
LSP tools to report servers as 'not installed' even when OpenCode had
successfully downloaded them.
Add ~/.local/share/opencode/bin to the detection paths to match OpenCode's
actual behavior.
Co-authored-by: yimingll <yimingll@users.noreply.github.com >
2026-01-23 16:37:40 +09:00
justsisyphus
4b8eee109a
Merge pull request #913 from carlory/fix-doctor
...
fix(doctor): handle file:// protocol for local dev plugin detection
2026-01-23 16:36:16 +09:00
justsisyphus
a54150c7e6
Merge pull request #962 from popododo0720/fix/issues-898-919
...
fix(doctor): improve AST-Grep NAPI detection for bunx environments
2026-01-23 16:36:05 +09:00
justsisyphus
4cf61cfb01
fix(skill): enforce agent restriction in createSkillTool ( #1018 )
...
* fix(skill): enforce agent restriction in createSkillTool
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
* fix(skill): block restricted skills when agent context missing
Addresses cubic review feedback: previously agent-restricted skills
could be invoked when ctx or ctx.agent was undefined because the
guard only ran when ctx?.agent was truthy.
Changed condition from:
skill.definition.agent && ctx?.agent && skill.definition.agent !== ctx.agent
To:
skill.definition.agent && (!ctx?.agent || skill.definition.agent !== ctx.agent)
This ensures restricted skills are blocked unless the exact matching
agent is present in the context.
---------
Co-authored-by: justsisyphus <justsisyphus@users.noreply.github.com >
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-01-23 16:32:41 +09:00
justsisyphus
e591f562f7
fix(ci): build Windows binary natively to fix segfault ( #1019 )
...
Bun cross-compilation from Linux to Windows produces binaries that crash
with 'Segmentation fault at address 0xFFFFFFFFFFFFFFFF'.
Root cause: oven-sh/bun#18416
Solution:
- Use windows-latest runner for Windows platform in publish-platform.yml
- Set shell: bash for consistent behavior across runners
This is a simpler fix than PR #938 which modified publish.yml (wrong workflow).
The platform binaries are built and published by publish-platform.yml.
Fixes #873
Fixes #844
Co-authored-by: justsisyphus <justsisyphus@users.noreply.github.com >
2026-01-23 16:30:47 +09:00
justsisyphus
9aa2084072
fix(session): preserve custom agent after switching ( #1017 )
...
Use setSessionAgent (first-write wins) instead of updateSessionAgent in chat.message handler. This prevents the default agent from overwriting a custom agent that was set via UI switch.
Fixes #893
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode )
Co-authored-by: justsisyphus <justsisyphus@users.noreply.github.com >
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-01-23 16:25:26 +09:00
YeonGyu-Kim
84a17c003e
fix(tools): conditionally register look_at when multimodal-looker enabled ( #1016 )
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode )
Co-authored-by: justsisyphus <justsisyphus@users.noreply.github.com >
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-01-23 16:25:17 +09:00
YeonGyu-Kim
31248a5904
fix(hooks): use unix shell syntax for bash tool on all platforms ( #1015 )
...
The bash tool always runs in a Unix-like shell (bash/sh), even on Windows (via Git Bash, WSL, etc.), so we should always use unix export syntax instead of detecting the shell type dynamically.
Fixes #983
Fixes #889
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode )
Co-authored-by: justsisyphus <justsisyphus@users.noreply.github.com >
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-01-23 16:24:58 +09:00
justsisyphus
cc8d2ee4d2
docs(agents): update AGENTS.md with current commit hash and line counts
2026-01-23 16:00:38 +09:00
justsisyphus
d5e1344b87
fix(atlas): capture stderr from git commands to prevent help text leak
...
When git commands fail (e.g., not in a repo, invalid HEAD), git outputs
help text to stderr. Without explicit stdio option, execSync inherits
the parent's stdio causing help text to appear on terminal during
delegate_task execution.
Add stdio: ['pipe', 'pipe', 'pipe'] to capture stderr instead of
letting it leak to terminal.
2026-01-23 15:42:35 +09:00
justsisyphus
c985ef9c99
fix(model-resolver): use first fallback entry when model cache unavailable
...
When availableModels is empty (no cache in CI), use the first entry
from fallbackChain directly instead of falling back to systemDefault.
This ensures categories and agents use their configured models even
when the model cache file doesn't exist.
Fixes:
- model-resolution check returning 'warn' instead of 'pass' in CI
- DEFAULT_CATEGORIES not being used when no cache available
- Unstable agent detection failing (models falling back to non-gemini)
2026-01-23 15:39:07 +09:00
github-actions[bot]
61f55d2f9b
@Ssoon-m has signed the CLA in code-yeongyu/oh-my-opencode#1014
2026-01-23 06:31:37 +00:00
Nguyen Khac Trung Kien
4f76f727bc
Merge pull request #999 from l3aro/dev
2026-01-23 13:14:02 +07:00
justsisyphus
903e8e75d2
refactor(models): update agent/category fallback chains
...
- quick: replace openai fallback with opencode/grok-code
- writing: add zai-coding-plan/glm-4.7 between sonnet and gpt
- unspecified-low: gpt-5.2 → gpt-5.2-codex (medium)
- Sisyphus: add zai/glm-4.7 before openai, use gpt-5.2-codex (medium)
- Momus & Metis: add variant 'max' to gemini-3-pro
- explore: simplify to haiku (anthropic/opencode) → grok-code (opencode)
2026-01-23 15:07:58 +09:00
justsisyphus
a572ca5332
fix(agents): use resolved variant from fallback chain instead of requirement default
...
resolveModelWithFallback() returns entry-specific variant but it was being
ignored. Agents like oracle now correctly get variant 'high' from their
fallback chain entry instead of undefined.
2026-01-23 14:44:02 +09:00
justsisyphus
6ddf5735e7
refactor(atlas): rewrite prompt with lean orchestrator structure
...
- Reduce prompt from ~1280 to ~280 lines (78% reduction)
- Apply prompt engineering principles: remove model-already-knows content
- Use clean XML sections: identity, mission, delegation_system, workflow, etc.
- Adopt 6-section delegation format (TASK, EXPECTED OUTCOME, REQUIRED TOOLS, MUST DO, MUST NOT DO, CONTEXT)
- Preserve: identity, category+skills system, notepad protocol, parallelization, project-level QA
- Consolidate critical overrides at end with strong framing
2026-01-23 14:37:52 +09:00
justsisyphus
3441453f66
fix(atlas): register tool.execute.before and pass backgroundManager
...
- Add atlasHook?.['tool.execute.before'] call in tool.execute.before handler
- Pass backgroundManager option to createAtlasHook for proper bg task checking
- Move atlasHook declaration after backgroundManager initialization
2026-01-23 14:25:59 +09:00
justsisyphus
8a8d3c4da6
feat: show warning toast when model cache is not available
...
- Added isModelCacheAvailable() to check if cache file exists
- Shows warning toast on session start if cache is missing
- Suggests running 'opencode models --refresh' or restarting
2026-01-23 14:20:38 +09:00