Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/codeblockz/langchain-community-plugin/langgraphnpx skills add Codeblockz/langchain-community-plugin --skill langgraphgit clone --depth 1 https://github.com/Codeblockz/langchain-community-pluginWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00060 | $0.01314 |
| Opus 5 | $0.00030 | $0.00657 |
| Sonnet 5 | $0.00012 | $0.00263 |
| Haiku 4.5 | $0.00006 | $0.00131 |
Grade A, and why
langgraph scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 177 lines — stays where its author put it; the contents beside it link to each section on GitHub.
LangGraph Agent Builder
Quick Decision: Which API?
Use create_agent when... |
Use StateGraph when... |
|---|---|
| Building standard tool-calling agents | Need custom node logic or routing |
| Want middleware (HITL, guardrails) | Building multi-agent systems |
| Prefer minimal boilerplate | Need fine-grained state control |
| Standard ReAct pattern suffices | Complex conditional workflows |
create_agent Quick Start
from langchain.agents import create_agent
from langchain.tools import tool
from langgraph.checkpoint.memory import InMemorySaver
@tool
def search(query: str) -> str:
"""Search for information."""
return f"Results for: {query}"
agent = create_agent(
model="claude-sonnet-4-5-20250929",
tools=[search],
system_prompt="You are a helpful assistant.",
checkpointer=InMemorySaver(), # Required for memory/HITL
)
# Invoke with thread_id for conversation memory
result = agent.invoke(
{"messages": [{"role": "user", "content": "Search for LangGraph docs"}]},
config={"configurable": {"thread_id": "user-123"}}
)
StateGraph Quick Start
from typing import Annotated
from typing_extensions import TypedDict
from langchain.messages import AnyMessage
from langchain.chat_models import init_chat_model
from langchain.tools import tool
from langgraph.graph import StateGraph, START, END
from langgraph.graph.message import add_messages
from langgraph.checkpoint.memory import InMemorySaver
# 1. Define state - MUST be TypedDict
class State(TypedDict):
messages: Annotated[list[AnyMessage], add_messages] # Reducer appends
# 2. Define tools
@tool
def multiply(a: int, b: int) -> int:
"""Multiply two numbers."""
return a * b
tools = [multiply]
model = init_chat_model("claude-sonnet-4-5-20250929").bind_tools(tools)
# 3. Define nodes
def call_model(state: State):
return {"messages": [model.invoke(state["messages"])]}
def call_tools(state: State):
from langchain.messages import ToolMessage
last = state["messages"][-1]
results = []
for tc in last.tool_calls:
tool_fn = {t.name: t for t in tools}[tc["name"]]
results.append(ToolMessage(content=str(tool_fn.invoke(tc["args"])), tool_call_id=tc["id"]))
return {"messages": results}
# 4. Define routing
def should_continue(state: State):
if state["messages"][-1].tool_calls:
return "tools"
return END
# 5. Build graph
graph = (
StateGraph(State)
.add_node("model", call_model)
.add_node("tools", call_tools)
.add_edge(START, "model")
.add_conditional_edges("model", should_continue, ["tools", END])
.add_edge("tools", "model")
.compile(checkpointer=InMemorySaver())
)
What ships with it
5 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 177 lines · 60 tokens per session scan A 370f4a229eaa
langgraph is a skill published in the GitHub repository Codeblockz/langchain-community-plugin (3 stars, last pushed 7mo ago), licensed Apache-2.0. It adds 60 tokens to every session and 1,314 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
skill-creator
Guide for creating effective skills that extend agent capabilities with specialized knowledge, workflows, or tool integrations. Use this skill when the user asks to: (1) create a new skill, (2) make a skill, (3) build a skill, (4) set up a skill, (5) initialize a skill, (6) scaffold a skill, (7) update or modify an…
blog_creator
创作高质量的技术博客文章。擅长将复杂的技术概念转化为通俗易懂的内容,结构清晰,案例丰富,适合不同层次的技术读者。.
skill-creator
Guide for creating effective skills that extend DAIV agent with specialized knowledge, workflows, or tool integrations. Use this skill when the user wants to create a new skill, update an existing skill, or get guidance on skill design patterns.
data-visualization
Use for creating publication-quality charts and multi-panel analysis summaries. Triggers when tasks involve visualizing data, plotting results, creating charts, or producing visual reports from analysis output.
cuml-machine-learning
Use for GPU-accelerated machine learning on tabular data using NVIDIA cuML. Triggers when tasks involve classification, regression, clustering, dimensionality reduction, or model training on datasets.
blog-post
Writes and structures long-form blog posts, creates tutorial outlines, and optimizes content for SEO with cover image generation. Use when the user asks to write a blog post, article, how-to guide, tutorial, technical writeup, thought leadership piece, or long-form content.