aws-agentcore-langgraph

Deploy production LangGraph agents on AWS Bedrock AgentCore. Use for (1) multi-agent systems with orchestrator and specialist agent patterns, (2) building stateful agents with persistent cross-session memory, (3) connecting external tools via AgentCore Gateway (MCP, Lambda, APIs), (4) managing shared context across distributed agents, or (5) deploying complex agent ecosystems via CLI with production observability and scaling.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "aws-agentcore-langgraph" with this command: npx skills add killerapp/aws-agentcore-langgraph

AWS AgentCore + LangGraph

Multi-agent systems on AWS Bedrock AgentCore with LangGraph orchestration. Source: https://github.com/aws/bedrock-agentcore-starter-toolkit

Install

pip install bedrock-agentcore bedrock-agentcore-starter-toolkit langgraph
uv tool install bedrock-agentcore-starter-toolkit  # installs agentcore CLI

Quick Start

from langgraph.graph import StateGraph, START
from langgraph.graph.message import add_messages
from langgraph.prebuilt import ToolNode, tools_condition  # routing + tool execution
from bedrock_agentcore.runtime import BedrockAgentCoreApp
from typing import Annotated
from typing_extensions import TypedDict

class State(TypedDict):
    messages: Annotated[list, add_messages]

builder = StateGraph(State)
builder.add_node("agent", agent_node)
builder.add_node("tools", ToolNode(tools))  # prebuilt tool executor
builder.add_conditional_edges("agent", tools_condition)  # routes to tools or END
builder.add_edge(START, "agent")
graph = builder.compile()

app = BedrockAgentCoreApp()  # Wraps as HTTP service on port 8080 (/invocations, /ping)
@app.entrypoint
def invoke(payload, context):
    result = graph.invoke({"messages": [("user", payload.get("prompt", ""))]})
    return {"result": result["messages"][-1].content}
app.run()

CLI Commands

CommandPurpose
agentcore configure -e agent.py --region us-east-1Setup
agentcore configure -e agent.py --region us-east-1 --name my_agent --non-interactiveScripted setup
agentcore launch --deployment-type containerDeploy (container mode)
agentcore launch --disable-memoryDeploy without memory subsystem
agentcore devHot-reload local dev server
agentcore invoke '{"prompt": "Hello"}'Test
agentcore destroyCleanup

Core Patterns

Multi-Agent Orchestration

  • Orchestrator delegates to specialists (customer service, e-commerce, healthcare, financial, etc.)
  • Specialists: inline functions or separate deployed agents; all share session_id for context

Memory (STM/LTM)

from bedrock_agentcore.memory import MemoryClient
memory = MemoryClient()
memory.create_event(session_id, actor_id, event_type, payload)  # Store
events = memory.list_events(session_id)  # Retrieve (returns list)
  • STM: Turn-by-turn within session | LTM: Facts/decisions across sessions/agents
  • ~10s eventual consistency after writes

Gateway Tools

python -m bedrock_agentcore.gateway.deploy --stack-name my-agents --region us-east-1
from bedrock_agentcore.gateway import GatewayToolClient
gateway = GatewayToolClient()
result = gateway.call("tool_name", param1=value1, param2=value2)
  • Transport: Fallback Mock (local), Local MCP servers, Production Gateway (Lambda/REST/MCP)
  • Auto-configures BEDROCK_AGENTCORE_GATEWAY_URL after deploy

Decision Tree

Multiple agents coordinating? → Orchestrator + specialists pattern
Persistent cross-session memory? → AgentCore Memory (not LangGraph checkpoints)
External APIs/Lambda? → AgentCore Gateway
Single agent, simple? → Quick Start above
Complex multi-step logic? → StateGraph + tools_condition + ToolNode

Key Concepts

  • AgentCore Runtime: HTTP service on port 8080 (handles /invocations, /ping)
  • AgentCore Memory: Managed cross-session/cross-agent memory
  • LangGraph Routing: tools_condition for agent→tool routing, ToolNode for execution
  • AgentCore Gateway: Transforms APIs/Lambda into MCP tools with auth

Naming Rules

  • Start with letter, only letters/numbers/underscores, 1-48 chars: my_agent not my-agent

Troubleshooting

IssueFix
on-demand throughput isn't supportedUse us.anthropic.claude-* inference profiles
Model use case details not submittedFill Anthropic form in Bedrock Console
Invalid agent nameUse underscores not hyphens
Memory empty after writeWait ~10s (eventual consistency)
Container not reading .envSet ENV in Dockerfile, not .env
Memory not working after deployCheck logs for "Memory enabled/disabled"
list_events returns emptyCheck actor_id/session_id match; event['payload'] is a list
Gateway "Unknown tool"Lambda must strip ___ prefix from bedrockAgentCoreToolName
Platform mismatch warningNormal - CodeBuild handles ARM64 cross-platform builds

References

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

Content Collector

个人内容收藏与知识管理系统。收藏、整理、检索、二创。 Use when: (1) 用户分享链接/文字/截图并要求保存或收藏, (2) 用户说"收藏这个"/"存一下"/"记录下来"/"save this"/"bookmark"/"clip this", (3) 用户要求按关键词/标签搜索之前收藏的内容, (4) 用...

Registry SourceRecently Updated
Coding

Github Stars Tracker

GitHub 仓库 Stars 变化监控与通知。追踪指定仓库的 star 增长、fork 变化,发现新趋势。适合开发者关注项目动态。

Registry SourceRecently Updated
Coding

RabbitMQ client guide for Tencent Cloud TDMQ

RabbitMQ 客户端代码指南。当用户需要编写、调试或审查 RabbitMQ 应用代码时使用。涵盖:用任意语言(Java/Go/Python/PHP/.NET)写生产者或消费者;排查连接暴增、消息丢失、Broken pipe、消费慢、漏消费等客户端问题;审查 spring-boot-starter-amqp、a...

Registry SourceRecently Updated