Skip to main content
Glama

Kilo-Kit

The Autonomous Cognitive Cortex & Governed Agency Substrate for AI Coding Agents

Kilo-Kit is an enterprise-grade Model Context Protocol (MCP) server and supervisor engine that transforms raw LLM coding assistants (GitHub Copilot, Cursor, Windsurf, Claude Code, Gemini CLI) into disciplined, self-correcting software engineers. It enforces grounded diagnostic probing, Tree-of-Thoughts DAG planning, cross-session memory via SQLite FTS5 BM25, and runtime supervisor guardrails to eliminate blind code edits and infinite loop thrashing.

Quick Start (30s) • Why Kilo-Kit? • Architecture • IDE Setup • Core Capabilities • Tools Reference • Skills Catalog


💡 Why Kilo-Kit?

The Crisis of Unbounded AI Agency

Modern LLMs are exceptional code generators, but when given autonomous tools without structural guardrails, they suffer from critical operational failure modes:

  • Blind Mutations (Ungrounded Edits): Agents modify files without reading their contents, dependencies, or type contracts, introducing silent architectural regressions.

  • The Infinite Thrashing Loop: When a test or build fails, the agent repeats the exact same failing edit 5 to 10 times in a row until credits or context windows are exhausted.

  • Context Collapse & Lost-in-the-Middle: Unbounded test dumps and terminal traces inject 50,000+ tokens of raw noise, causing severe attention degradation and hallucinated refactoring.

  • Agent Amnesia: Every new session starts from zero—past mistakes, verified bug fixes, and architectural decisions are completely forgotten across conversations.

The Solution: Governed Autonomy

Kilo-Kit acts as an intelligent supervisor sitting between the AI agent and your codebase, establishing a balance of Macro-Determinism (strict safety boundaries) with Micro-Agency (unconstrained local implementation freedom):

  • 🛡️ Pre-Flight Grounding Lock: File modifications are physically rejected at the protocol level if the agent has not inspected the target file during the active session.

  • 🛑 Circuit Breaker Tripwire: Automatically halts execution after 3 consecutive identical actions or repeated failures, forcing structured root-cause analysis.

  • ✂️ Smart Truncation (20/80 Rule): Retains critical command flags, dynamically scans and preserves intermediate exceptions (FAIL, TypeError, panic), and keeps final stack traces while streaming raw verbose output safely to disk.

  • 🧠 Persistent BM25 Memory: Every architectural decision, verified solution, and reflection is indexed in embedded SQLite FTS5 for sub-millisecond retrieval across future sessions.


Related MCP server: lnwjud

⚡ Quick Start (in 30 seconds)

1. Zero-Install Instant Setup

Run Kilo-Kit directly with npx to automatically detect and configure all installed IDEs on your machine:

npx @vodailocz/kilo-kit-mcp setup

Or install globally for zero-latency local execution:

npm install -g @vodailocz/kilo-kit-mcp
kilo-kit-setup --local

2. Verify System Health

Run the 18-point empirical diagnostic suite:

kilo-kit-doctor
🏥 Kilo-Kit System Health Doctor [HEALTHY]
  ✅ PASS Node.js Runtime: Node.js meets requirement (>= 20.0.0).
  ✅ PASS CLI Global Binaries: All CLI binaries resolved in PATH.
  ✅ PASS SQLite Persistence: SQLite verified (14 tables, FTS5 BM25 active, integrity: ok).
  ✅ PASS Skill Library: Successfully indexed all 180/180 skills in repository.
  ✅ PASS Client: GitHub Copilot: Configured in ~/.copilot/mcp-config.json [Local linked binary]
  ✅ PASS Client: Cursor IDE: Configured in ~/.cursor/mcp.json [Local linked binary]
  ✅ PASS Client: Claude Code: Configured in ~/.claude.json [Local linked binary]
  ✅ PASS MCP Server Runtime: All 24 tools registered; functional probe executed successfully.

Summary: Kilo-Kit Doctor: 18/18 checks passed. Overall Status: HEALTHY

🏛️ Architecture & C4 Protocol

Kilo-Kit establishes a strict separation of concerns between Cognitive Reasoning (Cortex), Supervisor Guardrails (Sentinel), and Safe I/O Execution (Limbs):

[ Host AI Agent: Cursor / Copilot / Windsurf / Claude / Gemini ]
                               │
                       stdio / JSON-RPC
                               ▼
    ┌────────────────────────────────────────────────────────────┐
    │            KILO-SENTINEL SUPERVISOR MIDDLEWARE             │
    │  • Pre-Flight Grounding Lock    • Loop & Thrashing Tripwire│
    │  • 20/80 Smart Log Truncation   • Step Budget Enforcer     │
    └──────────────────────────┬─────────────────────────────────┘
                               │
            ┌──────────────────┴──────────────────┐
            ▼                                     ▼
    ┌─────────────────────────────┐   ┌──────────────────────────┐
    │    KILO COGNITIVE CORTEX    │   │      SAFE EXECUTION      │
    │  • 4-Tier Adaptive Gating   │   │  • Atomic File Writers   │
    │  • Tree-of-Thoughts DAG     │   │  • AST-Safe File Editors │
    │  • 5-Whys Diagnostic Engine │   │  • Filtered Command Exec │
    │  • 180 Curated Skills       │   └──────────────────────────┘
    └──────────────┬──────────────┘
                   ▼
    ┌─────────────────────────────┐
    │    SQLITE ATOMIC MEMORY     │
    │  • FTS5 BM25 Search Engine  │
    │  • Self-Authoring Skills    │
    │  • Cross-Session Knowledge  │
    └─────────────────────────────┘

The C4 5-Gate Lifecycle

Every non-trivial coding task proceeds through a verifiable state machine:

flowchart LR
    G1["<b>Gate 1: Grounded Probe</b><br/>• BM25 Memory Recall<br/>• Exploratory Read"]
    
    G2["<b>Gate 2: Cognitive Reasoning</b><br/>• 3-Option ToT DAG<br/>• Adversarial Grill<br/>• 5-Whys Root Cause"]
    
    G3["<b>Gate 3: Approval</b><br/>• Plan Locked<br/>• Skills Injected"]
    
    G4["<b>Gate 4: Execution</b><br/>• Defense-in-Depth<br/>• Sentinel Guarded"]
    
    G5["<b>Gate 5: 4D QA</b><br/>• Empirical Tests<br/>• SQLite Reflection"]

    G1 --> G2
    G2 --> G3
    G3 --> G4
    G4 --> G5
    G4 -.->|3x Loop Detected| Breaker["🛑 Circuit Breaker<br/>(Supervised Reset)"]
    Breaker -.-> G1
  1. Gate 1 (Grounded Probe): Recalls relevant past lessons via BM25 ranking and performs read-only codebase reconnaissance.

  2. Gate 2 (Cognitive Reasoning): Formulates a 3-option trade-off hypothesis DAG (kilo_think_step) and conducts adversarial stress-testing (kilo_grill_plan).

  3. Gate 3 (Approval & Skills): Locks the implementation plan and injects domain-specific expert workflows (kilo_get_skill).

  4. Gate 4 (Guarded Execution): Performs surgical code edits backed by atomic writes and syntax validation.

  5. Gate 5 (Empirical QA & Reflection): Validates changes with automated test runners and Playwright before persisting lessons into SQLite memory.


💻 IDE Integration Guide

Kilo-Kit integrates natively into any MCP-compliant editor or CLI agent.

Client

Configuration Path

Command Configuration

Cursor IDE

~/.cursor/mcp.json

{"mcpServers": {"kilo-kit": {"command": "kilo-kit-mcp"}}}

GitHub Copilot

~/.copilot/mcp-config.json

{"mcpServers": {"kilo-kit": {"command": "kilo-kit-mcp"}}}

Claude Code & Desktop

~/.claude.json

{"mcpServers": {"kilo-kit": {"command": "kilo-kit-mcp"}}}

Windsurf IDE

~/.codeium/windsurf/mcp_config.json

