claude

llm-externalizer

MCP server that offloads bounded LLM tasks from Claude Code to cheaper local (LM Studio, Ollama, vLLM, llama.cpp) or remote (OpenRouter) models. Profile-based configuration with ensemble mode, auto-batching, and secret scanning.

2 on GitHubby Emasoftv14.2.0MITupdated 9 days agodeveloper-tools
/

Plugin llm-externalizer from marketplace emasoft-plugins in Emasoft/emasoft-plugins. Commands read from the repo's manifest — 9 days ago.

This plugin runs code on your machine — its hooks fire automatically on events like tool use. The exact commands are listed below; read them before installing.

What it installs

Skills (19)

  • dogfood-test

    Internal maintainer dogfood harness for the llm-externalizer plugin — exercises every surface (CLI verbs, benchmark, all slash commands, all skills) with a zero-spend offline sweep plus an opt-in free-pool live smoke. NOT user-invocable; run via tests/dogfood/dogfood_test.py. Use when validating a r

  • hf-cli

    llm-externalizer's bundled copy, adapted for its setup wizard (distinct from the huggingface-skills plugin's skill of the same name). Hugging Face Hub CLI (`hf`) reference for downloading, uploading, and managing models, datasets, and repos. Covers custom --local-dir placement, --include/--exclude f

  • huggingface-best

    llm-externalizer's bundled copy, adapted for its setup wizard (distinct from the huggingface-skills plugin's skill of the same name). Find the highest-scoring models for a coding task by querying the official Hugging Face benchmark leaderboards, with memory-budget filtering and per-device fit. Use w

  • huggingface-community-evals

    llm-externalizer's bundled copy, adapted for its setup wizard (distinct from the huggingface-skills plugin's skill of the same name). Run rigorous evaluations against Hugging Face Hub models using inspect-ai or lighteval on local hardware. Covers backend selection (vLLM / Transformers / accelerate),

  • huggingface-local-models

    llm-externalizer's bundled copy, adapted for its setup wizard (distinct from the huggingface-skills plugin's skill of the same name). Select GGUF artifacts and quantizations for llama.cpp on CPU, Mac Metal, CUDA, or ROCm runtimes. Covers Q4_K_M vs Q5_K_M vs Q6_K trade-offs, llama-server launch flags

  • huggingface-mlx-models

    Select MLX-quantized models from the Hugging Face Hub and serve them on Apple Silicon (arm64) via mlx_lm.server, vMLX, or LM Studio's MLX runtime. Covers mxfp4 / OptiQ-4bit / DQ3_K_M quant interpretation and unified-memory quant-budget guidance. Use when the setup wizard picks MLX on arm64. Loaded b

  • llm-externalizer-cli-reference

    Reference for every `llm-ext` (LLM Externalizer) CLI command, flag and default. Use it whenever you run, choose or explain an `llm-ext` command, or want to offload bounded read-only work (summarize, scan, review, audit, compare, check imports/references/specs, security triage, classify, cluster, ded

  • llm-externalizer-compact-session

    Compact any Claude Code session transcript to a compaction-style summary at $0, via `llm-ext session compact`. Accepts `<project-slug>/<session-id>.jsonl` for a session in ANY project, a bare session id for the current one, or nothing at all to compact this project's most recent session. Use when as

  • llm-externalizer-config

    Use when inspecting LLM Externalizer profile config or explaining the manual-edit policy. Trigger with "show LLM profile", "which model is active", "edit settings.yaml".

  • llm-externalizer-create-profile

    Use when an agent needs its OWN llm-ext profile in settings.yaml, or when two agents are fighting over one profile's model. Trigger with "create a profile", "add an llm-ext profile", "which model should my agent use", "my llm-ext calls are refused", "IRON RULE not validated for".

  • llm-externalizer-ensemble-autoselect

    Reference for rotating the OpenRouter ensemble when a model has 404'd / been deprecated / is misbehaving. The persistence decision is CODE, not judgment: the CLI reads the durable model-health ledger and rotates only on ≥3 consecutive same-status 400/404/410/422 failures within 24h. Real invocation

  • llm-externalizer-free-scan

    Use when scanning a project for free using the Nemotron model (no cost, lower quality). Trigger with "free scan", "free-scan", "scan for free", "quick scan", "cheap scan", "scan without cost", "nemotron scan".

  • llm-externalizer-mass-scouting

    Search, classify, categorize, and triage many files via a cheap LLM into a queryable SQLite registry. Use when you have N files and need to know which are about X at any scale (hundreds to millions). Trigger with "mass scout", "triage this corpus", "categorize a folder", "build an inventory", "audit

  • llm-externalizer-or-model-info

    Reference for querying OpenRouter model details — supported params, pricing, latency, uptime, quantization. Real invocation path is the `llm-ext or-model-info --model <id>` CLI (also `or-model-info-table` for a colored table, `or-model-info-json` for raw JSON); this skill is loaded as background ref

  • llm-externalizer-review

    Use when reviewing code with THIS agent's own model at $0 external spend — llm-ext plans the review (files + rubric, no LLM call), the agent reviews. Trigger with "delegate review", "review with your own model", "zero-cost review", "review plan", "host-agent review".

  • llm-externalizer-scan

    Use when scanning an entire project or codebase for bugs, security issues, or code quality problems. Trigger with "scan project", "audit codebase", "scan codebase", "full scan", "run project scan", "check whole project", "scan all files".

  • llm-externalizer-usage

    Loaded as a usage reference for offloading bulk file analysis to external LLMs to save main-context tokens. Covers tool choice, `input_files_paths`/`folder_path`, answer_mode, and report locations. Real invocation path is the `llm-ext` CLI directly (e.g. `llm-ext code-task`, `llm-ext compare-files`,

  • vllm-metal-setup

    Install, set up, and configure the vllm-metal backend — the community vLLM hardware plugin that runs vLLM on Apple Silicon Macs via MLX. Loaded by llm-externalizer-setup-agent when the user wants vLLM on an Apple Silicon Mac or the setup wizard picks vLLM as the macOS backend. Apple Silicon (arm64)

  • vmlx-setup

    Install, set up, and configure the vMLX backend — an MLX-native inference server for Apple Silicon (jjang-ai/vmlx) exposing an OpenAI/Anthropic/Ollama compatible API. Loaded by the llm-externalizer setup wizard when it picks vMLX as the macOS backend, or when the user wants MLX-native serving on an

Slash commands (25)

  • /llm-externalizer:llm-externalizer-assess-model

    Assess ONE OpenRouter model against EVERY LLM tool's per-tool REQUIREMENTS (TRDD-f45eeaa0) — free: makes NO LLM call (no token cost), only a public model-catalog fetch (no API key). Reports, per tool, whether the model meets that tool's hard requirements (cost / context / output / params) and which

  • /llm-externalizer:llm-externalizer-auto-replace

    Check every model this plugin runs on — each benchmarked tool's model AND the three ensemble slots — against the durable model-health ledger, and surface (or, with --apply, adopt) the best replacement. Tool models are judged by their own same-or-cheaper benchmark; ensemble slots are judged by a CODE

  • /llm-externalizer:llm-externalizer-bench-free-pool

    Benchmark every model in the active profile's free pool (or the bundled FREE_POOL_SEED if none is pinned) with one invocation, and optionally rewrite the pool to the models that passed. Same scoring as /llm-externalizer-benchmark but auto-fills the candidate set from the free-model list, verifies ea

  • /llm-externalizer:llm-externalizer-benchmark

    Benchmark OpenRouter programming-category models against a TypeScript classification task, then pick/apply the best ensemble. Filters by cost + capability, scores each candidate against 71 fixture functions + 3 literal keywords, writes a markdown comparison report. Use this to pick the cheapest mode

  • /llm-externalizer:llm-externalizer-change-model

    Redirect to user-only manual model/ensemble configuration. There is NO change-model command — the tool is read-only by design. This command explains how to edit ~/.llm-externalizer/settings.yaml by hand and reload with reset, and points you at the optional benchmark / assess-model helpers for pickin

  • /llm-externalizer:llm-externalizer-check-model-health

    Self-check the configured model(s) of the active profile — free: NO LLM call, only a public model-catalog fetch (no API key). For the main/second/third model and every tool_models entry it reports PRESENCE (still in the OpenRouter catalog vs deprecated/removed), COST DRIFT (price moved vs a seeded b

  • /llm-externalizer:llm-externalizer-cluster-synonyms

    Cluster SENTENCES (or short labels) by full-sentence meaning equivalence — file-in, file-out, ZERO orchestrator tokens. The whole batch+verify+canonicalise loop runs inside the CLI; you get back only the output paths. NOT a word-level synonym lookup — the unit of comparison is the full sentence/labe

  • /llm-externalizer:llm-externalizer-configure

    Inspect LLM Externalizer profile configuration. Read-only — model & profile changes are user-only via manual YAML editing.

  • /llm-externalizer:llm-externalizer-discover-new-models

    Autodiscover models that newly appeared in the OpenRouter catalog since the last run — free: makes NO LLM call (no token cost), only a public model-catalog fetch (no API key). Diffs the live catalog against a seeded snapshot and, for each NEW model id, assesses it against every LLM tool's per-tool r

  • /llm-externalizer:llm-externalizer-discover

    Check LLM Externalizer health, active profile, model, auth status, and context window

  • /llm-externalizer:llm-externalizer-fix-found-bugs

    Aggregate unfixed findings across every report in `./reports/llm-externalizer/` and fix each via a fresh serial-fixer subagent (sonnet/opus menu). Optional `@merged-report.md` scopes the loop to one report.

  • /llm-externalizer:llm-externalizer-fix-report

    Fix findings in ONE existing per-file scan report. Pick sonnet or opus via menu, dispatches a single parallel-fixer subagent, returns its `.fixer.`-summary path. For whole-folder audits use `/llm-externalizer:llm-externalizer-scan-and-fix`.

  • /llm-externalizer:llm-externalizer-high-quality-scan-and-fix

    High-quality two-stage audit. ONE strong remote model (default z-ai/glm-5.2, max reasoning + cache) scans each file via high_quality_scan; then parallel Opus fixer subagents (≤15) verify and fix each finding in the same run. Paid + OpenRouter-only — fails fast on a local backend, free_only, or no cr

  • /llm-externalizer:llm-externalizer-high-quality-scan

    Folder scan driven by ONE strong remote model (default z-ai/glm-5.2) at max reasoning effort + prompt cache, NOT the cheap 3-model ensemble. Thin wrapper over the high-quality-scan CLI command. Paid and OpenRouter-only — fails fast (never silently downgrades) on a local backend, free_only mode, or e

  • /llm-externalizer:llm-externalizer-install-statusline

    Install the LLM Externalizer multi-tier Claude Code statusline (model + context bar + cumulative CLI tokens/cost + OpenRouter credits + 5h/7d limits, with width-aware tiering and per-section error isolation).

  • /llm-externalizer:llm-externalizer-mass-scout

    Mass-scouting dispatcher — every action of the pipeline in ONE command. Bare invocation runs the end-to-end LLM scout (phase 4: fieldset -> JSON Schema, worker-pool fan-out, repair + validate, SQLite persist, markdown report). Pass an action word for everything else (register, estimate, search, expo

  • /llm-externalizer:llm-externalizer-reset

    Reload settings.yaml, clear caches, and zero the on-disk session counters. Use after editing settings or when the backend misbehaves. - Bash

  • /llm-externalizer:llm-externalizer-scan-and-fix-serially

    Scan a codebase, aggregate findings into one canonical bug list, then fix each bug serially with a sonnet- or opus-model serial-fixer subagent. Use when fixes mutate shared state or bug order matters.

  • /llm-externalizer:llm-externalizer-scan-and-fix

    Two-stage codebase audit. LLM Externalizer scan produces one report per file; parallel sonnet- or opus-model fixer subagents (≤15 concurrent) verify and fix each finding. Orchestrator never reads scan or fixer content — only report paths.

  • /llm-externalizer:llm-externalizer-search-existing-benchmark

    Qualify OpenRouter model(s) for the search_existing_implementations task (duplicate-implementation match / "does this already exist?") against a labeled GOLDEN FIXTURE codebase, scored DETERMINISTICALLY by driving the REAL search-existing pipeline — precision/recall/F1 over the known duplicate locat

  • /llm-externalizer:llm-externalizer-search-existing-implementations

    Scan a codebase (same language as the input files) for an existing implementation of a described feature. FFD-batched ensemble calls, exhaustive per-file output. Works for PR duplicate-check and greenfield audits.

  • /llm-externalizer:llm-externalizer-security-scan

    Dedicated, injection-hardened security triage for suspected-malicious code. NOT the mass_scout pipeline — a bespoke judge with a nonce-delimited untrusted-data envelope, hardened system prompt, strict json_schema output, in-band injection pre-scan, and fail-safe-to- 'uncertain' on every error/deviat

  • /llm-externalizer:llm-externalizer-security-triage-benchmark

    Qualify OpenRouter model(s) for the security_scan triage task against a labeled GOLDEN DATASET, scored through the REAL judge pipeline (same injection-hardened prompt, strict json_schema, clamp, fail-safe). Recommends the best SAME-OR-CHEAPER model that PASSES — zero under-flags on the critical judg

  • /llm-externalizer:llm-externalizer-setup

    Interactive setup wizard for the llm-externalizer plugin's local-model backends. Detects platform (OS, arch, RAM, GPU), finds installed runners (Ollama, LM Studio, vLLM, llama.cpp, Jan), assists with installation if none are present, helps download Hugging Face models, runs five calibrated compatibi

  • /llm-externalizer:llm-externalizer-update-all

    The WHOLE model refresh in one command — discover the live OpenRouter catalog, requirement-gate every tool, run every benchmark, rank, and write the winners (ensemble + per-tool models + the free_models pool) to settings.yaml. Hard spend cap; defaults to a provably $0 free-model refresh. Trigger wit

Subagents (6)

  • llm-externalizer-parallel-fixer-opus-agent

    Opus-model variant. Verify and fix ONE LLM Externalizer per-file bug report. Input is a single absolute path to a report `.md`. Validates findings, applies minimal fixes only to REAL bugs, runs linters, writes a `.fixer.`-tagged summary, returns the summary path. Dispatched in parallel by `llm-exter

  • llm-externalizer-parallel-fixer-sonnet-agent

    Sonnet-model variant. Verify and fix ONE LLM Externalizer per-file bug report. Input is a single absolute path to a report `.md`. Validates findings, applies minimal fixes only to REAL bugs, runs linters, writes a `.fixer.`-tagged summary, returns the summary path. Dispatched in parallel by `llm-ext

  • llm-externalizer-reviewer-agent

    Use for a fast code review from the LLM Externalizer ensemble without loading scan output into the main context. Accepts a file/folder/glob and returns only report paths. Trigger with "review this file", "llm-ext review", "audit these files", "scan for bugs".

  • llm-externalizer-serial-fixer-opus-agent

    Opus-model variant. Fix exactly ONE bug from a markdown bug list produced by llm-externalizer-fix-found-bugs. Reads the bug-file absolute path, picks the highest-severity unfixed entry, applies a minimal surgical fix, updates the bug file with a ` — FIXED` marker plus a short post-mortem, returns a

  • llm-externalizer-serial-fixer-sonnet-agent

    Sonnet-model variant. Fix exactly ONE bug from a markdown bug list produced by llm-externalizer-fix-found-bugs. Reads the bug-file absolute path, picks the highest-severity unfixed entry, applies a minimal surgical fix, updates the bug file with a ` — FIXED` marker plus a short post-mortem, returns

  • llm-externalizer-setup-agent

    Interactive setup wizard for the llm-externalizer plugin. Detects platform (OS, arch, RAM, GPU), finds installed local-model runners (Ollama, LM Studio, vLLM, llama.cpp, Jan), assists with installation when none are present, helps download Hugging Face models (installing the `hf` CLI if missing), ru

Hooks (1)

  • SessionStart

    sh "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/install-path-shim.sh"

View source on GitHub

More from Emasoft/emasoft-plugins

All 14 plugins →

Comprehensive validation suite for Claude Code plugins, marketplaces, hooks, skills, and MCP servers. Includes 17 Python validators, 2 expert agents, and 190+ validation rules.

52 skills · 14 commands · 14 agents

2

Expert agent plus 60 preserved Claude Code documentation chapters (mods, plugins, hooks, skills, subagents, marketplaces, settings) for creating, fixing, improving and evaluating Claude Code mods and plugins.

69 skills · 1 command · 2 agents

2

High-accuracy skill activation (88%+) with AI-analyzed keywords, weighted scoring, synonym expansion, and three-tier confidence routing.

8 skills · 23 commands · 1 agent · hooks

2

Four-phase PR review pipeline and full codebase audit pipeline for Claude Code. PR review: code correctness swarm, claim verification, skeptical external review, security analysis with deduplication. Codebase audit: file inventory, grep triage, parallel discovery swarm, verification, gap-fill, consolidation, TODO generation, and optional fix loop.

5 skills · 11 commands · 1 agent

2

Automatically reviews and fixes Claude's code changes using a separate Claude instance in a git worktree after commits. Two-phase pipeline: code correctness (Phase 1) then functionality verification (Phase 2).

1 skill · 2 agents · hooks

2

Universal terminal-menu system for Claude Code plugins. Any agent invokes scripts/menu_write.py via Bash (~25ms) to render a JSON menu spec to a tempfile; a bundled Stop hook emits it as systemMessage at main-session turn end — the menu appears in the user terminal exactly when they can type a reply. No subagent fork, no extended-thinking overhead, no token cost to the orchestrator.

2 commands · hooks

2

Similar plugins

claude-mem

claudecodex

Persistent memory for Claude Code: the next session starts where the last one left off.

29 skills · 1 MCP server · hooks

thedotmack/claude-mem 116,618

context7

claudecodex

Up-to-date documentation lookup. Pull version-specific documentation and code examples directly from source repositories into your coding agent's context.

1 MCP server

upstash/context7 64,709

mempalace

claudecodex

AI memory system — mine projects and conversations into a searchable palace. 47 MCP tools, auto-save hooks, guided setup.

3 skills · 6 commands · 1 MCP server · hooks

MemPalace/mempalace 60,536

Reliable automation, in-depth debugging, and performance analysis in Chrome using Chrome DevTools and Puppeteer

8 skills · 1 MCP server

ChromeDevTools/chrome-devtools-mcp 55,181

slidev

claude

Claude Code skill for creating and presenting Slidev slidedecks

1 skill

slidevjs/slidev 49,452

gitnexus

claudecodex

Code intelligence powered by a knowledge graph. Provides execution flow tracing, blast radius analysis, and augmented search across your codebase.

12 skills · 1 MCP server · hooks

abhigyanpatwari/GitNexus 48,482

Maintain llm-externalizer?

This page updates itself from your repo. Add the badge to your README, or get it Featured to pin it above the organic results with a followed link to your site.

claude & codex plugins14 plugins