Documentation Index Fetch the complete documentation index at: https://docs.joggr.ai/llms.txt
Use this file to discover all available pages before exploring further.
Sandboxes are configured via a .joggr/config.json (or .yaml) file at the root of your repository.
Prerequisites
Complete the Getting Started guides before continuing.
1. Create the config file
Create a .joggr/ directory in your repo root and add a config file. JSON and YAML are both supported.
.joggr/config.json
.joggr/config.yaml
{
"$schema" : "https://raw.githubusercontent.com/joggrdocs/home/refs/heads/main/schema.json" ,
"sandbox" : {
"local" : {}
}
}
The $schema property enables autocomplete and validation in your editor.
copy defines files and directories to copy from your repo root into each new sandbox. Git worktrees don’t inherit untracked or gitignored files — this is how you bring secrets, env vars, and build caches along.
.joggr/config.json
.joggr/config.yaml
{
"sandbox" : {
"local" : {
"copy" : [ ".env" , ".env.local" , ".turbo" ]
}
}
}
Keep this list minimal. Only include files the sandbox can’t function without:
File Why .envRuntime secrets and environment variables .env.localLocal overrides not committed to version control .turboTurborepo cache — avoids redundant rebuilds in monorepos
Directories are copied recursively. Avoid copying large directories like node_modules — use
run to install dependencies instead.
run defines shell commands that execute sequentially inside the sandbox directory after creation. Use this to bootstrap the environment so it’s ready to use immediately.
.joggr/config.json
.joggr/config.yaml
{
"sandbox" : {
"local" : {
"run" : [ "pnpm install" , "pnpm build" ]
}
}
}
Order matters — install dependencies before building. Common commands:
Command Purpose pnpm installInstall dependencies pnpm buildBuild the project npx prisma generateGenerate Prisma client from schema
Every command in run adds to sandbox creation time. Keep it fast — skip anything the sandbox
doesn’t need upfront.
command sets the command that launches when the sandbox session opens.
.joggr/config.json
.joggr/config.yaml
{
"sandbox" : {
"local" : {
"command" : "claude"
}
}
}
Pick whichever tool you’ll use most in sandboxes:
Command Use case claudeAI-driven development with Claude cursorCursor IDE code .VS Code zed .Zed editor
5. Verify
Your full config should look like this:
.joggr/config.json
.joggr/config.yaml
{
"$schema" : "https://raw.githubusercontent.com/joggrdocs/home/refs/heads/main/schema.json" ,
"sandbox" : {
"local" : {
"copy" : [ ".env" , ".env.local" , ".turbo" ],
"run" : [ "pnpm install" , "pnpm build" ],
"command" : "claude"
}
}
}
Test it by creating a sandbox:
jog sandbox create test/my-first-sandbox
Confirm that your copy files are present, run commands completed, and your command launched.