Spec reference
Generated from packages/spec/schema/spec.schema.json at build time, so it cannot drift from
what the loader actually accepts. Spec format 1.1.
Sections
A spec is one JSON object. Each top-level key is a section with its own version, and every
section is content-hashed so the console and the engine can tell exactly what changed.
fishtea required
business required
| field | type | notes |
|---|---|---|
id required | string | |
name required | string | |
locale | string | |
currency | string |
entities required
Every key other than version and doc is one entity definition.
calls required
Every key other than version and doc is one call definition.
rules required
| field | type | notes |
|---|---|---|
writes | object | |
classify | object | |
calls | object | |
familiarity | object |
shapes required
Every key other than version and doc is one shape definition.
personas required
Every key other than version and doc is one object definition.
envelope required
| field | type | notes |
|---|---|---|
accept required | string[] | |
greeting required | map of object |
notifications optional
Every key other than version and doc is one object definition.
operator optional
| field | type | notes |
|---|---|---|
shapes | map of shape |
plugins optional
Every key other than version and doc is one pluginUse definition.
Definitions
version
typeString
typeSpec
entity
| field | type | notes |
|---|---|---|
fields required | map of typeSpec | |
index | string[] | |
embed | string[] | |
unique | string[] |
call
step
| field | type | notes |
|---|---|---|
id | string | |
call required | string | |
with | object | |
after | string[] |
next
| field | type | notes |
|---|---|---|
label | string | |
shape required | string | |
args | object | |
each | string |
shape
pluginUse
| field | type | notes |
|---|---|---|
use required | string | where the plugin comes from: a bare name (builtin or plugins/<name>), a relative path, or an npm package |
kind | integration | ui | auth | classifier | channel | archetype | |
config | object | answers to the plugin's own configuration questions |
enabled | boolean |