---
name: create-agent
description: >-
通过多轮对话收集需求,调用 ManageAgent 内置工具创建新的 AgentFS v2 智能体,支持自定义 persona 和 principles。Use when 用户要求创建新智能体、培养某领域助手、或快速基于模板生成可治理 Agent。
version: 2.6.1
type: meta
risk_level: low
status: enabled
disable-model-invocation: true
tags:
- agent
- creation
- meta
metadata:
author: desirecore
updated_at: '2026-08-25'
i18n:
default_locale: en-US
source_locale: zh-CN
locales:
- zh-CN
- en-US
zh-CN:
name: 创建智能体
short_desc: 通过自然语言对话收集需求,一键创建专业化数字智能体
description: >-
通过多轮对话收集需求,调用 ManageAgent 内置工具创建新的 AgentFS v2 智能体,支持自定义 persona 和 principles。Use when 用户要求创建新智能体、培养某领域助手、或快速基于模板生成可治理 Agent。
body: ./SKILL.zh-CN.md
source_hash: sha256:14e8755703784086
translated_by: human
en-US:
name: Create Agent
short_desc: Collect requirements through natural-language conversation and create a specialized digital Agent in one step
description: >-
Collect requirements through multi-turn conversation and call the ManageAgent builtin tool to create a new AgentFS v2 Agent, with customizable persona and principles. Use when the user asks to create a new Agent, raise a domain assistant, or quickly produce a governable Agent from a template.
body: ./SKILL.md
source_hash: sha256:14e8755703784086
translated_by: human
market:
icon: >-
category: productivity
maintainer:
name: DesireCore Official
verified: true
compatible_agents: []
channel: latest
required_client_version: 10.0.108
---
# create-agent skill
## L0: One-Sentence Summary
Collect requirements through natural-language conversation and call the ManageAgent builtin tool to create a specialized digital Agent.
## L1: Overview
Meta-skill: gather requirements over multi-turn conversation → generate persona/principles → land via `ManageAgent(action='create')`. Use it to raise a domain specialist (legal advisor, financial analyst), deploy a customized business Agent quickly, or produce a prototype from a template. The created repo conforms to the AgentFS v2 spec and is version-managed by git (governable, traceable). Its value is what the tool can't give: domain-tailored persona/principles generation + a pre-create preview confirmation.
## L2: Detailed Spec
Flow: intent recognition → requirement gathering → content generation → user confirmation → creation → receipt.
### Stage 1: Intent Recognition
Trigger (any): user explicitly says "create an Agent / make me an assistant"; describes a domain-specific need the current Agent lacks; asks "can you raise a …". Confirm intent, then move to requirement gathering.
### Stage 2: Requirement Gathering
- Required (parenthesized = example prompt question): `name` ("what to name it?"), `role` ("what does it mainly do?"), `target_users` ("who will use it?"), `domain` ("what expertise does it need?").
- Optional: `style` (communication tone), `boundaries` (red lines), `language` (default Chinese) — defaults derived from the domain template.
- Strategy: prefer inferring from the user's natural description; only ask for missing required fields; you decide how many to ask and the pacing.
### Stage 3: Content Generation
Organize persona and principles as structured fields (do not emit raw markdown; present field-by-field). Leave uncollected fields empty for the system to fill with defaults:
- **persona**: L0 one-sentence core identity; L1 `role` / `personality` (array of trait tags) / `communication_style`; L2 specialty, values, decision preferences (free-form).
- **principles**: L0 one-sentence top principle; L1 `must_do` / `must_not` (safety red lines) / `priority`; L2 governance principles, escalation rules (free-form).
**Domain matching reference** (recommend personality and red lines by domain):
| Domain | Recommended personality | Default must_not |
| --- | --- | --- |
| Legal / contract | Professional, rigorous, prudent | No litigation representation; not a substitute for formal legal advice |
| Finance / accounting / investment | Precise, analytical, conservative | No investment advice; no real transactions |
| Code / development / architecture | Logical, pragmatic, direct | No direct production access; no credential storage |
| General / other | Friendly, helpful | Standard safety norms |
### Stage 4: User Confirmation
Present the preview in natural language / tables (name, description, persona, principles; **no raw markdown source**), e.g.:
> About to create "Legal Advisor Assistant" — focused on contract review and legal risk assessment.
> **Persona**: digital legal advisor; professional, rigorous, prudent; uses legal terms accurately with plain-language explanations.
> **Principles**: user interest first, not a substitute for formal legal advice; must — cite statutes / mark uncertainty / recommend consulting a lawyer; must not — litigation representation / leaking consultations; priority: user safety > accuracy > efficiency.
> Confirm creation? (Confirm / Modify / Cancel)
If the user picks "Modify": ask which field → re-collect that field → update the preview → show and confirm again.
### Stage 5: Create via ManageAgent
Structured call (persona/principles also accept markdown strings; unprovided fields are auto-filled):
```
ManageAgent({
"action": "create",
"name": "Legal Advisor Assistant",
"description": "A digital Agent focused on contract review and legal risk assessment",
"persona": { "L0": "…", "L1": { "role": "…", "personality": ["professional","rigorous","prudent"], "communication_style": "…" } },
"principles": { "L0": "…", "L1": { "must_do": ["…"], "must_not": ["…"], "priority": "user safety > accuracy > efficiency" } }
})
```
- Minimal create needs only `{ "action": "create", "name": "My Assistant" }` (everything else auto-generated).
- Basic create `{ "action": "create", "name": "Legal Advisor", "description": "contract review" }` — with just name + description, the description auto-fills persona's L0.
- Optional `id` (kebab-case slug; `core` / `desirecore` are reserved core identifiers and cannot be used, including when the slug auto-generated from `name` collides), `config`, `smartRouting`, and `avatarImage`. See the contracts below. Sensitive fields such as `mcp_servers` and `tool_permissions` are rejected and must be adjusted through the UI after creation.
- The Agent is registered and usable immediately; the returned ID works directly with ManageTeam / Delegate. If the tool errors (already exists / reserved identifier / non-whitelisted config field, etc.), explain the reason and retry after adjusting per the hint.
#### Creation Parameter Guide
**Smart routing**: new Agents default to the Smart flagship tier. When responsibilities require an explicit tier, pass `smartRouting`:
```json
{
"tier": "balanced",
"requiredCapabilities": ["vision", "tool_use"],
"reasoning": "high"
}
```
- `tier` accepts `lightweight`, `balanced`, or `flagship`; `reasoning` accepts `auto`, `off`, `minimal`, `low`, `medium`, `high`, `xhigh`, or `max`.
- Omitting `tier` defaults to `flagship`. This expresses workload and capability intent, not a concrete Provider or model.
- Fixed model, Provider, and Smart/fixed selection are governed by the human model selector and cannot be changed through ManageAgent.
- Natural-language requests such as "deepest/highest/max it out" normally map to `xhigh`; use `max` only when the user explicitly names it and the model supports it.
**Configuration patch**: `config` supports only `llm` and declarative avatar settings. It is normally unnecessary during creation; use it only when the Agent needs a different default reasoning behavior:
```json
{
"llm": {
"reasoning": "high",
"maxRetryDelayMs": 30000
},
"avatar": {
"char": "L",
"color": "purple"
}
}
```
`config.llm` currently exposes only `reasoning`, `thinkingBudgets`, and `maxRetryDelayMs`. Do not pass `model`, `provider`, `providerId`, or `routingMode`.
**Image avatar**: use the separate `avatarImage` parameter; do not place image data in `config`:
```json
{ "source": "dc-media://" }
```
`source` may be a media ID from the current turn or a PNG/JPEG/WebP file inside the working directory. URLs and base64 are rejected. The service crops to 512×512 WebP and removes EXIF automatically. Avatar failure does not roll back an otherwise successful Agent creation; retry only the avatar operation according to the receipt.
### Stage 6: Receipt
Present in a user-friendly way (no internal paths / technical details): confirm success and suggest next steps — start chatting, add skills, adjust persona or rules.
### Background and Constraints
- AgentFS structure, troubleshooting, and protected paths: see `_agentfs-background.md` and `_protected-paths.yaml`.
- Always create via `ManageAgent`; never use curl / HTTP or write AgentFS directories directly. Requires client ≥ 10.0.90.