A collaborative AI bot daemon that manages sessions, skills, routines, memories, MCP servers, and workspace tools with multi-turn conversations and tool execution
Real Bot Daemon exposes 34 tools with basic naming and descriptions, but lacks rigor in schema definition and parameter documentation. Tool names follow verb_noun convention (send_message, create_bot, list_sessions), which is good. However, descriptions are minimal (10-50 chars typically), parameter schemas lack type constraints and validation guidance, and output schemas are not documented. No tool annotations (readOnlyHint, destructiveHint) despite clear risk levels. Error handling is absent, no recovery guidance or actionable error messages. Security concerns: shell tool accepts arbitrary commands with no sanitization guidance; API keys exposed as parameters (add_endpoint, update_endpoint). Composition is reasonable (tools are single-purpose), but many tools lack the context needed for LLM planning.
Add a new LLM endpoint
Add a new MCP server
Add a member to a group session
Ask the user a question
Create a new bot
Create a direct message session with another bot
Create a new group session
Create a new routine
API keys and secrets exposed as tool parameters (add_endpoint, update_endpoint, add_mcp_server). Credentials must use server-side injection via environment variables or vault, not parameter passing. Agent traces log all parameters, secrets leak into logs and prompt history.
shell tool accepts arbitrary commands with no input validation, sanitization, or injection guards. LLMs can be tricked into passing command injection payloads. Requires explicit sanitization guidance and path traversal prevention.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels. Tools marked DESTRUCTIVE (delete_routine, delete_skill, forget, delete_endpoint, delete_mcp_server, delete_file) lack confirmation/dry-run support. Agents cannot distinguish safe from dangerous operations.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 41 | 2026-07-28+ | v2 |
Create a new skill
Delete an LLM endpoint
Delete a file from the workspace
Delete an MCP server
Delete a routine
Delete a skill
Delete a memory entry
List all bots
List directory contents in the workspace
List all configured LLM endpoints
List all configured MCP servers
List all routines
List all sessions for the current bot
List all skills
Read a file from the workspace
Read a specific skill
Create a memory entry
Remove a member from a group session
Send a message to a session
Execute a shell command in the workspace
Update an existing LLM endpoint
Update an existing MCP server
Update bot profile information
Update an existing routine
Update an existing skill
Write a file to the workspace
Descriptions are minimal (10-50 chars) and lack context for LLM selection. Most tools have single-sentence descriptions without explaining WHEN to use them, WHAT they return, or dependencies. Baseline for A+ tools is 50-200 chars with clear intent guidance.
Output schemas not documented. LLMs cannot plan downstream tool calls or extract required fields (e.g., does list_bots return bot_id, bot_name, avatar?). Responses must include IDs and references needed for tool chaining.