spoon-graph-development
SKILL.md
Graph Development
Build workflow graphs using SpoonOS StateGraph.
Quick Start
from spoon_ai.graph import StateGraph, END
from typing import TypedDict
class MyState(TypedDict):
counter: int
result: str
async def process(state: MyState) -> dict:
return {"counter": state["counter"] + 1}
graph = StateGraph(MyState)
graph.add_node("process", process)
graph.set_entry_point("process")
graph.add_edge("process", END)
app = graph.compile()
result = await app.invoke({"counter": 0, "result": ""})
Scripts
| Script | Purpose |
|---|---|
| basic_graph.py | Simple linear workflow |
| conditional_graph.py | Conditional routing |
| parallel_graph.py | Parallel node execution |
| checkpoint_graph.py | State persistence |
References
| Reference | Content |
|---|---|
| patterns.md | Common graph patterns |
| parallel.md | Parallel execution modes |
Node Types
- Function nodes:
async def node(state) -> dict - Agent nodes:
SpoonReactMCPinstances - Subgraph nodes: Nested
StateGraph
Edge Types
- Direct:
graph.add_edge("a", "b") - Conditional:
graph.add_conditional_edges("a", router, {...})
Best Practices
- Use TypedDict for state schemas
- Return only changed fields from nodes
- Use checkpointing for long workflows
- Implement timeout for external calls
Weekly Installs
2
Repository
xspoonai/spoon-…me-skillGitHub Stars
12
First Seen
7 days ago
Security Audits
Installed on
amp2
cline2
openclaw2
opencode2
cursor2
kimi-cli2