Habilidades langgraph
📦

langgraph

Riesgo medio ⚡ Contiene scripts

Construir Agentes AI con LangGraph

LangGraph es un framework de grado de producción para construir aplicaciones AI con estado y múltiples actores. Esta skill te ayuda a diseñar arquitecturas de agentes con estructuras de grafos visibles, gestionar estados complejos, implementar ciclos y ramas, y añadir persistencia para conversaciones reanudables.

Soporta: Claude Codex Code(CC)
⚠️ 63 Deficiente
1

Descargar el ZIP de la skill

2

Subir en Claude

Ve a Configuración → Capacidades → Skills → Subir skill

3

Activa y empieza a usar

Pruébalo

Usando "langgraph". Create a simple agent with tools

Resultado esperado:

Aquí tienes una configuración básica de agente LangGraph:

1. Define AgentState con TypedDict
2. Crea funciones de herramienta con el decorador @tool
3. Construye el nodo del agente que llama al LLM con herramientas
4. Añade aristas condicionales para ejecución de herramientas
5. Compila y ejecuta el grafo

El agente will循环 entre el LLM y las herramientas hasta que no se llamen más herramientas, luego vuelve al usuario.

Usando "langgraph". How do I prevent infinite loops?

Resultado esperado:

Usa un contador de iteraciones máximas en tu estado:
1. Añade el campo 'iterations' a tu estado
2. Crea una función should_continue que verifique las iteraciones
3. Incrementa el contador en tu nodo de agente
4. Retorna END cuando las iteraciones excedan el límite

Esto asegura que tu agente tenga una condición de salida clara y no se ejecute infinitamente.

Auditoría de seguridad

Riesgo medio
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
Archivos escaneados
292
Líneas analizadas
4
hallazgos
1
Auditorías totales

Problemas de riesgo alto (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.
Problemas de riesgo bajo (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.

Factores de riesgo

⚡ Contiene scripts (1)

Patrones detectados

eval() on User Input
Auditado por: claude

Puntuación de calidad

38
Arquitectura
100
Mantenibilidad
87
Contenido
33
Comunidad
51
Seguridad
91
Cumplimiento de la especificación

Lo que puedes crear

Construir Flujos de Trabajo de Agentes Multi-Paso

Crear agentes que pueden razonar, usar herramientas y mantener contexto de conversación a través de múltiples interacciones.

Implementar Sistemas de Agentes de Investigación

Diseñar agentes que pueden recopilar información de múltiples fuentes, fusionar hallazgos y producir informes sintetizados.

Crear Aplicaciones de Chat con Estado

Construir aplicaciones de chat que recuerdan el historial de conversación y pueden reanudar desde estados anteriores.

Prueba estos prompts

Configuración Básica del Agente
Crea un agente estilo ReAct simple usando LangGraph que pueda llamar herramientas. Muéstrame cómo definir el estado, crear nodos, configurar aristas y compilar el grafo.
Gestión de Estado
Muéstrame cómo gestionar estado complejo en LangGraph usando TypedDict y reductores personalizados. Quiero acumular mensajes, fusionar hallazgos de múltiples nodos y rastrear el historial de conversación.
Enrutamiento Condicional
Ayúdame a implementar ramificación condicional en LangGraph. Necesito enrutar consultas a diferentes agentes según su tipo (codificación, búsqueda, chat) y manejar las respuestas apropiadamente.
Configuración de Persistencia
Añade checkpointing a mi agente LangGraph para que las conversaciones puedan ser reanudadas. Muéstrame cómo configurar un checkpointer y persistir el estado entre sesiones.

Mejores prácticas

  • Siempre define condiciones de salida claras en tus funciones de enrutamiento para prevenir bucles infinitos
  • Usa reductores apropiadamente - add_messages para acumulación, funciones personalizadas para fusión compleja
  • Diseña esquemas de entrada/salida para mantener el estado mínimo y enfocado en lo necesario

Evitar

  • Usar eval() en entrada de usuario en herramientas - siempre valida y sanitiza cualquier expresión proporcionada por el usuario
  • Crear nodos sin estado que no retornan actualizaciones de estado - defeat el propósito de LangGraph
  • Usar estado monolítico gigante con campos innecesarios - causa overhead de serialización y inflado de contexto

Preguntas frecuentes

¿Qué es LangGraph?
LangGraph es un framework para construir aplicaciones AI con estado y múltiples actores usando estructuras de grafos. Extiende LangChain con soporte para ciclos y persistencia.
¿Necesito una clave API de LLM?
Sí, LangGraph requiere acceso a una API de LLM (OpenAI, Anthropic, etc.) para que el agente funcione. La skill proporciona la arquitectura; tú proporcionas las credenciales de API.
¿Puede LangGraph guardar el historial de conversación?
Sí, LangGraph soporta checkpointing con varios backends (Memory, SQLite, Postgres). Esto permite a los agentes reanudar desde estados anteriores.
¿LangGraph es solo Python?
El SDK principal es Python. Existe un SDK de TypeScript/JavaScript pero está en etapas tempranas de desarrollo.
¿Cómo añado herramientas a mi agente?
Define herramientas usando el decorador @tool de langchain_core.tools. Vinculaarlas a tu LLM con bind_tools(), luego crea un ToolNode para manejar la ejecución.
¿Cuál es la diferencia entre aristas y aristas condicionales?
Las aristas regulares conectan nodos en una ruta fija. Las aristas condicionales usan una función para determinar a qué nodo ir a continuación basándose en el estado actual.

Detalles del desarrollador

Estructura de archivos

📄 SKILL.md