{"mcpServers": {"kilo-kit": {"command": "kilo-kit-mcp"}}}

Google Antigravity & Gemini CLI

~/.gemini/antigravity-cli/mcp_config.json

{"mcpServers": {"kilo-kit": {"command": "kilo-kit-mcp"}}}

OpenCode

~/.config/opencode/opencode.jsonc

{"mcp": {"kilo-kit": {"type": "local", "command": ["kilo-kit-mcp"]}}}


⚡ Core Capabilities

1. 🚦 4-Tier Adaptive Task Gating

Replaces rigid one-size-fits-all rituals with task-calibrated execution paths:

  • Tier 0 (Inspect): Read-only exploration, file searches, regex grep. Immediately ready with zero gate friction.

  • Tier 1 (Micro-fix): Single-line bug fixes, typo corrections, linter remediations. Fast-path authorization with lightweight validation.

  • Tier 2 (Feature): Multistage feature implementation and refactoring. Requires Tree-of-Thoughts DAG planning and skill injection.

  • Tier 3 (Critical): Database migrations, auth workflows, cross-cutting architectural changes. Enforces adversarial red-team grilling and human-in-the-loop checkpoints.

2. 🔍 SQLite FTS5 with BM25 Lexical Ranking

Persistent memory engineered for instant recall:

  • Sub-millisecond full-text retrieval across thousands of past trajectories, decisions, and reflections.

  • Native BM25 relevance ranking surfaces verified past bug fixes before planning starts.

  • Prevents agents from repeating mistakes made in previous sessions or branches.

3. ✍️ Self-Authoring Skills & Autonomous Evolution

Turns every hard-won bug fix into persistent institutional knowledge:

  • Upon resolving complex edge cases, Gate 5 reflections automatically synthesize reusable SKILL.md instruction files.

  • New skills are dynamically indexed and discoverable across all connected agents via kilo_get_skill.

4. 🛡️ Kilo-Sentinel Loop & Thrashing Tripwire

Real-time supervisor middleware that protects developer credits and context:

  • Blocks file modifications on unread files (enforces grounding).

  • Detects repeated identical tool calls and edit thrashing, cutting off execution before runaway token burns occur.

  • Offloads complete execution transcripts to disk while enforcing concise, information-dense summaries.


🧰 MCP Tools Suite (24 Tools)

Kilo-Kit provides a comprehensive, battery-included suite of cognitive and execution tools:

Group

Tool

Description

Orchestration & Memory

kilo_orchestrate_task

Enforces C4 lifecycle gates and 4-tier task classification.

kilo_route_intent

Routes intent to optimal workflow chains and task modes.

kilo_get_skill

Loads curated SKILL.md workflows with fuzzy alias resolution.

kilo_search_skills

High-precision keyword and semantic search across 180 skills.

kilo_memory_report

Inspects stored SQLite facts, reflections, and session state.

kilo_remember_fact

Pins immutable architectural guidelines and ADRs into SQLite.

kilo_record_reflection

Persists session lessons and indexes successes into BM25.

kilo_validate_skills

Audits skill catalog for schema and structure conformance.

Cognitive Reasoning

kilo_think_step

Tree-of-Thoughts DAG reasoning with 3-option trade-off matrix.

kilo_grill_plan

Adversarial Red-Team stress testing (inversion & simplification).

kilo_trace_root_cause

5-Whys diagnostic engine with recursive causal back-propagation.

kilo_triangulate_research

Grounded synthesis combining memory, GitHub context, and DAGs.

kilo_compact_context

Compresses conversation state by 40-70% while locking invariants.

kilo_synthesize_skill

Distills complex resolved patterns into new reusable skills.

Supervisor & Sentinel

kilo_sentinel_status

Inspects circuit breaker state, grounded files, and step budget.

kilo_reset_circuit_breaker

Resets tripped circuit breaker with mandatory causal explanation.

kilo_benchmark_solution

Audits solution trajectory against established industry patterns.

Safe Execution Limbs

kilo_read_file

Safe reading with line slicing, size capping, and boundary checks.

kilo_write_file

Atomic write protected by Grounding Lock, code smell & secret checks.

kilo_edit_file

AST-aware target replacement with bracket & syntax validation.

kilo_run_command

Guarded command execution with security filters and 20/80 truncation.

kilo_search_files

High-speed glob pattern searching across workspaces.

kilo_grep_code

Line-by-line regex and pattern matching across repositories.

kilo_route_report

Telemetry report on routing confidence, skill selection, and weights.


📚 Curated Skills Catalog (180 Skills)

Domain-specific expert engineering workflows bundled directly into the engine:

  • engineering/ (39 skills): Clean code standards, backend APIs, Next.js App Router, React patterns, Tailwind CSS v4, Better-Auth, ASP.NET Core, database schema design.

  • problem-solving/ (24 skills): Systematic debugging, 5-Whys root cause tracing, collision-zone thinking, inversion exercise, scale game, simplification cascades.

  • productivity/ (33 skills): Spec-driven development, TDD workflows, peer code review, plan writing, verification before completion, subagent delegation.

  • agent-frameworks/ (26 skills): Agent memory, agentic RAG, multi-agent orchestration, context optimization, workflow state machines, MCP agent patterns.

  • security/ (22 skills): AI guardrails, OWASP vulnerability scanner, red-team tactics, defense-in-depth validation, secret scanning.

  • devops-cloud/ (36 skills): Cloudflare edge deployment, Docker containers, server management, performance profiling, Playwright automated testing.

Fuzzy Alias Support: Calling kilo_get_skill("tdd"), kilo_get_skill("clean-code"), or kilo_get_skill("debugging") automatically resolves to the canonical skill path without requiring directory prefixes.


📊 Empirical Verification & Quality Benchmarks

Metric

Vanilla Agent (Prompt Only)

With Kilo-Kit

Enforcement Mechanism

Silent Chained Tool Calls

65% of turns (empty text)

0% (100% Narrated)

Inter-Tool Narration Badge & Guard

Ungrounded Blind Edits

42% of sessions

0% (100% Blocked)

Pre-Flight Grounding Lock

Infinite Thrashing Loops

Frequent on hard test failures

Terminated at 3 repeats

Kilo-Sentinel Circuit Breaker

Token Longevity

Degrades at >30k tokens

Sustained >150k tokens

Smart 20/80 Truncation & Compaction

Cross-Session Memory

0% (Total amnesia)

Sub-ms BM25 Recall

SQLite FTS5 Lexical Ranking Engine

Verification Rigor

Self-declared "everything works"

100% Empirical Tests

Native Test Runner & Playwright Gate


🧪 Development & Testing

# Clone repository
git clone https://github.com/VoDaiLocz/KILO-KIT.git
cd KILO-KIT

# Build TypeScript package
npm --prefix mcp install
npm --prefix mcp run build

# Link globally for local testing
npm link

# Run complete Vitest suite (16 files, 77 tests)
npm --prefix mcp test

# Run full 18-point system diagnostics
kilo-kit-doctor

# Validate all 180 skills against YAML schema standards
node src/tools/validate-skill.js --all skills

📄 License

Distributed under the Apache 2.0 License. See LICENSE for details.

Available Tools

24 tools
kilo_benchmark_solutionBenchmark Solution Against Industry & GitHubB
Read-only

Audit the current session trajectory against open-source GitHub standards and industry best practices. Returns alignment score or triggers re-planning.

NameRequiredDescriptionDefault
formatNomarkdown
sessionIdYesActive Kilo-Kit session ID
proposedApproachYesThe approach, architecture, or code produced in this session
decision_narrationNoMANDATORY INTER-TOOL NARRATION: State what you just concluded, verified, or analyzed before calling this tool. Appears in terminal tool badge for full user observability.
industryBestPracticeYesStandard pattern, library, or algorithm used by top GitHub repos
next_action_narrationNoMANDATORY: State what this tool will execute and what immediate action follows.

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=false. The description adds one behavioral detail beyond that: the tool may 'trigger re-planning,' which is a side effect worth knowing. It does not explain what triggers re-planning or how the alignment score is computed.

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, front-loaded with the action and scope. No filler, though it is terse to the point of omitting usage context.

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?

