Multi-agent platform with MCP server integration, supporting various communication channels (Discord, Slack, Telegram, Signal, Lark, WeChat, WhatsApp), agent execution, file operations, web access, memory management, and scheduling.
OpenHermit exposes 32 tools with basic naming and minimal descriptions. Tool names follow verb_noun convention (memory_get, file_write, etc.), which is good. However, descriptions are extremely terse (10-50 chars), providing almost no context for LLM selection. Parameters lack type information in visible schemas, only parameter names and brief descriptions are shown. No output schemas documented. Error handling guidance absent. Security concerns: file_read/file_write/file_delete expose filesystem operations without path validation hints; exec tool allows arbitrary code execution with minimal safeguards described. Memory and session tools lack idempotency guarantees. Overall, definitions are skeletal, suitable for internal use but insufficient for production agent deployment.
Create an approval request
List all approval requests
List all attachments
Upload an attachment
Read and extract content from documents
Execute code in a sandboxed environment
Delete a file from the workspace
List files in a directory
Read a file from the workspace
Descriptions are critically sparse (10-50 chars). LLMs cannot distinguish between memory_get vs memory_recall, or understand when to call each. Descriptions must be 50-200 chars explaining WHAT, WHEN, and WHY.
No input schemas visible in source. Parameter types (string, number, object) are not declared. Cannot verify if parameters are required, have constraints (enums, min/max), or defaults. Schema score capped at 20 for all tools.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | 2026-07-28+ | v2 |
Write content to a file in the workspace
Retrieve message history from the current session
Get the current agent's identity
Retrieve instructions from the instruction store
List all available instructions
Add a new memory entry to the agent's memory provider
Delete a memory entry from the agent's memory provider
Retrieve memory entries from the agent's memory provider
Recall memory entries from the agent's memory provider
Update an existing memory entry in the agent's memory provider
Retrieve a policy
List all policies
Create a scheduled task
Delete a scheduled task
List all scheduled tasks
Update the description of the current session
Retrieve session information
List all sessions
Retrieve user information
List all users
Fetch content from a web URL
Search the web for information
Update the agent's working memory for the current session
No output schemas documented. LLMs cannot plan downstream tool calls or extract required fields (e.g., does memory_get return an ID for memory_update?). All tools lack return type documentation.
Destructive tools (file_delete, memory_delete, schedule_delete) lack confirmation/dry-run patterns. No error guidance for recovery. Agents cannot safely retry or undo failures.
exec tool allows arbitrary code execution with minimal safeguards described. No mention of sandboxing, timeout, resource limits, or what languages are supported. Security risk for unvetted agents.