Skip to content
Limited Edition DevTools

17 tools · 176,000+ downloads · MIT · Local by default

Get your data right before the model sees it.

Single-purpose tools for the manual work in front of every model: pull the values out, check they are what you think, and catch what should not travel. In your editor, in a terminal, or callable by an agent over MCP.

Featured · Check

Lint Jev and Luna questions before they are sent: the questions you write for TypeSafe's Jev, OpenAI's Decisions API (gpt-6-luna) or any platform that serves one, as you type, with no API key and no network calls. An optional command asks the model itself to check a file.

The tools

The work before the work.

Building anything real on top of a model starts with getting data into shape: pulling it out, checking it, and making sure nothing sensitive came along. That part is manual, repetitive, and almost never shown — so it gets done by hand, in a hurry, and the output is trusted because nobody has time to verify it.

These are the steps, each one command, each one engineered rather than improvised: deterministic output, large files streamed rather than loaded whole, and behaviour pinned by tests so the result is the same tomorrow. 176,000+ downloads later, that is still the whole idea.

01 · Extract

Get it out

Values are buried in structure — JSON, YAML, CSV, TOML, INI, .env. Pulling the ones you need is tedious enough that people write a throwaway script, or do it by hand and hope.

02 · Check

Check it

Are the dates real dates? Do the URLs resolve? Is that a valid colour, a valid path, a regex that matches what you think it matches? This is the step that gets skipped.

03 · Guard

Guard it

Nothing sensitive should be in the pile you are about to hand to a model or commit to a repo. Finding out afterwards is the expensive version.

Why LE

The same four promises, every tool.

  1. 01

    Local by design

    Nothing leaves your machine unless you send it. Fifteen of the seventeen tools make no network requests at all. Scrape-LE fetches the page it is checking, because that is the job. DecisionLint lints offline, and sends questions to the model's platform only when you ask it to, with your own key: an Ask command per platform and a probe in the editor, one command-line flag, and two MCP tools whose descriptions say they cost money. Telemetry is off by default and only ever writes to a local output channel you can read.

  2. 02

    One job each

    No suites, no kitchen sinks. Each tool does one thing, activates fast, and gets out of the way.

  3. 03

    Held to the same bar

    Every extension ships bundled, with no runtime dependencies — except Scrape-LE, which ships the browser driver it needs — and every Rust tool ships one binary. All seventeen run CI on Linux, macOS, and Windows: the extensions against a real extension host and an installed VSIX, the crates against a fixture corpus that ships inside the crate so anyone can rerun it.

  4. 04

    Yours to read

    MIT licensed with every repo public. Sixteen of the seventeen extensions ship their interface translated into 12 languages.

Install

Pick your editor.

Every tool installs the same way.

ext install nolindnaidoo.paths-le

Open the Quick Open bar (Cmd/Ctrl+P) and paste. Works for any tool — swap the id.

Every LE extension on the VS Code Marketplace (opens in new tab)

Rust CLI

16 of the 17 also ship a standalone binary — the same engine over a whole repository, with no editor and no Node, and an MCP server in the same file. 16 of them are on crates.io today; the rest build from their repository until they publish.

cargo install string-le paths-le envsync-le scrape-le numbers-le urls-le colors-le dates-le secrets-le regex-le i18n-le ids-le unicode-le ips-le versions-le units-le

Agents

Wire them into your agent.

Every tool ships the same engine as an MCP server. Pick your agent host and the tools you want, then copy what comes out.

Agent host

Run once per tool. Claude Code stores the server itself.

Tools
claude mcp add decisionlint -- npx -y decisionlint-mcp

A model is not a host. GLM, Kimi, Qwen and the rest run inside one of these, so pick the host you run them in. Any other MCP host starts the same server over stdio with the command in its config.

Beyond the editor

Same maker, different surface.

Two Rust desktop tools that turn screen pixels into machine-usable automation — each with its own site.

  • pixelcoords

    Rust · desktop

    Freeze your screen, mark regions, get pixel-exact coordinates and crops.

  • pixelactions

    Rust · desktop

    Consume human-verified coordinates, perform the interaction, confirm it landed.

FAQ

Short answers.