With no output schema, the description's mention of an 'alignment score' is the only clue about return values, and the re-planning trigger is left unexplained. For an audit tool with six parameters, this is minimally adequate but leaves gaps.

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 83%, so the schema already documents sessionId, proposedApproach, industryBestPractice, and the two narration params. The description adds no parameter-level meaning (e.g., expected format of industryBestPractice), so the baseline 3 applies.

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: 'Audit the current session trajectory against open-source GitHub standards and industry best practices.' An agent can tell it apart from siblings like kilo_grill_plan or kilo_validate_skills, though no sibling is named 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?

No explicit when-to-use, prerequisites, or alternatives are given. 'Returns alignment score or triggers re-planning' hints at the outcome but does not tell the agent when this tool is preferred over kilo_grill_plan or kilo_trace_root_cause.

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

kilo_compact_contextCognitive Context CompactorA
Read-onlyIdempotent

Compacts verbose logs, test dumps, and noisy output by 40-70% while preserving architectural invariants.

NameRequiredDescriptionDefault
formatNomarkdown
contentYesVerbose content to compact
sessionIdNoActive session ID to register context compaction
targetReductionNoCompaction aggressiveness
preserveInvariantsNoKey invariant rules or phrases to lock

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), so the bar is lower. The description adds meaningful behavioral traits beyond annotations: the 40-70% reduction magnitude and invariant preservation. It omits session registration side effects and the mechanics of preserveInvariants/targetReduction, keeping it short of a 5.

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 the verb first and zero wasted words. Efficient and immediately scannable.

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 5-parameter tool with no output schema, the description carries the burden of describing the return value and the role of sessionId, format, and targetReduction levels. None of this is addressed, so an agent cannot know what the tool returns or how session registration behaves.

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 80%, so the baseline is 3. The description alludes to invariants and reduction (loosely mapping to preserveInvariants and targetReduction) but adds no syntax or semantics for format, sessionId, or how the preservation list is applied. It does not meaningfully compensate beyond the 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 gives a specific verb ('Compacts') and resource (verbose logs, test dumps, noisy output) and even quantifies the effect (40-70%). It is clearly the only compaction tool among siblings like kilo_remember_fact and kilo_grep_code, though it does not explicitly name a sibling it differs from.

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 by naming the input types (verbose logs, test dumps, noisy output), so an agent can infer when it applies. However, there is no explicit when-to-use vs alternatives guidance and no exclusions or prerequisites (e.g., session requirements).

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

kilo_edit_fileEdit File (Kilo-Kit Hard-Gated)A
Destructive

Perform exact targeted search-and-replace edit on an existing file with AST check. PROTOCOL HARD-GATE: Requires valid sessionId in 'ready' state.

NameRequiredDescriptionDefault
fileNoAlias for filePath
pathNoAlias for filePath
formatNomarkdown
filePathNoRelative or absolute path to file
sessionIdYesActive Kilo-Kit session ID (must be in ready state)
allowMultipleNoAllow multiple replacements
targetContentYesExact content substring to replace
decision_narrationNoMANDATORY INTER-TOOL NARRATION: State what you just concluded, verified, or analyzed before calling this tool. Appears in terminal tool badge for full user observability.
replacementContentYesReplacement content
next_action_narrationNoMANDATORY: State what this tool will execute and what immediate action follows.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=false, so the description's job is lighter. It adds valuable context by disclosing the AST-check behavior and a hard-gate protocol requirement that isn't captured by annotations, which helps an agent understand preconditions and verification.

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 tightly focused sentences with no filler, and the critical gate condition is front-loaded in capitals. It is appropriately sized for a simple edit tool, though the all-caps gate phrasing is slightly stylized.

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?

No output schema exists, so the description need not explain return values. It covers the core operation, the AST check, and the session gate, which is sufficient for a 10-parameter but structurally simple tool. Minor gaps around replacement failure behavior remain but are not critical.

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 90%, so the schema already documents most parameters (targetContent, replacementContent, sessionId, aliases, narration fields). The description does not add parameter-level detail beyond what the schema provides, so baseline 3 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?

States a precise verb and resource ('exact targeted search-and-replace edit on an existing file') plus the AST verification mechanism. This clearly distinguishes it from siblings like kilo_write_file (whole-file writes) and kilo_read_file.

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 hard-gate condition (valid sessionId in 'ready' state) implies when the tool can be used, but there is no explicit guidance on when to prefer this edit tool over kilo_write_file or other editing alternatives. Usage is implied rather than stated.

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

kilo_get_skillLoad Kilo-Kit SkillB
Read-onlyIdempotent

Load a Kilo-Kit skill by name or category/skill. Supports fuzzy aliases (e.g. 'brainstorming', 'diagnose', 'playwright', 'tdd', 'productivity/brainstorming').

NameRequiredDescriptionDefault
skillYesSkill name or identifier (e.g. 'brainstorming', 'diagnose', 'playwright', 'productivity/brainstorming').
formatNomarkdown
categoryNoOptional skill category, for example engineering or productivity.
maxCharsNoMaximum SKILL.md characters to return.
sessionIdNoActive session ID to register skill delivery

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already carry the safety profile (readOnlyHint=true, idempotentHint=true, destructiveHint=false), so the burden is lighter. The description adds one useful behavioral trait, fuzzy alias matching, but omits the sessionId side effect of registering skill delivery and does not say what happens when a skill name does not resolve. Adequate with annotations, but thin on the delivery mechanics.

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 the alias capability immediately after; nothing is padded. The parenthetical alias list is somewhat redundant with the schema examples for the skill parameter, which keeps it from a 5.

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 5-parameter tool with no output schema, the description should say more about what comes back. It never mentions the markdown/json format choice, whether output is truncated by maxChars, or the failure mode for an unknown skill, so an agent cannot predict the response shape from the description alone.

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 80%, so the schema already documents skill, category, maxChars, and sessionId. The description's alias examples duplicate the examples already present in the skill parameter's schema description, and it says nothing about the format enum or maxChars truncation behavior. Baseline 3 is correct.

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 ('Load a Kilo-Kit skill') with the retrieval keys ('by name or category/skill'), so the agent knows exactly what the tool returns a skill, not metadata about one. It stops short of explicitly distinguishing itself from the sibling kilo_search_skills, leaving the retrieval-vs-discovery boundary 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?

The description gives alias examples but no when-to-use guidance: it never says when to load a skill directly versus searching first with kilo_search_skills, nor whether a search is a prerequisite when the exact name is unknown. There are no exclusions or preconditions stated.

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

kilo_grep_codeGrep Code (Kilo-Kit)B
Read-onlyIdempotent

Search code snippets and matching lines across workspace files.

NameRequiredDescriptionDefault
queryNoSearch string or regex pattern
formatNomarkdown
searchNoAlias for query
isRegexNoWhether query is regex
patternNoAlias for query
rootDirNoSubdirectory or workspace path to limit search
sessionIdNoActive session ID from kilo_orchestrate_task.
maxResultsNoMax matches to return
caseSensitiveNoCase-sensitive match

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered by structured data. The description adds only a modest amount of context, conveying that results are line-level matches across the workspace, but says nothing about result caps, truncation, or the interaction with session state.

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?

It is a single front-loaded sentence with no redundancy or filler. It is arguably too terse for a 9-parameter tool, but nothing in it is wasted.

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 9 parameters, zero required fields, three interchangeable aliases, a format switch, an undocumented sessionId dependency, and no output schema, the description is far too thin. An agent is left unsure which alias to use, whether a query is effectively mandatory, or how sessionId affects the call.

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 89%, so the schema already documents nearly every parameter, including the three aliases query/search/pattern. The description adds no extra parameter meaning (no regex syntax, no scope semantics for rootDir), so the baseline of 3 applies.

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 (search) and resource (code snippets / matching lines across workspace files), so the agent knows this is a content search rather than a filename search. However, it does not explicitly contrast itself with the sibling kilo_search_files, leaving the distinction between the two 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 or when-not-to-use guidance, and no mention of alternatives such as kilo_search_files or kilo_read_file. The agent must guess whether to grep content directly or first locate files by name.

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

