Commit Graph

2295 Commits

Author SHA1 Message Date
JimMoen a1ca658d76 fix(tool-config): stop overriding external_directory permission
Remove the hardcoded external_directory: "allow" default from
applyToolConfig(). This was silently overriding OpenCode's built-in
default of "ask" and any user-configured external_directory permission.

With this change, external_directory permission is fully controlled by
OpenCode's defaults and user configuration, as intended.

Fixes #1973
Fixes #2194
2026-03-06 17:58:08 +08:00
YeonGyu-Kim 23dcd99c9a docs(agents): refresh generated AGENTS guides
🤖 GENERATED WITH ASSISTANCE OF [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode)
2026-03-06 17:59:05 +09:00
YeonGyu-Kim 7718969317 feat(model-requirements): prefer GPT-5.4 and glm-5 in agent fallback chains
Align Prometheus, Momus, and Atlas with newer GPT-5.4 fallback tiers and replace Sisyphus install-time GLM-4.7 fallbacks with GLM-5 only.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-06 17:43:48 +09:00
YeonGyu-Kim 7fe44024c0 feat(no-sisyphus-gpt): allow Sisyphus with GPT-5.4 model
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-06 17:35:31 +09:00
YeonGyu-Kim 901ddda09c refactor(sisyphus): extract prompt builders into subdirectory with GPT-5.4 variant
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-06 17:35:24 +09:00
YeonGyu-Kim b062fc45cb fix: address Cubic P2 review - fake timers in tests, add opencode provider to glm-5
Replace real setTimeout(7000) with fake timer interception in atlas
retry tests (35s -> 227ms). Add missing opencode provider to glm-5
fallback in unspecified-high category.
2026-03-06 16:55:02 +09:00
YeonGyu-Kim 4eb38d99d2 fix(atlas): add full eligibility checks to delayed retry callback
Address Cubic P1 review: timer callback now re-checks failure backoff
count, boulder session membership, and running background tasks before
injecting continuation, matching the main idle handler's eligibility
gate.
2026-03-06 16:31:48 +09:00
YeonGyu-Kim cecb78e944 fix(atlas): schedule delayed retry when cooldown blocks boulder continuation
When atlas injects a boulder continuation via promptAsync() and the
model's response is immediately aborted (MessageAbortedError), OpenCode
fires a burst of session.idle events within milliseconds. Atlas blocks
all of them due to the 5-second cooldown. After the burst, OpenCode
stops generating session.idle events (it's state-change based, not
periodic), leaving the session stuck forever.

Fix: When cooldown blocks an idle event for a boulder session with an
incomplete plan, schedule a one-shot setTimeout (cooldown + 1s) to
re-attempt injection. The timer callback re-checks boulder state, plan
progress, and continuation-stopped flag before injecting. Only one timer
per session is allowed (deduped via pendingRetryTimer field). Timers are
cleaned up on session.deleted and session.compacted events.
2026-03-06 16:14:24 +09:00
YeonGyu-Kim 764ca0c51b feat(hephaestus): add generic GPT prompt fallback with model-specific routing
Split monolithic hephaestus.ts into directory with model-specific prompt
variants (gpt-5-4.ts, gpt-5-3-codex.ts, gpt.ts) mirroring the
sisyphus-junior pattern. Generic gpt.ts uses pre-codex-tuning prompt as
fallback for non-specific GPT models.

Also adds isGpt5_4Model and isGpt5_3CodexModel helpers to types.ts.
2026-03-06 15:34:37 +09:00
YeonGyu-Kim f4eba51388 feat(sisyphus-junior): add model-specific GPT prompt routing (gpt-5-4, gpt-5-3-codex, generic gpt)
Split GPT prompt into three variants with model-based routing:
- gpt-5-4.ts: GPT-5.4 optimized (expert coding agent framing, prose-first)
- gpt-5-3-codex.ts: GPT-5.3-Codex optimized (Hephaestus-style Senior Engineer)
- gpt.ts: Generic GPT fallback (Hephaestus-style, for any other GPT model)

Routing: gpt-5.4 → gpt-5-4 | gpt-5.3-codex → gpt-5-3-codex | other GPT → gpt

