1914 Commits

Author SHA1 Message Date
YeonGyu-Kim
bf87bf473f feat(agents): add GPT-5.2 optimized prompt for sisyphus-junior
Restructure sisyphus-junior agent to use model-specific prompts:
- GPT models: GPT-5.2 prompting guide principles (verbosity constraints,
  scope discipline, tool usage rules, explicit decision criteria)
- Claude models: Original prompt with extended reasoning context

Directory structure now mirrors atlas/ pattern for consistency.
2026-02-03 14:12:22 +09:00
YeonGyu-Kim
1a0cc424b3 feat(tasks-todowrite-disabler): improve error message with actionable workflow guidance 2026-02-03 14:11:27 +09:00
YeonGyu-Kim
671e320bf3 feat(agents): add useTaskSystem flag for conditional todo/task discipline prompts
- Sisyphus: buildTaskManagementSection() with todo/task variants
- Sisyphus-Junior: buildTodoDisciplineSection() with todo/task variants
- Hephaestus: buildTodoDisciplineSection() with todo/task variants
- All factory functions accept useTaskSystem parameter (default: false)
2026-02-03 13:58:56 +09:00
YeonGyu-Kim
dd120085c4 feat(agents): add Todo Discipline section to Hephaestus prompt 2026-02-03 13:52:03 +09:00
YeonGyu-Kim
9d217b05b8
fix(config-handler): preserve plan prompt when demoted (#1416) 2026-02-03 13:37:57 +09:00
YeonGyu-Kim
1b9303ba37
refactor(ultrawork): simplify workflow and apply parallel context gathering (#1412)
* refactor(ultrawork): simplify workflow to natural tool-like agent usage

Restore beta.16 style where explore/librarian agents feel like tools:
- Simplify delegate_task examples (agent=, background=true)
- Remove verbose DATA DEPENDENCIES explanation
- Condense EXECUTION RULES to action-oriented bullets
- Simplify WORKFLOW to 4 clear steps
- Remove procedural constraints that discouraged parallel exploration

The goal: agents fire background tasks AND continue direct exploration,
rather than waiting passively for background results.

* refactor(ultrawork/gpt5.2): apply two-track parallel context gathering

Based on GPT-5.2 Prompting Guide recommendations:
- 'Parallelize independent reads to reduce latency'
- Fire background agents (explore, librarian) for deep search
- Use direct tools (Grep, Read, LSP) simultaneously for quick wins
- Collect and merge ALL findings for comprehensive context

Pattern: background fire → direct exploration in parallel → collect → proceed

* fix: address Cubic review feedback

- Fix delegate_task parameter names in default.ts (agent → subagent_type, background → run_in_background)
- Add missing load_skills and run_in_background parameters to delegate_task examples
- Restore new_task_system_enabled property to schema and TypeScript config
- Fix tool names in gpt5.2.ts (Grep → grep, Read → read_file)

Identified by cubic (https://cubic.dev)
2026-02-03 12:13:22 +09:00
YeonGyu-Kim
ec1cb5db05
fix(prometheus): enforce path constraints and atomic write protocol (#1414)
* fix(prometheus): enforce path constraints and atomic write protocol

- Add FORBIDDEN PATHS section blocking docs/, plan/, plans/ directories
- Add SINGLE ATOMIC WRITE protocol to prevent content loss from multiple writes
- Simplify PROMETHEUS_AGENTS array to single PROMETHEUS_AGENT string

* fix: reconcile Edit tool signature in interview-mode.ts with identity-constraints.ts

Identified by cubic: Edit tool usage was inconsistent between files.

- interview-mode.ts showed: Edit(path, content)
- identity-constraints.ts showed: Edit(path, oldString="...", newString="...")

Updated interview-mode.ts to use the correct Edit signature with oldString and newString parameters to match the actual tool API and prevent agent hallucination.
2026-02-03 12:11:52 +09:00
YeonGyu-Kim
7ebafe2267
refactor(config-handler): separate plan prompt into dedicated configuration (#1413)
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-02-03 12:11:49 +09:00
YeonGyu-Kim
e36dde6e64
refactor(background-agent): optimize lifecycle and simplify tools (#1411)
* refactor(background-agent): optimize cache timer lifecycle and result handling

Ultraworked with Sisyphus

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>

* refactor(background-task): simplify tool implementation and expand test coverage

Ultraworked with Sisyphus

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>

* fix(background-task): fix BackgroundCancel tool parameter handling

Correct parameter names and types in BackgroundCancel tool to match actual usage patterns. Add comprehensive test coverage for parameter validation.

---------

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-02-03 12:11:45 +09:00
YeonGyu-Kim
b62519b401
feat(agents): respect uiSelectedModel in Atlas model resolution (#1410)
Atlas now respects uiSelectedModel when resolving model in createBuiltinAgents. Added test coverage for this behavior.
2026-02-03 12:11:42 +09:00
YeonGyu-Kim
dea13a37a6
feat(task-system): add experimental task system with Claude Code spec alignment (#1415)
* feat(hooks): add tasks-todowrite-disabler hook to block TodoRead/TodoWrite

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

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>

* feat(task-tools): add parallel execution guidance to descriptions

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

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>

* refactor(index): migrate task system to experimental.task_system flag

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

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>

* docs: update AGENTS.md for experimental task system

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

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>

* fix(task-tests): align test field names with Claude Code spec (subject, blockedBy, addBlockedBy)

* fix: address Cubic review feedback

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

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>

* fix: add optional chaining for tasksTodowriteDisabler null check

---------

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-02-03 12:11:23 +09:00
YeonGyu-Kim
1e587c55dc docs(AGENTS): add critical sections for PR workflow and OpenCode source reference
- Emphasize PR target branch rule with NEVER DELETE warning
- Add git workflow diagram (master <- dev <- feature branches)
- Add OpenCode source code reference section for plugin development
- Emphasize librarian agent usage for plugin-related tasks
2026-02-03 11:05:45 +09:00
YeonGyu-Kim
db787b7347 refactor(oracle): optimize prompt for GPT-5.2 with XML structure and verbosity constraints
- Restructure prompt with XML tags for better instruction adherence
- Add output_verbosity_spec with concrete limits (≤7 steps, ≤3 sentences)
- Add uncertainty_and_ambiguity section with decision tree
- Add scope_discipline to prevent scope drift
- Add tool_usage_rules for efficient tool calling
- Add high_risk_self_check for architecture/security answers
- Add long_context_handling for large code inputs
- Update context to support session continuation follow-ups
2026-02-03 11:03:41 +09:00
YeonGyu-Kim
ac9e22cce5 fix(prompts): add missing run_in_background and load_skills params to examples
All delegate_task examples now include required parameters to prevent
model confusion about parameter omission.

Fixes #1403
2026-02-03 10:50:26 +09:00
YeonGyu-Kim
8441f70c2b
fix(delegate-task): honor sisyphus-junior model override precedence (#1404) 2026-02-03 10:41:26 +09:00
YeonGyu-Kim
7226836472 atlas reminder reinforce 2026-02-03 10:31:34 +09:00
github-actions[bot]
0f81d4c126
@dan-myles has signed the CLA in code-yeongyu/oh-my-opencode#1399 2026-02-02 16:59:02 +00:00
YeonGyu-Kim
62e1687474 feat: add agent fallback and preemptive-compaction restoration
- Add agent visibility fallback for first-run scenarios
- Restore preemptive-compaction hook
- Update migration and schema for preemptive-compaction restoration
2026-02-02 22:40:59 +09:00
YeonGyu-Kim
99ee4a0251 docs: update AGENTS.md with explore agent model change (grok-code-fast-1) 2026-02-02 21:19:21 +09:00
YeonGyu-Kim
d80adac3fc feat(agents): add grok-code-fast-1 as primary model for explore agent 2026-02-02 21:13:45 +09:00
YeonGyu-Kim
159fccddcf refactor(background-agent): optimize cache timer lifecycle and result handling
Improve cache timer management in background agent manager and update result handler to properly handle cache state transitions
2026-02-02 21:07:20 +09:00
YeonGyu-Kim
9f84da1d35 feat(skills): set triage category ratio to 1:2:1 (unspecified-low:writing:quick) 2026-02-02 21:07:20 +09:00
YeonGyu-Kim
8e17819ffb feat(skills): add streaming mode and todo tracking to triage skills
- Convert github-pr-triage to streaming architecture (process PRs one-by-one with immediate reporting)
- Convert github-issue-triage to streaming architecture (process issues one-by-one with real-time updates)
- Add mandatory initial todo registration for both triage skills
- Add phase-by-phase todo status updates
- Generate final comprehensive report at the end
- Show live progress every 5 items during processing
2026-02-02 21:07:20 +09:00
YeonGyu-Kim
b01e246958 docs(issue-templates): add AI agent consultation to prerequisite checklist 2026-02-02 21:07:20 +09:00
YeonGyu-Kim
2e0d0c989b refactor(agents): restructure atlas agent into modular directory with model-based routing
Split monolithic atlas.ts into modular structure: index.ts (routing), default.ts (Claude-optimized), gpt.ts (GPT-optimized), utils.ts (shared utilities). Atlas now routes to appropriate prompt based on model type instead of overriding model settings.

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

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-02-02 21:07:20 +09:00
YeonGyu-Kim
5c68ae3bee
fix: honor agent variant overrides (#1394)
* fix(shared): honor agent variant overrides

* test(shared): use model in fallback chain to verify override precedence

Address PR review: test now uses claude-opus-4-5 (which has default
variant 'max' in sisyphus chain) to properly verify that agent override
'high' takes precedence over the fallback chain's default variant.
2026-02-02 21:07:10 +09:00
ismeth
527c21ea90 fix(tools): for overridden tools (glob, grep) path should use ctx.directory. OpenCode Desktop might not send path as a param and cwd might resolve to "/" 2026-02-02 11:34:33 +01:00
github-actions[bot]
d165a6821d
@pierrecorsini has signed the CLA in code-yeongyu/oh-my-opencode#1386 2026-02-02 07:59:23 +00:00
YeonGyu-Kim
76623454de test(task): improve todo-sync tests with bun-types and inline assertions
🤖 Generated with assistance of OhMyOpenCode (https://github.com/code-yeongyu/oh-my-opencode)
2026-02-02 16:50:13 +09:00
BoGuan
f68a6f7d1b
fix: remove redundant removeCodeBlocks call
Remove duplicate removeCodeBlocks() call in keyword-detector/index.ts.

The detectKeywordsWithType() function already calls removeCodeBlocks() internally, so calling it before passing the text was redundant and caused unnecessary double processing.
2026-02-02 15:18:25 +08:00
konaespresso94
8a5b131c7f chore: tracking merge origin/dev 2026-02-02 15:56:00 +09:00
Suyeol Jeon
ce62da92c6 fix: remove broken TOC links pointing to non-existent sections 2026-02-02 15:16:55 +09:00
YeonGyu-Kim
0ea92124a7 feat(task): add real-time single-task todo sync via OpenCode API
- Add syncTaskTodoUpdate function for immediate todo updates
- Integrate with TaskCreate and TaskUpdate tools
- Preserve existing todos when updating single task
- Add comprehensive tests for new sync function

🤖 Generated with [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode)
2026-02-02 15:05:07 +09:00
YeonGyu-Kim
418cf35886 format: apply prettier to index.ts
🤖 Generated with [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode)
2026-02-02 15:04:53 +09:00
YeonGyu-Kim
e969ca5573 refactor(prometheus): replace binary verification with layered agent-executed QA
Restructure verification strategy from binary (TDD xor manual) to layered
(TDD AND/OR agent QA). Elevate zero-human-intervention as universal principle,
require per-scenario ultra-detailed QA format with named scenarios, negative
cases, and evidence capture. Remove ambiguous 'manual QA' terminology.
2026-02-02 14:18:01 +09:00
YeonGyu-Kim
92639ca38f feat(task): refactor to Claude Code style individual tools
- Split unified Task tool into individual tools (TaskCreate, TaskGet, TaskList, TaskUpdate)
- Update schema to Claude Code field names (subject, blockedBy, blocks, activeForm, owner, metadata)
- Add OpenCode Todo API sync layer (todo-sync.ts)
- Implement Todo sync on task create/update for continuation enforcement
- Add comprehensive tests for all tools (96 tests total)
- Update AGENTS.md documentation

Breaking Changes:
- Field names changed: title→subject, dependsOn→blockedBy, open→pending
- Tool names changed: task→task_create, task_get, task_list, task_update

Closes: todo-continuation-enforcer now sees Task-created items
2026-02-02 13:13:06 +09:00
YeonGyu-Kim
6288251a67 refactor(task): update schema to Claude Code field names (subject, blockedBy, blocks, etc.) 2026-02-02 13:13:06 +09:00
YeonGyu-Kim
961ce19415 feat(cli): deny Question tool in CLI run mode
In CLI run mode there is no TUI to answer questions, so the Question
tool would hang forever. This sets OPENCODE_CLI_RUN_MODE env var in
runner.ts and config-handler uses it to set question permission to
deny for sisyphus, hephaestus, and prometheus agents.
2026-02-02 13:13:06 +09:00
YeonGyu-Kim
b71fe66a7e feat(task): implement TaskUpdate tool with additive blocks/blockedBy and metadata merge 2026-02-02 13:13:06 +09:00
YeonGyu-Kim
874d51a9f4 test(cli): add default agent resolution tests
Add unit tests for resolveRunAgent() covering:
- CLI flag takes priority over env and config
- Env var takes priority over config
- Config takes priority over default
- Falls back to sisyphus when none set
- Skips disabled agent and picks next available core agent
2026-02-02 13:13:06 +09:00
YeonGyu-Kim
dd3f93d3e7 docs(cli): improve run command help with agent options
Update --help text for 'run' command to document:
- Agent resolution priority order
- OPENCODE_DEFAULT_AGENT environment variable
- oh-my-opencode.json 'default_run_agent' config option
- Available core agents (Sisyphus, Hephaestus, Prometheus, Atlas)
2026-02-02 13:13:06 +09:00
YeonGyu-Kim
a7a847eb9e feat(cli): implement default agent priority in run command
Add resolveRunAgent() to determine agent with priority:
  1. CLI --agent flag (highest)
  2. OPENCODE_DEFAULT_AGENT environment variable
  3. oh-my-opencode.json 'default_run_agent' config
  4. 'sisyphus' (fallback)

Features:
- Case-insensitive agent name matching
- Warn and fallback when requested agent is disabled
- Pick next available core agent when default is disabled
2026-02-02 13:13:06 +09:00
YeonGyu-Kim
9c2c8b4dd0 feat(config): add default_run_agent schema option
Add optional 'default_run_agent' field to OhMyOpenCodeConfig schema.
This field allows users to configure the default agent for the 'run' command
via oh-my-opencode.json configuration file.

- Add Zod schema: z.string().optional()
- Regenerate JSON schema for IDE support
2026-02-02 13:13:06 +09:00
YeonGyu-Kim
8927847336 feat(skills): add github-pr-triage skill and update github-issue-triage
- Add github-pr-triage skill with conservative auto-close logic
- Update github-issue-triage ratio to 7:2:1 (unspecified-low:quick:writing)
- Add gh_fetch.py script for exhaustive GitHub pagination (issues/PRs)
- Script bundled in both skills + available standalone in uvscripts/
2026-02-02 13:13:06 +09:00
github-actions[bot]
08889b889a
@gburch has signed the CLA in code-yeongyu/oh-my-opencode#1382 2026-02-02 03:02:57 +00:00
YeonGyu-Kim
abc448b137 feat(config): disable todowrite/todoread tools when new_task_system_enabled 2026-02-02 10:25:31 +09:00
github-actions[bot]
523ef0d218
@YanzheL has signed the CLA in code-yeongyu/oh-my-opencode#1371 2026-02-01 19:52:05 +00:00
YeonGyu-Kim
134dc7687e fix(task-tool): add task ID validation and improve lock acquisition safety
- Add task ID pattern validation (T-[A-Za-z0-9-]+) to prevent path traversal
- Refactor lock mechanism to use UUID-based IDs for reliable ownership tracking
- Implement atomic lock creation with stale lock detection and cleanup
- Add lock acquisition checks in create/update/delete handlers
- Expand task-reminder hook to track split tool names and clean up on session deletion
- Add comprehensive test coverage for validation and lock handling
2026-02-01 23:50:34 +09:00
github-actions[bot]
914a480136
@code-yeongyu has signed the CLA in code-yeongyu/oh-my-opencode#1029 2026-02-01 14:46:24 +00:00
github-actions[bot]
9293cb529a
@code-yeongyu has signed the CLA in code-yeongyu/oh-my-opencode#580 2026-02-01 14:38:00 +00:00