internal/

directory
v0.1.511 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 26, 2026 License: AGPL-3.0

Directories

Path Synopsis
Package contract is the frozen seam shared by the control-plane and the sandbox.
Package contract is the frozen seam shared by the control-plane and the sandbox.
host
api
Package api is the control-plane HTTP API.
Package api is the control-plane HTTP API.
catalog
Package catalog is the human-facing, host-side description of what an agent can be made of: the built-in TOOLS a sandbox already implements (with friendly, operator-readable copy and grouping) and a small set of starter TEMPLATES that pre-fill a sensible persona + toolset.
Package catalog is the human-facing, host-side description of what an agent can be made of: the built-in TOOLS a sandbox already implements (with friendly, operator-readable copy and grouping) and a small set of starter TEMPLATES that pre-fill a sensible persona + toolset.
channels
Package channels is the channel-adapter registry plus adapters.
Package channels is the channel-adapter registry plus adapters.
delivery
Package delivery polls the outbound queue via contract.OutboundReader, delivers messages through channel adapters, and dedups in an in-memory delivered set (the host never writes outbound).
Package delivery polls the outbound queue via contract.OutboundReader, delivers messages through channel adapters, and dedups in an in-memory delivered set (the host never writes outbound).
egress
Package egress is the host-side broker for sandbox-originated calls to approved EXTERNAL APIs beyond the model host.
Package egress is the host-side broker for sandbox-originated calls to approved EXTERNAL APIs beyond the model host.
gateway
Package gateway is the single choke point through which every control-plane mutation flows (persona, enabled tools, packages, wiring, permissions, mounts).
Package gateway is the single choke point through which every control-plane mutation flows (persona, enabled tools, packages, wiring, permissions, mounts).
isolation
DockerIsolator launches each sandbox as a plain Docker container (the default runc runtime — NOT gVisor) via the Docker Engine API over its unix socket.
DockerIsolator launches each sandbox as a plain Docker container (the default runc runtime — NOT gVisor) via the Docker Engine API over its unix socket.
keys
Package keys handles per-session SessionKey generation and custody (a host keystore encrypted under a host master key) plus secure hand-off to the sandbox at launch.
Package keys handles per-session SessionKey generation and custody (a host keystore encrypted under a host master key) plus secure hand-off to the sandbox at launch.
mcp
Package mcp is the host-side Model Context Protocol implementation IronClaw uses to extend agents with externally-served tools WITHOUT giving the sandbox network access or a runtime to run MCP servers in.
Package mcp is the host-side Model Context Protocol implementation IronClaw uses to extend agents with externally-served tools WITHOUT giving the sandbox network access or a runtime to run MCP servers in.
metrics
Package metrics is a dependency-free metrics registry for the IronClaw control plane.
Package metrics is a dependency-free metrics registry for the IronClaw control plane.
modelproxy
Package modelproxy is the host-side model egress proxy: it listens on a unix socket bound into the sandbox and forwards to the model API with a destination allowlist.
Package modelproxy is the host-side model egress proxy: it listens on a unix socket bound into the sandbox and forwards to the model API with a destination allowlist.
onboard
Package onboard implements the guided first-run wizard behind `ironctl onboard`.
Package onboard implements the guided first-run wizard behind `ironctl onboard`.
questions
Package questions holds the host-side store of pending ask_user_question requests a sandbox raised (RFC-0003).
Package questions holds the host-side store of pending ask_user_question requests a sandbox raised (RFC-0003).
queue
Package queue provides the host-side queue implementations: a contract.InboundWriter (the host is the sole writer of inbound) and a contract.OutboundReader (the host reads outbound read-only, with the reopen-per-poll discipline).
Package queue provides the host-side queue implementations: a contract.InboundWriter (the host is the sole writer of inbound) and a contract.OutboundReader (the host reads outbound read-only, with the reopen-per-poll discipline).
registry
Package registry is the control-plane's own data model: agent groups, messaging groups, wirings, sessions, users, roles, and members.
Package registry is the control-plane's own data model: agent groups, messaging groups, wirings, sessions, users, roles, and members.
router
Package router performs inbound routing: messaging-group resolution, fan-out to wired agent groups, engage-mode evaluation, session resolution, and sender/access gating.
Package router performs inbound routing: messaging-group resolution, fan-out to wired agent groups, engage-mode evaluation, session resolution, and sender/access gating.
sandboxexec
Package sandboxexec is the single source of truth for IronClaw's ephemeral, hardened one-shot code-exec box.
Package sandboxexec is the single source of truth for IronClaw's ephemeral, hardened one-shot code-exec box.
scan
Package scan implements `ironctl scan`: a containment self-audit that grades the isolation posture of ANY container, docker-compose service, or Kubernetes pod/manifest on a 0-100 scale across the same dimensions IronClaw's own containment benchmark checks (IRO-369): non-root user, dropped capabilities, seccomp, network isolation, read-only rootfs, docker.sock exposure, and shared host namespaces.
Package scan implements `ironctl scan`: a containment self-audit that grades the isolation posture of ANY container, docker-compose service, or Kubernetes pod/manifest on a 0-100 scale across the same dimensions IronClaw's own containment benchmark checks (IRO-369): non-root user, dropped capabilities, seccomp, network isolation, read-only rootfs, docker.sock exposure, and shared host namespaces.
scheduling
Package scheduling holds the pure logic for scheduled prompts: validation and next-occurrence computation.
Package scheduling holds the pure logic for scheduled prompts: validation and next-occurrence computation.
session
Package session composes the per-session live lifecycle.
Package session composes the per-session live lifecycle.
skills
Package skills implements IronClaw's host-side skills system.
Package skills implements IronClaw's host-side skills system.
sweep
Package sweep runs the periodic maintenance loop: stale-sandbox detection via heartbeat file mtime, due-message wake, recurrence expansion, and orphan reset with backoff.
Package sweep runs the periodic maintenance loop: stale-sandbox detection via heartbeat file mtime, due-message wake, recurrence expansion, and orphan reset with backoff.
types
Package types holds the small shared host-internal structs that flow between the router, delivery, and sweep packages.
Package types holds the small shared host-internal structs that flow between the router, delivery, and sweep packages.
vaultinjector
Package vaultinjector is IronClaw's minimal in-tree reference credential injector: the SEPARATE host-side principal the egress broker forwards a vault:// request TO.
Package vaultinjector is IronClaw's minimal in-tree reference credential injector: the SEPARATE host-side principal the egress broker forwards a vault:// request TO.
Package integration holds cross-package end-to-end tests that wire real host-side and sandbox-side components together (e.g.
Package integration holds cross-package end-to-end tests that wire real host-side and sandbox-side components together (e.g.
Package obs provides IronClaw's structured logging abstraction.
Package obs provides IronClaw's structured logging abstraction.
sandbox
loop
Package loop is the sandbox reasoning poll loop: read pending, format the prompt, call the provider, parse the model's structured output into outbound writes, mark processing/completed, and heartbeat (touch /workspace/.heartbeat).
Package loop is the sandbox reasoning poll loop: read pending, format the prompt, call the provider, parse the model's structured output into outbound writes, mark processing/completed, and heartbeat (touch /workspace/.heartbeat).
provider
CodexProvider speaks the ChatGPT "Codex" backend Responses API (https://chatgpt.com/backend-api/codex/responses) so an agent can be powered by a ChatGPT/Codex OAuth credential instead of a raw provider API key.
CodexProvider speaks the ChatGPT "Codex" backend Responses API (https://chatgpt.com/backend-api/codex/responses) so an agent can be powered by a ChatGPT/Codex OAuth credential instead of a raw provider API key.
queue
Package queue provides the sandbox-side queue implementations: an contract.InboundReader over contract.OpenInboundRO (read-only) and an contract.OutboundWriter over contract.OpenOutboundRW.
Package queue provides the sandbox-side queue implementations: an contract.InboundReader over contract.OpenInboundRO (read-only) and an contract.OutboundWriter over contract.OpenOutboundRW.
tools
Package tools holds the in-sandbox tool implementations.
Package tools holds the in-sandbox tool implementations.
Package smoke holds hermetic end-to-end smoke tests that exercise IronClaw's headline flows across package boundaries without any network, credential, or Docker dependency.
Package smoke holds hermetic end-to-end smoke tests that exercise IronClaw's headline flows across package boundaries without any network, credential, or Docker dependency.
Package version exposes the build version stamped into IronClaw binaries.
Package version exposes the build version stamped into IronClaw binaries.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL