Claude-skill-registry bt-action-discovery
Discovers available robot actions by reading action_library.yaml. Returns action catalog with parameters and constraints for BT generation and validation.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/bt-action-discovery" ~/.claude/skills/majiayu000-claude-skill-registry-bt-action-discovery && rm -rf "$T"
manifest:
skills/data/bt-action-discovery/SKILL.mdsource content
Purpose
This skill discovers what actions the robot supports. Currently reads from
action_library/action_library.yaml. In the future, this will query the robot's advertised ROS services/actions dynamically.
Workflow
- Read
action_library/action_library.yaml - Parse available primitive and composite actions
- Return structured action catalog
Output Format
Return the following information:
Primitives
- Action name
- Package location
- Parameters (name, type, required, default, description)
- Valid ranges
- Example usage
Composites
- Action name
- Package location
- Parameters
- Example usage
Constraints
- Workspace bounds (x_range, y_range)
- Color value ranges
- Default spawn position
Example Usage
When invoked, this skill reads the YAML and returns:
Available Primitive Actions: - GoToPose(name, x, y, theta=None, tolerance_pos=0.1, tolerance_angle=0.1) - x, y must be in [0, 11] - Example: GoToPose(name='Move', x=5.0, y=5.0) - SetPen(name, r=255, g=255, b=255, width=3, off=0) - RGB values in [0, 255] - Example: SetPen(name='Red', r=255, g=0, b=0, width=3) [... continues for all actions ...] Workspace Constraints: - x_range: [0, 11] - y_range: [0, 11] - Default spawn: (5.544445, 5.544445)
Notes
- This skill has low degree of freedom - it simply reads and returns the YAML content in a structured format
- Future enhancement: Query live robot instead of static YAML file
- Invoked by: bt-composer (during generation) and bt-validator (during validation)