DEPRECATED
Renamed to @magistr/fc-task-server — it is a host↔guest task/result control-plane server, not an internet proxy. Superseded by the Ubuntu-rootfs + glibc working release.
Superseded by @magistr/fc-task-server
Fc Agent Proxy
@magistr/fc-agent-proxyv2026.06.08.9
01README
vsock proxy for running Claude Code agents inside Firecracker microVMs. Manages a Python proxy on the host: enforces domain allowlist, injects CLAUDE_CODE_OAUTH_TOKEN as Authorization: Bearer for Anthropic API calls (guest never sees the token), relays HTTPS CONNECT tunnels, and handles task injection + result collection over vsock ports 5000/5001.
02Models
@magistr/fc-agent-proxyv2026.06.08.9fc_agent_proxy.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| host | string | SSH host running Firecracker |
| user | string | SSH username |
| vsockUdsPath | string | Host-side vsock UDS base path (e.g. /tmp/fc-agent-1.vsock). Guest→host API calls land on <udsPath>_8080; host→guest task on base path. |
| oauthToken | string | Claude Code OAuth token (from `claude setup-token`) — injected by proxy as Authorization: Bearer header. Never sent to guest. |
fn deploy(allowedDomains: array, extraEnv?: record)
Write vsock-proxy.py to the Firecracker host and start it as a background process. The proxy listens on <vsockUdsPath>_8080 for guest API calls, injects CLAUDE_CODE_OAUTH_TOKEN as Authorization: Bearer for Anthropic requests, enforces domain allowlist for all other traffic.
| Argument | Type | Description |
|---|---|---|
| allowedDomains | array | Domain allowlist for the proxy (e.g. ['api.anthropic.com','github.com','registry.npmjs.org']) |
| extraEnv? | record | Extra env vars to set in the proxy process (e.g. search API keys for per-domain injection) |
fn inject_task(prompt: string, gitRepoUrl?: union, envVars?: record)
Send a task manifest to the guest agent via vsock port 5000. Retries with backoff for up to 30s while the guest boots. Task includes: prompt, optional gitRepoUrl (https only), optional envVars (for search API keys etc).
| Argument | Type | Description |
|---|---|---|
| prompt | string | Task prompt for claude-code |
| gitRepoUrl? | union | HTTPS git repo URL to clone inside the guest before running the task (https:// only) |
| envVars? | record | Additional env vars to set in the guest agent (e.g. BRAVE_API_KEY, TAVILY_API_KEY) |
fn collect_result(timeoutSeconds: number)
Read the agent's stdout from the guest via vsock port 5001. Blocks until the agent completes or timeout is reached.
| Argument | Type | Description |
|---|---|---|
| timeoutSeconds | number | Maximum seconds to wait for the agent to finish (default: 300) |
fn stop()
Kill the vsock proxy process on the host.
Resources
proxyState(1h)— vsock proxy process state on the Firecracker host
taskResult(24h)— Stdout captured from the agent run inside the microVM
action(1h)— Result of a proxy lifecycle action
03Previous Versions
2026.06.08.8Jun 8, 2026
2026.06.08.7Jun 8, 2026
2026.06.08.6Jun 8, 2026
2026.06.08.5Jun 8, 2026
2026.06.08.4Jun 8, 2026
2026.06.07.2Jun 7, 2026
2026.06.07.1Jun 7, 2026
04Stats
D
50 / 100
Downloads
0
Archive size
9.4 KB
- Has README or module doc0/2missing
- README has a code example0/1missing
- README is substantive0/1pending
- Most symbols documented1/1earned
- No slow types (deprecated)1/1earned
- Dependencies pass trust audit2/2earned
- Has description1/1earned
- Platform support declared (or universal)2/2earned
- License declared0/1missing
- Verified public repository0/2missing
05Platforms
06Labels