К основному содержанию
скилл CX Codex

langchain-development — скилл для Claude Code: LangChain и LangGraph

Задаёт агенту правила разработки на LangChain и LangGraph: композиция цепочек, агенты, память, RAG. Пригодится, когда проект на Python растёт и код надо держать в одном стиле.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add Mindrally/skills --skill langchain-development -a claude-code
Открыть на GitHub

Что делает langchain-development

Скилл превращает ассистента в эксперта по LangChain, LangGraph и приложениям на LLM с Python. Он требует писать короткие технические ответы с рабочими примерами на Python, держаться функционального и декларативного стиля и обходиться без классов там, где можно. Имена переменных — описательные, с вспомогательными глаголами вроде is_active или has_context, стиль — строго PEP 8.

Внутри — набор правил по структуре проекта и по ключевым частям стека. Код раскладывается по папкам chains/, agents/, tools/, memory/, prompts/, retrievers/, callbacks/, utils/, tests/ и config/. Для композиции цепочек скилл настаивает на LCEL с оператором |, для одиночных вызовов — invoke(), для пачки входов — batch(), для потоковой выдачи — stream(). Отдельные блоки посвящены инструментам через декоратор @tool со схемой на Pydantic, памяти разговора, состоянию LangGraph на TypedDict с редьюсерами и чекпоинтами, а также RAG: сплиттеры, размер чанка с перекрытием, векторные хранилища, multi-query и реранкинг.

Есть разделы про LangSmith, обработку ошибок и тесты. Трассировка включается переменной LANGCHAIN_TRACING_V2=true, для критичных путей предлагаются fallback-цепочки, для I/O — асинхронные методы ainvoke и abatch. Скилл рассчитывает на установленные langchain, langchain-core, langchain-community, langgraph, langsmith, python-dotenv и pydantic — без них примеры из правил просто не запустятся.

Какие задачи решает

  • собрать цепочку из ретривера, промпта и модели через LCEL
  • описать инструмент агента со схемой аргументов на Pydantic
  • вынести состояние графа LangGraph в TypedDict с редьюсерами
  • настроить разбиение документов на чанки с перекрытием для RAG
  • включить трассировку LangSmith и разложить код по модулям

Примеры запросов агенту

  • Собери retrieval-цепочку на LCEL: ретривер, промпт, модель, парсер вывода
  • Опиши инструмент поиска по базе через @tool со схемой на Pydantic
  • Задай состояние агента в LangGraph через TypedDict и добавь чекпоинты

Как установить langchain-development

1Через Skills CLI (Vercel)

npx skills add Mindrally/skills --skill langchain-development -a claude-code

2Вручную: положить файлы

~/.claude/skills/langchain-development/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/langchain-development/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о langchain-development

Как установить langchain-development в Claude?

Выполните npx skills add Mindrally/skills --skill langchain-development -a claude-code. Файл скилла окажется в ~/.claude/skills/langchain-development/SKILL.md.

Что делает langchain-development?

Даёт агенту правила разработки на LangChain и LangGraph с Python: композиция цепочек, агенты и инструменты, память, состояние графа, RAG, трассировка и тесты.

Что нужно для работы скилла?

Правила опираются на пакеты langchain, langchain-core, langchain-community, langgraph, langsmith, python-dotenv и pydantic. Без них примеры из скилла не запустятся.

Исходный текст

SKILL.md · Apache-2.0
---
name: langchain-development
description: Expert guidance for LangChain and LangGraph development with Python, covering chain composition, agents, memory, and RAG implementations.
metadata:
  maintainer: Mindrally
  source: https://github.com/Mindrally/skills
---

# LangChain Development

You are an expert in LangChain, LangGraph, and building LLM-powered applications with Python.

## Key Principles

- Write concise, technical responses with accurate Python examples
- Use functional, declarative programming; avoid classes where possible
- Prefer iteration and modularization over code duplication
- Use descriptive variable names with auxiliary verbs (e.g., is_active, has_context)
- Follow PEP 8 style guidelines strictly

## Code Organization

### Directory Structure

