> ## Documentation Index
> Fetch the complete documentation index at: https://kapso-1adbad2d.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Kapso SDK

> Build conversational AI agents and deterministic flows

Build conversational agents with Python. Agents use LLMs for reasoning, flows are deterministic WhatsApp workflows.

Flows automatically inherit the WhatsApp configuration from the active conversation. Specify `whatsapp_config_id` on individual nodes only when you need to override that default.

## Quickstart

```python theme={null}
from kapso.builder.flows import Flow
from kapso.builder.flows.nodes import StartNode, SendTextNode, WaitForResponseNode, DecideNode
from kapso.builder.flows.nodes.decide import Condition

# Create flow
flow = Flow(name="support_flow")

# Add nodes
start = StartNode(id="start_1234")
greeting = SendTextNode(
    id="greeting_5678",
    message="Hi! How can I help you today?"
)
wait = WaitForResponseNode(
    id="wait_9012"
)
decide = DecideNode(
    id="decide_3456",
    provider_model_name="claude-sonnet-4-20250514",
    conditions=[
        Condition(label="order_help", description="Customer needs order help"),
        Condition(label="general", description="General question")
    ]
)
order_response = SendTextNode(
    id="order_response_7890",
    message="I'll help you with your order. Can you provide your order number?"
)
general_response = SendTextNode(
    id="general_response_1234",
    message="I'm here to help! What would you like to know?"
)

flow.add_node(start)
flow.add_node(greeting)
flow.add_node(wait)
flow.add_node(decide)
flow.add_node(order_response)
flow.add_node(general_response)

# Connect nodes
flow.add_edge("start_1234", "greeting_5678")
flow.add_edge("greeting_5678", "wait_9012")
flow.add_edge("wait_9012", "decide_3456")
flow.add_edge("decide_3456", "order_response_7890", label="order_help")
flow.add_edge("decide_3456", "general_response_1234", label="general")

flow.validate()
```

Deploy with `kapso flow push support_flow`
