- Introduced Checkbox component documentation in Chinese, covering usage, properties, and examples. - Added Input component documentation in Chinese, detailing its attributes and various states. - Created Select component documentation in Chinese, including subcomponents and usage examples. - Developed Queue management documentation, outlining its core functionalities and component structure. - Added Terminal dashboard documentation, describing its layout, core features, and usage examples. - Documented team workflows, detailing various team skills and their applications in project management.
7.3 KiB
Naming Conventions
CCW uses consistent naming conventions across skills, commands, files, and configurations. Following these conventions ensures your custom skills integrate seamlessly with the built-in ecosystem.
Overview
Consistent naming conventions help with:
- Discoverability: Skills and commands are easy to find and understand
- Integration: Custom skills work well with built-in ones
- Maintenance: Clear naming reduces cognitive load when debugging
- Documentation: Self-documenting code and configuration
Skill Naming
Built-in Skill Pattern
Built-in CCW skills follow these patterns:
| Pattern | Examples | Usage |
|---|---|---|
team-* |
team-lifecycle-v4, team-brainstorm |
Multi-agent team skills |
workflow-* |
workflow-plan, workflow-execute |
Planning and execution workflows |
*-cycle |
review-cycle, refactor-cycle |
Iterative process skills |
memory-* |
memory-capture, memory-manage |
Memory-related operations |
Custom Skill Naming
When creating custom skills, use these guidelines:
# Good: Clear, descriptive, follows convention
name: generate-react-component
name: api-scaffolding
name: test-coverage-analyzer
# Avoid: Too generic or unclear
name: helper
name: stuff
name: my-skill-v2
Naming Principles
-
Use kebab-case: All skill names use lowercase with hyphens
name: team-lifecycle-v4 # Good name: teamLifecycleV4 # Bad -
Start with action or category: Indicate what the skill does
name: generate-component # Action-based name: test-coverage # Category-based -
Use version suffixes for iterations: Not "v2" but purpose
name: team-lifecycle-v5 # Version iteration name: workflow-lite # Lightweight variant
Command Naming
CLI Command Pattern
Commands follow a category:action:variant pattern:
# Format
ccw <category>:<action>:<variant>
# Examples
ccw workflow:plan:verify
ccw workflow:replan
ccw memory:capture:session
ccw team:lifecycle
Command Aliases
Short aliases for common commands:
| Full Command | Short Alias |
|---|---|
workflow:multi-cli-plan |
workflow:multi-cli-plan |
team:lifecycle-v4 |
team lifecycle |
brainstorm:auto |
brainstorm |
File Naming
Skill Files
~/.claude/skills/my-skill/
├── SKILL.md # Skill definition (required, uppercase)
├── index.ts # Skill logic (optional)
├── phases/ # Phase files (optional)
│ ├── phase-1.md # Numbered phases
│ └── phase-2.md
└── examples/ # Usage examples
└── basic-usage.md
Documentation Files
Documentation follows clear hierarchical patterns:
docs/
├── skills/
│ ├── index.md # Skills overview
│ ├── core-skills.md # Built-in skills reference
│ ├── naming-conventions.md # This file
│ └── custom.md # Custom skill development
├── workflows/
│ ├── index.md
│ ├── teams.md # Team workflows
│ └── best-practices.md
└── zh/ # Chinese translations
└── skills/
└── index.md
Markdown File Conventions
| Pattern | Example | Usage |
|---|---|---|
index.md |
skills/index.md |
Section overview |
kebab-case.md |
naming-conventions.md |
Topic pages |
UPPERCASE.md |
SKILL.md, README.md |
Special/config files |
Configuration Keys
Skill Frontmatter
---
name: workflow-plan # kebab-case
description: 4-phase planning # Sentence case
version: 1.0.0 # Semantic versioning
triggers: # Array format
- workflow-plan
- workflow:replan
category: planning # Lowercase
tags: # Array of keywords
- planning
- verification
---
CLI Tool Configuration
{
"tools": {
"gemini": {
"enabled": true, // camelCase for JSON
"primaryModel": "gemini-2.5-flash",
"tags": ["analysis", "Debug"]
}
}
}
Variable Naming in Code
TypeScript/JavaScript
// Files and directories
import { SkillContext } from './types'
// Variables and functions
const skillName = "my-skill"
function executeSkill() {}
// Classes and interfaces
class SkillExecutor {}
interface SkillOptions {}
// Constants
const MAX_RETRIES = 3
const DEFAULT_TIMEOUT = 5000
Configuration Keys
# Use kebab-case for YAML configuration keys
skill-name: my-skill
max-retries: 3
default-timeout: 5000
# JSON uses camelCase
{
"skillName": "my-skill",
"maxRetries": 3,
"defaultTimeout": 5000
}
Trigger Keywords
Skill Triggers
Triggers define how skills are invoked:
| Skill | Triggers (English) | Triggers (Chinese) |
|---|---|---|
| brainstorm | brainstorm, brainstorming |
头脑风暴 |
| team-planex | team planex, wave pipeline |
波浪流水线 |
| review-code | review code, code review |
代码审查 |
| memory-manage | memory manage, update memory |
更新记忆 |
Trigger Guidelines
- Use natural language: Triggers should be conversational
- Support multiple languages: English and Chinese for built-in skills
- Include variants: Add common synonyms and abbreviations
- Be specific: Avoid overly generic triggers that conflict
Session Naming
Workflow Sessions
Sessions use timestamp-based naming:
.workflow/.team/
├── TLS-my-project-2026-03-02/ # Team:Project:Date
├── WS-feature-dev-2026-03-02/ # Workflow:Feature:Date
└── review-session-2026-03-02/ # Descriptor:Date
Session ID Format
<TYPE>-<DESCRIPTOR>-<DATE>
Types:
- TLS = Team Lifecycle Session
- WS = Workflow Session
- RS = Review Session
Examples
Example 1: Good Skill Naming
---
name: api-scaffolding
description: Generate REST API boilerplate with routes, controllers, and tests
version: 1.0.0
triggers:
- generate api
- api scaffold
- create api
category: development
tags: [api, rest, scaffolding, generator]
---
Example 2: Good File Organization
~/.claude/skills/api-scaffolding/
├── SKILL.md
├── index.ts
├── templates/
│ ├── controller.ts.template
│ ├── route.ts.template
│ └── test.spec.ts.template
└── examples/
├── basic-api.md
└── authenticated-api.md
Example 3: Good Command Naming
# Clear and hierarchical
ccw api:scaffold:rest
ccw api:scaffold:graphql
ccw api:test:coverage
# Aliases for convenience
ccw api:scaffold # Defaults to REST
ccw api:test # Defaults to coverage
Migration Checklist
When renaming skills or commands:
- Update
SKILL.mdfrontmatter - Update all trigger references
- Update documentation links
- Add migration note in old skill description
- Update session naming if applicable
- Test all command invocations
::: info See Also
- Custom Skill Development - Creating your own skills
- Core Skills Reference - All built-in skills
- Skills Library - Skill overview and categories :::