SkillManifest class final
One parsed skill frontmatter.
Constructors
-
SkillManifest({String? description, String? whenToUse, String? argumentHint, List<
String> arguments = const [], bool disableModelInvocation = false, bool userInvocable = true, List<String> allowedTools = const [], List<String> disallowedTools = const [], String? model, String? effort, bool contextFork = false, String? agent, bool background = true, List<String> paths = const [], String? shell, String? license, String? compatibility, Map<String, Object?> metadata = const {}, List<String> applyTo = const [], String? excludeAgent, List<String> notes = const [], List<String> operative = const []}) -
const
-
SkillManifest.fromFrontmatter(Map<
String, Object?> frontmatter, {String skillName = ''}) -
Parses one frontmatter map (from
parseFrontmatterTyped).factory
Properties
- agent → String?
-
Claude's
agent: the subagent type to use with contextFork.final -
allowedTools
→ List<
String> -
Agent Skills spec
allowed-tools: tool names the skill may use without a prompt during the invoking turn. Pattern entries (Bash(git status:*)) are kept verbatim but only plain tool names take effect (see plainAllowedTools).final -
applyTo
→ List<
String> -
Copilot instructions
applyToglob list (path-specific activation).final - argumentHint → String?
-
Claude's
argument-hint(autocomplete placeholder).final -
arguments
→ List<
String> -
Claude's
arguments— named positional args for$namesubstitution.final - background → bool
-
Claude's
background(only with contextFork):falsewaits for the forked subagent's result in the invoking turn. Default true.final - catalogDescription → String?
-
The catalog description:
descriptionplus Claude'swhen_to_useappended (Claude concatenates both into the listing, capped at 1536 chars; we keep the same concatenation, the host applies its budget).no setter - compatibility → String?
-
Agent Skills spec
compatibility(≤500 chars per spec; not enforced).final - contextFork → bool
-
Claude's
context: fork— run the skill body as a subagent prompt.final - description → String?
-
Frontmatter
description(null → the host falls back to the first non-empty body line).final - disableModelInvocation → bool
-
Claude's
disable-model-invocation: only the user may run it.final -
disallowedTools
→ List<
String> -
Claude's
disallowed-tools: tools removed while the skill is active (turn-scoped deny).final - effort → String?
-
Claude's
effortoverride (low/medium/high/…). Parsed but only informational until a provider mapping exists.final - excludeAgent → String?
-
Copilot instructions
excludeAgent(code-review/cloud-agent).final - hashCode → int
-
The hash code for this object.
no setterinherited
- license → String?
-
Agent Skills spec
license.final -
metadata
→ Map<
String, Object?> -
Agent Skills spec
metadata(free-form map, host tooling only).final - model → String?
-
Claude/Copilot
model: a model id or role hint for the invoking turn.final -
notes
→ List<
String> -
Non-fatal parse notes (unknown keys, pattern-only tool grants, …).
final
-
operative
→ List<
String> -
gh-1409
operative: the skill's compaction-pinned directive lines. Each entry is ONE self-contained imperative line (one line = one rule); lines ride every compaction fold verbatim viaSkillOperativePins(seeoperative_pins.dart). A skill without the key pins nothing — downstream behavior is bit-identical. Lines over operativeLineMaxChars are rejected at parse time with a note (E4: an operative line nobody rereads is not operative).final -
paths
→ List<
String> -
Claude's
pathsglob activation list.final -
plainAllowedTools
→ List<
String> -
allowedTools entries that are plain tool names (no pattern suffix) —
the only ones our per-tool approval gate can honor today.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- shell → String?
-
Claude's
shellfor injected commands (bash/powershell).final - userInvocable → bool
-
Claude's
user-invocable: false: only the model may load it.final - whenToUse → String?
-
Claude's
when_to_use— extra trigger hints appended to the description in catalog listings.final
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Constants
- empty → const SkillManifest
- An empty manifest (skill file without frontmatter).