Skip to main content
Glama

Accuracy Retention

Historical maintainer-reported experiment, not a quality guarantee. The table below reports one 50K-token-budget run. Overlapping confidence intervals do not establish equivalence or rule out degradation. These results have not been independently reproduced here.

Model: gpt-4o-mini · Budget: 50K tokens · Wilson 95% CI · Reproduce: python -m bench.accuracy --benchmark all

Benchmark

n

Baseline (95% CI)

Entroly (95% CI)

Retention

Benchmark Delta

NeedleInAHaystack

20

100.0% [83.9–100%]

100.0% [83.9–100%]

100.0%

Baseline

GSM8K

100

85.0% [76.7–90.7%]

86.0% [77.9–91.5%]

101.2%

+1.0%

SQuAD 2.0

100

84.0% [75.6–89.9%]

83.0% [74.5–89.1%]

98.8%

-1.0%

MMLU (4-way MCQ)

100

82.0% [73.3–88.3%]

85.0% [76.7–90.7%]

103.7%

+3.0%

TruthfulQA (MC1)

100

72.0% [62.5–79.9%]

73.0% [63.6–80.7%]

101.4%

+1.0%

LongBench (HotpotQA)

100

57.0% [47.2–66.3%]

59.8% [49.8–69.0%]

104.9%

+2.8%

The reported SQuAD score fell from 84% to 83%. Retention ratios above 100% can reflect sampling or model variability. The displayed intervals are historical reported values, not a validated paired comparison; Wilson intervals require binary outcomes and do not justify uncertainty for averaged partial-credit scores. Establishing non-inferiority needs a predefined tolerance, paired per-task outcomes, appropriate uncertainty estimates, and adequate sample size. These results cannot be extrapolated to more aggressive compression or other models.

Context Selection Quality

19-fragment synthetic corpus · 300-token budget · 3 fixture queries · Reproduce: entroly benchmark

Metric

RAW (Naive FIFO)

TOP-K (local baseline)

ENTROLY (Knapsack)

Avg fragments selected

6.0

6.0

8.7

Avg module coverage

3.0

3.7

8.7

Total SAST catches

0

0

3

Entroly sees 8.7 modules where TOP-K sees 3.7 — it includes auth, payments, AND rate limiting. TOP-K misses the rate limiter. Full methodology, CIs, and reproduce commands →


Related MCP server: Portable MCP Toolkit

Research

Entroly includes the following research-oriented implementations. A module's presence does not establish production reliability, mathematical novelty, or independent validation; consult its implementation and evaluation limitations.

Algorithm

What it does

Implementation

BIPT

Byte-level hallucination detection via Kolmogorov-inspired provenance tracing

provenance_tracer.py

NKBE

Nash-KKT multi-agent token budget equilibrium

nkbe.rs

Causal Context Graph

Intervention-aware fragment feedback learning

causal.rs

Cognitive Bus

ISA event routing with KL-divergence priority

cognitive_bus.rs

Resonance Matrix

Supermodular pairwise fragment value learning

resonance.rs

System 1 <> 2

Dual-process verified-belief bridge (proxy <> vault)

coupling.py

Read the full research documentation · Cite Entroly



Integration hub

Use Entroly at the SDK, framework, proxy, MCP, plugin or agent boundary. A listed name is not automatically a claim that hosted subscription inference is intercepted; provider-bound savings exist only when the request traverses an Entroly-controlled route.

Open the complete verified integration and operations hub →


What is Entroly? (in plain English)

AI coding assistants have a memory limit. Hand one your whole codebase and it gets slow, expensive, and distracted — like giving someone a 500-page manual when they only needed page 47.

Entroly finds page 47.

It sits between your code and the AI, reads everything, and passes along only the parts selected for the question. Three properties to evaluate on your task:

💰 Your bill goes down

Fewer words sent to the AI means a smaller invoice. How much depends on the job — see the real numbers below.

🔍 Recoverable originals

Receipt-backed recovery retains source material locally. Exact recovery requires the referenced store and source bytes to remain available; it does not guarantee answer quality.

🧾 You can check its work

Every decision comes with a receipt: what was kept, what was left out, and why.

Do I have to change my code? No. On hosts with a verified prompt hook,

Entroly runs before the model plans. MCP-only integrations remain callable

tools that an agent may skip; API traffic is intercepted only when it is routed

through the Entroly proxy. Check entroly activation status --json instead of

assuming an installed integration is active.

Do I need to pay for anything to try it? No. The two commands in the Install section below run on your own machine, with no API key, and show you real numbers on your own project before you connect anything paid. (Missing native-engine support is reported without downloading packages — see the note under Install.)


Install

Not sure which one? Pick Python. It's the complete version and what most people use. The others are alternate ways to run the same engine.

Platform

Install

What you get

🐍 Python (pip) — recommended

pip install -U entroly

Everything: the command-line tool, the server your AI editor talks to, and the code library

📦 Node / npm

npm install -g entroly

The same engine, nothing Python required

🦀 Rust (source build)

cd entroly-core && cargo build --release --bin entroly-rs --features proxy

One self-contained program, no Python or Node needed

🍺 Homebrew

brew install juyterman1000/entroly/entroly

The command-line tool on macOS/Linux

🐳 Docker

docker pull ghcr.io/juyterman1000/entroly:latest

Runs in a container, nothing installed on your machine

Prefer a package runner instead of a global install? These commands use the same published artifacts in an isolated tool cache:

# Node / WASM runtime
npx -y entroly@latest --help
pnpm dlx entroly@latest --help
bunx entroly@latest --help

# Complete Python runtime
uvx --from entroly entroly --help
pipx run --spec entroly entroly --help

The Node commands provide the local WASM CLI. The Python commands provide the complete CLI, SDK, MCP, proxy, verification, and native-engine path described above. Entroly's release workflow smoke-tests all five runners against the exact version before a release is considered complete.

Now check that it worked — free, no API key:

cd /your/repo
entroly verify-claims
entroly simulate

Both run locally. Neither one calls an AI or costs anything.

Runtime package repair is off by default. If the native engine is missing, query-conditioned selection is unavailable and reduction figures are labelled unearned. Install it explicitly with python -m pip install -U entroly-core, call entroly.repair() from Python, or set ENTROLY_ENABLE_SELF_HEAL=1 to permit startup repair. This downloads through the configured package index (normally PyPI). ENTROLY_NO_SELF_HEAL=1 and ENTROLY_AIR_GAP=1 override repair consent. See Privacy and recovery-data security.

Extras (entroly[proxy], entroly[native], entroly[full]), the standalone Rust binary, and uninstall steps: Engine & install options.

Contributing from source? Follow the reproducible development setup. Local installation and the normal test suite need no API key; .env.example documents only optional workspace, offline, provider, and proxy settings.


Quickstart — by how you work

Just want it working? pip install -U entroly && entroly go — that's the whole thing. It finds your editor, sets itself up, and shows you a before/after dashboard. The rest of this table is for specific setups.

Your situation

Do this

What it gets you

🟢 "I just want it on." (pip / Python user)

pip install -U entroly && entroly go

Auto-detects your editor, wraps your agent, opens a dashboard showing tokens before and after

"I use Node, not Python." (npm user)

npm install -g entroly && entroly init

Same engine, nothing Python required

"I want one binary, no runtime." (Rust user)

cargo build --release --bin entroly-rs --features proxy (from entroly-core/)

A single native program with no dependencies

"I use Claude Code, Codex, Gemini CLI, or VS Code agent plugins." (plugin user)

Install the Entroly plugin/extension for that host, submit one prompt, then run entroly activation status --json

A trusted prompt hook performs bounded local selection before planning; a receipt proves the hook ran

"I use Cursor with third-party configs enabled."

entroly activation install --host cursor --project .

Merges a reversible Claude-compatible prompt hook; native Cursor MCP remains advisory

"I use Kiro IDE 1.x or CLI 3.x."

entroly activation install --host kiro --project .

Installs a reversible project PromptSubmit hook whose stdout is added to agent context

"I use another MCP host."

entroly attach create --client claude --project . --ttl 4h --install or the client-specific command in the compatibility matrix

Scoped Entroly tools and receipts; the model can still skip MCP unless the host has a verified lifecycle hook

"I'm building my own app in Python." (SDK user)

from entroly import compress, compress_messages, optimize

Call it straight from your code, anywhere you assemble a prompt

Cursor MCP users can also use this one-click install link (no marketplace account required): Add Entroly to Cursor. | "I have an API key and my own app." (proxy user) | entroly proxy → point ANTHROPIC_BASE_URL / OPENAI_BASE_URL / GOOGLE_GEMINI_BASE_URL at localhost:9377 | Every request gets optimized on the way past — no code changes on your side |

Runaway-session rescue — automatic on the proxy, callable everywhere else. When a long agent session approaches the provider's context limit, bulky tool output is compacted in flight: no manual /compact, the prompt prefix stays byte-stable so your warm provider cache survives, and every omitted span is recoverable. The proxy does it for you because it sees the outbound request. Anywhere else — pip, SDK, a provider-SDK wrapper, or an MCP host that passes its transcript — hand the conversation over and get the same policy: from entroly import rescue_session. entroly capabilities reports which protections apply to how you are running. See session rescue.

Why bother: less unnecessary context reaches the model (lower bill, less distraction for the model), nothing is silently lost (every drop is recoverable and receipted), and you can prove it — entroly verify-claims and entroly simulate show real numbers on your own repo before you connect a paid key.

from entroly import compress, compress_messages, optimize
compressed = compress(api_response, budget=2000)
messages   = compress_messages(messages, budget=30000)
context    = optimize(fragments, budget=8000, query="fix the login bug")
entroly compress response.json --out small.json
entroly recover sha256:0b957c79... --out restored.json

Full setup paths for every agent, IDE, and CI use case: Get started in depth · Command reference.


See it work in 30 seconds

Not mocked recordings — each video is rendered from a checked-in command that verifies its source artifact before printing a number.

Full protocols, sample sizes, and every caveat: docs/BENCHMARKS.md.


Benchmarks

The question that matters: if you send less, does the AI start getting things wrong? These are standard public tests, run with and without Entroly.

How to read this: Retention is how well the AI still answered — 100% means it did just as well on far less text. Token savings is how much less was sent (and therefore paid for). Measured with gpt-4o-mini; intervals are Wilson 95% CIs.

Benchmark

Baseline

With Entroly

Retention

Token savings

NeedleInAHaystack

100%

100%

100%

99.5%

LongBench (HotpotQA)

64%

66%

103%

85.3%

Berkeley Function Calling

100%

100%

100%

79.3%

SQuAD 2.0

80%

72%

90%

43.8%

GSM8K

85%

85%

100%

pass-through*

*pass-through: context already fit the budget, left unchanged. n=20–50 per row. Reproduce: python benchmarks/run_readme_benchmarks.py (needs OPENAI_API_KEY).

Being straight with you: look at the SQuAD 2.0 row — accuracy went down (80% → 72%). Compression is a trade, not magic, and it doesn't win everywhere. That's why entroly simulate exists: run it on your own project and see your own numbers before you commit to anything.

Hallucination detection (WITNESS, local, no API): 84.92% accuracy / 0.7976 AUROC on 20,000 HaluEval-QA decisions — within the reported uncertainty of gpt-4o-mini as an API judge on the same shared sample.

Frozen evidence-selection benchmark (opt-in PRISM-R research prototype, not the default compressor): a disagreement guard kept the answer-bearing passage in 298 of 300 cases while selecting an average of 1.02 of 16 passages (paired exact McNemar p=0.21875 vs. BM25 alone) — this experiment measures retrieval of the known-answer passage, not generated-answer quality. Full protocol: PRISM-R neural evidence frontier.

Recovery, latency, and head-to-head frontier results are in docs/BENCHMARKS.md with raw artifacts linked. None of these numbers are a universal or production-savings guarantee for your workload — reproduce them on your own repo with entroly simulate and entroly value.


Features

  • Picks first, shrinks second — it works out which files actually answer your question, then compresses them.

  • Gives you the original back, exactly — anything left out can be restored character-for-character and checked against a fingerprint.

  • Shows its work — a receipt for every decision: what was kept, what was left out and why, and what risk remains.

  • Fact-checks answers — compares what the AI said against the evidence it was given, on your machine, without paying for a second AI call.

  • Doesn't wreck your caching — keeps the unchanging parts of your prompt stable so your provider's discount for repeated text still applies.

  • Rescues sessions before they crash — when a conversation grows too big, it trims recoverable output instead of letting the provider reject the request mid-task.

  • Can route cheap work to cheap models — optional and fail-closed when uncertain.

  • Cross-agent shared memory — Claude, Codex, Cursor, and Gemini can read and write the same compressed context store with automatic SimHash deduplication and agent provenance tracking.

  • Output token reduction — effort-based routing classifies query complexity and steers model verbosity, reducing output tokens alongside input tokens.

  • Shell hook compression — transparent CLI output compression for git, npm, cargo, docker, pytest, kubectl, and terraform. Preserves errors and warnings, strips progress bars and boilerplate.

  • Image compression — 40-90% reduction on screenshots and diagrams for vision API calls, with optional OCR text extraction.

  • Failure miningentroly learn --deep mines session data for recurring failure patterns and writes corrections to CLAUDE.md, .cursorrules, and other agent configs.

Runs as a CLI, Python/TypeScript SDK, MCP server, HTTP proxy, or library import. Full surface map: docs/product-surface.md. Architecture and Rust internals: docs/DETAILS.md.


How Entroly compares

Entroly combines budgeted selection, source-span receipts, and optional verification. These are distinct guarantees: a receipt records retained and omitted material; recovery checks source integrity; WITNESS/EICV checks can still produce false positives or false negatives. Solver objectives approximate useful context and do not prove that the chosen context is sufficient for a task.

Compare tools on the same task set, version, model, token budget, and quality criterion. The local TOP-K fixture does not measure any commercial product. We do not provide an independently reproduced cross-product comparison here.


Works with your stack

Install the public Codex plugin from the Entroly repository:

codex plugin marketplace add juyterman1000/entroly --ref main
codex plugin add entroly@entroly-public

Restart Codex, review and trust the hook, then run entroly activation status --json after a task. The marketplace installs the local Node/WASM runtime with the plugin; the model does not have to remember to call an MCP tool before Entroly runs. A receipt proves that the hook executed and selected local context or made an explicit no-match decision. It does not prove token or cost savings without a matched provider-bound baseline.

Install the same public repository as a Gemini CLI extension:

gemini extensions install https://github.com/juyterman1000/entroly --ref main --consent

Restart Gemini CLI after installation. The repository root contains gemini-extension.json and GEMINI.md, so the command works without navigating into an integration subdirectory.

For VS Code or Kiro, download the entroly-vscode-*.vsix asset from the latest GitHub release, then install it with Extensions: Install from VSIX or code --install-extension. The extension is self-contained and does not require an API key.

JetBrains AI Assistant users can add the same server globally at Settings → Tools → AI Assistant → Model Context Protocol (MCP):

{
  "mcpServers": {
    "entroly": {
      "command": "npx",
      "args": ["-y", "entroly-mcp@1.0.84", "serve"],
      "env": {
        "ENTROLY_NO_DOCKER": "1",
        "ENTROLY_MCP_PASSIVE": "1",
        "ENTROLY_MCP_PROFILE": "public",
        "ENTROLY_MAX_FILES": "200"
      }
    }
  }
}

The repository also ships a free, open-source JetBrains plugin that guides this setup from Tools → Configure Entroly for AI Assistant, checks the local runtime on request, and keeps the evidence boundary visible. See extensions/jetbrains.

MCP marketplace and plugin manifests select the compact public profile so agents see the core context, receipt, continuity, recovery, and verification tools first. A direct entroly serve invocation remains backwards compatible and exposes the full tool surface. You can choose either behavior explicitly with ENTROLY_MCP_PROFILE=public or ENTROLY_MCP_PROFILE=full.

The MCP path is provider-neutral: the host can use OpenAI, Anthropic, Google, Mistral, DeepSeek, Kimi, GLM, or a local model. There is no separate plugin marketplace for each model provider; the host's MCP or extension contract is the integration boundary.

Agent / platform

Path

Status

Claude Code

Bundled UserPromptSubmit hook + scoped MCP

Deterministic after plugin enablement

Codex CLI / app

Bundled UserPromptSubmit hook + scoped MCP

Deterministic after hook trust

Gemini CLI

Bundled BeforeAgent hook + scoped MCP

Deterministic after extension enablement

OpenClaw

Context-engine plugin + scoped MCP

Native

Cursor

Claude-compatible project hook; MCP or proxy fallback

Deterministic only when third-party configs are enabled

Kiro IDE 1.x / CLI 3.x

Project PromptSubmit hook

Deterministic after project install

VS Code / Copilot agent mode

Agent-plugin hook where supported; MCP fallback

Host-version dependent

IntelliJ / JetBrains AI

MCP or supported custom endpoint

Advisory until a lifecycle hook is verified

GitHub Copilot CLI

MCP (subscription) / proxy (BYOK)

Supported

Cortex Code

SDK/library boundary only

Not validated as a wrap target

Aider, OpenCode, and 30+ more

Session-scoped OpenAI-compatible proxy

One command

Hook enforcement belongs to the host, so it is independent of whether that host runs an OpenAI, Anthropic, Gemini, Kimi, DeepSeek, Mistral, or GLM model. Status describes integration depth, not a savings guarantee. Provider-observed savings require requests to traverse an Entroly proxy route. Entroly does not claim interception of GitHub-hosted subscription inference on Copilot's native path. Full compatibility matrix: docs/agent-compatibility.md.

Entroly carries verified metadata for current models from OpenAI, Anthropic, Google, Meta, and others. It auto-discovers local Ollama models. Model-specific details: docs/DETAILS.md.


