소스 정보
- 저장소
- SimHacker/moollm
- 최근 소스 활동
- 2026년 10월 29일 13:43
- 감지된 SKILL.md 언어
- 영어
- 스타
- 62
- 포크
- 5
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
파일 탐색기
33 개 파일SKILL.md 표시 중
SKILL.md
소스 지침 · 읽기 전용 미리보기- name
- bootstrap
- description
- Wake up, orient, and warm the context with foundational MOOLLM knowledge
- license
- MIT
- permissions
- ["files"]
- allowed-tools
- ["read_file","list_dir"]
- protocol
- BOOTSTRAP
- related
- ["moollm","k-lines","constructionism","play-learn-lift","speed-of-light"]
- tags
- ["moollm","meta","orientation","warmup","foundational","connections"]
- invoke_when
- Starting a new session, feeling lost, asking 'what am I?', warming up context
# Bootstrap
> *"Wake up! Look around! What are you? What can you see?"*
The bootstrap skill is how MOOLLM orients itself at session start and every iteration. From the inside it's "booting"; from the outside it's "waking up."
The first boot is the big wakeup: establish the working set and hot list, warm the engine, and set the baseline. After that, a soft wake happens every iteration, carrying forward context and paging by need.
The orchestration layer decides how this works: Cursor treats hot.yml and working-set.yml as advisory or reporting, while MOOCO can treat them as directive files.
An initial user prompt might say: "BOOT MOOLLM as Don Hopkins in a pub for role playing and celebration with cats and friends."
## What It Does
1. **READS `.moollm/hot.yml` FIRST** — MANDATORY, even in advisory mode!
- If missing, copy from `skills/bootstrap/templates/hot.yml`
- Parse current priorities BEFORE loading any content
- This prevents loading giant CHARACTER.yml files without context!
2. **READS `skills/INDEX.yml`** — MANDATORY second step!
- Know what skills exist before using them
- Understand tiers, protocols, tags
- This is your menu of capabilities
3. **PROBES** the environment (without shell) to learn tools and context
4. **DETECTS** the platform via introspection (see below)
5. **SETUPS** the `.moollm/` scratch from templates
6. **READS** the foundational files:
- `kernel/constitution-core.md` — Universal principles
- `PROTOCOLS.yml` — K-line symbol index
7. **ORIENTS** the agent:
- What am I? (A coherence engine in a microworld OS)
- What can I see? (The filesystem as navigable space)
- What can I do? (Skills, protocols, tools)
- What platform am I on? (How do hot/cold/working-set behave?)
6. **WARMS** the context:
- Loads critical files into working memory
- Updates `hot.yml` with foundational knowledge
- Ensures key K-lines are activated
Bootstrap is a safe self-eval loop: probe, detect, log, and then refine. BOOT/DEEP-PROBE make the loop explicit and reviewable, with CURSOR-PROBE as a focused variant.
## Setup: initialize `.moollm/` scratch from templates
Goal: ensure a clean, gitignored scratch area with advisory context files and append-only logs.
Steps:
1. Ensure directories:
- Create `.moollm/` if missing.
- Create `.moollm/summaries/` and `.moollm/artifacts/` if needed.
2. Seed append-only logs:
- `.moollm/output.md` — header only; append new outputs below.
- `.moollm/session-log.md` — header with driver and start date; append entries.
- Use templates if available; otherwise write minimal headers.
3. Seed advisory context files (Cursor uses these as hints, not commands):
- Copy `skills/bootstrap/templates/working-set.yml` → `.moollm/working-set.yml` (editable, local).
- Copy `skills/bootstrap/templates/hot.yml` → `.moollm/hot.yml` (editable, local).
- Optionally create `.moollm/cold.yml` for archaeology (advisory).
4. Probe artifacts:
- Write `bootstrap-probe.yml` to `.moollm/` (gitignored).
5. Conventions:
- Treat `.moollm/output.md` and `.moollm/session-log.md` as append-only.
- Keep `.moollm/` for transient, non-committed state (probes, engine state, temporary artifacts).
## Compile Cursor Rules (MANDATORY on first boot)
Goal: Ensure `.cursor/rules/` contains the MOOLLM rules that get auto-injected.
### Check and Compile
```bash
# Check if rules exist
ls .cursor/rules/*.mdc 2>/dev/null || echo "RULES MISSING - COMPILE NEEDED"
```
### If Missing, Compile from Templates
1. Create `.cursor/rules/` directory
2. Copy templates (removing `.tmpl` extension):
- `skills/bootstrap/templates/dotcursor/rules/moollm-core.mdc.tmpl` → `.cursor/rules/moollm-core.mdc`
- `skills/bootstrap/templates/dotcursor/rules/adventure.mdc.tmpl` → `.cursor/rules/adventure.mdc`
- `skills/bootstrap/templates/dotcursor/rules/introspection.mdc.tmpl` → `.cursor/rules/introspection.mdc`
### Rule Types
| File | `alwaysApply` | `globs` | Purpose |
|------|---------------|---------|---------|
| `moollm-core.mdc` | `true` | — | Core identity, mandatory reads (injected EVERY turn) |
| `adventure.mdc` | `false` | `examples/**` | Adventure context (only when in examples/) |
| `introspection.mdc` | `false` | `skills/cursor-mirror/**` | Debugging tools (only when introspecting) |
### Why Compile Instead of Commit?
The `.cursor/rules/` files could be committed, but compiling on first boot allows:
- User customization without merge conflicts
- Platform-specific variations
- Easy regeneration if corrupted
Templates in `skills/bootstrap/templates/dotcursor/rules/` are the source of truth.
## GLANCE Protocol: Fast-Loading Summaries
Large files (CHARACTER.yml, ROOM.yml) can be 500-1000+ lines. Loading them fully on every boot wastes tokens.
### The Solution: GLANCE.yml
A GLANCE is a ~50-100 line summary that loads fast, with a pointer to the full file.
### When to Use GLANCE
| Situation | Load |
|-----------|------|
| Quick orientation, "who is this?" | GLANCE.yml |
| Deep interaction, editing, history | Full CHARACTER.yml |
| Room overview, navigation | GLANCE.yml |
| Detailed room protocols, framing | Full ROOM.yml |
### Creating a GLANCE
Use the template: `skills/bootstrap/templates/GLANCE.yml.tmpl`
**Extract only:**
- Identity (name, type, description)
- Current state (location, mood, activity)
- Key relationships (max 5)
- Available actions
- Exits/contents (for rooms)
**Skip:**
- Detailed history/backstory
- Verbose descriptions
- Examples
- Full Mind Mirror profiles
### Example GLANCE Files
- `examples/adventure-4/characters/animals/monkey-palm/GLANCE.yml` (60 lines vs 941)
- `examples/adventure-4/pub/GLANCE.yml` (70 lines vs 930)
### GLANCE Header
Every GLANCE includes metadata:
```yaml
_glance:
source: "CHARACTER.yml"
source_lines: 941
generated: "2026-01-27T20:00:00Z"
load_full_when:
- "Deep conversation needed"
- "Editing the entity"
- "User asks for details"
```
### Deep Probe Creates GLANCEs
When optimization is permitted, cursor-mirror can identify large files and auto-generate GLANCEs:
```bash
# Find large files
find examples/ -name "*.yml" -exec wc -l {} \; | awk '$1 > 500'
# For each, create GLANCE.yml using the template
```
## Driver Detection Protocol
At bootstrap, examine your environment to detect which MOOLLM driver to use. This protocol is written to be **universally understandable** by any LLM on any platform.
### Step 1: Introspect Your Environment
Ask yourself these questions:
```yaml
introspection:
# What does my system prompt say?
system_prompt_mentions:
- "GitHub Copilot" → likely GitHub Copilot in VS Code
- "Cursor" → likely Cursor IDE
- "Claude Code" → likely Claude Code
- "Antigravity" → likely Antigravity (Gemini)
- "MOOLLM_DRIVER" → custom orchestrator
# What tools do I have?
tools_available:
copilot_indicators:
- read_file, apply_patch # VS Code agent file operations
- semantic_search, grep_search # Workspace search
- run_in_terminal # Terminal execution
- vscode_listCodeUsages # VS Code language services
cursor_indicators:
- codebase_search # Cursor's semantic search
- search_replace # Cursor's file editing
- mcp_cursor-ide-browser_* # Cursor's browser tools
claude_code_indicators:
- View, Edit, LS # Claude Code's file tools
- mcp_* (many) # MCP server tools
- Bash, Computer # Computer use tools
antigravity_indicators:
- view_file # Antigravity file viewer
- browser_subagent # Antigravity browser
- grep_search # Antigravity search
custom_indicators:
- why parameter on all tools # Full MOOLLM protocol
- working_set_* tools # Context management
- hot_cold_* tools # Memory management
# What's my context window size?
context_hints:
large: "> 100K tokens → likely modern Claude/GPT-4"
small: "< 32K tokens → may need aggressive summarization"
```
### Step 2: Select Driver
Based on introspection, load the appropriate driver from `kernel/drivers/`:
| If You Detect | Load Driver | Tier | hot/cold Mode |
|---------------|-------------|------|---------------|
| System identifies GitHub Copilot in VS Code; agent file/search tools available | `copilot.yml` | 4 | ADVISORY |
| `codebase_search` + `search_replace` + system says "Cursor" | `cursor.yml` | 4 | ADVISORY |
| MCP tools + system says "Claude Code" | `claude-code.yml` | 5 | HYBRID |
| `view_file` + system says "Antigravity" | `antigravity.yml` | 5 | HYBRID |
| `why` parameter on tools + `MOOLLM_DRIVER` env | `custom.yml` | 6 | MAGIC |
| None of the above | `generic.yml` | 1 | DOCUMENTATION |
### Step 3: Adapt Behavior
Once driver is selected, adapt your behavior:
```yaml
cursor_driver:
# Cursor manages context automatically via vector search
# hot.yml, cold.yml, working-set.yml are ADVISORY
context_management: automatic
hot_cold_mode: advisory
what_this_means:
- "Don't manually track what's in context — Cursor does this"
- "hot.yml is a SUGGESTION of what's important, not a command"
- "Cursor can GENERATE working-set.yml to show its focus"
- "Use codebase_search freely — it's fast and built-in"
behaviors:
- "Read constitution-core.md for principles"
- "Read PROTOCOLS.yml for K-line vocabulary"
- "Trust Cursor's context management"
- "Focus on YAML Jazz and skill application"
custom_driver:
# Custom orchestrator reads hot/cold/working-set as COMMANDS
# These files DIRECT what content is paged in/out
context_management: explicit
hot_cold_mode: magic
what_this_means:
- "hot.yml tells orchestrator what to load"
- "cold.yml tracks what was evicted and why"
- "working-set.yml is the actual manifest of loaded content"
- "You must maintain these files accurately"
behaviors:
- "Update hot.yml when files become important"
- "Move files to cold.yml when no longer needed"
- "Request file loads via working-set requests"
- "Be explicit about context management"
```
## Example: Cursor Driver
**Detected indicators:**
- System prompt says "You operate in Cursor"
- I have `codebase_search`, `search_replace`, `grep` tools
- I have `mcp_cursor-ide-browser_*` browser tools
- I have `mcp_svelte_*` MCP tools
**Therefore:**
- Driver: `kernel/drivers/cursor.yml`
- Tier: 4 (File read/write + Search + Execution)
- hot/cold mode: **ADVISORY** — Cursor manages context automatically
- I should trust Cursor's built-in vector search and context management
- hot.yml and working-set.yml are suggestions, not commands
## Example: GitHub Copilot Driver
When the system identifies GitHub Copilot in VS Code and exposes its agent tool surface:
- Driver: `kernel/drivers/copilot.yml`
- Tier: 4 baseline (file operations, search, and terminal)
- hot/cold mode: **ADVISORY** — MOOLLM files guide the agent but do not control VS Code context assembly
- Use only the tools actually exposed in the current session; browser and MCP integrations vary by host
- Do not claim access to Copilot's hidden prompt, internal state, or exact token budget
## Platform Adaptation (Summary)
| Platform | hot/cold/working-set Behavior |
|----------|------------------------------|
| **Custom Orchestrator** | **MAGIC** — Files DIRECT the orchestrator what to page in/out |
| **GitHub Copilot** | **ADVISORY** — The agent can read these hints, but they do not command Copilot context assembly |
| **Cursor** | **ADVISORY** — Cursor manages context automatically; files are suggestions or can be generated *in reverse* to reflect Cursor's focus |
| **Claude Code** | **HYBRID** — MCP tools give more control, some context automatic |
| **Antigravity** | **HYBRID** — User/Agent manages context with explicit tools, respecting hints |
| **Generic** | **DOCUMENTATION** — For debugging "why doesn't it remember X?" |
The same YAML Jazz, same protocols, same skills — but **implemented** by sophisticated platforms or **emulated** through instructions on simpler ones.
## The James Burke Connections Tour
When invoked with enthusiasm, bootstrap delivers a whirlwind tour tracing the intellectual lineage of MOOLLM — from Papert's turtle to Minsky's K-lines to Wright's Sims.
**Full tour**: [CONNECTIONS.md](./CONNECTIONS.md) — 11 connections, ~500 lines of traced lineage
## Files to Keep HOT
When bootstrapping, ensure these are loaded:
| Priority | File | Why |
|----------|------|-----|
| **CRITICAL** | `kernel/constitution-core.md` | Universal principles |
| **CRITICAL** | `PROTOCOLS.yml` | K-line vocabulary |
| **HIGH** | `skills/INDEX.yml` | What skills exist |
| **HIGH** | Current `ADVENTURE.yml` | If in a game |
| **MEDIUM** | Current `ROOM.yml` | Where you are |
## PROBE: Environment Diagnostics
Bootstrap includes a **PROBE** method that gathers diagnostic information about the environment WITHOUT using terminal commands.
### What PROBE Gathers (No Terminal)
```yaml
probe:
# From system prompt / user_info
model:
name: "claude-sonnet-4-20250514"
provider: "anthropic"
orchestrator:
name: "cursor"
driver: "kernel/drivers/cursor.yml"
tier: 4
workspace:
path: "/Users/someone/project"
date: "2026-01-09"
# From available tools
tools:
file_ops: [read_file, write, search_replace, list_dir, delete_file]
search: [codebase_search, grep, glob_file_search]
execution: [run_terminal_cmd]
mcp_servers:
- name: "cursor-ide-browser"
tools: [browser_navigate, browser_snapshot, ...]
- name: "svelte"
GitHub에서 보기이 SKILL.md는 매우 커서 SkillsMP가 여기에는 첫 섹션만 미리 보여줍니다. GitHub에서 보기