Specification
Host profile
The ~/.asmp/host.yaml document that describes a device.
The host profile is a single document describing what a device is, what it can do, and what policy governs agent registration.
Location
| Scope | Path |
|---|---|
| Personal | ~/.asmp/host.yaml |
| System | /etc/asmp/host.yaml |
Schema (v0.1)
asmp: "0.1"
kind: host
# Identity
host_id: "daniels-macbook-2026"
device_class: personal_computer # personal_computer | server | homelab | vm
# Operating system
os:
name: macOS
version: "15.3.1"
arch: arm64
# Hardware (optional but useful for agents)
hardware:
cores: 12
ram_gb: 36
gpu: "Apple M4 Pro"
# What this host can do
capabilities:
- files.local
- email.local
- calendar.local
- networking
- containers
- gpu.inference
# Where manifests live and how to reach the registry API
registry:
path: ~/.asmp/services/
api: http://127.0.0.1:7700
# Policy constraints on agent registration
policy:
agent_can_register: true
requires_approval: true
max_services: 100
allowed_ports: "7000-9999"
data_sensitivity_default: medium
# Observability endpoints
observability:
logs: ~/.local/log/
metrics: http://127.0.0.1:9090
Fields
Identity
| Field | Type | Required | Description |
|---|---|---|---|
asmp | string | yes | Protocol version ("0.1") |
kind | string | yes | Always host |
host_id | string | yes | Stable device identifier |
device_class | enum | yes | personal_computer, server, homelab, vm |
OS and hardware
Informational. Helps agents make decisions about resource-intensive tasks.
Capabilities
Host-level capabilities (not service-level). Declares what classes of work this device supports.
Registry
| Field | Description |
|---|---|
path | Directory containing *.asmp.yaml manifests |
api | Registration protocol HTTP endpoint |
Policy
| Field | Description |
|---|---|
agent_can_register | Whether agents may POST new services |
requires_approval | Queue registrations for human review |
max_services | Maximum registered services |
allowed_ports | Port range agents may claim (string range or list) |
data_sensitivity_default | Default sensitivity for new services |
Discovery
Controls how the registry finds shipped asmp.yaml files:
discovery:
scan_paths:
- ~/repos-personal
- ~/repos-aic
- ~/repos-eidos-agi
scan_interval: 5m
stale_after: 900
| Field | Default | Description |
|---|---|---|
scan_paths | ~/repos-personal, ~/repos-aic, ~/repos-eidos-agi | Roots to walk for */asmp.yaml and */infra/asmp.yaml |
scan_interval | 5m | Background scan period |
stale_after | 900 | Seconds before a scan-synced service is marked stale |
Observability
Paths and endpoints for logs and metrics. Consumers use these for health dashboards.