Deepagents Setup Configuration
soba-labs/langchain-agent-skills
Initialize, validate, and troubleshoot Deep Agents projects in Python or JavaScript using the deepagents package.
Agent skill
by jeremylongshore in jeremylongshore/tons-of-skills-marketplace
Build a correct LangGraph 1.0 ReAct agent with createreactagent — typed tools, error propagation, recursion caps, and stop conditions that actually stop.
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill langchain-langgraph-agents -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install jeremylongshore/tons-of-skills-marketplace langchain-langgraph-agents --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/.curated/langchain-langgraph-agents .claude/skills/langchain-langgraph-agents && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "langchain-langgraph-agents" agent skill from https://github.com/jeremylongshore/tons-of-skills-marketplace/tree/main/skills/.curated/langchain-langgraph-agents into .claude/skills/langchain-langgraph-agents/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "langchain-langgraph-agents", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/jeremylongshore/tons-of-skills-marketplace/tree/main/skills/.curated/langchain-langgraph-agentsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill langchain-langgraph-agents -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install jeremylongshore/tons-of-skills-marketplace langchain-langgraph-agents --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/.curated/langchain-langgraph-agents .agents/skills/langchain-langgraph-agents && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "langchain-langgraph-agents" agent skill from https://github.com/jeremylongshore/tons-of-skills-marketplace/tree/main/skills/.curated/langchain-langgraph-agents into .agents/skills/langchain-langgraph-agents/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "langchain-langgraph-agents", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill langchain-langgraph-agents -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install jeremylongshore/tons-of-skills-marketplace langchain-langgraph-agents --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/.curated/langchain-langgraph-agents .cursor/skills/langchain-langgraph-agents && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "langchain-langgraph-agents" agent skill from https://github.com/jeremylongshore/tons-of-skills-marketplace/tree/main/skills/.curated/langchain-langgraph-agents into .cursor/skills/langchain-langgraph-agents/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "langchain-langgraph-agents", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/jeremylongshore/tons-of-skills-marketplace.git --path skills/.curated/langchain-langgraph-agents--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill langchain-langgraph-agents -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install jeremylongshore/tons-of-skills-marketplace langchain-langgraph-agents --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/.curated/langchain-langgraph-agents .gemini/skills/langchain-langgraph-agents && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "langchain-langgraph-agents" agent skill from https://github.com/jeremylongshore/tons-of-skills-marketplace/tree/main/skills/.curated/langchain-langgraph-agents into .gemini/skills/langchain-langgraph-agents/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "langchain-langgraph-agents", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install jeremylongshore/tons-of-skills-marketplace langchain-langgraph-agentsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill langchain-langgraph-agents -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/.curated/langchain-langgraph-agents .github/skills/langchain-langgraph-agents && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "langchain-langgraph-agents" agent skill from https://github.com/jeremylongshore/tons-of-skills-marketplace/tree/main/skills/.curated/langchain-langgraph-agents into .github/skills/langchain-langgraph-agents/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "langchain-langgraph-agents", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill langchain-langgraph-agents -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install jeremylongshore/tons-of-skills-marketplace langchain-langgraph-agents --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/.curated/langchain-langgraph-agents .opencode/skills/langchain-langgraph-agents && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "langchain-langgraph-agents" agent skill from https://github.com/jeremylongshore/tons-of-skills-marketplace/tree/main/skills/.curated/langchain-langgraph-agents into .opencode/skills/langchain-langgraph-agents/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "langchain-langgraph-agents", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
langchain-langgraph-agentsBuild a correct LangGraph 1.0 ReAct agent with createreactagent — typed tools, error propagation, recursion caps, and stop conditions that actually stop.
Langchain Langgraph Agents is an agent skill from jeremylongshore/tons-of-skills-marketplace. Build a correct LangGraph 1.0 ReAct agent with createreactagent — typed tools, error propagation, recursion caps, and stop conditions that actually stop. Use when writing a first tool-calling agent, migrating from AgentExecutor or initializeagent, or diagnosing an agent that loops on vague prompts. Trigger with "langgraph agent", "createreactagent", "langgraph tool calling", "AgentExecutor migration", or "agent loop cost".
Its SKILL.md is about 3.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including reference files (for example `references/agent-executor-migration.md`, `references/error-propagation.md` and `references/loop-caps-and-budgets.md`). Compatibility notes: Designed for Claude Code
It sits in AI & LLM Engineering, covering Building AI agents. It works with LangGraph, LangChain and React. The repository describes itself as: Model-agnostic agent-skills platform with a harness-free canonical layer, verified adapters, and the ccpi package manager. Explore at tonsofskills.com. The licence is MIT.
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit cfae287. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadWriteEditBash(python:*)From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
pipFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
langchain-ai.github.iopython.langchain.comblog.langchain.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
ANTHROPIC_API_KEYOPENAI_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Designed for Claude Code
From compatibility in the SKILL.md frontmatter.
Langchain Langgraph Agents loads about 3.7k tokens when it runs, and up to ~11k if it reads all its reference files. Until then it costs about 115 tokens; SKILL.md has 1,269 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from jeremylongshore/tons-of-skills-marketplace at commit cfae287, republished under its MIT licence (© jeremylongshore). 1,269 words, ~3,719 tokens.
.claude/skills/langchain-langgraph-agents/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.Two failure modes hit every team writing their first LangGraph 1.0 ReAct agent:
Loop-to-cap on vague prompts (P10). create_react_agent defaults to
recursion_limit=25. A prompt like "help me with my account" never converges —
the model calls a retrieval tool, gets irrelevant results, calls another tool,
and repeats until GraphRecursionError: Recursion limit of 25 reached without hitting a stop condition fires. Cost dashboards show the damage after the
fact: $5-$15 per runaway loop on Sonnet with a 3-tool agent, assuming no tool
is itself expensive.
Silent tool errors on legacy AgentExecutor (P09). The legacy executor
defaults handle_parsing_errors=True and catches tool exceptions, feeding the
error string back as the next observation. When the error serializes to empty
(e.g., a ValueError("") or an HTTP 500 with no body), the loop continues with
no signal. The agent says "I couldn't find the answer" — which was actually a
silent crash three tool calls ago.
This skill walks through defining typed tools with @tool + Pydantic; building
an agent with create_react_agent(model, tools, checkpointer=MemorySaver());
invoking with {"messages": [...]} and a thread-scoped config; setting
recursion_limit per expected agent depth (5-10 interactive, 20-30 planner);
adding middleware for a per-session token budget; and raise-by-default error
propagation. Pin: langgraph >= 1.0, < 2.0, langchain-core >= 1.0, < 2.0.
Pain-catalog anchors: P09, P10, P11, P32, P41, P42, P63.
langgraph >= 1.0, < 2.0 and langchain-core >= 1.0, < 2.0pip install langchain-anthropic or langchain-openailangchain-langgraph-basics (L25) — you already know StateGraph,
MessagesState, and checkpointersANTHROPIC_API_KEY or OPENAI_API_KEYfrom typing import Annotated
from pydantic import BaseModel, Field
from langchain_core.tools import tool
class LookupAccountArgs(BaseModel):
account_id: str = Field(..., description="Account UUID. No email addresses.")
@tool("lookup_account", args_schema=LookupAccountArgs)
def lookup_account(account_id: str) -> dict:
"""Fetch an account record by UUID. Returns status, plan, and owner email."""
if not account_id:
raise ValueError("account_id is required") # raised → agent sees real error
return {"id": account_id, "status": "active", "plan": "pro", "owner": "a@b.co"}Two rules that catch teams off-guard:
AgentExecutor, LangGraph's
create_react_agent does not silently swallow tool errors — the exception
propagates and surfaces in your observability layer. See Step 6.For async tools, use @tool on an async def — LangGraph invokes it via
await. For structured return types, annotate the return with a Pydantic model.
See Tool Definition Patterns for the
@tool vs tool() decision, async tools, and the args_schema vs
auto-inferred trade-off.
create_react_agentfrom langgraph.prebuilt import create_react_agent
from langgraph.checkpoint.memory import MemorySaver
from langchain_anthropic import ChatAnthropic
model = ChatAnthropic(
model="claude-sonnet-4-6",
temperature=0,
timeout=30,
max_retries=2,
)
agent = create_react_agent(
model=model,
tools=[lookup_account],
checkpointer=MemorySaver(), # required for stateful invocations
)create_react_agent is the LangGraph 1.0 replacement for the removed
initialize_agent factory (P41). Under the hood it builds a StateGraph with
a model node and a ToolNode, plus a conditional edge that routes to
END when the model emits no tool calls. The checkpointer persists state
per-thread — required for multi-turn conversations and for resuming after
interruption.
config = {"configurable": {"thread_id": "user-42"}}
result = agent.invoke(
{"messages": [{"role": "user", "content": "look up account uuid-abc"}]},
config=config,
)
print(result["messages"][-1].content)Key contracts:
{"messages": [...]} — a list of message dicts or LangChain
HumanMessage / SystemMessage objects. You append to this list across turns.thread_id scopes the checkpointer. Reusing it resumes the conversation.result["messages"] is the complete
message list; the final assistant message is at index -1.recursion_limit to your expected agent depthcreate_react_agent defaults to recursion_limit=25. In LangGraph one
"recursion step" is one node visit, and each tool round-trip is two visits
(model node + tool node), so 25 means ~12 tool calls. For most workloads this
is too generous and hides bugs:
| Agent kind | Suggested recursion_limit | Rationale |
|---|---|---|
| Interactive chat with 1-3 tools | 5-10 | One tool call + one final answer is 3 visits. Cap low to expose loops. |
| Task-completion (e.g., booking flow) | 10-15 | 3-5 tool calls + final answer. |
| Planner / research agent | 20-30 | Expect multiple retrieval + synthesis rounds. |
| Multi-agent supervisor | 40+ | Coordinator + worker rounds. Budget tokens separately. |
Apply it on invocation, not at construction time:
result = agent.invoke(
{"messages": [...]},
config={"configurable": {"thread_id": "user-42"}, "recursion_limit": 10},
)When the limit fires, LangGraph raises GraphRecursionError — catch it and
surface a user-facing message; do not retry without a cost guard.
recursion_limit alone does not bound cost. A single tool call that returns a
large document and triggers a long model response can cost more than 10 cheap
tool calls. Cap tokens explicitly:
from langchain_core.callbacks import BaseCallbackHandler
class TokenBudget(BaseCallbackHandler):
def __init__(self, max_tokens: int = 50_000):
self.used = 0
self.max = max_tokens
def on_llm_end(self, response, **kwargs):
usage = getattr(response, "llm_output", {}).get("token_usage", {}) or {}
self.used += usage.get("total_tokens", 0)
if self.used > self.max:
raise RuntimeError(f"Token budget exceeded: {self.used}/{self.max}")
budget = TokenBudget(max_tokens=50_000)
result = agent.invoke(
{"messages": [...]},
config={
"configurable": {"thread_id": "user-42"},
"recursion_limit": 10,
"callbacks": [budget],
},
)A per-session budget of 50K tokens on Sonnet is roughly $0.25 — a safe cap for interactive agents. For background planners raise to 200K-500K. See Loop Caps and Budgets for a repeated-tool-call early-stop node and a middleware pattern that terminates on the N-th identical call.
LangGraph's default is to raise. Legacy AgentExecutor(handle_parsing_errors=True)
swallowed everything. The new defaults are safer but different:
# Tool raises → the exception propagates out of agent.invoke()
try:
result = agent.invoke({"messages": [{"role": "user", "content": "..."}]}, config=config)
except ValueError as e:
# Your tool's own ValueError — log + user-facing message
...When you want tolerant behavior (e.g., the tool is a flaky third-party API and you want the model to try a different approach), wrap the tool itself:
from langchain_core.tools import tool
@tool
def search_kb(query: str) -> str:
"""Search the internal knowledge base. Returns hits or a 'no results' string."""
try:
return _real_search(query)
except HTTPError as e:
return f"search_kb unavailable: {e.response.status_code}. Try a different query."The key insight: the tool decides to degrade gracefully by returning a string the model can reason about. The agent never silently drops an error. See Error Propagation for a custom error-handler node that routes tool failures to a fallback tool.
create_react_agent vs custom StateGraph vs legacy| Decision | Use | Why |
|---|---|---|
| Single agent, tool-calling loop | create_react_agent | Correct defaults, provider-native tool calling, smallest code surface |
| Multi-stage pipeline (plan → execute → review) | Custom StateGraph | You need named nodes, explicit conditional edges, typed state |
| Multi-agent supervisor | create_supervisor + workers built with create_react_agent | Built-in routing, per-worker checkpointing |
| New code in 2026+ | Never use AgentExecutor or initialize_agent | Removed / deprecated in 1.0 (P41); shape changes in intermediate_steps (P42) |
For a single forced-tool single-shot (e.g., "always classify into one of these
buckets"), skip agents entirely: use model.bind_tools([Schema], tool_choice={"type": "tool", "name": "Schema"}). But never loop a forced
tool_choice (P63) — the model cannot emit stop_reason="end_turn" under
forced tool_choice, so the agent never terminates.
create_react_agent(model, tools, checkpointer=MemorySaver())@tool + Pydantic args_schema, docstrings under 1024 chars{"configurable": {"thread_id": ...}, "recursion_limit": N}TokenBudget callback enforces per-session cost ceilingcreate_react_agent vs custom StateGraph vs
supervisor vs legacy| Error | Cause | Fix |
|---|---|---|
GraphRecursionError: Recursion limit of 25 reached without hitting a stop condition | Vague prompt never converges; default cap too high (P10) | Lower recursion_limit to 5-10 interactive; add repeated-tool-call early-stop node |
ImportError: cannot import name 'initialize_agent' from 'langchain.agents' | Legacy 0.2 agent factory removed (P41) | from langgraph.prebuilt import create_react_agent |
AttributeError: 'ToolCall' object has no attribute 'tool' | Old code accessing step.tool on new intermediate step shape (P42) | Use step.tool_name (or step["name"] on dict form); check isinstance(step, ToolCall) |
| Agent says "couldn't find answer" but tool actually raised | Legacy AgentExecutor handle_parsing_errors=True silently swallowed exception (P09) | Migrate to create_react_agent; errors raise by default |
Agent loops when tool_choice={"type": "tool", "name": "X"} is set | Forced tool_choice blocks stop_reason="end_turn" (P63) | Use tool_choice="auto" for agent loops; reserve forced choice for one-shot calls |
Agent hallucinates a tool name like exec that is not in tools=[...] | Older free-text ReAct parser accepts any string (P32) | Use create_react_agent — it relies on provider-native tool calling; the allowlist is wire-enforced |
RuntimeError: Token budget exceeded | Your TokenBudget callback fired | Working as intended; raise the cap or shorten the agent's scope |
| Tool description truncated, model calls with wrong args | Docstring exceeded 1024-char cap (P11) | Shorten docstring; move examples into system prompt |
AgentExecutor agentBefore (LangChain 0.2):
from langchain.agents import initialize_agent, AgentType
agent = initialize_agent(
tools, llm, agent=AgentType.OPENAI_FUNCTIONS,
handle_parsing_errors=True, return_intermediate_steps=True,
)
result = agent.invoke({"input": "..."})
for action, observation in result["intermediate_steps"]:
print(action.tool, observation) # .tool attributeAfter (LangGraph 1.0):
from langgraph.prebuilt import create_react_agent
from langgraph.checkpoint.memory import MemorySaver
agent = create_react_agent(llm, tools, checkpointer=MemorySaver())
result = agent.invoke(
{"messages": [{"role": "user", "content": "..."}]},
config={"configurable": {"thread_id": "t1"}, "recursion_limit": 10},
)
# intermediate steps are now ToolMessage entries in the messages list
for m in result["messages"]:
if m.type == "tool":
print(m.name, m.content) # .name, not .toolSee AgentExecutor Migration for the
full before/after including handle_parsing_errors, return_intermediate_steps,
and max_iterations translations.
A customer-support agent with two tools, 10-step recursion cap, and a 30K token budget. See Loop Caps and Budgets for the full example with a repeated-tool-call early-stop node.
create_react_agent reference@tool decoratordocs/pain-catalog.md (entries P09, P10, P11, P32, P41, P42, P63)© jeremylongshore, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files (references) in skills/.curated/langchain-langgraph-agents of jeremylongshore/tons-of-skills-marketplace.
Open the folder on GitHubat commit cfae287
Langchain Langgraph Agents next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Langchain Langgraph Agents this skilljeremylongshore/tons-of-skills-marketplace | 2.8k | — | ~3.7k | Automated safety check: Pass | MIT | |
| Deepagents Setup Configurationsoba-labs/langchain-agent-skills | 107 | — | ~1.9k | Automated safety check: Pass | MIT | |
| Langchain Agentslangchain-ai/skills-benchmarks | 118 | — | ~2.5k | Automated safety check: Pass | MIT | |
| Langchain Langgraph Coding Assistant5zjk5/prompt-engineering | 127 | 1 repos | ~1.8k | Automated safety check: Pass | None | |
| Langgraphdavila7/claude-code-templates | 33k | 5 repos | ~1.9k | Automated safety check: Pass | MIT | |
| Langchain Architecturewshobson/agents | 40k | — | ~2k | Automated safety check: Pass | MIT |
soba-labs/langchain-agent-skills
Initialize, validate, and troubleshoot Deep Agents projects in Python or JavaScript using the deepagents package.
langchain-ai/skills-benchmarks
Build LangChain agents with modern patterns. An agent skill from langchain-ai/skills-benchmarks.
5zjk5/prompt-engineering
当用户需要编写LangChain或LangGraph相关代码时,提供基于示例代码的编码辅助,包括RAG、Agent、工作流、工具定义、中间件等多种功能模块的实现指导。
davila7/claude-code-templates
Expert in LangGraph - the production-grade framework for building stateful, multi-actor AI applications.
wshobson/agents
Design LLM applications using LangChain 1.x and LangGraph for agents, memory, and tool integration.
Magic-Resume/Magic-Resume
How AI agents integrate with Magic Resume — read and safely edit a user's resumes through the native MCP server (@magic-resume/mcp).
jeremylongshore/tons-of-skills-marketplace
Execute this skill enables AI assistant to conduct a security-focused code review using the security-agent plugin.
jeremylongshore/tons-of-skills-marketplace
Build this skill automates the adaptation of pre-trained machine learning models using transfer learning techniques.
jeremylongshore/tons-of-skills-marketplace
Execute proactive auto-loading: automatically detects and loads agents.md files.
jeremylongshore/tons-of-skills-marketplace
Aggregate and centralize performance metrics from applications, systems, databases, caches, and services.
jeremylongshore/tons-of-skills-marketplace
Execute this skill enables AI assistant to analyze capacity requirements and plan for future growth.
jeremylongshore/tons-of-skills-marketplace
Process use when you need to work with database indexing. An agent skill from jeremylongshore/tons-of-skills-marketplace.
Categories
Build a correct LangGraph 1.0 ReAct agent with createreactagent — typed tools, error propagation, recursion caps, and stop conditions that actually stop. Langchain Langgraph Agents is an agent skill from jeremylongshore/tons-of-skills-marketplace.0 ReAct agent with createreactagent — typed tools, error propagation, recursion caps, and stop conditions that actually stop.
Langchain Langgraph Agents fits situations like: writing a first tool-calling agent; migrating from AgentExecutor; initializeagent; diagnosing an agent that loops on vague prompts.
Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill langchain-langgraph-agents -a claude-code`. Or copy the skill folder (skills/.curated/langchain-langgraph-agents in jeremylongshore/tons-of-skills-marketplace) into .claude/skills/langchain-langgraph-agents in your project. Claude Code loads it when a task matches its description.
Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill langchain-langgraph-agents -a codex`. Or copy the skill folder (skills/.curated/langchain-langgraph-agents in jeremylongshore/tons-of-skills-marketplace) into .agents/skills/langchain-langgraph-agents in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill langchain-langgraph-agents -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/langchain-langgraph-agents, .gemini/skills/langchain-langgraph-agents, .github/skills/langchain-langgraph-agents and .opencode/skills/langchain-langgraph-agents in your project.
Going by SKILL.md and its folder, Langchain Langgraph Agents needs the command-line tools its instructions call (pip) and credentials named ANTHROPIC_API_KEY and OPENAI_API_KEY. Our summary lists: Python 3; A credential in ANTHROPIC_API_KEY; A credential in OPENAI_API_KEY. Its frontmatter pre-approves these tools: Read, Write, Edit, Bash(python:*). Compatibility (from SKILL.md): Designed for Claude Code.
SKILL.md names 3 domains. As links in the text: langchain-ai.github.io, python.langchain.com and blog.langchain.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Langchain Langgraph Agents is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.7k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 7k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Langchain Langgraph Agents: Deepagents Setup Configuration (soba-labs/langchain-agent-skills, 107 stars), Langchain Agents (langchain-ai/skills-benchmarks, 118 stars), Langchain Langgraph Coding Assistant (5zjk5/prompt-engineering, 127 stars) and Langgraph (davila7/claude-code-templates, 33k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
jeremylongshore (a GitHub user) maintains it in jeremylongshore/tons-of-skills-marketplace, which has 2,827 GitHub stars. The repository holds 3,342 skills in this directory. The repository was last updated on October 10, 2026.
Source: jeremylongshore/tons-of-skills-marketplace on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.