@ralph-orchestrator/ralph-cli 2.1.2 → 2.2.0

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 CHANGED
@@ -69,7 +69,9 @@ See [AGENTS.md](AGENTS.md) for the full philosophy.
69
69
  - **Event-Driven Coordination** — Hats communicate through typed events with glob pattern matching
70
70
  - **Backpressure Enforcement** — Gates that reject incomplete work (tests, lint, typecheck)
71
71
  - **Presets Library** — 20+ pre-configured workflows for common development patterns
72
- - **Interactive TUI** — Real-time terminal UI for monitoring Ralph's activity (experimental)
72
+ - **Interactive TUI** — Real-time terminal UI for monitoring Ralph's activity (enabled by default)
73
+ - **Memories** — Persistent learning across sessions stored in `.agent/memories.md`
74
+ - **Tasks** — Runtime work tracking stored in `.agent/tasks.jsonl`
73
75
  - **Session Recording** — Record and replay sessions for debugging and testing (experimental)
74
76
 
75
77
  ## Installation
@@ -195,17 +197,17 @@ ralph run -p "Add input validation to the user API endpoints"
195
197
  ### 3. Run Ralph
196
198
 
197
199
  ```bash
198
- # Autonomous mode (headless, default)
200
+ # TUI mode (default) — real-time terminal UI for monitoring
199
201
  ralph run
200
202
 
201
203
  # With inline prompt
202
204
  ralph run -p "Implement the login endpoint with JWT authentication"
203
205
 
204
- # TUI mode (experimental)
205
- ralph run --tui
206
+ # Headless mode (no TUI)
207
+ ralph run --no-tui
206
208
 
207
209
  # Resume interrupted session
208
- ralph resume
210
+ ralph run --continue
209
211
 
210
212
  # Dry run (show what would execute)
211
213
  ralph run --dry-run
@@ -303,6 +305,15 @@ core:
303
305
  - "Don't assume 'not implemented' - search first"
304
306
  - "Backpressure is law - tests/typecheck/lint must pass"
305
307
 
308
+ # Memories — persistent learning across sessions (enabled by default)
309
+ memories:
310
+ enabled: true # Set false to disable
311
+ inject: auto # auto, manual, or none
312
+
313
+ # Tasks — runtime work tracking (enabled by default)
314
+ tasks:
315
+ enabled: true # Set false to use scratchpad-only mode
316
+
306
317
  # Custom hats (omit to use default planner/builder)
307
318
  hats:
308
319
  my_hat:
@@ -396,9 +407,26 @@ View event history:
396
407
  ralph events
397
408
  ```
398
409
 
399
- ### Scratchpad
410
+ ### Memories and Tasks
411
+
412
+ Ralph uses two complementary systems for persistent state (both enabled by default):
413
+
414
+ **Memories** (`.agent/memories.md`) — Accumulated wisdom across sessions:
415
+ - Codebase patterns and conventions discovered
416
+ - Architectural decisions and rationale
417
+ - Recurring problem solutions (fixes)
418
+ - Project-specific context
419
+
420
+ **Tasks** (`.agent/tasks.jsonl`) — Runtime work tracking:
421
+ - Create, list, and close tasks during orchestration
422
+ - Track dependencies between tasks
423
+ - Used for loop completion verification
424
+
425
+ When memories and tasks are enabled, they replace the scratchpad for state management. Set `memories.enabled: false` and `tasks.enabled: false` to use the legacy scratchpad-only mode.
400
426
 
401
- All hats share `.agent/scratchpad.md` — persistent memory across iterations. This enables hats to build on previous work rather than starting fresh.
427
+ ### Scratchpad (Legacy Mode)
428
+
429
+ When memories/tasks are disabled, all hats share `.agent/scratchpad.md` — persistent memory across iterations. This enables hats to build on previous work rather than starting fresh.
402
430
 
403
431
  The scratchpad is the primary mechanism for:
404
432
  - Task tracking (with `[ ]`, `[x]`, `[~]` markers)
@@ -427,6 +455,7 @@ tests: pass, lint: pass, typecheck: pass
427
455
  | `ralph init` | Initialize configuration file |
428
456
  | `ralph clean` | Clean up `.agent/` directory |
