tools / composed_skills.py

Compile recurring tool-call sequences into reusable macros with conditional branching and parameter templating.

Data shapes

TypeFields
SkillSteptool_name · description · param_template · branch_condition · branch_target · optional
ComposedSkillname · trigger_description · steps · branches · usage_count · success_count · last_used · created_at

Templates

param_template uses $variable syntax; resolved against the runtime params when the macro is dispatched.

Registry

LLM exposure

to_tool_definitions() renders each composed skill as an OpenAI-style tool definition so the LLM sees it like any other tool.