Skip to main content
Fork is Nullspace’s main differentiator for agent and evaluator workflows. Do expensive setup once, fork the sandbox, then let each branch mutate files, processes, and services independently.

Branch warm state

from nullspace import Sandbox

parent = Sandbox.create(template="base")
parent.files.write("/workspace/state.txt", "common\n")

child = parent.fork()
parent.files.write("/workspace/state.txt", "parent\n")
child.files.write("/workspace/state.txt", "child\n")

print(parent.files.read("/workspace/state.txt").strip())
print(child.files.read("/workspace/state.txt").strip())

child.kill()
parent.kill()

Use cases

  • Fan out prompt, patch, or evaluator variants from one prepared repo.
  • Test destructive changes in a child without touching the parent.
  • Keep a warm parent while retrying independent plans in children.

Behavior

Parent and child each receive their own sandbox ID and routing credentials. Shared volumes are remounted in the child; the external volume data is shared according to volume mount permissions.