Skip to main content

bootstrap

Wake up, orient, and warm the context with foundational MOOLLM knowledge

Informations de source

Dépôt
SimHacker/moollm
Dernière activité de la source
2 octobre 2026 à 17:15
Langue détectée de SKILL.md
anglais
Étoiles
60
Forks
5

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Explorateur de fichiers
33 fichiers

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
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"
Voir sur GitHub
Ce SKILL.md est tres volumineux, SkillsMP affiche donc ici seulement la premiere section. Voir sur GitHub