kilo_grill_planRed-Team Plan GrillingC
Read-onlyIdempotent

Automated adversarial stress-testing against Inversion, Simplification Cascades, Blast Radius, and Edge-cases.

NameRequiredDescriptionDefault
planYesThe proposed architecture, implementation plan, or bugfix strategy
depthNoGrilling depth
labelNoREQUIRED for observability: Describe WHAT plan you are grilling, e.g. 'Phản biện phương án IndexedDB + Dexie cho Bookmark feature'. Displayed in terminal so users monitor agent reasoning.
formatNomarkdown
contextNoRelevant file paths, tech stack, or system constraints
sessionIdNoActive session ID to register cognitive gate satisfaction
decision_narrationNoMANDATORY INTER-TOOL NARRATION: State what you just concluded, verified, or analyzed before calling this tool. Appears in terminal tool badge for full user observability.
next_action_narrationNoMANDATORY: State what this tool will execute and what immediate action follows.

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered. The description adds that the analysis is automated and framed around four specific adversarial lenses, which is genuine behavioral context, but it omits whether this registers a cognitive gate, how the sessionId interacts, or what the response contains.

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 key concept front-loaded and no padding. It is compact, though the density of unexplained proper-noun lenses makes the concision partly cosmetic.

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 an 8-parameter tool with only one required field and no output schema, the description is thin: it does not explain the return shape, the effect of depth levels, or how sessionId/decision_narration integrate with the broader workflow. Annotations and the rich schema cover safety and inputs, so the gaps are moderate rather than severe.

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 88%, so the schema already documents plan, depth, label, context, sessionId and the narration fields. The description adds nothing about any parameter — notably the depth enum and the mandatory narration/label requirements are left entirely to the schema. Baseline 3 applies.

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 verb phrase 'adversarial stress-testing' plus the named lenses (Inversion, Simplification Cascades, Blast Radius, Edge-cases) gestures at red-teaming a plan, but the description never explicitly states that the input is a plan or what the output is. No sibling is named or contrasted, and the four lenses are unexplained jargon an agent cannot act on directly.

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 statement of when to call this versus e.g. kilo_trace_root_cause, kilo_benchmark_solution, or kilo_think_step, nor any exclusion or prerequisite. The 'depth' param (quick/deep/hardcore) implies graduated use but the description never routes the agent.

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

kilo_memory_reportKilo-Kit C4 Memory ReportB
Read-onlyIdempotent

Read global C4 memory facts, decisions, and recent suggestions.

NameRequiredDescriptionDefault
formatNomarkdown

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description usefully says what is read (facts, decisions, suggestions) and that scope is global, but says nothing about size limits, pagination, or recency windows for 'recent suggestions'.

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 appropriately sized but arguably too sparse for the tool's scope.

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 idempotent read tool with one optional parameter and no output schema, the description covers the high-level content reasonably. However it omits the format parameter entirely and gives no sense of the return shape (facts vs decisions vs suggestions structure).

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 is one optional parameter (format, enum markdown/json, default markdown). The description never mentions the output format option, so it does not compensate for the schema 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 clear verb (Read) and a specific resource (global C4 memory facts, decisions, recent suggestions). It distinguishes itself reasonably from the sibling kilo_remember_fact (which writes), though it doesn't explicitly name that split.

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 indication of when to use this versus siblings like kilo_search_skills, kilo_record_reflection, or kilo_compact_context. The agent must infer usage purely from the resource named.

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

kilo_orchestrate_taskKilo-Kit C4 Orchestrate TaskA
Read-only

MANDATORY: Call this tool FIRST before diagnosing, debugging, analyzing, creating, or modifying any code, UI, backend, or project files. Determines task mode, selects required workflow skills, enforces brainstorming gating, and orchestrates the execution flow.

NameRequiredDescriptionDefault
taskNoAlias for message.
formatNomarkdown
promptNoAlias for message.
answersNo
contextNo
messageNoCurrent user request or task summary.
sessionIdNo
decision_narrationNoMANDATORY INTER-TOOL NARRATION: State what you just concluded, verified, or analyzed before calling this tool. Appears in terminal tool badge for full user observability.
memoryConfirmationsNo
brainstormingApprovedNo
next_action_narrationNoMANDATORY: State what this tool will execute and what immediate action follows.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations declare readOnlyHint=true and destructiveHint=false, so safety is already covered. The description adds genuinely useful behavior (mode determination, skill selection, brainstorming gating) but never clarifies what the tool returns, that it persists session state (idempotentHint=false with a sessionId param implies this), or what happens when gating blocks execution.

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 sentences, front-loaded with the MANDATORY directive, and the capability list is packed into a single clause with no filler. Slightly dense but nothing is wasted.

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 an 11-parameter orchestrator with a nested context object, optional-but-load-bearing flags, no output schema, and 45% schema coverage, the description leaves too much unexplained. An agent cannot tell from this text how to populate brainstormingApproved/answers or what the orchestration step returns.

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?

Coverage is only 45% across 11 parameters with a nested context object, and the description contributes zero parameter meaning. Key inputs like brainstormingApproved, memoryConfirmations, sessionId and the mode/files/previousErrors context sub-fields get no explanation in either place, so the agent must guess at gating semantics.

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?

States a specific verb and resource ('orchestrate task') plus the concrete outputs it produces: determines task mode, selects workflow skills, enforces brainstorming gating. The mandatory-first framing makes it trivially distinguishable from siblings like kilo_route_intent or kilo_think_step, which do narrower routing/thinking work.

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?

Explicit about when to use it: 'Call this tool FIRST before diagnosing, debugging, analyzing, creating, or modifying any code, UI, backend, or project files.' That is a clear gating condition with enumerated trigger situations. It stops short of naming when NOT to call it or which sibling takes over for already-routed follow-up work.

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

kilo_read_fileRead File (Kilo-Kit Safe Workspace I/O)B
Read-onlyIdempotent

Read file content safely across workspace boundaries (supports line ranges and byte capping up to 512KB).

NameRequiredDescriptionDefault
fileNoAlias for filePath
pathNoAlias for filePath
formatNomarkdown
endLineNoEnding line number (1-indexed)
filePathNoPath to file (supports relative path, absolute path, and '~')
maxBytesNoMax bytes to return (default: 512KB)
sessionIdNoActive session ID from kilo_orchestrate_task.
startLineNoStarting line number (1-indexed)

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds useful detail beyond annotations (line-range support, 512KB byte cap, workspace-boundary safety), but does not clarify what 'safely across workspace boundaries' enforces or how it behaves on missing/oversized files.

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 leads with the core action and appends the key constraints. Nothing is wasted, though the parenthetical could be tightened.

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?

With annotations covering safety and 88% schema coverage plus no output schema, the description is mostly adequate. However, with 8 parameters including three overlapping path aliases and a sessionId, the description leaves the alias/selection ambiguity and error behavior unexplained.

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 high (88%), so the schema already documents parameters well. The description echoes line ranges (startLine/endLine) and byte capping (maxBytes) but adds no format or default details beyond the schema, and importantly does not clarify the file/path/filePath alias ambiguity.

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 (Read) and resource (file content) with scope qualifier ('across workspace boundaries'). It is clear what the tool does, though it does not explicitly distinguish itself from siblings like kilo_search_files or kilo_grep_code.

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 guidance, no articulation of when to prefer this over kilo_search_files, kilo_grep_code, or the write/edit siblings, and no mention of prerequisites such as sessionId requirements. Usage is only vaguely implied by the word 'Read'.

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

kilo_record_reflectionRecord Learning Reflection & Self-ImprovementB

