Commit Graph

5381 Commits

Author SHA1 Message Date
YeonGyu-Kim fd85dad984 fix(ci): strip _authToken from .npmrc so OIDC takes precedence
After switching to npm Trusted Publishing the publish step still
returned 'PUT 404' because actions/setup-node injects an
'//registry.npmjs.org/:_authToken=${NODE_AUTH_TOKEN}' line into
.npmrc. With NODE_AUTH_TOKEN unset that placeholder evaluates to
an empty string, so npm tries an empty token before reaching for
the OIDC ID token and the registry rejects it.

- Add a step that strips any _authToken line from both project-
  local and $HOME/.npmrc before publishing, so npm CLI proceeds
  to OIDC token exchange.
- Bump publish commands to --loglevel verbose so future failures
  expose the actual auth path (provenance attestation, OIDC
  exchange, etc.) in workflow logs.
2026-04-30 15:19:43 +09:00
YeonGyu-Kim 48fc7bd459 fix(ci): switch npm publish to OIDC trusted publishing
NODE_AUTH_TOKEN expired (set 90 days ago, the npm token default
expiry) causing all publish runs to fail with 'PUT 404 Not Found'
since 2026-04-30.

Migrate publish.yml and publish-platform.yml to npm Trusted
Publishing (OIDC) so we no longer depend on long-lived secrets:

- Bump actions/setup-node v4 -> v6 (improves OIDC compatibility)
- Add 'npm install -g npm@latest' to guarantee npm CLI >= 11.5.1
  (the minimum required for trusted publishing).
- Drop NODE_AUTH_TOKEN env from every publish step. The npm CLI
  picks up the GitHub Actions OIDC token automatically.
- Keep --provenance / NPM_CONFIG_PROVENANCE=true (real-world
  reports indicate provenance is not auto-emitted yet).

Per-package trusted publisher must still be configured on
npmjs.com (Settings -> Trusted Publisher) for all 24 packages
(oh-my-opencode + oh-my-openagent main + 11 platform packages
each, dual-published) before the next publish run.
2026-04-30 14:48:36 +09:00
github-actions[bot] 216283e2b0 @aaronkyriesenbach has signed the CLA in code-yeongyu/oh-my-openagent#3727 2026-04-29 17:39:33 +00:00
acamq 002297b381 Merge pull request #3718 from ismetanin/fix/cached-version-per-plugin-sandbox
fix(auto-update-checker): read loaded plugin's package.json, not the legacy flat install
2026-04-29 08:16:19 -06:00
Ivan Smetanin 5291ee7d3d fix(auto-update-checker): prefer loaded module's package.json over flat-install candidates
The startup toast and `omo --version` were reading from the legacy flat install
at <CACHE_DIR>/node_modules/<pkg>/package.json, but OpenCode actually loads
plugins from a per-plugin sandbox at <CACHE_DIR>/<plugin-entry>/node_modules/
<pkg>/package.json. The two install layers can drift independently when bun
re-resolves "latest" against the flat install while the sandbox's package.json
stays pinned to a literal version baked in at first install.

In practice this means the toast can announce a version the runtime is not
running. Concrete reproduction: with `"oh-my-openagent@latest"` in the plugin
list, the sandbox stayed on 3.17.5 while the parallel flat install advanced to
3.17.6, so the startup toast confidently reported v3.17.6 even though the
loaded plugin code was 3.17.5.

Walking up from `import.meta.url` always reflects the actually-loaded module,
so reorder `getCachedVersion()` to try that first and fall back to the flat-
install candidates and execPath walk-up as before. The fallback chain is
preserved for bundled environments where the module-relative lookup may fail.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 09:17:21 +01:00
YeonGyu-Kim d65bc8730c feat(agents): add gpt-5.5 native deep category prompt
Hephaestus 5.5 was rewritten as an outcome-first delegation contract in c3fabaaf. The deep category (spawned as sisyphus-junior under gpt-5.5) now receives a matching prose-driven category context lifted from drafts/gpt-5-5/deep.md instead of the legacy gpt-5.4-era threat-frame version.

