skills/nocobase-ai-employee/SKILL.md
Use when a NocoBase task requires AI employee lifecycle work such as discovering existing employees, judging fit, creating a dedicated employee, or configuring profile, prompt, model, skills, tools, or knowledge base before another skill binds it to a UI surface.
npx skillsauth add nocobase/skills nocobase-ai-employeeInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Configure an AI employee-backed action for a specific NocoBase business surface. Decide whether the requirement should use built-in UI actions, JS actions, workflows, or an AI employee; then reuse or create the right employee and hand off the final UI placement to nocobase-ui-builder.
nocobase-ui-builder for Modern page/block/action authoring and AI employee action placement.nocobase-data-modeling when the requirement needs new collections, fields, or relations before the AI action can work.nocobase-workflow-manage when the AI employee should call or trigger a workflow tool, or when the task is mostly deterministic backend automation.Classify the user request before writing anything:
| Need | Prefer |
| --- | --- |
| Fixed CRUD, navigation, visibility, filters, field assignment, or simple button behavior | Built-in UI action / reaction through nocobase-ui-builder |
| Deterministic client-side calculation, formatting, validation, or data transform | JS action / JS surface through nocobase-ui-builder |
| Deterministic multi-step server automation, approval, notification, scheduled work | Workflow through nocobase-workflow-manage |
| Natural-language interpretation, ambiguous intent, extraction from messy text, summarization, classification, drafting, recommendations, data insight narrative, tool choice, or model judgment | AI employee action |
Only choose AI employee when model judgment materially reduces ambiguity or gives the user a natural-language task surface. Do not use AI employee as a substitute for ordinary deterministic UI configuration.
Decompose the request
nocobase-ui-builder inspection routes first.Decide if AI employee is appropriate
Discover existing AI employees
aiEmployees:listByUser.enabled=true, deprecated=false, and role-visible rows. Avoid category="developer" unless the user is configuring developer-facing builder work.modelSettings.references/ai-employee-api.md only when you need concrete resource names, fields, or payload shapes.Reuse or create
bio human-facing and put operational behavior in about.avatar set to a supported avatar seed before calling aiEmployees:create.avatar is missing, empty, null, or unsupported, set it to the default supported seed nocobase-015-male.Bind the employee to the block
nocobase-ui-builder and its AI employee action reference.type: "aiEmployee" with settings.username, settings.auto, settings.workContext, settings.tasks, settings.style.props, stepParams, flowModels, or database rows.workContext: [{ "type": "flow-model", "target": "self" }].Verify
nocobase-ui-builder when a write occurred.aiEmployees:listByUser for the intended role, and verify its avatar is non-empty and still one of the supported avatar seeds. Explain any role/ACL follow-up if it is not visible.Prefer built-ins when they fit:
atlas: route a broad request to other employees or coordinate sub-agents.dex: extract, clean, structure, or fill forms from messy text.viz: analyze data and produce insights or reports.ellis: understand, summarize, and draft email replies.lexi / lina: translation and localization, with lina usually developer-facing.nathan: frontend code authoring or JS/code-editor work; developer-facing.Create a dedicated employee when the task needs domain-specific behavior, a constrained model set, dedicated custom workflow tools, or a role/persona that should be exposed to business users.
avatar is a preset seed string, not an uploaded file object or external image URL.nocobase-015-male.aiEmployees:create payload must include avatar.avatar against the supported seeds below. Replace missing, empty, null, or unsupported values with nocobase-015-male.aiEmployees:list or aiEmployees:listByUser and verify avatar is present.Supported avatar seeds:
nocobase-001-male
nocobase-002-male
nocobase-003-female
nocobase-004-male
nocobase-005-female
nocobase-006-male
nocobase-007-male
nocobase-008-female
nocobase-009-female
nocobase-010-male
nocobase-011-male
nocobase-012-male
nocobase-013-female
nocobase-014-female
nocobase-015-male
nocobase-016-female
nocobase-017-female
nocobase-018-female
nocobase-019-female
nocobase-020-female
nocobase-021-male
nocobase-022-male
nocobase-023-female
nocobase-024-male
nocobase-025-male
nocobase-026-male
nocobase-027-female
nocobase-028-male
nocobase-029-male
nocobase-030-male
nocobase-031-female
nocobase-032-male
nocobase-033-male
nocobase-034-female
nocobase-035-male
nocobase-036-female
nocobase-037-male
nocobase-038-female
nocobase-039-female
nocobase-040-female
nocobase-041-male
nocobase-042-male
nocobase-043-male
nocobase-044-male
nocobase-045-female
nocobase-046-female
nocobase-047-male
nocobase-048-female
nocobase-049-male
nocobase-050-female
nocobase-051-female
nocobase-052-female
nocobase-053-male
nocobase-054-female
nocobase-055-male
nocobase-056-female
nocobase-057-female
nocobase-058-female
nocobase-059-male
nocobase-060-female
Use this internal template before placement:
{
"intent": "what the user wants",
"targetSurface": "page/block/action slot",
"decision": "builtin|js|workflow|ai-employee",
"employee": {
"mode": "reuse|create",
"username": "candidate-or-new-username",
"role": "short business role",
"reason": "why this employee fits"
},
"aiAction": {
"auto": false,
"autoSend": false,
"context": "self|named block|record",
"taskTitle": "short button/task title",
"systemMessage": "stable operational constraints",
"userMessage": "what the employee should do with the block context",
"webSearch": false
}
}
references/ai-employee-api.md for collections, resource actions, field meanings, and create/update payload notes.references/block-action-payload.md for the public AI employee action shape and placement rules.references/examples.md for reusable classification and payload examples.development
Use when the task hands over a prototype to reproduce in NocoBase — an HTML file, an image, or a link, INCLUDING the published form "Build a NocoBase app — X … Match the layout and signature visuals of this reference prototype: <url>" — or when someone says a built page "doesn't match the prototype / looks monotone / is ugly". A prototype/URL being present is what triggers this skill, EVEN WHEN the same prompt also says "build an app" — the verb "build" does not cancel the prototype. Skip it only when there is NO prototype at all: a bare "build me a CRM/app" → nocobase-app- discipline; a one-field edit / rename → nocobase-ui-builder. It turns "here is the prototype, build it" into a faithful app — analyze prototype, native CRUD, the right native block per region, then a screenshot-vs-prototype visual loop. Native-first; JS only inside a native container; never a full-page JS block. Mechanics live in nocobase-ui-builder, nocobase-data-modeling, nocobase-app-discipline.
tools
Use when building a NocoBase app with NocoBase skills or the nb CLI and you want to save a completed, meaningful milestone as a restorable revision.
tools
Use when users need to inspect, create, revise, enable, or diagnose NocoBase workflows through the `nb` CLI, including trigger selection, node-chain changes, version safety checks, and execution troubleshooting.
development
General-purpose NocoBase reference utilities covering cross-cutting topics such as evaluator engines, expression syntax, UID generation, and more. Use when you need authoritative reference information or reusable snippets that apply across multiple NocoBase features.