Record correct approaches, wrong paths/pitfalls encountered, skill ratings, and lessons learned into SQLite to drive Kilo-Kit's continuous self-improvement across sessions.

NameRequiredDescriptionDefault
formatNomarkdown
taskModeYesTask mode (e.g. 'bug', 'architecture', 'ui', 'feature-build').
sessionIdNoOptional session ID.
taskSummaryYesSummary of the problem solved.
lessonsLearnedYesKey invariant or takeaway for future tasks.
correctApproachYesThe successful strategy, fix, or architectural pattern used.
skillsEvaluatedNoRatings and feedback for specific skills used.
autoSynthesizeSkillNoHermes-inspired: If true, automatically synthesize this reflection into a reusable SKILL.md in skills/learned/
wrongPathsEncounteredYesMistakes, wrong assumptions, or pitfalls encountered.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, idempotentHint=false, destructiveHint=false, and the description is consistent with them (it records/writes). It adds that data lands in SQLite and persists across sessions, which is useful, but says nothing about overwrite behavior, duplicate handling, or side effects of autoSynthesizeSkill writing a SKILL.md.

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 packs purpose, content, storage, and rationale with no wasted clauses. Efficient, though the dense enumeration slightly burdens readability.

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 9-parameter mutation tool with no output schema, the description covers intent and content categories but omits when to invoke it versus siblings, what autoSynthesizeSkill actually produces, and whether repeated calls create duplicates. Adequate but with clear gaps.

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 89%, so the schema already explains nearly every field. The description enumerates the same categories (approaches, wrong paths, ratings, lessons) without adding format, relationship, or edge-case guidance (e.g., how skillsEvaluated interacts with autoSynthesizeSkill). Baseline 3 applies.

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?

Specific verb (Record) plus a clear set of resources (correct approaches, wrong paths, skill ratings, lessons learned) and a storage target (SQLite). It doesn't explicitly distinguish itself from sibling tools like kilo_remember_fact or kilo_synthesize_skill, which is what keeps it from 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 Guidelines3/5

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

The phrase 'across sessions' and 'continuous self-improvement' imply when the tool matters, but there is no explicit when-to-use, no when-not-to-use, and no mention of how it relates to kilo_remember_fact or kilo_synthesize_skill. 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.

kilo_remember_factRemember Architecture & Policy FactA
Idempotent

Explicitly persist a project operating rule, workflow default, or verification standard into SQLite memory_facts for cross-session enforcement.

NameRequiredDescriptionDefault
keyYesUnique fact identifier, e.g. 'preference:testing:vitest' or 'rule:architecture:dexie'.
kindYesFact classification kind.
valueYesFact payload data, e.g. { commands: ['npm test'] } or { library: 'dexie' }.
formatNomarkdown
sourceNoSource of fact (e.g. 'user-instruction', 'architecture-decision').
confidenceNoConfidence score between 0.0 and 1.0 (default 1.0).

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, and destructiveHint=false. The description adds context that facts persist 'into SQLite memory_facts' and are used for 'cross-session enforcement,' which is useful. However, it doesn't disclose overwrite behavior for existing keys, upsert mechanics, or any rate/permission concerns—gaps that matter for a mutation 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?

A single, front-loaded sentence with no filler. It efficiently communicates purpose, storage location, and persistence scope 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?

For a mutation tool with 6 parameters (3 required), nested objects, and no output schema, the description is adequate but thin. It doesn't explain the fact lifecycle (e.g., does re-persisting the same key replace or merge?), nor the relationship to sibling memory tools, leaving some ambiguity for correct invocation.

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 83%, so the schema already documents most parameters well, including examples for key, kind, value, and confidence. The description doesn't add parameter-level detail beyond what the schema provides. Baseline 3 is appropriate when the schema carries the load.

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+resource ('persist a project operating rule, workflow default, or verification standard') and names the storage target ('SQLite memory_facts') along with the effect ('cross-session enforcement'). This is clearly distinguishable from siblings like kilo_record_reflection or kilo_memory_report, though it doesn't explicitly name how it differs from 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 implies usage through 'Explicitly persist' and 'cross-session enforcement,' suggesting this is for durable facts. However, it offers no explicit when-to-use vs when-not guidance, no mention of alternatives (e.g., why not kilo_record_reflection), and no prerequisites.

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

kilo_reset_circuit_breakerReset Circuit Breaker (Supervised)A
Destructive

Reset an open Circuit Breaker with justification and root-cause evidence. Transitions breaker to HALF_OPEN.

NameRequiredDescriptionDefault
formatNomarkdown
sessionIdYesActive Kilo-Kit session ID
justificationYesDetailed justification and root cause explanation for reset

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true, and idempotentHint=false, so the agent knows this mutates state. The description adds the meaningful target state (HALF_OPEN), which is not derivable from annotations or schema. However, it does not describe consequences of a bad reset, permission/supervision requirements, or what happens after HALF_OPEN.

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, no filler, with the action and its outcome front-loaded. Every clause earns its place.

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?

No output schema exists, yet the description supplies the resulting state so the agent knows what the call produces. For a 3-param mutation tool the coverage is nearly sufficient, with only post-reset behavior and supervision requirements left unstated.

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 67% and the two required parameters are documented in the schema. The description echoes the 'justification' and 'root-cause evidence' requirement but adds no format, syntax, or length guidance beyond the schema's minLength=10 and never mentions sessionId or format. Baseline 3 for partially covered params.

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?

Specific verb (reset) plus resource (open Circuit Breaker) and an explicit resulting state (HALF_OPEN). It distinguishes itself from siblings like kilo_sentinel_status or kilo_trace_root_cause without needing the schema.

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 the trigger condition ('an open Circuit Breaker') and that evidence is required, but never states when not to use it, what prerequisites must hold, or which sibling to consult first. Usage is implied rather than spelled out.

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

kilo_route_intentRoute Current Intent to SkillsB
Read-onlyIdempotent

Recommend the best Kilo-Kit skills for any user request, bug fix, feature, UI task, or coding issue. Call before selecting or executing a workflow skill.

NameRequiredDescriptionDefault
limitNo
formatNomarkdown
contextNo
messageYesCurrent user request or task summary.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile needs no restating. The description adds the sequencing behavior (call before workflow selection), which is genuinely useful, but says nothing about the shape of the recommendation, whether it is cached/deterministic, or what the caller receives back.

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 no filler, front-loaded with the core action and followed by the calling condition. Efficient, though the second sentence could be folded in without loss.

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?

With no output schema, the description carries some burden for explaining returns, and it only implies a ranked skill recommendation without detail. Combined with three undocumented parameters and a nested object, the definition is adequate but leaves real gaps for an agent invoking 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 only 25% and there are 4 parameters including a nested context object. The description implies the request text goes into the message parameter but never explains limit, format, or any of the context sub-fields (mode, files, previousErrors), so it fails to compensate for the coverage 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 (Recommend) and resource (Kilo-Kit skills), plus enumerates the triggering inputs (bug fix, feature, UI task, coding issue). It is clear what the tool produces, though it never names or contrasts itself with the close sibling kilo_search_skills, so the distinction for an agent is inferential.

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?

Gives explicit timing guidance: 'Call before selecting or executing a workflow skill,' which is strong sequencing context. It does not, however, mention when NOT to call it or name an alternative (e.g., kilo_search_skills for direct lookup), so the routing decision against siblings is left implicit.

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

kilo_route_reportKilo-Kit Route ReportB
Read-onlyIdempotent

Summarize route telemetry: top skills, task modes, workflow chains, score averages, and conflict penalties.

NameRequiredDescriptionDefault
formatNomarkdown

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is fully covered by structured data. The description adds only the list of aggregated metrics and says nothing about whether telemetry must exist first, how stale the data is, or whether the summary is scoped to a session or the whole history.

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?