429
457
  | `ralph emit` | Emit an event to the event log |
458
+ | `ralph tools` | Runtime tools for memories and tasks (agent-facing) |
430
459
 
431
460
  ### Global Options
432
461
 
@@ -445,11 +474,12 @@ tests: pass, lint: pass, typecheck: pass
445
474
  | `--max-iterations <N>` | Override max iterations |
446
475
  | `--completion-promise <TEXT>` | Override completion trigger |
447
476
  | `--dry-run` | Show what would execute |
448
- | `--tui` | Enable TUI mode (experimental) |
477
+ | `--no-tui` | Disable TUI mode (TUI is enabled by default) |
449
478
  | `-a, --autonomous` | Force headless mode |
450
479
  | `--idle-timeout <SECS>` | TUI idle timeout (default: 30) |
451
480
  | `--record-session <FILE>` | Record session to JSONL |
452
481
  | `-q, --quiet` | Suppress output (for CI) |
482
+ | `--continue` | Resume from existing scratchpad |
453
483
 
454
484
  ### `ralph init` Options
455
485
 
@@ -474,9 +504,29 @@ tests: pass, lint: pass, typecheck: pass
474
504
  | `<INPUT>` | Optional description text or path to PDD plan file |
475
505
  | `-b, --backend <BACKEND>` | Backend to use (overrides config and auto-detection) |
476
506
 
507
+ ### `ralph tools` Subcommands
508
+
509
+ The `tools` command provides agent-facing utilities for runtime state management:
510
+
511
+ ```bash
512
+ # Memory management (persistent learning)
513
+ ralph tools memory add "content" -t pattern --tags tag1,tag2
514
+ ralph tools memory search "query"
515
+ ralph tools memory list
516
+ ralph tools memory show <id>
517
+ ralph tools memory delete <id>
518
+
519
+ # Task management (runtime tracking)
520
+ ralph tools task add "Title" -p 2 # Create task (priority 1-5)
521
+ ralph tools task add "X" --blocked-by Y # With dependency
522
+ ralph tools task list # All tasks
523
+ ralph tools task ready # Unblocked tasks only
524
+ ralph tools task close <id> # Mark complete
525
+ ```
526
+
477
527
  ## Architecture
478
528
 
479
- Ralph is organized as a Cargo workspace with six crates:
529
+ Ralph is organized as a Cargo workspace with seven crates:
480
530
 
481
531
  | Crate | Purpose |
482
532
  |-------|---------|
@@ -485,6 +535,7 @@ Ralph is organized as a Cargo workspace with six crates:
485
535
  | `ralph-adapters` | CLI backend integrations (Claude, Kiro, Gemini, etc.) |
486
536
  | `ralph-tui` | Terminal UI with ratatui |
487
537
  | `ralph-cli` | Binary entry point and CLI parsing |
538
+ | `ralph-e2e` | End-to-end test harness for backend validation |
488
539
  | `ralph-bench` | Benchmarking harness (dev-only) |
489
540
 
490
541
  ## Building & Testing
@@ -23,7 +23,7 @@
23
23
  "hasInstallScript": true,
24
24
  "license": "MIT",
25
25
  "name": "@ralph-orchestrator/ralph-cli",
26
- "version": "2.1.2"
26
+ "version": "2.2.0"
27
27
  },
28
28
  "node_modules/@isaacs/balanced-match": {
29
29
  "engines": {
@@ -515,5 +515,5 @@
515
515
  }
516
516
  },
517
517
  "requires": true,
518
- "version": "2.1.2"
518
+ "version": "2.2.0"
519
519
  }
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "artifactDownloadUrl": "https://github.com/mikeyobrien/ralph-orchestrator/releases/download/v2.1.2",
2
+ "artifactDownloadUrl": "https://github.com/mikeyobrien/ralph-orchestrator/releases/download/v2.2.0",
3
3
  "bin": {
4
4
  "ralph": "run-ralph.js"
5
5
  },
@@ -62,7 +62,7 @@
62
62
  "zipExt": ".tar.xz"
63
63
  }
64
64
  },
65
- "version": "2.1.2",
65
+ "version": "2.2.0",
66
66
  "volta": {
67
67
  "node": "18.14.1",
68
68
  "npm": "9.5.0"