@pageai/ralph-loop 1.17.0 → 1.20.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/.agent/STEERING.md +0 -2
- package/README.md +54 -1
- package/package.json +1 -1
- package/ralph.sh +1 -1
package/.agent/STEERING.md
CHANGED
|
@@ -29,8 +29,6 @@ This sandbox runs emulated aarch64 Linux. Apply as needed:
|
|
|
29
29
|
Fix: `rm -rf node_modules/<corrupt-pkg> && npm install --ignore-scripts`
|
|
30
30
|
Re-scan until clean. Only then start the dev server.
|
|
31
31
|
|
|
32
|
-
- **If using TanStack Start:** Check that `src/integrations/tanstack-query/root-provider.tsx` has a default export wrapping children with `QueryClientProvider`. The starter template ships without it, causing a 500 on load.
|
|
33
|
-
|
|
34
32
|
## Main Tasks
|
|
35
33
|
|
|
36
34
|
Install dependencies (using the sequence above), then install Playwright system dependencies: `sudo npx playwright install-deps chromium 2>&1`. Allow up to 10 minutes for tasks to complete.
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# A Ralph Wiggum Loop implementation that works™
|
|
2
2
|
|
|
3
|
-
[](https://
|
|
3
|
+
[](https://www.npmjs.com/package/@pageai/ralph-loop)
|
|
4
4
|
|
|
5
5
|
Ralph is a long-running AI agent loop. Ralph automates software development tasks by iteratively working through a task list until completion. This allows for long running agent loops, effectively enabling AI to code for days at a time.
|
|
6
6
|
|
|
@@ -25,6 +25,7 @@ This is an implementation that actually works, containing a hackable script so y
|
|
|
25
25
|
- [Promise Tags](#promise-tags)
|
|
26
26
|
- [Exit Codes](#exit-codes)
|
|
27
27
|
- [Structure](#structure)
|
|
28
|
+
- [Continued Development](#continued-development)
|
|
28
29
|
- [Skills](#skills)
|
|
29
30
|
- [Available Skills](#available-skills)
|
|
30
31
|
- [Skills Directory Structure](#skills-directory-structure)
|
|
@@ -33,6 +34,8 @@ This is an implementation that actually works, containing a hackable script so y
|
|
|
33
34
|
- [Vitest configuration](#vitest-configuration)
|
|
34
35
|
- [Running with a different agentic CLI](#running-with-a-different-agentic-cli)
|
|
35
36
|
- [Starting from scratch](#starting-from-scratch)
|
|
37
|
+
- [Debugging](#debugging)
|
|
38
|
+
- [How to inspect the sandbox and debug](#how-to-inspect-the-sandbox-and-debug)
|
|
36
39
|
- [License](#license)
|
|
37
40
|
|
|
38
41
|
---------------------------------
|
|
@@ -257,6 +260,24 @@ Ralph uses semantic tags to communicate status:
|
|
|
257
260
|
└── skills/ # Shared skills (source of truth)
|
|
258
261
|
```
|
|
259
262
|
|
|
263
|
+
## Continued Development
|
|
264
|
+
|
|
265
|
+
As Ralph implements tasks, you might notice that you want some tweaks, features or even bug fixes.<br/>
|
|
266
|
+
To do so, you need to continue using the `prd-creator` skill to update the PRD and task list.
|
|
267
|
+
|
|
268
|
+
For example:
|
|
269
|
+
|
|
270
|
+
```
|
|
271
|
+
I would like to expand the PRD. Use the prd-creator skill to create these tasks:
|
|
272
|
+
|
|
273
|
+
- there is a bug in X that should be fixed by doing Y
|
|
274
|
+
- create a new feature that implement Z
|
|
275
|
+
|
|
276
|
+
etc.
|
|
277
|
+
```
|
|
278
|
+
|
|
279
|
+
It's fine to add multiple tasks at once.
|
|
280
|
+
|
|
260
281
|
## Skills
|
|
261
282
|
|
|
262
283
|
Skills are reusable agent capabilities that provide specialized knowledge and workflows. The canonical source is `.agent/skills/`, which is symlinked to multiple agent tool directories for compatibility.
|
|
@@ -419,6 +440,38 @@ npm i @vitejs/plugin-react @testing-library/dom @testing-library/jest-dom @testi
|
|
|
419
440
|
|
|
420
441
|
It is recommended that you add skills for your specific language and framework. See [skills.sh](https://skills.sh) to discover existing skills.
|
|
421
442
|
|
|
443
|
+
### Debugging
|
|
444
|
+
|
|
445
|
+
## How to inspect the sandbox and debug
|
|
446
|
+
|
|
447
|
+
You might be wondering... if this is not a Docker container, how can you see what's going on inside Docker!?
|
|
448
|
+
How to debug/install things?
|
|
449
|
+
|
|
450
|
+
That's quite straightforward.
|
|
451
|
+
|
|
452
|
+
You first need to run:
|
|
453
|
+
|
|
454
|
+
```bash
|
|
455
|
+
docker sandbox list
|
|
456
|
+
```
|
|
457
|
+
|
|
458
|
+
Note down the name of the sandbox, e.g. `claude-ralph-loop`.
|
|
459
|
+
|
|
460
|
+
And then you can run bash into any of the sandboxes like so:
|
|
461
|
+
```bash
|
|
462
|
+
docker sandbox exec -it <sandbox-name> bash # e.g. docker sandbox exec -it claude-ralph-loop bash
|
|
463
|
+
```
|
|
464
|
+
|
|
465
|
+
And you have full control over the sandbox, just like a regular container. You can install packages, run commands, etc.
|
|
466
|
+
|
|
467
|
+
You can also also run Claude Code inside the sandbox (make sure to navigate to the project directory first).
|
|
468
|
+
|
|
469
|
+
```bash
|
|
470
|
+
docker sandbox exec -it <sandbox-name> bash
|
|
471
|
+
cd /path/to/your/project # this is the same path as the path in the root machine, e.g. /Users/your-username/Documents/your-project
|
|
472
|
+
claude
|
|
473
|
+
```
|
|
474
|
+
|
|
422
475
|
## License
|
|
423
476
|
|
|
424
477
|
MIT
|
package/package.json
CHANGED
package/ralph.sh
CHANGED
|
@@ -98,7 +98,7 @@ $(cat $SCRIPT_DIR/.agent/PROMPT.md)"
|
|
|
98
98
|
export PROMPT_CONTENT
|
|
99
99
|
export DOCKER_DEFAULT_PLATFORM=linux/amd64 # Needed for Playwright.
|
|
100
100
|
|
|
101
|
-
script -q "$OUTPUT_FILE" bash -c 'docker sandbox run claude . -- --model opus --output-format stream-json --verbose -p "$PROMPT_CONTENT"' >/dev/null 2>&1 &
|
|
101
|
+
script -q "$OUTPUT_FILE" bash -c 'docker sandbox run claude . -- --effort max --model opus --output-format stream-json --verbose -p "$PROMPT_CONTENT"' >/dev/null 2>&1 &
|
|
102
102
|
AGENT_PID=$!
|
|
103
103
|
|
|
104
104
|
# Track position in output file for incremental reading
|