When to use it · when to skip it

Great fit: large repos where the agent only sees a few files at a time · chatty multi-turn agents · anywhere you want answers checked against evidence · cutting a real, growing AI bill.

Skip it: tiny repos or short prompts that already fit the budget · judgment-heavy tasks where you always want the full flagship model.


More commands

For evidence-led optimization rather than a synthetic savings estimate:

entroly learn --history --json
entroly shrink -- pytest -q
entroly trial --experiment checkout-fix --arm baseline -- codex exec "fix the checkout test"
entroly trial --experiment checkout-fix --arm optimized -- codex exec "fix the checkout test"
entroly trial --report checkout-fix
entroly browser https://example.com --query "billing settings"
entroly response set evidence --scope project

Trials run one explicitly selected arm at a time so a stateful or paid agent task is never repeated implicitly. Response contracts shape agent instructions; they do not truncate responses or count as measured savings. Browser and command reductions keep exact local recovery handles and pass through when their safety gates cannot be met.

For teams that need to say who an agent is and what it was allowed to do:

entroly govern status                          # identity, policies, audit chain
entroly govern policy check write --risk high  # evaluate one authorization
entroly govern audit verify                    # exit non-zero on a broken chain

Authorization is deny-by-default and every denial names the policy and the reason it gave. audit verify checks that recorded entries were not altered after the fact — it does not prove every action was recorded, and govern status reports the state of the local control plane only, not an attestation that each agent action passed through it. Identity tokens are unsigned unless ENTROLY_IDENTITY_KEY is set, and the credential is never printed.

Also available: entroly wrap, entroly unwrap, entroly serve, entroly daemon, entroly dashboard, entroly demo, entroly capabilities, entroly ingest, entroly select, entroly receipt, entroly explain, entroly context-commit, entroly proof, entroly benchmark, entroly cache, entroly ravs, entroly perf, entroly batch, entroly usage. Full description: command reference.


Common questions

Cross-agent shared memory

Content-addressed store with SimHash deduplication and BM25 search. Multiple agents (Claude Code, Codex, Cursor) write and query the same knowledge base with provenance tracking.

from entroly import shared_memory_write, shared_memory_search
shared_memory_write("Auth uses JWT with RS256", agent_id="claude-code", tags=["auth"])
results = shared_memory_search("authentication tokens")  # finds it, from any agent

Output token reduction

Three-layer pipeline: effort classification steers verbosity directives, max_tokens budgets cap generation, and post-generation distillation trims filler. A "yes/no" query gets 150 max tokens; a detailed architecture review gets 16,384.

Shell hook compression

Command-specific patterns for git, npm, cargo, docker, pytest, kubectl, and terraform strip progress bars, deprecation warnings, and boilerplate while preserving errors and key results. Full output is recoverable via content-addressed handles.

entroly hook install     # adds transparent compression to your shell
entroly hook status      # shows which shells have the hook

Failure mining

entroly learn --deep mines PRISM feedback, vault beliefs, evolution daemon, and checkpoint data for recurring failure patterns, then generates corrections for agent config files.


Documentation

Available Tools

81 tools
advance_proof_guided_contextB

Verify one model round and return exact evidence or a final answer.

The operation is durable and idempotent. A continuation response has status=awaiting_model and a new request whose committed prefix is byte-identical. A terminal response returns a locally verified output. No provider call is performed by Entroly.

ParametersJSON Schema
NameRequiredDescriptionDefault
session_idYes
model_outputYes
idempotency_keyYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses several behavioral traits: the operation is durable and idempotent, continuation returns a specific status, terminal returns verified output, and no provider call is performed. These details add significant context beyond the absent annotations. However, it does not mention error conditions or required prior state (e.g., session from prepare_proof_guided_context).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (4 sentences) and front-loaded with the core purpose. It could benefit from breaking into sections (e.g., parameters, behavior) but is efficiently written without waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains the output types (continuation vs terminal) and idempotency, but it omits critical context such as the need for a session created by 'prepare_proof_guided_context', the format of model_output, and the exact structure of the output schema. Given the complexity and the presence of an output schema, more completeness is expected.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description bears full responsibility for explaining parameters. It does not mention session_id, model_output, or idempotency_key at all, leaving agents without guidance on what each parameter represents or how to construct them.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Verify one model round and return exact evidence or a final answer,' which is a specific verb+resource. It explains continuation vs terminal responses, clearly indicating the tool's role in the proof-guided context workflow. However, it does not explicitly distinguish this from sibling tools like 'verify_beliefs' or 'verify_response', leaving some ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as 'verify_beliefs' or 'verify_response'. The description focuses on behavioral details but omits when to invoke or when not to, leaving an agent without clear selection criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

analyze_codebase_healthA

Analyze the health of the ingested codebase.

Runs 5 analysis passes over all fragments in the current session:

  1. Clone Detection — SimHash pairwise scan for Type-1/2/3 code clones

  2. Dead Symbol Analysis — defined but never referenced symbols

  3. God File Detection — files with > μ+2σ reverse dependencies

  4. Architecture Violation Detection — cross-layer imports

  5. Naming Convention Analysis — Python/Rust/React convention breaks

Returns a JSON HealthReport with: - code_health_score [0–100] and health_grade (A/B/C/D/F) - Per-dimension scores: duplication, dead_code, coupling, arch, naming - clone_pairs, dead_symbols, god_files, arch_violations, naming_issues - summary (human-readable) and top_recommendation (most impactful action)

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden and discloses that the tool runs 5 named passes over all fragments and returns a detailed HealthReport. However, it does not explicitly state whether the tool is read-only or has side effects, which is a minor gap. The analysis passes and return structure are well-described.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is fairly long but well-organized with a numbered list of passes and a clear listing of return fields. Every sentence adds value, though it could be slightly more concise. The structure aids readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has zero parameters and an output schema exists (implied by context and described in the description), the description is complete. It covers all necessary information: what the tool does, how it works (5 passes), and what it returns (HealthReport fields).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the input schema is fully covered. The description does not need to add parameter details, and it does not. Baseline 4 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool analyzes codebase health, listing five specific analysis passes. It distinctly identifies the resource (codebase fragments in current session) and the action (health analysis). Among the sibling tools, none perform this exact function, so it is well-differentiated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains what the tool does (runs 5 analysis passes) but does not provide explicit guidance on when to use it versus alternatives like scan_for_vulnerabilities or security_scan. There are no use-case exclusions or references to other tools, leaving the agent to infer appropriate usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

blast_radiusA

Analyze the blast radius of file changes on existing beliefs.

Given a list of changed files, determines which beliefs need re-verification, which may be invalidated, and the overall risk level (low/medium/high).

Args: changed_files: Comma-separated list of changed file paths

ParametersJSON Schema
NameRequiredDescriptionDefault
changed_filesYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses that the tool analyzes beliefs and determines re-verification, invalidation, and risk level. However, it does not state whether it has side effects (e.g., modifying anything) or any other behavioral traits beyond what is described.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is relatively concise, with the main purpose front-loaded. It uses two paragraphs and a structured args section. Some redundancy (e.g., 'Analyze the blast radius' repeated in first line and second paragraph), but overall efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that there is an output schema (not shown but present), the description need not explain return values. It covers the inputs, outputs, and process adequately for a single-parameter tool with moderate complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% coverage, so the description must compensate. It explains that 'changed_files' is a 'Comma-separated list of changed file paths', adding meaning beyond the schema's mere 'string' type. This is adequate for a single-parameter tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Analyze the blast radius of file changes on existing beliefs.' It specifies the input (list of changed files) and outputs (beliefs needing re-verification, invalidation, risk level), making it distinct from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the input format and what the tool does, but does not provide explicit guidance on when to use it versus alternatives (e.g., other analysis tools like verify_beliefs). It implies usage when files change, but lacks exclusions or alternative suggestions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

checkpoint_stateD

Save state plus explicit decisions needed for safe continuation.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectNo
decisionsNo
current_stepNo
modified_filesNo
task_descriptionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

D1.8/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries full responsibility for behavioral disclosure. It only says 'save state plus explicit decisions needed for safe continuation,' but omits side effects, required permissions, or what 'safe continuation' entails.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely concise (6 words), but under-specification sacrifices completeness. The description is too short to convey essential information about parameters or usage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 undocumented parameters, no annotations, and many sibling tools, the description is severely incomplete. Even with an output schema, the lack of parameter guidance and behavioral context leaves users guessing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description adds no meaning to any of the 5 parameters. Users cannot infer what values like 'project', 'decisions', or 'current_step' represent.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states it saves state and explicit decisions for continuation, providing a general purpose. However, it does not differentiate from sibling tools like 'resume_state' or 'remember_fragment', and lacks a specific verb-resource combination.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool over alternatives. The sibling list includes many potentially overlapping tools, but no context is provided for choosing among them.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

compile_beliefsA

Compile source code into belief artifacts (Truth → Belief pipeline).

Scans a directory for source files (.py, .rs, .ts, .js), extracts code entities (classes, functions, structs, traits, imports), resolves cross-file dependencies, and writes belief artifacts to the vault with full frontmatter (claim_id, entity, status, confidence, sources, last_checked, derived_from).

Args: directory: Path to scan. Defaults to the project root. max_files: Maximum files to process (default: 200)

ParametersJSON Schema
NameRequiredDescriptionDefault
directoryNo
max_filesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It outlines the workflow: scanning directories, extracting entities, resolving dependencies, and writing artifacts to the vault. This gives the agent a clear understanding of the tool's behavior and side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured, with a clear initial statement followed by bullet points for arguments. It avoids unnecessary details while covering essential functionality.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of the tool (scanning, extracting, resolving dependencies, writing artifacts), the description covers the main steps and output format (belief artifacts with frontmatter). The presence of an output schema further reduces the need to detail return values. However, it could mention potential limitations or error conditions.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite the schema_coverage being 0%, the description includes an explicit 'Args' section that explains both parameters: 'directory: Path to scan. Defaults to the project root.' and 'max_files: Maximum files to process (default: 200).' This adds meaningful context beyond the schema's defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Compile source code into belief artifacts (Truth → Belief pipeline).' It specifies the types of source files, what it extracts, and the output. This is distinct from siblings like compile_docs, which likely handles documentation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description lacks explicit guidance on when to use this tool versus alternatives. Although it explains what the tool does, there is no mention of when not to use it or which sibling tools to consider instead. With many related tools, this diminishes usability.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

compile_docsA

Compile markdown documentation files into belief artifacts.

Ingests project-level docs (README.md, ARCHITECTURE.md, docs/, CONTRIBUTING.md, etc.) into the vault as documentation beliefs with confidence 0.80 (human-authored > machine-inferred code beliefs).

Args: directory: Project root to scan. Defaults to the project root. max_files: Maximum doc files to process (default: 50)

ParametersJSON Schema
NameRequiredDescriptionDefault
directoryNo
max_filesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses that beliefs are created with confidence 0.80 and that it processes a default of up to 50 files. However, it does not mention whether the tool overwrites existing beliefs, is idempotent, or any side effects on the vault. Overall good but could be more explicit about behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: one sentence for the main purpose, followed by a paragraph with additional context and parameter details. No extraneous words or redundancy. Each sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema and only two parameters, the description provides sufficient context for an agent to understand the tool's function. It explains the input (doc files), the confidence level, and parameter defaults. However, it could be more complete by explaining what 'belief artifacts' are and how they affect the vault state.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. The description lists the 'directory' and 'max_files' parameters with their defaults and brief explanations (directory defaults to project root, max_files defaults to 50). However, it does not add deeper semantics like acceptable file types, error handling, or how the directory path is resolved. This is minimal added value over the schema defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Compile markdown documentation files into belief artifacts.' It specifies the action (compiling), resource (markdown doc files), and output (belief artifacts with confidence 0.80). It distinguishes from siblings like compile_beliefs by focusing on documentation files only.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the tool ingests project-level docs like README.md, ARCHITECTURE.md, etc., into the vault. It provides clear context for when to use it (for project documentation), but does not explicitly mention when not to use it or name alternative tools. There is no exclusion or comparison to siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

compress_imageC

Compress an image for vision model input, with optional OCR text extraction.

ParametersJSON Schema
NameRequiredDescriptionDefault
qualityNo
image_pathYes
extract_textNo
max_dimensionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full disclosure burden. It says nothing about whether the original file is overwritten, where the compressed output goes, acceptable input formats, size limits, or the cost/latency of OCR extraction — all material for a mutation-style tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single efficient sentence with the primary action front-loaded and the optional capability trailing. It is taut in phrasing, though arguably too brief for a four-parameter tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be spelled out, but with no annotations and 0% schema description coverage the description should compensate and does not. Core behaviors (output location, overwrite semantics, parameter meaning) remain unspecified for a tool the agent must configure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so all four parameters (image_path, quality, max_dimension, extract_text) rely on the description for meaning. It only loosely maps to extract_text ('optional OCR text extraction') and gives no guidance on quality or max_dimension semantics, defaults, or units.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Compress an image') plus the intended consumer ('for vision model input') and the optional secondary capability ('OCR text extraction'). The resource is distinct from siblings like compress_shell, though the description never explicitly routes against them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The purpose hints at when the tool is relevant (preparing images for a vision model), but there is no explicit when-to-use, when-not-to-use, or alternative tooling guidance. Nothing tells the agent when to skip OCR or how this relates to ingest_diagram or compress_shell.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

compress_shellB

Compress CLI output (git, npm, cargo, pytest, etc.) preserving errors and key info.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
commandNo
max_linesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It usefully discloses the retention policy ("preserving errors and key info"), which tells the agent this is a lossy transform, but it does not explain what compression actually means (truncation vs. summarization), whether output is deterministic, or any auth/rate constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence that states the action, the input domain, and the retention guarantee with no filler. It is efficient, though it could have spent a few more words on the undocumented parameters.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, and the one sentence covers the core operation. However, for a 3-parameter tool with zero schema documentation and no annotations, the description is too thin on the command/max_lines parameters and on what compression does.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the schema documents nothing and the description must compensate. The phrase "CLI output" loosely maps to text and the examples hint at the command parameter, but max_lines and command are never mentioned, leaving their semantics and defaults unexplained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb+resource ("Compress CLI output") and lists concrete sources (git, npm, cargo, pytest), so the agent can distinguish it from compress_image and other siblings. It stops short of naming a sibling or delimiting scope beyond examples, but the purpose is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied by the example source tools; there is no explicit when-to-use or when-not-to-use statement, and no alternative tool is named for the same job. An agent can infer intent but gets no routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

coverage_gapsA

Find source files with no corresponding belief in the vault.

Scans a directory for source files (.py, .rs, .ts, .js) and checks which ones have no belief artifact. Useful for identifying blind spots before running compile_beliefs.

Args: directory: Path to scan. Defaults to the project root.

ParametersJSON Schema
NameRequiredDescriptionDefault
directoryNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It implies a read-only scan but does not explicitly state it is non-destructive or safe. It lacks details on permissions or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured. The purpose is front-loaded, and each sentence adds value. Only two short paragraphs cover purpose, usage, and parameter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one optional parameter and an output schema (not shown), the description is complete. It covers core behavior, parameter, and usage context. No explanation of return values needed due to output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% coverage, but the description adds meaning: 'Path to scan. Defaults to the project root.' It clarifies the default behavior, though it does not specify path format or validation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: find source files without belief artifacts in the vault. It specifies supported file types and mentions a related tool (compile_beliefs), distinguishing its role.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states it is useful before running compile_beliefs, providing clear context. It does not mention when not to use or alternatives, but the sibling list includes many unrelated tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_context_receiptA

Create a Context Receipt from supplied documents.

documents_json may be:

  • a JSON object mapping source path to text

  • a JSON array of [source_path, text] pairs

  • a JSON array of objects with source_path/text or source/content keys

The receipt records selected context, omitted relevant context, dependency links, fingerprints, token ratio, warnings, and risk controls. It does not call an LLM.

Set recoverable=True to also persist a project-local recovery bundle, so any omitted chunk can later be recovered byte-exact and verified via recover_receipt_omission.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
recoverableNo
chunk_tokensNo
token_budgetNo
documents_jsonYes
overlap_tokensNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully bears the burden of disclosure. It states that the tool does not call an LLM, which is key behavioral information. It also explains that 'recoverable=True' persists a recovery bundle, offering transparency about side effects. However, it does not mention potential destructive actions or authorization needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact (about 100 words), front-loaded with the purpose, and uses bullet points to efficiently present the acceptable formats. Every sentence adds value without repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema (which may document return values), the description is adequate for a simple creation tool. However, with over 60 sibling tools, it lacks guidance on when to use this tool versus 'create_context_receipt_from_path', limiting the agent's ability to differentiate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It only explains 'documents_json' in detail (three formats). The other five parameters ('query', 'chunk_tokens', 'token_budget', 'overlap_tokens', 'recoverable') are left with only their names and default values, lacking semantic meaning. This is insufficient for a tool with 6 parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Create a Context Receipt from supplied documents', specifying the action and resource. It further distinguishes by noting that it does not call an LLM and lists what the receipt records, making it distinct from similar tools like 'create_context_receipt_from_path' which uses paths.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides detailed guidance on the acceptable formats for 'documents_json' and explains when to set 'recoverable=True'. However, it does not explicitly guide when to use this tool over its sibling 'create_context_receipt_from_path', leaving some ambiguity for the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_context_receipt_from_pathB

Create a Context Receipt from a local document file or directory.

