EXPERIMENT_019 // ASI-CHECKLIST.LINTER

ASI-Checklist Linter

Paste or upload an agent's configuration — tool definitions, MCP servers, hooks, memory writes — and get a ten-category scorecard against the OWASP Top 10 for Agentic Applications, with a labelled finding for every risk pattern the static analysis actually finds.

TEXT INPUTCREATED 2026.07.15BETA

LOADING EXPERIMENT...

Paste an agent's configuration — an agent definition, an MCP server list, a tool allowlist, a memory or hook script — or click Load demo preset to see a pre-seeded example scored immediately. The linter runs ten deterministic checks, one per OWASP ASI category, entirely in your browser: nothing you paste or upload is ever sent to a server. Each category returns pass, warn, fail, or not-detectable, with a plain-language finding for every risk pattern found and a link back to the OWASP definition it maps to.

HOW IT WORKS

Ten deterministic checks, no LLM call

Each of the ten OWASP ASI categories (ASI01-10) has its own rule module — a documented regex risk pattern (an unscoped terminal tool, a hardcoded API key, an unpinned MCP package, a raw eval() on model output) paired with a bounded-window search for a nearby mitigating keyword. No model call, no network request, no randomness — the same input always produces the same scorecard.

A four-state scorecard, not a pass/fail toggle

Every category resolves to pass, warn, or fail, and each mitigation search is bounded to a fixed character window around the risk match rather than scanning the whole input — a confirmation gate written once near one tool must not silently clear an unrelated finding three sections away.

Honesty over false confidence

ASI10 (Rogue Agents) always returns not-detectable, on every input, with no exception. Misalignment, concealment, and autonomous self-directed behaviour are runtime properties visible only across live agent sessions, not in a config file — a keyword heuristic here would produce a confident-looking score with no real detection power. The other nine categories get real static-analysis coverage; this one gets an honest admission of the method's limit instead.

Nothing leaves your browser

There is no API route behind this experiment. The textarea, the file-upload reader, and the full ten-category analysis all run client-side in the same pass — the pasted or uploaded configuration is never transmitted or persisted anywhere.

WHAT THIS PROVES

Static analysis is a tractable proxy for a meaningful slice of agent security review: a risk-pattern-plus-nearby-mitigation check, applied per OWASP category, recovers a real chunk of what a human reviewer would flag in an agent's tool, MCP, and hook configuration — in milliseconds, with zero LLM cost and a fully deterministic result.

Not every category in a security taxonomy is checkable the same way, and pretending otherwise is worse than admitting it. The gap this linter draws between nine config-shaped, statically-checkable categories and one runtime-only, not-detectable category is itself a more useful reading of the OWASP taxonomy than a scorecard that scores all ten with equal, false confidence.

← BACK TO PLAYGROUND

SYSTEM.INT // 2026 LABS_CORE v2.78.2

LATENCY: STATUS: NOMINAL