The Reasoning Engine — Auditable Reasoning for Production AI. A Rust-native system for structured reasoning with ThinkTools, vector memory infrastructure, and web automation capabilities.
ReasonKit provides 3 tools with complete JSON schemas and descriptions. All tools have proper input schemas with typed parameters and enums where appropriate. Naming follows verb_noun conventions (rk_reason, rk_retrieve, rk_verify). Descriptions are present and substantive (96-127 chars). However, output schemas are not documented, the JSON only shows input schemas. Error handling guidance is absent. Tool descriptions lack explicit guidance on when to use each tool vs alternatives, prerequisites, or dependencies. No per-parameter constraints documented (min/max for limit/threshold). Parameters like 'profile' enum is good, but 'context_files' lacks format/validation hints. Overall composition is sound, each tool has a single responsibility and verb-driven naming is consistent.
Execute a structured reasoning chain on a query
Semantic search across the ReasonKit Knowledge Base
Verify a claim using the Triangulation Protocol
Output schemas not documented. The JSON schema file shows input schemas only. LLMs cannot plan downstream tool calls or extract the right fields without knowing what each tool returns.
No error handling guidance. Tool descriptions do not explain what happens on failure, whether errors are retryable, or what the LLM should do next (e.g., 'If claim verification fails, try rk_retrieve with a different query').
Parameter constraints incomplete. 'limit' (default 5) and 'threshold' (default 0.7) lack documented min/max ranges. 'context_files' is an array but has no guidance on file format, size limits, or whether paths are relative/absolute.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | C | 63 | <=2025-11-25 | v2 |
| 2026-03-09 | C | 64 | - | v1 |
Tool differentiation unclear. All three tools relate to reasoning/verification, but descriptions do not explain when to prefer rk_reason + rk_verify vs rk_retrieve alone, or how they compose.
Parameter descriptions are minimal. E.g., 'profile' enum has description 'The depth and rigor of the reasoning process' but does not explain what each enum value (quick, balanced, deep, scientific, paranoid, decide) concretely changes, latency, cost, reasoning depth, output format?