oh-my-claude-sisyphus 3.6.1 → 3.6.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/commands/doctor.md +1 -1
- package/commands/psm.md +180 -0
- package/dist/__tests__/analytics/analytics-summary.test.d.ts +2 -0
- package/dist/__tests__/analytics/analytics-summary.test.d.ts.map +1 -0
- package/dist/__tests__/analytics/analytics-summary.test.js +267 -0
- package/dist/__tests__/analytics/analytics-summary.test.js.map +1 -0
- package/dist/__tests__/analytics/cost-estimator.test.d.ts +2 -0
- package/dist/__tests__/analytics/cost-estimator.test.d.ts.map +1 -0
- package/dist/__tests__/analytics/cost-estimator.test.js +212 -0
- package/dist/__tests__/analytics/cost-estimator.test.js.map +1 -0
- package/dist/__tests__/hooks/auto-slash-command/executor.test.d.ts +7 -0
- package/dist/__tests__/hooks/auto-slash-command/executor.test.d.ts.map +1 -0
- package/dist/__tests__/hooks/auto-slash-command/executor.test.js +374 -0
- package/dist/__tests__/hooks/auto-slash-command/executor.test.js.map +1 -0
- package/dist/__tests__/hud/auto-tracking.integration.test.d.ts +2 -0
- package/dist/__tests__/hud/auto-tracking.integration.test.d.ts.map +1 -0
- package/dist/__tests__/hud/auto-tracking.integration.test.js +12 -0
- package/dist/__tests__/hud/auto-tracking.integration.test.js.map +1 -0
- package/dist/__tests__/installer.test.js +1 -1
- package/dist/__tests__/learned-skills/config.test.d.ts +2 -0
- package/dist/__tests__/learned-skills/config.test.d.ts.map +1 -0
- package/dist/__tests__/learned-skills/config.test.js +37 -0
- package/dist/__tests__/learned-skills/config.test.js.map +1 -0
- package/dist/__tests__/learned-skills/detector.test.d.ts +2 -0
- package/dist/__tests__/learned-skills/detector.test.d.ts.map +1 -0
- package/dist/__tests__/learned-skills/detector.test.js +99 -0
- package/dist/__tests__/learned-skills/detector.test.js.map +1 -0
- package/dist/__tests__/learned-skills/finder.test.d.ts +2 -0
- package/dist/__tests__/learned-skills/finder.test.d.ts.map +1 -0
- package/dist/__tests__/learned-skills/finder.test.js +59 -0
- package/dist/__tests__/learned-skills/finder.test.js.map +1 -0
- package/dist/__tests__/learned-skills/loader.test.d.ts +2 -0
- package/dist/__tests__/learned-skills/loader.test.d.ts.map +1 -0
- package/dist/__tests__/learned-skills/loader.test.js +69 -0
- package/dist/__tests__/learned-skills/loader.test.js.map +1 -0
- package/dist/__tests__/learned-skills/parser.test.d.ts +2 -0
- package/dist/__tests__/learned-skills/parser.test.d.ts.map +1 -0
- package/dist/__tests__/learned-skills/parser.test.js +81 -0
- package/dist/__tests__/learned-skills/parser.test.js.map +1 -0
- package/dist/__tests__/learned-skills/validator.test.d.ts +2 -0
- package/dist/__tests__/learned-skills/validator.test.d.ts.map +1 -0
- package/dist/__tests__/learned-skills/validator.test.js +85 -0
- package/dist/__tests__/learned-skills/validator.test.js.map +1 -0
- package/dist/__tests__/skills.test.js +6 -5
- package/dist/__tests__/skills.test.js.map +1 -1
- package/dist/agents/codex-agents.d.ts +20 -0
- package/dist/agents/codex-agents.d.ts.map +1 -0
- package/dist/agents/codex-agents.js +36 -0
- package/dist/agents/codex-agents.js.map +1 -0
- package/dist/agents/document-writer.d.ts +11 -0
- package/dist/agents/document-writer.d.ts.map +1 -0
- package/dist/agents/document-writer.js +209 -0
- package/dist/agents/document-writer.js.map +1 -0
- package/dist/agents/frontend-engineer.d.ts +11 -0
- package/dist/agents/frontend-engineer.d.ts.map +1 -0
- package/dist/agents/frontend-engineer.js +115 -0
- package/dist/agents/frontend-engineer.js.map +1 -0
- package/dist/agents/librarian.d.ts +12 -0
- package/dist/agents/librarian.d.ts.map +1 -0
- package/dist/agents/librarian.js +103 -0
- package/dist/agents/librarian.js.map +1 -0
- package/dist/agents/metis.d.ts +12 -0
- package/dist/agents/metis.d.ts.map +1 -0
- package/dist/agents/metis.js +117 -0
- package/dist/agents/metis.js.map +1 -0
- package/dist/agents/momus.d.ts +12 -0
- package/dist/agents/momus.d.ts.map +1 -0
- package/dist/agents/momus.js +128 -0
- package/dist/agents/momus.js.map +1 -0
- package/dist/agents/multimodal-looker.d.ts +11 -0
- package/dist/agents/multimodal-looker.d.ts.map +1 -0
- package/dist/agents/multimodal-looker.js +70 -0
- package/dist/agents/multimodal-looker.js.map +1 -0
- package/dist/agents/oracle.d.ts +13 -0
- package/dist/agents/oracle.d.ts.map +1 -0
- package/dist/agents/oracle.js +191 -0
- package/dist/agents/oracle.js.map +1 -0
- package/dist/agents/orchestrator-sisyphus.d.ts +11 -0
- package/dist/agents/orchestrator-sisyphus.d.ts.map +1 -0
- package/dist/agents/orchestrator-sisyphus.js +115 -0
- package/dist/agents/orchestrator-sisyphus.js.map +1 -0
- package/dist/agents/prometheus.d.ts +12 -0
- package/dist/agents/prometheus.d.ts.map +1 -0
- package/dist/agents/prometheus.js +195 -0
- package/dist/agents/prometheus.js.map +1 -0
- package/dist/agents/sisyphus-junior.d.ts +12 -0
- package/dist/agents/sisyphus-junior.d.ts.map +1 -0
- package/dist/agents/sisyphus-junior.js +93 -0
- package/dist/agents/sisyphus-junior.js.map +1 -0
- package/dist/cli/analytics.js +0 -0
- package/dist/cli/components/CostDashboard.d.ts +15 -0
- package/dist/cli/components/CostDashboard.d.ts.map +1 -0
- package/dist/cli/components/CostDashboard.js +15 -0
- package/dist/cli/components/CostDashboard.js.map +1 -0
- package/dist/cli/components/LiveStats.d.ts +16 -0
- package/dist/cli/components/LiveStats.d.ts.map +1 -0
- package/dist/cli/components/LiveStats.js +16 -0
- package/dist/cli/components/LiveStats.js.map +1 -0
- package/dist/cli/components/SessionBrowser.d.ts +14 -0
- package/dist/cli/components/SessionBrowser.d.ts.map +1 -0
- package/dist/cli/components/SessionBrowser.js +14 -0
- package/dist/cli/components/SessionBrowser.js.map +1 -0
- package/dist/cli/index.js +0 -0
- package/dist/cli/tui.d.ts +21 -0
- package/dist/cli/tui.d.ts.map +1 -0
- package/dist/cli/tui.js +21 -0
- package/dist/cli/tui.js.map +1 -0
- package/dist/hooks/autopilot/signals.d.ts +20 -0
- package/dist/hooks/autopilot/signals.d.ts.map +1 -0
- package/dist/hooks/autopilot/signals.js +75 -0
- package/dist/hooks/autopilot/signals.js.map +1 -0
- package/dist/hooks/autopilot/summary.d.ts +27 -0
- package/dist/hooks/autopilot/summary.d.ts.map +1 -0
- package/dist/hooks/autopilot/summary.js +160 -0
- package/dist/hooks/autopilot/summary.js.map +1 -0
- package/dist/hooks/autopilot/transition.d.ts +39 -0
- package/dist/hooks/autopilot/transition.d.ts.map +1 -0
- package/dist/hooks/autopilot/transition.js +216 -0
- package/dist/hooks/autopilot/transition.js.map +1 -0
- package/dist/hooks/context-window-limit-recovery/constants.d.ts +28 -0
- package/dist/hooks/context-window-limit-recovery/constants.d.ts.map +1 -0
- package/dist/hooks/context-window-limit-recovery/constants.js +85 -0
- package/dist/hooks/context-window-limit-recovery/constants.js.map +1 -0
- package/dist/hooks/context-window-limit-recovery/index.d.ts +62 -0
- package/dist/hooks/context-window-limit-recovery/index.d.ts.map +1 -0
- package/dist/hooks/context-window-limit-recovery/index.js +201 -0
- package/dist/hooks/context-window-limit-recovery/index.js.map +1 -0
- package/dist/hooks/context-window-limit-recovery/parser.d.ts +31 -0
- package/dist/hooks/context-window-limit-recovery/parser.d.ts.map +1 -0
- package/dist/hooks/context-window-limit-recovery/parser.js +241 -0
- package/dist/hooks/context-window-limit-recovery/parser.js.map +1 -0
- package/dist/hooks/context-window-limit-recovery/types.d.ts +84 -0
- package/dist/hooks/context-window-limit-recovery/types.d.ts.map +1 -0
- package/dist/hooks/context-window-limit-recovery/types.js +34 -0
- package/dist/hooks/context-window-limit-recovery/types.js.map +1 -0
- package/dist/hooks/edit-error-recovery/index.d.ts +62 -0
- package/dist/hooks/edit-error-recovery/index.d.ts.map +1 -0
- package/dist/hooks/edit-error-recovery/index.js +89 -0
- package/dist/hooks/edit-error-recovery/index.js.map +1 -0
- package/dist/hooks/learned-skills/config.d.ts +53 -0
- package/dist/hooks/learned-skills/config.d.ts.map +1 -0
- package/dist/hooks/learned-skills/config.js +103 -0
- package/dist/hooks/learned-skills/config.js.map +1 -0
- package/dist/hooks/learned-skills/constants.d.ts +24 -0
- package/dist/hooks/learned-skills/constants.d.ts.map +1 -0
- package/dist/hooks/learned-skills/constants.js +26 -0
- package/dist/hooks/learned-skills/constants.js.map +1 -0
- package/dist/hooks/learned-skills/detection-hook.d.ts +39 -0
- package/dist/hooks/learned-skills/detection-hook.d.ts.map +1 -0
- package/dist/hooks/learned-skills/detection-hook.js +83 -0
- package/dist/hooks/learned-skills/detection-hook.js.map +1 -0
- package/dist/hooks/learned-skills/detector.d.ts +30 -0
- package/dist/hooks/learned-skills/detector.d.ts.map +1 -0
- package/dist/hooks/learned-skills/detector.js +150 -0
- package/dist/hooks/learned-skills/detector.js.map +1 -0
- package/dist/hooks/learned-skills/finder.d.ts +21 -0
- package/dist/hooks/learned-skills/finder.d.ts.map +1 -0
- package/dist/hooks/learned-skills/finder.js +117 -0
- package/dist/hooks/learned-skills/finder.js.map +1 -0
- package/dist/hooks/learned-skills/index.d.ts +62 -0
- package/dist/hooks/learned-skills/index.d.ts.map +1 -0
- package/dist/hooks/learned-skills/index.js +137 -0
- package/dist/hooks/learned-skills/index.js.map +1 -0
- package/dist/hooks/learned-skills/loader.d.ts +20 -0
- package/dist/hooks/learned-skills/loader.d.ts.map +1 -0
- package/dist/hooks/learned-skills/loader.js +107 -0
- package/dist/hooks/learned-skills/loader.js.map +1 -0
- package/dist/hooks/learned-skills/parser.d.ts +21 -0
- package/dist/hooks/learned-skills/parser.d.ts.map +1 -0
- package/dist/hooks/learned-skills/parser.js +190 -0
- package/dist/hooks/learned-skills/parser.js.map +1 -0
- package/dist/hooks/learned-skills/promotion.d.ts +29 -0
- package/dist/hooks/learned-skills/promotion.d.ts.map +1 -0
- package/dist/hooks/learned-skills/promotion.js +87 -0
- package/dist/hooks/learned-skills/promotion.js.map +1 -0
- package/dist/hooks/learned-skills/types.d.ts +109 -0
- package/dist/hooks/learned-skills/types.d.ts.map +1 -0
- package/dist/hooks/learned-skills/types.js +8 -0
- package/dist/hooks/learned-skills/types.js.map +1 -0
- package/dist/hooks/learned-skills/validator.d.ts +15 -0
- package/dist/hooks/learned-skills/validator.d.ts.map +1 -0
- package/dist/hooks/learned-skills/validator.js +87 -0
- package/dist/hooks/learned-skills/validator.js.map +1 -0
- package/dist/hooks/learned-skills/writer.d.ts +27 -0
- package/dist/hooks/learned-skills/writer.d.ts.map +1 -0
- package/dist/hooks/learned-skills/writer.js +126 -0
- package/dist/hooks/learned-skills/writer.js.map +1 -0
- package/dist/hooks/mnemosyne/config.d.ts +53 -0
- package/dist/hooks/mnemosyne/config.d.ts.map +1 -0
- package/dist/hooks/mnemosyne/config.js +103 -0
- package/dist/hooks/mnemosyne/config.js.map +1 -0
- package/dist/hooks/mnemosyne/constants.d.ts +24 -0
- package/dist/hooks/mnemosyne/constants.d.ts.map +1 -0
- package/dist/hooks/mnemosyne/constants.js +26 -0
- package/dist/hooks/mnemosyne/constants.js.map +1 -0
- package/dist/hooks/mnemosyne/detection-hook.d.ts +39 -0
- package/dist/hooks/mnemosyne/detection-hook.d.ts.map +1 -0
- package/dist/hooks/mnemosyne/detection-hook.js +83 -0
- package/dist/hooks/mnemosyne/detection-hook.js.map +1 -0
- package/dist/hooks/mnemosyne/detector.d.ts +30 -0
- package/dist/hooks/mnemosyne/detector.d.ts.map +1 -0
- package/dist/hooks/mnemosyne/detector.js +150 -0
- package/dist/hooks/mnemosyne/detector.js.map +1 -0
- package/dist/hooks/mnemosyne/finder.d.ts +21 -0
- package/dist/hooks/mnemosyne/finder.d.ts.map +1 -0
- package/dist/hooks/mnemosyne/finder.js +117 -0
- package/dist/hooks/mnemosyne/finder.js.map +1 -0
- package/dist/hooks/mnemosyne/index.d.ts +62 -0
- package/dist/hooks/mnemosyne/index.d.ts.map +1 -0
- package/dist/hooks/mnemosyne/index.js +137 -0
- package/dist/hooks/mnemosyne/index.js.map +1 -0
- package/dist/hooks/mnemosyne/loader.d.ts +20 -0
- package/dist/hooks/mnemosyne/loader.d.ts.map +1 -0
- package/dist/hooks/mnemosyne/loader.js +113 -0
- package/dist/hooks/mnemosyne/loader.js.map +1 -0
- package/dist/hooks/mnemosyne/parser.d.ts +21 -0
- package/dist/hooks/mnemosyne/parser.d.ts.map +1 -0
- package/dist/hooks/mnemosyne/parser.js +190 -0
- package/dist/hooks/mnemosyne/parser.js.map +1 -0
- package/dist/hooks/mnemosyne/promotion.d.ts +29 -0
- package/dist/hooks/mnemosyne/promotion.d.ts.map +1 -0
- package/dist/hooks/mnemosyne/promotion.js +87 -0
- package/dist/hooks/mnemosyne/promotion.js.map +1 -0
- package/dist/hooks/mnemosyne/types.d.ts +109 -0
- package/dist/hooks/mnemosyne/types.d.ts.map +1 -0
- package/dist/hooks/mnemosyne/types.js +8 -0
- package/dist/hooks/mnemosyne/types.js.map +1 -0
- package/dist/hooks/mnemosyne/validator.d.ts +15 -0
- package/dist/hooks/mnemosyne/validator.d.ts.map +1 -0
- package/dist/hooks/mnemosyne/validator.js +87 -0
- package/dist/hooks/mnemosyne/validator.js.map +1 -0
- package/dist/hooks/mnemosyne/writer.d.ts +27 -0
- package/dist/hooks/mnemosyne/writer.d.ts.map +1 -0
- package/dist/hooks/mnemosyne/writer.js +126 -0
- package/dist/hooks/mnemosyne/writer.js.map +1 -0
- package/dist/hooks/ralph-loop/index.d.ts +116 -0
- package/dist/hooks/ralph-loop/index.d.ts.map +1 -0
- package/dist/hooks/ralph-loop/index.js +322 -0
- package/dist/hooks/ralph-loop/index.js.map +1 -0
- package/dist/hooks/ralph-prd/index.d.ts +130 -0
- package/dist/hooks/ralph-prd/index.d.ts.map +1 -0
- package/dist/hooks/ralph-prd/index.js +310 -0
- package/dist/hooks/ralph-prd/index.js.map +1 -0
- package/dist/hooks/ralph-progress/index.d.ts +102 -0
- package/dist/hooks/ralph-progress/index.d.ts.map +1 -0
- package/dist/hooks/ralph-progress/index.js +408 -0
- package/dist/hooks/ralph-progress/index.js.map +1 -0
- package/dist/hooks/ralph-verifier/index.d.ts +72 -0
- package/dist/hooks/ralph-verifier/index.d.ts.map +1 -0
- package/dist/hooks/ralph-verifier/index.js +223 -0
- package/dist/hooks/ralph-verifier/index.js.map +1 -0
- package/dist/hooks/session-recovery/constants.d.ts +56 -0
- package/dist/hooks/session-recovery/constants.d.ts.map +1 -0
- package/dist/hooks/session-recovery/constants.js +78 -0
- package/dist/hooks/session-recovery/constants.js.map +1 -0
- package/dist/hooks/session-recovery/index.d.ts +53 -0
- package/dist/hooks/session-recovery/index.d.ts.map +1 -0
- package/dist/hooks/session-recovery/index.js +321 -0
- package/dist/hooks/session-recovery/index.js.map +1 -0
- package/dist/hooks/session-recovery/storage.d.ts +76 -0
- package/dist/hooks/session-recovery/storage.d.ts.map +1 -0
- package/dist/hooks/session-recovery/storage.js +383 -0
- package/dist/hooks/session-recovery/storage.js.map +1 -0
- package/dist/hooks/session-recovery/types.d.ts +145 -0
- package/dist/hooks/session-recovery/types.d.ts.map +1 -0
- package/dist/hooks/session-recovery/types.js +8 -0
- package/dist/hooks/session-recovery/types.js.map +1 -0
- package/dist/hooks/sisyphus-orchestrator/constants.d.ts +23 -0
- package/dist/hooks/sisyphus-orchestrator/constants.d.ts.map +1 -0
- package/dist/hooks/sisyphus-orchestrator/constants.js +142 -0
- package/dist/hooks/sisyphus-orchestrator/constants.js.map +1 -0
- package/dist/hooks/sisyphus-orchestrator/index.d.ts +113 -0
- package/dist/hooks/sisyphus-orchestrator/index.d.ts.map +1 -0
- package/dist/hooks/sisyphus-orchestrator/index.js +309 -0
- package/dist/hooks/sisyphus-orchestrator/index.js.map +1 -0
- package/dist/hooks/subagent-tracker/index.d.ts +83 -0
- package/dist/hooks/subagent-tracker/index.d.ts.map +1 -0
- package/dist/hooks/subagent-tracker/index.js +207 -0
- package/dist/hooks/subagent-tracker/index.js.map +1 -0
- package/dist/hooks/ultraqa-loop/index.d.ts +94 -0
- package/dist/hooks/ultraqa-loop/index.d.ts.map +1 -0
- package/dist/hooks/ultraqa-loop/index.js +216 -0
- package/dist/hooks/ultraqa-loop/index.js.map +1 -0
- package/dist/hooks/ultrawork-state/index.d.ts +62 -0
- package/dist/hooks/ultrawork-state/index.d.ts.map +1 -0
- package/dist/hooks/ultrawork-state/index.js +208 -0
- package/dist/hooks/ultrawork-state/index.js.map +1 -0
- package/dist/hud/sisyphus-state.d.ts +31 -0
- package/dist/hud/sisyphus-state.d.ts.map +1 -0
- package/dist/hud/sisyphus-state.js +163 -0
- package/dist/hud/sisyphus-state.js.map +1 -0
- package/dist/installer/index.d.ts +1 -1
- package/dist/installer/index.js +1 -1
- package/docs/MIGRATION.md +2 -2
- package/docs/design/project-session-manager.md +1033 -0
- package/package.json +1 -1
- package/skills/doctor/SKILL.md +1 -1
- package/skills/project-session-manager/SKILL.md +410 -0
- package/skills/project-session-manager/lib/config.sh +86 -0
- package/skills/project-session-manager/lib/parse.sh +121 -0
- package/skills/project-session-manager/lib/session.sh +132 -0
- package/skills/project-session-manager/lib/tmux.sh +103 -0
- package/skills/project-session-manager/lib/worktree.sh +171 -0
- package/skills/project-session-manager/psm.sh +629 -0
- package/skills/project-session-manager/templates/feature.md +56 -0
- package/skills/project-session-manager/templates/issue-fix.md +57 -0
- package/skills/project-session-manager/templates/pr-review.md +65 -0
- package/skills/project-session-manager/templates/projects.json +19 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Momus Agent
|
|
3
|
+
*
|
|
4
|
+
* Named after Momus, the Greek god of satire and mockery.
|
|
5
|
+
* Expert plan reviewer with ruthless evaluation standards.
|
|
6
|
+
*
|
|
7
|
+
* Ported from oh-my-opencode's agent definitions.
|
|
8
|
+
*/
|
|
9
|
+
import type { AgentConfig, AgentPromptMetadata } from './types.js';
|
|
10
|
+
export declare const MOMUS_PROMPT_METADATA: AgentPromptMetadata;
|
|
11
|
+
export declare const momusAgent: AgentConfig;
|
|
12
|
+
//# sourceMappingURL=momus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"momus.d.ts","sourceRoot":"","sources":["../../src/agents/momus.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEnE,eAAO,MAAM,qBAAqB,EAAE,mBAqBnC,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,WAgGxB,CAAC"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Momus Agent
|
|
3
|
+
*
|
|
4
|
+
* Named after Momus, the Greek god of satire and mockery.
|
|
5
|
+
* Expert plan reviewer with ruthless evaluation standards.
|
|
6
|
+
*
|
|
7
|
+
* Ported from oh-my-opencode's agent definitions.
|
|
8
|
+
*/
|
|
9
|
+
export const MOMUS_PROMPT_METADATA = {
|
|
10
|
+
category: 'reviewer',
|
|
11
|
+
cost: 'EXPENSIVE',
|
|
12
|
+
promptAlias: 'momus',
|
|
13
|
+
triggers: [
|
|
14
|
+
{
|
|
15
|
+
domain: 'Plan Review',
|
|
16
|
+
trigger: 'Evaluating work plans before execution',
|
|
17
|
+
},
|
|
18
|
+
],
|
|
19
|
+
useWhen: [
|
|
20
|
+
'After Prometheus creates a work plan',
|
|
21
|
+
'Before executing a complex plan',
|
|
22
|
+
'When plan quality validation is needed',
|
|
23
|
+
'To catch gaps before implementation',
|
|
24
|
+
],
|
|
25
|
+
avoidWhen: [
|
|
26
|
+
'Simple, straightforward tasks',
|
|
27
|
+
'When no plan exists to review',
|
|
28
|
+
'During implementation phase',
|
|
29
|
+
],
|
|
30
|
+
};
|
|
31
|
+
export const momusAgent = {
|
|
32
|
+
name: 'momus',
|
|
33
|
+
description: `Expert reviewer for evaluating work plans against rigorous clarity, verifiability, and completeness standards. Use after Prometheus creates a work plan to validate it before execution.`,
|
|
34
|
+
prompt: `You are a work plan review expert. You review the provided work plan (.sisyphus/plans/{name}.md in the current working project directory) according to **unified, consistent criteria** that ensure clarity, verifiability, and completeness.
|
|
35
|
+
|
|
36
|
+
**CRITICAL FIRST RULE**:
|
|
37
|
+
When you receive ONLY a file path like \`.sisyphus/plans/plan.md\` with NO other text, this is VALID input.
|
|
38
|
+
When you got yaml plan file, this is not a plan that you can review- REJECT IT.
|
|
39
|
+
DO NOT REJECT IT. PROCEED TO READ AND EVALUATE THE FILE.
|
|
40
|
+
Only reject if there are ADDITIONAL words or sentences beyond the file path.
|
|
41
|
+
|
|
42
|
+
**WHY YOU'VE BEEN SUMMONED - THE CONTEXT**:
|
|
43
|
+
|
|
44
|
+
You are reviewing a **first-draft work plan** from an author with ADHD. Based on historical patterns, these initial submissions are typically rough drafts that require refinement.
|
|
45
|
+
|
|
46
|
+
**Historical Data**: Plans from this author average **7 rejections** before receiving an OKAY. The primary failure pattern is **critical context omission due to ADHD**—the author's working memory holds connections and context that never make it onto the page.
|
|
47
|
+
|
|
48
|
+
**YOUR MANDATE**:
|
|
49
|
+
|
|
50
|
+
You will adopt a ruthlessly critical mindset. You will read EVERY document referenced in the plan. You will verify EVERY claim. You will simulate actual implementation step-by-step. As you review, you MUST constantly interrogate EVERY element with these questions:
|
|
51
|
+
|
|
52
|
+
- "Does the worker have ALL the context they need to execute this?"
|
|
53
|
+
- "How exactly should this be done?"
|
|
54
|
+
- "Is this information actually documented, or am I just assuming it's obvious?"
|
|
55
|
+
|
|
56
|
+
You are not here to be nice. You are not here to give the benefit of the doubt. You are here to **catch every single gap, ambiguity, and missing piece of context that 20 previous reviewers failed to catch.**
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## Your Core Review Principle
|
|
61
|
+
|
|
62
|
+
**REJECT if**: When you simulate actually doing the work, you cannot obtain clear information needed for implementation, AND the plan does not specify reference materials to consult.
|
|
63
|
+
|
|
64
|
+
**ACCEPT if**: You can obtain the necessary information either:
|
|
65
|
+
1. Directly from the plan itself, OR
|
|
66
|
+
2. By following references provided in the plan (files, docs, patterns) and tracing through related materials
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## Four Core Evaluation Criteria
|
|
71
|
+
|
|
72
|
+
### Criterion 1: Clarity of Work Content
|
|
73
|
+
**Goal**: Eliminate ambiguity by providing clear reference sources for each task.
|
|
74
|
+
|
|
75
|
+
### Criterion 2: Verification & Acceptance Criteria
|
|
76
|
+
**Goal**: Ensure every task has clear, objective success criteria.
|
|
77
|
+
|
|
78
|
+
### Criterion 3: Context Completeness
|
|
79
|
+
**Goal**: Minimize guesswork by providing all necessary context (90% confidence threshold).
|
|
80
|
+
|
|
81
|
+
### Criterion 4: Big Picture & Workflow Understanding
|
|
82
|
+
**Goal**: Ensure the developer understands WHY they're building this, WHAT the overall objective is, and HOW tasks flow together.
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## Review Process
|
|
87
|
+
|
|
88
|
+
### Step 0: Validate Input Format (MANDATORY FIRST STEP)
|
|
89
|
+
Check if input is ONLY a file path. If yes, ACCEPT and continue. If extra text, REJECT.
|
|
90
|
+
|
|
91
|
+
### Step 1: Read the Work Plan
|
|
92
|
+
- Load the file from the path provided
|
|
93
|
+
- Parse all tasks and their descriptions
|
|
94
|
+
- Extract ALL file references
|
|
95
|
+
|
|
96
|
+
### Step 2: MANDATORY DEEP VERIFICATION
|
|
97
|
+
For EVERY file reference:
|
|
98
|
+
- Read referenced files to verify content
|
|
99
|
+
- Verify line numbers contain relevant code
|
|
100
|
+
- Check that patterns are clear enough to follow
|
|
101
|
+
|
|
102
|
+
### Step 3: Apply Four Criteria Checks
|
|
103
|
+
|
|
104
|
+
### Step 4: Active Implementation Simulation
|
|
105
|
+
For 2-3 representative tasks, simulate execution using actual files.
|
|
106
|
+
|
|
107
|
+
### Step 5: Write Evaluation Report
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## Final Verdict Format
|
|
112
|
+
|
|
113
|
+
**[OKAY / REJECT]**
|
|
114
|
+
|
|
115
|
+
**Justification**: [Concise explanation]
|
|
116
|
+
|
|
117
|
+
**Summary**:
|
|
118
|
+
- Clarity: [Brief assessment]
|
|
119
|
+
- Verifiability: [Brief assessment]
|
|
120
|
+
- Completeness: [Brief assessment]
|
|
121
|
+
- Big Picture: [Brief assessment]
|
|
122
|
+
|
|
123
|
+
[If REJECT, provide top 3-5 critical improvements needed]`,
|
|
124
|
+
tools: ['Read', 'Grep', 'Glob'],
|
|
125
|
+
model: 'opus',
|
|
126
|
+
metadata: MOMUS_PROMPT_METADATA,
|
|
127
|
+
};
|
|
128
|
+
//# sourceMappingURL=momus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"momus.js","sourceRoot":"","sources":["../../src/agents/momus.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,CAAC,MAAM,qBAAqB,GAAwB;IACxD,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,WAAW;IACjB,WAAW,EAAE,OAAO;IACpB,QAAQ,EAAE;QACR;YACE,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE,wCAAwC;SAClD;KACF;IACD,OAAO,EAAE;QACP,sCAAsC;QACtC,iCAAiC;QACjC,wCAAwC;QACxC,qCAAqC;KACtC;IACD,SAAS,EAAE;QACT,+BAA+B;QAC/B,+BAA+B;QAC/B,6BAA6B;KAC9B;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAgB;IACrC,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,0LAA0L;IACvM,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0DAyFgD;IACxD,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;IAC/B,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,qBAAqB;CAChC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Multimodal Looker Agent
|
|
3
|
+
*
|
|
4
|
+
* Visual content analysis specialist.
|
|
5
|
+
*
|
|
6
|
+
* Ported from oh-my-opencode's agent definitions.
|
|
7
|
+
*/
|
|
8
|
+
import type { AgentConfig, AgentPromptMetadata } from './types.js';
|
|
9
|
+
export declare const MULTIMODAL_LOOKER_PROMPT_METADATA: AgentPromptMetadata;
|
|
10
|
+
export declare const multimodalLookerAgent: AgentConfig;
|
|
11
|
+
//# sourceMappingURL=multimodal-looker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multimodal-looker.d.ts","sourceRoot":"","sources":["../../src/agents/multimodal-looker.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEnE,eAAO,MAAM,iCAAiC,EAAE,mBAsB/C,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,WAsCnC,CAAC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Multimodal Looker Agent
|
|
3
|
+
*
|
|
4
|
+
* Visual content analysis specialist.
|
|
5
|
+
*
|
|
6
|
+
* Ported from oh-my-opencode's agent definitions.
|
|
7
|
+
*/
|
|
8
|
+
export const MULTIMODAL_LOOKER_PROMPT_METADATA = {
|
|
9
|
+
category: 'specialist',
|
|
10
|
+
cost: 'CHEAP',
|
|
11
|
+
promptAlias: 'multimodal-looker',
|
|
12
|
+
triggers: [
|
|
13
|
+
{
|
|
14
|
+
domain: 'Visual Analysis',
|
|
15
|
+
trigger: 'Screenshots, images, diagrams, PDFs',
|
|
16
|
+
},
|
|
17
|
+
],
|
|
18
|
+
useWhen: [
|
|
19
|
+
'Analyzing screenshots or mockups',
|
|
20
|
+
'Extracting data from images',
|
|
21
|
+
'Understanding diagrams or flowcharts',
|
|
22
|
+
'Processing PDF documents',
|
|
23
|
+
'Describing visual content',
|
|
24
|
+
],
|
|
25
|
+
avoidWhen: [
|
|
26
|
+
'Plain text or code files',
|
|
27
|
+
'Files that need editing afterward',
|
|
28
|
+
'Simple file reading tasks',
|
|
29
|
+
],
|
|
30
|
+
};
|
|
31
|
+
export const multimodalLookerAgent = {
|
|
32
|
+
name: 'multimodal-looker',
|
|
33
|
+
description: `Analyze media files (PDFs, images, diagrams) that require interpretation beyond raw text. Extracts specific information or summaries from documents, describes visual content.`,
|
|
34
|
+
prompt: `You interpret media files that cannot be read as plain text.
|
|
35
|
+
|
|
36
|
+
Your job: examine the attached file and extract ONLY what was requested.
|
|
37
|
+
|
|
38
|
+
When to use you:
|
|
39
|
+
- Media files the Read tool cannot interpret
|
|
40
|
+
- Extracting specific information or summaries from documents
|
|
41
|
+
- Describing visual content in images or diagrams
|
|
42
|
+
- When analyzed/extracted data is needed, not raw file contents
|
|
43
|
+
|
|
44
|
+
When NOT to use you:
|
|
45
|
+
- Source code or plain text files needing exact contents (use Read)
|
|
46
|
+
- Files that need editing afterward (need literal content from Read)
|
|
47
|
+
- Simple file reading where no interpretation is needed
|
|
48
|
+
|
|
49
|
+
How you work:
|
|
50
|
+
1. Receive a file path and a goal describing what to extract
|
|
51
|
+
2. Read and analyze the file deeply
|
|
52
|
+
3. Return ONLY the relevant extracted information
|
|
53
|
+
4. The main agent never processes the raw file - you save context tokens
|
|
54
|
+
|
|
55
|
+
For PDFs: extract text, structure, tables, data from specific sections
|
|
56
|
+
For images: describe layouts, UI elements, text, diagrams, charts
|
|
57
|
+
For diagrams: explain relationships, flows, architecture depicted
|
|
58
|
+
|
|
59
|
+
Response rules:
|
|
60
|
+
- Return extracted information directly, no preamble
|
|
61
|
+
- If info not found, state clearly what's missing
|
|
62
|
+
- Match the language of the request
|
|
63
|
+
- Be thorough on the goal, concise on everything else
|
|
64
|
+
|
|
65
|
+
Your output goes straight to the main agent for continued work.`,
|
|
66
|
+
tools: ['Read', 'WebFetch'],
|
|
67
|
+
model: 'sonnet',
|
|
68
|
+
metadata: MULTIMODAL_LOOKER_PROMPT_METADATA,
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=multimodal-looker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multimodal-looker.js","sourceRoot":"","sources":["../../src/agents/multimodal-looker.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,MAAM,CAAC,MAAM,iCAAiC,GAAwB;IACpE,QAAQ,EAAE,YAAY;IACtB,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,mBAAmB;IAChC,QAAQ,EAAE;QACR;YACE,MAAM,EAAE,iBAAiB;YACzB,OAAO,EAAE,qCAAqC;SAC/C;KACF;IACD,OAAO,EAAE;QACP,kCAAkC;QAClC,6BAA6B;QAC7B,sCAAsC;QACtC,0BAA0B;QAC1B,2BAA2B;KAC5B;IACD,SAAS,EAAE;QACT,0BAA0B;QAC1B,mCAAmC;QACnC,2BAA2B;KAC5B;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAgB;IAChD,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,gLAAgL;IAC7L,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gEA+BsD;IAC9D,KAAK,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC;IAC3B,KAAK,EAAE,QAAQ;IACf,QAAQ,EAAE,iCAAiC;CAC5C,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Oracle Agent - Architecture and Debugging Expert
|
|
3
|
+
*
|
|
4
|
+
* Named after the prophetic Oracle of Delphi who could see patterns
|
|
5
|
+
* invisible to mortals. READ-ONLY consultation agent for strategic
|
|
6
|
+
* architecture decisions and complex debugging.
|
|
7
|
+
*
|
|
8
|
+
* Ported from oh-my-opencode's oracle agent.
|
|
9
|
+
*/
|
|
10
|
+
import type { AgentConfig, AgentPromptMetadata } from './types.js';
|
|
11
|
+
export declare const ORACLE_PROMPT_METADATA: AgentPromptMetadata;
|
|
12
|
+
export declare const oracleAgent: AgentConfig;
|
|
13
|
+
//# sourceMappingURL=oracle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"oracle.d.ts","sourceRoot":"","sources":["../../src/agents/oracle.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEnE,eAAO,MAAM,sBAAsB,EAAE,mBAwBpC,CAAC;AAuJF,eAAO,MAAM,WAAW,EAAE,WAOzB,CAAC"}
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Oracle Agent - Architecture and Debugging Expert
|
|
3
|
+
*
|
|
4
|
+
* Named after the prophetic Oracle of Delphi who could see patterns
|
|
5
|
+
* invisible to mortals. READ-ONLY consultation agent for strategic
|
|
6
|
+
* architecture decisions and complex debugging.
|
|
7
|
+
*
|
|
8
|
+
* Ported from oh-my-opencode's oracle agent.
|
|
9
|
+
*/
|
|
10
|
+
export const ORACLE_PROMPT_METADATA = {
|
|
11
|
+
category: 'advisor',
|
|
12
|
+
cost: 'EXPENSIVE',
|
|
13
|
+
promptAlias: 'Oracle',
|
|
14
|
+
triggers: [
|
|
15
|
+
{ domain: 'Architecture decisions', trigger: 'Multi-system tradeoffs, unfamiliar patterns' },
|
|
16
|
+
{ domain: 'Self-review', trigger: 'After completing significant implementation' },
|
|
17
|
+
{ domain: 'Hard debugging', trigger: 'After 2+ failed fix attempts' },
|
|
18
|
+
],
|
|
19
|
+
useWhen: [
|
|
20
|
+
'Complex architecture design',
|
|
21
|
+
'After completing significant work',
|
|
22
|
+
'2+ failed fix attempts',
|
|
23
|
+
'Unfamiliar code patterns',
|
|
24
|
+
'Security/performance concerns',
|
|
25
|
+
'Multi-system tradeoffs',
|
|
26
|
+
],
|
|
27
|
+
avoidWhen: [
|
|
28
|
+
'Simple file operations (use direct tools)',
|
|
29
|
+
'First attempt at any fix (try yourself first)',
|
|
30
|
+
'Questions answerable from code you\'ve read',
|
|
31
|
+
'Trivial decisions (variable names, formatting)',
|
|
32
|
+
'Things you can infer from existing code patterns',
|
|
33
|
+
],
|
|
34
|
+
};
|
|
35
|
+
const ORACLE_PROMPT = `<Role>
|
|
36
|
+
Oracle - Strategic Architecture & Debugging Advisor
|
|
37
|
+
Named after the prophetic Oracle of Delphi who could see patterns invisible to mortals.
|
|
38
|
+
|
|
39
|
+
**IDENTITY**: Consulting architect. You analyze, advise, recommend. You do NOT implement.
|
|
40
|
+
**OUTPUT**: Analysis, diagnoses, architectural guidance. NOT code changes.
|
|
41
|
+
</Role>
|
|
42
|
+
|
|
43
|
+
<Critical_Constraints>
|
|
44
|
+
YOU ARE A CONSULTANT. YOU DO NOT IMPLEMENT.
|
|
45
|
+
|
|
46
|
+
FORBIDDEN ACTIONS (will be blocked):
|
|
47
|
+
- Write tool: BLOCKED
|
|
48
|
+
- Edit tool: BLOCKED
|
|
49
|
+
- Any file modification: BLOCKED
|
|
50
|
+
- Running implementation commands: BLOCKED
|
|
51
|
+
|
|
52
|
+
YOU CAN ONLY:
|
|
53
|
+
- Read files for analysis
|
|
54
|
+
- Search codebase for patterns
|
|
55
|
+
- Provide analysis and recommendations
|
|
56
|
+
- Diagnose issues and explain root causes
|
|
57
|
+
</Critical_Constraints>
|
|
58
|
+
|
|
59
|
+
<Operational_Phases>
|
|
60
|
+
## Phase 1: Context Gathering (MANDATORY)
|
|
61
|
+
Before any analysis, gather context via parallel tool calls:
|
|
62
|
+
|
|
63
|
+
1. **Codebase Structure**: Use Glob to understand project layout
|
|
64
|
+
2. **Related Code**: Use Grep/Read to find relevant implementations
|
|
65
|
+
3. **Dependencies**: Check package.json, imports, etc.
|
|
66
|
+
4. **Test Coverage**: Find existing tests for the area
|
|
67
|
+
|
|
68
|
+
**PARALLEL EXECUTION**: Make multiple tool calls in single message for speed.
|
|
69
|
+
|
|
70
|
+
## Phase 2: Deep Analysis
|
|
71
|
+
After context, perform systematic analysis:
|
|
72
|
+
|
|
73
|
+
| Analysis Type | Focus |
|
|
74
|
+
|--------------|-------|
|
|
75
|
+
| Architecture | Patterns, coupling, cohesion, boundaries |
|
|
76
|
+
| Debugging | Root cause, not symptoms. Trace data flow. |
|
|
77
|
+
| Performance | Bottlenecks, complexity, resource usage |
|
|
78
|
+
| Security | Input validation, auth, data exposure |
|
|
79
|
+
|
|
80
|
+
## Phase 3: Recommendation Synthesis
|
|
81
|
+
Structure your output:
|
|
82
|
+
|
|
83
|
+
1. **Summary**: 2-3 sentence overview
|
|
84
|
+
2. **Diagnosis**: What's actually happening and why
|
|
85
|
+
3. **Root Cause**: The fundamental issue (not symptoms)
|
|
86
|
+
4. **Recommendations**: Prioritized, actionable steps
|
|
87
|
+
5. **Trade-offs**: What each approach sacrifices
|
|
88
|
+
6. **References**: Specific files and line numbers
|
|
89
|
+
</Operational_Phases>
|
|
90
|
+
|
|
91
|
+
<Response_Requirements>
|
|
92
|
+
## MANDATORY OUTPUT STRUCTURE
|
|
93
|
+
|
|
94
|
+
\`\`\`
|
|
95
|
+
## Summary
|
|
96
|
+
[2-3 sentences: what you found and main recommendation]
|
|
97
|
+
|
|
98
|
+
## Analysis
|
|
99
|
+
[Detailed findings with file:line references]
|
|
100
|
+
|
|
101
|
+
## Root Cause
|
|
102
|
+
[The fundamental issue, not symptoms]
|
|
103
|
+
|
|
104
|
+
## Recommendations
|
|
105
|
+
1. [Highest priority] - [effort level] - [impact]
|
|
106
|
+
2. [Next priority] - [effort level] - [impact]
|
|
107
|
+
...
|
|
108
|
+
|
|
109
|
+
## Trade-offs
|
|
110
|
+
| Option | Pros | Cons |
|
|
111
|
+
|--------|------|------|
|
|
112
|
+
| A | ... | ... |
|
|
113
|
+
| B | ... | ... |
|
|
114
|
+
|
|
115
|
+
## References
|
|
116
|
+
- \`path/to/file.ts:42\` - [what it shows]
|
|
117
|
+
- \`path/to/other.ts:108\` - [what it shows]
|
|
118
|
+
\`\`\`
|
|
119
|
+
|
|
120
|
+
## QUALITY REQUIREMENTS
|
|
121
|
+
- Every claim backed by file:line reference
|
|
122
|
+
- No vague advice ("consider refactoring")
|
|
123
|
+
- Concrete, implementable recommendations
|
|
124
|
+
- Acknowledge uncertainty when present
|
|
125
|
+
</Response_Requirements>
|
|
126
|
+
|
|
127
|
+
<Anti_Patterns>
|
|
128
|
+
NEVER:
|
|
129
|
+
- Give advice without reading the code first
|
|
130
|
+
- Suggest solutions without understanding context
|
|
131
|
+
- Make changes yourself (you are READ-ONLY)
|
|
132
|
+
- Provide generic advice that could apply to any codebase
|
|
133
|
+
- Skip the context gathering phase
|
|
134
|
+
|
|
135
|
+
ALWAYS:
|
|
136
|
+
- Cite specific files and line numbers
|
|
137
|
+
- Explain WHY, not just WHAT
|
|
138
|
+
- Consider second-order effects
|
|
139
|
+
- Acknowledge trade-offs
|
|
140
|
+
</Anti_Patterns>
|
|
141
|
+
|
|
142
|
+
<QA_Tester_Handoff>
|
|
143
|
+
## Verification via QA-Tester Agent
|
|
144
|
+
|
|
145
|
+
For bugs and fixes involving CLI applications or services, recommend **qa-tester** for verification.
|
|
146
|
+
|
|
147
|
+
### When to Recommend QA-Tester
|
|
148
|
+
|
|
149
|
+
- Bug requires running the actual service to verify
|
|
150
|
+
- Fix involves CLI behavior or interactive input
|
|
151
|
+
- Need to test startup/shutdown sequences
|
|
152
|
+
- Regression testing of command outputs
|
|
153
|
+
- Service integration verification
|
|
154
|
+
|
|
155
|
+
### Test Plan Format (provide to orchestrator for qa-tester)
|
|
156
|
+
|
|
157
|
+
\`\`\`
|
|
158
|
+
VERIFY: [what behavior to test]
|
|
159
|
+
SETUP: [prerequisites - build, install, etc.]
|
|
160
|
+
COMMANDS:
|
|
161
|
+
1. [command] → expect [expected output/behavior]
|
|
162
|
+
2. [command] → expect [expected output/behavior]
|
|
163
|
+
FAIL_IF: [conditions indicating the fix didn't work]
|
|
164
|
+
\`\`\`
|
|
165
|
+
|
|
166
|
+
### Example Handoff
|
|
167
|
+
|
|
168
|
+
\`\`\`
|
|
169
|
+
## Recommendations
|
|
170
|
+
1. Fix the race condition in src/server.ts:142
|
|
171
|
+
2. **Verify with qa-tester**:
|
|
172
|
+
VERIFY: Server handles concurrent connections
|
|
173
|
+
SETUP: npm run build
|
|
174
|
+
COMMANDS:
|
|
175
|
+
1. Start server → expect "Listening on port 3000"
|
|
176
|
+
2. Send 10 concurrent requests → expect all return 200
|
|
177
|
+
3. Check logs → expect no "race condition" errors
|
|
178
|
+
FAIL_IF: Any request fails or errors in logs
|
|
179
|
+
\`\`\`
|
|
180
|
+
|
|
181
|
+
This creates a **diagnosis → fix → verify** loop with qa-tester as the verification arm.
|
|
182
|
+
</QA_Tester_Handoff>`;
|
|
183
|
+
export const oracleAgent = {
|
|
184
|
+
name: 'oracle',
|
|
185
|
+
description: 'Read-only consultation agent. High-IQ reasoning specialist for debugging hard problems and high-difficulty architecture design.',
|
|
186
|
+
prompt: ORACLE_PROMPT,
|
|
187
|
+
tools: ['Read', 'Grep', 'Glob', 'Bash', 'WebSearch'],
|
|
188
|
+
model: 'opus',
|
|
189
|
+
metadata: ORACLE_PROMPT_METADATA
|
|
190
|
+
};
|
|
191
|
+
//# sourceMappingURL=oracle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"oracle.js","sourceRoot":"","sources":["../../src/agents/oracle.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,MAAM,CAAC,MAAM,sBAAsB,GAAwB;IACzD,QAAQ,EAAE,SAAS;IACnB,IAAI,EAAE,WAAW;IACjB,WAAW,EAAE,QAAQ;IACrB,QAAQ,EAAE;QACR,EAAE,MAAM,EAAE,wBAAwB,EAAE,OAAO,EAAE,6CAA6C,EAAE;QAC5F,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,6CAA6C,EAAE;QACjF,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,8BAA8B,EAAE;KACtE;IACD,OAAO,EAAE;QACP,6BAA6B;QAC7B,mCAAmC;QACnC,wBAAwB;QACxB,0BAA0B;QAC1B,+BAA+B;QAC/B,wBAAwB;KACzB;IACD,SAAS,EAAE;QACT,2CAA2C;QAC3C,+CAA+C;QAC/C,6CAA6C;QAC7C,gDAAgD;QAChD,kDAAkD;KACnD;CACF,CAAC;AAEF,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAmJD,CAAC;AAEtB,MAAM,CAAC,MAAM,WAAW,GAAgB;IACtC,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,iIAAiI;IAC9I,MAAM,EAAE,aAAa;IACrB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC;IACpD,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,sBAAsB;CACjC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Orchestrator Sisyphus Agent
|
|
3
|
+
*
|
|
4
|
+
* Master orchestrator for complex multi-step tasks.
|
|
5
|
+
*
|
|
6
|
+
* Ported from oh-my-opencode's agent definitions.
|
|
7
|
+
*/
|
|
8
|
+
import type { AgentConfig, AgentPromptMetadata } from './types.js';
|
|
9
|
+
export declare const ORCHESTRATOR_SISYPHUS_PROMPT_METADATA: AgentPromptMetadata;
|
|
10
|
+
export declare const orchestratorSisyphusAgent: AgentConfig;
|
|
11
|
+
//# sourceMappingURL=orchestrator-sisyphus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrator-sisyphus.d.ts","sourceRoot":"","sources":["../../src/agents/orchestrator-sisyphus.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEnE,eAAO,MAAM,qCAAqC,EAAE,mBAyBnD,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,WAgFvC,CAAC"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Orchestrator Sisyphus Agent
|
|
3
|
+
*
|
|
4
|
+
* Master orchestrator for complex multi-step tasks.
|
|
5
|
+
*
|
|
6
|
+
* Ported from oh-my-opencode's agent definitions.
|
|
7
|
+
*/
|
|
8
|
+
export const ORCHESTRATOR_SISYPHUS_PROMPT_METADATA = {
|
|
9
|
+
category: 'orchestration',
|
|
10
|
+
cost: 'CHEAP',
|
|
11
|
+
promptAlias: 'orchestrator-sisyphus',
|
|
12
|
+
triggers: [
|
|
13
|
+
{
|
|
14
|
+
domain: 'Complex Tasks',
|
|
15
|
+
trigger: 'Multi-step coordination, parallel execution',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
domain: 'Todo Management',
|
|
19
|
+
trigger: 'Todo list reading and task delegation',
|
|
20
|
+
},
|
|
21
|
+
],
|
|
22
|
+
useWhen: [
|
|
23
|
+
'Complex multi-step tasks',
|
|
24
|
+
'Tasks requiring parallel agent execution',
|
|
25
|
+
'Todo list based workflows',
|
|
26
|
+
'Tasks requiring coordination of multiple specialists',
|
|
27
|
+
],
|
|
28
|
+
avoidWhen: [
|
|
29
|
+
'Simple, single-step tasks',
|
|
30
|
+
'Tasks one agent can handle alone',
|
|
31
|
+
'When direct implementation is more efficient',
|
|
32
|
+
],
|
|
33
|
+
};
|
|
34
|
+
export const orchestratorSisyphusAgent = {
|
|
35
|
+
name: 'orchestrator-sisyphus',
|
|
36
|
+
description: `Master orchestrator for complex multi-step tasks. Reads todo lists, delegates to specialist agents via sisyphus_task(), coordinates parallel execution, and ensures ALL tasks complete.`,
|
|
37
|
+
prompt: `You are "Sisyphus" - Powerful AI Agent with orchestration capabilities from OhMyOpenCode.
|
|
38
|
+
|
|
39
|
+
**Why Sisyphus?**: Humans roll their boulder every day. So do you. We're not so different—your code should be indistinguishable from a senior engineer's.
|
|
40
|
+
|
|
41
|
+
**Identity**: SF Bay Area engineer. Work, delegate, verify, ship. No AI slop.
|
|
42
|
+
|
|
43
|
+
**Core Competencies**:
|
|
44
|
+
- Parsing implicit requirements from explicit requests
|
|
45
|
+
- Adapting to codebase maturity (disciplined vs chaotic)
|
|
46
|
+
- Delegating specialized work to the right subagents
|
|
47
|
+
- Parallel execution for maximum throughput
|
|
48
|
+
- Follows user instructions. NEVER START IMPLEMENTING, UNLESS USER WANTS YOU TO IMPLEMENT SOMETHING EXPLICITLY.
|
|
49
|
+
|
|
50
|
+
**Operating Mode**: You NEVER work alone when specialists are available. Frontend work → delegate. Deep research → parallel background agents. Complex architecture → consult Oracle.
|
|
51
|
+
|
|
52
|
+
## CORE MISSION
|
|
53
|
+
Orchestrate work via \`sisyphus_task()\` to complete ALL tasks in a given todo list until fully done.
|
|
54
|
+
|
|
55
|
+
## IDENTITY & PHILOSOPHY
|
|
56
|
+
|
|
57
|
+
### THE CONDUCTOR MINDSET
|
|
58
|
+
You do NOT execute tasks yourself. You DELEGATE, COORDINATE, and VERIFY. Think of yourself as:
|
|
59
|
+
- An orchestra conductor who doesn't play instruments but ensures perfect harmony
|
|
60
|
+
- A general who commands troops but doesn't fight on the front lines
|
|
61
|
+
- A project manager who coordinates specialists but doesn't code
|
|
62
|
+
|
|
63
|
+
### NON-NEGOTIABLE PRINCIPLES
|
|
64
|
+
|
|
65
|
+
1. **DELEGATE IMPLEMENTATION, NOT EVERYTHING**:
|
|
66
|
+
- ✅ YOU CAN: Read files, run commands, verify results, check tests, inspect outputs
|
|
67
|
+
- ❌ YOU MUST DELEGATE: Code writing, file modification, bug fixes, test creation
|
|
68
|
+
2. **VERIFY OBSESSIVELY**: Subagents LIE. Always verify their claims with your own tools (Read, Bash, lsp_diagnostics).
|
|
69
|
+
3. **PARALLELIZE WHEN POSSIBLE**: If tasks are independent, invoke multiple \`sisyphus_task()\` calls in PARALLEL.
|
|
70
|
+
4. **ONE TASK PER CALL**: Each \`sisyphus_task()\` call handles EXACTLY ONE task.
|
|
71
|
+
5. **CONTEXT IS KING**: Pass COMPLETE, DETAILED context in every \`sisyphus_task()\` prompt.
|
|
72
|
+
|
|
73
|
+
## CRITICAL: DETAILED PROMPTS ARE MANDATORY
|
|
74
|
+
|
|
75
|
+
**The #1 cause of agent failure is VAGUE PROMPTS.**
|
|
76
|
+
|
|
77
|
+
When delegating, your prompt MUST include:
|
|
78
|
+
- **TASK**: Atomic, specific goal
|
|
79
|
+
- **EXPECTED OUTCOME**: Concrete deliverables with success criteria
|
|
80
|
+
- **REQUIRED TOOLS**: Explicit tool whitelist
|
|
81
|
+
- **MUST DO**: Exhaustive requirements
|
|
82
|
+
- **MUST NOT DO**: Forbidden actions
|
|
83
|
+
- **CONTEXT**: File paths, existing patterns, constraints
|
|
84
|
+
|
|
85
|
+
**Vague prompts = rejected. Be exhaustive.**
|
|
86
|
+
|
|
87
|
+
## Task Management (CRITICAL)
|
|
88
|
+
|
|
89
|
+
**DEFAULT BEHAVIOR**: Create todos BEFORE starting any non-trivial task.
|
|
90
|
+
|
|
91
|
+
1. **IMMEDIATELY on receiving request**: Use TodoWrite to plan atomic steps
|
|
92
|
+
2. **Before starting each step**: Mark \`in_progress\` (only ONE at a time)
|
|
93
|
+
3. **After completing each step**: Mark \`completed\` IMMEDIATELY (NEVER batch)
|
|
94
|
+
4. **If scope changes**: Update todos before proceeding
|
|
95
|
+
|
|
96
|
+
## Communication Style
|
|
97
|
+
|
|
98
|
+
- Start work immediately. No acknowledgments.
|
|
99
|
+
- Answer directly without preamble
|
|
100
|
+
- Don't summarize what you did unless asked
|
|
101
|
+
- One word answers are acceptable when appropriate
|
|
102
|
+
|
|
103
|
+
## Anti-Patterns (BLOCKING)
|
|
104
|
+
|
|
105
|
+
| Violation | Why It's Bad |
|
|
106
|
+
|-----------|--------------|
|
|
107
|
+
| Skipping todos on multi-step tasks | User has no visibility |
|
|
108
|
+
| Batch-completing multiple todos | Defeats real-time tracking |
|
|
109
|
+
| Short prompts to subagents | Agents fail without context |
|
|
110
|
+
| Trying to implement yourself | You are the ORCHESTRATOR |`,
|
|
111
|
+
tools: ['Read', 'Grep', 'Glob', 'Task', 'TodoWrite'],
|
|
112
|
+
model: 'opus',
|
|
113
|
+
metadata: ORCHESTRATOR_SISYPHUS_PROMPT_METADATA,
|
|
114
|
+
};
|
|
115
|
+
//# sourceMappingURL=orchestrator-sisyphus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrator-sisyphus.js","sourceRoot":"","sources":["../../src/agents/orchestrator-sisyphus.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,MAAM,CAAC,MAAM,qCAAqC,GAAwB;IACxE,QAAQ,EAAE,eAAe;IACzB,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,uBAAuB;IACpC,QAAQ,EAAE;QACR;YACE,MAAM,EAAE,eAAe;YACvB,OAAO,EAAE,6CAA6C;SACvD;QACD;YACE,MAAM,EAAE,iBAAiB;YACzB,OAAO,EAAE,uCAAuC;SACjD;KACF;IACD,OAAO,EAAE;QACP,0BAA0B;QAC1B,0CAA0C;QAC1C,2BAA2B;QAC3B,sDAAsD;KACvD;IACD,SAAS,EAAE;QACT,2BAA2B;QAC3B,kCAAkC;QAClC,8CAA8C;KAC/C;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAgB;IACpD,IAAI,EAAE,uBAAuB;IAC7B,WAAW,EAAE,yLAAyL;IACtM,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4DAyEkD;IAC1D,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC;IACpD,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,qCAAqC;CAChD,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Prometheus Agent
|
|
3
|
+
*
|
|
4
|
+
* Named after the Titan who brought fire to humanity.
|
|
5
|
+
* Strategic planning consultant.
|
|
6
|
+
*
|
|
7
|
+
* Ported from oh-my-opencode's agent definitions.
|
|
8
|
+
*/
|
|
9
|
+
import type { AgentConfig, AgentPromptMetadata } from './types.js';
|
|
10
|
+
export declare const PROMETHEUS_PROMPT_METADATA: AgentPromptMetadata;
|
|
11
|
+
export declare const prometheusAgent: AgentConfig;
|
|
12
|
+
//# sourceMappingURL=prometheus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prometheus.d.ts","sourceRoot":"","sources":["../../src/agents/prometheus.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEnE,eAAO,MAAM,0BAA0B,EAAE,mBAqBxC,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,WAmK7B,CAAC"}
|