Supports text-like documents currently handled by the local receipt ingester (.md, .txt, .rst). The result is deterministic and local.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
queryYes
chunk_tokensNo
token_budgetNo
overlap_tokensNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden. It states the operation is 'deterministic and local,' which is useful, but lacks details on side effects (e.g., file creation, overwriting), authentication needs, or error handling for missing files. No contradictions with annotations (none provided).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief (three sentences) and front-loaded with the core action. However, it sacrifices parameter explanation for brevity, which is a trade-off but not excessive fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 parameters, no annotations, and an output schema (which documents returns), the description should at least outline parameter purposes and high-level workflow. It fails to do so, leaving the agent underinformed about how to use this tool effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description adds no explanation for any of the 5 parameters (path, query, chunk_tokens, token_budget, overlap_tokens). The agent gains no semantic insight into their roles or defaults beyond the schema structure.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Create a Context Receipt from a local document file or directory.' It specifies supported file formats (.md, .txt, .rst) and notes that the result is deterministic and local. This distinguishes it from sibling tools like 'create_context_receipt' (likely for other sources).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for local text documents but does not explicitly provide when to use this tool versus alternatives (e.g., create_context_receipt) or when not to use it. No prerequisites or exclusions are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_skillA

Create a new skill from a capability gap (Evolution layer).

When the system repeatedly fails on a topic, this generates a full skill package in vault/evolution/skills//:

  • SKILL.md — procedure/SOP

  • tool.py — executable Python tool

  • metrics.json — fitness tracking

  • tests/test_cases.json — regression tests

Args: entity_key: The entity this skill handles (e.g., 'protobuf_analysis') failing_queries: Pipe-separated list of failing queries intent: The intent class for this skill

ParametersJSON Schema
NameRequiredDescriptionDefault
intentNo
entity_keyYes
failing_queriesYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It details the files created (SKILL.md, tool.py, etc.) and the structure, which is good. However, it does not disclose potential side effects like overwriting existing skills, required permissions, or whether the operation is reversible.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-organized with a clear intent statement followed by an args section. It is reasonably concise, though the 'Args' block could be tighter integrated into the main prose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and presence of an output schema (not shown), the description provides sufficient context about the tool's purpose and generated artifacts. It could be more complete with details on return value format and conflict handling.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite 0% schema description coverage, the tool's description explicitly lists and describes all three parameters (entity_key, failing_queries, intent) with meaningful context, adding value beyond the nullable schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool creates a new skill from a capability gap (Evolution layer), with a specific verb and resource. It distinguishes itself from siblings like 'manage_skills' by focusing on generation from repeated failures.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description specifies when to use the tool: when the system repeatedly fails on a topic. It implies a trigger condition but does not explicitly exclude other scenarios or mention alternatives like updating an existing skill.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

eicv_suppress_hallucinationsA

Verify an LLM response and optionally rewrite hallucinated claims.

Returns the (possibly rewritten) output and per-claim audit trail. Computation is fully local — no neural model, no LLM calls.

Modes: audit — analyze only; no rewrite. Use for telemetry/dashboards. annotate — keep output; append verification warnings at end. strict — graduated 4-action policy: supported → PASS (no change) abstain → HEDGE (append "[unverified]") hallucinated → SUPPRESS (remove claim sentence)

Profiles tune the abstain band: rag (default) — strict, for retrieval-augmented generation qa — moderate-strict for QA outputs summarization — tolerant of paraphrase dialogue — broader abstain band fact_check — hardest (FEVER-like setting)

Returns SuppressionResult with:

  • rewritten_output: the (possibly modified) response

  • n_claims / n_supported / n_abstained / n_hallucinated

  • suppressed_count / warned_count

  • hallucination_rate: 0..1 (n_hallucinated / n_claims)

  • certificates: list of per-claim EICVCertificate

  • latency_ms

Accuracy on public datasets is documented in benchmarks/results/. False-positive and false-negative rates are non-zero — a truthful claim can be wrongly suppressed, and a false claim can pass through. Audit-mode is the safe default for compliance- sensitive applications.

Args: context: The grounding evidence the LLM was supposed to use output: The LLM's response text to verify and possibly rewrite profile: Suppression profile (default "rag") mode: "audit" | "annotate" | "strict" (default "strict")

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNostrict
outputYes
contextYes
profileNorag

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It fully discloses behavior: each mode's actions, profile tuning, accuracy caveats (non-zero false positives/negatives), and the detailed return structure. This is exceptionally transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is detailed but well-structured with sections for modes, profiles, returns, and caveats. It is front-loaded with the core purpose. While it is long, every sentence adds necessary information, justifying the length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity, the description covers all aspects: behavior, parameters, modes, profiles, return values (even including example fields like hallucination_rate and certificates), and caveats. No output schema is provided, but the description makes the result structure clear.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description fully explains all four parameters: context, output, profile, and mode. It provides meanings, defaults, and allowed values (e.g., mode options, profile list), adding significant value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool verifies LLM responses and optionally rewrites hallucinated claims. It distinguishes itself from siblings like verify_response and eicv_verify_claim by highlighting it is fully local with no neural model or LLM calls. The specific modes and profiles further clarify the purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use each mode (audit, annotate, strict) and profile (rag, qa, etc.). It recommends audit-mode for compliance-sensitive applications. However, it does not explicitly mention when NOT to use this tool or directly compare to sibling tools like eicv_verify_claim.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

eicv_verify_claimA

Verify a single claim against evidence using the EICV pipeline.

Returns a structured EICVCertificate with:

  • phi: epistemic support density [0=fully hallucinated, 1=fully grounded]

  • hallucination_score: 1 - phi

  • decision: "supported" | "abstain" | "hallucinated"

  • layer_scores: per-layer breakdown (T(G), NLI, RNR, gamma, H_sem)

  • n_claim_atoms / n_ev_atoms: structural decomposition counts

  • unsupported_fraction: fraction of claim atoms with no support

  • contradiction_fraction: fraction with active contradiction

  • elapsed_ms: per-call latency

Computed locally with no neural model and no LLM calls. Accuracy on public benchmarks (FEVER, SQuAD v2, HaluEval-QA) is documented in benchmarks/results/. False-positive and false-negative rates are non-zero — review those JSONs before relying on the output for compliance-sensitive decisions.

Args: evidence: The grounding context (retrieved passages, source material) claim: The single claim to verify against evidence profile: "rag" | "qa" | "summarization" | "dialogue" | "fact_check" | "default". Selects the abstain decision band.

ParametersJSON Schema
NameRequiredDescriptionDefault
claimYes
profileNorag
evidenceYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully discloses that the tool runs locally without neural models or LLM calls, and explicitly warns about non-zero false positive/negative rates, which is critical for trust.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured, front-loading the purpose and output, then method and limitations, then args. It is slightly verbose but every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given an output schema exists, the description still lists output fields. It covers input, output, method, limitations, and usage contexts, making it complete for this tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage, but the description's Args section provides clear meaning: evidence is grounding context, claim is the single claim, profile selects the abstain band. This compensates fully.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it verifies a single claim against evidence using the EICV pipeline, and details the structured output. It distinguishes from siblings like verify_beliefs by specifying the pipeline and output format.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for factual claim verification with evidence and lists profile options for different contexts. However, it does not explicitly state when to use this tool over alternatives or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

entroly_dashboardA

Show the real, live value Entroly is providing to YOUR session right now.

Pulls from actual engine state — not synthetic data. Shows: Money saved: exact $ amounts from token optimization Performance: sub-millisecond selection speed vs API latency Bloat prevention: context compression ratio and memory footprint Selection quality: per-fragment scoring and context sufficiency Safety: duplicates caught, stale fragments filtered

Call this anytime to see exactly what Entroly is doing for you.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It explicitly states it pulls from actual engine state (not synthetic) and lists the types of data shown. It does not disclose potential side effects or performance impact, but given it's a read-only dashboard, this is acceptable. The transparency is good but could be more detailed about real-time behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured with a clear opening sentence and a bullet list summarizing key metrics. It is front-loaded with the purpose. However, the enthusiastic tone and exclamation marks are slightly verbose for a technical tool description, but the information density is good.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given zero parameters and an existing output schema (not shown), the description provides a complete overview of what the tool does and the categories of data returned. An AI agent can confidently decide when to call this tool without additional context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, so the baseline score is 4. The description adds no parameter information because none is needed. The schema coverage is 100% (empty properties), so the description is not required to compensate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool shows live value metrics from engine state, with a list of specific categories. However, the verb 'Show' is somewhat generic, and it could more explicitly state it retrieves a dashboard. It distinguishes from siblings like `get_stats` by focusing on session-specific value metrics, but doesn't explicitly contrast.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says 'Call this anytime,' implying it can be used freely, but it does not provide when-not-to-use guidance or compare to alternative tools like `get_stats` or `explain_context`. The usage context is implied but not explicitly differentiated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

entroly_retrieveA

Retrieve exact source content omitted by compressed context.

Use the retrieval handle attached to a skeleton/reference fragment for exact historical recovery. A visible source path also works and lazily resolves the latest ingested version. With no argument, lists currently materialized CCR entries without returning their content.

Args: source_or_handle: Source path or content-addressed ccr:... handle.

ParametersJSON Schema
NameRequiredDescriptionDefault
source_or_handleNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It explains lazy resolution for source paths and the listing behavior with no argument. It does not disclose potential errors or side effects, but the behavior is reasonable for a retrieval tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with a clear first line and structured argument explanation. It contains no redundant information, though it could be slightly more streamlined by removing the 'Args:' header effect.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the description need not explain return values. It covers the main use cases and parameter details. Missing edge cases like invalid handles or error conditions, but overall adequate for a simple tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Parameter schema coverage is 0%, so the description must compensate. It does so by explaining 'source_or_handle' as a source path or content-addressed handle, and notes the default is empty. This adds significant meaning beyond the schema's title and type.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves exact source content omitted by compressed context, with specific use cases (handle, source path, listing). The verb 'retrieve' matches the tool name, and it is distinct from sibling tools like 'recover_receipt_omission' or 'explain_receipt_omission'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use the tool (to recover omitted content) and provides three distinct modes of operation. However, it does not explicitly contrast with sibling tools or state when not to use it, which would improve guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

epistemic_routeA

Route a query through the CogOps Epistemic Ingress Controller.

Inspects 4 signals (intent, belief coverage, freshness, risk) and selects one of 5 canonical flows:

① Fast Answer: Belief → Action (fresh, verified, low-risk) ② Verify Before Answer: Belief → Verification → Action (stale/risky) ③ Compile On Demand: Truth → Belief → Verification → Action (no beliefs) ④ Change-Driven: Event → Truth → Belief → ... (PR/commit/incident) ⑤ Self-Improvement: Misses → Evolution → Belief (repeated failures)

Call this BEFORE optimize_context to understand how the system should approach your query. Existing tools work exactly as before.

Args: query: The user query or event description is_event: True if this is a change-driven event (PR, commit, etc.) event_type: Type of event (pr, commit, release, incident, scheduled)

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
is_eventNo
event_typeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It describes the tool's internal logic (inspecting signals and selecting flows) but does not disclose output format, side effects, or constraints (e.g., rate limits, error handling). The mention that 'Existing tools work exactly as before' subtly reassures non-destructiveness.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections, bullet points for the 5 flows, and a concise instruction to call before optimize_context. It is appropriately sized for the complexity of the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity and lack of annotations, the description provides a thorough overview of the flows and usage context. It does not detail the 4 signals or output format, but the presence of an output schema (not shown) reduces the burden. Overall, it is adequate for agent understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description includes an 'Args' section explaining each parameter beyond the schema. It defines query as 'user query or event description', explains is_event as indicator for change-driven events, and lists examples for event_type, adding meaningful semantic context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool routes a query through the Epistemic Ingress Controller, inspects 4 signals, and selects one of 5 canonical flows. It distinguishes itself from the sibling tool optimize_context by instructing to call this tool before that one.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly recommends calling this tool before optimize_context, providing clear context. However, it does not specify when not to use it or provide alternative tools for similar purposes, though the sibling list is extensive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

execute_flowA

Execute a full canonical epistemic flow end-to-end.

Routes the query through the Epistemic Ingress Controller (4 signals: intent, belief coverage, freshness, risk), then chains the appropriate pipeline steps automatically:

① Fast Answer: Belief → Action ② Verify Before Answer: Belief → Verification → Action ③ Compile On Demand: Truth → Belief → Verification → Action ④ Change-Driven: Event → Truth → Belief → Verification → Action ⑤ Self-Improvement: Misses → Verification → Evolution → Belief

Args: query: The user query or event description diff_text: Raw diff for change-driven flows (Flow ④) is_event: True if this is a change-driven event event_type: Type of event (pr, commit, release, incident, scheduled)

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
is_eventNo
diff_textNo
event_typeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden of behavioral disclosure. It describes the internal routing and pipeline steps but does not mention side effects, mutability, authentication requirements, rate limits, or any consequences of execution. The term 'execute' implies action, but safety or resource implications are absent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-organized with a concise opening, a bulleted list of flows, and a separate argument section. Every sentence is informative; no redundancy or filler. It is front-loaded with the core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite the complexity of executing a multi-step epistemic flow, the description covers the pipeline logic and argument semantics. An output schema exists, so return value explanation is not needed. However, it lacks any mention of error conditions or prerequisites (e.g., required workspace state).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description supplies all parameter meanings. It clearly defines 'query' as user query/event, 'diff_text' as raw diff for change-driven flows, 'is_event' for change-driven flag, and 'event_type' with examples. This adds full value beyond the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool executes a full canonical epistemic flow end-to-end, listing the specific pipeline steps and their triggers. This distinguishes it from sibling tools like epistemic_route, which is likely just the routing step.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the five flow types (Fast Answer, Verify Before Answer, etc.) and their triggering conditions through the Epistemic Ingress Controller, providing context on when each path is used. However, it does not explicitly state when not to use this tool or mention alternatives from the sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

explain_contextA

Explain why each fragment was included or excluded in the last optimization.

Shows per-fragment scoring breakdowns with all dimensions visible: recency, frequency, semantic, entropy, feedback multiplier, dependency boost, criticality, and composite score.

Also shows context sufficiency (what % of referenced symbols have definitions included) and any exploration swaps.

Call this after optimize_context to understand selection decisions.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Despite no annotations, the description fully discloses what the tool shows: per-fragment scoring breakdowns with all dimensions, context sufficiency, and exploration swaps. It implies read-only behavior, but could explicitly state it doesn't modify state.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three efficient sentences: purpose, then list of outputs, then usage instruction. No wasted words; front-loaded with key purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no parameters and an output schema (not shown but indicated as present), the description sufficiently covers purpose, what is shown, and when to call. Complete for a simple inspection tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so schema coverage is 100% by default. The description adds no parameter info, but baseline is 4 given no parameters need explanation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool explains inclusion/exclusion decisions from the last optimization, using specific verb 'explain' and resource 'context selection decisions'. It distinguishes itself from sibling tools like optimize_context and inspect_proof_guided_context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states 'Call this after optimize_context to understand selection decisions', providing clear usage context. While it doesn't specify when not to use, the guidance is strong and contextually appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

explain_receipt_omissionC

Explain why a chunk was omitted from a Context Receipt.

ParametersJSON Schema
NameRequiredDescriptionDefault
chunk_idYes
receipt_jsonYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits like whether it is read-only, requires authentication, or has side effects. The word 'explain' implies a non-destructive operation, but this is not explicit.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise (one sentence), but it sacrifices necessary detail. It is front-loaded but incomplete, earning a middle score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has a defined output schema but the description does not mention it or hint at the explanation's format, the agent lacks contextual completeness to use the tool effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description adds no meaning to the parameters 'receipt_json' and 'chunk_id'. It does not explain their format, constraints, or purpose beyond their names.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool explains why a chunk was omitted from a Context Receipt, distinguishing it from siblings like 'explain_context' and 'recover_receipt_omission'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, such as 'explain_context' or when not to use it. Lacks prerequisites or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_training_dataA

Export vault beliefs as JSONL training data for LLM finetuning.

Generates instruction-following pairs from compiled beliefs: question about entity → belief body as answer. Filters out stale and low-confidence beliefs. Output is OpenAI-compatible JSONL.

Uses PRISM scoring dimensions for quality-weighted sampling: only beliefs with confidence >= 0.5 and non-stale status are included in the training set.

Args: output_path: Path to write JSONL file (default: training_data.jsonl) format: Output format, currently only 'jsonl' supported

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNojsonl
output_pathNotraining_data.jsonl

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses filtering behavior, quality-weighted sampling via PRISM scores, and output format (OpenAI-compatible JSONL). It does not mention any side effects, auth requirements, or rate limits, which is acceptable for an export tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with three purposeful sentences plus an Args block. No unnecessary words; every sentence provides essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the description adequately explains the output format and content. It covers filtering criteria, quality sampling, and parameter defaults, making it complete for an agent to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% but the description includes an Args section that explains both parameters (output_path and format) with defaults and notes that only 'jsonl' is currently supported, adding value beyond the schema properties.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (export), resource (vault beliefs), format (JSONL), and purpose (LLM finetuning). It distinguishes itself from sibling tools that read or query beliefs by specifying the export and training data generation function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use this tool: for generating instruction-following pairs from beliefs for fine-tuning. It mentions filtering criteria (confidence >=0.5, non-stale) but does not explicitly exclude other tools or state when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_statsB

Get comprehensive session statistics.

