Skip to content
  1. OPERATORS
  2. CONTROLLERS

Build Agent Skill

v1.0.0new

build_agent_skill helps turn a LOPs tool operator into a reusable agent skill. Use it when a tool already exposes useful behavior and you want to save guidance as a Python skill file, a Markdown reference, or a skills_config row.

The operator analyzes a Target Tool OP, reads its GetTool() surface when available, collects custom parameter context, checks for existing skills, and previews that analysis in internal tables. It can generate a blank Python skill scaffold, scan user/project/custom skill folders, or let an agent write finished skill content through its tool interface.

For file outputs, User Skills resolves through the active ChatTD Python venv and Project .lops resolves under the current project. For skills_config output, the operator writes table content onto the target COMP rather than creating a file.

  1. Set Target Tool OP to the LOPs tool operator the skill should describe.
  2. Pulse Analyze Target and inspect analysis_results.
  3. Choose Output Mode and Output Location.
  4. Set Skill Name using a stable snake_case name.
  5. For a starter file, leave Include get_context() enabled when the skill needs live read-only context, then pulse Generate Blank Skill.
  6. Use Scan Skill Files to check existing skill files, or Open Skills Folder / Open in Editor when editing the generated output.
  • Inputs: No connector inputs. Set Target Tool OP from the parameter panel.
  • Outputs: No connector outputs. The operator writes skill files, Markdown files, or skills_config table rows depending on Output Mode.
  • Internal tables: analysis_results shows the target surface, generated_skills previews generated table content, and available_skills lists scanned skill files.

build_agent_skill exposes GetTool() as a tool named by Tool Name, defaulting to build_agent_skill. An agent can analyze a target operator, scan existing skill files, write Python skill files, write Markdown references, or write skills_config rows.

It also declares a Build Agent Skill skill. When gathered by an Agent, the skill context includes the target tool surface, custom parameters, existing skills, and any current gather-context output so the agent can author a focused skill.

  • agent: Can call this operator as a meta-tool to author skills.
  • tool_td_code: A common target when documenting code-editing workflows for agents.
  • tool_td_mod: A common target when documenting TouchDesigner network modification workflows.
  • build_agent_profile: Complements skill authoring with reusable Agent configuration.
  • Run Analyze Target before generating or writing so the skill reflects the current target tool name, schema, and parameters.
  • Output Mode controls where content goes. skills_config updates a table on the target COMP, while Python and Markdown modes write files.
  • User Skills depends on the active ChatTD Python venv. If unavailable, the operator falls back to the project .lops/skills folder.
  • Generated blank skills are scaffolds; the useful behavior comes from replacing the TODO workflow with target-specific guidance.
Target Tool OP (Targetop) op('build_agent_skill').par.Targetop OP

Tool operator to inspect before authoring a skill.

Default:
"" (Empty String)
Analyze Target (Analyze) op('build_agent_skill').par.Analyze Pulse

Read the target tool surface, including GetTool, custom parameters, and existing skills.

Default:
False
Analysis Header
Toolcount (Toolcount) op('build_agent_skill').par.Toolcount Str

Read-only summary of tool functions found on the target operator.

Default:
"" (Empty String)
Parcount (Parcount) op('build_agent_skill').par.Parcount Str

Read-only summary of custom parameters found on the target operator.

Default:
"" (Empty String)
Skillcount (Skillcount) op('build_agent_skill').par.Skillcount Str

Read-only summary of existing skills found on the target operator or written by this operator.

Default:
"" (Empty String)
Output Header
Output Mode (Outputmode) op('build_agent_skill').par.Outputmode Menu

Choose whether generated skill content is written as a Python file, Markdown file, or skills_config DAT row.

Default:
py_file
Options:
py_file, skills_config, md_file
Output Location (Outputlocation) op('build_agent_skill').par.Outputlocation Menu

Choose the user skills folder, project .lops folder, or a custom folder for file outputs.

Default:
user
Options:
user, project, custom
Output Folder (Outputfolder) op('build_agent_skill').par.Outputfolder Folder

Custom destination folder used when Output Location is Custom Folder.

Default:
"" (Empty String)
Scan Skill Files (Scanavailableskills) op('build_agent_skill').par.Scanavailableskills Pulse

Scan user, project, and custom skill folders for existing .py and .md skill files.

Default:
False
Availableskillscount (Availableskillscount) op('build_agent_skill').par.Availableskillscount Str

Read-only count from the latest skill folder scan.

Default:
"" (Empty String)
Open Skills Folder (Openskillsfolder) op('build_agent_skill').par.Openskillsfolder Pulse

Open the currently resolved output skills folder in the system file browser.

Default:
False
Create Skill Header
Skill Name (Skillname) op('build_agent_skill').par.Skillname Str

File or row name for the generated skill. Use snake_case for reusable skills.

Default:
"" (Empty String)
Include get_context() (Includegather) op('build_agent_skill').par.Includegather Toggle

Include a starter get_context() scaffold in generated Python skill files.

Default:
True
Generate Blank Skill (Generateblank) op('build_agent_skill').par.Generateblank Pulse

Create a starter Python skill file from the current target analysis.

Default:
False
Lastfile (Lastfile) op('build_agent_skill').par.Lastfile Str

Read-only path or status for the most recently generated skill file.

Default:
"" (Empty String)
Open in Editor (Openexternal) op('build_agent_skill').par.Openexternal Pulse

Open the last generated skill file in the system editor.

Default:
False
Tool Name (Toolname) op('build_agent_skill').par.Toolname Str

Function name exposed to agents when this operator is used as a tool.

Default:
build_agent_skill
Tool Description (Tooldescription) op('build_agent_skill').par.Tooldescription Str

Function description exposed to agents when this operator is used as a tool.

Default:
Build skills for LOPs tool operators. Use action=analyze first to read a target tool surface. Then use action=write_py, write_config, or write_md with flat typed fields. Use action=scan_skills to list existing user/project/custom skill files.
v1.0.02026-05-02
  • added operator source (SkillBuilderExt, guide) - added docs/compose.json - added frozen release 1.0.0 tox - updated manifest and README for conservative release naming
  • Initial skill_builder structure
  • Initial commit