oh-my-claude-sisyphus 2.6.0 → 2.6.1
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/README.md +101 -24
- package/dist/cli/index.js +0 -0
- package/package.json +1 -1
- package/scripts/persistent-mode.mjs +30 -11
package/README.md
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|

|
|
4
4
|
|
|
5
|
-
# 🚀 v2.
|
|
5
|
+
# 🚀 v2.6.0 - Claude Code Native Multi-Agent Orchestration
|
|
6
6
|
|
|
7
|
-
[](https://github.com/Yeachan-Heo/oh-my-claude-sisyphus/releases)
|
|
8
8
|
[](https://www.npmjs.com/package/oh-my-claude-sisyphus)
|
|
9
9
|
[](https://www.npmjs.com/package/oh-my-claude-sisyphus)
|
|
10
10
|
[](https://github.com/Yeachan-Heo/oh-my-claude-sisyphus/stargazers)
|
|
@@ -19,8 +19,8 @@
|
|
|
19
19
|
[](https://github.com/Yeachan-Heo/oh-my-claude-sisyphus/pulls)
|
|
20
20
|
|
|
21
21
|
[](https://github.com/Yeachan-Heo/oh-my-claude-sisyphus)
|
|
22
|
-
[](https://github.com/Yeachan-Heo/oh-my-claude-sisyphus)
|
|
23
|
+
[](https://github.com/Yeachan-Heo/oh-my-claude-sisyphus)
|
|
24
24
|
[](https://github.com/Yeachan-Heo/oh-my-claude-sisyphus)
|
|
25
25
|
[](https://github.com/Yeachan-Heo/oh-my-claude-sisyphus)
|
|
26
26
|
|
|
@@ -34,20 +34,52 @@
|
|
|
34
34
|
|
|
35
35
|
---
|
|
36
36
|
|
|
37
|
-
## ⚡ NEW in 2.
|
|
37
|
+
## ⚡ NEW in 2.6: Compaction-Resilient Memory & Structured Task Tracking
|
|
38
38
|
|
|
39
|
-
**
|
|
39
|
+
**Game-changing release:** Claude never forgets critical project knowledge, even through context compaction.
|
|
40
40
|
|
|
41
|
-
|
|
42
|
-
|-----------|-------|-----|
|
|
43
|
-
| "Where is auth?" | **Haiku** | Simple lookup - fast & cheap |
|
|
44
|
-
| "Add validation" | **Sonnet** | Module work - balanced |
|
|
45
|
-
| "Debug race condition" | **Opus** | Complex - needs deep reasoning |
|
|
41
|
+
### 🧠 Three-Tier Memory System
|
|
46
42
|
|
|
47
|
-
**
|
|
43
|
+
**The Problem:** Long sessions lose context through compaction. Critical discoveries vanish.
|
|
48
44
|
|
|
45
|
+
**The Solution:** Persistent notepad system that survives compaction:
|
|
46
|
+
|
|
47
|
+
| Tier | Purpose | Retention |
|
|
48
|
+
|------|---------|-----------|
|
|
49
|
+
| **Priority Context** | Critical discoveries (API URLs, key files) | Always loaded on session start |
|
|
50
|
+
| **Working Memory** | Session notes with timestamps | Auto-pruned after 7 days |
|
|
51
|
+
| **MANUAL** | User permanent notes | Never pruned |
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
# Agents can persist discoveries automatically
|
|
55
|
+
<remember>Project uses pnpm not npm</remember>
|
|
56
|
+
<remember priority>API client at src/api/client.ts</remember>
|
|
57
|
+
|
|
58
|
+
# Or save notes manually
|
|
59
|
+
/note Database schema uses PostgreSQL with Prisma ORM
|
|
49
60
|
```
|
|
50
|
-
|
|
61
|
+
|
|
62
|
+
### 📋 Ralph Loop PRD Support
|
|
63
|
+
|
|
64
|
+
**Structured task tracking** inspired by [Ralph](https://github.com/snarktank/ralph):
|
|
65
|
+
|
|
66
|
+
- **Product Requirements Document (PRD)** format with user stories
|
|
67
|
+
- **Progress tracking** with learnings and patterns
|
|
68
|
+
- **Completion guarantee** - loop continues until ALL stories pass
|
|
69
|
+
- **Three powerful modes:**
|
|
70
|
+
- `/ralph-loop` - Self-referential loop until completion
|
|
71
|
+
- `/ultrawork-ralph` - Maximum intensity + completion guarantee
|
|
72
|
+
- `/ultraqa` - Autonomous test-verify-fix cycles
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
# Initialize a structured task
|
|
76
|
+
/ralph-init implement user authentication with OAuth
|
|
77
|
+
|
|
78
|
+
# Maximum intensity with completion guarantee
|
|
79
|
+
/ultrawork-ralph refactor the entire API layer
|
|
80
|
+
|
|
81
|
+
# Autonomous QA cycling
|
|
82
|
+
/ultraqa all tests must pass with 90%+ coverage
|
|
51
83
|
```
|
|
52
84
|
|
|
53
85
|
See [CHANGELOG.md](CHANGELOG.md) for full details.
|
|
@@ -254,15 +286,19 @@ claude
|
|
|
254
286
|
| `/sisyphus-default` | Configure Sisyphus for current project (./.claude/CLAUDE.md) |
|
|
255
287
|
| `/sisyphus-default-global` | Configure Sisyphus globally (~/.claude/CLAUDE.md) |
|
|
256
288
|
| `/ultrawork <task>` | Maximum performance mode with parallel agents |
|
|
289
|
+
| `/ralph-init <task>` | Initialize PRD (Product Requirements Document) for structured task tracking |
|
|
290
|
+
| `/ralph-loop <task>` | Self-referential loop until task completion |
|
|
291
|
+
| `/ultrawork-ralph <task>` | Maximum intensity + completion guarantee (ultrawork + ralph loop) |
|
|
292
|
+
| `/ultraqa <goal>` | Autonomous QA cycling workflow (test → verify → fix → repeat) |
|
|
293
|
+
| `/cancel-ralph` | Cancel active Ralph Loop (and ultrawork-ralph if active) |
|
|
294
|
+
| `/cancel-ultraqa` | Cancel active UltraQA cycling workflow |
|
|
295
|
+
| `/note <content>` | Save notes to notepad.md for compaction resilience |
|
|
257
296
|
| `/deepsearch <query>` | Thorough multi-strategy codebase search |
|
|
258
297
|
| `/deepinit [path]` | Index codebase with hierarchical AGENTS.md files |
|
|
259
298
|
| `/analyze <target>` | Deep analysis and investigation |
|
|
260
299
|
| `/plan <description>` | Start planning session with Prometheus |
|
|
261
300
|
| `/review [plan-path]` | Review a plan with Momus |
|
|
262
301
|
| `/prometheus <task>` | Strategic planning with interview workflow |
|
|
263
|
-
| `/orchestrator <task>` | Complex multi-step task coordination |
|
|
264
|
-
| `/ralph-loop <task>` | Self-referential loop until task completion |
|
|
265
|
-
| `/cancel-ralph` | Cancel active Ralph Loop |
|
|
266
302
|
| `/doctor` | Diagnose and fix installation issues |
|
|
267
303
|
|
|
268
304
|
### Examples
|
|
@@ -282,6 +318,18 @@ claude
|
|
|
282
318
|
# Use ultrawork for maximum performance
|
|
283
319
|
/ultrawork implement user dashboard with charts
|
|
284
320
|
|
|
321
|
+
# Initialize structured task with PRD
|
|
322
|
+
/ralph-init implement user authentication with OAuth
|
|
323
|
+
|
|
324
|
+
# Maximum intensity with completion guarantee
|
|
325
|
+
/ultrawork-ralph migrate database schema to PostgreSQL
|
|
326
|
+
|
|
327
|
+
# Autonomous QA cycling
|
|
328
|
+
/ultraqa all tests must pass with 90%+ coverage
|
|
329
|
+
|
|
330
|
+
# Save important discoveries
|
|
331
|
+
/note Project uses Bun runtime instead of Node.js
|
|
332
|
+
|
|
285
333
|
# Deep search
|
|
286
334
|
/deepsearch API endpoints that handle user data
|
|
287
335
|
|
|
@@ -325,7 +373,7 @@ To manually update, re-run the plugin install command or use Claude Code's built
|
|
|
325
373
|
|
|
326
374
|
## Hooks System
|
|
327
375
|
|
|
328
|
-
Oh-my-claude-sisyphus includes
|
|
376
|
+
Oh-my-claude-sisyphus includes 19 lifecycle hooks that enhance Claude Code's behavior:
|
|
329
377
|
|
|
330
378
|
### Core Hooks
|
|
331
379
|
|
|
@@ -337,6 +385,7 @@ Oh-my-claude-sisyphus includes 18 lifecycle hooks that enhance Claude Code's beh
|
|
|
337
385
|
| **keyword-detector** | Magic keyword detection (ultrawork, search, analyze) |
|
|
338
386
|
| **ralph-loop** | Self-referential development loop management |
|
|
339
387
|
| **todo-continuation** | Ensures todo list completion |
|
|
388
|
+
| **notepad** | Compaction-resilient memory system with three-tier storage |
|
|
340
389
|
|
|
341
390
|
### Context & Recovery
|
|
342
391
|
|
|
@@ -355,6 +404,7 @@ Oh-my-claude-sisyphus includes 18 lifecycle hooks that enhance Claude Code's beh
|
|
|
355
404
|
| **thinking-block-validator** | Extended thinking validation |
|
|
356
405
|
| **empty-message-sanitizer** | Empty message handling |
|
|
357
406
|
| **edit-error-recovery** | Automatic recovery from edit errors |
|
|
407
|
+
| **post-tool-use** | Remember tag auto-capture to notepad system |
|
|
358
408
|
|
|
359
409
|
### Environment & Notifications
|
|
360
410
|
|
|
@@ -368,18 +418,40 @@ Oh-my-claude-sisyphus includes 18 lifecycle hooks that enhance Claude Code's beh
|
|
|
368
418
|
|
|
369
419
|
## Builtin Skills
|
|
370
420
|
|
|
371
|
-
|
|
421
|
+
21 builtin skills provide specialized capabilities:
|
|
372
422
|
|
|
423
|
+
### Core Skills
|
|
373
424
|
| Skill | Description |
|
|
374
425
|
|-------|-------------|
|
|
375
426
|
| **sisyphus** | Multi-agent orchestration mode |
|
|
376
|
-
| **orchestrator** | Master coordinator for complex tasks |
|
|
377
427
|
| **ultrawork** | Maximum performance with parallel agents |
|
|
378
|
-
| **deepinit** | Hierarchical AGENTS.md codebase documentation |
|
|
379
428
|
| **ralph-loop** | Self-referential development until completion |
|
|
429
|
+
| **ralph-init** | Initialize PRD for structured task tracking |
|
|
430
|
+
| **ultrawork-ralph** | Maximum intensity + completion guarantee |
|
|
431
|
+
| **ultraqa** | Autonomous QA cycling workflow |
|
|
432
|
+
| **prometheus** | Strategic planning with interview workflow |
|
|
433
|
+
| **plan** | Start planning session |
|
|
434
|
+
| **review** | Review work plans with Momus |
|
|
435
|
+
|
|
436
|
+
### Enhancement Skills
|
|
437
|
+
| Skill | Description |
|
|
438
|
+
|-------|-------------|
|
|
439
|
+
| **deepinit** | Hierarchical AGENTS.md codebase documentation |
|
|
440
|
+
| **deepsearch** | Thorough multi-strategy codebase search |
|
|
441
|
+
| **analyze** | Deep analysis and investigation |
|
|
380
442
|
| **frontend-ui-ux** | Designer-turned-developer UI/UX expertise |
|
|
381
443
|
| **git-master** | Git expert for atomic commits and history |
|
|
444
|
+
|
|
445
|
+
### Utility Skills
|
|
446
|
+
| Skill | Description |
|
|
447
|
+
|-------|-------------|
|
|
448
|
+
| **note** | Save notes to compaction-resilient notepad |
|
|
449
|
+
| **cancel-ralph** | Cancel Ralph Loop or ultrawork-ralph |
|
|
450
|
+
| **cancel-ultraqa** | Cancel UltraQA cycling workflow |
|
|
451
|
+
| **sisyphus-default** | Configure Sisyphus for current project |
|
|
452
|
+
| **sisyphus-default-global** | Configure Sisyphus globally |
|
|
382
453
|
| **doctor** | Diagnose and fix installation issues |
|
|
454
|
+
| **release** | Automated release workflow |
|
|
383
455
|
|
|
384
456
|
Skills are automatically activated via slash commands or magic keywords.
|
|
385
457
|
|
|
@@ -662,11 +734,15 @@ The original oh-my-opencode used multiple AI providers. This project uses Claude
|
|
|
662
734
|
|
|
663
735
|
| Feature | Description |
|
|
664
736
|
|---------|-------------|
|
|
665
|
-
| **
|
|
666
|
-
| **
|
|
667
|
-
| **
|
|
737
|
+
| **19 Specialized Agents** | Oracle, Librarian, Explore, Frontend Engineer, Document Writer, Multimodal Looker, QA Tester, Momus, Metis, Orchestrator-Sisyphus, Sisyphus-Junior, Prometheus (+ tiered variants) |
|
|
738
|
+
| **19 Lifecycle Hooks** | rules-injector, sisyphus-orchestrator, auto-slash-command, keyword-detector, ralph-loop, todo-continuation, notepad, post-tool-use, context-window-limit-recovery, preemptive-compaction, session-recovery, directory-readme-injector, comment-checker, thinking-block-validator, empty-message-sanitizer, edit-error-recovery, non-interactive-env, agent-usage-reminder, background-notification |
|
|
739
|
+
| **21 Builtin Skills** | sisyphus, ultrawork, ralph-loop, ralph-init, ultrawork-ralph, ultraqa, prometheus, plan, review, deepinit, deepsearch, analyze, frontend-ui-ux, git-master, note, cancel-ralph, cancel-ultraqa, sisyphus-default, sisyphus-default-global, doctor, release |
|
|
668
740
|
| **Magic Keywords** | `ultrawork`, `search`, `analyze`, `ultrathink` trigger enhanced modes |
|
|
669
|
-
| **Slash Commands** | `/sisyphus`, `/sisyphus-default`, `/ultrawork`, `/deepsearch`, `/deepinit`, `/analyze`, `/plan`, `/review`, `/prometheus`, `/
|
|
741
|
+
| **Slash Commands** | `/sisyphus`, `/sisyphus-default`, `/sisyphus-default-global`, `/ultrawork`, `/ralph-init`, `/ralph-loop`, `/ultrawork-ralph`, `/ultraqa`, `/cancel-ralph`, `/cancel-ultraqa`, `/note`, `/deepsearch`, `/deepinit`, `/analyze`, `/plan`, `/review`, `/prometheus`, `/doctor` |
|
|
742
|
+
| **Compaction-Resilient Memory** | Three-tier notepad system (Priority Context, Working Memory, MANUAL) |
|
|
743
|
+
| **Remember Tag Auto-Capture** | Agents can persist discoveries with `<remember>` tags |
|
|
744
|
+
| **PRD Support** | Structured task tracking with user stories and acceptance criteria |
|
|
745
|
+
| **Progress Tracking** | Append-only progress log with learnings and patterns |
|
|
670
746
|
| **Auto-Update System** | Updates via Claude Code's plugin system |
|
|
671
747
|
| **Configuration System** | JSONC config with multi-source merging |
|
|
672
748
|
| **Context Injection** | Auto-loads CLAUDE.md and AGENTS.md files |
|
|
@@ -677,6 +753,7 @@ The original oh-my-opencode used multiple AI providers. This project uses Claude
|
|
|
677
753
|
| **MCP Server Configs** | Exa, Context7, grep.app server definitions |
|
|
678
754
|
| **LSP Tools** | Real LSP server integration with 11 tools |
|
|
679
755
|
| **AST Tools** | ast-grep integration for structural code search/replace |
|
|
756
|
+
| **Comprehensive Test Suite** | 358 tests covering all major features |
|
|
680
757
|
|
|
681
758
|
#### Not Implemented ❌
|
|
682
759
|
|
package/dist/cli/index.js
CHANGED
|
File without changes
|
package/package.json
CHANGED
|
@@ -7,9 +7,22 @@
|
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
import { existsSync, readFileSync, writeFileSync, readdirSync } from 'fs';
|
|
10
|
-
import { join } from 'path';
|
|
10
|
+
import { join, dirname } from 'path';
|
|
11
11
|
import { homedir } from 'os';
|
|
12
|
-
import {
|
|
12
|
+
import { fileURLToPath } from 'url';
|
|
13
|
+
|
|
14
|
+
// Dynamic import for notepad with fallback
|
|
15
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
16
|
+
const __dirname = dirname(__filename);
|
|
17
|
+
let pruneOldEntries = null;
|
|
18
|
+
|
|
19
|
+
try {
|
|
20
|
+
const notepadModule = await import(join(__dirname, '../dist/hooks/notepad/index.js'));
|
|
21
|
+
pruneOldEntries = notepadModule.pruneOldEntries;
|
|
22
|
+
} catch (err) {
|
|
23
|
+
// Notepad module not available - pruning will be skipped
|
|
24
|
+
// This can happen in older versions or if build failed
|
|
25
|
+
}
|
|
13
26
|
|
|
14
27
|
// Read all stdin
|
|
15
28
|
async function readStdin() {
|
|
@@ -178,9 +191,11 @@ async function main() {
|
|
|
178
191
|
if (prdStatus.hasPrd && prdStatus.allComplete) {
|
|
179
192
|
// Prune old notepad entries on clean session stop
|
|
180
193
|
try {
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
194
|
+
if (pruneOldEntries) {
|
|
195
|
+
const pruneResult = pruneOldEntries(directory, 7);
|
|
196
|
+
if (pruneResult.pruned > 0) {
|
|
197
|
+
// Optionally log: console.error(`Pruned ${pruneResult.pruned} old notepad entries`);
|
|
198
|
+
}
|
|
184
199
|
}
|
|
185
200
|
} catch (err) {
|
|
186
201
|
// Silently ignore prune errors
|
|
@@ -314,9 +329,11 @@ ${ralphState.prompt ? `Original task: ${ralphState.prompt}` : ''}
|
|
|
314
329
|
if (newCount > maxReinforcements) {
|
|
315
330
|
// Prune old notepad entries on clean session stop
|
|
316
331
|
try {
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
332
|
+
if (pruneOldEntries) {
|
|
333
|
+
const pruneResult = pruneOldEntries(directory, 7);
|
|
334
|
+
if (pruneResult.pruned > 0) {
|
|
335
|
+
// Optionally log: console.error(`Pruned ${pruneResult.pruned} old notepad entries`);
|
|
336
|
+
}
|
|
320
337
|
}
|
|
321
338
|
} catch (err) {
|
|
322
339
|
// Silently ignore prune errors
|
|
@@ -376,9 +393,11 @@ ${ultraworkState.original_prompt ? `Original task: ${ultraworkState.original_pro
|
|
|
376
393
|
if (contState.count > maxContinuations) {
|
|
377
394
|
// Prune old notepad entries on clean session stop
|
|
378
395
|
try {
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
396
|
+
if (pruneOldEntries) {
|
|
397
|
+
const pruneResult = pruneOldEntries(directory, 7);
|
|
398
|
+
if (pruneResult.pruned > 0) {
|
|
399
|
+
// Optionally log: console.error(`Pruned ${pruneResult.pruned} old notepad entries`);
|
|
400
|
+
}
|
|
382
401
|
}
|
|
383
402
|
} catch (err) {
|
|
384
403
|
// Silently ignore prune errors
|