io.github.10iii/air
AI-optimized tool output compression for read, grep, diff, bash, test, web, search, and more
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
@10iii/air-mcp-serverclaude mcp add air -- npx -y @10iii/air-mcp-server@0.2.8
{
"mcpServers": {
"air": {
"command": "npx",
"args": [
"-y",
"@10iii/air-mcp-server@0.2.8"
]
}
}
}
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Contents
AIR - AI-optimized Information Representation
AIR is a toolkit for optimizing tool outputs for AI consumption. The name is inspired by "accessibility retrofitting" - just as we retrofit infrastructure for accessibility, we need to retrofit developer tools for AI ergonomics.
The Problem
AI context windows are the scarcest resource. A 200K token window sounds large, but:
- A single
npm installoutput can consume 2000+ tokens - A test report can eat 5000+ tokens
- 50-96% of this is noise: progress bars, blank lines, redundant info
The real cost isn't tokens - it's attention dilution. Even with unlimited tokens, noise in context degrades AI reasoning quality.
The Solution
AIR intercepts tool outputs at the source, filtering noise before it enters the context window. Prevention, not cleanup.
Packages
| Package | Description | npm |
|---|---|---|
@10iii/air-core | Core compression library | |
@10iii/air | CLI tool (air command) | |
@10iii/air-oc-plugin | OpenCode plugin | |
@10iii/air-openclaw-plugin | OpenClaw plugin |
Quick Start
CLI
# Install globally
npm install -g @10iii/air
# Read a file with compression
air read src/index.ts --skeleton
# Run a command with output compression
air bash "npm install"
# Search with de-duplication
air grep "TODO" --include "*.ts"
# Test output compression
air test "npm test"
As a Library
import { ReadCompressor, BashCompressor, GrepCompressor } from '@10iii/air-core';
// Compress file content
const read = new ReadCompressor();
const result = read.compress(fileContent, { mode: 'skeleton' });
// Compress command output
const bash = new BashCompressor();
const result = bash.compress(output, { command: 'npm install' });
OpenCode Plugin
Add to your opencode.json:
{
"plugin": ["@10iii/air-oc-plugin"]
}
Compressors
air-read
File content compression with intelligent truncation and structure awareness.
- skeleton: Extract function/class signatures only
- focused: Line range extraction with context
- truncate: Smart truncation with size limits
air-bash
Command output compression with pattern recognition.
- npm/pnpm/yarn install → progress removal, error extraction
- git operations → diff summarization
- Generic → intelligent truncation
air-grep
Search result compression with path de-duplication and context optimization.
air-test
Test output parsing for pytest, jest, go test, and more.
air-web
Web page content extraction with readability and markdown conversion.
air-ls
Directory listing with tree structure and smart filtering.
air-diff
Diff output compression with hunk summarization.
air-api
API response compression (JSON field filtering).
air-search
Web search with multiple engine support (DuckDuckGo, Bing, Baidu, Sogou).
Token Savings Rate (TSR)
| Compressor | Typical TSR |
|---|---|
| air-test | 90%+ |
| air-bash | 60-90% |
| air-read | 50-80% |
| air-grep | 40-60% |
| air-web | 70-90% |
Design Principles
- Prevention > Cleanup - Filter at the source, not after
- Rule-based > LLM-based - Deterministic compression, no API calls
- Progressive Disclosure - Skeleton first, details on demand
- Cross-platform - Works with any AI tool
- Zero API Key - No external API dependencies
Requirements
- Node.js >= 18
License
MIT
Privacy
AIR collects anonymous usage statistics to improve the product. This includes compressed content hashes (not the content itself), compression ratios, and basic metadata. No personal data is collected. You can modify this via air config.
Contributing
Contributions welcome! Please read CONTRIBUTING.md and the Architecture docs first.
Frequently asked questions
What is io.github.10iii/air?
AI-optimized tool output compression for read, grep, diff, bash, test, web, search, and more
How do I install io.github.10iii/air?
It runs on your machine. In Claude Code: claude mcp add air -- npx -y @10iii/air-mcp-server@0.2.8. For other clients, paste the JSON configuration from this page into their MCP settings.
Does io.github.10iii/air need an API key?
Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.
Is io.github.10iii/air open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains io.github.10iii/air?
It is published by 10iii. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.