Help us improve
Share bugs, ideas, or general feedback.
Deploys LangGraph agents on AWS Bedrock AgentCore with multi-agent orchestration, persistent memory, and CLI tooling for production observability and scaling.
npx claudepluginhub agentic-insights/foundry --plugin aws-agentcore-langgraphHow this skill is triggered — by the user, by Claude, or both
Slash command
/aws-agentcore-langgraph:aws-agentcore-langgraphThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Multi-agent systems on AWS Bedrock AgentCore with LangGraph orchestration. Source: https://github.com/aws/bedrock-agentcore-starter-toolkit
references/agentcore-cli.mdreferences/agentcore-gateway.mdreferences/agentcore-memory.mdreferences/agentcore-runtime.mdreferences/langgraph-patterns.mdreferences/reference-architecture-advertising-agents-use-case.pdfscripts/agent-details.shscripts/list-all.shscripts/memory-details.shscripts/tail-logs.shGuides technical evaluation of code review feedback: read fully, restate for understanding, verify against codebase, respond with reasoning or pushback before implementing.
Share bugs, ideas, or general feedback.
Multi-agent systems on AWS Bedrock AgentCore with LangGraph orchestration. Source: https://github.com/aws/bedrock-agentcore-starter-toolkit
pip install bedrock-agentcore bedrock-agentcore-starter-toolkit langgraph
uv tool install bedrock-agentcore-starter-toolkit # installs agentcore CLI
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()
| Command | Purpose |
|---|---|
agentcore configure -e agent.py --region us-east-1 | Setup |
agentcore configure -e agent.py --region us-east-1 --name my_agent --non-interactive | Scripted setup |
agentcore launch --deployment-type container | Deploy (container mode) |
agentcore launch --disable-memory | Deploy without memory subsystem |
agentcore dev | Hot-reload local dev server |
agentcore invoke '{"prompt": "Hello"}' | Test |
agentcore destroy | Cleanup |
session_id for contextfrom 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)
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)
BEDROCK_AGENTCORE_GATEWAY_URL after deployMultiple 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
/invocations, /ping)tools_condition for agent→tool routing, ToolNode for executionmy_agent not my-agent| Issue | Fix |
|---|---|
on-demand throughput isn't supported | Use us.anthropic.claude-* inference profiles |
Model use case details not submitted | Fill Anthropic form in Bedrock Console |
Invalid agent name | Use underscores not hyphens |
| Memory empty after write | Wait ~10s (eventual consistency) |
| Container not reading .env | Set ENV in Dockerfile, not .env |
| Memory not working after deploy | Check logs for "Memory enabled/disabled" |
list_events returns empty | Check actor_id/session_id match; event['payload'] is a list |
| Gateway "Unknown tool" | Lambda must strip ___ prefix from bedrockAgentCoreToolName |
| Platform mismatch warning | Normal - CodeBuild handles ARM64 cross-platform builds |