Nightingale v9 Skill Management: wrap domain knowledge / operational experience into Markdown prompt packs, so the AI Agent can auto-invoke them in the right scenarios for more stable, professional answers.

Overview

A Skill = a “prompt instruction pack” with a description. Each Skill is a Markdown-written “domain knowledge + operation guide”. When the AI Agent runs a task, it automatically decides whether the current context matches a Skill’s description, and if so, loads the prompt into the context, having the model act according to what the Skill prescribes.

Sidebar path: AI Config → Skill Management, URL /ai-config/skills.

Visual analogy:

  • LLM Configuration = giving the AI a brain (the model itself)
  • Skill = giving that brain an “ops manual” or “expert memo”

Example:

  • You write a linux-troubleshoot Skill, with the description “Linux host troubleshooting methodology”, body listing common CPU/memory/disk/network troubleshooting commands. Next time someone asks the AI assistant “why is my machine slow”, the system auto-feeds this Skill to the model, and the answer unfolds per your methodology.

Key point: enabling a Skill ≠ it gets used every time. Whether it’s invoked depends on the model matching “user question + Skill description”. So write the description field well — it’s the Skill’s “search keyword”.

Page Layout

Skill detail page

  • Left: Skill list + search box + + new button (with “Online Create” and “Local Upload” modes)
  • Right: details of the selected Skill
    • Header: Skill name + Enable toggle + three-dot menu (Replace / Download / Delete)
    • Meta: author username, last update time, description
    • Prompt instructions: core content; top-right 👁️ / </> to switch between “rendered view (formatted)” and “raw view (code)”

Two Ways to Create a Skill

Method 1: Online Create (Suitable for Simple Skills)

Click +Online Create Skill, opens a form:

Online create Skill form

Field Required Description
Name Yes Unique identifier of the Skill; use kebab-case English, e.g. linux-troubleshoot, promql-helper, incident-runbook
Enabled Default on When off, the Skill won’t be considered by any AI invocation
Description No (but strongly recommended) Basis for AI to match context — the more specific and keyword-rich, the better, e.g. “Linux host CPU / memory / disk / network troubleshooting methodology, with common commands like top, free, iostat, ss, etc.”
Prompt Instructions Yes Core content of the Skill; Markdown, can use headings, lists, code blocks

Method 2: Local Upload (Suitable for Complex Skills with Resource Files)

Click +Local Upload Skill, upload a .zip or .tar.gz archive:

  • The archive root must have a SKILL.md containing YAML frontmatter + Markdown body.
  • The same directory can contain any supporting files (scripts, reference data, sub-docs), which the Skill can reference via relative paths in the prompt.

SKILL.md template:

---
name: linux-troubleshoot
description: Linux host CPU / memory / disk / network troubleshooting methodology with common commands
license: Apache-2.0
compatibility: requires shell access
allowed-tools: Bash(top:*) Bash(free:*) Bash(iostat:*) Read
---

# Linux Troubleshooting

## High CPU
1. `top -c` to see processes using most CPU
2. `pidstat -u 1 5` to see per-second CPU distribution
...

## Memory Burst
...

The fields in frontmatter are the same as those in “Advanced Settings” (license, compatibility, pre-authorized tools, etc.).

A written Skill can be downloaded as an archive from the detail page, serving as a vehicle for team sharing or cross-instance migration. Anthropic’s Agent Skills use the same structure, so many community Skill libraries can be used directly.

Advanced Settings

In the “Advanced Settings” of the create / edit form:

Field Use
License e.g. MIT, Apache-2.0. Lets users understand the compliance boundary when sharing
Compatibility Describes environment dependencies, e.g. “requires git, docker”, “requires internet”. AI will skip if the capability isn’t available
Pre-authorized Tools Tool call allowlist separated by spaces, e.g. Bash(git:*) Bash(docker:*) Read. Only tools listed here skip secondary user confirmation; otherwise the Agent asks the user for consent for each tool call
Metadata Custom key-value pairs, for tagging / versioning / owner association etc.

Operations

  • Enable / Disable: toggle takes effect immediately, no save needed.
  • Replace: select “Replace” in the three-dot menu to upload a new .zip/.tar.gz, which fully overwrites the current Skill (including resource files).
  • Download: export the current Skill as an archive, for backup, version management, sharing.
  • Delete: with secondary confirmation, unrecoverable after deletion (a downloaded backup can be re-uploaded to restore).

Tips for Writing Good Prompt Instructions

The Skill’s prompt instructions are essentially the “standard operating procedure” for the model to read; quality directly determines output quality.

  1. Lead with one sentence: use the most concise language to explain what this Skill does and when to use it.
  2. Structured: use ## subtasks to split big tasks; under each subtask, use lists/code blocks for steps. The clearer the Markdown structure, the more consistently the model executes.
  3. Less “I suggest”, more imperative: the model mimics your tone. “Run top -c and screenshot the first 10 lines” is more deterministic than “you could try top”.
  4. Explicit boundary: state “what not to do” — e.g. “do not modify production config, only output suggested commands”.
  5. Provide examples: a concrete “input → output” example beats a thousand words.
  6. Test once: after writing, open an intelligent chat session and try it; see if AI follows the expected path; if not, return to revise the description (improve match rate) and instructions (improve execution accuracy).

FAQ

Q1: I created a new Skill and enabled it, but the AI assistant didn’t use it in the reply. What gives?

A: 90% of the time it’s because the description is too vague. AI looks at the description first to decide whether to invoke your Skill. Make the description more specific, stuffing in keywords the user might mention; e.g. change “fault handling” to “Linux host CPU / memory / disk / network troubleshooting, with common commands like top, free, iostat, ss”. After that, asking again will hit it first.

Q2: Multiple Skills have similar descriptions — will they all be used at once?

A: Yes. The model injects multiple matching Skills into context, but it eats context window. Recommendations:

  • merge Skills on the same topic into one, separated by ## sub-sections;
  • use the “compatibility” field to express prerequisites, letting AI skip when not met;
  • disable rarely-used Skills (enable toggle).

Q3: Can the locally uploaded Skill package use Anthropic’s official Skills library?

A: Yes. Nightingale’s Skill package format is compatible with the Anthropic Agent Skills spec — root SKILL.md + frontmatter are identical. Content from open-source Skill libraries like anthropics/skills can be packaged and uploaded as-is.

References

快猫星云 联系方式 快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云