Skills Management
Skills are capability modules for agents. A skill is usually defined by SKILL.md, which describes when to use it, what steps to follow, which tools are available, and what output is expected.
What Are Skills
A skill is not a single tool call. It is a reusable method for a task type. For example, a "Contract Review" skill may include:
- Trigger conditions: when the user submits a contract or asks for clause review
- Steps: read the file, split clauses, identify risks, produce suggestions
- Tools: Read, Edit, WebFetch, MCP legal references
- Output format: risk summary, clause-by-clause comments, suggested edits
| Dimension | Skill | Tool |
|---|---|---|
| Essence | High-level behavior instruction | Low-level capability interface |
| Granularity | A complete task workflow | One concrete operation |
| Example | Contract Review, Web Research, PPT Editing | Read, Grep, PowerShell, WebFetch |
| Contents | Instructions, steps, constraints, references, scripts | Parameters, executor, permission, result |
Skill Sources
DesireCore discovers skills from several locations:
| Source | Location | Scope |
|---|---|---|
| Global Skills | ~/.desirecore/skills/ | Available to all agents |
| Agent Skills | The agent repository's skills/ directory | Available to that agent |
| Project Skills | .agents/skills/ or .claude/skills/ in the work directory | Available in that project context |
Disabled skills are not injected into the agent context. Skills with tool restrictions, model preferences, or provider preferences are matched against the current runtime and compute configuration.
Viewing Skills
- Open the agent details page
- Open Skills or Skills Management
- Review available, disabled, and updateable skills
Skill cards can show name, description, source, version, author, status, direct-invocation setting, and tool or provider requirements. Click a skill to inspect SKILL.md, references, and scripts.
Adding Skills
From the Marketplace
- Open the skill marketplace or the agent skills panel
- Search or browse by category
- Review the skill description, dependencies, and risk notes
- Install and confirm when prompted
When installing a skill, you can choose the install target: global, a specific agent, or a project-level directory. Global marketplace skills are installed into the global skills directory where all agents can discover them. Agent-bound skills are written into the corresponding agent repository. Project-level skills only take effect in the corresponding work directory, making them ideal for maintaining team conventions, project scripts, and local templates alongside the project.
Local Import
Import Skill supports three local formats:
| Format | Description |
|---|---|
.md file | Import a single Markdown skill file; DesireCore creates the skill directory |
| Folder | Import a folder containing SKILL.md, scripts, references, or templates |
.zip package | Import a compressed skill directory for migration or sharing |
The import flow validates structure, path safety, and required fields. If it fails, the UI shows the specific reason.
Enable, Disable, Export, Remove
- Enable / Disable: controls whether a skill can be loaded. Disabling does not delete files.
- Export: in the skill detail panel, click Export to download a global skill or the current agent's embedded skill as a ZIP package. The package includes
SKILL.mdplus scripts, references, and assets under that skill directory, so it can be backed up, moved, or reinstalled through local import. - Remove: deletes the skill files. Agent repository skills can be recovered from version history.
- Update: built-in and marketplace skills can detect updates. User-modified skills are not silently overwritten.
DesireCore includes global skills for skill creation, document processing, PDF, PPT, spreadsheet, web access, frontend design, and mail operations. Built-in skills are maintained automatically through the client and marketplace sync, while user edits are preserved where possible.
Skill Risk And Confirmation
A skill is instruction and resources; it does not bypass tool permissions. Runtime risk comes from the tools it calls, the data it touches, and the external effects it produces.
| Risk Level | Meaning | Common Examples |
|---|---|---|
| Low | Mainly reads or organizes information without changing system state | Summarization, information lookup, format checks |
| Medium | Uses network access, writes files, or connects external services | Web research, report generation, API calls |
| High | May modify the system, run commands, send external messages, or handle sensitive data | Command execution, bulk file edits, mail sending, publishing |
High-risk actions still follow tool approvals, permission settings, and human gates. Installing or enabling a skill does not approve every operation inside it; when a skill triggers sensitive tools, DesireCore applies the corresponding tool and approval policy.
Skill Metadata
SKILL.md can declare metadata in frontmatter:
| Field | Description |
|---|---|
name / metadata.name | Display name |
description / metadata.description | Description used for matching |
version / metadata.version | Skill version |
author / metadata.author | Author |
allowed-tools | Tools allowed while running this skill |
provider | Preferred model or media provider slug |
model | Model to use when this skill is triggered |
user-invocable | Whether users can call it directly |
disable-model-invocation | Whether automatic model-triggered invocation is disabled; disable_model_invocation is also accepted |
context | Execution context mode, such as default or fork |
These fields affect card display, command completion, automatic triggering, tool availability, and provider selection.
Custom Skill Structure
<skill_id>/
+-- SKILL.md
+-- scripts/
+-- references/
+-- assets/
+-- evals/
The clearer the skill description, the easier it is for the agent to choose it at the right time. State when to use it and when not to use it near the top of SKILL.md.
Skill Source Priority
When multiple skills are available for the same task, the agent considers them in the following order:
| Source | Typical Path | Scope |
|---|---|---|
| Project-level Skill | <workdir>/.agents/skills/ | Current project or work directory |
| Claude-compatible Skill | <workdir>/.claude/skills/ | Compatible with existing Claude project configs |
| Agent Skill | agents/<agent_id>/skills/ | Current agent |
| Global Skill | Global skills directory | All agents |
When both .agents/skills and .claude/skills exist, DesireCore prefers .agents/skills. This lets you migrate to the native structure at your own pace without breaking older projects.
Skill Export
You can export individual skills from the skill detail panel. The exported ZIP includes:
SKILL.md- Optional scripts, references, templates, and asset files
- Metadata, input/output schemas, and localized content
Exporting skills is useful for sharing a single capability between teams rather than exporting an entire agent.
Multi-language and Resource References
Skills can declare localized content. When the UI language is set to Chinese, the agent prioritizes the Chinese description; when set to English, it loads the English version. This allows the same skill to behave consistently across multilingual teams.
Skill documents can use ${SKILL_DIR} or {{SKILL_DIR}} to reference resources within the skill directory, such as templates, scripts, or sample files. At runtime, the system resolves these placeholders to real paths, avoiding hardcoded absolute paths across different machines.
Not every skill is automatically injected into the model context. Only skills that are explicitly invoked, determined to be needed by the agent, or allowed for auto-injection in their metadata are loaded. This reduces context pollution and unnecessary tool exposure.
Next Steps
- Skill Packs - Understand skills vs. tools
- Version Control - Track skill edits with Git
- Agent Marketplace - Discover more capabilities