Shows token savings, duplicate detection counts, entropy distribution, dependency graph stats, checkpoint status, and cost estimates.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden for behavioral disclosure. It only lists the types of statistics shown but does not reveal whether the tool is read-only, requires authentication, has performance implications, or causes side effects. For a retrieval tool, this is minimal transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (two lines plus a bullet list) and front-loaded with the core purpose. Every sentence serves a purpose, though the bullet list could be formatted more cleanly. Overall, it is efficient and to the point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the types of statistics returned, which is helpful given the output schema exists. However, it lacks usage guidance and behavioral context. Considering the tool's moderate complexity (no parameters, extensive output) and absence of annotations, the description is adequate but not comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so schema description coverage is 100%. The description does not need to add parameter information; it implicitly confirms that no arguments are required. This is appropriate given the schema, earning a baseline score of 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb ('Get') and resource ('comprehensive session statistics'). It lists what statistics are included (token savings, duplicate detection, etc.), making the function clear. However, it does not differentiate from sibling tools like 'entroly_dashboard' or 'checkpoint_state' which might also provide statistics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, when not to use it, or how it fits with sibling tools. The agent must infer usage context from the description alone, which is insufficient for informed selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ingest_diagramA

Ingest an architecture or flow diagram into the context memory.

Converts Mermaid, PlantUML, DOT/Graphviz, or informal diagram text into a structured semantic fragment capturing nodes, edges, and relationships. The result is stored as a normal context fragment and is retrievable by optimize_context and recall_relevant.

Args: diagram_text: Raw diagram source (Mermaid/PlantUML/DOT/text description). source: Identifier (e.g., 'arch_overview.mmd', 'db_schema.puml'). diagram_type: 'mermaid', 'plantuml', 'dot', 'text', or 'auto' (default).

Returns JSON with ingestion result (same as remember_fragment).

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYes
diagram_textYes
diagram_typeNoauto

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It explains the conversion to a structured fragment, storage, and retrieval via other tools. It does not mention side effects or limitations but is sufficiently transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: a summary paragraph followed by a clear argument list. Every sentence adds value, and the format aids readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains the conversion, storage, and retrieval process. It references the output format as 'same as remember_fragment', and since an output schema exists (per context signals), the description does not need to detail return values. It is adequately complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description provides essential meaning. It defines each parameter: 'diagram_text' as source text, 'source' as identifier, and 'diagram_type' with enum values. This fully compensates for the schema's lack of descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action: 'Ingest an architecture or flow diagram into the context memory.' It specifies the input formats (Mermaid, PlantUML, etc.) and distinguishes itself from sibling tools like 'remember_fragment' by focusing on diagram conversion.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for diagrams that need structured representation, but does not explicitly state when not to use it or compare with alternatives like 'remember_fragment'. However, the context is clear enough for an agent to determine appropriate use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ingest_diffA

Ingest a code diff/patch into the context memory.

Converts a unified diff (git diff output) into a structured change summary: intent classification (bug-fix/feature/refactor), symbols changed, files modified, and line delta. Particularly useful for understanding recent changes and their architectural impact.

Args: diff_text: Raw unified diff text (git diff output). source: Identifier (e.g., 'pr_42_auth_refactor.diff'). commit_message: Optional commit message for better intent classification.

Returns JSON with ingestion result plus: - intent: bug-fix/feature/refactor/test/security/performance - files_changed, added_lines, removed_lines - symbols_changed: functions/classes modified

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYes
diff_textYes
commit_messageNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description must fully disclose behavior. It states the tool converts a diff into a structured summary and returns JSON. However, it does not clarify whether the ingested data is stored, the persistence of changes, or any side effects (e.g., modifications to context memory). More details on authorization or error handling would improve transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with two paragraphs and a bullet list. It is front-loaded with the primary action and quickly details the conversion process. However, the bullet-listed output fields could be slightly more compact, and there is minor redundancy in the first paragraph explaining the same concept.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers purpose, parameters, and return value sufficiently. An output schema exists (implied by the return fields listed), so repeating those fields is acceptable. However, it lacks information on error handling, input validation, or performance implications, but overall it provides a complete understanding for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite 0% schema description coverage, the description adds significant meaning to all three parameters. It explains 'diff_text' as 'raw unified diff text (git diff output)', 'source' with an example, and 'commit_message' as optional for better intent classification. This goes beyond what the schema's titles provide.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool ingests a diff, converts it to a structured change summary, and provides intent classification. It uses specific verbs and resources ('ingest', 'diff', 'context memory'). It distinguishes from sibling tools like 'ingest_diagram' and 'ingest_voice' by focusing on code diffs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions it is 'particularly useful for understanding recent changes and their architectural impact,' but does not explicitly state when to use this tool vs alternatives or provide exclusions. It lacks guidance on when not to use it or when to use siblings like 'process_change' or 'sync_workspace_changes'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ingest_voiceA

Ingest a voice/meeting transcript into the context memory.

Converts pre-transcribed text (from Whisper, AssemblyAI, etc.) into a structured fragment capturing decisions, action items, open questions, technical vocabulary, and key discussion excerpts.

Args: transcript: The full transcript text. source: Identifier (e.g., 'design_meeting_2026-03-07.txt').

Returns JSON with ingestion result plus: - decisions, actions, open_questions (counts) - tech_terms_identified

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYes
transcriptYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must fully disclose behavior. It explains the conversion process and output structure, but does not mention side effects (e.g., whether data is persisted) or auth requirements. It implies storage in context memory but lacks explicit mutation semantics.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a summary line, detailed explanation, explicit argument list, and return value description. It is concise with no redundant content, effectively communicating the tool's purpose and usage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has two simple parameters and a clear output schema described. The description covers input, transformation, and output. It mentions the types of extracted information (decisions, actions, etc.) and return structure. However, it does not address error conditions or limitations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds substantial meaning to both parameters. For 'transcript', it specifies it is the full transcript text; for 'source', it provides an example identifier. Since the schema has no descriptions, this compensation is crucial and effectively clarifies each parameter's role.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Ingest a voice/meeting transcript into the context memory.' It specifies the input type and the output structure, making it distinct from sibling ingest tools like ingest_diagram and ingest_diff. The verb 'ingest' and resource 'voice/meeting transcript' are specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide explicit guidance on when to use this tool versus alternatives. While its purpose implies usage for voice/meeting transcripts, it does not mention exclusions or compare with sibling tools like remember_fragment or ingest_diff, leaving the agent to infer context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inspect_proof_guided_contextA

Inspect the last durable proof-guided response without advancing it.

ParametersJSON Schema
NameRequiredDescriptionDefault
session_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It explicitly states 'without advancing it', indicating no state change. It implies a read-only inspection. However, it does not mention auth requirements, idempotence, or other side effects. The key behavioral trait is disclosed, but more detail could improve transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single short sentence that is concise and front-loaded. Every word adds value: it identifies the action, the resource, and the key constraint ('without advancing'). No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that an output schema exists, the description does not need to explain return values. It covers the core action and constraint. However, it does not explain the role of session_id or how to obtain it. The tool is part of a proof-guided workflow, and while the description is mostly complete, a brief mention of the session_id parameter would improve clarity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has one required parameter session_id, but schema description coverage is 0% (no description in schema). The tool description does not mention session_id or add any meaning beyond the schema. With low coverage, the description should compensate, but it fails to do so.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool inspects the last durable proof-guided response without advancing it. It uses a specific verb ('inspect') and resource ('proof-guided context response'), and distinguishes from sibling tools like 'advance_proof_guided_context' by explicitly noting 'without advancing it'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use this tool: to inspect the last response without progressing the workflow. However, it does not explicitly state when not to use or mention alternatives beyond the contrast with advancing. The context of sibling tools ('prepare', 'advance') provides clear context, but explicit exclusions are missing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

learn_from_failuresC

Mine failure patterns from PRISM, vault, and evolution data. Optionally apply corrections.

ParametersJSON Schema
NameRequiredDescriptionDefault
deepNo
auto_applyNo
min_occurrencesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description bears the full burden. It implies a state-changing capability ('apply corrections') but never states whether mining is read-only, what corrections actually modify, whether they are reversible, or what permissions are required. This is a significant gap for a tool that can mutate data.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences with the core action front-loaded and no filler. The conciseness is undermined only by opaque jargon rather than by verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. But for a 3-parameter tool with a mutating mode and zero schema documentation, the definition omits the parameter meanings and the safety/reversibility profile an agent needs to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. Only auto_apply is loosely implied by 'Optionally apply corrections'; 'deep' and 'min_occurrences' are entirely unexplained, leaving an agent unable to set them meaningfully.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('mine') and resource ('failure patterns') with named data sources (PRISM, vault, evolution). However, 'PRISM' and 'evolution data' are internal jargon that reduce immediate comprehension, and no sibling tool is named for contrast.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'Optionally apply corrections' hints at two modes but never says when to prefer this over siblings like refresh_beliefs, verify_and_repair, or vault_hygiene_scan. No trigger conditions, prerequisites, or exclusions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

manage_skillsA

Manage the CogOps skill lifecycle (Evolution layer).

Actions:

  • list: Show all skills with status, fitness, and run counts

  • benchmark: Run test cases and compute fitness score (0.0-1.0)

  • promote: Promote (fitness >= 0.7) or prune (fitness <= 0.3)

Args: action: list | benchmark | promote skill_id: Required for benchmark/promote actions

ParametersJSON Schema
NameRequiredDescriptionDefault
actionNolist
skill_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses that benchmark runs test cases and computes fitness, and promote/prune uses thresholds. However, it doesn't state whether prune is destructive or if list requires parameters.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short, structured with a summary, bulleted actions, and args list. Every sentence is informative with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and an output schema, the description covers all three actions, their conditions, and parameter requirements. It is complete enough for an agent to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description fully compensates by explaining the action enum values and indicating that skill_id is required for benchmark/promote actions, which is not evident from the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it manages the CogOps skill lifecycle with three specific actions (list, benchmark, promote), providing a verb+resource combination that distinguishes it from sibling tools like create_skill.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use each action (e.g., promote when fitness >= 0.7, prune when <= 0.3). While it doesn't explicitly contrast with alternatives, the action definitions give clear usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

optimize_contextA

Select a high-value context subset for a token budget.

Uses 0/1 Knapsack dynamic programming to maximize relevance within the budget. Scores fragments on four dimensions: recency (Ebbinghaus decay), access frequency (spaced repetition), semantic similarity (SimHash), and information density (Shannon entropy).

QUERY REFINEMENT: Vague queries like "fix the bug" or "add feature" are automatically expanded into precise master prompts using the files already in memory. This improves context selection accuracy and reduces hallucination from selecting wrong files. The response includes query_refinement.refined_query so you can see what drove selection.

Output is ordered for optimal LLM attention: pinned/critical first, high-dependency foundation files early, then by relevance.

This is the core tool — call it before sending context to the LLM.

Args: token_budget: Maximum tokens allowed (default: 128K) query: Current query/task for semantic relevance scoring (can be vague)

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNo
token_budgetNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully carries the behavioral disclosure burden. It reveals the underlying algorithm (0/1 Knapsack), scoring dimensions (recency, frequency, semantic similarity, density), the query refinement side effect, and output ordering rationale. This is far beyond what annotations or schema could convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections for query refinement, output ordering, and argument semantics. Every sentence adds information—algorithm details, scoring dimensions, and practical guidance. Though longer than one sentence, it is information-dense and free of padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having an output schema, the description enriches the context by explaining the output ordering, the query_refinement.refined_query field, and the algorithmic rationale. For a tool with moderate complexity, it covers purpose, behavior, input semantics, and usage context comprehensively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It fully explains both parameters: token_budget as maximum tokens with a default of 128K, and query as the current query/task that can be vague and is expanded by query refinement. This adds meaningful semantics beyond the bare schema fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Select a high-value context subset for a token budget.' It clearly states what the tool does and distinguishes it from sibling tools by positioning it as 'the core tool' for context selection, with a unique knapsack-based optimization approach.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit usage guidance: 'This is the core tool — call it before sending context to the LLM.' It also explains query refinement behavior and when vague queries are acceptable. However, it does not explicitly mention when to avoid this tool or name alternatives, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

prepare_proof_guided_contextA

Prepare a durable proof-guided model request from local documents.

This tool performs only local selection, security checks, exact-recovery commitments, and signed auditing. It does not call a model. Send the returned request through the host's configured model route, then pass the model text to advance_proof_guided_context. The path must remain inside the attached project root.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
queryYes
max_roundsNo
token_budgetNo
idempotency_keyNo
max_chunks_per_roundNo
recovery_token_budgetNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden. It discloses that the tool performs only local operations (selection, security checks, commitments, auditing) and does not call a model. It also mentions the path constraint. This is reasonably transparent, though it lacks details on error handling or permissions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, with multiple sentences that front-load the purpose and then detail what the tool does. No superfluous information is present.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 7 parameters and no param descriptions, the description is incomplete for parameter guidance. It does provide a clear workflow and output usage, but the lack of param semantics leaves a significant gap. The presence of an output schema reduces the need to describe return values, but parameter guidance remains lacking.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description does not explain any parameters beyond implying path must be inside the project root. The other 6 parameters (query, max_rounds, token_budget, idempotency_key, max_chunks_per_round, recovery_token_budget) are left completely undescribed, failing to add meaningful guidance.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Prepare a durable proof-guided model request from local documents.' It specifies what the tool does (local selection, security checks, commitments, signed auditing) and distinguishes it from siblings by noting it does not call a model, and directs the next step to 'advance_proof_guided_context'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a clear workflow: use this tool, then send the returned request to the host's model route, then pass the model text to 'advance_proof_guided_context'. It also states the path constraint. However, it does not explicitly mention when not to use this tool or list alternatives, but the context is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

prepare_task_dreamA

Prepare an expiring, receipt-backed task skill before agent work.

The capsule combines safe cross-session MemoryOS recall, optional hippocampal long-term memory, current repository fragments, non-stale beliefs, and already-promoted skills. Recalled text is evidence rather than authority and is prompt-injection scanned. Root AGENTS.md and CLAUDE.md files are never modified.

Args: task: The concrete task the agent is about to perform. agent_id: MemoryOS identity used for scoped recall. token_budget: Approximate maximum capsule tokens (256-8000). persist: Write SKILL.md and receipt.json under .entroly/task_dreams.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskYes
persistNo
agent_idNodefault
token_budgetNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description discloses several behavioral traits: it modifies SKILL.md and receipt.json only when persist=true, never modifies AGENTS.md or CLAUDE.md, performs prompt-injection scanning, and notes that recalled text is evidence not authority. This goes beyond basic expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description starts with a clear purpose statement and uses a structured Args list. Each sentence adds value, though the paragraph could be slightly more concise. Overall efficient and well-organized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity, absence of annotations, and presence of an output schema, the description adequately explains purpose, parameters, side effects, and safety. It covers what is needed for an agent to use the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds significant meaning to all four parameters beyond the input schema. For example, task is 'the concrete task', agent_id is 'MemoryOS identity used for scoped recall', token_budget specifies range 256-8000, and persist explains file writes. Schema coverage is 0%, so the description fully compensates.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool prepares an expiring, receipt-backed task skill before agent work. It explains the capsule combines memory and recall, distinguishing it from siblings like recall_relevant or vault_write_action, though it does not explicitly contrast them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description indicates use 'before agent work' and explains the tool is for preparation, but does not explicitly state when not to use it or provide alternatives. Some guidance is given but not comprehensive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

process_changeA

Process a code change through the Change-Driven pipeline (Flow ④).

Full pipeline: Diff → ChangeSet → Review → Blast Radius → Vault

Classifies intent (bugfix/feature/refactor/test/security/performance), runs code review (hardcoded secrets, TODOs, broad exceptions, unsafe), computes belief impact, and returns a structured PR brief.

Args: diff_text: Raw unified diff text (git diff output) commit_message: Optional commit message for intent classification pr_title: Optional PR title

ParametersJSON Schema
NameRequiredDescriptionDefault
pr_titleNo
diff_textYes
commit_messageNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It transparently describes processing a diff, intent classification, code review, belief impact, and output of a PR brief.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, well-structured with bullet points for pipeline steps and an Args section, front-loading the main purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has an output schema (implied), and the description mentions the output is a structured PR brief. With clear parameter explanations, it is sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite 0% schema description coverage, the description lists the three parameters with explanatory text, adding meaning beyond the schema's names and types.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it processes a code change through the Change-Driven pipeline (Flow ④), listing the pipeline steps and distinguishing it from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains what the tool does but does not explicitly state when to use it versus alternatives or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recall_relevantA

Semantic recall of the most relevant stored fragments.

Uses BM25 relevance ranking (recall_auto) with a feedback loop (fragments that previously led to successful outputs are boosted).

Returns a slim ranked pointer list by default — source, score, and a locating snippet — because full fragment bodies overflow the tool result cap (a top_k=8 recall is ~90KB). Pass full=True only when you need the complete text of every hit.

Args: query: The search query top_k: Number of results to return full: Return complete fragment bodies instead of the slim view

ParametersJSON Schema
NameRequiredDescriptionDefault
fullNo
queryYes
top_kNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses key behavioral traits: default slim pointer list, BM25 plus feedback loop, result size cap, and reasoning for default view. No annotations exist, so description carries full burden, which it handles well.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with summary first, then details. Each sentence serves a purpose—explaining algorithm, default behavior, parameter guidance. Could be slightly tighter but effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given an output schema exists, the description appropriately omits return value details but covers default slim output and full option. Addresses result size limitation. Missing edge cases like empty query but overall complete for the tool's purpose.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Adds meaning beyond schema: explains the 'full' parameter effect, default value, and the rationale (overflow cap). Query and top_k are mentioned but less detailed; still adds value over bare schema names.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it performs semantic recall of stored fragments, mentioning BM25 ranking and feedback loops. It distinguishes its default slim output from the full option, but does not explicitly differentiate from similar sibling tools like vault_search or entroly_retrieve.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear guidance on when to use the full parameter, explaining the result size limitation and recommending against it unless full text is needed. However, no explicit when-not-to-use or alternatives are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

