21 Commits
Author SHA1 Message Date
angryzeroandCopilot fb73d20a59 update workspace mount and port mapping
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-01 00:50:36 +02:00
Sidney Marvin Fricke da0b28ff4e revert to official python:3.12-slim, install miniconda via curl in startup.sh 2026-06-25 08:50:11 +02:00
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