internal/

directory
v0.6.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 26, 2026 License: MIT

Directories

Path Synopsis
Package analysis is the reusable analysis service that wraps Rune's parse → compose → analyze pipeline behind a source-overlay abstraction.
Package analysis is the reusable analysis service that wraps Rune's parse → compose → analyze pipeline behind a source-overlay abstraction.
Package analyzer is the whole-file semantic analyzer.
Package analyzer is the whole-file semantic analyzer.
Package ast defines the Runefile abstract syntax tree produced by the parser and consumed by the analyzer, evaluator, scheduler, cache, and MCP server.
Package ast defines the Runefile abstract syntax tree produced by the parser and consumed by the analyzer, evaluator, scheduler, cache, and MCP server.
Package cache implements opt-in, per-task content-hash caching for tasks carrying [cache(inputs=[...], outputs=[...])].
Package cache implements opt-in, per-task content-hash caching for tasks carrying [cache(inputs=[...], outputs=[...])].
Package cli wires the command-line surface: Runefile resolution, the parse → analyze → run pipeline, task dispatch, and exit-code mapping.
Package cli wires the command-line surface: Runefile resolution, the parse → analyze → run pipeline, task dispatch, and exit-code mapping.
Package config handles Runefile discovery and settings resolution.
Package config handles Runefile discovery and settings resolution.
Package diag is the diagnostic model and renderer.
Package diag is the diagnostic model and renderer.
Package dotenv loads .env files into KEY=VALUE environment pairs for tasks (set dotenv).
Package dotenv loads .env files into KEY=VALUE environment pairs for tasks (set dotenv).
Package eval is the total tree-walking evaluator for the Runefile expression sublanguage: it turns an ast.Expr into a string Value.
Package eval is the total tree-walking evaluator for the Runefile expression sublanguage: it turns an ast.Expr into a string Value.
Package formatter renders a parsed Runefile back into its canonical source form.
Package formatter renders a parsed Runefile back into its canonical source form.
Package language provides language intelligence over an analysis Snapshot: the symbol index (by name, qualified name, and document), scope lookup, context-aware completion, definition resolution, hover content, and the single structured registry of Rune built-ins, settings, and attributes (spec FR-026, FR-027).
Package language provides language intelligence over an analysis Snapshot: the symbol index (by name, qualified name, and document), scope lookup, context-aware completion, definition resolution, hover content, and the single structured registry of Rune built-ins, settings, and attributes (spec FR-026, FR-027).
Package lexer is a hand-written, state-function lexer (Pike style) for the Runefile language.
Package lexer is a hand-written, state-function lexer (Pike style) for the Runefile language.
Package lsp is the protocol glue for `rune lsp`: a JSON-RPC 2.0 server over stdio speaking a minimal typed subset of LSP 3.17.
Package lsp is the protocol glue for `rune lsp`: a JSON-RPC 2.0 server over stdio speaking a minimal typed subset of LSP 3.17.
Package mask provides emission-time masking of secret values in Rune's output streams, so credentials never reach a terminal transcript or an agent's chat history (spec 013-secret-masking).
Package mask provides emission-time masking of secret values in Rune's output streams, so credentials never reach a terminal transcript or an agent's chat history (spec 013-secret-masking).
Package parser is a hand-written recursive-descent parser for the Runefile declarative grammar, with a Pratt sub-parser (expr.go) for the expression sublanguage.
Package parser is a hand-written recursive-descent parser for the Runefile declarative grammar, with a Pratt sub-parser (expr.go) for the expression sublanguage.
Package runtime selects and drives the executor for a task body: the default pure-Go shell (internal/runtime/shell), a temp-file interpreter for python/node/custom or a `set shell` override (internal/runtime/interp), or the AI-agent driver (internal/runtime/agent).
Package runtime selects and drives the executor for a task body: the default pure-Go shell (internal/runtime/shell), a temp-file interpreter for python/node/custom or a `set shell` override (internal/runtime/interp), or the AI-agent driver (internal/runtime/agent).
agent
Package agent runs (agent) task bodies by driving an installed agent CLI (claude/codex/copilot/…) behind a vendor-neutral Provider interface (Principle VII / FR-030).
Package agent runs (agent) task bodies by driving an installed agent CLI (claude/codex/copilot/…) behind a vendor-neutral Provider interface (Principle VII / FR-030).
interp
Package interp runs python/node/custom (and `set shell`-override) task bodies by writing the interpolated body to a temp file and exec-ing the configured interpreter against it (the just shebang/[script] model).
Package interp runs python/node/custom (and `set shell`-override) task bodies by writing the interpolated body to a temp file and exec-ing the configured interpreter against it (the just shebang/[script] model).
scheduler
Package scheduler builds and runs the task dependency DAG.
Package scheduler builds and runs the task dependency DAG.
shell
Package shell runs (sh) task bodies through the pure-Go mvdan/sh interpreter.
Package shell runs (sh) task bodies through the pure-Go mvdan/sh interpreter.
Package semver is a small, dependency-free Semantic Versioning 2.0.0 parser and comparator, sufficient for Rune's `minimum_version` requirement gate.
Package semver is a small, dependency-free Semantic Versioning 2.0.0 parser and comparator, sufficient for Rune's `minimum_version` requirement gate.
Package style is the single source of truth for Rune's non-interactive terminal styling.
Package style is the single source of truth for Rune's non-interactive terminal styling.
Package styletest provides shared test helpers for asserting terminal styling.
Package styletest provides shared test helpers for asserting terminal styling.
Package token defines the lexical tokens of the Runefile language and the source-position types that every token and AST node carries.
Package token defines the lexical tokens of the Runefile language and the source-position types that every token and AST node carries.
Package tui implements Rune's interactive task picker (the `--choose` experience) as a Bubble Tea program.
Package tui implements Rune's interactive task picker (the `--choose` experience) as a Bubble Tea program.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL