An agent-based development platform with MCP server integration, skill management, and tool execution capabilities for Android and backend systems
PhoneCode exposes 7 tools with mixed quality. Task, extension_read, extension_write, read, write, edit, and external_directory all have descriptions and visible schemas. However, naming lacks verb-noun clarity (extension_read/extension_write are vague; read/write/edit are generic). Parameter descriptions are present but sparse. Output schemas are not documented. Error handling exists but lacks recovery guidance. The codebase shows proper JSON Schema construction (buildJsonObject patterns in TaskTool.kt), but descriptions are brief (avg ~100 chars) and several parameters lack actionable constraints. No tool annotations (readOnlyHint, destructiveHint) despite clear mutating/read-only semantics.
Replace exact text in a file. Each oldText must appear exactly once and must not overlap another edit in the same call.
Inspect PhoneCode MCP servers and global or project skills without exposing saved header values.
Add, update, disable, or remove an MCP server, or write and remove bounded global or project skill files. MCP servers must be tested and enabled in Settings.
Read a file or list a directory at an ABSOLUTE path outside the workspace. Requires an absolute path and asks the user for permission on every call. Use only when the user points you at a specific external file or folder; prefer the workspace file tools otherwise.
Read a UTF-8 text file from the workspace. Returns numbered lines; use offset/limit for large files.
Launch a subagent to autonomously handle a focused, well-scoped subtask (e.g. research a question, or carry out a contained change) and return its final result. The subagent has your file tools but cannot launch further subagents. Prefer this for self-contained work you can delegate; do simple steps yourself.
Generic tool names lack action verbs. 'read', 'write', 'edit', 'extension_read', 'extension_write' do not clearly signal intent. Should be 'read_file', 'write_file', 'edit_file', 'list_mcp_servers', 'configure_mcp_server'.
Output schemas not documented. Tools return ToolResult objects but LLMs cannot see what fields are in the result. Agents cannot plan downstream calls or extract structured data.
No tool annotations despite clear semantics. 'read', 'external_directory' are read-only; 'write', 'edit', 'extension_write' are destructive. Missing readOnlyHint and destructiveHint annotations.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | 2026-07-28+ | v2 |
Create or overwrite a UTF-8 text file in the workspace.
Parameter descriptions are minimal. 'action' enum in extension_read/extension_write lacks explanation of what each action does. 'scope' parameter not explained (global vs project scope).
Error handling returns ToolResult with isError=true but no recovery guidance. 'task: missing prompt' tells LLM nothing about what to do next. No categorization of retryable vs fatal errors.