# Remote deploy & inventory import > Phase 8 C3 + C4 · designs: [inventory & import](design-phase-8-c3.md) · > [job pipeline](design-phase-8-c4.md) ## Deploy jobs `POST /api/machines/:id/jobs` queues a job; the daemon acknowledges and executes it, streaming throttled progress; the machine page shows live state. Jobs survive daemon disconnects with bounded retries (queue → dispatch → ack-timeout sweep → replay). A profile deploy reuses the same plan/apply pipeline as `hnx install`, fetched by the daemon with a machine PAT — and registers a **deployed agent instance** on the machine. ## Inventory: scan → diff → import 1. **Scan** — the daemon reads each agent's native config dirs (claude-code, codex, deepseek, opencode, pi, hermes) and reports a normalized snapshot: MCP rows, skills, commands, agents/hooks where the target has them. Secrets are redacted daemon-side before upload. 2. **Diff** — the server compares the snapshot against a chosen profile and shows what would be created or reused. 3. **Import** — one click folds the snapshot into platform resources (reuse-or-create) and optionally a new profile. **Capture-as-profile** does the same in one step: everything importable from the latest snapshot becomes a zero-or-more-entry profile — an agent's default state is captureable too.