Arcane OS Docs Development only

Reference

Arcane.provisioning.plan()

Creates a current read-only provisioning plan without applying it. Provisioner-only; requires provisioning.manage.

  • Reference

This focused page is derived from the mechanically checked full member inventory.

Syntax

Arcane.provisioning.plan(usernames)

Parameters

Username or array

Return value

Promise<{ok, version, installation, requirements, users, usernamePolicy, elevated, simulation, blocked, steps}>

Description

Creates a current read-only provisioning plan without applying it. Provisioner-only; requires provisioning.manage.

Overview

Builds a read-only plan for provisioning one or more local Arcane users. It validates host-specific username policy, inspects current installation and requirements, and describes the work that a later privileged operation would perform. It does not create users, change passwords, assign shells, or install Arcane.

Input and result

Pass one username or an array. The frontend normalizes a single value to an array; Core applies the native username policy and rejects the whole request when validation fails.

The Provisioner-only method requires provisioning.manage and resolves to:

{
  ok, version, installation, requirements,
  users: [{username, exists, action}],
  usernamePolicy, elevated, simulation, blocked, steps
}

Treat the returned plan as a current snapshot. Re-read it before presenting a later mutation because accounts, elevation, requirements, or installation state may have changed.

Example

async function previewProvisioning(usernames) {
    const plan = await Arcane.provisioning.plan(usernames);
    for (const user of plan.users) {
        console.log(`${user.username}: ${user.action}`);
    }
    return plan;
}

await previewProvisioning(['arcane-demo-user']);

Reference group

Session, provisioning, diagnostics, and development

Repository and reviewed source access