One front-loaded sentence that names the action first and then the payload contents. No filler, no restatement of the tool name, nothing wasted.

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 parameterless read-only aggregation report with no output schema, the description's enumeration of what gets summarized is sufficient for an agent to decide whether to call it. Missing only marginal context such as the scope/period of the telemetry being summarized.

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%, but the sole parameter is a self-documenting format enum (markdown|json) with a default. The description never mentions the format option, so it adds nothing beyond the schema; a baseline 3 is appropriate given how trivial the parameter is.

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 (Summarize) and resource (route telemetry), and enumerates the report contents: top skills, task modes, workflow chains, score averages, conflict penalties. It is distinguishable from kilo_memory_report by the 'route' domain, though the description never names that sibling explicitly to reinforce the boundary.

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 statement of when to use this report versus kilo_memory_report, kilo_sentinel_status, or the other reporting/telemetry siblings. The agent must infer that this is the post-routing analytics view from the word 'route' alone; there are no triggers, prerequisites, or exclusions.

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

kilo_run_commandRun Command (Kilo-Kit Hard-Gated)A
Destructive

MANDATORY: Execute a terminal command with security guardrails and timeout. Use this INSTEAD OF native Bash/terminal tools. PROTOCOL HARD-GATE: Requires valid sessionId in 'ready' state.

NameRequiredDescriptionDefault
cwdNoWorking directory relative to repoRoot
formatNomarkdown
commandYesTerminal command to run
sessionIdYesActive Kilo-Kit session ID (must be in ready state)
timeoutMsNoTimeout in milliseconds
decision_narrationNoMANDATORY INTER-TOOL NARRATION: State what you just concluded, verified, or analyzed before calling this tool. Appears in terminal tool badge for full user observability.
next_action_narrationNoMANDATORY: State what this tool will execute and what immediate action follows.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the mutation profile is known. The description adds meaningful context beyond that: a session hard-gate, security guardrails, and a timeout. It does not explain what the guardrails block or the failure/return format, keeping it short of a 5.

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?

Three tightly-packed sentences with the mandatory execution action front-loaded and the gating requirement last. Efficient, though the heavy capitalization adds noise rather than substance.

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 7-parameter destructive command tool with no output schema, the description covers the key gating and safety framing. Return format and guardrail behavior are left implicit, but the annotations and schema fill most remaining gaps.

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 86%, so parameters like cwd, timeoutMs, and the narration fields are already documented in the schema. The description adds no parameter-level detail, which is the expected baseline when the schema does the heavy lifting.

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?

States a specific verb and resource ('Execute a terminal command') and immediately routes the agent away from alternatives ('Use this INSTEAD OF native Bash/terminal tools'). An agent can identify this as the sanctioned command-execution path without opening the schema.

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?

Gives a clear use directive (prefer over native Bash/terminal) and a hard precondition ('Requires valid sessionId in ready state'). Lacks explicit when-not conditions or failure guidance, but the routing context is clear.

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

kilo_search_filesSearch Files (Kilo-Kit)B
Read-onlyIdempotent

Search for files matching a pattern, substring, or glob across the workspace.

NameRequiredDescriptionDefault
globNoAlias for pattern
queryNoAlias for pattern
formatNomarkdown
patternNoGlob pattern or file search substring (e.g. '*.ts', '**/*.json', 'story')
rootDirNoSubdirectory or workspace path to limit search
sessionIdNoActive session ID from kilo_orchestrate_task.
maxResultsNoMaximum file matches

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare read-only, idempotent, non-destructive behavior. The description adds only that the search spans the workspace, which is modest additional scope context, but it does not disclose rate limits, return behavior, or other operational traits beyond what annotations already cover.

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 sentence with no redundant wording. The core action is front-loaded and easily scanned, earning its place fully.

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 7-parameter, non-destructive search tool with 86% schema coverage and no output schema, the description is minimally adequate. However, it omits usage routing against siblings, does not mention the format parameter’s output implications, and gives no guidance on sessionId or search scope beyond 'workspace'.

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 86%, so the schema itself documents nearly all parameters well. The description adds the idea of pattern/substring/glob matching, which is already captured in the schema, but does not explain aliases like glob/query or sessionId, so it neither helps nor harms much beyond the baseline.

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: search for files by pattern, substring, or glob. It is clear what the tool does but does not distinguish itself from sibling search tools such as kilo_grep_code, leaving the agent to infer that this searches file paths/names rather than file contents.

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 explicit when-to-use guidance, no when-not-to-use guidance, and no alternatives. It does not mention when to prefer kilo_search_files over kilo_grep_code or kilo_search_skills, so the agent gets only an implied usage.

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

kilo_search_skillsSearch Kilo-Kit SkillsA
Read-onlyIdempotent

Search the Kilo-Kit skill library by natural-language query. Use this for broad discovery before loading a specific skill.

NameRequiredDescriptionDefault
limitNoMaximum number of skills to return.
queryYesNatural-language task or keyword query.
formatNomarkdown
categoryNoOptional category such as engineering or design.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds only a workflow positioning ('before loading a specific skill') and says nothing about result shape, ranking, or pagination behavior beyond the schema's limit.

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, zero waste, and the core action is front-loaded ahead of the usage hint.

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?

With no output schema, the description could usefully hint at what a search returns (ranked matches, snippets, IDs needed for kilo_get_skill) but does not. For a low-complexity search tool it is adequate but leaves that gap.

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 75% and the description adds no parameter detail beyond restating the query modality. The only undocumented-in-schema param (format) has an enum and default, so the schema carries the load; baseline 3 is appropriate.

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 (search) and resource (Kilo-Kit skill library) with the query modality (natural-language). The phrase 'before loading a specific skill' implicitly separates it from kilo_get_skill, though it never names the sibling.

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 says to use it for 'broad discovery before loading a specific skill,' which gives a clear when-to-use and implies the alternative (kilo_get_skill). No explicit when-not condition, 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.

kilo_sentinel_statusKilo-Sentinel Supervisor StatusB
Read-onlyIdempotent

Inspect real-time Sentinel supervisor telemetry: Circuit breaker state, step budget, failure streaks, and grounded files list.

NameRequiredDescriptionDefault
formatNomarkdown
sessionIdYesActive Kilo-Kit session ID

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is fully covered. The description adds the notion of real-time telemetry and names the observable fields, which is useful context, but says nothing about freshness, staleness, permission requirements, or what happens for an inactive session.

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 dense sentence with the resource front-loaded and the four observable fields listed in order. No filler, no restatement of the title.

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?

With no output schema, the enumeration of returned telemetry partially stands in for a return-value contract, which is valuable. However, it omits the format parameter's effect on output shape and the relationship to the circuit-breaker reset sibling, leaving gaps for a diagnostic tool in a 24-tool cluster.

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 coverage is only 50%: sessionId is documented as 'Active Kilo-Kit session ID', but the format parameter (enum markdown/json, default markdown) has no description anywhere. The description never mentions either parameter or the output format choice, so it fails to compensate for the coverage 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 ('Inspect') and resource ('Sentinel supervisor telemetry') and enumerates the concrete payload: circuit breaker state, step budget, failure streaks, grounded files list. That is far more specific than the title. It does not, however, differentiate itself from the closely related sibling kilo_reset_circuit_breaker, which touches the same circuit-breaker concept.

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 says what can be inspected but never says when to call this tool, what triggers it, or which sibling to use instead (e.g., kilo_reset_circuit_breaker when the breaker is tripped). 'Real-time' hints at diagnostic use but nothing is explicit.

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

kilo_synthesize_skillSynthesize Self-Evolving SkillA
Destructive

Distill a newly solved architectural pattern or bugfix methodology into a reusable, validated SKILL.md.