Organize code into logical modules based on functionality:

```
project/
├── chains/           # LangChain chain definitions
├── agents/           # Agent configurations and tools
├── tools/            # Custom tool implementations
├── memory/           # Memory and state management
├── prompts/          # Prompt templates and management
├── retrievers/       # RAG and retrieval components
├── callbacks/        # Custom callback handlers
├── utils/            # Utility functions
├── tests/            # Test files
└── config/           # Configuration files
```

### Naming Conventions

- Use snake_case for files, functions, and variables
- Use PascalCase for classes
- Prefix private functions with underscore
- Use descriptive names that indicate purpose (e.g., `create_retrieval_chain`, `build_agent_executor`)

## LangChain Expression Language (LCEL)

### Chain Composition

- Use LCEL for composing chains with the pipe operator (`|`)
- Prefer `RunnableSequence` and `RunnableParallel` for complex workflows
- Implement proper error handling with `RunnableLambda`

```python
from langchain_core.runnables import RunnableParallel, RunnablePassthrough

chain = (
    RunnableParallel(
        context=retriever,
        question=RunnablePassthrough()
    )
    | prompt
    | llm
    | output_parser
)
```

### Best Practices

- Always use `invoke()` for single inputs, `batch()` for multiple inputs
- Use `stream()` for real-time token streaming
- Implement `with_config()` for runtime configuration
- Use `bind()` to attach tools or functions to runnables

## Agents and Tools

### Tool Development

- Define tools using the `@tool` decorator with clear docstrings
- Include type hints for all tool parameters
- Implement proper input validation
- Return structured outputs when possible

```python
from langchain_core.tools import tool
from pydantic import BaseModel, Field

class SearchInput(BaseModel):
    query: str = Field(description="Search query string")

@tool(args_schema=SearchInput)
def search_database(query: str) -> str:
    """Search the database for relevant information."""
    # Implementation
    return results
```

### Agent Configuration

- Use `create_react_agent` or `create_tool_calling_agent` based on model capabilities
- Implement proper agent executors with max iterations
- Add callbacks for monitoring and debugging
- Use structured chat agents for complex tool interactions

## Memory and State Management

### Conversation Memory

- Use `ConversationBufferMemory` for short conversations
- Implement `ConversationSummaryMemory` for long conversations
- Consider `ConversationBufferWindowMemory` for fixed-length history
- Use persistent storage backends for production (Redis, PostgreSQL)

### LangGraph State

- Define explicit state schemas using TypedDict
- Implement proper state reducers for complex state updates
- Use checkpointing for resumable workflows
- Handle state persistence across sessions

```python
from typing import TypedDict, Annotated
from langgraph.graph import StateGraph
from operator import add

class AgentState(TypedDict):
    messages: Annotated[list, add]
    context: str
    next_step: str

graph = StateGraph(AgentState)
```

## RAG (Retrieval-Augmented Generation)

### Document Processing

- Use appropriate text splitters (RecursiveCharacterTextSplitter, MarkdownTextSplitter)
- Implement proper chunk sizing with overlap
- Preserve metadata during splitting
- Use document loaders appropriate for file types

### Vector Stores

- Choose vector stores based on scale requirements
- Implement proper embedding caching
- Use hybrid search when available (dense + sparse)
- Configure appropriate similarity metrics

### Retrieval Strategies

- Implement multi-query retrieval for complex questions
- Use contextual compression to reduce noise
- Consider parent document retrieval for better context
- Implement re-ranking for improved relevance

## LangSmith Integration

### Monitoring

- Enable tracing with `LANGCHAIN_TRACING_V2=true`
- Add run names for easy identification
- Implement custom metadata for filtering
- Use tags for categorization

### Debugging

- Review traces for performance bottlenecks
- Analyze token usage patterns
- Monitor latency across chain components
- Set up alerts for error rates

## Error Handling

- Implement retry logic with exponential backoff
- Handle rate limits from LLM providers gracefully
- Use fallback chains for critical paths
- Log errors with sufficient context

