Skip to content

Demo/pi#126

Open
tensor-ninja wants to merge 17 commits intomainfrom
demo/pi
Open

Demo/pi#126
tensor-ninja wants to merge 17 commits intomainfrom
demo/pi

Conversation

@tensor-ninja
Copy link
Collaborator

No description provided.

tensor-ninja and others added 17 commits March 3, 2026 14:53
Establish the Go module, protobuf contract, config/DB layers, and gRPC
skeleton for nightshiftd per RFC #113. All 12 RPCs return Unimplemented.

- Proto: nightshift.runtime.v1.AgentRuntime with buf codegen
- Config: TOML structs matching RFC defaults, Duration type
- DB: SQLite with WAL, agents/runs/run_events tables
- Server: gRPC stub embedding UnimplementedAgentRuntimeServer
- Main: boot sequence with config, slog, DB, Unix socket, signal handling

Closes #115

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Phase 1: Add container_id column migration to runs table, InsertEvent,
UpdateRunContainerID, ListRunsByAgentID, and ListActiveRuns DB methods
with tests.

Phase 2: Add agent HTTP client implementing health checks, run dispatch,
and SSE event streaming for communicating with agent containers.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace cio.NullIO with log-capturing streams so container output
is visible in daemon logs. Log task exit codes on both normal exit
and SIGKILL timeout paths.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Expand the ParseImageLabels switch so image authors can use the
explicit runtime names in addition to "container" and "vm".

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add ExportImage/ImportImage to the containerd Client interface and
implement ImageBridge to automatically export images from runc-containerd
and import them into firecracker-containerd with devmapper unpack.

Also normalizes image refs throughout the client (short names like
"foo/bar:latest" → "docker.io/foo/bar:latest") and passes vCPU/memory
configuration to Firecracker VM creation.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add env_json column to runs table so CreateRunRequest.env is persisted.
The orchestrator now unmarshals run env and merges it with the agent
config env (run-scoped values take precedence), then passes the merged
map to both the container environment and the agent /run HTTP request.

This allows callers to pass secrets like ANTHROPIC_API_KEY at run
creation time rather than baking them into the agent config.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add a Claude Agent SDK example that implements the Agent Instance
Protocol using aiohttp and claude-agent-sdk with bypassPermissions
mode. Includes Dockerfile with Node.js for SDK runtime, non-root
user, and nightshift image labels. README documents firecracker
DNS and NAT setup for operators.

Also fix echo-agent README grpcurl examples to include proto import
path (server has no gRPC reflection).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant