Skip to content
Talk to our solutions team

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.

GuideGoal
Seed a datastore with test dataA realistic dataset in an environment, reproducibly
Run a data migration safelyA shape change applied in batches, resumable, rehearsed first
Batch-process a directory of filesMany files through one transform, results where you choose
GuideGoal
Validate before you shipA parse-and-compile gate that needs no data and no credentials
Benchmark and set a timeoutA measured distribution, and a timeout chosen from it
Restrict what code can reachLeast privilege for code you did not write
GuideGoal
Run your first automationSomething running, and its result visible
Pass data in and get results outValues in with the types you expect; results where the caller reads them
Choose a languageThe right runtime, and proof the engine accepts your file
Promote a script into a flowThe same file, running in automation

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.

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 reports completed. Use list: true for a straight line. See Graphs and sequences.
  • Parameter names differ between the two surfaces, and not merely by case — a flow’s bucketname is a script’s bucket. The atom reference gives both for every atom.

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