Home / Blog / A developer built a Claude Code terminal on the NDS
Tech News

A developer built a Claude Code terminal on the NDS

Developer Logan Carrillo released ds-claude-terminal, turning Nintendo DS consoles into wireless dual-screen terminal controllers for Claude Code sessions.

By Dillip Chowdary • Oct 17, 2026 • Source: github.com

A developer built a Claude Code terminal on the NDS

Software developer Logan Carrillo published ds-claude-terminal, an open-source client and host daemon that turns Nintendo DS handheld consoles into wireless terminal controllers for Claude Code sessions. As reported in github.com's report, the software connects portable consoles over local 2.4 GHz wireless networks to stream terminal output and relay tactile inputs back to development machines. Host workstations execute all compute tasks, file modifications, and agent workloads while the console functions as a remote display and hardware control interface for monitoring programming tasks from across a room.

This article details the system architecture, dual-screen interface options, hardware support tiers, setup requirements, and security sandboxing implemented by the software package. Software engineers who deploy artificial intelligence coding assistants and manage long-running terminal processes gain an untethered supervisory interface without sacrificing workstation responsiveness. Readers will find operational breakdowns covering supported Nintendo hardware revisions, local network pairing protocols, daemon installation routines across Unix and Windows environments, and concrete workflows for managing agent approvals or routing handheld camera captures directly into prompt contexts.

What shipped in A developer built a Claude Code terminal

The release delivers a compiled Nintendo homebrew client alongside a Python-based background server designed for host development workstations. On the handheld, the upper display mirrors the active terminal session using a standard 42×24 character grid, while an alternate build provides a denser 64×32 grid in a compact font. When an assistant attempts to modify files or execute shell commands, the display flashes yellow and emits an audible tone. Users press the A button to grant permission, press the X button to reject changes, and navigate interactive multiple-choice menus using the directional pad.

The lower touch screen serves as an operational dashboard featuring a live virtual keyboard, an offline text composer for crafting prompts prior to submission, and reusable text snippets. Dedicated interface tiles surface agent controls including mode switching, diff views, session rewinds, recent prompt logs, and custom slash commands. A session pane tracks concurrent assistant processes running on the host, flagging jobs requiring user action and letting users switch targets or link to another computer. On Nintendo DSi and 3DS hardware, an integrated camera module captures images and automatically inserts corresponding local file paths into the prompt composer.

What improved in A developer built a Claude Code terminal

Hardware integration advances terminal supervision by splitting dense command output and interaction controls across dedicated displays, improving ergonomics over standard laptop keyboards. Legacy Nintendo DS and DS Lite hardware connects via open networks due to wireless hardware constraints, while newer DSi and 3DS consoles connect over secure WPA2 protocols on 2.4 GHz bands. The software restricts handheld capabilities to emulated keyboard strokes, guaranteeing that incoming payloads cannot execute shell scripts or access file systems directly without secondary manual confirmation from the developer.

| Operational Metric | Legacy or Standard Baseline | Handheld Terminal Implementation | | Display Character Grid | 42×24 standard font | 64×32 dense font build | | Wi-Fi Security Protocol | Open network only (DS / DS Lite) | WPA2 2.4 GHz (DSi / 3DS) | | Frame Cryptography | Plaintext terminal stream | ChaCha20 and HMAC-SHA256 signed | | Pairing Discovery Window | Manual IP configuration | 2-minute 6-digit exchange window | | Server and Card Setup | Custom shell environments | 2-minute SD copy, 5-minute server setup |

Network resilience and session durability improve through host-side process persistence and cryptographic verification. Active coding sessions operate inside a background tmux session on the host computer, ensuring that wireless dropouts, console sleep states, or server reboots never terminate underlying terminal workloads. Every network packet exchanged between devices is encrypted via ChaCha20 and authenticated through HMAC-SHA256 signatures. In addition, an integrated demo mode masks internal IP addresses across all console screens to protect private network credentials during public demonstrations and video presentations.

What you gain from A developer built a Claude Code terminal

The physical hardware controls grant developers untethered operational oversight of autonomous coding agents from across a room. Programmers monitor file diffs and tool execution on the upper screen while using the lower screen to review repository status and run project commands. Integrated touch buttons trigger build scripts, automated test suites, and Makefile targets with a single tap, reducing context switching during refactoring tasks. A scroll-back buffer lets users inspect historical terminal output, with a continuous press returning the viewport directly to the active prompt.

Advertisement

Tech Pulse Daily

Get tomorrow's pulse first

Join engineers who read Tech Pulse before stand-up. Free, weekday mornings.

