Sidney Marvin Fricke
461165a16e
switch to miniconda3 base image, add Java via SDKMAN
...
- Base image: continuumio/miniconda3 (conda + python 3 out of the box)
- Java: installed via SDKMAN (sdk install java) — latest LTS by default
- Node.js: nvm install kept from previous change
- All tool envs (nvm, sdkman) sourced before exec so Python and all
child processes (exec-tool, jobs) inherit the full PATH
2026-06-25 08:46:33 +02:00
angryzero
d369047ba6
add node
2026-06-25 08:43:10 +02:00
angryzero
601081a6b0
add port
2026-06-25 08:40:15 +02:00
Sidney Marvin Fricke
0e33e8dbc8
extract startup logic into server/startup.sh for easy customization
...
Replaces the inline bash -c "..." command in docker-compose with a dedicated
startup.sh script that installs system packages, pip deps, and starts the server.
Add custom setup steps (apt, pip, curl, etc.) in the marked section.
2026-06-25 08:39:23 +02:00
Sidney Marvin Fricke
683f4798b6
add file_edit, file_move, file_glob, file_grep tools and improve existing file tools
...
- file_read: numbered output (cat -n), offset/limit for chunked reading
- file_write: updated description to prefer file_edit for partial changes
- file_edit: partial string replacement (old_string → new_string), fails on ambiguous matches
- file_move: rename/move files and directories within /workspace
- file_glob: file discovery via glob patterns (e.g. **/*.py)
- file_grep: regex search in file contents with context lines, glob filter, ignore_case
- exec: new cwd parameter to run commands in subdirectories of /workspace
2026-06-25 08:17:19 +02:00
Sidney Marvin Fricke
ac9c470545
disable uvicorn access log
2026-06-24 12:38:15 +02:00
Sidney Marvin Fricke
c9ca78d9f1
remove path traversal restriction from file tools
...
Container isolation is sufficient — agents can access the full
filesystem. Absolute paths are passed through as-is.
2026-06-24 12:37:36 +02:00
Sidney Marvin Fricke
f7af92a10e
add file_read, file_write, file_list, file_delete tools
...
Agents can now read, write, create, and delete files directly in
/workspace without going through exec. Path traversal outside
/workspace is rejected.
2026-06-24 12:36:51 +02:00
Sidney Marvin Fricke
181ea1eaf6
simplify WORKSPACE to a hardcoded constant
...
WORKSPACE_DIR env var was never set in docker-compose.yml, so the
default always applied anyway. The container-internal mount point
is always /workspace, so there's no reason to make it configurable.
2026-06-24 12:32:08 +02:00
Sidney Marvin Fricke
0b8671b7b0
default cwd to /workspace for all exec, pty, and job calls
...
All subprocess and PTY spawns now start in WORKSPACE_DIR (default /workspace)
instead of inheriting /app from the Python process.
2026-06-24 12:31:30 +02:00
Sidney Marvin Fricke
88901d4187
log executed commands to server stdout
...
exec, pty_send, and job_run each emit an INFO line so docker compose
logs shows what the agent is running.
2026-06-24 12:30:38 +02:00
angryzero
47007b2d49
idk
2026-06-24 12:26:18 +02:00
Sidney Marvin Fricke
23558ebe82
make workspace path configurable via WORKSPACE_PATH env var
...
Defaults to '.' (current directory) if not set, so existing setups
work unchanged. Override with: WORKSPACE_PATH=/my/path docker compose up
2026-06-24 12:21:09 +02:00
Sidney Marvin Fricke
d3f7d4eacf
implement MCP Streamable HTTP transport (JSON-RPC 2.0)
...
Replace custom REST API with standard MCP protocol so clients
like Claude Desktop/Code can connect via the streamable_http transport.
Handles initialize, tools/list, tools/call, ping, notifications.
2026-06-24 12:18:57 +02:00
Sidney Marvin Fricke
91ef94518b
as always ... cors
2026-06-24 12:15:12 +02:00
Sidney Marvin Fricke
83ed1338b1
why the extra
2026-06-24 12:13:32 +02:00
Sidney Marvin Fricke
e1a288ad9e
fix install cmd
2026-06-24 12:12:19 +02:00
Sidney Marvin Fricke
5d6bd16d8d
docs
2026-06-24 12:00:49 +02:00
Sidney Marvin Fricke
68c418400e
init
2026-06-24 11:48:08 +02:00