Skip to Content
Manual

Manual

Command Line Options

Commands match the groups shown in tiles help: Getting Started, Accounts, Plugins, 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 tiles help plugin

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

Plugins

Plugins (tiles plugin)

Install, list, and remove Tiles plugins. Plugins extend Tiles with extensions and bundled skills.

tiles plugin install <url-or-path> # Install from a URL or local archive tiles plugin uninstall <plugin-name> # Remove an installed plugin tiles plugin list # List installed plugins

tiles plugin install <url-or-path>: Install a plugin from a hosted URL or from a local .zip or .tar.gz file on disk. Verified Tiles plugins are listed at tiles.run/plugins.

tiles plugin uninstall <plugin-name>: Remove an installed plugin by name.

tiles plugin list: List installed plugins.

Plugin archives must be .zip or .tar.gz files, either downloaded from a URL or available on the local filesystem.

Plugin package layout

plugin_name - extensions - extension_1 - ... - extension_2 - ... - skills - skill_1 - SKILLS.md

Plugins can bundle skills under skills/. Learn how to use Skills slash commands in chat.

Sync

Link devices once, then sync chats whenever you need to. Linking is the consent step: one device creates a token, the other device accepts it. After that, each device can sync only with peers it has already linked.

Online and same-network offline linking use the same commands. Iroh handles the transport. When both devices are on the same local network without internet, Tiles can discover the peer over mDNS.

On the device that starts the link:

tiles link create

Tiles prints a link token. Share that token with the other device out of band.

On the other device:

tiles link add <token>

That completes the link. The token can be either:

  • Online: a UCAN token (for example, ucan:eyJ...YzQ).
  • Offline: an eight-character alphanumeric code when both devices are on the same local network.

The short version:

tiles link create # Start a link and print a token tiles link add <token> # Accept the token on the other device

tiles link create: Creates a token for linking another device. Online linking returns a UCAN token; offline linking on the same local network returns an eight-character code.

tiles link add <token>: Accepts the token from the first device and completes the link.

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)

After devices are linked, sync is a two-sided action. One device listens for an incoming sync request. The other device starts sync toward that listener’s DID.

On the device that should receive the request:

tiles sync

On the other device, run sync with the listener’s DID:

tiles sync did:key:z6Mknxy...YWSmTcZA

The short version:

tiles sync # Listen for a sync request tiles sync <DID> # Sync with a linked peer

tiles sync: Listens for an incoming sync request from a linked peer.

tiles sync <DID>: Starts sync with a linked peer by DID.

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.

Using Skills

Plugins can ship skills alongside extensions. Tiles can also use available skills automatically during a conversation when appropriate.

/skills

List available skills from installed plugins.

$<skill-name>

Run a skill directly (for example, $my-skill).

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.