Skip to content

Commands

WanSatya Campus edited this page Jun 18, 2026 · 1 revision

Small command surface. Simple things should stay simple.


Overview

Rune intentionally provides a small set of commands.

rune init
rune index
rune update
rune context
rune doctor

Future additions should be rare and carefully justified.


rune init

Initialize Rune inside a repository.

rune init

Creates:

.rune/
├── spec.md
├── architecture.md
├── conventions.md
├── graph.json
├── files/
├── features/
├── ownership/
├── sessions/
└── cache/

Properties

  • Safe to run multiple times.
  • Never deletes user files.
  • Idempotent.
  • Local-only.

Example

cd my-project

rune init

Output:

✓ Initialized .rune/

rune index

Build repository understanding.

rune index

Analyzes:

  • files
  • imports
  • classes
  • functions
  • dependencies

Generates:

.rune/files/
.rune/features/
.rune/graph.json

Example

rune index

Output:

✓ Indexed 312 files
✓ Generated graph.json
✓ Generated file summaries
✓ Generated feature summaries

rune update

Incrementally refresh repository context.

rune update

Only modified files are reprocessed.


Purpose

Avoid expensive full indexing.


Example

rune update

Output:

✓ Updated auth.py
✓ Updated user.py
✓ Refreshed graph

rune context

Retrieve minimal context for a task.

rune context "<task>"

Example

rune context "Add Google OAuth"

Example output:

{
  "related_files": [
    "auth.py",
    "user.py",
    "settings.py"
  ]
}

Goal

Instead of loading:

100 files
100k tokens

agents load:

spec.md
graph.json
summaries

and fetch source code only when necessary.


rune doctor

Validate repository health.

rune doctor

Checks:

  • missing summaries
  • broken graph
  • stale cache
  • inconsistent metadata

Example

✓ graph.json valid
✓ summaries up to date
✓ no missing dependencies

Future Commands

These commands are planned but not required for v0.1.


rune self-update

Upgrade Rune.

rune self-update

Equivalent to reinstalling via:

curl -fsSL https://raw.githubusercontent.com/rune-context/rune/main/install.sh | sh

rune graph

Display dependency graph.

rune graph

Example:

auth.py
├── user.py
└── jwt.py

rune stats

Repository statistics.

rune stats

Example:

Files indexed: 782
Features detected: 41
Summaries: 782

rune clean

Remove cache.

rune clean

Removes:

.rune/cache/
.rune/sessions/

without affecting:

.rune/files/
.rune/features/

Global Flags

Version

rune --version

Example:

Rune 0.1.0

Help

rune --help

or:

rune help

Design Principles

Commands should be:

  • memorable
  • discoverable
  • composable

Avoid:

rune daemon
rune server
rune login
rune cloud

Rune should remain:

  • local-first
  • offline
  • dependency-free

CLI Philosophy

Git succeeded partly because most developers only need:

git init
git add
git commit
git push

Rune should follow the same principle.

Most users should only need:

rune init
rune index
rune update
rune context

See Also


Git stores history.

Rune stores understanding.

Rune Context

Git for repository understanding.


Introduction


Reference


Project


Ecosystem


Future RFCs

  • RCP-001 — Repository Format
  • RCP-002 — Plugin Protocol
  • RCP-003 — Graph Format
  • RCP-004 — File Summary Format
  • RCP-005 — Feature Map Format
  • RCP-006 — Ownership Metadata
  • RCP-007 — Session Memory
  • RCP-008 — Context Retrieval API
  • RCP-009 — Incremental Indexing
  • RCP-010 — Multi-Agent Coordination

Philosophy

Git stores history.

Rune stores understanding.

Clone this wiki locally