Skip to content

AgentSkills Overview

AgentSkills are portable skill folders — a SKILL.md with instructions plus optional scripts, references, and assets. AgentSkillStepDescription runs one as a chain step.

from mmar_carl import AgentSkillStepDescription, AgentSkillStepConfig, AgentSkillExecutionMode
AgentSkillStepDescription(
number=1,
title="Extract PDF text",
config=AgentSkillStepConfig(
skill="github://anthropics/skills/skills/pdf@main",
task="Extract the text from {pdf_path} and summarise it.",
execution_mode=AgentSkillExecutionMode.LLM_AGENT,
input_mapping={"pdf_path": "$memory.input.pdf_path"},
),
)

The skill field accepts a URI string (or an AgentSkillSource) — see resolvers:

FormExample
GitHub tarballgithub://anthropics/skills/skills/pdf@main
Local path/path/to/skill
Python packagemodule://my_pkg.skills.pdf
Skill namepdf (searched in ~/.agents/skills/, ./.claude/skills/, …)
ModeBehaviour
LLMSKILL.md as a system prompt; a single LLM call (default).
SCRIPTRun a bundled script directly; no LLM call.
HYBRIDScript first, LLM fallback.
SUBAGENTScript collects data, LLM synthesises.
LLM_AGENTIterative tool-calling loop: the LLM calls run_script / read_file / write_file / list_resources until it has a final answer; workspace-isolated.
FieldDefaultPurpose
skill—Skill URI / source.
task—The task text (supports {placeholders} from input_mapping).
execution_modeLLMOne of the modes above.
input_mapping{}Inputs (also staged as files in LLM_AGENT mode).
output_memory_keyNoneWhere to store the result.
llm_max_iterations—Max tool-call rounds in LLM_AGENT mode.
output_capture—"stdout" / "files" / "both".
filter_security_termsTrueStrip password/encrypt sections from the LLM prompt.
extra_pip[]Packages installed before running scripts.

See sandboxing for runtime, trust_policy, and the LLM_AGENT workspace.