Why teams replace assembled cloud services with KERNSTACK stack.json
Teams otherwise describe their system across Terraform, a second YAML dialect, and a portal’s memory. On KERNSTACK the manifest is the whole description — the file an agent reads before drafting, a reviewer diffs before approving, and an auditor samples after an incident.
Anatomy of the file
Conventions keep it terse: omit src when code sits at functions/{name} or workers/{name}; omit seed when data sits at seed/tables/{name}.json or seed/buckets/{name}/. Profiles overlay the base file (stack.
Change discipline around the file
Every edit is a plan before it is a fact: kernstack plan lists creates, updates, and “Will delete” entries; deploys refuse deletions without --confirm-destructive; a stack can pin space_id so a deploy aimed at the wrong environment fails. Source assurance levels (from locally_authenticated to review_approved and attested_build) let a project declare how trusted code must be before it may ship.
- The file is agent-legible: one JSON document is the complete planning surface — no console archaeology
- Apps under apps/ build and publish on deploy; routes to them are ordinary prefix routes
- Removing a line is a designed act with a confirmation, never an accident of omission
SDKs & Language Integration
Every KERNSTACK environment vendors typed SDK packages into .kernstack/ so both engineers and coding agents in Agent Sandboxes can call stack.json without external credentials:
- Go SDK:
github.com/coding-berlin/kernstack-sdk-go/sdk_stacks - Node.js SDK:
kernstack-sdk - Python SDK:
kernstack_sdk - PHP SDK:
kernstack/sdk (Composer)
Frequently asked questions
Scope and altitude: stack.json declares one application completely — routes, compute, data, intelligence, workflows — against one platform’s project model, and deploys it directly. It is not a general language for arbitrary cloud resources, and that narrowness is what makes its plans fully readable.
Yes — it is designed for it. Agents draft manifest changes on branches; humans approve the resulting plan. The JSON the agent reads is byte-identical to the JSON the reviewer approves.
In the target (a different instantiation with its own data), in stack.<env>.json profile overlays, and in .stack.env values. The base declaration stays the single source of architectural truth across all of them.
Related capabilities, architectures, and comparisons
Ship your stack on the Software Lifecycle Cloud.
Closed preview on dedicated European infrastructure. Bring a repository or start from a blueprint.