Skill Management

Create New Skill

# Interactive mode
composabl skill new

# Create teacher skill
composabl skill new \
  --name temperature-controller \
  --type teacher \
  --description "Maintains optimal temperature" \
  --location ./skills/

# Create controller skill
composabl skill new \
  --name pid-controller \
  --type controller \
  --description "PID control implementation" \
  --location ./skills/

# Create coordinated skill
composabl skill new \
  --name swarm-coordinator \
  --type "coordinated population" \
  --description "Coordinates drone swarm" \
  --location ./skills/

Skill Types

  1. teacher: Reinforcement learning based

  2. controller: Programmatic control logic

  3. coordinated set: Coordinate specific skills

  4. coordinated population: Coordinate populations of agents

Generated Skill Structure

my-skill/
├── pyproject.toml
├── README.md
└── my_skill/
    ├── __init__.py
    └── teacher.py  # or controller.py, coach.py

Example pyproject.toml:

[project]
name = "temperature-controller"
version = "0.1.0"
description = "Maintains optimal temperature"
dependencies = ["composabl-core"]

[composabl]
type = "skill-teacher"
entrypoint = "temperature_controller.teacher:Teacher"

Publish Skill

# Publish to Composabl platform
composabl skill publish ./skills/temperature-controller/

# Or specify path explicitly
composabl skill publish --path ./skills/temperature-controller/

List Skills

# List all skills in current project
composabl skill list

Output:

Name                Type        Version  Description              UUID
temperature-ctrl    teacher     2        Maintains temperature    abc123...
pressure-ctrl       controller  1        Controls pressure        def456...
team-coordinator    coach       1        Coordinates team         ghi789...

Delete Skill

# Interactive selection
composabl skill delete

Last updated