Commit Graph

38 Commits

Author SHA1 Message Date
ririnto 19aaf5d329 fix(prompts): point planning guidance at plan subagent 2026-05-18 00:54:01 +09:00
YeonGyu-Kim fbc5768f9a Merge pull request #3971 from MoerAI/fix/task-examples-add-run-in-background
fix(agents): add run_in_background to category task() examples in prompts (fixes #3960)
2026-05-16 18:02:01 +09:00
YeonGyu-Kim c25cb8dcef fix(background-task): clarify task id contracts 2026-05-15 15:41:30 +09:00
YeonGyu-Kim 9f6d0d2281 docs(agents-md): refresh hierarchical knowledge base for v4.1.2
- Bump root AGENTS.md header: 2026-05-14 → 2026-05-15, commit 5ffbe0e2453a740636, release v4.1.1 → v4.1.2
- Update file counts: 2034 (1337+697) → 2041 (1340+701), LOC ~292k → ~294k
- Fix STRUCTURE: openclaw lives at src/openclaw/ (not src/features/); list more accurate feature modules in the parenthetical
- Clarify interactive_bash gate: tmux binary on PATH via isInteractiveBashEnabled() (not 'tmux enabled')
- Fix docs/reference/features.md hook counts: Tool Guard 14→16, Total base 52→54, total with team-mode 59→61
- Bump 'Generated' date on all 43 subdir AGENTS.md files to 2026-05-15
- Preserve promptAsync injection cautions verbatim (per request)
2026-05-15 13:48:11 +09:00
YeonGyu-Kim 1e7a7600a2 docs(agents-md): regenerate hierarchical AGENTS.md knowledge base for v4.1.1
Refresh all AGENTS.md files to reflect codebase state at 5ffbe0e24 (was cd31d2a1a, 197 commits behind).

Key drift corrections across 45 modified + 1 new file:

Root AGENTS.md:
- TS file counts: 1967 -> 2034 in src/ (1337 source + 697 test)
- LOC: 278k -> 292k
- Barrel index.ts: 120 -> 122
- Hook tier composition: 52/59 -> 54/61 (base/with team-mode)
- Tool Guard hooks: 14 -> 16 (add fsync-skip-warning, bash-file-read-guard)
- Add boulder feature, agent-ordering schema, .agents/ directory, v4.1.1 release tag
- Add generated/ directory entry

src/AGENTS.md:
- Subsystem inventory: agents 96->102, hooks 570->581, tools 306->314,
  features 389->400, shared 258->278, cli 150->158, plugin 55->56
- LOC totals refreshed for every subsystem
- Schema files: 32 -> 30

src/hooks/AGENTS.md:
- Tier 2 (Tool Guard): 14 -> 16 hooks, add fsyncSkipWarning row
- Total: 52 base / 59 team-mode -> 54 base / 61 team-mode
- zauc-mocks count: 7 -> 5

src/features/AGENTS.md:
- background-agent: 47 -> 57 files, mention archive fallback
- opencode-skill-loader: 33 -> 30
- tmux-subagent: 34 -> 32

src/plugin/AGENTS.md:
- Tool Guard composer count: 14 -> 16
- Aggregator total: 43 -> 45

src/cli/AGENTS.md:
- Add new boulder subcommand (BoulderState inspector)
- Command count: 6 -> 7

NEW: src/features/boulder-state/AGENTS.md
- Document the new Boulder work tracking feature
- Schema v2 with BoulderState/BoulderWorkState/TaskSessionState
- Lifecycle, storage, integration points with atlas/ralph-loop hooks

All other AGENTS.md files: Generated date 2026-05-08 -> 2026-05-14.
2026-05-14 12:57:46 +09:00
MoerAI c4e88d63ea fix(agents): add run_in_background to category task() examples in prompts (fixes #3960)
The task() tool schema declares run_in_background as a REQUIRED parameter, but three prompt-template files contained category-based task() examples that omitted it. When agents copied these patterns into actual tool calls, the runtime validator threw 'run_in_background parameter is REQUIRED', breaking delegation.

Add run_in_background=false to the four offending category-based examples: 2 in src/agents/dynamic-agent-category-skills-guide.ts (Delegation Pattern + Category Domain Matching CORRECT/WRONG pair), 1 in src/agents/hephaestus/gpt-5-3-codex.ts (frontend example), and 1 in src/agents/sisyphus/gemini.ts (Example 4 DELEGATE). Subagent-type explore/librarian examples already correctly use run_in_background=true. atlas/shared-prompt.ts examples were already correct.

Verification: bun test src/agents/ — 373 pass, 0 fail. bun run typecheck — clean. Grep confirms no remaining category task() examples lack the parameter.
2026-05-12 18:56:24 +09:00
YeonGyu-Kim 838b5ae216 docs(agents): refresh hierarchical AGENTS.md with team-mode coverage
Update root + 43 directory-level AGENTS.md files to reflect current state:
- Root AGENTS.md rewritten with accurate counts (1967 TS files, 1304 source +
  663 test, 278k LOC, 120 barrel index.ts), 7-step init flow, 5-tier hook
  composition, and full Team Mode section (12 team_* tools, eligibility,
  storage layout, config gate)
- src/AGENTS.md adds team-mode init step, current per-subdir file/LOC table
- src/tools/AGENTS.md documents conditional gates (team-mode +12, task
  system +4, hashline +1, interactive_bash +1, look_at +1) with always-on
  baseline of 20
- src/hooks/AGENTS.md splits into 5 tiers + 4 conditional team-mode hooks
- src/features/team-mode/AGENTS.md surfaces 12 tools, eligible agents,
  spawn-race-safe invariants, and integration points
- src/features/builtin-skills/AGENTS.md tracks 10 skills incl. team-mode
- src/agents/AGENTS.md, src/plugin/AGENTS.md, src/config/AGENTS.md updated
  for team-mode awareness, accurate counts, and current schema field list
- All other AGENTS.md files refreshed to 2026-05-08 generation date
2026-05-08 12:08:42 +09:00
YeonGyu-Kim 7e43beaa9e Merge pull request #3620 from MoerAI/fix/sisyphus-prompt-plan-reference
fix(agents): reference prometheus instead of conditional plan alias in prompts (fixes #3596)
2026-05-06 17:15:05 +09:00
ilseob lee 766cdaf893 docs: align GPT-5.5 model references 2026-05-06 16:33:07 +09:00
YeonGyu-Kim 44216a538e Merge pull request #3578 from xiaolai/fix/nlpm-agents-missing-frontmatter
docs(agents): add YAML frontmatter to AGENTS.md documentation files
2026-05-06 15:44:57 +09:00
YeonGyu-Kim 1a64060cc2 feat(agents): strengthen gpt-5.5 prompts with manual QA gate, dig-deeper trio, anti-fallback
- Add Manual QA Gate as a non-negotiable surface-tool mapping
  (interactive_bash for TUI, playwright for browser, curl for HTTP,
  driver script for library) to Hephaestus, Sisyphus-Junior, and
  Sisyphus' direct-execution mode.
- Restore the dig-deeper trio (tool persistence / dig deeper /
  dependency checks) as orthogonal paragraphs so each carries its
  own cognitive trigger instead of a fused single statement.
- Harden investigate-before-acting from a soft phrase to a dedicated
  block: never speculate about unread code, re-read on every
  task hand-off, the worktree may have changed.
- Add 'Parallelize aggressively' as its own block. Reads, searches,
  diagnostics, and background sub-agents all batch into a single
  response by default.
- Add 'No defensive code, no speculative legacy' to discourage
  speculative backward-compatibility branches and unrequested
  defensive validation.
- Absorb review-intent and frontend anti-slop coverage so the
  prompt stays self-sufficient when the omo agent prompt replaces
  the provider prompt.
- Replace literal apply_patch instructions with GPT_APPLY_PATCH_GUIDANCE
  (use edit/write tools) so the prompt no longer contradicts the
  apply_patch deny that the agent permission applies on GPT models.
- Sisyphus-Junior gains a Review tasks block and a default-behavior
  fallback for when the runtime category context is missing or sparse.
- Sisyphus gains an explicit Hard invariants block listing type-
  suppression bans, destructive-git bans, and Oracle-completion gating.
- Restore dynamic injections that round out the orchestrator/worker
  context: category+skills delegation guide, delegation table,
  Oracle dynamic guidance, key triggers, non-Claude planner
  reminder. Hephaestus regains optional category delegation while
  keeping direct execution as the default.
- Drop em dashes; search guidance points at rg directly throughout.
2026-04-30 20:30:57 +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 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 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 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 2024c0cb84 feat(agents): wire Claude Opus 4.7 support into Sisyphus agent
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-27 21:15:38 +09:00
YeonGyu-Kim 41d4cbe811 feat(agents): add Claude Opus 4.7 native Sisyphus prompt builder
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-27 21:15:35 +09:00
MoerAI 32e56c0e60 fix(agents): reference prometheus instead of conditional plan alias in prompts (fixes #3596) 2026-04-24 18:56:21 +09:00
YeonGyu-Kim 98964eb6f8 feat(agents): add gpt-5.5 native sisyphus prompt
Ground-up rewrite styled after OpenAI Codex's gpt-5.4 prompt
architecture: '# General' -> '## Autonomy and Persistence' -> '## Task
execution' -> '## Validating your work' -> '# Working with the user' ->
'# Tool Guidelines' section hierarchy.

Key differences from the gpt-5-4 variant:
- Prose-first output, bullets only when content is list-shaped
- Contract frames replace threat frames (GPT-5.5 follows instructions
  well; NEVER/FORBIDDEN rhetoric adds entropy without compliance gain)
- Explicit opener blacklist for 'Done -', 'Got it', 'Great question'
- '{{ personality }}' slot reserved for future persona substitution
- '{{ taskSystemGuide }}' slot switches todo/task tools per harness cfg
- Codex-compatible clickable file reference format

Sisyphus factory now checks isGpt5_5Model before isGptNativeSisyphusModel,
so gpt-5.5 models route to the new prompt while gpt-5.4, gpt-5.6+, and
other matches stay on the existing gpt-5-4 prompt.
2026-04-24 13:05:49 +09:00
claude[bot] 53e3061b4c docs(agents): add YAML frontmatter to AGENTS.md documentation files
Add name and description frontmatter to the four generated AGENTS.md
documentation files so they can be discovered and indexed by NL tooling.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-04-22 18:27:49 +00:00
YeonGyu-Kim d89e257d8a refactor(task): align continuation ids with task_id 2026-04-16 23:13:44 +09:00
YeonGyu-Kim 40411f3218 docs(agents): add AGENTS.md documentation for prometheus, hephaestus, sisyphus variants, and builtin-skills
- src/agents/prometheus/: Strategic planner documentation
- src/agents/hephaestus/: GPT-5.4 autonomous worker documentation
- src/agents/sisyphus/: Model-specific orchestrator variants documentation
- src/features/builtin-skills/: 8 built-in skills catalog

🤖 Generated with OhMyOpenCode assistance
2026-04-11 22:33:22 +09:00
YeonGyu-Kim 2083cb0710 feat(agents): add centralized GPT apply_patch permission guard
Extract hardcoded GPT apply_patch permission logic into a reusable module
to ensure consistent behavior across all agents. This prevents GPT models
from using the unreliable apply_patch tool while allowing other models.

- Add gpt-apply-patch-guard.ts with GPT_APPLY_PATCH_GUIDANCE and getGptApplyPatchPermission
- Update Hephaestus agent to use centralized permission logic
- Update Sisyphus-Junior agent to use centralized permission logic
- Update all GPT prompt builders to reference shared guidance constant

🤖 Generated with assistance of OhMyOpenCode
2026-04-10 10:47:27 +09:00
YeonGyu-Kim 21127b0308 Merge remote-tracking branch 'origin/dev' into fix/gpt-apply-patch-rebased 2026-04-09 11:06:36 +09:00
YeonGyu-Kim b2e7ddfb73 fix: inject agent identity into system prompt for built-in agents (#2964)
Built-in agents (Sisyphus, Hephaestus, Atlas) now include explicit
identity section in their system prompts, matching custom agent behavior.

12 agent identity tests pass, 266 total pass, tsc clean.

Closes #2964
2026-04-07 15:29:10 +09:00
YeonGyu-Kim 1140080927 fix(agents): deny apply_patch for GPT models to prevent verification hangs (#2935)
GPT models (5.3-codex, 5.4, etc.) frequently hang when using apply_patch
due to verification loops. This adds:

1. Tool restriction: apply_patch is denied for GPT variants of
   Hephaestus, Sisyphus-Junior, and Sisyphus agents
2. Prompt guidance: GPT-specific prompts now explicitly instruct using
   edit/write tools instead of apply_patch
3. Removed the 'Always use apply_patch' instruction from
   sisyphus-junior/gpt-5-4.ts that contradicted the fix

The deny is model-conditional — Claude variants retain apply_patch
access since it works reliably there.
2026-04-07 11:28:48 +09:00
YeonGyu-Kim 137c2459f7 fix(prompt): prevent immediate BackgroundOutput polling after background task launch
Tool return values contained CTAs ("Use background_output to check") that
caused models to immediately poll instead of waiting for <system-reminder>
notifications. Unified all 5 tool return messages with explicit "Do NOT call
background_output now" guard, added pre-notification warning to BackgroundOutput
tool description, and strengthened Background Result Collection sections across
all 3 Sisyphus prompt variants (default, gpt-5-4, main) with BLOCKING
anti-pattern enforcement.

🤖 Generated with assistance of [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode)
2026-04-06 17:18:47 +09:00
YeonGyu-Kim fabbcaa4b7 refactor(runtime): replace unicode dashes in prompt strings
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-04 01:27:51 +09:00
MoerAI d2d65fbf99 fix(sisyphus): block premature implementation before context is complete (fixes #2274) 2026-03-20 10:16:30 +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
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
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 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