Commit Graph

524 Commits

Author SHA1 Message Date
acamq 2d6be11fa0 test: update ultrabrain model expectations to gpt-5.4
The DEFAULT_CATEGORIES ultrabrain model was updated from openai/gpt-5.3-codex
to openai/gpt-5.4 in a previous commit, but test expectations were not updated.

Updated test expectations in:
- src/plugin-handlers/config-handler.test.ts (lines 560, 620)
- src/agents/utils.test.ts (lines 1119, 1232, 1234, 1301, 1303, 1316, 1318)
2026-03-11 15:18:29 -06:00
YeonGyu-Kim 004f504e6c fix(agents): keep oracle available on first run without cache
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-12 01:07:57 +09:00
YeonGyu-Kim ccfb5702ac fix: correct import path for buildAntiDuplicationSection in metis.ts 2026-03-11 21:48:08 +09:00
YeonGyu-Kim 11423c97a7 fix(agents): add anti-duplication rules to Prometheus and Metis agents
- Import and inject buildAntiDuplicationSection() in all 3 Prometheus variants (interview-mode, gpt, gemini) and Metis
- Added tests verifying anti-dup section presence in all prompt variants
- Completes anti-duplication coverage for all delegating agents
2026-03-11 21:45:35 +09:00
YeonGyu-Kim 554392e639 fix(agents): add anti-duplication rules to Atlas agent prompts 2026-03-11 20:38:46 +09:00
YeonGyu-Kim f142009bb0 fix: add anti-duplication rules to junior default prompt
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-11 20:10:25 +09:00
YeonGyu-Kim e4fd29ac8b fix: prevent agents from duplicating delegated subagent work
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-11 17:42:42 +09:00
Winona Bryan d62a586be4 fix(momus): make keyTrigger specify file-path-only invocation requirement
The previous keyTrigger ('Work plan created → invoke Momus') was too
vague — Sisyphus would fire Momus on inline plans or todo lists,
causing Momus to REJECT because its input_extraction requires exactly
one .sisyphus/plans/*.md file path.

The updated trigger explicitly states:
- Momus should only be invoked when a plan file exists on disk
- The file path must be the sole prompt content
- Inline plans and todo lists should NOT trigger Momus
2026-03-11 02:13:21 -04:00
acamq 31d54b24a2 Merge pull request #2352 from rluisr/fix/register-sisyphus-junior-as-builtin-agent
fix: register sisyphus-junior as builtin agent
2026-03-10 09:39:34 -06:00
YeonGyu-Kim a2fd6d77bd docs: update all GitHub URLs from oh-my-opencode to oh-my-openagent
The GitHub repository was renamed from oh-my-opencode to oh-my-openagent,
but all documentation, scripts, and source code references still pointed
to the old repository name. This caused confusion for users who saw
'oh-my-opencode' in docs but a different repo name on GitHub.

Updated all references across:
- README files (en, ko, ja, zh-cn, ru)
- CONTRIBUTING.md
- docs/ (installation, overview, configuration, etc.)
- Source code (schema URLs, GitHub API calls, issue links)
- Test snapshots

The npm package name remains 'oh-my-opencode' (unchanged).

Fixes: https://x.com/Dhruv14588676/status/2031216617762468348
2026-03-10 15:18:16 +09:00
YeonGyu-Kim f1f682c3ab fix(agents): apply background agent result prompt update to all sisyphus variants
The prompt update from sisyphus.ts was not applied to the gpt-5-4 and
default variant files. This aligns all three sisyphus prompt variants
to use the updated background result handling guidance.
2026-03-09 13:10:57 +09:00
mrosnerr 2f06f2c3b9 fix(agents): prevent orchestrator from rushing ahead of background agents
Tighten Background Result Collection instructions so the model waits
for explore/librarian results instead of duplicating their work and
delivering premature answers.

- Remove 'Continue working immediately' which models interpreted as
  'do ALL work yourself, ignore agents'
- Clarify step 2: only do DIFFERENT independent work while waiting
- Add explicit step 3: end response when no other work remains
- Add 'not for files you already know' to explore section header

Fixes #2124, fixes #1967
2026-03-09 12:41:58 +09:00
YeonGyu-Kim 0aae45c95f Merge pull request #2396 from code-yeongyu/fix/lsp-directory-diagnostics-followup
fix(lsp): make directory diagnostics output actionable
2026-03-09 11:20:55 +09:00
YeonGyu-Kim 4517699d5e fix(atlas): clarify capped directory diagnostics guidance 2026-03-09 11:09:13 +09:00
acamq 59e468db34 Merge pull request #2391 from acamq/feature/lsp-directories
feat(lsp): add directory support to lsp_diagnostics via extension param
2026-03-08 19:51:39 -06:00
acamq f10500f97b Merge remote-tracking branch 'upstream/dev' into fix/toolcall-format 2026-03-08 17:02:21 -06:00
acamq 858b10df6f feat(lsp): add directory support to lsp_diagnostics via extension param
- Add isDirectoryPath helper to lsp-client-wrapper.ts
- Create directory-diagnostics.ts with aggregateDiagnosticsForDirectory
- Update diagnostics-tool.ts with extension parameter for directory paths
- Update Atlas agent prompts to use extension param for directory diagnostics
- Add unit tests for isDirectoryPath and aggregateDiagnosticsForDirectory

Fixes #2362
2026-03-07 13:05:58 -07:00
YeonGyu-Kim 60bc9a7609 feat(model-requirements): add k2p5, kimi-k2.5, gpt-5.4 medium to Sisyphus fallback chain
Sisyphus can now fall back through Kimi and OpenAI models when Claude
is unavailable, enabling OpenAI-only users to use Sisyphus directly
instead of being redirected to Hephaestus.

Runtime chain: claude-opus-4-6 max → k2p5 → kimi-k2.5 → gpt-5.4 medium → glm-5 → big-pickle
CLI chain: claude-opus-4-6 max → k2p5 → gpt-5.4 medium → glm-5
2026-03-08 01:41:45 +09:00
YeonGyu-Kim bf8d0ffcc0 fix(atlas): enforce checkbox completion before next task
🤖 GENERATED WITH ASSISTANCE OF [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode)
2026-03-08 01:41:45 +09:00
rluisr 2594a1c5aa fix: register sisyphus-junior as builtin agent across type system and model fallback
Sisyphus-Junior was missing from BuiltinAgentName type, agentSources map,
barrel exports, and AGENT_MODEL_REQUIREMENTS. This caused type inconsistencies
and prevented model-fallback hooks from working for sisyphus-junior sessions.

Closes code-yeongyu/oh-my-openagent#1697
2026-03-07 16:45:32 +09:00
acamq f5f996983e Merge pull request #2252 from acamq/fix/librarian-exa-name
fix: correct librarian agent tool name from websearch_exa_web_search_exa to websearch_web_search_exa
2026-03-06 22:11:42 -07:00
YeonGyu-Kim fade6740ae chore: update GPT-5.2 references to GPT-5.4
Align runtime defaults, tests, docs, and generated artifacts with the newer GPT-5.4 baseline. Keep think-mode and prompt-routing expectations consistent after the model version bump.
2026-03-07 05:46:05 +09:00
YeonGyu-Kim d08bc04e67 feat(sisyphus): strengthen non-Claude parallel delegation guidance
🤖 Generated with assistance of [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode)
2026-03-07 00:47:55 +09:00
YeonGyu-Kim fa460469f0 feat(sisyphus): rewrite GPT-5.4 prompt with 8-block architecture
Restructure from 13 scattered XML blocks to 8 dense blocks with 9
named sub-anchors, following OpenAI GPT-5.4 prompting guidance and
Oracle-reviewed context preservation strategy.

Key changes:
- Merge think_first + intent_gate + autonomy into unified <intent>
  with domain_guess classification and <ask_gate> sub-anchor
- Add <execution_loop> as central workflow: EXPLORE -> PLAN -> ROUTE ->
  EXECUTE_OR_SUPERVISE -> VERIFY -> RETRY -> DONE
- Add mandatory manual QA in <verification_loop> (conditional on
  runnable behavior)
- Move <constraints> to position #2 for GPT-5.4 attention pattern
- Add <completeness_contract> as explicit loop exit gate
- Add <output_contract> and <verbosity_controls> per GPT-5.4 guidance
- Add domain_guess (provisional) in intent, finalized in ROUTE after
  exploration -- visual domain always routes to visual-engineering
- Preserve all named sub-anchors: ask_gate, tool_persistence,
  parallel_tools, tool_method, dependency_checks, verification_loop,
  failure_recovery, completeness_contract
- Add skill loading emphasis at intent/route/delegation layers
- Rename EXECUTE to EXECUTE_OR_SUPERVISE to preserve orchestrator
  identity with non-execution exits (answer/ask/challenge)
2026-03-07 00:43:01 +09:00
YeonGyu-Kim 2e7b7c1f55 feat(prompts): enforce category domain matching and design-system-first workflow
Remove deep parallel delegation section from GPT-5.4 Sisyphus prompt since
it encouraged direct implementation over orchestration. Add zero-tolerance
category domain matching guide to all Sisyphus prompts with visual-engineering
examples. Rewrite visual-engineering category prompt with 4-phase mandatory
workflow (analyze design system, create if missing, build with system, verify)
targeting Gemini's tendency to skip foundational steps.
2026-03-06 22:19:18 +09:00
YeonGyu-Kim c3f2198d34 feat(gpt-5.4): amplify parallel tool-calling with XML behavioral contracts
Add <parallel_tool_calling> and <tool_usage_rules> blocks that GPT-5.4
treats as first-class behavioral contracts. Add parallel-planning question
to <think_first>, strengthen Exploratory route in intent gate, and add
IN PARALLEL annotations to verification loop.
2026-03-06 21:09:30 +09: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 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 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 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
SwiggitySwerve d66b6bcbf7 fix(prometheus): complete OpenSpec command reference, fix Gemini self-containment, strengthen tests 2026-03-04 18:45:01 -07:00
SwiggitySwerve 69f4fed006 fix(prometheus): remove BMAD active detection, add missing spec-awareness tests 2026-03-04 18:08:17 -07:00
SwiggitySwerve 8ff412327d feat(prometheus): add spec-driven development framework awareness 2026-03-04 17:59:23 -07:00
Stranmor 3eb97110c6 feat: support file:// URIs in agent prompt field 2026-03-03 03:32:07 +03:00
acamq c69344686c fix: correct librarian agent tool name from websearch_exa_web_search_exa to websearch_web_search_exa
The librarian agent's system prompt contained incorrect example function
names for the Exa web search tool, causing the agent to call a non-existent
tool 'websearch_exa_web_search_exa' instead of the correct
'websearch_web_search_exa'.

Fixes #2242
2026-03-02 09:17:43 -07:00
acamq 6a5d094b03 Merge branch 'code-yeongyu:dev' into fix/toolcall-format 2026-03-02 08:41:37 -07: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
acamq 34eff610f5 merge: upstream/dev into fix/toolcall-format
Resolved conflict in dynamic-agent-prompt-builder.ts by keeping both
buildToolCallFormatSection() and buildNonClaudePlannerSection() functions.
2026-03-02 07:48:46 -07: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
YeonGyu-Kim 74f7992442 feat(agents): add Gemini tool guide and few-shot examples to system prompt
Embed tool usage guide (per-tool parallel/sequential signals) and 5 concrete tool-calling examples directly in Gemini system prompt. Modeled after Antigravity's inline schema approach to improve Gemini tool-call quality.

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

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-02-28 13:21:40 +09:00
YeonGyu-Kim 13d689cb3a feat(agents): add Plan Agent dependency and strengthen Deep Parallel Delegation for non-Claude models
Non-Claude models skip planning and under-parallelize. Two new sections
injected only when model is not Claude:

- Plan Agent Dependency: multi-step tasks MUST consult Plan Agent first,
  use session_id for follow-ups, ask aggressively when ambiguous
- Deep Parallel Delegation (rewrite): explicit '4 units = 4 agents'
  pattern, each with clear GOAL + success criteria, all run_in_background
2026-02-28 13:21:40 +09:00
YeonGyu-Kim 4740515f2f fix(agents): replace active polling with notification-based waiting for background tasks
Sisyphus prompt instructed 'your next action is background_output' which
caused agents to repeatedly poll running tasks instead of ending their
response and waiting for the system notification.

- Replace 'STOP all other output' with 'end your response' (actionable)
- Add system-reminder notification mechanism explanation
- Add explicit 'Do NOT poll' prohibition
- Reduce background_cancel(all=true) mentions from 5x to 1x (Hard Blocks)
- Reduce Oracle collect obligation from 4x to 2x
- Remove motivational fluff ('blind spots', 'normal and expected')

Net: -2 lines, clearer mechanism, eliminates polling loop root cause.
2026-02-28 12:04:18 +09:00