record_ci_resultB

Record CI pipeline pass/fail status for a request.

STRONG signal: CI is independent infrastructure that ran the change and produced a verdict. The honest top of the signal hierarchy.

Args: request_id: the trace_id from the optimize_context call passed: True if CI green, False if any required check failed pipeline: e.g. "github_actions", "gitlab_ci", "buildkite" url: optional link to the CI run

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo
passedYes
pipelineNo
request_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must bear the burden of behavioral disclosure. It mentions recording a status but fails to disclose whether the operation is idempotent, what happens on duplicate request_id, or if it overwrites previous results.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with a clear main sentence and an 'Args' block. The strong signal context adds some value but is slightly extraneous. Overall, it is well-structured and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains input parameters well but does not cover output, error handling, or edge cases (e.g., invalid request_id). Given the presence of an output schema, the lack of output explanation is acceptable, but the tool's behavior in unusual scenarios is not addressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description includes an 'Args' section that explains each parameter's meaning (e.g., request_id as trace_id, passed as CI green, pipeline examples). This adds substantial value beyond the input schema, especially given 0% schema description coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it records CI pipeline pass/fail status. The verb 'Record' and resource 'CI pipeline...status' are specific. However, it does not explicitly differentiate from sibling tools like record_test_result, which could cause confusion.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when a CI result is available and notes it's a strong signal. However, it does not explicitly state when not to use it or mention alternative tools for similar outcomes (e.g., test results).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

record_command_exitA

Record the exit code of a command that was generated and executed.

STRONG signal: a real subprocess produced a real exit code. Convention: exit_code == 0 → "success", anything else → "failure".

Args: request_id: the trace_id from the optimize_context call exit_code: subprocess exit code; 0 = success command: optional short representation of what was run

ParametersJSON Schema
NameRequiredDescriptionDefault
commandNo
exit_codeYes
request_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully explains the meaning of exit codes (0=success, non-zero=failure) and emphasizes that it is a strong signal. It does not cover side effects or permissions, but for this simple tool it suffices.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a clear purpose, a note about strong signal, convention explanation, and an args list. Every sentence adds value, no redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with 3 parameters and no annotations, the description covers purpose, parameter semantics, and conventions completely. Output schema exists but its explanation is unnecessary. The description is self-contained and sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite 0% schema description coverage, the description thoroughly explains each parameter: request_id is the trace_id from optimize_context, exit_code is the subprocess exit code, and command is an optional representation. This adds significant value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'record' and the resource 'exit code of a command', distinguishing it from sibling tools like record_ci_result and record_test_result. It is specific and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains that this is for a real subprocess exit code, providing context on when to use it. However, it does not explicitly exclude situations or mention alternatives, though sibling names imply differentiation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

record_edit_outcomeA

Record whether the user accepted, reverted, or retried an AI edit.

STRONG signal: user behavior directly indicates whether the generated code was successful.

Args: request_id: the trace_id from the optimize_context call outcome: "accepted", "reverted", or "retried" files_modified: number of files touched by the edit

ParametersJSON Schema
NameRequiredDescriptionDefault
outcomeYes
request_idYes
files_modifiedNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. Describes the action as recording an outcome with specific parameters. Discloses the possible outcome values. No hidden side effects mentioned, but it's a simple logging action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Very concise: one line for purpose, one line for signal strength, then bullet-like args. No unnecessary words, well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of siblings like 'record_outcome', this description clearly specializes. It includes args and context about signal strength. An output schema exists, so return values are covered externally. Slightly could add more about when to prefer this over 'record_outcome'.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Adds meaning beyond schema: explains that 'request_id' corresponds to trace_id from optimize_context, lists the three possible values for 'outcome' (schema has 0% enum coverage), and clarifies 'files_modified' as number of files touched.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clear verb 'record' and specific resource 'whether the user accepted, reverted, or retried an AI edit'. Distinguishes from generic 'record_outcome' sibling by specifying it's about AI edits.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

States that this is a strong signal of user behavior indicating code success, implying when to use. Does not explicitly say when not to, but provides clear context compared to siblings like 'record_outcome'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

record_outcomeA

Record whether selected fragments led to a successful output.

This feeds the reinforcement learning loop: fragments that contribute to successful outputs get boosted in future selections, while unhelpful fragments get suppressed.

Args: fragment_ids: Comma-separated fragment IDs success: True if output was good, False if bad

NOTE on RAVS v1: this tool's success flag is also recorded into the RAVS event log as an agent_self_report event with strength=weak and include_in_default_training=False. Default labeling rules ignore it. Use the structured record_test_result / record_command_exit / record_ci_result tools for honest signals you want offline evaluation to actually train against.

ParametersJSON Schema
NameRequiredDescriptionDefault
successNo
fragment_idsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully discloses behavioral traits: it feeds the RL loop, the success flag is recorded as an agent_self_report event with strength=weak and include_in_default_training=False, and default labeling rules ignore it. This goes beyond basic functionality.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a clear opening sentence, a paragraph explaining the RL purpose, an Args section, and a NOTE. Every sentence adds unique value, and there is no unnecessary repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (2 parameters, no annotations, existing output schema), the description covers purpose, usage, behavioral details, and parameter semantics thoroughly. It distinguishes from siblings and provides actionable guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description includes an explicit Args section that explains both parameters: fragment_ids (comma-separated IDs) and success (boolean, default true). This adds meaning beyond the input schema's type and requirement, especially given the 0% schema description coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's verb 'record' and resource 'outcome', explicitly stating it feeds the reinforcement learning loop. It distinguishes itself from sibling tools like record_test_result, record_command_exit, and record_ci_result, which are mentioned as alternatives for honest signals.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells when to use this tool (for recording fragment outcomes for RL) and when not to (for honest training signals, use record_test_result etc.). It names specific alternatives and explains that default labeling rules ignore this tool's signal.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

record_test_resultA

Record that tests RAN and either passed or failed for a request.

This is a STRONG signal — distinct from record_outcome which is the agent's self-report. Call this when actual test execution produced a real pass/fail outcome.

Args: request_id: the trace_id from the optimize_context call passed: True if all tests passed, False if any failed suite: optional name of the test suite (e.g. "pytest", "cargo test") details: optional short summary of what was tested

ParametersJSON Schema
NameRequiredDescriptionDefault
suiteNo
passedYes
detailsNo
request_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It does not disclose behavioral traits like idempotency, side effects, or error conditions. Merely stating 'Record' gives minimal transparency for a write operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Concise introductory sentence followed by structured Args section. No wasted words, though the Args could be slightly more compact. Good front-loading of purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers input parameters well but lacks description of return value or side effects. With an output schema present and no annotation, the definition would benefit from explaining what the tool returns or confirms.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description's Args section adds meaningful semantics (e.g., request_id is 'trace_id from optimize_context', passed is boolean, suite/detials are optional). Adequately compensates for lack of schema info.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it records test run outcomes (pass/fail) and explicitly distinguishes from sibling 'record_outcome' by noting this is a 'strong signal' from actual test execution, not agent self-report.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly advises to call 'when actual test execution produced a real pass/fail outcome' and contrasts with 'record_outcome', providing clear when-to-use and when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recover_receipt_omissionA

Recover the full text of context a Context Receipt omitted.

Receipts explain what was dropped; this hands back the exact content, byte-for-byte. Works on receipts created with recoverable=True — the recovery bundle is read from the local store. Pass chunk_id to recover one chunk, or leave it empty to recover everything that was omitted.

Each result carries verified=true only when the returned text is provably identical to what was omitted (matched against the chunk's recorded fingerprint and a storage-integrity hash) — never a guess.

ParametersJSON Schema
NameRequiredDescriptionDefault
chunk_idNo
receipt_jsonYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Despite no annotations, the description discloses key behavioral traits: the recovery bundle is read from the local store, and results carry 'verified=true' only when provably identical via fingerprint and storage-integrity hash. It does not mention permissions, rate limits, or any side effects, but covers the verification mechanism and storage source.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: it starts with the main purpose, then explains conditions, usage options, and the verification guarantee. Every sentence adds value, and the length is appropriate for the complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema (not shown but indicated), the description covers parameters, usage conditions, and return behavior adequately. It lacks details on error scenarios or what happens with invalid receipts, but overall provides sufficient context for a recovery tool with moderate complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description adds meaning for 'chunk_id' (optional, used for partial recovery) and implies 'receipt_json' is the receipt to recover from. However, it does not elaborate on the format or constraints of 'receipt_json', leaving some ambiguity. The description compensates partially but could be more detailed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it recovers full text omitted by a Context Receipt, using a specific verb 'Recover' and object 'omitted text'. It distinguishes from sibling 'explain_receipt_omission' by emphasizing it returns the exact content byte-for-byte, not just an explanation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear conditions for use: works only on receipts created with 'recoverable=True', and offers guidance on partial recovery via 'chunk_id'. However, it does not explicitly mention when not to use this tool or suggest alternatives beyond the implicit contrast with 'explain_receipt_omission'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recover_shellB

Recover full CLI output from a compression handle.

ParametersJSON Schema
NameRequiredDescriptionDefault
handleYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It does not disclose whether the handle is consumed, whether permissions are required, what side effects occur, or how errors are handled; it only states the recovery purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no wasted words, directly pairing the action with its input source.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Output schema exists, so return values need not be explained. For a simple one-parameter recovery tool with no annotations, the description states the core input-output relation but omits where the handle comes from and any behavioral guarantees.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% for the single 'handle' parameter. The description adds semantic meaning by calling it a 'compression handle,' but gives no format, origin, or constraints beyond that.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Recover'), resource ('full CLI output'), and source ('from a compression handle'). This clearly distinguishes it from the inverse sibling compress_shell, though it does not explicitly name that alternative.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied: use when you have a compression handle and need the full CLI output. However, the description does not explicitly name compress_shell as the alternative or state when-not-to-use conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

refresh_beliefsA

Mark beliefs as stale after file changes (Flow ④ doc-refresh).

Given changed files, finds related beliefs and marks their status as 'stale' so the next verify_beliefs pass will flag them for re-compilation.

Args: changed_files: Comma-separated list of changed file paths

ParametersJSON Schema
NameRequiredDescriptionDefault
changed_filesYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses the key behavior: marking beliefs as stale (a mutation) and identifies that it does not recompile but triggers later recompilation via 'verify_beliefs'. The side effect (status change) is clear. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, with a summary line and an Args section. It avoids unnecessary words. However, the first line and Args section slightly overlap in stating 'changed files'. Still, it is well-structured and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, output schema exists), the description covers all necessary context: what it does, when to use it, the input format, and the follow-up step. The output schema handles return value transparency, so no further explanation is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'changed_files' is described as 'Comma-separated list of changed file paths', which adds crucial semantic meaning beyond the schema's generic 'string' type. The description also explains how it is used ('finds related beliefs'), making the parameter's purpose very clear.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('mark beliefs as stale') and resource ('beliefs'), and includes context ('after file changes') and a flow reference (Flow ④ doc-refresh). It clearly distinguishes from siblings like 'verify_beliefs' which is mentioned as the next step.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description tells when to use the tool ('after file changes') and describes its role in a workflow ('so the next verify_beliefs pass...'). However, it does not explicitly state when not to use it or mention alternative tools, though the context implies it is part of a specific flow.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remember_fragmentA

Store a context fragment with automatic dedup and entropy scoring.

Fragments are fingerprinted via SimHash for O(1) duplicate detection. Each fragment's information density is scored using Shannon entropy. Duplicates are automatically merged with salience boosting.

Args: content: The text content to store (code, tool output, etc.) source: Origin label (e.g., 'file:utils.py', 'tool:grep') token_count: Token count (auto-estimated if 0) is_pinned: If True, prioritize exact inclusion within the pinned budget reserve; excess pinned content remains a high-priority compressed candidate so the total token ceiling stays honest.

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceNo
contentYes
is_pinnedNo
token_countNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Even without annotations, the description discloses key behavioral traits: dedup via SimHash, entropy scoring, automatic merging of duplicates with salience boosting, and pinned behavior. It does not mention permissions or side effects, but covers the core algorithmic behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured with a brief main sentence followed by technical details and parameter list. It is informative without being overly verbose, though it could be tightened slightly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers parameter details and core behavior, but given the complexity and many sibling tools, it lacks context about where this tool fits in the broader ecosystem. It does not address output schema or return values, but that is acceptable since an output schema is present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description adds meaningful explanations for each parameter: content text, source origin, token count auto-estimation, and pinned behavior details. This compensates for the lack of schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool stores a context fragment with automatic dedup and entropy scoring. It uses specific verbs and describes the resource ('context fragment'). However, it does not explicitly distinguish from sibling tools like vault_write_belief, which might have overlapping functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide guidance on when to use this tool versus alternatives. It fails to specify when not to use it or identify prerequisites. For a tool with many siblings, this is a significant omission.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_context_receiptB

Render a Context Receipt JSON artifact as a Markdown report.

ParametersJSON Schema
NameRequiredDescriptionDefault
receipt_jsonYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It states the transformation but omits details on input validation, error handling, or output structure. Adequate but minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, efficient and front-loaded. No fluff, but could benefit from slight expansion on input expectations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Simple tool with one param and output schema; description covers basic purpose. Lacks detail on expected input structure, but sufficient for a straightforward rendering task.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and description does not add meaning beyond the param name 'receipt_json'. The role is implied but no specifics on format or structure required.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description uses specific verb 'Render' and resource 'Context Receipt JSON artifact' to produce 'Markdown report'. This clearly states the tool's function and distinguishes it from siblings like create_context_receipt or explain_context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like explain_context or create_context_receipt. Lacks explicit context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

repo_file_mapA

Return the canonical Entroly file map across the Python, Rust core, and WASM repos.

Use this to understand ownership boundaries and where logic currently lives. Supported formats: markdown, json.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNomarkdown

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It indicates a read operation ('Return') but does not disclose any side effects, authentication needs, or limitations. The description is adequate but lacks depth.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences, front-loaded with the core purpose, and each sentence adds essential information. No fluff, perfectly concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has an output schema (as per context signals), so return values are documented elsewhere. The description provides enough context (repos, ownership, formats) for a simple one-parameter tool. It could mention the output structure briefly, but given the output schema, it's sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has one parameter (format) with no description (0% coverage). The description adds value by specifying 'Supported formats: markdown, json,' which clarifies valid values beyond the schema. This compensates well for the lack of schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns the canonical Entroly file map across specific repos (Python, Rust core, WASM) and explains its use for understanding ownership boundaries. The verb 'return' and resource 'file map' are specific and distinct from sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'Use this to understand ownership boundaries and where logic currently lives,' providing clear context. However, it does not specify when not to use it or mention alternatives among the many siblings, which would elevate it to a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

resume_stateC

Resume by task relevance; omit query only for latest-checkpoint behavior.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNo
projectNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It mentions the resume action and a special case for query omission, but does not describe side effects, permissions, or output characteristics. The presence of an output schema is not leveraged in the description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short (11 words) and front-loaded, but it sacrifices necessary detail for brevity. It is not verbose, but the conciseness comes at the cost of clarity and completeness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 2 parameters, an output schema, and many sibling tools, the description is insufficient. It lacks details on parameter interactions, return value, and when to use this tool over others, leaving significant gaps for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. The description vaguely references 'query' but does not explain the meaning or usage of 'query' or 'project'. No parameter details beyond the tool-level hint are provided.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Resume' and identifies the resource 'state', and hints at a unique behavior ('omit query only for latest-checkpoint'). However, it does not explicitly distinguish from siblings like 'checkpoint_state' or 'recall_relevant', which could also involve resuming.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Only a single condition is provided ('omit query only for latest-checkpoint behavior'), without any when-to-use or when-not-to-use guidance compared to sibling tools. No explicit alternatives or context of appropriate use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scan_for_vulnerabilitiesA

Scan code content for security vulnerabilities (SAST analysis).

Uses a 151-rule engine with taint-flow simulation and CVSS-inspired scoring. Detects hardcoded secrets, SQL injection, path traversal, command injection, insecure cryptography, unsafe deserialization, XSS, and authentication misconfigurations.

Args: content: The source code to scan. source: File path / identifier (used for language detection and confidence scoring). E.g. "auth/login.py".

Returns JSON with: - findings: [{rule_id, cwe, severity, line_number, description, fix, confidence, taint_flow}] - risk_score: CVSS-inspired aggregate [0.0, 10.0] - critical_count, high_count, medium_count, low_count - top_fix: most impactful remediation action

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceNounknown
contentYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full behavioral disclosure burden. It meaningfully discloses the 151-rule engine, taint-flow simulation, CVSS-inspired scoring, and the specific vulnerability categories detected. It stops short of stating whether the operation is side-effect-free or describing authorization needs, but overall it offers substantial behavioral insight.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with front-loaded purpose, followed by engine details, parameter explanations, and a clear return-format breakdown. Every sentence earns its place, and the 'Args' and 'Returns JSON with' sections make it scannable for an agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter scan tool, the description covers input semantics and output structure thoroughly enough to invoke it correctly. Missing pieces include how it differs from the security_scan sibling and any operational caveats (e.g., content size, asynchronous behavior), but these are minor given the detail already present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It defines 'content' as the source code to scan and explains 'source' as a file path/identifier used for language detection and confidence scoring, including an example. This adds real meaning beyond the plain schema types, though it could add constraints like size limits or supported languages.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool scans code content for security vulnerabilities via SAST analysis, enumerating specific vulnerability classes. It is specific about verb and resource, but does not differentiate itself from the sibling tool 'security_scan' or 'security_report', so it misses the top score for sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains what the tool does but gives no guidance on when to use it versus alternatives. With siblings like security_scan and security_report present, the lack of explicit selection criteria or exclusions leaves an agent without decision support.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

