backtick
Local task compiler for coding agents: compiles the request plus repository evidence into a minimal task packet, then verifies the patch loc
Open source Open in the app JSON README (API)
About
Local task compiler for coding agents: compiles the request plus repository evidence into a minimal task packet, then verifies the patch locally.
Details
- Kind
- Plugins
- Topic
- Developer tools
- Publisher
- amalshehu
- Origin
- gemini
- Category
- ferramentas
- Version
- 0.1.0
- Last push
- 2026-07-12T15:06:48Z
- Repository state
- ativo
- Language
- TypeScript
- License
- MIT
- Added
- 2026-08-30 14:13:39
- Updated
- 2026-08-30 14:13:39
- Origin id
amalshehu/backtick
README
<h1 align="center">backtick</h1>
<p align="center">
<em>A local task compiler that gives coding agents less repository context —
and measures whether that actually reduces cloud tokens per verified task.</em>
</p>
<p align="center">
<img src="https://img.shields.io/badge/license-MIT-111111?style=flat-square" alt="MIT license">
<img src="https://img.shields.io/badge/language-TypeScript-111111?style=flat-square" alt="TypeScript">
<img src="https://img.shields.io/badge/local%20model-Ollama-111111?style=flat-square" alt="Ollama">
</p>
**[What this is](#what-this-is) · [How it works](#how-it-works) ·
[Try it](#try-it) · [The benchmark is the claim](#the-benchmark-is-the-claim) ·
[Development](#development)**
## What this is
Coding agents burn most of their spend rediscovering your repository:
reading files that don't matter, grepping in circles, re-sending the same
context every turn. backtick moves that work to your machine.
It compiles a user request plus repository evidence into a minimal,
token-budgeted **task packet** for the expensive frontier model, then
verifies the resulting patch locally. The frontier model gets exact source
spans, structure, tests, and diagnostics — not the repository.
```text
User request
↓
Local intent planner (Ollama; deterministic fallback)
↓
Repository evidence engine (TypeScript compiler, text search, git)
↓
Token-budgeted task packet (500–4000 tokens, omissions named)
↓
Frontier coding agent (Claude Code — your normal agent)
↓
Patch
↓
Local typecheck + tests (verify_patch)
↓
Success, or a compact failure packet — never the raw log
```
The single number that decides whether any of this survives:
```text
cloud tokens / verified successful task
```
## How it works
Four MCP tools (`backtick-mcp/`), one thin skill, no shell tool:
| Tool | Does |
|------|------|
| `prepare_task` | request + token budget → evidence packet |
| `expand_context` | pointed question → only new evidence |
| `inspect_symbol` | definition, callers, callees, types, tests |
| `verify_patch` | configured checks → success or compact failure packet |
Every fact carries provenance (source tool, file, line, git revision) and a
trust class: **FACT** (mechanically extracted), **HYPOTHESIS** (proposed by
the local planner — it may suggest search concepts, never repository
facts), **CONSTRAINT** (stated by user or project config). The original
request is never rewritten.
The skill (`skills/backtick/SKILL.md`) teaches the agent the loop: prepare
before exploring, work from the packet, expand what's missing, verify
before claiming done. Levels set the packet budget: lite 1000 / full 2000 /
ultra 4000.
## Try it
```bash
npm install && npm install --prefix backtick-mcp
npm run build --prefix backtick-mcp
# in a TypeScript repo with a backtick.json (see benchmarks/fixtures/ for shape):
claude --plugin-dir /path/to/backtick
```
Optional local planner: run [Ollama](https://ollama.com) and pull a small
coder model (`ollama pull qwen2.5-coder:7b`). Without it, the deterministic
planner takes over automatically — nothing blocks.
## The benchmark is the claim
`benchmarks/` runs the same headless `claude` on the same broken workspace
across three arms — `baseline` (normal repo tools), `control` (one frugality
sentence), `backtick-det` (tools, no local model) — and
the harness, never the agent, verifies each patch. Fixtures are
self-authored TS repos with 10 break-injected tasks, each proven to fail
before any run is allowed to cost money.
```bash
node benchmarks/validate-fixtures.js # instrument check, no spend
node benchmarks/run.js --dry-run # the matrix, no spend
node benchmarks/run.js --n 3 # the real thing
```
Go/no-go gate: ≥30% fewer cloud tokens per verified task than baseline, no
success-rate drop, and beats the control sentence. Results are published in
`benchmarks/results/` — including the losses.
## Development
```bash
npm test # root: adapters, hooks, sync, plus subpackages
npm test --prefix backtick-mcp # engine unit tests (vitest)
npm run typecheck --prefix backtick-mcp
node scripts/build.js # regenerate host adapters from hand sources
node scripts/check-sync.js # staleness + canary guard
```
Hand sources: `skills/backtick/SKILL.md`, `AGENTS.md`, `sources/prompts/`.
Everything under `.cursor/`, `.windsurf/`, `.openclaw/`, etc. is generated —
edit the sources, run the build.
MIT.