TM Robot Control
WarnAudited by ClawScan on May 10, 2026.
Overview
The skill matches its robot-control purpose, but it includes runnable scripts that can move a real robot or toggle outputs without clear confirmation, so it needs careful review and supervised use.
Use only on a supervised TM robot with the workspace clear and emergency stop available. Reconfigure the hard-coded robot IP before use, start with read-only status commands, do not run test_*.py or auto motion scripts unattended, and pin/verify the techmanpy dependency.
Findings (4)
Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.
A user or agent running the test file could unexpectedly move a real robot arm, creating equipment or safety risk.
This test module invokes multiple real robot motion commands and calls the test function at module top level, without a visible confirmation prompt or main guard. Direct execution, import, or test discovery could move a physical robot.
robot = TMRobot('192.168.1.13') ... success = await robot.move_joint([0, 0, 90, 0, 90, 0], speed=0.3) ... success = await robot.move_relative_line([50, 0, 0, 0, 0, 0], speed=0.2) ... success = await robot.move_joints_zero(speed=0.1) ... asyncio.run(test_all_motion())Move all physical-motion tests behind an explicit confirmation prompt, a main guard, and a dry-run/simulation default. Do not let an agent run motion test files unattended.
Digital outputs may control attached tooling, and alarm resets can change a robot's safety state; running the script could affect hardware unexpectedly.
The script toggles robot digital output and performs stop/reset actions. These are purpose-aligned for a robot-control skill, but they are high-impact physical side effects and are not consistently gated by explicit user approval.
await robot.set_digital_output(0, True) ... await robot.set_digital_output(0, False) ... success = await robot.stop_motion() ... success = await robot.reset_alarm()
Require explicit, per-action confirmation for IO changes and alarm reset, document what external equipment may be affected, and separate read-only diagnostics from mutating controls.
Users may trust unsupported or differently configured motion features and attempt movements that do not behave as described.
The skill claims full LIN/ARC motion support and 17/17 field-test success, while TEST_REPORT.md says '直线运动 (LIN) | ❌ 不支持 | techmanpy 无此方法'. For a physical robot, inconsistent capability and test-status claims make the safe operating envelope unclear.
- ✅ 运动控制(关节 PTP、直线 LIN、圆弧 ARC) ... - 现场测试通过 (17/17)
Reconcile the documentation and test report, clearly label unsupported or TMflow-dependent motions, and avoid production-ready claims until the supported motion modes are unambiguous.
Installing a different techmanpy version could change robot-control behavior or compatibility.
The external robot-control dependency is disclosed and purpose-aligned, but it is broadly versioned rather than pinned. Dependency changes could affect behavior in a physical-control environment.
"dependencies": { "techmanpy": ">=1.0.0", "asyncio": "*" }Pin and verify the tested techmanpy version, and install dependencies only from trusted sources.
