ᛟ ᚺ ᛊ ᛏ ᛒ ᛖ ᚹ ᛗ ᛚ ᛝ ᛟ

ᚱ ᚢ ᚾ ᛖ

Zero-Trust AI Agent

零信任 AI 代理運行時

High-performance. Single binary. Sandboxed by default. Multi-mode: CLI agent, CI resource, and AI-native Data Exchange Hub (Rune Notes).

高性能 · 單一獨立執行檔 · 預設嚴格沙盒隔離 · 多模式運作:命令列 Agent、CI 流程資源與 AI 原生資料交換中心(Rune Notes)。

⚡ View on GitHub ⚡ 前往 GitHub 儲存庫 Get Started 快速開始
ᛟ ᚺ ᛊ ᛏ ᛒ ᛖ ᚹ ᛗ ᛚ ᛝ ᛟ

⚔️ Features

⚔️ 核心特性

🛡️

5-Layer Sandbox

5 層沙盒隔離

cgroups v2, Network namespace (or net-guard), Seccomp BPF, Landlock, DNS allowlist. Every tool call is isolated.

cgroups v2、網路命名空間(或 net-guard)、Seccomp BPF、Landlock、DNS 白名單。隔離每一次工具調用。

🔧

9 Built-in Tools

9 種內建工具

read_file, write_file, list_dir, execute_cmd, fetch_url — all sandboxed.

read_file、write_file、list_dir、execute_cmd、fetch_url — 全部受沙盒嚴格管控。

📚

Skills System

Skills 技能系統

Load contextual abilities via @skill_name. Frontmatter-driven, multi-path search.

透過 @skill_name 動態載入專屬技能。支援 Frontmatter 配置與多路徑搜尋。

🤖

Multi-Provider

多模型供應商

GitHub Copilot (auto refresh), OpenRouter, Google Gemini, any OpenAI-compatible endpoint.

支援 GitHub Copilot(自動刷新憑證)、OpenRouter、Google Gemini 與任何相容 OpenAI 的 API 端點。

🔌

MCP Client

MCP 客戶端

Stdio JSON-RPC client for Model Context Protocol servers. Extend without recompiling.

內建 Stdio JSON-RPC Model Context Protocol 客戶端,無需重新編譯即可無縫擴展第三方工具。

🚀

Concourse CI

Concourse CI 資源

Same binary doubles as a Concourse CI resource type via symlink routing. Zero extra deps.

同一二進位檔可透過符號連結直接作為 Concourse CI 資源類型運作,零額外依賴。

🧠

Thinking / Reasoning

思考與推理深度

Adjustable reasoning depth: off, low, medium, high, xhigh. Compatible with Claude and o-series models.

可自由調整推理深度:off、low、medium、high、xhigh。相容 Claude 與 o 系列推理模型。

🔍

Semantic Skill Search

語意技能搜尋

Embedding-powered skill discovery. Skills matched by meaning, not just @name references.

以向量嵌入(Embedding)驅動技能發現,依據語意自動匹配合適技能,不限於純名稱引用。

🧩

Automatic Allowlist Expansion

自動白名單建議

Strace-based exploratory analysis that suggests safe policy expansions; human-reviewed before applying.

基於 strace 探索分析工具行為並主動建議安全的權限擴展,經人工審查確認後生效。

💬

Custom System Prompt

自訂系統提示詞

Override the default system prompt via CLI flag, env var, or config. AGENTS.md context is always appended.

可透過 CLI 參數、環境變數或設定檔自訂系統提示詞,並始終自動注入 AGENTS.md 安全上下文。

📝

Rune Notes Hub

Rune Notes 筆記中樞

AI-native Markdown Data Exchange Hub served from the same single binary. Exposes Web UI, MCP endpoint, and REST API.

由同一二進位檔直接啟動的 AI 原生 Markdown 資料交換中心,提供 Web UI、MCP 端點與 REST API。

🧩

Rune Chat Extension

Rune Chat 瀏覽器擴充

First-party browser extension for Chrome & Firefox side panel. Chat about active pages and update shared notes directly.

Chrome 與 Firefox 側邊欄專屬擴充套件,能針對當前瀏覽網頁進行 AI 對話並直接記錄至筆記中樞。

Vim & Neovim Plugin

Vim 與 Neovim 整合

Native FIM ghost text completion and interactive commands (:RuneAsk, :RuneEdit, :RuneStatus, :RuneLog) built in via --features vim.

--features vim 內建原生 FIM 幽靈文字補全與互動式指令(:RuneAsk、:RuneEdit 等)。

✨ Demo

✨ 互動展示

rune
ᚱ› Get weather for Taoyuan from wttr.in
⚙ fetch_url({"url":"https://wttr.in/Taoyuan"})
Execute? [Y/n] Y
approved
fetch_url...ok
────────────────────────────────────────
Taoyuan: ☁️ 27°C, Humidity 79%, Wind WNW 8km/h
────────────────────────────────────────
⚡ [2 steps | 1049 tokens | 1 tool calls]

