Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
b3b1be0
adapt the sandboxClient for pint changes
mohamedveron Nov 23, 2025
7024ed6
feat: support terminals
christianalfoni Nov 26, 2025
fee1c59
add pint detection
mojojoji Nov 26, 2025
f3722ee
add proper pint client detection
mohamedveron Nov 26, 2025
ad25dff
make vm agent in pitcher manager response non optional
mojojoji Nov 27, 2025
565b10f
fix build errors
mojojoji Nov 27, 2025
f88f540
Merge branch 'CSB-484-release-pint-beta' into pint-detection
mojojoji Nov 27, 2025
459c7af
fix build error
mojojoji Nov 27, 2025
8b7340d
separate how commands/terminals run on pitcher/pint
christianalfoni Nov 28, 2025
11226f0
Merge branch 'CSB-484-release-pint-beta' of https://github.com/codesa…
christianalfoni Nov 28, 2025
8dbf473
Merge branch 'main' into CSB-484-release-pint-beta
mojojoji Nov 28, 2025
9e8217e
Merge branch 'CSB-484-release-pint-beta' into pint-detection
mojojoji Nov 28, 2025
6e09036
fix build error
mojojoji Nov 28, 2025
8e400bc
Merge pull request #231 from codesandbox/pint-detection
mojojoji Nov 28, 2025
5229f20
still failing tests, but getting there
christianalfoni Dec 2, 2025
598d802
add instructions on local testing
christianalfoni Dec 3, 2025
28020c8
fix dynamic use of base url
christianalfoni Dec 3, 2025
72441cc
update pint spec file
mohamedveron Dec 13, 2025
df65792
integrate pint watcher api
mohamedveron Dec 13, 2025
0b4e110
update watcher api and create unit tests
mohamedveron Dec 14, 2025
84090cf
fix execs
christianalfoni Jan 16, 2026
72965c4
increase beta build wait for port timeout to 30s from 10s
mojojoji Jan 27, 2026
6944b36
run only e2e tests
mojojoji Jan 29, 2026
f2c6b09
seperate config for e2e tests
mojojoji Jan 29, 2026
43c59c4
clean up tests, get ready to test new infra
christianalfoni Feb 5, 2026
ee17553
Merge branch 'CSB-484-release-pint-beta' of https://github.com/codesa…
christianalfoni Feb 5, 2026
a12e2e7
add docker login
mojojoji Feb 6, 2026
b823d48
Add feedback for docker login
mojojoji Feb 6, 2026
a9edffb
base32 encoded image
mojojoji Feb 6, 2026
a5c8d2a
fix short id and and url
mojojoji Feb 6, 2026
b9b701d
Apply suggestion from @fertapric-togetherai
mojojoji Feb 6, 2026
f646cec
Merge pull request #242 from codesandbox/auth-with-csb-api-key
mojojoji Feb 6, 2026
ae84e2d
temporarily replace hibernate with shutdown for beta template builds
mojojoji Feb 6, 2026
f77aad8
remove logs
christianalfoni Feb 9, 2026
cffd36f
remove more logs
christianalfoni Feb 9, 2026
061bf56
force template id
christianalfoni Feb 10, 2026
5a19dfe
Pitcher finally running
christianalfoni Feb 13, 2026
7a0f882
testing updates
christianalfoni Feb 23, 2026
351403c
fix: pitcher build batchWrite and long running test
christianalfoni Feb 23, 2026
f5b730b
more fixes
christianalfoni Mar 3, 2026
f9245cd
added additional e2e tests
christianalfoni Mar 3, 2026
f53720b
remove non deterministic test. Will add deterministic when new option…
christianalfoni Mar 3, 2026
60e2a71
fix: use eager fetch for watcher and strip leading slash from path
christianalfoni Mar 6, 2026
86fd630
include all filesystem tests again
Mar 9, 2026
3b9296a
bump
Mar 10, 2026
d67eece
add benchmarks for comparing pitcher vs pint
mojojoji Mar 12, 2026
e96c350
add working benchmark
mojojoji Mar 12, 2026
8aebc2e
add archive start test
mojojoji Mar 12, 2026
4ca1611
Merge pull request #245 from codesandbox/add-benchmarks
mojojoji Mar 13, 2026
8cc4818
improved benchmarks
mojojoji Mar 17, 2026
a35b3aa
Send content as-is in fs.WriteFile
fertapric Mar 27, 2026
8f4707f
Refactor batchWrite to use command args instead of inline string
fertapric Mar 27, 2026
a1fdc4c
Add benchmark for file operations and commands
fertapric Mar 27, 2026
fccda14
Merge pull request #246 from codesandbox/files-cmds-bench
fertapric-togetherai Mar 30, 2026
b9065ce
update pint spec file
mohamedveron Apr 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# API KEYS
export CSB_API_KEY=... # Production
# export CSB_API_KEY=... # Stream
# export CSB_API_KEY=csb_v1_devbox # Devbox Local

# BASE URLS
export CSB_BASE_URL=https://api.codesandbox.io # Production
# export CSB_BASE_URL=https://api.codesandbox.stream # Stream
# export CSB_BASE_URL=https://api.codesandbox.dev # Devbox Local


# TEMPLATES
export CSB_TEMPLATE_ID=... # Production (Pitcher)
# export CSB_TEMPLATE_ID=... # Production (Pint)
# export CSB_TEMPLATE_ID=... # Stream (Pitcher)
# export CSB_TEMPLATE_ID=... # Stream (Pint)
# export CSB_TEMPLATE_ID=... # Devbox Local (Pint)


1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
# Generated stuff
dist
test.ts
test-template

### macOS ###
*.DS_Store
Expand Down
23 changes: 23 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,29 @@ const output = await client.commands.run("echo 'Hello World'");
console.log(output); // Hello World
```

## Running tests

### All tests

- Run all tests with `npm run test`
- Run specific test file `npm run test -- filesystem`

### E2E production

- Run e2e tests with `npm run test:e2e`
- Run specific test file `npm run test -- filesystem`

### E2E local

- Clone the sandbox templates repo (https://github.com/codesandbox/sandbox-templates)
- Create the `.env` based on example and populate it
- Run `source .env` to export the env variables
- Build template for Pitcher `./dist/bin/codesandbox.mjs build ./test-template-pitcher`
- Build template for Pint `./dist/bin/codesandbox.mjs build ./test-template-pint --beta`
- Update `.env` with template id and `source .env` it again
- Run e2e tests with `npm run test:e2e`
- Run specific test file `npm run test -- filesystem`

## Efficient Sandbox Retrieval

When you need to retrieve metadata for specific sandboxes by their IDs, you can use the efficient retrieval methods instead of listing and filtering all sandboxes:
Expand Down
112 changes: 0 additions & 112 deletions TODO.md

This file was deleted.

Loading