Skip to Content
Manual

Manual

Command Line Options

Commands match the groups shown in tiles help: Getting Started, Accounts, Sync, and System.

Getting Started

Main command (tiles)

Launches onboarding (first run) and the interactive chat.

tiles # Onboarding (if needed) and interactive chat

Run models (tiles run)

Run a Modelfile (uses the default model if none is provided).

tiles run [MODELFILE_PATH] # Default model if path omitted

The same optional flags below also apply when you run tiles without a subcommand.

tiles run tiles run ./path/to/Modelfile

Optional tuning flags:

tiles run --context-length 8192 tiles run --gpu-layers 32 tiles run --offload-kqv tiles run --offload-kqv false tiles run --batch-size 512

--context-length <CONTEXT_LENGTH>: Context window for local inference.

--gpu-layers <GPU_LAYERS>: Number of model layers to offload to the GPU.

--offload-kqv [<OFFLOAD_KQV>]: Offload K/Q/V attention operations (true or false).

--batch-size <BATCH_SIZE>: Prompt processing batch size.

Values you set on the command line are persisted in config.toml and apply on later runs.

Create a new Modelfile by adding a plain text file named Modelfile:

FROM mlx-community/Qwen3.5-4B-MLX-4bit SYSTEM You are Mario from Super Mario Bros, acting as an assistant.

Use any mlx-community/ model (macOS) or GGUF model (Linux) hosted on Hugging Face in the FROM field. We are working on adding more model path sources in FROM, including local paths. Learn more in the Tilekit Modelfile reference.

Help (tiles help)

Show the top-level help menu or help for a specific command.

tiles help tiles help run tiles help link

Accounts

Account (tiles account)

Manage your user account: root identity and display nickname.

tiles account create [<nickname>] # Create root identity (nickname optional) tiles account set-nickname <nickname> # Set nickname tiles account # Show account details
tiles account create alice tiles account set-nickname alice tiles account

ATProto (tiles at)

ATProto-related commands. ATProto is currently used to share chat sessions.

  • tiles at login <handle>: log in with your ATProto handle (for example, alice.bsky.social) via browser OAuth.
  • tiles at logout: log out of the current ATProto account.
tiles at login alice.bsky.social tiles at logout

Authentication currently uses a localhost callback (127.0.0.1:8988), and session state is stored locally in the Tiles database.

Data (tiles data)

Configure your data and storage paths.

tiles data set-path <path> # Set data folder
tiles data set-path ~/.tiles/data

Sync

Link devices via peer-to-peer. Tiles can sync chats across multiple linked devices, with or without the internet. Linking is a one-time step so both sides consent before any sync traffic is accepted; you do not need to re-link each time you sync.

Online and offline linking use the same commands. Iroh handles transport in both cases. On the same local network without internet, devices discover each other over mDNS. Both modes require the peer DID.

On the first device:

$ tiles link create did:key:z6Mknxy...YWSmTcZA

The command prints a token in the terminal. Share it out of band with the peer you want to link.

On the other device:

tiles link add <token>

The token format depends on how the devices connect:

  • Online: a UCAN token (for example, ucan:eyJ...YzQ).
  • Offline (same network, mDNS discovery via Iroh): an eight-character alphanumeric code.

tiles link create <PEER_DID>: Creates an authorization token for linking with the peer DID. Online linking returns a UCAN token; offline linking on the same local network (mDNS via Iroh) returns an eight-character alphanumeric code.

tiles link add <token>: Completes linking with the token from the first device’s output.

tiles link list-peers: Lists linked peers by DID (decentralized identifier) and nickname.

tiles link list-peers

tiles link revoke <DID>: Unlinks a peer. Future sync requests from that peer are ignored.

tiles link revoke <DID> # Unlink a peer; ignore their future sync requests

Sync chats (tiles sync)

Sync chats with peers.

tiles sync [DID]: Pass a linked peer DID to sync with that peer. Omit DID to listen for incoming sync requests.

Once linked, run on either device when online:

tiles sync did:key:z6Mknxy...YWSmTcZA

Offline (same network): on the device that will receive the sync, start the listener first:

tiles sync

On the other device, run toward the listener’s DID:

tiles sync did:key:z6Mknxy...YWSmTcZA

When a sync run finishes, you should get a notification on the devices involved.

System

App updates (tiles update)

Update Tiles to the latest version.

tiles update # Check for and install app updates

Health (tiles health)

Check the status of dependencies.

tiles health

Inference server (tiles server)

Configure the inference server.

tiles server start # Start the inference tiles server stop # Stop the inference tiles server daemon true # Keep inference running after the REPL exits tiles server daemon false # Stop inference when the REPL exits (default)

tiles server daemon [FLAG] configures whether inference runs in the background. FLAG is true or false. When true, closing the REPL does not stop inference. The setting is stored under [inference] daemon in config.toml.

Daemon (tiles daemon)

Configure daemon behavior.

tiles daemon start # Start the daemon (auto-starts when you run `tiles`) tiles daemon start 1729 # Start the daemon on a custom port tiles daemon stop # Stop the daemon

Slash commands

Slash commands give you fast, keyboard-first control over Tiles in interactive chat. Type /? or /help in the prompt to open available commands and quickly run actions like checking session state, resuming prior sessions, and sharing chats without leaving the terminal. Use /bye to exit the chat session.

Session Commands

/status

Show the current session state.

/sessions

List available sessions in local storage.

/resume <sessionId>

Resume a specific session by ID.

Sharing Commands

These commands require an active ATProto login. See ATProto (tiles at).

/share (via ATProto)

Create a shareable link for the current session.

/share <sessionId> (via ATProto)

Create a shareable link for a specific session.

Example shared session link: tiles.run/share/YXQ6Ly9k…ZTJr.

Uninstall Tiles (macOS)

By default, uninstalling Tiles removes only binaries and shared payloads under /usr/local. User data files under ~/.local/share/tiles (or a custom [data] path in config.toml) are not deleted, so chats, memory, databases, and logs remain for a later reinstall. Wipe that data only when you want a clean slate.

Read the full step-by-step procedure in the Tiles uninstaller skill, including optional receipt and keychain cleanup. With coding agents (for example Claude Code or Codex), share that URL in your prompt and ask the agent to follow it, adapting paths that differ on your machine.

We are actively working on an official Tiles uninstaller.