Developer how-tos
Guides for building an application on the platform: getting data in, changing its shape safely, getting answers out, and the automation mechanics that carry all three.
Every guide shows both surfaces. A flow and a script reach the same atoms, so the choice is about the job rather than the role, pick the tab that matches what you are writing, and it follows you across the site. Where one surface is genuinely the wrong tool for a job, the guide says so and says why.
Working with your data
Section titled “Working with your data”| Guide | Goal |
|---|---|
| Seed a datastore with test data | A realistic dataset in an environment, reproducibly |
| Run a data migration safely | A shape change applied in batches, resumable, rehearsed first |
| Batch-process a directory of files | Many files through one transform, results where you choose |
Getting it right before it ships
Section titled “Getting it right before it ships”| Guide | Goal |
|---|---|
| Validate before you ship | A parse-and-compile gate that needs no data and no credentials |
| Benchmark and set a timeout | A measured distribution, and a timeout chosen from it |
| Restrict what code can reach | Least privilege for code you did not write |
Mechanics
Section titled “Mechanics”| Guide | Goal |
|---|---|
| Run your first automation | Something running, and its result visible |
| Pass data in and get results out | Values in with the types you expect; results where the caller reads them |
| Choose a language | The right runtime, and proof the engine accepts your file |
| Promote a script into a flow | The same file, running in automation |
The shape of a guide
Section titled “The shape of a guide”Every one states a goal, says why it is worth doing, builds the answer a step at a time, ends with the whole thing, and tells you how to verify it, the same shape as the DevSecOps guides.
Conventions
Section titled “Conventions”Flows run with kis flow -f <flow>.yaml; scripts run with kis script run <script>.<js|lua|go|star|wasm>. The extension picks the runtime. Values you
must change are always at the top, flow vars: or script arguments, never buried in a step.
Two things trip people up on the flow side, and both appear in these guides rather than being left for you to find:
- A flow is a graph, not a list. Nodes are connected by
next:. Three nodes written underneath one another with no routing run one node, and the run still reportscompleted. Uselist: truefor a straight line. See Graphs and sequences. - Parameter names differ between the two surfaces, and not merely by case: a flow’s
bucketnameis a script’sbucket. The atom reference gives both for every atom.
Reference
Section titled “Reference”These guides are task-shaped. For the full surface underneath them:
- Flows: the file format, node types, execution
- Scripts: languages, calling convention, reach
- Atom reference: every atom, both forms