📦

langgraph

مخاطر متوسطة ⚡ يحتوي على سكربتات

使用 LangGraph 构建 AI 智能体

LangGraph 是一个用于构建有状态、多参与者 AI 应用程序的生产级框架。本技能帮助您设计具有可见图结构的智能体架构、管理复杂状态、实现循环和分支,并添加持久化功能以实现可恢复的对话。

يدعم: Claude Codex Code(CC)
⚠️ 65 ضعيف
1

تنزيل ZIP المهارة

2

رفع في Claude

اذهب إلى Settings → Capabilities → Skills → Upload skill

3

فعّل وابدأ الاستخدام

اختبرها

استخدام "langgraph". 创建带有工具的简单智能体

النتيجة المتوقعة:

这是一个基本的 LangGraph 智能体设置:

1. 使用 TypedDict 定义 AgentState
2. 使用 @tool 装饰器创建工具函数
3. 构建调用 LLM 和工具的智能体节点
4. 添加工具执行的条件边
5. 编译并运行图

智能体将在 LLM 和工具之间循环,直到不再调用工具,然后返回给用户。

استخدام "langgraph". 如何防止无限循环?

النتيجة المتوقعة:

在状态中使用最大迭代计数器:

1. 在状态中添加 'iterations' 字段
2. 创建 should_continue 函数检查迭代次数
3. 在智能体节点中递增计数器
4. 当迭代超过限制时返回 END

这确保智能体有清晰的退出条件,不会无限运行。

التدقيق الأمني

مخاطر متوسطة
v1 • 2/25/2026

The skill is a legitimate LangGraph documentation and assistance skill. One true positive was found: an eval() call in example code (line 67) that accepts user input without sanitization. This is documented example code showing tool implementation, but poses a risk if users copy this pattern. Multiple false positives were dismissed: Ruby/shell backtick execution (markdown code fences misinterpreted) and weak cryptographic algorithms (keyword matches on 'hash' in framework terminology).

1
الملفات التي تم فحصها
292
الأسطر التي تم تحليلها
4
النتائج
1
إجمالي عمليات التدقيق

مشكلات عالية المخاطر (1)

Dynamic Code Execution with eval()
The calculator tool example uses eval(expression) on line 67, which accepts user input without sanitization. This is a security risk if users copy this pattern for production code. However, this is example/demonstration code in documentation, not malicious runtime code.
مشكلات منخفضة المخاطر (2)
False Positive: Ruby/Shell Backtick Execution
Static scanner detected 'Ruby/shell backtick execution' at multiple lines. These are markdown code fences (```python) not actual Ruby code. The backticks are markdown syntax for code blocks.
False Positive: Weak Cryptographic Algorithm
Static scanner flagged 'Weak cryptographic algorithm' at multiple lines. These are false positives - the scanner matched on 'hash' keywords in 'checkpoint' and 'TypedDict' (Python typing) terminology, not actual cryptographic code.

عوامل الخطر

⚡ يحتوي على سكربتات (1)

الأنماط المكتشفة

eval() on User Input
تم تدقيقه بواسطة: claude

درجة الجودة

38
الهندسة المعمارية
100
قابلية الصيانة
87
المحتوى
50
المجتمع
51
الأمان
91
الامتثال للمواصفات

ماذا يمكنك بناءه

构建多步骤智能体工作流

创建能够推理、使用工具并在多次交互中维护对话上下文的智能体。

实现研究智能体系统

设计能够从多个来源收集信息、合并发现并生成综合报告的智能体。

创建有状态的聊天应用程序

构建能够记住对话历史并可从先前状态恢复的聊天应用程序。

جرّب هذه الموجهات

基础智能体设置
创建一个简单的 ReAct 风格智能体,使用 LangGraph 可以调用工具。演示如何定义状态、创建节点、设置边以及编译图。
状态管理
展示如何在 LangGraph 中使用 TypedDict 和自定义 reducer 管理复杂状态。我需要累加消息、合并来自多个节点的发现,并跟踪对话历史。
条件路由
帮我实现 LangGraph 中的条件分支。我需要根据查询类型(编码、搜索、聊天)将请求路由到不同的智能体,并适当处理响应。
持久化设置
为我的 LangGraph 智能体添加检查点功能,以便对话可以恢复。展示如何配置检查点器并在会话之间持久化状态。

أفضل الممارسات

  • 在路由函数中始终定义清晰的退出条件以防止无限循环
  • 正确使用 reducer - 使用 add_messages 进行累加,使用自定义函数进行复杂合并
  • 设计输入/输出模式以保持状态最小化,仅关注所需内容

تجنب

  • 在工具中对用户输入使用 eval() - 始终验证和清理任何用户提供的表达式
  • 创建不返回状态更新的无状态节点 - 这违背了 LangGraph 的目的
  • 使用包含不必要字段的巨大型单体状态 - 导致序列化开销和上下文膨胀

الأسئلة المتكررة

什么是 LangGraph?
LangGraph 是一个使用图结构构建有状态、多参与者 AI 应用程序的框架。它扩展了 LangChain,支持循环和持久化。
我需要 LLM API 密钥吗?
是的,LangGraph 需要访问 LLM API(OpenAI、Anthropic 等)才能让智能体运行。本技能提供架构;您需要提供 API 凭据。
LangGraph 能保存对话历史吗?
是的,LangGraph 支持使用各种后端(内存、SQLite、Postgres)进行检查点设置。这允许智能体从先前的状态恢复。
LangGraph 仅支持 Python 吗?
主要 SDK 是 Python。TypeScript/JavaScript SDK 存在,但处于早期开发阶段。
如何向智能体添加工具?
使用 langchain_core.tools 中的 @tool 装饰器定义工具。使用 bind_tools() 将它们绑定到 LLM,然后创建 ToolNode 来处理执行。
边和条件边有什么区别?
常规边以固定路径连接节点。条件边使用函数根据当前状态确定下一个节点。

تفاصيل المطور

المؤلف

sickn33

الترخيص

MIT

مرجع

main

بنية الملفات

📄 SKILL.md