Selection happens via a new model-aware resolvePromptAppend hook on BuiltinCategoryDefinition. When the resolved category model is gpt-5.5 the new DEEP_CATEGORY_PROMPT_APPEND_GPT_5_5 is used; older models keep the legacy DEEP_CATEGORY_PROMPT_APPEND. User prompt_append remains preserved on top of either base.
2026-04-29 15:49:27 +09:00
YeonGyu-Kim 766eedd66b Merge pull request #3706 from unclok/fix/retry-recovery-and-observability
All cubic-flagged P1 (stale prompt errors / stale terminal session error) and P2 (URL directory / mutable state leak) issues were resolved by @unclok in commits `2237c1acc`, `185665707`, `078e49629`, and `0dd455e72` before this final review pass. Verified locally: typecheck clean, 248 PR-related tests pass. CI green after rebasing onto current dev. Ships valuable retry observability + Forbidden-error retryability + sync delegate-task replay improvements.
2026-04-29 15:07:53 +09:00
YeonGyu-Kim 05a15f7598 Merge branch 'dev' into fix/retry-recovery-and-observability 2026-04-29 14:54:24 +09:00
YeonGyu-Kim ea07f28400 Merge pull request #3556 from MoerAI/fix/fallback-credit-exhaustion
Fixes #3519. Quota exhaustion now advances the runtime fallback chain instead of stopping. Surgical change with parallel test updates. Pre-existing prompt-text test mismatch on the older base disappeared after rebasing onto current dev — all checks green.
2026-04-29 14:43:13 +09:00
YeonGyu-Kim 6850cb6d21 Merge branch 'dev' into fix/fallback-credit-exhaustion 2026-04-29 14:38:42 +09:00
Choi Kijin / 최 기진 / チョイ キジン 7adb725960 Merge remote-tracking branch 'origin/dev' into fix/retry-recovery-and-observability 2026-04-29 12:25:02 +09:00
github-actions[bot] b8652db5e5 @deopa0402 has signed the CLA in code-yeongyu/oh-my-openagent#3713 2026-04-28 16:03:33 +00:00
github-actions[bot] 483e11ad08 @unclok has signed the CLA in code-yeongyu/oh-my-openagent#3706 2026-04-28 13:00:51 +00:00
Choi Kijin / 최 기진 / チョイ キジン 0dd455e725 fix(delegate-task): ignore stale sync session errors
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 21:43:10 +09:00
Choi Kijin / 최 기진 / チョイ キジン 185665707c fix(model-fallback): clone session fallback chains
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 21:43:10 +09:00
Choi Kijin / 최 기진 / チョイ キジン 2237c1accd fix(background-agent): guard stale launch errors and retry links
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 21:43:09 +09:00
Choi Kijin / 최 기진 / チョイ キジン 27fb2d5e79 test(plugin): clean up event handler test helpers
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 19:09:02 +09:00
Choi Kijin / 최 기진 / チョイ キジン 078e49629e fix(delegate-task): replay sync retry session registration
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 19:09:01 +09:00
YeonGyu-Kim fbaeb032c0 fix(todo-continuation): avoid duplicate progress reset
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 18:00:47 +09:00
YeonGyu-Kim ebcd6edf5a perf(hashline): use write metadata line counts
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 18:00:21 +09:00
YeonGyu-Kim 24201ea951 perf(background-agent): index tasks by parent session
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 18:00:04 +09:00
YeonGyu-Kim eb722aa977 perf(compaction): reuse message update parts for no-text tails
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 17:59:50 +09:00
YeonGyu-Kim ece8fd4f25 perf(shared): cache context window usage per session
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 17:59:25 +09:00
Choi Kijin / 최 기진 / チョイ キジン 3fc9e6bafd Merge remote-tracking branch 'origin/dev' into opencode/mighty-wolf 2026-04-28 15:47:58 +09:00
Choi Kijin / 최 기진 / チョイ キジン 79054ea3e5 feat(background-task): render retry timelines and links
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 15:29:49 +09:00
Choi Kijin / 최 기진 / チョイ キジン 25548f2561 fix(model-fallback): retry forbidden provider errors
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 15:29:33 +09:00
Choi Kijin / 최 기진 / チョイ キジン 613e4a6c12 fix(delegate-task): retry sync tasks after runtime session errors
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 15:28:20 +09:00
Choi Kijin / 최 기진 / チョイ キジン a4968a3d1d feat(background-task): track retry attempts across sessions
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 15:27:35 +09:00
Choi Kijin / 최 기진 / チョイ キジン cc3cca7cb7 fix(model-fallback): expose session fallback chains to background tasks
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 15:27:34 +09:00
github-actions[bot] 938b609a91 release: v3.17.6 2026-04-28 06:21:01 +00:00
YeonGyu-Kim 4eb597b10f Merge pull request #3698 from code-yeongyu/fix/posthog-cost-reduction
fix(telemetry): cut PostHog cost via HAU removal + plugin_loaded daily dedupe
2026-04-28 15:08:55 +09:00
YeonGyu-Kim 90c2c9c31a Merge pull request #3697 from code-yeongyu/feat/sisyphus-kimi-k2-6
feat(sisyphus): add Kimi K2.x prompt variant
2026-04-28 15:04:29 +09:00
YeonGyu-Kim 669e0667be fix(telemetry): dedupe plugin_loaded event to once per UTC day
The plugin_loaded event was emitted on every plugin reload, generating
high event volume on PostHog (proportional to opencode restarts per
user per day). With MAU > 60K and active power users restarting
frequently, this drove unnecessary event spend.

