Policy-gated, durable, audited execution for AI agent tool calls. Every action gets a five-verdict policy check, a crash-safe checkpoint, and a tamper-evident audit event — a library, not a server.
Lynx is a policy-gated execution library, not an MCP server. Tools are defined across example files with basic schemas and descriptions. Most tools have 1-3 parameters with type info and brief descriptions (avg ~50 chars), but lack depth on when/why to use them, error recovery, and output schemas. No tool annotations (readOnlyHint/destructiveHint). Naming is verb-first (list_files, write_file, shell) but descriptions are minimal. Example: 'List the files in a directory' (34 chars) lacks context on path resolution, symlink handling, or result structure. wire_transfer and refund tools lack confirmation/dry-run patterns despite destructive risk. No pagination, no output schema documentation, no error guidance.
Get customer information.
CPU work that finishes — completes inside the child interpreter.
Issue a refund to a customer.
List the files in a directory.
Record a note.
Refund a customer with reason.
Burns CPU forever — the executor's timeout saves the parent.
Destructive tools (wire_transfer, issue_refund, refund_customer, sql_exec) lack confirmation/dry-run patterns. No description warns of irreversibility or guides recovery.
No output schemas documented. Tools return unspecified structures; LLMs cannot plan downstream calls or extract required fields (e.g., customer_id for chaining).
Descriptions are minimal (25 - 50 chars avg). Missing context on when/why to use each tool, prerequisites, and error recovery. E.g., 'Run a shell command' lacks guidance on safe vs unsafe commands.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | 2026-07-28+ | v2 |
Run a shell command.
Execute SQL query.
Wire money.
Save text to a file. Irreversible — policy will dry-run it.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). LLMs cannot infer safety/retry semantics without explicit hints.
No error handling guidance. Tools do not document what errors are retryable, user-fixable, or fatal, or how to recover.