Remote GPU Integration Plan
Overview
Embed RemoteGPUExecutor into the quine system so compiled agents can rent and use remote GPUs autonomously.
Changes Required
1. Dependencies (requirements.txt)
Add:
paramiko>=3.0.0 # SSH for remote GPU execution
Location: _write_requirements() function in agent_compiler.py
2. Embed RemoteGPUExecutor Class
Where: After FelixBag class, before CapsuleAgent class (around line 8260)
What: Copy entire RemoteGPUExecutor class from remote_gpu.py into the quine template
3. FelixBag Artifacts
Add new embedded docs:
remote_gpu_guide- Documentation on using remote GPUs- Update
vast_gpu_rental_guide- Add RemoteGPUExecutor usage examples
Location: _populate_bag() function (around line 7795)
4. MCP Tool Definitions (Non-Proxy Mode)
Add vast.ai tools to normal MCP server:
vast_search- Search for GPUsvast_rent- Rent a GPUvast_connect- Connect to rented GPU
Location: After line 21106 where MCP tools are defined
5. Plug Command Integration
Modify plug command to:
- Detect if
self._remote_gpuexists and is connected - If yes, load model on remote GPU instead of locally
- Return remote execution handle
Location: on_input_submitted() function, plug command handler
6. Quine Self-Replication
Ensure:
- RemoteGPUExecutor class is in the quine source
- All offspring carry the remote GPU capability
- Quine hash updates to reflect new code
Location: Automatic - happens when class is embedded
7. Testing Requirements
Must verify:
- Compiled agent can rent GPU via MCP
- SSH keys auto-generate
- Connection works without passwords
- Models load on remote GPU
- Inference executes remotely
- Results return to local TUI
Integration Points
agent_compiler.py
- Line ~5301:
_write_requirements()- Add paramiko - Line ~6339: After FelixBag class - Embed RemoteGPUExecutor
- Line ~7795:
_populate_bag()- Add remote GPU docs - Line ~15689:
_handle_mcp_request()- Already has vast_connect (DONE) - Line ~21106: MCP tool definitions - Add vast.ai tools
- Line ~15770: plug command - Add remote GPU detection
remote_gpu.py
- Entire file gets embedded into quine template
- File can be deleted after embedding (optional)
Risks
- Quine size - Adding RemoteGPUExecutor increases file size (~200 lines)
- Dependency bloat - paramiko adds SSH dependencies
- Breaking changes - Existing compiled agents won't have this
- SSH key management - Must work across all platforms (Windows/Linux/Mac)
Rollback Plan
If integration fails:
- Remove RemoteGPUExecutor from template
- Remove paramiko from requirements
- Revert to external remote_gpu.py import
- Keep vast.ai MCP tools (they're useful standalone)
Success Criteria
- Compiled agent has RemoteGPUExecutor embedded
- paramiko in requirements.txt
- SSH keys auto-generate on first use
- No password prompts ever
- Can rent GPU via MCP
- Can load model on remote GPU
- Can run inference remotely
- FelixBag has remote GPU docs
- Quine replicates with remote GPU capability