A private, local-first agentic kernel with built-in tools for document Q&A, memory management, calculations, and markdown writing. Exposes tools via MCP protocol and FastAPI.
Mixed quality across 12 tools. Strengths: all tools have descriptions (10 - 200 chars, within baseline); most parameters have type definitions and descriptions; tool names follow verb_noun convention (search_*, list_*, get_*, write_*). Weaknesses: several tools lack input schemas in visible code (calculate, write_markdown); no documented output schemas for any tool; no error handling guidance; no pagination support for list_documents; parameter descriptions are minimal (avg ~40 chars vs baseline 72); no enum constraints on free-form inputs; no idempotency or confirmation patterns for write operations (remember, write_markdown).
Evaluate an arithmetic/math expression exactly and offline, e.g. 'sqrt(3**2 + 4**2)'. Sandboxed: only pure math can execute.
Find duplicate files inside a folder by content hash. Reports groups of identical files and how much space the extra copies waste. Use for questions about duplicate or repeated files.
Get total, used and free disk space of the main volume in GB.
Measure the total size and file count of a specific folder, e.g. 'Downloads' or 'Documents/projects'. Use for questions about how big a folder or directory is (NOT for whole-disk free space).
Break down which files and subfolders use the most space inside a folder. Use for questions like 'what is taking up space in X?'
Get the current local date and time on this machine.
No input schemas visible for calculate and write_markdown tools. Code references llm_os/mcp_server.py and llm_os/config.py but schemas not shown.
No output schemas documented for any of the 12 tools. LLMs cannot plan downstream calls or extract required fields without knowing response structure. Baseline: 100% of A+ tools have documented return types.
Write operations (remember, write_markdown) lack confirmation or dry-run patterns. Agents can accidentally save incorrect facts or overwrite files without recovery guidance. No error handling describes what to do if write fails.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | 2026-07-28+ | v2 |
Get the operating system, architecture and Python version.
List the documents currently indexed and available to search.
Permanently save an important fact to local memory. Use this whenever the user asks you to remember something, or shares a durable fact about themselves or their work.
Search the user's own documents (contracts, specs, notes, reports) and return passages WITH citations. Use this whenever the question is about their files, or refers to 'my document', 'the contract', 'the spec', or anything the model could not otherwise know. Always cite the file in your answer.
Search long-term memory of past conversations and saved facts. Use when the user refers to something from a previous session.
Create a Markdown document in the LLM OS sandbox directory. Filename is the base name without extension.
list_documents has no pagination support (limit, offset, next_cursor). If user has hundreds of documents, response could exhaust context window. Baseline: tools returning lists should support pagination.
Parameter descriptions are minimal (avg ~40 chars vs baseline 72 chars). E.g., 'Folder path to measure' lacks guidance on format (absolute vs relative, home expansion, symlink handling). Descriptions should state expected format and constraints.