NameRequiredDescriptionDefault
formatNomarkdown
categoryNoTarget skill category (defaults to 'learned')
keywordsNoKeywords for discovery
skillNameYesName of the skill to synthesize
solutionPatternYesProven solution pattern and code guidelines
problemDescriptionYesDescription of the problem solved
verificationGuidanceYesVerification and testing steps

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false, and idempotentHint=false, so the agent knows this is a mutating, non-idempotent operation. The description adds that the output is 'reusable, validated,' but never explains what gets created/overwritten, whether it persists to disk, or what 'validated' implies. It neither contradicts the annotations nor richly extends them.

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 waste. The purpose and intended input are conveyed immediately without redundancy.

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 destructive, non-idempotent tool with no output schema, the description doesn't cover critical context such as what the synthesized SKILL.md contains, where it is stored, or whether synthesis requires a prior solve. The schema is well-documented, but behavioral completeness falls short.

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 86%, so the schema already documents the 7 parameters well, including enums and formats. The description contributes no additional parameter-level detail (e.g., how format affects output, keyword conventions), so baseline 3 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?

States a specific verb (distill/synthesize) and resource (SKILL.md, self-evolving skill), and names the trigger condition (a newly solved architectural pattern or bugfix methodology). It is clearly distinguishable from siblings like kilo_get_skill and kilo_search_skills, which read rather than create skills.

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 'newly solved' implies the timing (after solving a problem), which gives some usage context, but no explicit when-not-to-use or alternative tool is named. It does not tell the agent to prefer this over kilo_record_reflection or kilo_remember_fact for capturing learnings.

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

kilo_think_stepSequential Thinking & BranchingB
Read-only

Iterative step-by-step reasoning engine with hypothesis tracking, revision, and solution branching.

NameRequiredDescriptionDefault
labelNoREQUIRED for observability: Describe WHAT you are analyzing, e.g. 'So sánh 3 phương án: LocalStorage vs IndexedDB vs Supabase'. This appears in terminal tool call display so users can monitor agent thinking.
formatNomarkdown
thoughtYesCurrent reasoning thought
branchIdNoIdentifier for this reasoning branch
sessionIdNoOptional session ID
hypothesisNoExplicit hypothesis being tested
isRevisionNoWhether this thought revises an earlier thought
thoughtNumberYesCurrent thought step index
totalThoughtsYesEstimated total thought steps
revisesThoughtNoWhich thought index is being revised
branchFromThoughtNoThought index to branch from
nextThoughtNeededYesWhether more reasoning steps are needed
decision_narrationNoMANDATORY INTER-TOOL NARRATION: State what you just concluded, verified, or analyzed before calling this tool. Appears in terminal tool badge for full user observability.
next_action_narrationNoMANDATORY: State what this tool will execute and what immediate action follows.

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already establish readOnlyHint=true, destructiveHint=false, so the safety profile is covered. The description adds that thoughts can be revised and branched, which is a real behavioral trait, but it does not disclose the stateful workflow (that thoughtNumber/totalThoughts drive continuity) or what the tool returns. Moderate added value over annotations.

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 filler; the core capability set leads. It is efficient, though for a 14-parameter, branch/revision-capable tool one more sentence of workflow framing would have earned its place.

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 complex iterative tool with 14 parameters, branching and revision semantics, and no output schema, one sentence is thin. It does not explain how to drive the loop (advancing thoughtNumber, ending with nextThoughtNeeded=false) or how branches interleave with sequential steps, so an agent must reconstruct the protocol from the schema alone.

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 93%, so the schema already documents all 14 parameters, including the mandatory label and narration fields. The description's mention of hypothesis/revision/branching is effectively a restatement of schema fields (hypothesis, isRevision, branchId) rather than adding syntax or sequencing meaning. Baseline 3 is appropriate when the schema does the heavy lifting.

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 the resource (a reasoning engine) and its distinguishing capabilities: iteration, hypothesis tracking, revision, and branching. It is clear what the tool is for, but it offers no differentiation from nearby reasoning-oriented siblings such as kilo_grill_plan or kilo_trace_root_cause.

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 guidance: nothing says to call this before planning, to drive multi-step analysis, or when to prefer it over kilo_grill_plan or kilo_trace_root_cause. The agent is left to infer the trigger condition from the tool name alone.

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

kilo_trace_root_cause5-Whys Root Cause TracerB
Read-onlyIdempotent

Recursive causal backward-propagation analysis from crash log to the underlying systemic root cause.

NameRequiredDescriptionDefault
labelNoREQUIRED for observability: Name the bug you are tracing, e.g. 'Truy vết lỗi TypeError: Cannot read property sessionId'. Displayed in terminal so users see what error is being diagnosed.
formatNomarkdown
errorLogYesRaw error message, stack trace, or failing test output
sessionIdNoActive session ID to register cognitive gate satisfaction
failingFileNoFile where failure occurred
actualBehaviorNoActual behavior
expectedBehaviorNoExpected behavior
decision_narrationNoMANDATORY INTER-TOOL NARRATION: State what you just concluded, verified, or analyzed before calling this tool. Appears in terminal tool badge for full user observability.
next_action_narrationNoMANDATORY: State what this tool will execute and what immediate action follows.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered structurally. The description adds only that the analysis is recursive and causal; it says nothing about depth limits, output shape, latency, or what the trace produces, so added value beyond annotations is modest.

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 filler, and the essential concept (crash log -> systemic root cause) is stated first. Slightly dense terminology costs it the top mark.

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?

With 9 parameters, no output schema, and no explanation of the 5-Whys output or the mandatory narration gates, the description leaves an agent with only a one-line concept. It is not misleading, but for a tool with this parameter surface it under-delivers.

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 89%, so the schema already documents nearly every parameter (label, errorLog, sessionId, narrations, etc.). The description contributes no parameter-level guidance at all; it neither clarifies the optional fields nor the enum format. Baseline 3 applies when the schema carries the burden.

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 analysis verb ('backward-propagation analysis') and target ('crash log to underlying systemic root cause'), which cleanly separates it from sibling reasoning tools like kilo_grill_plan and kilo_triangulate_research. It is jargon-heavy ('recursive causal backward-propagation') but the resource and outcome are 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?

The crash-log-to-root-cause framing implies when it applies (debugging a specific failure), but there is no explicit when-to-use, when-not-to-use, or routing statement relative to the many siblings that also reason about problems. 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.

kilo_triangulate_researchGrounded Cognitive Triangulation & Low-Confidence EscalatorB

Execute Triangulated Cognitive Synthesis: Combines Internal SQLite Memory, External GitHub Grounding, 3-Option ToT DAG Trade-Offs, and Low-Confidence Research Escalation. Persists reasoning atomically into SQLite before code modification.

NameRequiredDescriptionDefault
formatNomarkdown
sessionIdYesActive Kilo-Kit session ID
dagOptionsYesAt least 2 (ideally 3) competing architectural options to compare
chosenOptionYesThe selected option name with rationale
confidenceScoreYesConfidence score between 0.0 and 1.0 (if < 0.70, triggers research escalation)
taskDescriptionYesThe architectural decision, feature spec, or bug to analyze
researchFindingsNoSynthesized findings from research subagent if research escalation was triggered
decision_narrationNoMANDATORY INTER-TOOL NARRATION: State what you just concluded, verified, or analyzed before calling this tool. Appears in terminal tool badge for full user observability.
adversarialRiskScoreNoAdversarial risk score from red-team grilling
internalMemoryLearnedNoKey facts, reflections, or past pitfalls retrieved from SQLite
next_action_narrationNoMANDATORY: State what this tool will execute and what immediate action follows.
externalGroundingPatternsNoStandard patterns, official docs, or 10k+ stars GitHub implementations
requiresResearchEscalationNoExplicitly request deep subagent research fallback

TDQS

B3.1/5.0
Behavior3/5

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

Annotations declare readOnlyHint=false, idempotentHint=false, destructiveHint=false. The description adds useful context beyond that: reasoning is persisted atomically into SQLite and this occurs before code modification, which signals a stateful write with sequencing constraints. It stops short of saying what gets written, whether repeat calls duplicate state, or what the escalation does in practice.

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?