security_reportA

Generate a session-wide security audit across all ingested fragments.

Scans every fragment in the current session and returns an aggregated report showing: which fragments are most vulnerable, overall risk posture, finding distribution by category, and the single most important fix.

Returns JSON with: - fragments_scanned, fragments_with_findings - critical_total, high_total, max_risk_score - most_vulnerable_fragment (fragment_id) - findings_by_category: {category: count} - vulnerable_fragments: sorted list by risk_score

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses that the tool scans every fragment and returns an aggregated report with specific fields. It does not mention any destructive effects or auth requirements, but as a read-only report generation, the description is sufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: one sentence for purpose, then bullet-pointed output details. No extraneous information, and the main action is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given zero parameters and an output schema that exists, the description fully explains the tool's behavior and return format. It is complete for a parameterless tool with a clear output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and schema coverage is 100% by default. The description adds value by detailing the output structure, which compensates for the lack of parameter documentation. Baseline is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates a session-wide security audit across all ingested fragments, listing specific output items. It differentiates from sibling tools like security_scan by emphasizing the aggregate scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use for a macro-level security view ('across all ingested fragments'), but does not explicitly state when to use this tool vs alternatives like security_scan or scan_for_vulnerabilities. No when-not or alternative guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

security_scanA

Scan content for prompt injection attacks and security threats.

Detects:

  • Direct instruction overrides ("ignore previous instructions")

  • Role reassignment attempts ("you are now a...")

  • Unicode steganography (zero-width chars, directional overrides)

  • Base64-encoded instruction payloads

  • Repetition flooding (context window domination)

  • XML/tag-based role spoofing

Use this to verify untrusted content before including it in prompts.

Args: content: The text content to scan source: Source identifier for threat location reporting

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceNo<unknown>
contentYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden of behavioral disclosure. It lists specific threat types detected, implying a read-only scan operation. It does not explicitly state it is non-destructive or mention authorization needs, but the detailed detection list adds transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-organized: a concise opening sentence, a clear bullet list of detections, a usage instruction, and an Args section. Every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the security scanning complexity and the presence of an output schema (which covers return values), the description provides a complete picture: what it detects, how to use it, and parameter details. No gaps identified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description includes an 'Args' section that explains both parameters ('content' and 'source') with their purpose, compensating fully for the 0% schema description coverage. This goes beyond the schema which only provides types and titles.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Scan content for prompt injection attacks and security threats' and lists specific detection categories. This distinguishes it from sibling tools like 'scan_for_vulnerabilities' which likely targets software vulnerabilities, and 'security_report' which generates reports.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly instructs 'Use this to verify untrusted content before including it in prompts,' providing clear when-to-use guidance. However, it does not mention alternatives or when not to use, which would elevate the score.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

shared_memory_forgetC

Remove a shared memory entry by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
entry_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Remove' implies a destructive mutation, but the description does not state whether deletion is permanent, whether confirmation is required, what permissions are needed, or what happens if the ID is not found.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The definition is a single front-loaded sentence with no filler. It is tightly scoped, though extremely terse for a destructive operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no parameter description in the schema, and a destructive operation, the description is incomplete. An output schema exists, so return values need not be explained, but prerequisites and deletion behavior are absent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for the single parameter. It only says 'by ID', which maps to entry_id but adds no format, source, or validation details beyond the parameter name.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (Remove) and resource (shared memory entry), with the method (by ID). It clearly distinguishes from siblings like shared_memory_write, shared_memory_search, and shared_memory_list, though it never names an alternative explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives such as shared_memory_write or shared_memory_search. The description only states what it does, leaving usage context entirely to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

shared_memory_listC

List shared memory entries, optionally filtered by agent or tag.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagNo
limitNo
agent_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It implies a read-only listing but says nothing about pagination behavior for the limit default of 20, ordering, or what happens when no filters are given — all relevant for a list tool in a shared-memory namespace.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no waste. It is efficiently structured, though the brevity edges toward under-specification rather than tight completeness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be described, but with no annotations, 0% parameter coverage, and three parameters including an undocumented limit, the definition leaves too much unstated for an agent to call it confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and there are three parameters, yet the description only gestures at two of them ('agent', 'tag') without adding format or semantics, and never mentions 'limit' or its default. The description does not compensate for the documentation gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('List shared memory entries') with the filterable dimensions named, so the operation is immediately clear. It does not, however, distinguish itself from the sibling shared_memory_search, so an agent cannot tell from this text alone which of the two to pick.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'optionally filtered by agent or tag' implies the browsing use case, but there is no explicit when-to-use guidance and no mention of when to prefer shared_memory_search or shared_memory_stats instead. Usage is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

shared_memory_statsB

Get cross-agent shared memory statistics.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It does not disclose whether the operation is read-only, what permissions are required, whether the statistics are scoped to the current agent or all agents, or any rate limits. Only the bare operation is stated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler. It states the operation and resource immediately and wastes no words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values do not need full explanation in the description. With no input parameters and no annotations, the description is minimally adequate but does not clarify the scope of 'cross-agent' statistics or any safety profile beyond what can be inferred from the name.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so the baseline is 4. There are no parameters to document, and the description does not need to add syntax or format details for inputs.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Get') and resource ('cross-agent shared memory statistics'), making the tool's purpose clear. It implicitly distinguishes itself from siblings like shared_memory_search, shared_memory_write, and shared_memory_list by focusing on statistics rather than search, write, or enumeration, though it does not explicitly name an alternative.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives such as get_stats, shared_memory_search, or shared_memory_list. The intended context is only implied by the word 'statistics' and requires the agent to infer usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

shared_memory_writeB

Write to cross-agent shared memory. Deduplicates near-identical entries via SimHash.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNo
contentYes
agent_idNounknown
session_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full disclosure burden, but it does contribute one genuinely useful trait: near-identical entries are deduplicated via SimHash, implying a write may merge rather than append. It omits scope/permissions, idempotency on repeated identical writes, and persistence lifetime — significant gaps for a write tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with zero filler; the core action is front-loaded and the dedup caveat follows immediately. Nothing needs to be trimmed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, but the definition leaves the highest-risk unknowns unaddressed: no annotation-backed safety profile, no parameter meaning for three of four fields, and no statement of when this memory store should be chosen over sibling memory/vault tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across four parameters, and the description compensates only for 'content' via the word "entries". tags, agent_id, and session_id — the fields that determine memory scoping and provenance — are unexplained with defaults ('unknown', '') that an agent cannot interpret from the text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ("Write to cross-agent shared memory") and the namespace makes its role obvious relative to siblings like shared_memory_search/list/forget. However, it never names an alternative or contrast case, so sibling differentiation is left to inference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use, when-not-to-use, or alternative routing guidance. An agent must guess whether a fact belongs in shared memory versus one of the many record_*/remember_fragment/vault_write_* siblings that also accept content.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

smart_readA

Read a file at an automatic or caller-chosen resolution.

By default SRP selects the optimal resolution per code block from query relevance and token budget:

  • Blocks matching the query → FULL (complete source)

  • Related blocks → MEDIUM (signature + docstring)

  • Peripheral blocks → LOW (name only)

  • Irrelevant blocks → SKIP (omitted)

This reduces output by prioritizing query-relevant blocks. Use resolution="full" whenever exact source text is required.

Automatic selection is the right default and cannot be right for every question. Measured on this repository, a signature-level view answered 12/12 questions whose evidence lives in a signature and 0/20 whose evidence lives in a function body. Pass resolution when you already know which kind of question you are asking.

Args: file_path: Path to the file to read query: What you're looking for (improves relevance scoring) budget: Target token budget for the output (default: 1000) resolution: Choose "full", "medium", "diff", "structure", or "low"; empty means automatic. "full" returns the complete original text. "diff" requires previous_source and returns a whole-file unified diff. "structure" returns declarations, signatures, and imports while eliding implementation bodies when a useful native outline is available; otherwise it returns full source and reports structure_backend="full-fallback". Pinned output is not demoted to fit the budget; the response reports over_budget instead. previous_source: Required baseline when resolution is "diff". line_start: First line of an exact inclusive range (1-indexed). Must be supplied together with line_end and cannot be combined with resolution. line_end: Last line of an exact inclusive range (1-indexed). fresh: Bypass same-session re-read suppression and return the rendered output in full. read_scope: Optional caller scope for isolating parallel agents that intentionally share one MCP connection.

An exact repeated delivery returns only an opaque ~NNN handle. That handle means the rendered output is byte-identical to content already delivered in this MCP session. Pass fresh=true to expand it. Caller-selected FULL and line ranges return raw text on cache miss; they are not wrapped in JSON, so their text remains exact.

ParametersJSON Schema
NameRequiredDescriptionDefault
freshNo
queryNo
budgetNo
line_endNo
file_pathYes
line_startNo
read_scopeNo
resolutionNo
previous_sourceNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully carries behavioral disclosure. It details the automatic resolution tiers, token-budget handling, the `over_budget` reporting, `structure_backend="full-fallback"`, the opaque handle for repeated delivery, and the raw-text behavior of full/line-range reads. This leaves little ambiguity about tool behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Though lengthy, the description is tightly structured: a clear opening, grouped resolution behaviors, an evidence-based usage note, and a parameter list. Every sentence adds necessary information; no filler or repetition. This is appropriately sized for a 9-parameter tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers all important aspects for a complex read tool: default behavior, switchable modes, edge cases (diff fallback, over_budget), repeated-delivery handles, line-range constraints, and raw-text versus JSON wrapping. It is fully complete given the schema and absence of annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description compensates exhaustively. Every parameter is explained in an Args section, including interdependencies ('`previous_source` is required when resolution is "diff"', '`line_start`... cannot be combined with `resolution`') and semantic details like budget, fresh bypass, and read_scope isolation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource statement: 'Read a file at an automatic or caller-chosen resolution.' It clearly explains the tool's core function and differentiates its resolution levels, going well beyond a mere restatement of the name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit usage guidance with measured evidence: 'Automatic selection is the right default and cannot be right for every question... Pass `resolution` when you already know which kind of question you are asking.' It also instructs to use `resolution="full"` for exact source text, and explains when line ranges and `fresh=true` are appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

start_workspace_listenerB

Start a background workspace listener that continuously feeds repo changes into CogOps.

This is the long-running change-driven bridge from repo activity into Belief CI.

ParametersJSON Schema
NameRequiredDescriptionDefault
directoryNo
max_filesNo
interval_sNo
force_initialNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It mentions the listener is 'background' and 'long-running', but does not disclose behavioral traits like resource consumption, cancellation mechanisms, or mutability. Minimal transparency for a background watcher.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with two sentences, front-loading the key purpose. Every word adds value with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 4 optional parameters with 0% schema coverage and no output schema guidance in description, the tool is not fully specified. Missing details on parameter usage, stopping the listener, and return values make it incomplete for effective agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, yet the description provides no information about any of the 4 parameters (directory, max_files, interval_s, force_initial). The agent has no guidance on what these parameters mean or how to use them.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Start a background workspace listener that continuously feeds repo changes into CogOps.' It uses a specific verb ('Start') and resource ('workspace listener'), and distinguishes this as a long-running, change-driven bridge, which is unique among siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for continuous monitoring of repo changes, but does not explicitly state when to use this tool versus alternatives (e.g., sync_workspace_changes). It lacks when-not or alternative guidance, leaving the agent to infer context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

steer_outputC

Classify query effort and return output steering directives + max_tokens budget.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
effortNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It says the tool returns directives and a token budget, but does not disclose side effects, permissions, determinism, error behavior, or how the classification is performed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no wasted words. It is appropriately concise, though it is so terse that it sacrifices useful detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. However, with no annotations and 0% parameter description coverage, the definition is missing the usage and parameter context an agent needs to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not explain either parameter. The required 'query' parameter and optional 'effort' parameter, including possible values or default behavior, are left entirely undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb+resource: it classifies query effort and returns output steering directives plus a max_tokens budget. This is clear and distinct from nearby context/memory tools, though it does not explicitly differentiate itself from any specific sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool, when not to use it, or what alternatives exist. The agent must infer usage entirely from the short functional statement.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sync_workspace_changesC

Synchronize workspace file changes into the belief and verification layers.

Detects new, modified, and deleted source files, marks affected beliefs stale, recompiles changed files into fresh beliefs, runs a verification pass, and writes a sync report into actions/.

ParametersJSON Schema
NameRequiredDescriptionDefault
forceNo
directoryNo
max_filesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description provides moderate transparency by detailing that it marks beliefs stale, recompiles, runs verification, and writes a sync report. However, it does not disclose side effects like potential data loss, required permissions, or error conditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with three sentences, front-loading the purpose and then listing steps. It is well-structured and efficient, though the parameter omission is a downside.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (3 undocumented parameters, no annotations, output schema exists), the description is incomplete. It explains the workflow but omits parameter semantics and return value details, which are necessary for an agent to use the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, yet the description does not explain any of the three parameters (force, directory, max_files). This is a critical gap because the agent has no guidance on how to use these parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool synchronizes workspace file changes into belief and verification layers, listing specific steps like detecting changes and recompiling beliefs. However, it does not differentiate from similar sibling tools like refresh_beliefs or verify_beliefs, which slightly reduces clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives such as process_change or start_workspace_listener. The description implies usage after source file changes but lacks exclusions or context for optimal use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vault_hygiene_scanA

Scan vault beliefs against each other for knowledge decay.

Report-only living-context maintenance: pairwise ESG contradiction detection between beliefs, near-duplicate merge suggestions, staleness flags, and confidence flapping (entities whose recorded confidence keeps reversing across ledger versions). Never rewrites or deletes a belief — act on the suggestions explicitly.

Args: contradiction_threshold: min ESG contradiction_fraction to flag a belief pair (default 0.5) max_age_days: beliefs unchecked for longer are flagged stale (default 30)

ParametersJSON Schema
NameRequiredDescriptionDefault
max_age_daysNo
contradiction_thresholdNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully discloses behavior: read-only, never rewrites or deletes, produces suggestions to act upon. It explains key terms like 'confidence flapping' and states it is 'report-only', providing complete transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise yet comprehensive: one paragraph for purpose and behavior, a clear constraint sentence, and a parameter list. It front-loads the main action and uses bullet-point-style readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (scanning beliefs for multiple hygiene issues), the description covers all necessary aspects: purpose, what it detects, non-destructive nature, and parameter details. The output schema is present but not shown, so return value explanation is not needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Although input schema description coverage is 0%, the description includes an 'Args' section that explains both parameters (contradiction_threshold and max_age_days) with defaults and what they control, fully compensating for the lack of schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verbs like 'Scan', 'report-only', and lists concrete actions (contradiction detection, merge suggestions, staleness flags, confidence flapping). It clearly distinguishes from write tools by stating 'Never rewrites or deletes a belief'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the tool is for 'report-only living-context maintenance' and explicitly states it does not modify data, implying use for diagnostics. However, it does not directly compare to sibling tools like refresh_beliefs or vault_write_action.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vault_queryA

Query the CogOps Knowledge Vault for existing beliefs.

Use this to check what the system already knows before compiling new understanding. Supports lookup by entity name or listing all.

Args: entity: Entity name to look up (fuzzy match) list_all: If True, return all beliefs with frontmatter summary

ParametersJSON Schema
NameRequiredDescriptionDefault
entityNo
list_allNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must carry the burden. It discloses that the tool supports fuzzy match by entity and list_all for all beliefs. However, it does not explicitly state that it is read-only or non-destructive, which is implied but not confirmed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the purpose and usage guidance, followed by a structured Args section. Every sentence adds value, and it is concise without being terse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains the two modes of operation and mentions that list_all returns frontmatter summary. Given the presence of an output schema, it does not need to detail return values further, making it sufficiently complete for a simple query tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description compensates for 0% schema description coverage by explaining both parameters: 'entity' is a fuzzy match and 'list_all' returns all beliefs with frontmatter summary. This adds meaningful context beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'query' and resource 'CogOps Knowledge Vault for existing beliefs', with a specific usage context: 'check what the system already knows before compiling new understanding'. This distinguishes it from sibling tools like vault_write_belief or vault_search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says when to use it ('before compiling new understanding'), providing clear context. It does not explicitly state when not to use it or name alternatives, but the purpose is well-defined enough for an agent to decide.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vault_statusA

Show the current state of the CogOps Knowledge Vault.

Initializes the vault directory structure if needed, then returns a coverage index: total beliefs, verification status, confidence distribution, and routing statistics.

The vault is the persistent Living Exocortex — the system's machine-auditable understanding of your codebase.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full behavioral disclosure. It transparently states that the tool may initialize the vault directory structure if needed and returns a coverage index with detailed components. This is sufficient for understanding the tool's side effects and output.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with two functional sentences plus one conceptual sentence about the living exocortex. While the third sentence adds context, it could be considered slightly extraneous. Overall, it is well-structured and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given zero parameters, an output schema that likely details the return structure, and a description that explains the purpose and behavior, the description is fully complete. It covers initialization side effects and the nature of the returned data, leaving no gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, and schema description coverage is 100%, so the baseline is 4. The description adds context about the return value, which is already partially covered by the output schema. No additional parameter guidance is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool shows the current state of the vault, including initialization and specific return fields like total beliefs, verification status, confidence distribution, and routing statistics. It distinguishes from sibling tools like vault_query and vault_write_belief by focusing on overall status rather than individual operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for obtaining a holistic overview of the vault, but does not provide explicit guidance on when to use this tool versus alternatives, nor does it mention when not to use it. While the sibling tools offer more specific operations, the description lacks direct usage instructions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vault_time_travelA