🔐 Security Model

🔐 安全防護模型

Rune Security Model — layered protection wards Five concentric protection circles forming a runic ward: cgroups, net-guard, seccomp, landlock, and the protected core. ᚠ ᚢ ᚦ ᚨ ᚱ ᚲ ᚷ ᚹ ᚺ ᚾ ᛁ ᛃ ᛇ ᛈ ᛉ ᛊ ᛏ ᛒ ᛖ ᛗ ᛚ ᛝ ᛞ ᛟ ᚠ ᚢ ᚦ ᚨ ᚱ ᚲ ᚷ ᚹ ᚺ ᚾ ᛁ ᛃ ᛊ ᛏ ᛒ ᛖ ᛗ ᛚ ᛝ ᛞ ᛟ ᚠ ᚢ ᚦ ᚨ ᚱ ᚲ ᚷ ᚹ ᚺ ᚾ ᛁ ᛃ ᛇ ᛈ ᛉ ᚱ ᚢ ᚾ ᛖ · ᛊ ᛖ ᚲ ᚲ ᛟ ᛗ ᛈ · ᚠ ᛁ ᛚ ᛏ ᛖ ᚱ ᛚ ᚨ ᚾ ᛞ ᛚ ᛟ ᚲ ᚲ · ᚠ ᛊ CORE cgroups v2 — Resource Ward net-guard Network isolation Seccomp BPF Syscall filter Landlock Filesystem seal Protected Core Zero-trust agent runtime
1. cgroups v2 Memory 512MB · max 64 processes
2. net-guard / netns Seccomp user-notif network filter · domain allowlist
3. Seccomp BPF Blocks ptrace, mount, kexec_load, bpf, setns
4. Landlock Filesystem restriction · only allowed paths
Core Protected zero-trust agent runtime
1. cgroups v2 資源限制 記憶體上限 512MB · 最多 64 個程序
2. net-guard / 網路隔離 Seccomp user-notif 網路過濾 · 嚴格網域白名單
3. Seccomp BPF 系統呼叫 封鎖 ptrace、mount、kexec_load、bpf、setns 等危險呼叫
4. Landlock 檔案系統防護 限制檔案存取路徑 · 僅允許授權之讀寫/唯讀目錄
核心 Core 零信任受保護的 AI 代理運行時

📝 Rune Notes — AI-Native Data Exchange Hub

📝 Rune Notes — AI 原生資料交換中心

A responsive web app and central Markdown data exchange hub served from a single self-contained binary. One process serves the web UI, the MCP endpoint, and the REST API.

由單一獨立執行檔直接啟動的響應式 Web 應用程式與 Markdown 資料交換中樞。單一處理程序即可同時提供 Web UI、MCP 端點與 REST API。

Responsive Web App UI Desktop Tablet Mobile MCP MCP MCP MCP MCP REST API native native Rune Notes AI-native Markdown Data Exchange Hub single binary OpenClaw Hermes Agent Copilot OpenCode Antigravity Rune Chat browser extension Built-in AI Chat in-app, AI Manual Edit in-app, human
🏰

Single Binary

單一二進位檔

Zero runtime dependencies on Linux. A single process serves the full web UI, built-in AI assistant, MCP server endpoint (POST /mcp), and REST API.

在 Linux 下完全零依賴。單一程序即可提供完整 Web UI、內建 AI 助理、MCP 伺服器端點(POST /mcp)以及 REST API。

🔌

Universal MCP Hub

通用 MCP 資料中樞

External agents (Antigravity, OpenClaw, Hermes, Copilot, OpenCode) connect via Model Context Protocol to read, search, and edit notebooks in real-time.

外部 Agent(Antigravity、OpenClaw、Hermes、Copilot、OpenCode)可透過 Model Context Protocol 即時讀取、搜尋與編輯筆記本。

🧩

Rune Chat Browser Extension

Rune Chat 瀏覽器擴充

First-party extension for Chrome & Firefox side panel. Discuss the current browsing page and push notes directly into the hub over REST API.

Chrome 與 Firefox 側邊欄官方擴充套件,能針對當前網頁即時討論並透過 REST API 將重點寫入筆記中樞。

📱

Adaptive Responsive Web App

多端響應式 Web 介面

Runs seamlessly across Desktop (3-column layout), Tablet (collapsible panels), and Mobile (adaptive single-column) without separate installations.

無縫支援桌面端(三欄版面)、平板端(摺疊面板)與行動手機(自適應單欄),免額外安裝應用程式。

🧮

Rich Markdown Engine

豐富 Markdown 渲染引擎

KaTeX math ($E=mc^2$), Mermaid diagrams-as-code, raw inline SVG markup, and syntax highlighting. Agents generate diagrams purely as text.

支援 KaTeX 數學式($E=mc^2$)、Mermaid 架構圖即程式碼、原生行內 SVG 與語法高亮。Agent 可純以文字生成清晰圖表。

🔒

Flexible Auth & Visibility

多元身分驗證與權限控制

