用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/SimHacker/moollm --skill worm命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
基于 SOC 职业分类
| name | worm |
| description | Two-pointer reversible cursor worms for traversal and dataflow |
| allowed-tools | ["read_file","write_file","list_dir"] |
| tier | 1 |
| protocol | WORM |
| related | ["action-queue","advertisement","room","adventure","data-flow","context","character"] |
| tags | ["moollm","worm","cursor","pipeline","reversible"] |
Two-ended cursor (head + tail) that can ingest, parse, shuttle, and emit data across the filesystem with reversible verbs.
A worm is a two-pointer cursor that spans structures:
# Worm: two-pointer cursor spanning structures
worm_anatomy:
tail:
position: "left side"
action: "emit here (POOP)"
buffer: "payload / active_tokens"
head:
position: "right side"
action: "ingest here (EAT/CHOMP)"
The worm's verbs form a reversible basis for undo/redo:
| Verb | Action | Reverse |
|---|---|---|
| EAT | Ingest content at head | BARF |
| CHOMP | Pattern-scan then ingest | BARF |
| POOP | Emit buffer at tail | EAT |
| BARF | Emit buffer at head | EAT |
| STICK-UP-BUM | Inject external data at tail | POOP |
This maps to:
MOVE-WORM Move head (and optionally tail)
MOVE-HEAD Move head only
MOVE-ASS Move tail only
Movement modes:
mode: abs - Absolute pathmode: rel - Relative stepsdirection: up/down/in/out/left/right - Spatial navigationtail: follow | stay - Whether tail follows headNEXT-UNIT Advance head by unit
PREV-UNIT Move head backward by unit
SELECT-RANGE Select N units into buffer
Units: char | word | sentence | paragraph | section | page | line
TREE-UP Move to parent
TREE-DOWN Move to child (by index/name)
TREE-NEXT Move to next sibling
TREE-PREV Move to previous sibling
TREE-OPEN Expand node (view hint)
TREE-CLOSE Collapse node (view hint)
TREE-HIDE Hide subtree (view hint)
TREE-SHOW Show hidden subtree
invoke: EAT
effect: Read content at head, parse tokens, normalize to digestive_format
updates:
- buffer: filled with content
- active_tokens: parsed tokens
- payload: last consumed chunk
invoke: CHOMP
params:
pattern: "regex or anchor string"
effect: Scan for pattern, ingest following content
use_when: "Need to find specific section then consume it"
invoke: POOP
effect: Write buffer/payload at tail position
options:
- Append to file
- Write YAML to emit_dir
- Emit selected tokens only
invoke: BARF
effect: Write buffer/payload at head position (regurgitate)
use_when: "Need to emit where you just read"
invoke: STICK-UP-BUM
params:
data: "External data to inject"
effect: Normalize and store in buffer/payload
use_when: "Loading data from outside the worm's crawl path"
state:
head: "." # Current head position (path)
tail: "." # Current tail position (path)
buffer: [] # Interior ingestion buffer
payload: null # Last consumed chunk
digestive_format: "neutral" # Normalization format
active_tokens: [] # Parsed tokens in worm's "brain"
scan_pattern: "" # Pattern for CHOMP anchoring
scan_mode: "pattern-then-chomp"
emit_dir: ".moollm/skills/worm/out" # Where YAML output goes
reversible: true # Enable undo/redo verb basis
Different worm personalities for different tasks:
| Variant | Behavior |
|---|---|
| Bulldozer | Moves and overwrites as it goes |
| Link-hopper | Prefers symlinks; inchworms across references |
| Mapper | Maps directory trees; leaves markers/indexes |
| Dream | Speed-of-light synthesis; ephemeral payloads |
| Tree | Climbs hierarchies; maintains parent/child context |
| Search | Crawls through search results |
1. Position head at source, tail at destination
2. CHOMP source (pattern-aware)
3. Tokens normalize in buffer
4. POOP to destination
1. MOVE-WORM head=symlink tail=follow
2. Worm "inchworms" across the link
3. EAT to capture target content
4. Continue crawling
1. Head in doc A, tail in doc B
2. EAT from A → buffer fills
3. POOP to B → content transfers
4. Repeat for streaming pipeline
Worm A: CHOMP source → POOP to emit_dir/casting.yml
Worm B: EAT from emit_dir/casting.yml → process → POOP
Worm C: Consumes B's output → builds taxonomy
| Skill | Integration |
|---|---|
| adventure | Worm traverses rooms; head = current location |
| room | Rooms can expose worm-friendly ads (FEED-WORM) |
| buff | Worms receive buffs (FAST-CRAWL, CLEAN-CASTINGS) |
| character | Worms as NPCs or companions in party |
| data-flow | Worms are streaming cursors for pipelines |
> MOVE-WORM head="skills/adventure/" tail=follow
Worm positioned at skills/adventure/
> EAT
Ingested CARD.yml (467 lines), SKILL.md (1143 lines)
Buffer: 12 sections, 3 methods, 15 advertisements
> MOVE-WORM head="skills/bootstrap/"
Head moved to skills/bootstrap/ (tail stayed at adventure/)
> CHOMP pattern="methods:"
Chomped methods section (8 methods found)
> POOP
Emitted to .moollm/skills/worm/out/methods-comparison.yml