Customization options let engineers tailor sensory notifications and multi-host environments to individual preferences. The client features selectable sound profiles, including retro chiptune audio, desk alert chimes with three subtle variations per event, custom WAV files, or silent operation. Interface settings include four accent colors, customizable boot screens, and key remapping for the A, B, X, Y, and Start buttons. Furthermore, developers can pair a single console with multiple computers, switching between different workstations directly from the handheld interface without manual reconfiguration.

How to get A developer built a Claude Code terminal

Setting up the environment requires preparing homebrew-capable console hardware alongside the host workstation software daemon. Handheld setup involves installing Unlaunch on Nintendo DSi units, TWiLight Menu++ on 3DS devices, or utilizing a Slot-1 flashcart on original DS consoles. Users extract the release archive and copy dsterm.nds along with the dsterm directory to the root of the console storage card. Workstations require Python 3.11 or newer, pipx, and tmux on macOS or Linux, with packages installed prior to service initialization.

Command
npm install -g @anthropic-ai/claude-code
claude update
Command
/model fable
Command
claude --model fable
Command
dsterm setup
dsterm doctor
dsterm pair

After installing required packages, users initialize background daemons and complete device authentication. Running dsterm setup installs persistent background services, while dsterm doctor verifies system configurations, port bindings, and firewall access rules. Developers execute dsterm pair on their workstation to open a two-minute pairing window, select the computer on the console screen, and confirm matching six-digit verification codes. Alternatively, developers can insert their console memory card into the host computer and execute automated provisioning to flash files, Wi-Fi details, and cryptographic keys simultaneously.

What to watch after A developer built a Claude Code terminal

Following configuration, developers should monitor platform-specific daemon lifetimes and working directory paths. On Windows systems running WSL2, background daemons terminate when terminal windows close unless users configure instanceIdleTimeout and vmIdleTimeout to negative one in their wslconfig file. Similarly, macOS users must grant incoming socket access in system dialogs during initial startup to enable console discovery. Because coding sessions initiate in the user home directory by default, developers should configure project directories using the install-service command to target specific development repositories.

Engineers must also consider hardware network constraints and device access controls across active networks. Original Nintendo DS and DS Lite hardware lacks WPA2 capability, requiring open 2.4 GHz wireless networks, whereas newer DSi and 3DS consoles support standard encrypted Wi-Fi networks. If a paired handheld is lost, administrators can revoke security credentials on the workstation using the devices forget command. Teams can also run the view command on their workstation to mirror both handheld displays inside a desktop window, verifying layout rendering and touch interactions without physical hardware.

Developer Action Items

  • ☐ Diff the official changelog for Claude / GitHub / Windows 2.4 before you bump — APIs, defaults, and removed flags only.
  • ☐ Install through the vendor's documented channel in staging; keep a one-command rollback and time-box the canary.
  • ☐ Grep your repo for old flag names, lockfile pins, and plugin versions that the notes mark as breaking.
  • ☐ Prefer the first patch cut over the day-zero tag unless you have a reason to be on the leading edge.
  • ☐ If HN Claude/Codex/Fable did not name a region, plan, or SKU, screenshot the official availability line before you promise it to users.

A developer built a Claude Code terminal FAQ

Which consoles support the wireless terminal application?

The application runs across Nintendo DS, DS Lite, DSi, DSi XL, 2DS, and 3DS consoles using homebrew loaders such as TWiLight Menu++, Unlaunch, or Slot-1 flashcarts. A single universal binary operates across all supported hardware revisions.

Can the handheld console execute unauthorized code or view local files?

No, the console functions strictly as a remote display and keyboard peripheral over encrypted ChaCha20 and HMAC-SHA256 connections. Handheld inputs cannot directly run arbitrary shell commands or access host files without workstation verification.

How does the system handle network interruptions and host reboots?

Coding sessions execute inside tmux on the host computer, ensuring active terminal tasks survive Wi-Fi drops, server reboots, or handheld sleep cycles. The console automatically reconnects to the host once wireless connectivity is re-established.

What are the host workstation operating system requirements?

The background server requires Python 3.11 or newer, pipx, and tmux on macOS, Linux, or Windows 10 and 11 via WSL2. Windows installations require configuring wslconfig idle timeouts and permitting port traffic through dsterm wsl-setup.

Sources

Dillip Chowdary

Author

Dillip Chowdary

Writes Tech Bytes coverage of AI, engineering, and the tools that actually ship. Editor of Tech Pulse Daily.

Related on Tech Bytes

Advertisement

5-min tech signal

Weekday briefing for engineers who skip the noise.

No spam · Unsubscribe anytime

Advertisement

✈️ CareerPilot

Your AI job-search copilot

Match your resume against live Ashby, Greenhouse & Lever openings — fit scores, job-specific resume optimization and email alerts.

Find matching jobs →

Free Tools

Browse all tools →