Templates
Define repeatable sandbox baselines without baking project state or reusable secrets into the environment.
A template is a reusable definition for creating a Jio sandbox. It captures the environment that should be consistent across runs while leaving task-specific state to the sandbox and session.
Templates make replacement practical. When a sandbox becomes difficult to understand, you can preserve the intended project changes and recreate the environment from a known baseline.
What a template should define
- base operating system or machine image;
- language runtimes and build tools;
- system packages and trusted setup scripts;
- default resource and network policy;
- filesystem layout and workspace identity;
- health checks used before a session connects.
What stays out
Do not treat a template as a snapshot of everything on a working machine. Keep these inputs separate:
| Keep outside the template | Supply at creation or session time |
|---|---|
| Long-lived credentials | Task-scoped secrets |
| A developer's home directory | The project checkout or artifact |
| Mutable dependency caches | A controlled cache mount or restore step |
| Session history | Current connection and approval context |
Template lifecycle
Define
Describe the minimum trusted baseline required by a class of workloads.
Version
Give material changes a new version so existing sandboxes remain explainable.
Instantiate
Create a sandbox, apply policy, and run health checks before an agent connects.
Replace
Recreate sandboxes from a newer or known-good template instead of repairing unexplained state indefinitely.
Templates improve repeatability, not trust by themselves
A template can still contain vulnerable packages or unsafe defaults. Review its source, provenance, and policy before using it for unfamiliar code.