An open-source agentic coding harness for building and studying AI coding agents
Two tools with basic schemas but significant quality gaps. count_lines has minimal description (11 chars, below 20-char threshold). append_file has good description (180 chars) and comprehensive parameter documentation, but count_lines lacks parameter descriptions entirely. No output schemas documented for either tool. No error handling guidance. Naming is verb-noun compliant but generic. No tool annotations (readOnlyHint/destructiveHint). Missing idempotency guidance for append_file despite being a write operation.
Append text to the end of a file. Use this when the task is to add a section, notes, examples, or prose after existing content. This is safer and easier than apply_patch for simple append-only changes. For replacing existing text, use edit. For multi-file diffs, use apply_patch.
Count lines in a text file and return a structured observation.
count_lines description is 11 characters ('Count lines in a text file and return a structured observation.'), below 20-char minimum. Lacks context for LLM tool selection.
count_lines has no parameter descriptions. 'path' parameter lacks guidance on format, constraints, or what 'inside the workspace' means. LLM cannot infer valid input.
No output schemas documented for either tool. LLMs cannot plan downstream calls or extract structured data. What does count_lines return? Is it {count: int} or {lines: int, words: int}?
append_file lacks error handling guidance. What happens if path is invalid, file is read-only, or disk is full? No recovery hints for LLM.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | 2025-06-18+ | v2 |
append_file is a destructive write operation but has no tool annotation (destructiveHint) and no idempotency guidance. Repeated calls with same input will append duplicate content, non-idempotent.