Add a separate daily dedup state field (lastPluginLoadedDayUTC) so the
plugin_loaded capture only fires once per UTC day per machine. The
existing daily activity dedup (lastActiveDayUTC, used by
omo_daily_active) is preserved as an independent gate so the two
dimensions cannot overwrite each other in the activity state file.
2026-04-28 15:01:40 +09:00
YeonGyu-Kim 7a3a835a22 feat(sisyphus): add Kimi K2.x prompt variant
- New src/agents/sisyphus/kimi-k2-6.ts based on gpt-5-4.ts 8-block architecture
- New src/agents/sisyphus-junior/kimi-k2-6.ts worker variant
- Preserves 4 pillars: intent gate + verbalization, parallel tools, verification
- Adds <re_entry_rule>: suppress re-verbalization for already-resolved turns
- Adds <exploration_budget>: hard stop conditions alongside aggressive parallelism
- Tiered <verification_loop> (V1/V2/V3): V3 keeps full rigor with harsh enforcement
- Adds <token_economy>: verbalization explicitly excluded from trim mandate
- isKimiK2Model in types.ts: matches kimi, k2p5/k2p6 variants (case-insensitive)
- Routing in sisyphus.ts + sisyphus-junior/agent.ts
- Tests: 3 new kimi routing cases in sisyphus-junior/index.test.ts (all pass)

Motivation: K2.x was post-trained with Toggle RL (~25-30% token reduction) and a
GRM scoring appropriate detail + intent inference. Reusing Claude-style prompts
double-taxes the model — external strictness on top of RL-learned strictness causes
over-deliberation on already-resolved requests. The re-entry rule and exploration
budget fix this without weakening verification rigor.

Refs: kimi.com/blog/kimi-k2-6, arxiv 2602.02276 §4.4.2 (Toggle, GRM)
2026-04-28 14:57:17 +09:00
YeonGyu-Kim 58e4b8f519 fix(telemetry): remove PostHog HAU tracking, keep DAU only 2026-04-28 14:51:33 +09:00
YeonGyu-Kim 84287f1da7 test(todo-continuation): make countdown toast test deterministic
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 13:59:52 +09:00
YeonGyu-Kim 2483dc7360 fix(agents): restore Opus Sisyphus prompt contracts
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 13:39:52 +09:00
YeonGyu-Kim c3fabaafaa refactor(agents): rewrite Hephaestus gpt-5.5 around outcome-first delegation contract 2026-04-28 13:29:35 +09:00
github-actions[bot] 886845b703 @FurryWolfX has signed the CLA in code-yeongyu/oh-my-openagent#3695 2026-04-28 03:32:42 +00:00
YeonGyu-Kim 6103df05f2 feat(agents): restore deep-work emphasis on Hephaestus gpt-5.5
The Codex 5.2 restyle in ad9df3f68 watered down the four deep-work
exhortations from gpt-5.4 (tool_call_philosophy, tool_persistence,
dependency_checks, dig_deeper) into a single bullet, leaving the
'deep worker' identity without behavioral teeth.

Restore them as Codex-style sub-sections under Exploration:
- Tool-call discipline: more calls = more accuracy, retry on partial,
  read more files than needed.
- Dig deeper: don't stop at first plausible answer, check second-order
  issues, prefer root over symptom (with concrete example).
- Dependency checks: resolve prerequisites before acting.
- Anti-duplication: extracted from inline paragraph to its own block.