```python
from langchain_core.runnables import RunnableWithFallbacks

chain_with_fallback = primary_chain.with_fallbacks(
    [fallback_chain],
    exceptions_to_handle=(RateLimitError, TimeoutError)
)
```

## Performance Optimization

- Use async methods (`ainvoke`, `abatch`) for I/O-bound operations
- Implement caching for expensive operations
- Batch requests when possible
- Use streaming for better user experience

## Testing

- Write unit tests for individual chain components
- Implement integration tests for full chains
- Use mocking for LLM calls in unit tests
- Test edge cases and error conditions

## Dependencies

- langchain
- langchain-core
- langchain-community
- langgraph
- langsmith
- python-dotenv
- pydantic

© Mindrally · Apache-2.0 · Mindrally/skills

Похожие скиллы

Всё по теме «ИИ и ML» →
langchain-architecture Seth Hobson Скилл помогает проектировать LLM-приложения на LangChain 1.x и LangGraph: агентов, память, состояние и вызов инструментов. Нужен для сложных AI-воркфлоу. CX Codex 13 150установок langchain-python официальный github Правило для GitHub Copilot, которое подсказывает агенту паттерны LangChain: Runnable, LCEL, чат-модели, ретриверы и векторные хранилища. Пригодится, если вы пишете на Python с LangChain. ★ 40 418звёзд репо langchain-dev-guide ob-labs Справочник по типичным сбоям в LangChain и LangGraph: симптом, причина, решение. Пригодится, когда агент ведёт себя не так, как ожидалось. CX Codex +1 836установок migrating-langchain-to-pydantic-ai pydantic Скилл для переноса Python-приложений с LangChain, LangGraph и Deep Agents на Pydantic AI. Пригодится, когда нужно сохранить поведение, а не форму фреймворка. CX Codex +1 314установок langchain-orchestration manutej Скилл-справочник по LangChain: цепочки, агенты, память, RAG и оркестрация. Пригодится, когда агент пишет код на LangChain и нужно, чтобы он держался рабочих паттернов. CX Codex +1 451установок langchain-fundamentals langchain-ai Помогает писать агентов LangChain через create_agent(), описывать инструменты и добавлять middleware. Пригодится для состояния диалога, подтверждений действий и обработки ошибок. CX Codex +1 17 400установок

Из того же набора168

micronaut Задаёт агенту конвенции Micronaut: DI на этапе компиляции, нативные сборки GraalVM, реактивные сервисы. Пригодится, когда проект на Java и хочется, чтобы кодогенерация шла по фреймворку, а не наугад. CX Codex +1 687установок julia Задаёт агенту стиль кода на Julia: мультиметоды, типы, тесты и оптимизацию производительности. Пригодится, если пишете научные расчёты или численные библиотеки. CX Codex +1 687установок clerk-authentication Правила подключения Clerk в Next.js: middleware, хуки, защита серверных действий и маршрутов API. Пригодится, когда проект уже на Clerk и нужен порядок в проверках доступа. CX Codex +1 683установок nx Скилл задаёт агенту правила работы с Nx: структура apps и libs, теги, границы модулей, генераторы и кэш. Пригодится, если проект уже собран на Nx. CX Codex +1 682установок apollo-graphql Скилл задаёт агенту правила работы с Apollo Client: запросы, мутации, фрагменты, кэш и оптимистичные обновления в React-проектах на GraphQL. CX Codex +1 677установок monorepo-tamagui Задаёт агенту правила разработки кросс-платформенного монорепо на Tamagui, Turbo, Next.js, Expo и Supabase. Пригодится, когда в одном репозитории живут веб и мобильное приложение. CX Codex +1 677установок swiftui-development Набор правил для ИИ-агента: как строить SwiftUI-приложения на MVVM, управлять состоянием и работать с конкурентностью Swift 6. CX Codex +1 676установок react-native-cursor-rules Набор правил React Native для ИИ-агента: TypeScript, функциональные компоненты, оптимизация ререндеров и FlatList. Пригодится, когда агент пишет код для мобильного приложения. CX Codex +1 670установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой