Skip to main content
These steps apply to both CLI modes after local setup. Enrollment creates a standby connection; activation changes where new calls are delivered.
Enrollment is a coordinated private-pilot step. Ask Chert to confirm the enabled control-plane and relay origins and provide the owner/admin authentication procedure. There is no chert login command yet. A FaceTime project API key cannot replace the required user access token.

1. Select your project and line

Inject CHERT_USER_ACCESS_TOKEN securely into a management shell. Replace uppercase placeholders below with values confirmed by Chert. CONTROL_ORIGIN is the HTTPS origin, without /api.
For create-room mode, substitute chert-room.json. Confirm the exact project and line IDs. The preview requires exactly one line in the project; the CLI does not automatically choose one or activate every project.

2. Enroll in standby

This writes a new config and protected connection/recovery credentials. Keep both private. If enrollment or saving the response fails, inspect bindings before retrying; do not blindly enroll again.

3. Check and connect

In the runtime shell, remove CHERT_USER_ACCESS_TOKEN from the environment. The connector uses the saved credentials instead. Run your agent normally, then:
Use chert create-room for a create-room config. A successful welcome confirms transport connectivity. check currently exits 3 for partial diagnostics; neither command proves a real call works.

4. Activate the selected line

In the management shell, refresh the line and binding listings from step 1. After confirming the target with Chert, supply the current assignment generation:
Use none only when there is no previous active binding. For a replacement, use the previous binding’s UUID. A stale generation or mismatched binding is rejected. Activation closes the standby connection. Restart the same runtime command, or let its supervisor restart it, before making a test call. Installation, checks, and reconnects never activate routing by themselves.

Keep it running

Run the connector alongside your application under your host’s process supervisor. Keep one writer per state directory on durable local disk, including across deployments. Never share one directory between replicas or delete it to clear an error. To stop new calls going to this binding:
Drain returns future calls to the line’s saved webhook route. Keep the original connector available to finish active calls and recovery. See Commands for saved status, revocation, and cleanup diagnostics.