Skip to main content
Skills are folders of instructions, scripts, and resources that agents can discover and use. Upload skills as ZIP files containing a SKILL.md with name and description.
Skills can also be auto-generated by the skill memory pipeline. See Skill Memory Quickstart.

Where to Find Skills

Skill ZIP Structure

my-skill.zip
├── SKILL.md          # Required: name, description, instructions
├── scripts/          # Optional: executable scripts
│   └── extract.py
└── resources/        # Optional: data files, templates
    └── template.json
The SKILL.md file must include frontmatter with name and description:
---
name: data-extraction
description: Extract structured data from documents
---

# Data Extraction Skill
Instructions for the agent...

Quick Start

1

Upload a skill

import os
from acontext import AcontextClient, FileUpload

client = AcontextClient(api_key=os.getenv("ACONTEXT_API_KEY"))

with open("my-skill.zip", "rb") as f:
    skill = client.skills.create(
        file=FileUpload(filename="my-skill.zip", content=f.read()),
        meta={"version": "1.0"}
    )
print(f"Created: {skill.name} ({skill.id})")
2

Browse catalog

catalog = client.skills.list_catalog()
for item in catalog.items:
    print(f"{item.name}: {item.description}")
3

Get skill details

skill = client.skills.get(skill_id)
for file_info in skill.file_index:
    print(f"{file_info.path} ({file_info.mime})")
4

Read files

result = client.skills.get_file(skill_id=skill.id, file_path="SKILL.md")
print(result.content.raw)

# Binary files return a URL instead
result = client.skills.get_file(skill_id=skill.id, file_path="images/diagram.png")
print(result.url)
5

Delete skill

client.skills.delete(skill.id)

Disk Storage

Each skill stores its files on an internal Disk. The disk_id is returned when you create or get a skill.
skill = client.skills.get(skill_id)
print(skill.disk_id)  # UUID of the backing Disk

Next Steps