GitHub OAuth 2.0, standard OIDC (Google/Okta/Authentik), and standalone local accounts. Granular public/private sharing for individual files.

支援 GitHub OAuth 2.0、標準 OIDC(Google / Okta / Authentik)與本機獨立帳號。個別檔案可自訂公開或私有存取權限。

Start Rune Notes Server
啟動 Rune Notes 伺服器
# Run locally
rune notes --bind 0.0.0.0 --port 9527

# Or run with Docker
docker run -d --name rune-notes \
  -v ~/.rune:/home/rune/.rune \
  -v "$PWD"/notes:/notes \
  -p 9527:9527 \
  ghcr.io/fourdollars/rune notes --bind 0.0.0.0 --port 9527

🚀 Concourse CI — Quick Start

🚀 Concourse CI — 快速上手

Use Rune as a Concourse CI resource type. Minimal weather pipeline:

將 Rune 作為 Concourse CI 資源類型使用。簡易天氣檢查 Pipeline 範例:

Resource type definition
資源類型定義(Resource Type)
resource_types:
  - name: rune-agent
    type: registry-image
    source:
      repository: ghcr.io/fourdollars/rune
      tag: latest
Resource — weather check with sandbox policy
資源定義 — 搭配沙盒安全策略的天氣檢查
resources:
  - name: weather
    type: rune-agent
    check_every: 1h
    source:
      api_key: ((copilot-pat))
      model: gpt-4o-mini
      prompt: "Fetch the weather for Taoyuan from wttr.in using curl."
      policy:
        allowed_commands: ["curl"]
        allowed_domains: ["wttr.in"]
Job — trigger on new versions
任務定義(Job)— 有新版本時觸發執行
jobs:
  - name: weather-check
    plan:
      - get: weather
        trigger: true

🐳 Docker — No Install Required

🐳 Docker — 免安裝即可使用

Run Rune instantly via Docker. Three image variants available:

透過 Docker 立即執行 Rune,提供三種映像檔版本:

Available Images
可用映像檔版本
# Alpine — smallest image (~15 MB), musl-based
docker pull ghcr.io/fourdollars/rune:alpine

# Debian (Bookworm) — glibc-based, broad compatibility
docker pull ghcr.io/fourdollars/rune:debian

# Ubuntu (24.04) — familiar environment
docker pull ghcr.io/fourdollars/rune:ubuntu

# Latest tag (defaults to Debian)
docker pull ghcr.io/fourdollars/rune:latest
First-time setup (rune init via Docker)
初次設定(透過 Docker 執行 rune init)
# Initialize config — mounts ~/.config/rune for persistence
docker run -it --rm \
  -v ~/.config/rune:/home/rune/.config/rune \
  ghcr.io/fourdollars/rune init
Interactive mode
互動模式
# Start an interactive session
docker run -it --rm \
  -v ~/.config/rune:/home/rune/.config/rune \
  -v "$PWD":/workspace -w /workspace \
  ghcr.io/fourdollars/rune
Pipe mode (scripting)
管道模式(腳本批次處理)
# One-shot query without local installation
echo "Explain what Landlock is" | docker run -i --rm \
  -v ~/.config/rune:/home/rune/.config/rune \
  ghcr.io/fourdollars/rune --json --yes
Shell alias for convenience
設定 Shell 別名以方便日常調用
# Add to ~/.bashrc or ~/.zshrc
alias rune='docker run -it --rm \
  -v ~/.config/rune:/home/rune/.config/rune \
  -v "$PWD":/workspace -w /workspace \
  ghcr.io/fourdollars/rune'

📦 Build from Source

📦 從原始碼編譯

Build from source
原始碼編譯與安裝
git clone https://github.com/fourdollars/rune.git
cd rune
cargo build --release
cp target/release/rune ~/.local/bin/
First-time setup
初次初始化設定
rune init
Pipe mode (scripting)
管道模式
echo "Get weather for Tokyo" | rune --json --yes

⚡ Vim & Neovim Integration

⚡ Vim 與 Neovim 編輯器整合

Zero-dependency native Vim 9+ & Neovim integration compiled into the binary.

零依賴、編譯進執行檔的原生 Vim 9+ 與 Neovim 整合插件。

Build & Install Plugin
編譯並安裝插件
cargo build --release --features vim
rune vim install
Interactive Commands
互動指令
:RuneAsk <prompt>   " Ask AI questions (opens side markdown view)
:RuneExplain         " Detailed code explanation
:RuneEdit <prompt>  " Refactor or edit current buffer
:RuneFix            " Auto fix bugs & issues
:RuneStatus         " Inspect provider, model & rate budget
:RuneLog            " Open side debug window (__Rune_Log__)
:RuneToggle(!)      " Toggle inline completion on/off
:RuneEnable(!)      " Enable inline completion
:RuneDisable(!)     " Disable inline completion
Statusline Integration (~/.vimrc)
狀態列整合設定(~/.vimrc)
set statusline=%f\ %m%r%=%{rune#statusline()}\ [%{rune#model()}]