This page covers structural and naming conventions for flow agents. Additional best practices from the Hamsa engineering team will be added here over time.
Node Naming
Use descriptive, action-oriented names that make the flow self-documenting:Variable Naming
All variable names must be snake_case (lowercase, underscores, starts with a letter):Always Include a Fallback Transition
Every node that has conditional transitions needs an Always transition as a fallback. Without it, the conversation can stall if no conditions match.Use Extracted Variables Carefully
Extracted variables are only available after the node that collects them. Do not reference an extracted variable in a transition or node that comes before it in the flow. Global node conditions cannot use extracted variables — use system variables or custom variables there instead.Provide Fallback Values in Messages
Use fallback syntax when referencing variables that might not be set:Next Steps
Global Settings
Configure agent-level defaults
Node Types
Learn about all 8 node types
Transitions
Understand transition types and priority
Debugging
Validate and test your flow