Skip to main content

Fc Task Server

@magistr/fc-task-serverv2026.06.12.1· 1d agoMODELS
01README

Host↔guest task/result control-plane server for Firecracker microVM agents. This is NOT an internet proxy — the guest reaches api.anthropic.com directly via its TAP interface + host NAT.

Model @magistr/fc-task-server deploys a small Python TCP HTTP server on the host TAP interface that:

  • serves the per-run job (prompt + model + CLAUDE_CODE_OAUTH_TOKEN, validated sk-ant… prefix, injected at serve time) on GET /task, and
  • collects the agent's output on POST /result.

Methods: deploy (write + start the server, wait for the port to bind), inject_task (queue prompt/model/git-repo for the next GET /task), collect_result (block until the guest POSTs a result or timeout), and stop (precision-kill via PID sidecar). Pairs with @magistr/firecracker.

02Release Notes

release: firecracker + fc-task-server 2026.06.12.1 — bundle CHANGELOG

Bump both to 2026.06.12.1 and add CHANGELOG.md to additionalFiles so the published archive carries the changelog + the updated README (task-fabric methods in the Methods list). No model behaviour change. CI publishes to stable.

Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com

03Models1
@magistr/fc-task-serverv2026.06.12.1extensions/models/fc_task_server.ts

Global Arguments

ArgumentTypeDescription
hoststringSSH host running Firecracker
userstringSSH username
tapIpstringHost IP on the TAP interface — the task/result HTTP server binds here
tapPortnumberTCP port for the task/result HTTP server (default: 8080)
netns?unionOptional network namespace the tapIp lives in (matches @magistr/firecracker's netns for this VM). When set, deploy binds the server INSIDE the namespace (ip netns exec) so the isolated guest can reach it. Omit for the single-VM root-namespace path.
oauthTokenstringClaude Code OAuth token (sk-ant…) — injected into task JSON served to guest
fn deploy()
Write tap-server.py to the Firecracker host and start it. The server listens on tapIp:tapPort (TCP) and serves task JSON (with OAuth token injected) on GET /task and accepts results on POST /result.
fn inject_task(prompt: string, gitRepoUrl?: union, model?: string, effort: enum)
Write task manifest to file; tap-server's GET /task handler will include it in the next response to the guest.
ArgumentTypeDescription
promptstringTask prompt for claude
gitRepoUrl?unionHTTPS git repo URL to clone inside the guest before running the task
model?stringClaude model id passed to `claude --print --model` inside the guest (e.g. claude-opus-4-8, claude-haiku-4-5-20251001). Empty/omitted uses Claude Code's default.
effortenumReasoning effort passed to `claude --print --effort` inside the guest. Defaults to 'low' to keep sandboxed agent runs fast and cheap; raise per task when the work is intelligence-sensitive. 'max' is Opus-tier only.
fn collect_result(timeoutSeconds: number)
Poll for result file written by guest POST /result. Blocks until agent completes or timeout.
ArgumentTypeDescription
timeoutSecondsnumber
fn stop()
Kill the tap-server process via PID sidecar.

Resources

serverState(1h)— TAP server process state on the Firecracker host
taskResult(24h)— Stdout captured from the agent run inside the microVM
action(1h)— Result of a server lifecycle action
04Previous Versions4
2026.06.11.3Jun 11, 2026
2026.06.09.3Jun 9, 2026

fc-task-server + firecracker: default Claude Code agent effort to low

Adds a configurable reasoning-effort control to the Firecracker microVM agent flow, defaulting to "low" so sandboxed agent runs stay fast and cheap.

@magistr/fc-task-server 2026.06.09.3

  • inject_task gains an effort arg: z.enum([low,medium,high,xhigh,max]) defaulting to "low", written into the task JSON served to the guest.
  • 3 new unit tests (default low, accepts a level, rejects unknown).

@magistr/firecracker 2026.06.09.20

  • Guest agent script reads effort from the task JSON and passes ${EFFORT:+--effort "$EFFORT"} to claude --print (double-quoted; the value is enum-validated upstream). Pick up the new script via update_agent_script (or re-bake the rootfs).

Effort levels match the Claude Code CLI --effort flag (low/medium/high/xhigh/max; max is Opus-tier only).

Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com

2026.06.09.2Jun 9, 2026

Add @magistr/firecracker and @magistr/fc-task-server extensions

Relocate both Firecracker microVM extensions into the workspace monorepo at Grade A (14/14), repackaged from the published registry versions.

@magistr/firecracker 2026.06.09.19

  • Firecracker microVM lifecycle over SSH + the Unix-socket REST API: machine/boot/drive/network/vsock config, start/stop/pause/resume, snapshot/restore, precision kill_vmm + idempotent start_vmm, and host bootstrap (install Firecracker + guest kernel, setup_tap, build Ubuntu rootfs + agent).
  • Ships the fc-install-firecracker, fc-bake-snapshot and fc-run-agent workflows.

@magistr/fc-task-server 2026.06.09.2

  • Host<->guest task/result control-plane server (deploy / inject_task / collect_result / stop) for Claude Code agents in Firecracker microVMs.

Both gain a README + MIT LICENSE, repository metadata, unit tests (12 and 13 respectively, covering success and failure paths), and two labelled pre-flight checks: valid-ssh-host (policy) and host-reachable (live).

Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com

updated labels

2026.06.09.1Jun 9, 2026
05Stats
A
100 / 100
Downloads
0
Archive size
15.8 KB
  • Has README or module doc2/2earned
  • README has a code example1/1earned
  • README is substantive1/1earned
  • 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 declared1/1earned
  • Verified public repository2/2earned
06Platforms
07Labels