Naming conventions for OpenCode agents, skills, and commands. Provides rules for kebab-case identifiers, prefix-based grouping of related elements, and concise name construction. Load this skill when creating, renaming, or reviewing the names of agents, skills, or commands.
This skill defines the naming rules used across the project for agents, skills, and commands. The primary goal is scanability -- names should sort together in file listings and autocomplete menus when they belong to the same topic.
All identifiers (agent filenames, skill directory names, command filenames) follow the same base rules:
kebab-case -- lowercase alphanumeric segments separated by single hyphens^[a-z0-9]+(-[a-z0-9]+)*$--), no leading/trailing hyphens.md for agents and commands; skill directories contain SKILL.mdWhen two or more elements relate to the same topic or domain, extract a short common prefix so they sort together alphabetically.
iac for Infrastructure-as-Code, aws for Amazon Web Services, lambda for AWS Lambda)| Prefix | Domain | Elements |
|---|---|---|
aws- | AWS platform agents | aws-architect, aws-developer, aws-cost-analyst, aws-security-auditor, aws-explorer, aws-librarian |
iac- | Infrastructure-as-Code specialists | iac-terraform, iac-cfn, iac-sam, iac-sls-v3, iac-sls-v4 |
lambda- | Lambda handler experts | lambda-ts, lambda-python, lambda-go |
terraform- | Terraform skills | terraform-style-guide, terraform-test |
docs-writer, incident-responder, ai-sensei.Names follow this structure:
<prefix>-<specifier>[-<qualifier>]
| Segment | Purpose | Examples |
|---|---|---|
prefix | Groups related elements | aws, iac, lambda |
specifier | Distinguishes within the group | architect, terraform, ts |
qualifier | Optional version or variant | v3, v4 |
ts over typescript, cfn over cloudformation, sls over serverlessexpert, specialist, handler -- the context (agents directory, skills directory) already conveys the typeCommon abbreviations used in this project:
| Abbreviation | Full form |
|---|---|
aws | Amazon Web Services |
iac | Infrastructure as Code |
cfn | CloudFormation |
sam | Serverless Application Model |
sls | Serverless Framework |
ts | TypeScript |
py | Python (use python for agents for clarity) |
go | Go language |
tf | Terraform (use terraform for agents for clarity) |
Use this checklist when naming a new agent, skill, or command:
Is there already an element in the same domain?
Is the name short enough?
Does it sort next to its siblings?
ls agents/ or ls skills/ -- related elements should appear consecutively.Does it pass the regex?
^[a-z0-9]+(-[a-z0-9]+)*$ -- no uppercase, no underscores, no consecutive hyphens.When adding a second element to a domain that forces a prefix rename:
task permission mapsdescription fields and system prompt body textAGENT_DELEGATION_SCHEMA.md and README.md./scripts/validate-agents.sh --verbose to confirm no broken references./scripts/apply-global-opencode.sh to sync to global config~/.config/opencode/agents/ or ~/.config/opencode/skills/ (the apply script does not prune deleted files)