API Reference host_kit v#0.1.0-beta.1

Copy Markdown View Source

Modules

Elixir-native host infrastructure declarations, planning, and runtime control.

Account references and normalization helpers.

Reference to a declared HostKit account.

Resource address with module/service path context.

Stable address for a resource declaration.

Runtime API for the optional HostKit host agent.

Supervised worker for scheduled drift planning.

Supervised worker for scheduled monitoring checks.

Helpers for declaring HostKit agent systemd units.

HostKit OTP application entry point.

Applies supported HostKit plan changes.

Lifecycle message emitted by HostKit apply when a reporter process is configured.

Reference to a backup payload captured in a tracked HostKit run.

Inspectable Caddy encode directive.

Inspectable Caddy file_server directive.

Inspectable Caddy reverse_proxy directive.

Inspectable Caddy root directive.

Builds Caddy JSON config structs from HostKit Caddy resources.

Caddy JSON apps object.

Caddy JSON config root.

Caddy HTTP app config.

Caddy encode handler.

Caddy file_server handler.

Caddy reverse_proxy handler.

Caddy subroute handler.

Caddy vars handler, used for HTTP roots.

Caddy host matcher.

Caddy HTTP route.

Caddy HTTP server config.

Caddy upstream dial target.

Inspectable Caddy site resource.

A planned change for one HostKit resource.

Static command dependency analysis for HostKit resources.

A parsed, shell-like simple command line stored as argv.

Project-level naming and path conventions.

Core HostKit DSL.

DSL helpers for core systemd resources.

Structured HostKit diagnostic, suitable for pattern matching and compiler-style rendering.

Collection of HostKit diagnostics.

Compiler-style rendering for HostKit diagnostics.

Reference to a named listener/endpoint exposed by a HostKit service.

Resolves endpoint references against service endpoint/listener declarations.

Rendering for HostKit env files.

Concise formatting for common HostKit runtime error terms.

Declarative host firewall policy.

Render HostKit firewall policy to nftables syntax.

Declarative firewall rule.

Host declaration.

Inspectable ingress/application-router declaration.

Renders semantic ingress declarations as Caddy site resources.

Renders semantic ingress declarations as Gatehouse proxy config resources.

Inspectable ingress proxy action.

Inspectable ingress route declaration.

Inspectable ingress server/listener declaration.

Inspectable ingress TLS termination declaration.

Named service listener metadata.

Loads HostKit .exs project declarations.

Read-only inspection of resources on the local host.

Helpers for extracting log management declarations from HostKit projects.

Declarative log management intent.

Runtime boundary for managing mise and mise-installed tools.

mise runtime implementation backed by the mise CLI.

Unix mode normalization helpers.

Helpers for extracting monitoring declarations from HostKit projects.

Declarative monitoring check metadata.

Monitoring check execution result.

Network address normalization helpers.

Builds OpenTelemetry Collector config maps from HostKit telemetry declarations.

Runtime boundary for reading and installing OS packages.

Package runtime implementation backed by common OS package managers.

JSON lock file for resolved target package names.

Detects the target host package manager.

Filesystem cache for Repology API responses.

Repology client wrapper with filesystem caching.

HTTP client for the Repology API.

Repology API rate limiter backed by Hammer.

Package record returned by the Repology API.

Resolved package capability metadata.

Resolves semantic package capabilities to concrete OS package names.

Detects Repology repository names for package resolution targets.

Structural plan generated from a HostKit project.

Portable JSON artifact for a resolved HostKit plan.

Human-readable plan formatting.

Deprecated compatibility alias for HostKit.Provider.

Project-level declaration loaded from HostKit DSL files.

Helpers for building project-local HostKit DSLs.

Raised when a ProjectDSL defservice block contains an unsupported form.

Raised when a ProjectDSL prefix lookup references an undefined prefix.

Raised when a ProjectDSL root lookup references an undefined root.

Provider behaviour for HostKit integrations.

Configuration for a HostKit provider instance.

Caddy provider for HostKit.

DSL macros for Caddy resources.

Elixir application provider exposing Mix and Elixir app recipes.

Gatehouse provider exposing Gatehouse deployment recipes.

Generic proxy desired-state resource.

Readiness check execution for HostKit resources.

HTTP readiness check.

Systemd readiness check.

Reusable HostKit DSL recipes.

Recipe for building and running a Phoenix/Elixir release on the target host.

Recipe for running an already-built Gatehouse release under systemd.

Read-only inspection of resources through a HostKit runner.

Renders resources through core renderers and optional plugin renderers.

Helpers for resource identity, dependency metadata, and JSON-safe terms.

Desired Linux account.

Desired host capability resolved to installable resources for a target system.

Declarative command step used for build/bootstrap workflows.

Desired directory with ownership and mode.

Desired dotenv-compatible env file with redacted secret entries.

Desired file content with ownership and mode.

Desired mise installation and system-wide tool versions.

Desired OS package installed through the target package manager.

Waits until a set of readiness checks pass.

Validated Bash script resource for explicit shell execution.

Desired source checkout. Git is the first supported backend.

Minimal host-side record of an applied HostKit plan.

One compact change entry in a HostKit run record.

Reproducibility stamps for command-like resources.

Command execution boundary for HostKit apply/deploy operations.

Formatting helpers for commands executed through HostKit runners.

Filesystem helpers over HostKit runners.

Local command runner for HostKit operations.

Small filesystem and command helpers around HostKit runners.

Stateless SSH runner backed by OTP :ssh.

Reusable OTP SSH connection runner.

SSH key callback for a single OpenSSH identity file.

Runtime controls for systemd-backed units and transient jobs.

Reusable cgroup resource controls for systemd-backed runtimes.

Reusable process sandbox options for systemd-backed runtimes.

HostKit alias for Unitctl transient service specs.

References to secrets resolved at HostKit control-plane boundaries.

A named group of resources that make up an application or host capability.

POSIX shell rendering for the few HostKit paths that must cross sh -c or SSH exec.

A parsed Bash script with static command analysis metadata.

HostKit command and shell sigils.

Semantic identity/provenance for a declared source.

Reference to a declared HostKit source for command/run inputs.

Source location metadata for HostKit DSL resources.

State snapshot persistence for HostKit plans and agent status.

Helpers for named storage volumes.

Named storage volume metadata.

Top-level HostKit supervision tree.

Systemd calendar expression helpers.

Shared systemd directive coercion for DSL and runtime builders.

Persistent systemd service unit declaration backed by systemdkit rendering.

Converts values into systemd [Service] options.

Systemd target reference helpers.

Persistent systemd timer unit declaration backed by systemdkit rendering.

Execution target for HostKit read/apply operations.

Helpers for extracting OpenTelemetry collection intent from HostKit projects.

Declarative OpenTelemetry collection intent.

Platform tenant metadata.

Validates resources through core validators and optional plugin validators.

Helpers for workspace-scoped metadata.

Client boundary for communicating with workspace agents.

Local placeholder workspace-agent client used before the Unix socket transport exists.

Workspace agent server speaking Erlang external terms over a Unix socket.

Erlang external term format client for workspace agents over Unix sockets.

Workspace egress policy metadata.

Mix Tasks

Applies supported HostKit plan changes. Requires --dry-run or --confirm.

Builds a down/rollback plan from an existing HostKit plan artifact.

Dumps a HostKit project as inspectable Elixir structs.

Builds and prints a HostKit plan.

Renders a HostKit resource by kind and name.

Lists minimal HostKit run records.