github code-yeongyu/oh-my-openagent v3.17.0

5 hours ago

Minor Compatibility and Stability Release

This release carries compatibility-facing behavior changes and operational hardening. Read the summary below before upgrading or publishing.

  • Rename transition updates across package detection, plugin/config compatibility, and install surfaces.
  • Task and tool behavior updates, including delegate-task contract and runtime registration behavior.
  • Task-system default behavior alignment so omitted configuration behaves consistently across runtime paths.
  • Install and publish workflow hardening, including safer release sequencing and package/install fixes.

Commit Summary

  • f5dc1c0 refactor(event): simplify tmux config check to direct property access
  • db5beef test(telemetry): improve mock isolation for runner and index tests
  • 0c93ce6 refactor(tool-config): use getAgentListDisplayName for consistent naming
  • e14a25b test(config): use getAgentListDisplayName in config handler tests
  • 15c8d46 refactor(command-config): use getAgentListDisplayName for consistent naming
  • ce53b4c refactor(agent-priority): use getAgentListDisplayName for ordering
  • 79b4b0a refactor(agent-key): use getAgentListDisplayName for consistent key remapping
  • 3b092c2 refactor(agent-config): use getAgentListDisplayName for consistent naming
  • cfc3f33 feat(agent): add getAgentListDisplayName utility for OpenCode list ordering
  • 84f29e3 Merge pull request #3340 from code-yeongyu/fix/stop-continuation-chat-message-fallback
  • c9461a9 fix(stop-continuation): scope start-work clearing to fallback template
  • d62e3ea Merge pull request #3342 from code-yeongyu/fix/migration-sidecar-transaction-order
  • 6ba8b73 Merge pull request #3341 from code-yeongyu/fix/telemetry-crash-isolation
  • 6f21e74 fix(migration): write config before sidecar updates
  • 41b375a chore(lockfile): refresh Bun dependency resolution
  • 8bc27da test(install): restore Bun mocks after installer tests
  • e2f304f fix(telemetry): validate activity state shape
  • acb0f6b fix(install): isolate installer telemetry failures
  • 2510870 fix(run): isolate CLI telemetry failures
  • c09ee32 fix(telemetry): isolate plugin telemetry failures
  • 9287abe fix(stop-continuation): clear chat.message fallback stop state before work resumes
  • e4bb60b Merge pull request #3339 from Qiiks/fix/shell-detection-shell-before-psmodulepath
  • a442976 Fix invisible characters in agent names
  • bbec188 @Qiiks has signed the CLA in #3339
  • f5a9520 fix(shell-env): check SHELL before PSModulePath for shell detection
  • 044e1f5 fix(agents): restore ZWSP runtime names in name field for OpenCode sort ordering
  • 111dcd1 fix(agents): backfill ZWSP runtime names for agents missing name field
  • 9f135af fix: unify agent display names and strip invisible sort prefixes
  • c30b058 fix(agents): use runtime names for default_agent to match ordered agent list
  • 630f5b7 docs(telemetry): add legal documents and user-facing telemetry documentation
  • 365900b feat(telemetry): add install command events and user-facing telemetry notice
  • 1c27000 feat(telemetry): instrument CLI run command with lifecycle events
  • 4e80a1b feat(telemetry): add plugin_loaded event for entry tracking
  • 280a8a3 feat(telemetry): add PostHog client factory with activity state tracking
  • 146be96 Merge pull request #3328 from code-yeongyu/fix/effort-hook-small-model-3308
  • 522f8aa fix: move Haiku check before variant check for reliability
  • e2c2c5b Merge pull request #3329 from code-yeongyu/fix/permanent-agent-ordering
  • b3e5d7d docs(agents): document permanent agent ordering policy
  • 7c154c6 fix(anthropic-effort): skip effort injection for Haiku models (#3308)
  • 5c60d27 fix(agents): enforce permanent canonical agent ordering with regression tests
  • 29c27ad @rlavkvmflzk has signed the CLA in #3321
  • 5de60d3 @Hybirdss has signed the CLA in #3318
  • 86e5113 @idoall has signed the CLA in #3317
  • b7ca40f fix(openclaw): skip session.created dispatch for subagent sessions
  • 2178f5e fix(stop-continuation): clear stop state for native work-starting commands
  • 745b59a fix(migration): preserve _migrations in config when sidecar write fails
  • 3e3e623 fix(agents): re-apply GPT apply_patch deny after config override merge
  • d7a3077 Merge pull request #3309 from code-yeongyu/fix/pre-publish-blocking-issues
  • 5493ae2 fix(migration): persist fullMigrationSet in-config when sidecar write fails
  • 6ec9a2b fix(openclaw): skip session.created dispatch for subagent sessions
  • de15657 fix(stop-continuation): clear stop state for native work-starting commands
  • 9532440 fix(plugin-handlers): remove ZWSP prefixes from API-facing agent paths
  • 68c8701 fix(migration): preserve _migrations in config when sidecar write fails
  • 10371d5 fix(agents): re-apply GPT apply_patch deny after config override merge
  • e54f747 fix(tests): replace as any with typed PluginInput mocks
  • bf5d1c5 @wouter-intveld has signed the CLA in #3306
  • e7f5d0d test(shared): update shared utility tests
  • 37057f1 test(tools): update MCP, delegate-task, skill, and slashcommand tests
  • ca9b5fd test(hooks): update claude-code, comment-checker, and rules-injector tests
  • 8a4eacf test(hooks): update multiple hook test suites
  • 4180a0b test(features): update background agent, MCP loader, and tmux tests
  • 12c9db7 test(cli): update all CLI command tests
  • 12a96ee test(agents): update agent utility and builtin agent tests
  • 77af6c6 test(plugin-handlers): update all plugin handler tests
  • c21c363 test(plugin): update plugin config and registry tests
  • fa1b465 test(core): update main test setup and core tests
  • 0e74f5a fix(hooks): improve comment checker CLI runner
  • 08c4757 fix(hooks): improve auto update checker
  • c9aedbc fix(cli): improve doctor system check
  • 655a39b chore(deps): add posthog-node dependency
  • d4ce034 fix(plugin-handlers): simplify tool config handler
  • fba3e1b fix(tools): improve delegate task constants and sync handling
  • 111cf6d fix(hooks): improve session last agent tracking
  • 25abda6 fix(hooks): improve image resizer implementation
  • 5a762ba fix(hooks): improve rules injector implementation
  • bd910ad fix(shared): improve compaction marker and tmux server health
  • 7244d04 feat(session-manager): implement session management tools
  • 1a090af feat(tools): add tools for session manager and skill refresh
  • 150dd1c feat(plugin): add PostHog tracking to plugin initialization
  • 785d6e2 feat(cli): add PostHog tracking and improve runner hooks
  • e9b3ef0 feat(skill-mcp-manager): improve connection handling and client implementations
  • 046ab10 feat(analytics): add PostHog analytics module
  • 3fe5f0a feat(testing): add module mock lifecycle utilities
  • b60b2bc plugin: stop false provider cache warning
  • c173fa8 delegate-task: block prometheus task delegation
  • e86b4f4 fix(keyword-detector): stop starting ralph loop for ulw
  • 30f4f06 test(chat-message): cover plain ulw without loop start
  • 959229d test(keyword-detector): add plain ulw no-loop regressions
  • 33ac57b refactor: update remaining modules to use plugin-identity constants
  • 41b9b4d refactor(doctor): use plugin-identity constants for package names
  • 58a981e fix(cli): use published package name in installer help text
  • 6bde5e6 feat(doctor): support both package names in version detection
  • 87ddb9b feat(cli): integrate legacy config migration into write-omo-config
  • 5000d1e feat(plugin-identity): add config basename constants for migration
  • d00a6bb fix(keyword-detector): always trigger ultrawork keywords
  • f36231a fix(keyword-detector): trigger ulw shorthand anywhere
  • 5f90b23 fix(keyword-detector): restore ulw trigger after greeting prefixes
  • 2083cb0 feat(agents): add centralized GPT apply_patch permission guard
  • 498d021 @zhoufanscut has signed the CLA in #3292
  • 5535750 @revelri has signed the CLA in #3287
  • 6df597c Merge pull request #3279 from code-yeongyu/fix/stop-continuation-persistence
  • ab515b7 fix(stop-continuation): persist stop state across user messages (#3276)
  • 69f47a9 feat(keyword-detector): handle ultrawork keyword after greeting patterns
  • 58be691 docs: update AGENTS.md hierarchy with openclaw, runtime-fallback, skill-mcp-manager
  • dc7a468 Merge pull request #3268 from code-yeongyu/fix/ci-flake-model-resolution-pipeline
  • 7a1f121 fix(ci): isolate model-resolution-pipeline test to prevent mock contamination
  • d17b78a @ayixiayi has signed the CLA in #3267
  • 4f88e0f fix(agents): restore canonical core agent ordering
  • 132a994 Merge pull request #3206 from Momentum96/fix/openclaw-reply-listener
  • 55a57a8 Merge pull request #3265 from code-yeongyu/revert/3260-restore-zwsp-sort-prefixes
  • ade5747 fix(merge): resolve dev conflicts for openclaw branch
  • 0d5b087 Revert "Merge pull request #3260 from code-yeongyu/fix/remove-zwsp-sort-prefixes"
  • e5189f2 fix(test): wait for async skill description refresh
  • 49d29c5 fix(test): reset session manager storage in registry tests
  • 6aab2f7 fix(schema): use zod native json schema output
  • 687e7bb fix(test): align zombie pane tmux mocks
  • f82cc81 fix(ci): isolate discord reply listener test
  • ef95a99 @gwegwe1234 has signed the CLA in #3264
  • 99a6d50 Merge pull request #3197 from code-yeongyu/fix/delegate-task-depth-guard
  • 524e0f6 Merge pull request #3170 from code-yeongyu/fix/gpt-apply-patch
  • e0ed5dd Merge pull request #3200 from code-yeongyu/fix/doctor-custom-providers
  • 21127b0 Merge remote-tracking branch 'origin/dev' into fix/gpt-apply-patch-rebased
  • 545c444 Merge remote-tracking branch 'origin/dev' into fix/delegate-task-depth-guard-rebased
  • defe4e5 Merge remote-tracking branch 'origin/dev' into fix/doctor-custom-providers-rebased
  • 57ebb11 Merge pull request #3262 from code-yeongyu/fix/migration-sidecar
  • 00a4f31 fix(migration): track applied migrations in sidecar so user reverts stick
  • 3eb36a1 @NikkeTryHard has signed the CLA in #3261
  • c3be4c2 Merge pull request #3260 from code-yeongyu/fix/remove-zwsp-sort-prefixes
  • 8b418ea fix(agents): remove ZWSP sort prefixes from display name helper (#3259)
  • d2bb5d5 Merge pull request #3258 from code-yeongyu/fix/auto-update-openagent-name-match
  • 4344a41 fix(auto-update): resolve cached version when installed as oh-my-openagent (#3257)
  • fcac67d @sen7971 has signed the CLA in #3248
  • af6df87 Merge pull request #3243 from code-yeongyu/fix/ci-flaky-isolation
  • 6943b6d fix(ci): isolate model-resolver and prometheus-config tests from mock.module contamination
  • dfcd813 Merge pull request #3242 from code-yeongyu/fix/zwsp-api-leak
  • 47283f9 fix(agents): remove ZWSP prefixes from config.agent keys (#3238)
  • ed62f82 Merge pull request #3236 from code-yeongyu/fix/compaction-failure-toast
  • 1ea0ee4 fix(preemptive-compaction): notify user on failure and reduce timeout
  • 686f903 @FrancoStino has signed the CLA in #3234
  • 3f5dfd8 fix(test): isolate openclaw bootstrap mocks
  • 21ab1a6 fix(plugin): dispatch openclaw lifecycle events from handlers
  • 9491bed fix(tmux): expose tracked pane ids for openclaw routing
  • 20ee955 fix(openclaw): stop stale listeners during initialization
  • ed4617e fix(openclaw): stabilize reply polling and tmux injection
  • 92b59b1 fix(openclaw): harden reply listener process lifecycle
  • 6c2bed2 fix(openclaw): split reply listener state and startup flow
  • efde63f fix(openclaw): register reply correlation from runtime dispatch
  • 4241227 fix(openclaw): parse wake metadata from gateway responses
  • 7623997 fix(doctor): include custom providers from opencode.json in provider check
  • ae3a8d6 fix(delegate-task): tighten subagent depth guard + add regression smoke tests
  • 1140080 fix(agents): deny apply_patch for GPT models to prevent verification hangs (#2935)

Thank you to 2 community contributors:

  • @Momentum96:
    • fix(openclaw): parse wake metadata from gateway responses
    • fix(openclaw): register reply correlation from runtime dispatch
    • fix(openclaw): split reply listener state and startup flow
    • fix(openclaw): harden reply listener process lifecycle
    • fix(openclaw): stabilize reply polling and tmux injection
    • fix(openclaw): stop stale listeners during initialization
    • fix(tmux): expose tracked pane ids for openclaw routing
    • fix(plugin): dispatch openclaw lifecycle events from handlers
    • fix(test): isolate openclaw bootstrap mocks
    • fix(ci): isolate discord reply listener test
    • fix(test): align zombie pane tmux mocks
    • fix(schema): use zod native json schema output
    • fix(test): reset session manager storage in registry tests
    • fix(test): wait for async skill description refresh
    • fix(merge): resolve dev conflicts for openclaw branch
  • @Qiiks:
    • fix(shell-env): check SHELL before PSModulePath for shell detection

Don't miss a new oh-my-openagent release

NewReleases is sending notifications on new releases.