Query the vault's bitemporal belief ledger — memory time travel.

Every belief write is versioned in an append-only, hash-chained ledger. This tool answers questions like "what did the vault know last Tuesday?" and "what changed between two dates?".

Args: action: One of: as_of — snapshot of beliefs visible at when diff — what changed between from_when and to_when timeline — version history for entity verify_chain — tamper-check the ledger hash chain seed — backfill the ledger from pre-ledger belief files redact — erase belief bodies (by entity or claim_id) via a chained tombstone; content is deleted, the hash chain stays verifiable when: ISO-8601 instant for as_of (e.g., '2026-07-14T00:00:00+00:00') from_when: ISO-8601 start instant for diff to_when: ISO-8601 end instant for diff entity: Entity name for timeline time_axis: 'transaction' = what the vault knew at that instant (default); 'valid' = what had been verified as of that instant

ParametersJSON Schema
NameRequiredDescriptionDefault
whenNo
actionYes
entityNo
reasonNouser_requested_erasure
to_whenNo
claim_idNo
from_whenNo
time_axisNotransaction

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral disclosure burden. It explains the append-only, hash-chained ledger, and describes each action's behavior, including side effects like redact's 'chained tombstone' and hash chain verifiability. However, it does not mention rate limits or authorization requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured, starting with a clear one-sentence purpose, followed by a detailed list of actions and parameters. It is somewhat verbose (e.g., repeating 'ISO-8601' multiple times) but each part adds value. It could be slightly tighter without losing clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 8 parameters, no schema descriptions, and an output schema (unseen), the description covers the main actions and their return concepts. However, missing parameter documentation for 'reason' and 'claim_id' reduces completeness. The output schema existence does not fully offset this gap since the description does not reference it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It documents 6 out of 8 parameters (action, when, from_when, to_when, entity, time_axis) with clear meaning and examples. However, it omits documentation for 'reason' and 'claim_id' (though claim_id is mentioned in the redact action). This partial coverage leaves a gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool's function: 'Query the vault's bitemporal belief ledger — memory time travel.' It lists specific actions (as_of, diff, timeline, verify_chain, seed, redact) which clarify the scope and distinguish it from sibling tools like vault_search or vault_query.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains what each action does but does not explicitly compare this tool to alternatives or state when not to use it. With many sibling tools (e.g., vault_query, vault_search), explicit usage guidance would be beneficial, but the action descriptions imply use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vault_write_actionB

Write a task output or report to the CogOps Knowledge Vault.

Action artifacts are developer-facing outputs: PR briefs, answers, architecture diagrams, slide decks, task reports. They live in actions/ and are timestamped for traceability.

Args: title: Title of the output content: Full markdown content action_type: Type tag (report, pr_brief, answer, diagram, context_pack)

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes
contentYes
action_typeNoreport

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description states that artifacts are stored in 'actions/' and are timestamped, but it does not disclose key behavioral details such as whether the operation is additive or overwrites existing data, what happens on duplicate titles, or any required permissions. Since no annotations exist, the description carries the full burden.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise: a brief purpose statement, a clarifying sentence about action artifacts, and a parameter list. Every sentence adds value, and the structure is logical and easy to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description adequately explains the tool's purpose and parameters, but it omits context such as prerequisites (e.g., whether the vault must exist), error handling, or the format of the return value (though an output schema exists). Given the tool's complexity (3 params, write operation), more context would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description includes an Args section that explains each parameter: title, content (markdown), and action_type with enumerated values (report, pr_brief, etc.). This adds substantial meaning beyond the schema, which only provides type and default. The schema coverage is 0%, making the description's parameter details essential.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool writes task outputs/reports to the CogOps Knowledge Vault and specifies the kinds of artifacts (PR briefs, answers, etc.). However, it does not explicitly distinguish from the sibling vault_write_belief, which likely serves a similar but different purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides context on what constitutes action artifacts and where they are stored, giving implicit guidance on when to use the tool. But it lacks explicit when-not-to-use or alternatives, and does not differentiate from vault_write_belief or other write tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vault_write_beliefA

Write a belief artifact to the CogOps Knowledge Vault.

Beliefs are durable system understanding — what Entroly thinks the codebase is. Each belief carries machine-auditable frontmatter: claim_id, entity, status, confidence, sources, last_checked.

Args: entity: The system entity this belief is about (e.g., 'auth::token_rotation') title: Human-readable title body: The belief content (markdown) confidence: Machine-assigned confidence 0.0-1.0 (default: 0.7) status: observed|inferred|verified|stale|hypothesis (default: inferred) sources: Comma-separated source paths (e.g., 'src/auth.rs:142,src/token.rs:58') derived_from: Comma-separated component names that produced this belief

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYes
titleYes
entityYes
statusNoinferred
sourcesNo
confidenceNo
derived_fromNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must convey behavior. It explains the structure of beliefs and the Args, but omits details on side effects, permissions, whether writes overwrite or append, or idempotency. The output schema exists but is not described.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a summary line, explanatory paragraph, and Args list. It is reasonably concise, though the Args section could be slightly more integrated. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 7 parameters, 0% schema coverage, and no annotations, the description covers purpose and parameter details well. It does not explain the output, but an output schema exists. It could mention success/failure outcomes, but overall is fairly complete for a write function.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% coverage, but the description's Args section adds full meaning: it explains entity, title, body, confidence (with range), status (with enumerated values), sources, and derived_from. This compensates completely for the missing schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Write' and the resource 'belief artifact to the CogOps Knowledge Vault'. It distinguishes from siblings like vault_query and vault_write_action by specifying it writes a 'belief' artifact, and explains beliefs as durable system understanding.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for writing beliefs but does not explicitly state when to use or avoid this tool. It doesn't mention alternative tools like vault_write_action, leaving the agent to infer context from sibling names.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_and_repairA

Verify LLM-generated code and suggest repairs for hallucinations.

Combines BIPT verification with rejection analysis to identify hallucinated identifiers and suggest which real APIs/symbols from the context should be used instead.

This is a single-shot verification + feedback tool — it does NOT call an LLM. For the full repair loop (FORGE), use the Python SDK: from entroly.verifiers import forge_loop

Args: prompt: The original user request that generated the code code: The LLM-generated code to verify context: The repository context provided to the LLM

ParametersJSON Schema
NameRequiredDescriptionDefault
codeYes
promptYes
contextNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It transparently states the tool combines BIPT verification and rejection analysis, identifies hallucinated identifiers, and suggests real APIs—without calling an LLM or performing direct modifications. No side effects or destructive actions are implied, but permissions or limits are not discussed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with three clear paragraphs: purpose, technical details, and a note on alternatives. Every sentence adds value—no fluff, no repetition of schema fields. Front-loaded with the core verb and resource.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (verification with 3 parameters, output schema exists but not shown), the description adequately explains the verification process and output types (hallucinated identifiers, suggested real APIs). It does not detail the return format, but the presence of an output schema implies that is redundant. Minor gap: no mention of error conditions or prerequisites.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage, so the description adds complete meaning for all three parameters: prompt as 'original user request', code as 'LLM-generated code', and context as 'repository context'. This fully compensates for the schema's lack of descriptions, making parameter roles unambiguous.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool verifies LLM-generated code and suggests repairs for hallucinations, specifying the verb ('verify and suggest') and resource ('LLM-generated code'). It distinguishes itself by noting it is single-shot and does not call an LLM, contrasting with sibling tools like 'eicv_suppress_hallucinations' or the full FORGE loop.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly advises when not to use this tool (for full repair loop) and provides an alternative (Python SDK). However, it does not differentiate from other verification siblings like 'verify_beliefs' or 'verify_response', which could lead to confusion despite the specific focus on hallucinations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_beliefsB

Run a full verification pass on all beliefs in the vault.

Checks for:

  • Staleness (beliefs past their freshness window)

  • Contradictions (conflicting claims about the same entity)

  • Confidence divergence between same-entity beliefs

  • Low confidence scores

Writes verification artifacts to vault/verification/.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses the checks performed and output location (writes artifacts to vault/verification/), but does not mention whether beliefs are read-only, permissions required, or potential side effects like locking.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief and front-loaded with the main action, followed by a bullet list of checks. Every line adds value, with no redundancy, but could be slightly more structured with a note on return value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a no-parameter tool with no annotations, the description covers the core function but omits what happens after writing artifacts (e.g., return value or output schema usage). It also lacks prerequisites like existing beliefs, making it somewhat incomplete for a first-time user.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and the description correctly indicates no inputs are needed by stating it runs on 'all beliefs'. Schema coverage is 100% by default, and the description adds no further semantic detail, meeting the baseline of 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states it runs a full verification pass on all beliefs, listing specific checks like staleness and contradictions. While it distinguishes itself from siblings like 'verify_provenance' by focusing on internal consistency, it does not explicitly differentiate from 'compile_beliefs' or 'refresh_beliefs'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as 'eicv_verify_claim' for single claims or 'verify_and_repair' for fix operations. Usage context is merely implied by the tool's name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_provenanceA

Verify that LLM-generated code is grounded in the provided context.

Uses BIPT (Byte-level Information Provenance Tracer) to measure how much of each identifier in the generated code originates from the context. Returns an Identifier Provenance Deficit (IPD) score:

IPD = 0.0 → fully grounded (all identifiers come from context) IPD = 1.0 → fully invented (no identifiers match context)

Use this after an LLM generates code to check for hallucinated APIs, invented function names, or fabricated imports before accepting output.

Args: code: The LLM-generated code to verify context: The repository context that was provided to the LLM

ParametersJSON Schema
NameRequiredDescriptionDefault
codeYes
contextNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description explains the BIPT method, IPD score range (0.0 to 1.0), and what it checks (identifiers from context). Discloses key behavioral aspects without mentioning permissions or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with clear purpose in first sentence, followed by method and usage. Efficient use of sentences, though the 'Args' list adds slight redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has output schema, so return value is defined elsewhere. Description adds interpretation of IPD score and use case. For a 2-param verification tool, this is sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite 0% schema description coverage, the 'Args' section adds meaning beyond schema: code is LLM-generated, context is repository context. Explains purpose of each parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool verifies LLM-generated code grounding in provided context using BIPT and IPD score. It distinguishes from sibling tools like 'verify_response' by focusing on code provenance.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use: after LLM generates code to check for hallucinations. Provides context for when it's appropriate, though no explicit when-not or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_responseA

Verify an AI-generated response for hallucination using the 4-signal fusion cascade.

Runs the same hallucination detection pipeline as the proxy (WITNESS + ECE + EPR + Spectral) but callable directly from any MCP client. Use this after generating a response to check for factual claims that aren't grounded in the provided context.

Returns a structured verification report with:

  • fused_risk: Combined hallucination probability [0.0 = safe, 1.0 = hallucinated]

  • verdict: "pass", "warn", or "flag"

  • per-signal scores (entity_coverage_gap, ece_curvature, epr_rate, spectral_consistency)

  • flagged_claims: List of specific claims that may be hallucinated

  • recommendation: Suggested action (accept / review / reject)

All computation is 100% local — zero LLM calls, zero API calls.

Args: response: The AI-generated text to verify context: The source context that was provided to the AI prompt: The original user prompt/query (helps calibrate verification)

ParametersJSON Schema
NameRequiredDescriptionDefault
promptNo
contextNo
responseYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description fully discloses behavior: it explains the 4-signal fusion cascade (WITNESS, ECE, EPR, Spectral), states all computation is 100% local with zero LLM/API calls, and details the return structure. This is exemplary transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose and method, then details return values and computation characteristics. While slightly long, every sentence adds value; it could be tightened but is well-organized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema is provided in the input, the description compensates by listing all output fields (fused_risk, verdict, per-signal scores, flagged_claims, recommendation) and explaining the overall pipeline. This makes the tool complete enough for an agent to understand its capabilities and results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must add meaning. It defines 'response' as 'the AI-generated text to verify', 'context' as 'the source context provided to the AI', and 'prompt' as 'the original user prompt/query (helps calibrate verification).' This adds value beyond the schema properties with defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly specifies the tool's purpose: 'Verify an AI-generated response for hallucination using the 4-signal fusion cascade.' It distinguishes itself by noting it uses the same pipeline as the proxy but is directly callable from MCP clients, setting it apart from sibling tools like eicv_verify_claim or verify_and_repair.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description advises: 'Use this after generating a response to check for factual claims that aren't grounded in the provided context.' This provides clear usage context. However, it does not explicitly mention when not to use it or name alternative tools, missing some guidance for an agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

work_acknowledge_recoveryC

Accept responsibility for recovered work state so acting is allowed.

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenYes
projectNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries the full burden of behavioral disclosure. It does reveal a meaningful consequence: calling the tool makes later acting permissible. Yet it omits details such as whether the acknowledgment is irreversible, idempotent, or dependent on prior state, and what happens if the token is invalid.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single efficient sentence with no filler words. It loses one point because the phrasing is somewhat jargon-heavy and passive, using terms like 'recovered work state' and 'acting is allowed' without unpacking them.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

In a large group of state, resume, and recovery tools, this description leaves important context uncovered: how the token maps to recovery, whether project is needed, and the expected call flow. The presence of an output schema reduces the need to describe return values, but the path to a correct invocation is still underspecified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not compensate by explaining token or project. The required token is left as a bare name with no indication of what it represents, how to obtain it, or how it relates to the recovered work state.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a concrete verb phrase ('Accept responsibility') and identifies a specific resource ('recovered work state') with a clear outcome ('so acting is allowed'). It conveys the tool's role without being a tautology, though it does not explicitly contrast this with sibling tools like work_resume or work_claim.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'so acting is allowed' implies this should be called after a recovery and before subsequent actions, giving some usage context. However, it never states when not to use it or which sibling tools handle claiming, resuming, or state transitions, so usage guidance is mainly implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

work_claimC

Record explicit agent work plus a bounded advisory scope lease.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectNo
task_idNo
agent_idYes
session_idNo
task_titleYes
scope_pathsNo
ttl_secondsNo
scope_symbolsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It hints at a 'bounded lease' and 'scope', which implies time-limited scoping, but it does not explain side effects, persistence, expiration behavior, idempotency, or what the returned claim/lease contains.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no filler, and it front-loads the primary action. However, it is too sparse for the parameter complexity and leaves important semantics entirely implicit.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 8 parameters, 0% schema coverage, no annotations, and a large sibling family, this description is not complete enough for an agent to invoke the tool confidently. The output schema is noted as present, but the description still omits lease semantics, expected inputs, and relationship to other work_* tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for explaining the 8 parameters. It only loosely maps 'scope lease' to scope_paths/scope_symbols/ttl_seconds, and does not clarify the meaning of agent_id versus session_id, the role of task_id/task_title, or how the lease is enforced or released.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific action ('Record explicit agent work') and a resource ('bounded advisory scope lease'), which distinguishes it from many sibling work_* tools at a high level. The phrase 'bounded advisory scope lease' is somewhat jargon-heavy but conveys that the tool registers work and a scoped, time-limited claim.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use this tool versus alternatives like work_handoff, work_resume, or work_record_context. The context of sibling tools suggests a work-tracking workflow, but the description provides no explicit when-to-use, prerequisites, or exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

work_compile_contextC

Compile verified code context and record its Work Graph receipt.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
projectNo
agent_idNo
max_hopsNo
session_idNo
token_budgetNo
max_fragmentsNo
workstream_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries the full burden. It discloses a side effect ('record its Work Graph receipt') and a quality aspect ('verified'), but it does not explain whether this modifies state, what prerequisites exist, whether the operation can fail, or what occurs after compilation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and front-loads the main action, but it is so terse that it omits essential context. It reads as a label rather than a structurally organized tool summary, and its brevity does not offset the missing detail for a complex eight-parameter tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is complex, has no annotations, and has undocumented parameters. Although an output schema exists, the description does not cover what inputs mean, when the tool should be used, or what side effects besides the receipt may occur. The context is insufficient for reliable agent invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description provides no meaning for any of the eight parameters. Even the required `query` parameter is not explained, and the rich parameters like `max_hops`, `token_budget`, and `workstream_id` are left entirely undefined.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('compile') and resource ('verified code context'), and adds the outcome of recording a Work Graph receipt. It differentiates somewhat from siblings like work_record_context and compile_docs, though it does not explicitly clarify how it relates to those tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use this tool versus alternatives. With many similar sibling tools such as work_record_context, create_context_receipt, and compile_docs, the absence of any selection criteria leaves the agent to guess.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

work_context_faultC

Fault exact omitted code from a context token or verified context object.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
projectNo
agent_idNo
session_idNo
context_refYes
token_budgetNo
workstream_idNo
recovery_handleYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral disclosure. It states only the intended action and source, and does not reveal whether the operation mutates context, requires recovery_handle semantics, or produces a response beyond the omitted code.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one sentence with no filler and is front-loaded with the action. It is concise, though the unusual phrasing makes it less clear than it could be.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 8 parameters, 3 required, nested objects, empty annotations, and zero schema descriptions, this sentence is grossly incomplete. It does not define recovery_handle, token_budget, or when the operation should be invoked, so an agent cannot safely select or call it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and there are 8 parameters. The phrase 'context token or verified context object' gives a slight hint about context/context_ref, but required recovery_handle and optional token_budget, project, agent_id, session_id, and workstream_id remain unexplained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The text names a resource ('exact omitted code') and a source ('context token or verified context object'), but the verb 'Fault' is nonstandard and ambiguous. It is not tautological, yet it does not clearly distinguish this from sibling recovery/omission tools such as recover_receipt_omission or explain_context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use when context has omitted code, but gives no conditions, exclusions, or comparison with alternatives. An agent cannot tell when to choose work_context_fault over recover_receipt_omission or explain_context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

