CLI Reference

Complete command reference for the Decillion AI CLI tool

Installation

npm install -g decillion-cli

After installation, you can use the decillion command globally.

Authentication & Users

login [username]

Log into your account. The username is permanent and cannot be changed once set.

# Example
decillion login alice123

users.get [userId]

Get data for a specific user by ID.

# Example
decillion users.get 123@global

users.me

Get your own user profile and metadata.

# Example
decillion users.me

users.list [offset] [count]

List users in paginated format.

Parameters:

  • offset: number to skip (e.g., 0)
  • count: number to fetch (e.g., 10)
# Example
decillion users.list 0 10

logout

Log out and clear local auth files for the CLI.

# Example
decillion logout

Billing & Keys

charge

Generate a payment link for adding credits.

# Example
decillion charge

printPrivateKey

Print your private key (use with caution).

# Example
decillion printPrivateKey

users.lockToken [amount] [type] [target]

Lock tokens for payments or on-chain execution.

Parameters:

  • amount: tokens to lock
  • type: exec or pay
  • target: validator list (exec) or receiver userId (pay)
# Example
decillion users.lockToken 100 pay 145@global

users.consumeLock [lockId] [type] [amount]

Consume a locked token for a specific usage.

# Example
decillion users.consumeLock lock_123 pay 10

Points

points.create [isPublic] [hasPersistentHistory] [origin] [title]

Create a new point with the given configuration.

Parameters:

  • isPublic: true/false — should the point be public?
  • hasPersistentHistory: true/false — should it retain history?
  • origin: e.g., "global" — namespace of the point
  • title: display name for the point
# Example
decillion points.create true true global "Team Space"

points.update [pointId] [isPublic] [hasPersistentHistory]

Update visibility and history settings for a point.

# Example
decillion points.update 345@global false true

points.get [pointId]

Retrieve details of a specific point.

# Example
decillion points.get 345@global

points.delete [pointId]

Delete a point by ID.

# Example
decillion points.delete 345@global

points.join [pointId]

Join a public point by ID.

# Example
decillion points.join 345@global

points.myPoints [offset] [count] [origin]

List your own points in a specific origin.

Parameters:

  • offset: skip count (e.g., 0)
  • count: number of results (e.g., 10)
  • origin: optional filter like "global"
# Example
decillion points.myPoints 0 10 global

points.list [offset] [count]

List all public points with pagination.

# Example
decillion points.list 0 10

points.history [pointId]

Fetch recent message history for a point.

# Example
decillion points.history 345@global

points.addMember [userId] [pointId] [metadata]

Add a member to a point you administer.

# Example
decillion points.addMember 123@global 345@global {'role':'teacher'}

points.updateMember [userId] [pointId] [metadata]

Update a member’s metadata in a point.

# Example
decillion points.updateMember 123@global 345@global {'role':'admin'}

points.removeMember [userId] [pointId]

Remove a member from a point.

# Example
decillion points.removeMember 123@global 345@global

points.listMembers [pointId]

List members inside a point.

# Example
decillion points.listMembers 345@global

points.addMachine [pointId] [appId] [machineId]

Attach an existing machine to a point.

# Example
decillion points.addMachine 345@global 77@global 99@global

Signaling

points.signal [pointId] [userId] [transferType] [data]

Send a signal/message in a point or to a specific user.

Parameters:

  • pointId: point to send to (e.g., 345@global), or "-" for single user message
  • userId: recipient (e.g., 123@global), or "-" for broadcast
  • transferType: message type (e.g., single, broadcast)
  • data: JSON or string payload

Example 1: Direct message to user

decillion points.signal - 123@global single {'text': 'Hello!'}

Example 2: Broadcast to point

decillion points.signal 345@global - broadcast {'text': 'Hello! World'}

points.fileSignal [pointId] [userId] [transferType] [data]

Shortcut for sending file-related signals (same signature aspoints.signal).

points.paidSignal [pointId] [userId] [transferType] [data] [lockId]

Send a paid signal using a previously locked token.

Invites

invites.create [pointId] [userId]

Invite a user to a point you administer.

# Example
decillion invites.create 345@global 123@global

invites.cancel [pointId] [userId]

Cancel a previously sent invite.

# Example
decillion invites.cancel 345@global 123@global

invites.accept [pointId]

Accept an invite.

# Example
decillion invites.accept 345@global

invites.decline [pointId]

Decline an invite.

# Example
decillion invites.decline 345@global

Storage

storage.upload [pointId] [filePath] [fileId?]

Upload a file to a point. Optionally append using fileId.

# Example
decillion storage.upload 345@global ./book.pdf

storage.uploadUserEntity [entityId] [filePath] [machineId?]

Upload a user entity (like avatar) with optional machineId.

# Example
decillion storage.uploadUserEntity avatar ./avatar.jpg

storage.download [pointId] [fileId]

Download a file from a point to your local device.

# Example
decillion storage.download 345@global 789@global

Chains

chains.create [participantsJson] [isTemporary]

Create a workchain with participant stakes.

# Example
decillion chains.create {'123.124.125.126':1600,'127.128.129.120':1500} false

chains.submitBaseTrx [chainId] [key] [payload]

Submit a base transaction on-chain.

# Example
decillion chains.submitBaseTrx 1 /points/create {'isPublic':true,'persHist':true,'orig':'global'}

chains.registerNode [orig]

Register a node for a chain origin.

# Example
decillion chains.registerNode global

Machines

machines.createApp [chainId] [username] [title] [desc]

Create a new app on a chain.

# Example
decillion machines.createApp 1 devuser "Calculator" "Simple math app"

machines.createMachine [username] [appId] [path] [runtime] [comment]

Create a machine linked to an app.

# Example
decillion machines.createMachine calc 984@global /api/sum wasm "sum endpoint"

machines.updateMachine [machineId] [path] [metadata] [promptFile?]

Update a machine’s path and metadata (optional prompt file).

# Example
decillion machines.updateMachine 876@global /api/sum {'version':'1.2.0'}

machines.deploy [machineId] [folderPath] [runtime] [metadata]

Deploy a project to a machine (wasm, elpis, docker).

# Example
decillion machines.deploy 876@global ./calculator wasm {}

machines.runMachine [machineId]

Run a machine.

# Example
decillion machines.runMachine 876@global

machines.deleteMachine [machineId]

Delete a machine by id.

# Example
decillion machines.deleteMachine 876@global

machines.listApps [offset] [count]

List apps with pagination.

# Example
decillion machines.listApps 0 15

machines.listMachines [offset] [count]

List machines with pagination.

# Example
decillion machines.listMachines 0 15

PC Runtime

pc.runPc

Start a cloud PC micro VM.

# Example
decillion pc.runPc

pc.execCommand [vmId] [command]

Run a shell command on a running VM.

# Example
decillion pc.execCommand [email protected] "mkdir test"

Need More Help?

For more detailed documentation and examples, visit our full documentation site.

View Full Documentation