Local-first memory for Codex with minimal relevant context to reduce token spend.
Server has 8 tools with explicit schemas and descriptions, but quality is inconsistent. Tool names follow verb_noun convention (search, remember, forget, stats, propose, write). Descriptions are present but brief (avg ~80 chars, below 194-char baseline). Schemas include types and descriptions for most parameters. However, critical gaps: no output schemas documented, no error handling guidance, no pagination support for search results, no parameter constraints (enums), and destructive operations (forget, write_skill) lack confirmation patterns. STDIO transport caps protocol readiness at 50.
Delete a memory entry by its ID.
Propose a new skill draft based on memory search results and provided parameters.
Store a durable memory entry with optional metadata, kind, scope, and source information.
Store a structured task summary with goal, outcome, decisions, rules learned, and other metadata.
Search local memory with a query string, optionally scoped to a working directory.
Search across chat history and memory entries to find relevant cross-chat context.
Get statistics about the memory database including total entries and breakdown by kind.
No output schemas documented. LLMs cannot infer what fields search_memory returns or how to chain results to downstream tools. Violates pattern:tool requirement for documented return types.
Destructive operations (hermes_codex_forget, hermes_codex_write_skill with overwrite=true) lack confirmation or dry-run patterns. Agents can delete memory or overwrite skills without safeguards.
Search tools (hermes_codex_search, hermes_codex_search_chats) accept 'limit' parameter but no pagination (offset/cursor) or total count. Large result sets will blow context window without pagination support.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | <=2025-11-25 | v2 |
Write a skill draft to the filesystem at the specified skills root directory.
No error handling guidance in tool descriptions. Errors return raw exceptions without recovery hints. LLMs cannot determine if errors are retryable or user-fixable.
Parameter 'kind' in hermes_codex_remember and 'scope' lack enum constraints. Free-form strings invite hallucinated values. Should declare valid kinds and scopes as enums.