work_handoffC

Create a graph-bound handoff receipt and complete continuation proof.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectNo
to_agentYes
from_agentYes
workstream_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It indicates side effects (creating a receipt and completing a proof) but does not clarify whether a graph write occurs, whether the operation is destructive, what 'continuation proof' entails, or whether the tool is idempotent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, short sentence with no filler or repetition. It front-loads the core action. The cryptic 'complete continuation proof' phrase reduces clarity but does not make the description bloated.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With four parameters, three required, no annotations, and many closely related sibling tools, this description is too minimal to be complete. It does not explain what a handoff receipt is used for, when continuation proof is needed, or how this relates semantically to work_resume or create_context_receipt. The presence of an output schema helps return-value understanding but not invocation decisions.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not mention any of the four parameters. The parameter names from_agent, to_agent, and workstream_id are fairly self-explanatory, but the meaning of 'project' with a default empty string and the expected format of each value are left completely unspecified.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Create' and identifies a concrete resource: a 'graph-bound handoff receipt'. This clearly distinguishes the tool from siblings like work_claim or work_resume by naming the handoff artifact. However, the phrase 'complete continuation proof' is unexplained jargon, preventing a perfect 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers no guidance on when to use this tool, when not to use it, or which alternatives might be more appropriate. With a large sibling set that includes create_context_receipt, work_claim, and work_resume, the agent is left to infer the exact handoff scenario from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

work_modificationsB

Modifications recorded between observations by the workspace watcher.

A point-in-time refresh shows what a file looks like now. This shows that it changed at 14:02 and again at 14:07, which a refresh cannot. Empty when the watcher is disabled.

ParametersJSON Schema
NameRequiredDescriptionDefault
drainNo
projectNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral disclosure. It usefully states that the result is empty when the watcher is disabled and that the content is historical, but it never explains whether the drain parameter consumes or clears modifications, nor does it mention side effects, permissions, or state changes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences with a front-loaded definition, a clarifying contrast, and a concrete example. Every sentence earns its place and there is no filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The conceptual use case is well covered and an output schema exists, but the total absence of drain/project semantics and the lack of annotations leave an agent unable to safely choose argument values or anticipate side effects. This is a significant completeness gap for a two-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not mention the drain or project parameters at all. 'drain' especially could materially change behavior, and 'project' implies filtering, but an agent has no information about either from the description or schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies the resource as modifications recorded by the workspace watcher and explains that it shows timestamped changes between observations. The concrete 14:02/14:07 example clarifies that this is a historical view rather than a point-in-time snapshot, which differentiates it from refresh-like tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The point-in-time refresh contrast gives clear context: use this tool when you need change history between observations, not a current snapshot. It does not explicitly name sibling tools or state 'use X instead', so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

work_record_contextC

Attach a canonical ContextReceipt to its exact WorkScope.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectNo
receiptYes
agent_idNo
session_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description must carry the behavioral disclosure burden. 'Attach' implies a mutation or association, but the description does not say whether it overwrites existing links, whether the ContextReceipt must already exist, what happens if the exact WorkScope is missing, or what the tool returns.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler or repetition. It is efficient, though the terseness leaves important semantic gaps that could have been addressed in the same space.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, 0% parameter documentation coverage, a nested input object, and a large sibling tool set, this description is not sufficient for an agent to invoke the tool correctly. It provides the core verb but omits required parameter semantics, output behavior, and selection context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not explain project, receipt, agent_id, or session_id. It mentions ContextReceipt and WorkScope but never explicitly maps them to the input parameters, leaving the required receipt's expected structure entirely unspecified.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('attach') with clear resources ('ContextReceipt', 'WorkScope'), so it is not a tautology. However, it relies on unexplained capitalized domain terms and does not explicitly differentiate itself from closely related work_record_* siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool versus alternatives such as create_context_receipt, render_context_receipt, work_record_memory, or work_record_execution. No conditions, exclusions, or prerequisites are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

work_record_executionC

Atomically record route, observable execution and exact-head verification.

ParametersJSON Schema
NameRequiredDescriptionDefault
routeYes
outcomeYes
projectNo
verificationYes
invalidated_commitmentsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It does add a meaningful behavioral trait by saying the record is 'atomic' and involves 'exact-head verification,' which implies concurrency or consistency guarantees. However, it does not disclose side effects, failure behavior, permissions, or what happens when verification fails.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise, front-loaded sentence with no filler. It loses a point because the jargon 'exact-head verification' is not expanded, making the brevity slightly less helpful than it could be.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 5 parameters, 3 required nested objects, zero schema descriptions, and no annotations, this description is far too thin. It does not explain how to construct the nested objects, what 'exact-head verification' means, when the tool should be used, or what distinguishes it from the numerous sibling recording tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It loosely maps 'route' to route, 'observable execution' to outcome, and 'exact-head verification' to verification, but it gives no structural guidance for these nested objects with additionalProperties. The 'project' and 'invalidated_commitments' parameters are not addressed at all.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('record') and a specific resource ('route, observable execution and exact-head verification'), so an agent can tell roughly what the tool does. However, 'exact-head verification' is jargon and the description does not explicitly differentiate this from the many sibling record_* and work_record_* tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives like record_outcome, record_test_result, or work_record_context. There is no mention of prerequisites, exclusions, or conditions that would select this tool over its siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

work_record_memoryC

Attach provenance-bearing memory without trusting raw model prose.

ParametersJSON Schema
NameRequiredDescriptionDefault
memoryYes
now_msNo
projectNo
superseded_idsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of disclosing behavior. It indicates the memory is provenance-bearing and that raw model prose is not trusted, which is useful, but it does not disclose side effects, persistence semantics, whether existing memories are superseded, or any failure modes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single compact sentence with no fluff, and the core intent is front-loaded. However, it is too sparse to be 'appropriately sized' for a tool with four parameters and nested object input, so it earns only a middle score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with four parameters, a required nested object, no annotations, and no parameter documentation, this description is far from sufficient. An agent cannot reliably construct the memory payload or understand the roles of now_ms, project, and superseded_ids from the provided text.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description adds no parameter-level meaning. It does not explain what should go inside the 'memory' object, how 'now_ms' should be set, what 'project' represents, or how 'superseded_ids' behaves. The tool name and schema property names carry the only semantic weight.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('attach') with a clear resource ('memory') and a distinctive qualifier ('provenance-bearing'), so an agent can tell this is about persisting memory with provenance metadata. It does not explicitly distinguish itself from sibling tools like 'remember_fragment' or 'vault_write_belief', so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool versus alternatives, nor any exclusions or prerequisites. The phrase 'without trusting raw model prose' implies a preference for provenance-aware memory, but it does not state concrete conditions for selecting this tool over similar memory-writing siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

work_resumeC

Recover unfinished work and optionally seal a no-handoff proof.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectNo
to_agentNo
max_evidenceNo
workstream_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full behavioral burden. It discloses two behaviors, recovery and optional proof sealing, but does not explain side effects, whether state is mutated, what 'seal' entails, or any reversibility or permission concerns. This leaves the agent with only a vague sense of the tool's effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and front-loaded, which is good, but it is under-specified for a tool with four parameters and no annotations. The phrase 'optionally seal a no-handoff proof' is compressed to the point of obscurity, so conciseness comes at the cost of necessary clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with moderate complexity, multiple related siblings, no annotations, and zero parameter documentation, this description is incomplete. It lacks parameter semantics, usage context, and any explanation of the proof-sealing mechanism. The existence of an output schema helps with return values, but not with invocation decisions.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description adds no meaning for any of the four parameters (project, to_agent, max_evidence, workstream_id). The parameter names and defaults provide some hint, but the description itself does not explain their purpose, relationships, or expected formats, so it fails to compensate for the missing schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Recover unfinished work') and a secondary optional behavior ('seal a no-handoff proof'), so it is not a tautology and identifies a clear resource. However, 'no-handoff proof' is jargon and the description does not explicitly distinguish work_resume from sibling tools like work_handoff, resume_state, or work_state.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use this tool versus alternatives. The phrase 'Recover unfinished work' implies a recovery context, but there are no exclusions, no mention of when to prefer work_handoff or resume_state, and no conditions for when the optional proof sealing should be used.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

work_session_statusC

Report the automatic takeover performed when this server started.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden of behavioral disclosure. It suggests a read-only report, but does not clarify whether this action has side effects, requires a prior takeover state, or what 'automatic takeover' means operationally.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single focused sentence with no filler and front-loads the main purpose. It is concise, though it sacrifices necessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, but the description omits parameter semantics and usage context. While an output schema exists, that does not compensate for the unexplained 'project' parameter or the ambiguous 'automatic takeover' concept.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single 'project' parameter has schema description coverage of 0%, and the description does not mention it at all. An agent cannot determine what 'project' means, whether it filters output, or why it has an empty default.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Report') and names a concrete resource ('the automatic takeover performed when this server started'), making the tool's purpose reasonably clear. However, it does not differentiate from sibling tools like work_state or work_claim, and 'automatic takeover' is jargon that is not explained.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It does not mention scenarios, exclusions, or sibling tool distinctions, so an agent receives no contextual selection help.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

work_stateA

Inspect persisted shared work state without appending a polling event.

ParametersJSON Schema
NameRequiredDescriptionDefault
now_msNo
projectNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full behavioral burden. It does disclose the most important trait — that this operation inspects rather than mutates and deliberately avoids appending a polling event. However, it stops there: no mention of freshness guarantees, locking behavior, or failure modes. The key trait is disclosed but the behavioral picture is thin.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single 12-word sentence that front-loads the verb and resource, then adds the one behavioral caveat that matters. Every word earns its place; there is no filler or repetition of schema contents.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read tool with an output schema present, the description covers the core behavior. But it misses parameter semantics (now_ms and project are unexplained) and never names the counterpart tool for the polling-event case it distinguishes itself from. Adequate for a trivial tool, but with identifiable gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for unclear parameters — but it says nothing about now_ms or project. The names hint at meaning ('now in milliseconds', 'project'), yet the description never clarifies what a 0 default means for now_ms, whether project filters results, or how they interact. This is a genuine gap for a low-coverage tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Inspect') and resource ('persisted shared work state'), and adds a behavioral differentiator ('without appending a polling event') that sets it apart from state-mutating siblings like work_claim, work_resume, and work_handoff. An agent can immediately tell this is a side-effect-free read of shared state.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 'without appending a polling event' clause implies the appropriate use case: check state when you do NOT want to create a polling side effect. However, no alternative tool is named, and there is no explicit statement of when NOT to use it or which sibling to choose when a polling event IS acceptable. The guidance is implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 10 tool updatesv1.0.63
    • Addedcompress_image
    • Addedcompress_shell
    • Addedlearn_from_failures
    • Addedrecover_shell
    • Addedshared_memory_forget
    • Addedshared_memory_list
    • Addedshared_memory_search
    • Addedshared_memory_stats
    • Addedshared_memory_write
    • Addedsteer_output
  2. 12 tool updatesv1.0.62
    • Addedwork_acknowledge_recovery
    • Addedwork_claim
    • Addedwork_compile_context
    • Addedwork_context_fault
    • Addedwork_handoff
    • Addedwork_modifications
    • Addedwork_record_context
    • Addedwork_record_execution
    • Addedwork_record_memory
    • Addedwork_resume
    • Addedwork_session_status
    • Addedwork_state
  3. 1 tool updatev1.0.61
    • Changedsmart_read6 fields changed
      • addedInput schema / properties / fresh
        Added value: +{
        +  "default": false,
        +  "title": "Fresh",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / line_end
        Added value: +{
        +  "default": 0,
        +  "title": "Line End",
        +  "type": "integer"
        +}
      • addedInput schema / properties / line_start
        Added value: +{
        +  "default": 0,
        +  "title": "Line Start",
        +  "type": "integer"
        +}
      • addedInput schema / properties / previous_source
        Added value: +{
        +  "default": "",
        +  "title": "Previous Source",
        +  "type": "string"
        +}
      • addedInput schema / properties / read_scope
        Added value: +{
        +  "default": "",
        +  "title": "Read Scope",
        +  "type": "string"
        +}
      • addedInput schema / properties / resolution
        Added value: +{
        +  "default": "",
        +  "title": "Resolution",
        +  "type": "string"
        +}
  4. 26 tool updatesv1.0.55
    • Addedanalyze_codebase_health
    • Addedcompile_beliefs
    • Addedcreate_context_receipt
    • Addedcreate_context_receipt_from_path
    • Addedeicv_suppress_hallucinations
    • Addedentroly_dashboard
    • Addedentroly_retrieve
    • Addedexecute_flow
    • Addedexplain_context
    • Addedexplain_receipt_omission
    • Addedingest_diagram
    • Addedingest_diff
    • Addedingest_voice
    • Addedinspect_proof_guided_context
    • Addedmanage_skills
    • Addedoptimize_context
    • Addedprocess_change
    • Changedrecall_relevant1 field changed
      • addedInput schema / properties / full
        Added value: +{
        +  "default": false,
        +  "title": "Full",
        +  "type": "boolean"
        +}
    • Addedrecord_test_result
    • Addedrecover_receipt_omission
    • Addedremember_fragment
    • Addedrepo_file_map
    • Addedscan_for_vulnerabilities
    • Addedvault_status
    • Addedvault_time_travel
    • Addedverify_provenance
  5. 27 tool updatesv1.0.54
    • Removedanalyze_codebase_health
    • Removedcompile_beliefs
    • Addedcompile_docs
    • Removedcreate_context_receipt
    • Removedcreate_context_receipt_from_path
    • Removedentroly_dashboard
    • Removedentroly_retrieve
    • Addedepistemic_route
    • Removedexecute_flow
    • Removedexplain_context
    • Removedexplain_receipt_omission
    • Addedexport_training_data
    • Removedingest_diagram
    • Removedingest_diff
    • Removedoptimize_context
    • Addedprefetch_related
    • Removedprocess_change
    • Addedrecord_ci_result
    • Addedrecord_edit_outcome
    • Addedrecord_outcome
    • Removedrecord_test_result
    • Removedrecover_receipt_omission
    • Addedrefresh_beliefs
    • Addedsync_workspace_changes
    • Removedvault_status
    • Removedvault_time_travel
    • Addedverify_and_repair
  6. 22 tool updatesv1.0.54
    • Addedadvance_proof_guided_context
    • Removedcompile_docs
    • Removedeicv_suppress_hallucinations
    • Removedepistemic_route
    • Removedexport_training_data
    • Removedingest_voice
    • Removedmanage_skills
    • Removedprefetch_related
    • Addedprepare_proof_guided_context
    • Addedprepare_task_dream
    • Removedrecord_ci_result
    • Removedrecord_edit_outcome
    • Removedrecord_outcome
    • Removedrefresh_beliefs
    • Removedremember_fragment
    • Removedrepo_file_map
    • Removedscan_for_vulnerabilities
    • Removedsync_workspace_changes
    • Addedvault_hygiene_scan
    • Addedvault_time_travel
    • Removedverify_and_repair
    • Removedverify_provenance
  7. 2 tool updatesv1.0.47
    • Changedcheckpoint_state3 fields changed
      • addedInput schema / properties / decisions
        Added value: +{
        +  "anyOf": [
        +    {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Decisions"
        +}
      • addedInput schema / properties / modified_files
        Added value: +{
        +  "anyOf": [
        +    {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "title": "Modified Files"
        +}
      • addedInput schema / properties / project
        Added value: +{
        +  "default": "",
        +  "title": "Project",
        +  "type": "string"
        +}
    • Changedresume_state2 fields changed
      • addedInput schema / properties / project
        Added value: +{
        +  "default": "",
        +  "title": "Project",
        +  "type": "string"
        +}
      • addedInput schema / properties / query
        Added value: +{
        +  "default": "",
        +  "title": "Query",
        +  "type": "string"
        +}

TDQS

C2.8/5.0

Scored across 81 tools

Disambiguation2/5

With 81 tools there are several near-duplicate clusters: five record_* outcome tools, verification tools (verify_provenance, verify_and_repair, verify_response, eicv_verify_claim, eicv_suppress_hallucinations), and security tools (scan_for_vulnerabilities, security_scan, security_report) that overlap heavily. The twelve work_* tools and multiple context-receipt tools also blur boundaries, making misselection likely despite decent per-tool descriptions.

Naming Consistency3/5

Names are overwhelmingly snake_case verb_noun, but domain prefixes are inconsistent and some tools break the pattern (entroly_dashboard, entroly_retrieve, smart_read, optimize_context vs compress_shell). Groupings like shared_memory_*, vault_*, work_*, record_*, eicv_* coexist with standalone names, so it is readable but not fully predictable.

Tool Count1/5

81 tools is far beyond any reasonable scope for a single server and signals a kitchen-sink surface where many tools do not clearly earn their place. This places it firmly in the extreme-mismatch range and guarantees high cognitive load for tool selection.

Completeness4/5

Coverage across memory, vault/beliefs, verification, security, receipts, and work orchestration is very extensive with few obvious dead ends. Minor gaps exist (e.g., no direct belief update/delete outside ledger redaction, limited fragment update), but they are largely workable around.

Maintenance

ActivityActive
ResponsivenessWithin a week

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Provides intelligent code context and analysis through semantic compression, AST parsing, and multi-language support. Offers 60-80% token reduction while enabling AI assistants to understand codebases through local analysis, OpenAI-enhanced insights, and GitHub repository integration.
    6
    16 npm
    3
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides AI-powered code intelligence for any codebase using local LLMs and vector search, enabling semantic code search, pattern analysis, and context-optimized code generation with 90% token savings.
    2
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Token compression for AI contexts, reducing token consumption by compressing conversation exchanges before they enter the LLM context window.
    MIT