Spaces:
Running
Running
| title: Coding Tools Environment Server | |
| emoji: 🧰 | |
| colorFrom: green | |
| colorTo: gray | |
| sdk: docker | |
| pinned: false | |
| app_port: 8000 | |
| base_path: /web | |
| tags: | |
| - openenv | |
| - coding | |
| - tools | |
| - e2b | |
| short_description: SETA-style multi-tool coding environment backed by E2B | |
| # Coding Tools Environment | |
| `coding_tools_env` is an E2B-backed multi-tool coding environment with explicit | |
| filesystem and shell tools. The tool surface is modeled after | |
| [SETA](https://github.com/EnvCommons/SETA). | |
| Each episode creates a fresh E2B sandbox. Reset accepts setup and verify | |
| commands. Verify commands are used by `submit_solution`. | |
| ## Tools | |
| - `bash(command, timeout=30)` | |
| - `read(file_path, offset=None, limit=None)` | |
| - `write(file_path, content)` | |
| - `edit(file_path, old_string, new_string, replace_all=False)` | |
| - `multi_edit(file_path, edits)` | |
| - `glob(pattern, path=None)` | |
| - `grep(pattern, path=None, include=None)` | |
| - `ls(path=".", ignore=None)` | |
| - `todo_write(todos)` | |
| - `submit_solution()` | |
| ## Quick Start | |
| ```python | |
| from coding_tools_env import CodingToolsEnv | |
| with CodingToolsEnv(base_url="http://localhost:8000").sync() as env: | |
| env.reset( | |
| setup=["mkdir -p /home/user/work"], | |
| verify=["test -f /home/user/work/answer.txt"], | |
| ) | |
| print(env.call_tool("write", file_path="/home/user/work/answer.txt", content="done\n")) | |
| print(env.call_tool("submit_solution")) | |
| ``` | |
| ## Local Server | |
| ```bash | |
| cd envs/coding_tools_env | |
| E2B_API_KEY=e2b_... uv run --project . server | |
| ``` | |
| ## Docker | |
| ```bash | |
| cd envs/coding_tools_env | |
| openenv build -t coding-tools-env | |
| docker run -p 8000:8000 -e E2B_API_KEY=e2b_... coding-tools-env | |
| ``` | |
| ## Configuration | |
| - `E2B_API_KEY`: required when resetting an episode. | |
| - `MAX_CONCURRENT_ENVS`: max concurrent sessions (default `4`). | |