Skills: packaged know-how, on the open standard.
A skill is how-to knowledge an agent loads when the task calls for it —
following the cross-vendor
Agent Skills open standard exactly.
Skills from the ecosystem drop into a GoTo workspace unchanged; skills you
author here work in Claude Code, Codex, Cursor, and everything else that
reads SKILL.md.
Progressive disclosure
Only a skill's name and description sit in the system prompt. When the
conversation calls for it, the agent loads the full SKILL.md —
and optionally its reference files — into context, uses it, and moves on.
Descriptions are therefore the trigger: write them as "when to use this,"
not as marketing copy.
Structure
my-skill/
SKILL.md # required: frontmatter (name, description) + instructions
scripts/ # optional: executable scripts
references/ # optional: docs loaded on demand
Naming rules per the standard: lowercase alphanumeric plus hyphens, max 64
characters, matching the directory name. GTA-specific configuration (tool
grants, model hints) goes in the frontmatter's metadata: field —
never in the instructions — so the skill stays portable.
Scripts
Skills can ship executable scripts, and agents run them through a dedicated
run_skill_script tool that resolves the script inside the
skill's directory and executes with the active project folder as the working
directory. Skills go through a validation pass before their scripts are
trusted — packaged automation is powerful, and provenance matters.
Where skills live
Global skills (available everywhere) and workspace skills, attached to agents by name, resolving down the usual scope chain with overrides. Profile-attached skills let a person carry a personal skill across workspaces.
Not an activity, not a task
A skill is knowledge the agent picks up. If you want a mode you both work in, that's an Activity; if you want a structured execution software can invoke, that's a Task. The three-way comparison lives on the Activities page.
Where it lives
core/skill_manager.py— discovery, scopes, attachment.core/skill_tool.py— in-conversation loading.core/skill_validation_service.py— validation before scripts run.core/skill_export.py— packaging skills for the ecosystem.