Skip to content

AI on Smart Pi One

The Smart Pi One and Smart Pad are 32-bit ARM (Allwinner H3 / armv7l) single-board computers. Most modern AI command-line tools ship only for 64-bit machines and refuse to install on this architecture. YUMI-LAB maintains dedicated installers that bring six of today's leading AI coding assistants to the board — running an interactive AI agent directly in the terminal, on hardware with as little as 1 GB of RAM.

1. Available AI Assistants

Yumi Code CLI is our own agent, written in Go for these boards — announced here when it ships. The six above are available today.

2. At a glance

Tool Runs on the board Sign-in Core throttle Repository
Claude Code CLI Native — Node.js, no emulation Claude Pro/Max account (OAuth, no API key) CLAUDE_CPUS claude-code-smartpi
Codex CLI Native when available — cross-compiled armv7, falls back to QEMU emulation otherwise OpenAI account (device-auth) or API key CODEX_CPUS (+ CODEX_ENGINE) codex-cli-smartpi
Grok CLI Emulated — QEMU user-mode (aarch64) X (x.com) / grok.com account (device-auth, no API key) GROK_CPUS grok-cli-smartpi
Kimi Code CLI Native — npm / Node 22 (TypeScript) Kimi account (OAuth) or API key KIMI_CPUS (KIMI_CODE_CPUS) kimi-code-smartpi
Kimi CLI Native — Python via uv (lighter) Kimi Code plan (OAuth) or KIMI_API_KEY KIMI_CPUS + KIMI_BUILD_CPUS kimi-cli-smartpi
Vibe CLI Native — Python thin client Mistral browser sign-in (PKCE) or MISTRAL_API_KEY VIBE_CPUS + VIBE_BUILD_CPUS vibe-cli-smartpi

All six can sign in with your existing provider account — no API key, no separate developer billing. Codex CLI, Kimi Code CLI, Kimi CLI and Vibe CLI additionally accept a direct API key if you prefer. (Kimi CLI and Kimi Code CLI are two separate Moonshot tools — see which to choose.)

Always the latest version. Every project installs the newest published release of its CLI, natively where the platform allows. Grok always runs under emulation — its official binary is 64-bit only. Codex CLI runs natively whenever a native armv7 build exists for the resolved version, and falls back to the same emulation path otherwise — see Getting the native build. The installer is also the updater — re-run it to move to the latest. Each repo ships a <cli>-check-update probe that prints {installed, latest, update_available}, and you can pin a specific version if you ever need to.

Controlling CPU usage

Every CLI runs through a taskset / nice wrapper, so you can bound how much of the board it takes. There are two knobs:

  • <CLI>_CPUS — cores used by the running agent: CLAUDE_CPUS, CODEX_CPUS, GROK_CPUS, KIMI_CPUS (KIMI_CODE_CPUS), VIBE_CPUS.
  • <CLI>_BUILD_CPUS — cores used by the one-time install compile, where there is one: KIMI_BUILD_CPUS, VIBE_BUILD_CPUS.

Both default to all 4 cores. Capping them makes the board run cooler and stay responsive for other work — worth doing on a passively-cooled unit, or whenever a sustained load would otherwise heat the SoC enough to throttle or freeze it:

GROK_CPUS=0,1 grok                  # run the agent on 2 cores
KIMI_BUILD_CPUS=0,1 curl  | bash   # install/compile on 2 cores

On the 1 GB board the installers also enable earlyoom as a memory safety net, and the rule of thumb is one heavy CLI at a time (Claude Code, Grok and Kimi Code additionally ship a job daemon for running batches safely).

3. Install

Each tool installs with a single command on the board (run as a normal user, not root):

# Claude Code CLI
curl -fsSL https://raw.githubusercontent.com/Yumi-Lab/claude-code-smartpi/main/install.sh | bash

# Codex CLI
curl -fsSL https://raw.githubusercontent.com/Yumi-Lab/codex-cli-smartpi/main/install.sh | bash

# Grok CLI
curl -fsSL https://raw.githubusercontent.com/Yumi-Lab/grok-cli-smartpi/main/install.sh | bash

# Kimi Code CLI (TypeScript)
curl -fsSL https://raw.githubusercontent.com/Yumi-Lab/kimi-code-smartpi/main/install.sh | bash

# Kimi CLI (Python)
curl -fsSL https://raw.githubusercontent.com/Yumi-Lab/kimi-cli-smartpi/main/install.sh | bash

# Vibe CLI
curl -fsSL https://raw.githubusercontent.com/Yumi-Lab/vibe-cli-smartpi/main/install.sh | bash

Re-run any of these later to update to the latest version. To keep the board cool during a compile, prefix the installer with its build knob — see Controlling CPU usage.

4. Requirements

  • A Smart Pi One or Smart Pad running a Debian-based Linux (see Install Linux)
  • armv7l / 32-bit ARM CPU (Allwinner H3)
  • At least 1 GB RAM
  • An active internet connection
  • Access to the matching provider: a Claude Pro/Max account (Claude Code), an OpenAI account or API key (Codex CLI), an X (x.com) or grok.com / SuperGrok account (Grok CLI), a Kimi account or API key (Kimi Code CLI / Kimi CLI), or a Mistral account or API key (Vibe CLI)

5. What can you do with it?

These assistants run in agent mode: they can read and write files, run shell commands, and help you build and debug projects directly on the board. Typical uses on a Smart Pi One:

  • Writing and fixing Python scripts for the GPIO sensors and modules
  • Setting up services (Klipper, Home Assistant, media servers…)
  • Explaining Linux commands and troubleshooting the system
  • Prototyping small projects with a full conversational coding assistant

6. Which one should I choose?

All six give you an interactive terminal UI and one-shot (-p "question") query mode. Pick the one that matches the account or key you already have:

  • Choose Claude Code CLI if you have a Claude Pro or Max account. It runs natively as a Node.js tool (no emulation) and ships a job daemon for running many agents safely.
  • Choose Codex CLI if you have an OpenAI account (or API key). It runs natively whenever a native armv7 build is available, falling back to emulation otherwise — same commands either way.
  • Choose Grok CLI if you have an X (x.com) or grok.com / SuperGrok account. It runs the official binary under QEMU emulation, with a warm daemon to keep repeat calls fast — watch thermals on long runs.
  • Choose Kimi Code CLI for Moonshot's newest tool (TypeScript, kimi-code) — local web UI, ACP, plugins, and a job daemon for batches. Native via npm + Node 22, at the cost of a heavier warm start per session.
  • Choose Kimi CLI for the lighter Moonshot option (Python, kimi) — the quickest to start on a 1 GB board.
  • Choose Vibe CLI if you have a Mistral account (or API key). It's a thin client — inference runs on Mistral's servers, so it's light on the board (the first install compiles for a few minutes).

Two Moonshot tools: kimi-code (Code CLI) is the TypeScript successor with the new features; kimi (Kimi CLI) is the lighter Python original. Both install side by side. Nothing stops you from installing all of them — just remember to run one heavy CLI at a time.