🔀
Condition
base.conditionBase SetLogicThe decision maker! Checks if something is true or false, then sends the flow down one of two paths. It's how your bot becomes smart — 'if this user is an admin, do X, otherwise do Y'.
When to use this
- →Use ∅ is empty to branch when an optional spell input wasn't filled in — e.g. {{input.options.reason}}
- →Use {{input.user.id}} to compare against who ran the command
- →Use "ignore case" variants so "Admin" and "admin" both match
- →Use "starts with" for prefix commands — e.g. {{message.content}} starts with !
On the canvas
This is what Condition looks like when you place it on your flow. Each field below is something you configure in the inspector panel.
🔀Logic
Condition
base.conditionleftrequired
{{user.roles}}
operatorrequired
select…
rightrequired
admin
true
false
Config fields
| Field | Type | Req | What it does |
|---|---|---|---|
left{{user.roles}} | text | yes | Check this value 🔍 |
operator | select | yes | Using this rule ⚖️ |
rightadmin | text | yes | Against this value 🎯 |
Output ports
trueTaken when the condition passes
falseTaken when the condition fails
Connect each port to a different downstream node. Use base.merge if both branches should rejoin after.
📐
In TypeScript, this would be…
Not something you need to write — just a look at what Kitcord does for you.
TypeScript
if (score >= 100) {
// true branch
} else {
// false branch
}
// Kitcord maps operators (eq, contains, matches, …) to the same if/else split