Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add instructions/lunarmodules/terminal.lua/agents-mdgit clone --depth 1 https://github.com/lunarmodules/terminal.luaWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.01028 | $0.01028 |
| Opus 5 | $0.00514 | $0.00514 |
| Sonnet 5 | $0.00206 | $0.00206 |
| Haiku 4.5 | $0.00103 | $0.00103 |
Grade A, and why
terminal.lua AGENTS.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 102 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Guidance for AI agents
This file is the main entry point for AI tools working in this repository. It provides project context and points to authoritative sources for conventions.
What this project is
terminal.lua is a cross-platform terminal library for Lua (Windows/Unix/Mac). It provides terminal handling, text handling, and UI building blocks (panels, prompts, etc.).
Project layout
| Path | Purpose |
|---|---|
src/terminal/ |
Lua source (modules under terminal.*, terminal.cli.*, terminal.ui.*) |
spec/ |
Tests (Busted); mirror source layout where relevant |
examples/ |
Example scripts |
doc_topics/ |
Documentation source (markdown); generated output in docs/ |
experimental/ |
Experimental or non-stable code |
.luacheckrc |
LuaCheck lint configuration (authoritative for lint) |
.editorconfig |
Editor/formatting preferences |
config.ld |
ldoc configuration for API docs |
Spec files live in a flat spec/ directory and are named by module (e.g. 18-prompt_spec.lua for terminal.cli.prompt).
Conventions and workflow
Details are in CONTRIBUTING.md. Summary:
- Getting started: Use the
Makefilefrom the repository root; LuaRocks should use the user tree (see CONTRIBUTING). - Commits: Atomic commits, conventional-commits format (type + scope, present tense, 50-char header, 72-char body).
- Testing:
make test(Busted),make lint(LuaCheck). Coverage: LuaCov, output inluacov.report.out. Every new feature, function, or component must be accompanied by tests where reasonable and applicable; exceptions are documented (see CONTRIBUTING). - Documentation: ldoc; sources in
config.ld. Runmake docsto generate; do not commit generated docs (make cleanwill revert generated docs). Update comments and examples during development.
Test isolation
In Busted the test files are ran as Lua files, all describe blocks are executed at load time. All other blocks only at test-runtime. Hence all initialization MUST be in setup and before_each blocks, and NEVER in describe blocks. The variables to hold the setup-stuff can be defined at the describe level (to keep them in scope for all tests within the block), but no values should be assigned to them at that point.
The only exception is code that generates tests, like table-tests, etc. since they are designed to run at the describe level.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 102 lines · 1,028 tokens per session scan A a25de4d4b25e
terminal.lua AGENTS.md is an instructions file published in the GitHub repository lunarmodules/terminal.lua (50 stars, last pushed 18d ago), licensed MIT. It adds 1,028 tokens to every session, about $0.0051 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other instructions, from other repositories
wispterm AGENTS.md
Instructions for xuzhougeng/wispterm, covering agents.md, architecture, ui presentation styles, cohesion and coupling and integration layer vs feature domains.
nuclear AGENTS.md
AGENTS.md instructions for nukeop/nuclear, covering agents.md, project overview, packages, commands and development.
nuclear copilot-instructions.md
Copilot instructions for nukeop/nuclear, covering nuclear music player - copilot instructions, project overview, key features, tech stack and packages.
rmx AGENTS.md
Instructions for braswelljr/rmx, covering agents.md, project overview, architecture at a glance, project structure and development commands.
termigo AGENTS.md
Instructions for 99apps-id/termigo, a project described as: Termigo is a lightweight open-source, terminal-first AI-native development environment (ADE) built on Tauri 2 + Rust with a React 19 frontend, extended with a Go command-line companion (termi-go) for automation: agent runs, MCP, skills, and project…
termigo CLAUDE.md
Instructions for 99apps-id/termigo, a project described as: Termigo is a lightweight open-source, terminal-first AI-native development environment (ADE) built on Tauri 2 + Rust with a React 19 frontend, extended with a Go command-line companion (termi-go) for automation: agent runs, MCP, skills, and project…