Develop an integration#
An integration pairs callable robotics capabilities with instructions that an agent can follow.
Add a robot#
Implement the environment facade in the Python services tree.
Declare supported primitives and parameter schemas in a robot manifest.
Register observations, flags, and lifecycle behavior with
defineRobot(pi, spec).Add setup, preflight, and evaluation support for the backend.
Write a skill explaining the workflow and how to interpret feedback.
The extension owns robot-specific behavior while pi supplies the agent loop and sessions. Use the adding-a-robot guide for the implementation checklist.
Add a primitive or algorithm#
Expose the capability as a service operation and declare it in src/primitives/manifests/<robot>.json. The manifest describes parameters, documentation, capabilities, and API tiers.
That declaration feeds agent tool descriptions and the supported Python program interface. Some tools run on the TypeScript side, such as agent-side policy loops, and are not automatically available to server-side Python.
See adding a primitive and the service protocol.
Write a skill#
A skill should explain setup requirements, input conventions, the sequence of tool calls, and how to respond to feedback. Keep executable contracts in the service and manifest; use skills for the procedure the agent needs to complete the task.
Connect other coding agents#
The repository includes Codex and Claude Code plugins with an MCP bridge generated from the primitive manifests. This bridge exposes supported environment-side tools, observations, and lifecycle operations. pi remains the entry point for its session modes, evaluation, and dashboard.
See the host integration files and complete reference for configuration and real-robot operator authorization.