Real-Time AI Intent Observability Hub - A cognitive middleware system for tracking AI agent intent, focus context, and providing real-time visual alignment across multiple applications (Unity, Blender, Code editors)
Vigilance has 9 tools with complete input schemas and descriptions visible in internal/mcp/server.go. Naming follows verb_noun convention (track_intent, emergency_brake, map_id, etc.) and is clear. Descriptions are present (avg ~80-120 chars) and explain intent. However, several tools lack output schema documentation, parameter relationships are undocumented, and error handling/recovery guidance is missing. Security concerns exist around the 'metadata' parameter accepting free-form JSON without validation, and the emergency_brake tool has irreversible consequences without confirmation pattern. Most parameters have descriptions, but some lack format/constraint details (e.g., 'strength' accepts 0-1 but lacks clipping logic in description). No enum constraints used despite several parameters that could benefit (e.g., 'action', 'status', 'agent_type', 'target_type'). Output schema documentation is entirely absent, LLMs cannot predict return structure.
Removes a specific intent point from the active HUD
Engages or disengages the global system kill-switch
Retrieves the latest visual frame snapshot for the specified agent
Maps a source ID (e.g., Blender mesh) to a canonical target ID (e.g., Unity GameObject)
Reads human-in-the-loop signals and override tokens (Hand of God nudges)
Exports the current intent history to a JSON file
Sets the high-level mission summary for the entire ecosystem
Output schemas are not documented for any tool. LLMs cannot predict return structure, forcing them to infer from examples or fail. Pattern: response-shaper (https://arcade.dev/patterns/response-shaper) requires structured output documentation.
emergency_brake is an irreversible operation (IRREVERSIBLE risk noted) that lacks a confirmation or dry-run pattern. Agents can permanently disable the system without user approval or recovery guidance.
Several parameters accept free-form enums as strings without enum constraints: 'action' (inspect, move, modify, read, generate), 'status' (success, failure, pending), 'agent_type' (Blender, Unity, Code, Text), 'target_type' (spatial, buffer). LLMs will hallucinate invalid values. Should declare as JSON Schema enums.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 63 | <=2025-11-25 | v2 |
Submits a base64-encoded visual frame snapshot when AI performs a visual inspection
Reports high-fidelity AI intent and focus context
'metadata' parameter in track_intent accepts arbitrary JSON string without validation or schema. Parsing failure is logged but not reported to caller. Attacker could pass malformed JSON to poison logs or cause silent failures.
Numeric parameters (strength, confidence, x, y, z, line, col, monotonic_tick) have descriptions but lack minimum/maximum bounds in descriptions. Code clamps strength/confidence to 0 - 1, but descriptions don't explain this, forcing LLMs to guess valid ranges.
No error handling or recovery guidance visible. If track_intent fails to parse metadata, if emergency_brake cannot engage (system already engaged?), or if map_id creates a circular mapping, the response gives no actionable guidance to the LLM. Pattern: recovery-guide requires specific next-step instructions.
Parameter relationships undocumented. E.g., track_intent requires 'id' + 'agent_id' + 'app_id' + 'session_id' together for multi-tenant safety, but descriptions don't warn against omitting related IDs or explain why all three are required.
No audit trail or permission-gate pattern visible. Tools like track_intent and emergency_brake have security implications but no indication of who called them, permission checks, or logging for compliance.