Skip to main content

Langchain adapters to support skills in your agent

Project description

Langchain Skills Adapters

Langchain adapters to support skills in your agent.

Features

Installation

uv:

uv add langchain-skills-adapters

pip:

pip install langchain-skills-adapters

Skills Format

The skill directory must be in the following format to be loaded correctly:

skills/
├── skill-name/
│   ├── SKILL.md        # Required: instructions + metadata
│   ├── scripts/        # Optional: executable code
│   ├── references/     # Optional: documentation
│   ├── assets/         # Optional: templates, resources
│   └── ...             # Any other additional files or directories        
└── other skills...

Skills must follow the Anthropic Open Standard for Skills. This includes having frontmatter with at minimum the name and skill description.

---
name: My Skill
description: This is my skill
---

# My Skill

Skill content

Usage

As a Tool

The SkillsTool creates a Langchain tool that can be used by your agent to activate a skill. The description of the skills tool contains names and descriptions of all available skills from your skill directory. This way, your agent will always see what skills are available to it before acting, and can use the tool to activate a skill and read its full content.

If your skills directory contains resource files (such as scripts, assets, etc.), you can add a ReadFileTool to enable your agent to read these files.

from langchain.agents import create_agent
from langchain_community.tools.file_management.read import ReadFileTool

from langchain_skills_adapters import SkillsTool

# Create the SkillsTool pointed to your skills directory
skills_dir = "/path/to/skills/"
skills_tool = SkillsTool(skills_dir)

# Optional: Add a file reading tool. Recommended if your agent needs to read resources from your skills directory (scripts, assets, etc.)
read_file_tool = ReadFileTool(root_dir=skills_dir)

# Create the agent
tools = [skills_tool, read_file_tool]
agent = create_agent("openai:gpt-5", tools=tools)
response = agent.invoke(input={"messages": {"role": "user", "content": "What skills do you have?"}})

As Middleware

The SkillsMiddleware is a Langchain middleware that adds skill info to your agent's system prompt before each model call. It also adds a skills_file_read tool to your agent's tool list, allowing it to read skill files and other resources from your skills directory. This way, your agent will always see what skills are available to it before acting, and can use the tool to read skill files and other resource files.

from langchain.agents import create_agent

from langchain_skills_adapters import SkillsMiddleware

# Create the SkillsTool pointed to your skills directory
skills_dir = "/path/to/skills/"
skills_middleware = SkillsMiddleware(skills_dir)

# Create the agent
agent = create_agent("openai:gpt-5", middleware=[skills_middleware])
response = agent.invoke(input={"messages": {"role": "user", "content": "What skills do you have?"}})

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

langchain_skills_adapters-0.1.4.tar.gz (9.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

langchain_skills_adapters-0.1.4-py3-none-any.whl (13.1 kB view details)

Uploaded Python 3

File details

Details for the file langchain_skills_adapters-0.1.4.tar.gz.

File metadata

File hashes

Hashes for langchain_skills_adapters-0.1.4.tar.gz
Algorithm Hash digest
SHA256 1de9307ce8ea665738f0e0eaed4c6c7538bbe30313209f6574083c22230a9c9d
MD5 b7b977b75549c906657999bcf997e554
BLAKE2b-256 f5e79a662daf3ba796a70b87cf796ccb150d1db62ea9145db0aeafd2ae46e3c1

See more details on using hashes here.

File details

Details for the file langchain_skills_adapters-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for langchain_skills_adapters-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 26d4c70e42c60b8a3e5c53dfd9e8a92e33df4e0bcc12d0ad6a7a757d8788a2d7
MD5 dea87922ca10b59e219c163ee2691bc3
BLAKE2b-256 4e5e86ef6a5141bb6a3a8b169b5330b7a543275f3d5e401346e2d42b4c2d5a8f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page