curl, tar, sha256sum, and Node.js 22 or newer at /usr/bin/node. You need root or sudo access and outbound HTTPS access to both the configured AgentV release host and the AcornOps API. Other Linux distributions, including Rocky Linux, are not qualified for this release.
Register a VM
- Open a workspace in the management console.
- Go to Virtual Machines.
- Enter a VM name.
- Keep Read-only, or select Read-write and add each exact restartable
.serviceunit. - Copy the single generated command before its 15-minute countdown expires.
- Run the command on the intended Linux host.
- Confirm the VM shows as connected.
{ virtualMachine, installInstructions }. The VM record contains the normalized host access mode, restart-service scope, and run permission mode. installInstructions.command contains a target-bound, one-use enrollment token; it does not contain the durable AgentV credential or a user-editable privilege policy. The root installer exchanges the token only after host and release validation, installs the enrollment-bound policy, stores the resulting credential in /etc/acornops/agentv.env, and commits it only after the candidate AgentV authenticates successfully.
Treat the command as sensitive until the token is exchanged or expires. The copied command can remain in shell history, but it contains only the 15-minute, single-use enrollment token—not the durable AgentV credential—and becomes unusable immediately after a successful exchange. Clear the history entry if your host policy requires it. If the token expires, use Generate new command. Issuing a new command invalidates older outstanding enrollment commands for that VM.
If you close onboarding before the VM connects, open that VM’s settings and use Finish AgentV setup to generate a fresh initial-enrollment command. You do not need to delete and register the VM again.
Agent behavior
The AgentV authenticates with the protected local credential and connects to:example.com with your deployment domain. The public demo agent route is wss://api.demo.acornops.dev/api/v1/agent/connect. Do not claim another distribution as supported until the same bootstrap and live-systemd canary passes there.
For the initial bootstrap, the host’s curl and Node.js runtime must already trust the platform certificate. Install an organization-private root in the host trust store before running the generated command. After installation, ACORNOPS_AGENT_ADDITIONAL_CA_BUNDLE_FILE may point to an additional root-managed PEM bundle for the AgentV runtime; repair and replacement preserve that setting. Never disable certificate or hostname verification.
Repair and credential replacement
Use Upgrade or repair AgentV for a healthy installation that needs the pinned release reapplied or upgraded. Its command contains no enrollment token and reuses the root-owned local credential. It fails before modification if the local target, platform URL, environment ownership, or credential is missing or mismatched. Use Replace AgentV credential after suspected exposure or when rebuilding the VM. The replacement command has a fresh one-use token and preserves the VM’s registered access policy. The current credential and connection remain valid while the candidate is checked; the installer promotes the replacement only after provisional authentication. A failed cutover restores the previous release, environment, helper policy, socket state, credential, and service connection. The original installation command can also be rerun on the same correctly configured VM: its consumed token is ignored and the operation behaves like a repair.Update host capabilities
You can change approval behavior directly in VM Settings without running a host command. Changing the exact restart-service allowlist is different because the policy and privileged socket are root-owned on the VM. Edit Host capabilities, then select Generate apply command. AcornOps records the requested policy as pending and returns one 15-minute, one-use command. Run it on the existing VM withsudo. The command does not contain the service list; its token is bound to the target and immutable pending policy.
The applied policy remains visible separately from the pending policy. AgentV write tools are paused for both new and already-running sessions until the command commits. The installer reuses the transactional credential-replacement path, so it stages the helper policy, verifies the candidate, and only then activates the new policy and credential. If the update fails, the previous policy, credential, installation, and connection remain active. If you lose or expire the command, select Generate new apply command; this cancels the older outstanding command without changing the applied policy.
Run permissions
Open the VM’s Settings page to choose the same run permission modes available for Kubernetes targets:- Read only removes write-capable tools from VM runs.
- Ask before changes is the production default and pauses every permitted write for approval.
- Auto-run allowed changes permits administrator-reviewed, non-destructive writes to run without a per-call approval.
Inventory and findings
VM snapshots populate:- host summary and OS metadata,
- mounted filesystem capacity,
- process inventory,
- systemd service inventory,
- listening ports,
- collector health and metrics history,
- findings derived from host health signals.
Tools and MCP
The VM built-in tools include:get_host_summarylist_filesystemslist_processesget_processlist_servicesget_servicequery_logslist_listenersrestart_servicewhen all local, remote, and approval gates permit it
Troubleshooting chat
VM troubleshooting runs can only use tools enabled for that target and run mode.restart_service is excluded from read-only runs. Under Ask before changes it requires human approval; under Auto-run allowed changes the reviewed restart tool may run automatically, but only for a unit in the root-owned allowlist. For read-write onboarding, the root installer sets ACORNOPS_AGENT_WRITE_ENABLED=true, writes the selected exact units to /etc/acornops/agentv-actions.json, and enables the helper socket. The helper rejects every unit outside that list. Arbitrary commands, globs, AgentV’s own units, and unrestricted systemctl are not supported.
After installation, run acornops-agentv-doctor. It checks configuration,
required binaries, journal access, helper policy, filesystem access, and TLS.
The installer adds the dedicated user to systemd-journal when available;
otherwise log capability is reported as degraded instead of returning an empty
successful result.
VM conversations follow the same collaboration rules as Kubernetes target conversations. The creator can send follow-ups. Other users with target read access can open the conversation and watch active runs live, but the composer stays view-only. Starting a new VM conversation after recent target chat activity shows an inline warning so operators can review or continue the relevant investigation before creating a separate thread.
If the VM stays disconnected, verify /usr/bin/node --version, the platform and release URLs, host CA trust, outbound HTTPS and WebSocket access, systemctl status acornops-agentv, journalctl -u acornops-agentv, and acornops-agentv-doctor. If a never-enrolled VM has no local configuration, use Finish AgentV setup. If the control plane already has an active credential but the host was rebuilt or its local configuration is missing or mismatched, generate a replacement-credential command rather than editing the durable credential manually.