Updated on 2026-07-27 GMT+08:00

Skills

Configuration Directory

Skills can be classified into project-level and user-level skills based on their application scope.

Type

Scope

Storage Path

Project

Applied to the current project and stored in a local path

Project root directory/.codeartsdoer/skills

User

Applied to all projects of the current user

~/.codeartsdoer/skills

The tilde (~) indicates the home directory of the current user. In Windows, it is equivalent to C:\Users\Username\. In macOS, it is equivalent to /Users/Username/. In Linux, it is equivalent to /home/Username/.

If a project-level skill and a user-level skill share the same name, the project-level skill takes precedence.

Skill Directory Structure

A skill is a folder with a necessary SKILL.md file and optional resources. It bundles the knowledge and tools needed to perform particular tasks.
skill-name/
├── SKILL.md (Required)
│   ├── YAML frontmatter metadata (Required)
│   │   ├── name: (Required)
│   │   └── description: (Required)
│   └── Markdown instructions (Required)
└── Bundled Resources/ (Optional)
    ├── scripts/      - Executable code (Python, Bash, etc.)
    ├── references/   - Documents to be loaded into the context
    └── assets/       - Files used in the output (templates, icons, fonts, etc.)
Table 1 Skill parameters

Parameter

Description

skill-name

Serves as the root directory for the entire skill. Replace skill-name with your specific skill's name, such as data-analysis-skill. The skill name consists of lowercase letters, digits, and hyphens (-). It cannot start or end with a hyphen, cannot contain consecutive hyphens, and must be 1 to 64 characters in length.

SKILL.md

Serves as the core description file of a skill. Its name cannot be modified. It includes the following essential sections:

  • YAML frontmatter metadata: Placed at the very top of the SKILL.md file and enclosed by --- at the beginning and end, this section provides structured information readable by AI. It contains two fields: name and description.
    • name: The skill name consists of lowercase letters, digits, and hyphens (-). It cannot start or end with a hyphen, cannot contain consecutive hyphens, and must be 1 to 64 characters in length. The value of name must be the same as that of skill-name.
    • description: The skill description contains a maximum of 1,024 characters. This field is critical for CodeArts Agent to recognize the skill's usage scenarios, and must clearly describe the skill functions and trigger conditions.
  • Markdown instructions: The Markdown content below the YAML metadata, used to detail the usage methods, parameters, examples, and dependencies of the skill.

Bundled Resources (optional)

Holds files needed for the skill. While not mandatory, it enhances the skill's functionality.

  • scripts/: contains executable files like Python and shell scripts that perform specific tasks for the skill.
  • references/: holds essential documents like APIs, domain knowledge, and company policies that support agent skills. It acts as the agent's knowledge base. Documents are loaded into the context when needed for skill execution.
  • assets/: contains resource files like fonts, company logos, and PowerPoint templates. The agent uses these files directly in its output without loading them into the context window.

Example

This document uses Windows as an example to describe how to create a user-level skill. To be specific, create a test folder in the .codeartsdoer/skills directory, create a SKILL.md file in the folder, and write the following content into the file:

---
name: test
description: add a "test" after each answer
---
#Add a suffix to each answer.
Add "test" to the end of each answer.

Verify the skill by starting it via TUI or CLI.

Starting a Skill Using TUI

  1. Enter the TUI development mode and enter /skills to view skills.

    Figure 1 Viewing skills

  2. Select the test skill, enter the test command, and press Enter to apply the text skill.

Starting a Skill Using CLI

  1. Open CMD and enter the following command:

    codearts run add a "test" after each answer

  2. If the following information is displayed, the test skill has taken effect:

    C:\Users\Username>codearts run add a "test" after each answer
    
    > build · GLM-5.1
    
    → Skill "test"
    
    The skill has been loaded. From now on, I will add "test" at the end of each answer.