🤖 Generated with assistance of [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode)
2026-03-06 14:50:01 +09:00
YeonGyu-Kim 17f11a5fa6 feat(metis,momus): add QA scenario executability checks
🤖 Generated with assistance of [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-06 14:26:14 +09:00
YeonGyu-Kim cde6566792 refactor(atlas): add Final Verification Wave to orchestration workflow
🤖 Generated with assistance of [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-06 14:26:04 +09:00
YeonGyu-Kim 2e4fd5843c feat(model-requirements): update unspecified-high to gpt-5.4, add glm-5/k2p5/kimi-k2.5 fallbacks
🤖 Generated with assistance of [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-06 14:25:47 +09:00
YeonGyu-Kim ae05e76ddf fix(start-work): remove worktree setup prompt when unspecified, add strong worktree active instructions
When no worktree is specified in boulder, stop injecting 'Worktree Setup Required'
instructions. When worktree IS present, inject emphatic instructions ensuring the
agent and all subagents operate exclusively within the worktree directory.
2026-03-06 14:20:32 +09:00
YeonGyu-Kim 381d7688ab refactor(ultrawork): rename gpt5.2.ts to gpt.ts and align with 5.4 style
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-06 13:44:39 +09:00
YeonGyu-Kim 3d0ccdd019 feat(momus): add GPT-5.4 variant prompt with model-based routing
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-06 13:44:32 +09:00
YeonGyu-Kim 051737078e feat(oracle): add GPT-5.4 variant prompt with model-based routing
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-06 13:44:26 +09:00
YeonGyu-Kim 983b4d8ca7 refactor(prometheus): align GPT prompt with 5.4 system prompt style
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-06 13:44:20 +09:00
YeonGyu-Kim de8e5ea97f refactor(atlas): align GPT prompt with 5.4 system prompt style
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-06 13:44:14 +09:00
YeonGyu-Kim 285db926da refactor(sisyphus-junior): align GPT prompt with 5.4 system prompt style
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-06 13:44:05 +09:00
YeonGyu-Kim ee3d88af9d refactor(installer): remove dead Antigravity auth plugin code
The installer was writing Antigravity provider config and calling a no-op addAuthPlugins function. Since opencode-antigravity-auth is no longer auto-installed and OpenCode supports native Google/Gemini auth, all Antigravity-related installer code is dead. Gemini detection now checks for native google provider instead.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-06 10:59:41 +09:00
YeonGyu-Kim 89dc302403 update agent-browser skill to match upstream v0.16.3
Sync SKILL.md and inline template with vercel-labs/agent-browser v0.16.3.
Adds: native Rust daemon, diff commands, annotated screenshots, profiler,
keyboard type/inserttext, get styles, expanded locators (placeholder/alt/
title/testid/last), security options, config file support, iOS Simulator,
cloud providers (Browserbase/Browser Use/Kernel), session persistence,
CDP auto-connect, and state management commands.
2026-03-06 10:45:35 +09:00
ismeth 389625cb20 Update constants.ts 2026-03-05 11:41:39 +01:00
ismeth e916d564a9 fix(background-task): clarify timeout unit is milliseconds in description 2026-03-05 09:05:29 +01:00
YeonGyu-Kim a61f8bb853 Update @opencode-ai/plugin and SDK to v1.2.x and align system transform handler signature
- Bump @opencode-ai/plugin ^1.1.19 → ^1.2.16, @opencode-ai/sdk ^1.1.19 → ^1.2.17
- Update system-transform handler input type to match new plugin contract (optional sessionID, required model)
- Add @opencode-ai/sdk override in bun.lock

🤖 Generated with assistance of [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode)
2026-03-05 11:18:12 +09:00
YeonGyu-Kim c8c99445ea fix(look-at): add catch block to prevent TUI crash on unexpected errors 2026-03-05 11:11:53 +09:00
YeonGyu-Kim 39d94a4af6 fix(task): disambiguate background task_id metadata 2026-03-05 11:02:49 +09:00
YeonGyu-Kim acf4c46439 fix(task): align background output task_id with opencode contract 2026-03-05 11:02:49 +09:00
YeonGyu-Kim 5cbf7828f0 fix(task): avoid pending sessionId metadata in background delegate output 2026-03-05 11:02:49 +09:00
YeonGyu-Kim d6b0e564bf feat(delegate-task): unify TUI metadata by adding model field to all 5 executor paths 2026-03-04 18:31:19 +09:00
YeonGyu-Kim 85690b69a8 test: update snapshots and assertions for kimi-k2.5-free removal 2026-03-04 11:33:11 +09:00
YeonGyu-Kim 8c2dcb75cb refactor: remove kimi-k2.5-free from all fallback chains and reorder multimodal-looker
kimi-k2.5-free is no longer available. Remove from all agent and category
fallback chains (sisyphus, multimodal-looker, prometheus, metis, atlas,
writing). Reorder multimodal-looker to: gpt-5.3-codex medium -> k2p5 ->
gemini-3-flash -> glm-4.6v -> gpt-5-nano.
2026-03-04 11:24:39 +09:00
YeonGyu-Kim 1ef5c17c35 feat: make gpt-5.3-codex medium the primary model for multimodal-looker
GPT-5.3 Codex has strong multimodal capabilities. Promote it to first
candidate in multimodal-looker fallback chain, with gemini-3-flash
following (matching the ULW pattern of gpt-5.3-codex -> gemini).
2026-03-04 11:20:55 +09:00
YeonGyu-Kim f9da00d021 Merge pull request #2251 from code-yeongyu/fix/pr-1906-image-conversion
fix(look-at): temp dir cleanup, Windows compat, argument injection prevention
2026-03-03 00:49:25 +09:00
YeonGyu-Kim 51a3d20dc9 Merge pull request #2250 from code-yeongyu/fix/pr-2113-model-fallback
fix(model-fallback): correct transform expectations and hermetic test isolation
2026-03-03 00:48:11 +09:00
YeonGyu-Kim 785dd529e1 Merge pull request #2249 from code-yeongyu/fix/pr-2173-timeout-issues
fix(delegate-task): resolve timeout handling regressions from #2173
2026-03-03 00:48:08 +09:00
YeonGyu-Kim 025d2a3579 Merge pull request #2248 from code-yeongyu/fix/pr-2080-model-format
fix: model format normalization and explicit config cache bypass
2026-03-03 00:48:04 +09:00
YeonGyu-Kim 0e858ee1df Merge pull request #2247 from code-yeongyu/fix/pr-1977-doctor-paths
fix(doctor): quote cache paths and respect release channel tags
2026-03-03 00:48:00 +09:00
YeonGyu-Kim b5100d99df test(look-at): stabilize image-converter tests across platforms 2026-03-03 00:47:21 +09:00
YeonGyu-Kim 4123148376 fix(look-at): temp dir cleanup, Windows compat, argument injection prevention 2026-03-03 00:38:47 +09:00
YeonGyu-Kim 95fe698817 fix(model-fallback): correct transform expectations and hermetic test isolation 2026-03-03 00:38:45 +09:00
YeonGyu-Kim 031967857f fix(delegate-task): resolve timeout detection and config drift in sync poller 2026-03-03 00:38:22 +09:00
YeonGyu-Kim c80a74c5f4 fix(model-resolution): normalize model format and remove dead config flag 2026-03-03 00:38:20 +09:00
YeonGyu-Kim 3d66a30406 fix(doctor): quote paths and respect version channels in fix messages 2026-03-03 00:38:19 +09:00
YeonGyu-Kim cf40ca5553 fix(hooks): ensure notification fallback on terminal-notifier failure 2026-03-03 00:38:17 +09:00
YeonGyu-Kim 3363f0c63a fix(test): resolve test failure in PR #2021 fixes 2026-03-03 00:27:53 +09:00
YeonGyu-Kim c084cc3f26 fix(dispatch): resolve plugin namespace parsing, template substitution, and discovery duplication 2026-03-03 00:14:01 +09:00
YeonGyu-Kim f383d7abb5 Revert "Merge pull request #1951 from edxeth/feat/custom-agents"
This reverts commit 47e300b17e, reversing
changes made to 243ce1b7e8.
2026-03-02 23:55:48 +09:00
YeonGyu-Kim 33d39597ae docs(agents): regenerate AGENTS.md hierarchy with updated metrics and model configs
- 1208→1243 TS files (+35), 143k→155k LOC (+12k)
- Update all agent models: Sisyphus, Hephaestus, Oracle, Librarian, Atlas, Metis, Momus
- Add 6 new hook directories (39→45 dirs): beast-mode-system, hashline-edit-diff-enhancer, anthropic-image-context, task-reminder, compaction-todo-preserver, runtime-fallback
- Update category models: visual-engineering/artistry gemini-3-pro→gemini-3.1-pro
- Add 2 config schema files: fallback-models.ts, runtime-fallback.ts
- Timestamp: 2026-03-02 | Commit: 1c2caa09

🤖 Generated with assistance of [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode)
2026-03-02 23:40:38 +09:00
YeonGyu-Kim 47e300b17e Merge pull request #1951 from edxeth/feat/custom-agents
feat(config): make custom agents first-class for planning and delegation
2026-03-02 23:28:57 +09:00