MUST use for any non-trivial development task in advent-pdp11 - implements iterative development with status tracking, session logging, validation, and one-task-at-a-time approach. Use when implementing features, fixing bugs, refactoring, or any task requiring more than a single simple change.
You are now using the Ralph approach for this task. This is MANDATORY for the advent-pdp11 codebase.
Before starting any work, check for and update the session log.
Session logs preserve context across conversation restarts and context compaction. This is essential for long-running tasks.
claude.md -> "Session Log" section (at end of file)
claude.md to check for existing session logAfter completing each subtask or making significant progress:
### YYYY-MM-DD HH:MM - [Brief description]
- **Status**: [Current task status table snapshot]
- **Completed**: [What was just finished]
- **Next**: [What's planned next]
- **Blockers**: [Any issues encountered]
- **Key Decisions**: [Important choices made and why]
Update the session log with:
### 2026-01-16 14:30 - Fixed byte order in migration scripts
- **Status**: Tasks 1-3 ✅, Task 4 🔄 (Docker rebuilding), Tasks 5-6 ⬜
- **Completed**: migrate_data.py and reconstruct_rooms.py now use big-endian
- **Next**: Wait for Docker build, then test LOOK/N/S/E/W commands
- **Blockers**: None
- **Key Decisions**: Used big-endian for CVT$% compatibility per BASIC-PLUS-2 docs
This is a PDP-11 emulator running RSTS/E with the ADVENT MUD game from 1987.
ALWAYS use Docker Compose for local development:
docker-compose up -d --build # Build and start
docker-compose down # Stop
docker-compose logs -f # View logs
NEVER use raw docker run commands - use docker-compose for consistency
NEVER modify disk images while RSTS/E is running - container must be STOPPED first
Local Ports (host -> container):
Login credentials: [1,2] / SYSTEM (for scripts) or Digital1977 (documented)
Build takes 10-15 minutes - monitor via:
docker exec advent-mud cat /tmp/boot_status.json
First, analyse the request and break it into discrete subtasks. Create a status table:
## Task Status
| # | Task | Status | Notes |
|---|------|--------|-------|
| 1 | [First subtask] | 🔄 In Progress | |
| 2 | [Second subtask] | ⬜ Pending | |
| 3 | [Third subtask] | ⬜ Pending | |
Status icons:
For each subtask:
docker-compose up -d --build/tmp/boot_status.json)docker-compose logs 2>&1 | grep -i errorAfter any change to game code or ODL:
docker-compose down && docker-compose up -d --builddocker-compose logs 2>&1 | grep -E "TKB|SUCCESS|Error"docker exec advent-mud tmux capture-pane -t advent -p
docker exec advent-mud tmux send-keys -t advent "LOOK" Enter
| Problem | Solution |
|---------|----------|
| "Odd address trap" | Check ODL file - subroutines may need to be in ROOT |
| "Swap file is invalid" | Disk corrupted - run git checkout build/disks/*.dsk |
| Port conflict | Run docker-compose down, wait 30s, then restart |
| "All connections busy" | Console port contention - restart SIMH |
| Build timeout | Check docker-compose logs for errors |
Only declare the overall task complete when:
If you need user input or are blocked:
Now analyse the user's request and create your status table to begin work.
下载完整 Skill 目录,包含 SKILL.md 及所有相关文件
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer