YeonGyu-Kim
aaa54858a3
fix(background-agent): extend default no-progress stale timeout to 30 minutes
...
Give never-updated background tasks a longer default window and keep the default-threshold regression coverage aligned with that behavior.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-12 01:14:35 +09:00
YeonGyu-Kim
7dddf99d9a
Merge pull request #2470 from code-yeongyu/fix/terminal-task-retention-ttl
...
fix(background-agent): add TTL for terminal task retention
2026-03-11 21:57:33 +09:00
YeonGyu-Kim
4956280042
Merge pull request #2467 from code-yeongyu/fix/spawn-sdk-error-fail-closed
...
fix(background-agent): handle SDK error response in spawn lineage lookup
2026-03-11 21:57:30 +09:00
YeonGyu-Kim
0d9f001c11
fix(background-agent): add TTL for terminal task retention to prevent unbounded growth
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 21:52:48 +09:00
YeonGyu-Kim
cc1c23032f
fix(background-agent): handle SDK error response in spawn limit lineage lookup
...
- Check response.error and !response.data after session.get() to fail closed
- Prevents unlimited spawning when SDK returns non-throwing error responses
- Added regression tests for SDK error and missing data scenarios
2026-03-11 21:45:40 +09:00
YeonGyu-Kim
599ce0c283
fix(tmux): strict integer parsing and isActive validation in pane-state-parser
...
- parseInteger() now rejects malformed input like '120oops' using /^\d+$/ regex
- New parseActiveValue() validates active flag is exactly '0' or '1'
- Added regression tests for malformed integers, negative values, empty fields, non-binary active flags
2026-03-11 21:45:30 +09:00
YeonGyu-Kim
4b5c47172d
Merge pull request #2449 from code-yeongyu/fix/issue-2330-v2
...
fix(background-agent): cap recursive subagent spawning
2026-03-11 21:00:34 +09:00
YeonGyu-Kim
594233183b
fix(background-agent): fail closed on spawn lineage lookup errors
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 20:57:09 +09:00
YeonGyu-Kim
e3b17da4bd
fix(background-agent): preserve terminal tasks until notification cleanup
...
Route terminal task cleanup through parent notifications so cancelled and errored tasks stay visible until delayed cleanup finishes.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 20:50:49 +09:00
YeonGyu-Kim
8c5f9b8082
fix(background-agent): skip terminal tasks during stale pruning
...
Prevent TTL pruning from deleting terminal tasks before delayed notification cleanup runs.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 20:50:49 +09:00
YeonGyu-Kim
a179ebe0b9
Count sync subagent spawns against descendant limits
2026-03-11 20:50:11 +09:00
YeonGyu-Kim
4a39c83eb5
Limit recursive subagent spawning
2026-03-11 20:50:10 +09:00
YeonGyu-Kim
899d265cbf
fix(tmux): add barrel export for pane-state-parser and log parse failures
2026-03-11 20:36:57 +09:00
YeonGyu-Kim
3550305af8
Merge branch 'dev' into fix/issue-2232
2026-03-11 20:20:04 +09:00
YeonGyu-Kim
836ce97f07
Merge pull request #2453 from code-yeongyu/fix/issue-2241-v2
...
fix(tmux): handle single-pane pane-state parsing
2026-03-11 20:06:31 +09:00
YeonGyu-Kim
413e8b73b7
Add session permission support to background agents for denying questions
...
Implements question-denied session permission rules when creating child
sessions via background task delegation. This prevents subagents from
asking questions by passing explicit permission configuration during
session creation.
🤖 GENERATED WITH ASSISTANCE OF OhMyOpenCode
2026-03-11 19:42:46 +09:00
YeonGyu-Kim
d1e37a5079
Merge pull request #2333 from devxoul/feat/claude-model-mapper
...
feat(claude): map Claude Code model strings to OpenCode format when importing agents
2026-03-11 19:33:51 +09:00
YeonGyu-Kim
38ac3d095a
Merge pull request #2332 from devxoul/feat/git-master-env-prefix
...
feat(git-master): add GIT_MASTER=1 env prefix for all git commands
2026-03-11 19:33:50 +09:00
YeonGyu-Kim
e1b59e3d67
Use dedicated pane state parser
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 17:55:53 +09:00
YeonGyu-Kim
5168ae0f3b
Add pane state parser with test coverage
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-11 17:55:48 +09:00
YeonGyu-Kim
a70e7fe742
test(git-master): cover full git command prefix injection
2026-03-11 17:07:43 +09:00
YeonGyu-Kim
bf9721d4ee
fix(git-master): prefix git commands in injected templates
2026-03-11 17:07:33 +09:00
YeonGyu-Kim
c6ea3f4aff
map Claude Code model strings to OpenCode format with proper object structure
2026-03-11 17:07:23 +09:00
guazi04
309a3e48ec
fix(tmux): handle serverUrl throw getter from upstream opencode refactor
2026-03-10 15:45:44 +08: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
1120885fd0
fix(background-agent): release interrupted task slots during startup cleanup
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-09 12:36:49 +09:00
YeonGyu-Kim
85aa744c8a
fix(background-agent): clear toast tracking when tasks stop
...
🤖 Generated with assistance of [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode )
2026-03-09 11:39:04 +09:00
acamq
2e8f0835d8
Merge pull request #2306 from Romanok2805/fix/builtin-agent-mode-override
...
fix(agents): prevent user/project .md agents from overriding builtin agent modes
2026-03-08 18:57:59 -06:00
acamq
5713106526
Merge pull request #2284 from MoerAI/fix/tmux-list-panes-parsing
...
fix(tmux): handle \r line endings and missing pane_title in list-panes
2026-03-08 18:18:31 -06:00
YeonGyu-Kim
beb89faa0f
Merge pull request #2388 from code-yeongyu/fix/background-output-undefined-status-2387
...
fix: handle undefined sessionStatus in pollRunningTasks (#2387 )
2026-03-08 23:54:58 +09:00
YeonGyu-Kim
dc370f7fa8
fix: handle undefined sessionStatus in pollRunningTasks ( #2387 )
...
When a completed session is no longer returned by session.status(),
allStatuses[sessionID] is undefined. Previously this fell through to
a 'still running' log, leaving the task stuck as running forever.
Match the sync-session-poller pattern: only continue (skip completion
check) when sessionStatus EXISTS and is not idle. When undefined,
fall through to validateSessionHasOutput + checkSessionTodos +
tryCompleteTask, same as idle.
2026-03-08 23:42:11 +09:00
YeonGyu-Kim
2b5dec5333
fix(background-agent): use compaction-aware prompt context in manager
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-08 02:23:33 +09:00
YeonGyu-Kim
c789baf1d9
fix(background-agent): merge prompt context across compaction gaps
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-08 02:23:27 +09: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
898b628d3d
fix(ulw-loop): track Oracle verification sessions explicitly
...
🤖 GENERATED WITH ASSISTANCE OF [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode )
2026-03-06 22:37:41 +09:00
YeonGyu-Kim
a010de1db2
feat(ulw-loop): require Oracle verification before completion
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-03-06 22:00:14 +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
Jeon Suyeol
96b5811dc1
use Map for alias lookup to prevent prototype pollution, return undefined for non-Claude bare models
2026-03-06 12:16:34 +09:00
Jeon Suyeol
567f5075c3
handle Claude Code official model aliases (sonnet, opus, haiku, inherit)
2026-03-06 12:06:57 +09:00
Jeon Suyeol
5e25f55bc7
add anthropic/ provider prefix for claude models, preserve date suffixes, passthrough provider-prefixed models
2026-03-06 12:00:54 +09:00
Jeon Suyeol
77a2ab7bdf
map Claude Code model strings to OpenCode format when importing agents
2026-03-06 11:56:03 +09:00
Jeon Suyeol
6366c7ef6e
test(git-master): add tests for git_env_prefix injection
...
Add unit tests for env prefix injection (default, disabled, custom value) and update existing skill-content tests to include git_env_prefix field.
2026-03-06 11:35:59 +09:00
Jeon Suyeol
26c8d55b67
feat(git-master): add git_env_prefix config to prefix all git commands
...
When git-master skill is loaded, all git commands are prefixed with the configured env variable (default: GIT_MASTER=1). This enables custom git hooks to detect git-master skill usage. Set to empty string to disable.
2026-03-06 11:35:52 +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
Romanok
7f2188bd07
fix(agents): prevent user/project .md agents from overriding builtin agent modes
...
When users have .md agent files in ~/.claude/agents/ with the same names
as builtin agents (e.g. sisyphus.md, hephaestus.md, atlas.md),
loadAgentsFromDir() hardcodes mode: "subagent" for all loaded agents.
Because the config assembly spreads userAgents after builtinAgents:
config.agent = {
...builtinAgents, // sisyphus: mode="primary"
...userAgents, // sisyphus: mode="subagent" ← overrides
}
this causes all primary agents to become subagents. The TUI filters out
subagents, so only non-plugin agents (like "docs") appear in the agent
selector.
Fix:
- Filter out user/project agents that share names with builtin agents
before spreading into config.agent (both sisyphus-enabled and fallback
branches)
- Respect frontmatter `mode` field in .md agent files instead of
hardcoding "subagent"
- Add `mode` to AgentFrontmatter type
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-05 04:29:29 +05:00
MoerAI
e1952d35e6
fix(tmux): handle \r line endings and missing pane_title in list-panes
...
Strip \r characters from list-panes output to handle Windows-style line
endings. Also relax field count check from 9 to 8 to handle cases where
pane_title is empty or missing, which caused the parser to drop pane
rows and fail to determine the main pane in single-pane sessions.
Fixes #2241
2026-03-04 12:24:22 +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
1a9e7eb305
fix(hook-message-injector): add process-unique prefix to message/part IDs to prevent storage collisions
...
IDs now include a random 8-hex-char prefix per process (e.g. msg_a1b2c3d4_000001)
preventing collisions when counters reset across process restarts.
2026-03-02 15:20:31 +09:00
YeonGyu-Kim
acc21326c5
Merge pull request #2212 from code-yeongyu/fix/h5-collector-ordering
...
fix(context-injector): use monotonic registration order instead of timestamp for deterministic sorting
2026-02-28 13:40:20 +09:00
YeonGyu-Kim
e7503655b9
Merge pull request #2211 from code-yeongyu/fix/c2-hook-message-ids
...
fix(hook-message-injector): use monotonic counter for deterministic message/part IDs
2026-02-28 13:40:18 +09:00