AI-enhanced terminal shell with LLM-powered capabilities and MCP server support
TafySH provides 9 ROS2-focused tools with basic schemas and descriptions, but falls short of production quality. All tools have descriptions (10-100 chars, mostly adequate) and input schemas with type definitions. However, parameter descriptions are sparse or missing entirely (e.g., robot.status lacks 'robot_id' description; ros.publish lacks guidance on message format). Output schemas are undocumented, LLMs cannot predict what fields to expect from responses. Error handling is absent: no guidance on retryability, recovery steps, or actionable error messages. Tool composition is weak: ros.publish and ros.call_service accept generic 'message'/'request' objects without schema constraints, inviting hallucinated payloads. No pagination, no batch operations, no idempotency markers. Security concerns: ros.publish and ros.call_service are WRITE operations but lack confirmation/dry-run patterns. Overall, this reads as a domain-specific prototype rather than a production-grade agent toolkit.
Set the robot's safety state. Valid states: idle, supervised, autonomous, maintenance.
Get the current status of the robot including position, battery, and safety state.
Call a ROS2 service with the given request.
List all active ROS2 nodes.
List all available ROS2 services.
List all available ROS2 topics. Returns topic names, message types, and publisher/subscriber counts.
Publish a message to a ROS2 topic. Requires safety validation for motion topics.
Output schemas undocumented. LLMs cannot predict response structure (fields, types, pagination). Forces agents to guess what data is available after each call.
Generic 'message' and 'request' parameters in ros.publish and ros.call_service lack schema constraints. Accepts any JSON object without validation, inviting hallucinated payloads and runtime failures.
No error handling guidance. Tools lack recovery hints, retryability classification, or actionable error messages. Agents cannot self-correct on failure.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | <=2025-11-25 | v2 |
Subscribe to a ROS2 topic and collect messages for a duration.
Get detailed information about a specific ROS2 topic.
Destructive operations (ros.publish, ros.call_service, robot.set_state) lack confirmation or dry-run patterns. Agents can execute irreversible actions without safeguards.
Parameter descriptions missing or incomplete. 'robot_id' in robot.status has no description; 'message' in ros.publish lacks format guidance. LLMs cannot infer valid input.