Custom clients

Developers

Custom clients

Put your own Mac app, service, or workflow on CTRL Micro.

Make the board yours

A custom client gives CTRL Micro a new board for something you want to control. It can show live items on the acrylic keys, add commands, and use the dial, joystick, wide key, and pixel panel in ways that fit your workflow.

Show live itemsKeep notes, jobs, projects, devices, or other changing items on the six acrylic keys.
Add useful actionsTurn repeated commands into dedicated keys instead of hunting through menus.
Use the whole boardGive the dial, joystick, dictation key, and pixel panel a purpose for your tool.

How it works

  1. 1
    Design the board

    Choose what each control does and what the board should show.

  2. 2
    Build the connection

    A small local program connects your tool to CTRL Micro. Use Swift, Python, Rust, JavaScript, or another language.

  3. 3
    Install it through the Host

    Package the client, review what it can do, and enable it on your Mac.

Custom clients run locally. There is no SDK to link, account to create, or network service to host.

See one in action

Open-source example

Apple Notes

Open recent notes, create and search, insert checklists and tables, dictate, change zoom, navigate, and see live selection state across the board.

The Notes example uses every physical control and includes animated pixel art. It is a complete example to learn from, not a required template for every custom client.

Ready to build one?

The public repository contains the complete build guide, protocol, manifest schema, packaging tools, tests, and Apple Notes source. The example uses Swift, but the protocol is language-independent.

You need macOS 14 or later, CTRL Micro Host, and the tools for the language you choose. A coding agent can follow the included build skill to create a client with the same checks.

Install only what you trust

A custom client is a local program running with your Mac user permissions. CTRL Micro shows a full-trust warning before enabling it, and any change to the installed bundle requires approval again. Install only clients you wrote, reviewed, or trust.