LSP clean. 267 -> 315 lines.
2026-04-28 10:37:16 +09:00
YeonGyu-Kim 7a89b98165 refactor(agents): re-style Hephaestus gpt-5.5 in Codex 5.2 prompt structure
Previous prose-dense rewrite went too far in stripping bullet structure.
Codex 5.1/5.2 prompts (the closest reference for an OpenAI deep-worker
prompt) actually use bullets liberally - just well-grouped (4-6 per list)
with prose introductions on each section. Restructure 5.5 to mirror that
style and tone while preserving Hephaestus's identity and all behavioral
rules from the prior round.

Sections lifted directly from Codex 5.1/5.2 organization:
- # How you work / ## Personality at the top for tonal priming
- # AGENTS.md spec as a standalone section with its own bullets
- ## Autonomy and Persistence with prose intro + Three-attempt sub-protocol
- ## Responsiveness with Frequency, Tone, Content, Examples sub-blocks
  (examples rewritten to Hephaestus voice: 'Walking the agents/ tree',
  'Found the dispatch in createSisyphusAgent', etc.)
- ## Plan tool with 'use a plan when' bullet list
- ## Validating your work with approval-mode granularity
  (non-interactive / interactive / test-related)
- ## Presenting your work with categorical Final answer rules
  (Section Headers / Bullets / Monospace / File references / Tone /
  Verbosity / Don't)
- # Tool Guidelines as separate top-level section

Hephaestus-specific content preserved verbatim:
- Forge god identity, deep-worker / executor framing
- task() restricted to research subagents only
- Three-attempt failure protocol
- End-to-end usage gate (interactive_bash / playwright / curl / driver)
- Anti-duplication rule on parallel exploration

Amp-derived rules kept compact in their own ## Pragmatism and Scope:
- Smallest correct change, duplication > premature abstraction
- Default-no-tests with explicit exceptions
- WIP-not-legacy rule
- Multi-agent dirty worktree safety

Metrics: 110 -> 267 lines (still -14% from original 312), 4 -> 100 bullets
(grouped Codex-style, not scattered), 24 headers. 38/38 verification
checks pass; LSP clean.

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

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 10:37:16 +09:00
YeonGyu-Kim 4aae402547 refactor(agents): rewrite Hephaestus gpt-5.5 prose-dense from Codex 5.2 + Amp distillation
Prior 5.5 prompt enumerated rules across 60+ bullets and 312 lines, which
fights GPT-5.5's strength: it follows prose instructions reliably and does
not need rule-by-rule cataloging. Rewrite as flowing paragraphs while
preserving the deep-worker identity and every load-bearing behavior.

Identity preserved:
- Forge god mythology ("Your boulder is code", "forge it until done")
- Direct executor, not orchestrator (research subagents only)
- Senior-colleague tone, end-to-end persistence

Behaviors preserved (compressed to prose):
- Three-attempt failure protocol → 1 paragraph
- Anti-duplication on parallel exploration
- End-to-end usage gate (interactive_bash / playwright / curl / driver)
- Implementation gate: when delegated, execute directly, no draft loop

Net additions distilled from Amp + Codex 5.2 evolution:
- Pragmatism block: smallest correct change, duplication > premature
  abstraction, do not over-engineer, do not validate impossible scenarios
- Default-no-tests: add tests only when user asks, fixes a subtle bug,
  or protects an important boundary; never to codebases without tests
- WIP-not-legacy: earlier unreleased shapes in the same turn are drafts,
  not legacy contracts requiring backward compatibility
- Multi-agent worktree: continue task without reverting unknown changes
- Code-review mode trigger: "review" → findings-first, severity-sorted
- Personality-first opener (Codex 5.2 pattern) for tonal priming

Metrics: 312 → 110 lines (-65%), 60+ bullets → 4 bullets, 21,803 → 15,654
chars (-28%). 26/26 verification checks pass.

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

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-28 10:37:16 +09:00
github-actions[bot] 136517383f @javimarttinn has signed the CLA in code-yeongyu/oh-my-openagent#3687 2026-04-27 20:25:50 +00:00
YeonGyu-Kim 6775dd12bb feat(agents): mandate end-to-end usage validation on Hephaestus gpt-5.5 delegation
Hephaestus is the autonomous deep-worker - everything it receives is a
delegation. Existing 'Manual behavior' bullet vaguely said 'actually run
it' but left the validation surface unspecified, which lets a checked-in
diff plus passing tests masquerade as completion on user-visible work.

Add a dedicated 'End-to-end usage is the gate' subsection in Codex prose
style (no threats/CAPS, contract frames). Surface determines tool:

- TUI / CLI → interactive_bash (tmux), drive it like a real user
- Web / browser / UI → playwright skill, drive a real browser session
- HTTP API / service → curl or integration script against running service
- Library / SDK → minimal driver script

Reinforce in Forbidden stops trailer: when receiving a delegation,
execute directly and validate through the gate; do not loop back with
a draft when the work is yours to do.

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

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-27 21:38:50 +09:00
YeonGyu-Kim c3b98c4bfb feat(agents): mandate surface-matched manual QA tools on Opus 4.7 full delegation
The existing FULL DELEGATION manual-QA rule said 'use it yourself' but
left the choice of tool implicit. Make it explicit and non-optional, so
the agent cannot satisfy the gate by reading the source instead of
running the artifact.

Surface → tool mapping:
- TUI / CLI work → interactive_bash (tmux). Launch in real terminal,
  send keystrokes, run happy path, try bad input, hit --help.
- Web / browser / UI work → playwright skill. Drive a real browser,
  click elements, fill forms, watch console, screenshot if helpful.
- HTTP API / service work → curl or integration script against the
  running service.
- Library / SDK work → minimal driver script that imports + executes.
- Other surfaces → ask how a real user would discover it works, then
  do that.

Frame the gate as a contract violation when bypassed: reporting
'implementation complete' without using the matching tool is the same
failure pattern as deleting a failing test for a green build.

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

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-27 21:38:49 +09:00
YeonGyu-Kim 9e7b39102b feat(agents): require manual end-to-end QA on full-delegation Opus 4.7 tasks
Existing <verification> required tests pass + lsp clean + build green, but
that is insufficient for end-to-end delegation. Tests cover known cases;
they do not cover whether the user-visible feature actually works.

Add a NON-NEGOTIABLE rule: when the user hands off end-to-end ("ulw",
"implement and finish", "do the whole thing", "make it work", "ship it"),
verification escalates to:

1. BUILD the actual artifact
2. USE IT YOURSELF as a real user would
3. VERIFY end-to-end behavior matches the spec
4. TASK NOT DONE until usage confirms it works

Reporting "implementation complete" without having USED the artifact is
explicitly framed as a contract violation. Defects discovered during this
QA pass are the agent's to fix in the same turn.

This complements the existing 'lsp_diagnostics catches type errors, not
logic bugs' line by giving full-delegation cases a sharper, named gate.

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

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-27 21:30:48 +09:00
YeonGyu-Kim 9feb9f6fe5 refactor(agents): distill SMART production-prompt patterns into Opus 4.7 Sisyphus
Replace verbose v1 prompt with prose-dense, strong-directive version
that pulls in production-grade rules from a captured SMART agent prompt
while keeping all OhMyOpenCode-specific orchestration content.

Net additions:
- <autonomy_and_persistence>: redirect-as-refinement, never-revert-others-work,
  diagnose-before-retry. Critical for multi-agent worktree safety.
- <investigate_before_acting>: never speculate, ground every claim in tool output.
- <pragmatism_and_scope>: anti-overengineering rules. DUPLICATION > PREMATURE
  ABSTRACTION. Pairs naturally with Opus 4.7 literal-following.
- <verification>: report faithfully, never game tests, evidence requirements.
- <executing_actions_with_care>: reversibility framework with destructive examples.
- <using_subagents>: tighter spawning rules + summarize-result mandate.
- <file_links>: fluent file:// linking format for clickable references.

Trims:
- Mythology and redundant identity bullets compressed in <role>.
- <self_knowledge> stripped of redundancies (parallel/effort/progress/tone
  duplicated elsewhere); kept only literal-following + fewer-subagents.
- <example_subagent_spawning> reduced from 4 examples to 1.
- <example_session_continuity> dropped (prose covered it).
- <communication_style> compressed from 30 lines to 5 strong directives.
- Code Changes redundant rules removed (already in hardBlocks).

Strong-directive style: bold/CAPS on load-bearing rules per user preference.

Net result: 20,527 chars (down from 26,310 v1) yet richer behavioral coverage.
40/40 sacred-behavior + SMART-addition checks pass. LSP clean.

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

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-27 21:26:58 +09:00
YeonGyu-Kim 241fb70a4a test(delegate-task): add background-task test coverage
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-27 21:15:42 +09:00
YeonGyu-Kim e1b2fa9a14 test(call-omo-agent): add sync-executor test coverage
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-27 21:15:41 +09:00
YeonGyu-Kim bda7fdbbda test(background-agent): add spawner test coverage
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-27 21:15:40 +09:00