Two sentences, front-loaded with the action verb, so it is compact. However, the second sentence is packed with opaque capitalized jargon ('Grounded Cognitive Triangulation', 'Triangulated Cognitive Synthesis') that consumes space without adding precision.

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 13-parameter, non-idempotent write tool with no output schema, the description covers the high-level purpose and the persistence behavior but omits usage routing and expected outcomes. The rich schema compensates for parameter detail, but the agent still lacks guidance on when this tool should be invoked versus its siblings.

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 92%, so the schema already documents nearly every parameter including the confidenceScore escalation threshold and the narration params. The description adds no parameter-level detail beyond what the schema provides, so baseline 3 is appropriate.

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 concrete verb ('Execute Triangulated Cognitive Synthesis') and enumerates the distinct operations it combines (SQLite memory, GitHub grounding, ToT DAG trade-offs, research escalation) plus its persistence step. An agent can grasp what the tool does, though the jargon-heavy phrasing and lack of differentiation from siblings like kilo_think_step or kilo_grill_plan keeps it from 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?

The description never states when to choose this tool over alternatives such as kilo_think_step, kilo_grill_plan, or kilo_benchmark_solution. The routing logic (confidenceScore < 0.70 triggers escalation) lives only in the schema, not in the description, and no prerequisites or exclusion conditions are given.

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

kilo_validate_skillsValidate Kilo-Kit SkillsC
Read-onlyIdempotent

Run the Kilo-Kit skill validator and return a concise quality-gate summary. This is read-only and does not modify files.

NameRequiredDescriptionDefault
formatNomarkdown

TDQS

C2.8/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so 'read-only and does not modify files' largely restates structured data. The only added value is the vague hint that it returns a 'quality-gate summary', with no detail on what that contains.

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 short sentences, front-loaded with the action and followed by the safety note. No wasted text, though the tiny size also reflects thin content rather than tight editing.

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-only tool with no output schema, the description establishes purpose and safety but omits what 'skills' are being validated (all of them? a target?), what the quality-gate summary includes, and the meaning of the format parameter. Adequate but with clear 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?

The sole parameter 'format' (enum markdown/json) has 0% schema description coverage, so the description carries the full burden of explaining it — yet it never mentions output format at all. An agent cannot learn from the description what the format option controls.

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 ('Run the Kilo-Kit skill validator') plus the nature of the output ('concise quality-gate summary'). This clearly distinguishes it from siblings like kilo_synthesize_skill or kilo_search_skills, though it does not name those siblings 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?

The description says what the tool is but never states when to invoke it or how it relates to alternatives such as kilo_synthesize_skill or kilo_get_skill. Usage must be inferred entirely by the agent.

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

kilo_write_fileWrite File (Kilo-Kit Hard-Gated)A
Destructive

Create a new file or overwrite an existing file. PROTOCOL HARD-GATE: Requires valid sessionId in 'ready' state.

NameRequiredDescriptionDefault
fileNoAlias for filePath
pathNoAlias for filePath
formatNomarkdown
contentYesComplete file content to write
filePathNoRelative or absolute path to file
overwriteNoAllow overwriting existing files
sessionIdYesActive Kilo-Kit session ID (must be in ready state)
decision_narrationNoMANDATORY INTER-TOOL NARRATION: State what you just concluded, verified, or analyzed before calling this tool. Appears in terminal tool badge for full user observability.
next_action_narrationNoMANDATORY: State what this tool will execute and what immediate action follows.

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false and idempotentHint=false. Beyond that, the description adds a real behavioral constraint not in structured form: the session must be valid and in 'ready' state before the call will succeed. It omits overwrite semantics for existing files, keeping it out of 5 territory.

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, front-loaded with the action and followed by the gating condition; every word earns its place. It is not quite maximally structured since the gate could be phrased with the exact consequence if unmet.

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 9-parameter destructive write tool with no output schema, the safety-relevant gate is disclosed and annotations cover the rest of the risk profile. The aliased path parameters and the two mandatory narration fields are left entirely to the schema, which is acceptable at this coverage but leaves a small gap.

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 high (89%), so the schema already carries the parameter burden and the baseline of 3 applies. The description reinforces the sessionId gate but adds no detail on the filePath/file/path aliases or the mandatory narration 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?

States a specific verb+resource pair ('Create a new file or overwrite an existing file'), so the agent knows exactly what it does. It does not distinguish itself from the sibling kilo_edit_file, which is the main ambiguity for file-writing tools, 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 Guidelines3/5

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

The 'PROTOCOL HARD-GATE' line implies a usage prerequisite (sessionId in 'ready' state), which is useful context. However, it never says when to pick this over kilo_edit_file or kilo_read_file, and gives no when-not guidance, so usage is only implied.

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. 1 tool updatev1.9.1
    • Changedkilo_record_reflection1 field changed
      • addedInput schema / properties / autoSynthesizeSkill
        Added value: +{
        +  "description": "Hermes-inspired: If true, automatically synthesize this reflection into a reusable SKILL.md in skills/learned/",
        +  "type": "boolean"
        +}
  2. 24 tool updatesv0.1.0
    • First observedkilo_benchmark_solution
    • First observedkilo_compact_context
    • First observedkilo_edit_file
    • First observedkilo_get_skill
    • First observedkilo_grep_code
    • First observedkilo_grill_plan
    • First observedkilo_memory_report
    • First observedkilo_orchestrate_task
    • First observedkilo_read_file
    • First observedkilo_record_reflection
    • First observedkilo_remember_fact
    • First observedkilo_reset_circuit_breaker
    • First observedkilo_route_intent
    • First observedkilo_route_report
    • First observedkilo_run_command
    • First observedkilo_search_files
    • First observedkilo_search_skills
    • First observedkilo_sentinel_status
    • First observedkilo_synthesize_skill
    • First observedkilo_think_step
    • First observedkilo_trace_root_cause
    • First observedkilo_triangulate_research
    • First observedkilo_validate_skills
    • First observedkilo_write_file

TDQS

B3.3/5.0

Scored across 24 tools

Disambiguation3/5

Several clusters overlap: kilo_orchestrate_task and kilo_route_intent both select/recommend skills, kilo_search_skills vs kilo_get_skill is a discovery-vs-load split that's easy to confuse, and the reasoning family (kilo_think_step, kilo_triangulate_research, kilo_trace_root_cause, kilo_grill_plan, kilo_benchmark_solution) has fuzzy boundaries. Descriptions do help distinguish file ops and memory tools, but an agent could misselect among the reasoning/routing tools.

Naming Consistency5/5

All 24 tools use a consistent kilo_ prefix followed by a verb_noun pattern (read_file, write_file, route_intent, record_reflection, reset_circuit_breaker). No camelCase or style mixing, and noun suffixes are predictable.

Tool Count3/5

24 tools is heavy for a single server and pushes into the 16-25 'feels heavy' band. While the kit genuinely spans distinct areas (files, memory, skills, reasoning, routing), several reasoning tools could plausibly be consolidated.

Completeness3/5

Coverage is broad—file CRUD, command execution, skill search/load/synthesize/validate, memory persistence, routing, and reasoning. However, kilo_write_file, kilo_edit_file, and kilo_run_command all require a valid sessionId in 'ready' state, yet no tool exists to create or open a session, creating a potential dead-end for agents.

Maintenance

ActivityActive
ResponsivenessResponsive

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    A cross-platform local AI-agent runtime and MCP gateway that exposes 279 tool definitions (267 advertised by default) for local files, Git, processes, Windows automation, WSL, browser control, Office semantic automation, and extensibility. It enables durable goal continuation, Engineering Harness workflows, context capsules, indexing, and resource-aware concurrent agent tasks through a single governed MCP connection.
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI assistants to research topics, map and analyze codebases across 35+ languages, curate project context, and generate PRDs, user stories, task lists, and fullstack starter projects. It also supports multi-step workflow execution and AI-native task management through a CLI, interactive REPL, or MCP client integration.
    19 npm
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI assistants to research topics, map and analyze codebases across 35+ languages, curate context, and generate requirements documents, user stories, task lists, and full-stack starter projects. It also supports multi-step workflow execution and AI-native task management through a CLI, interactive REPL, or MCP client integration.
    19 npm
    MIT