โš ๏ธ TESTING IN PROGRESS โ€” This site is under active development. Features, pricing and licensing are not finalised.
๐Ÿ“ฑ

Chameleon Companion App

Your Android phone becomes a multi-channel bridge to the desktop โ€” AI chat relay, P2P video, remote control, file access, media streaming and accounting โ€” all over your private Tailscale mesh.

๐Ÿค– AI chat via STT/TTS ๐Ÿ“น P2P video ๐ŸŽญ Presenter remote ๐ŸŒ Tailscale-secured ๐Ÿ–ฅ๏ธ Screen / VNC
๐ŸฆŽ
Chameleon Companion
โ— Connected
How can I help? I can see your IDE, files and presenter.
Show me the last error in the terminal.
Found it โ€” line 47, NameError: 'config' not defined. Want me to fix it?
Yes, apply the fix.
Done. File saved. Terminal shows exit 0.
IDE P2P Video Files Media STT/TTS

Multi-channel architecture

One WebSocket bridge, five independent communication lanes

๐Ÿ“ฑ Android App
โŸท
Tailscale mesh
โŸท
๐Ÿ–ฅ๏ธ Desktop
IDE channel
AI chat ยท commands ยท screenshots ยท file upload
P2P video
WebRTC SDP/ICE relay ยท low-latency A/V
File browser
Read ยท write ยท edit files on desktop
Media stream
NAS / DLNA ยท cast to phone
Screen share
VNC/RDP-style desktop mirror

Communication Channels

Each channel is independent โ€” use one or all simultaneously

CHANNEL 1
๐Ÿง 

IDE AI Channel

Full two-way bridge to the desktop AI. Send prompts from your phone, receive streamed responses. The AI can read files, run terminal commands and apply code edits โ€” all triggered from your pocket. Attach screenshots or photos directly from your camera roll as context.

AI streamingFile uploadScreenshots
CHANNEL 2
๐Ÿ“น

P2P Video & Voice

WebRTC peer-to-peer video and audio between phone and desktop (or between multiple peers). The Chameleon signal server handles SDP and ICE negotiation over WebSocket on port 8766 โ€” runs on Termux on Android as well as desktop. No central media server; no monthly streaming bill.

WebRTCTailscale P2PTermux
CHANNEL 3
๐ŸŽญ

Kameleon Presenter Remote

Control the entire Kameleon stage from your phone. Advance slides, trigger cues, push images or text directly into a stage stack, approve or reject peer submissions and control the collaborative drawing board โ€” all without touching the desktop keyboard.

stack_next/prevpush_slotstack_approvedraw_stroke
CHANNEL 4
๐Ÿ–ฅ๏ธ

Screen Mirror (VNC/RDP-style)

View and interact with your desktop screen from the phone. Implemented as a lightweight screen-capture stream over the Tailscale mesh โ€” no third-party VNC server required. Tap to click, swipe to scroll. Useful for monitoring running processes or approving AI actions remotely.

Screen captureTap-to-clickTailscale only
CHANNEL 5
๐Ÿ“‚

Remote File Browser & Editor

Browse your desktop filesystem from the phone. Open, read and edit text files. Upload files from the phone camera or storage directly into a project folder. Ask the IDE AI to process the uploaded file immediately after transfer โ€” e.g. "add this image to the presenter stage".

BrowseEditUpload from camera
CHANNEL 6
๐ŸŽต

Media Streaming (NAS / DLNA)

Stream music and video from a NAS or DLNA server on your home network to the phone over Tailscale. Browse the media library, queue tracks and control playback โ€” the desktop acts as a bridge between your local media server and the phone wherever you are on the tailnet.

DLNANASTailscale bridge
CHANNEL 7
๐Ÿงพ

Accounting โ€” Receipt Capture

Photograph a receipt on your phone and send it straight to the accounting module. The IDE AI reads the image, extracts the amount, date, supplier and VAT, and logs a draft journal entry in the double-entry ledger โ€” ready for you to review and post on the desktop.

Receipt OCRDraft journalVAT extraction
CHANNEL 8
๐Ÿ—ฃ๏ธ

Voice AI โ€” Phone STT & TTS

Speak to the IDE AI from your phone using on-device speech-to-text. The AI response is streamed back and read aloud via text-to-speech. Hands-free coding assistance while your desktop runs unattended โ€” dictate a fix, hear the result, confirm from the phone.

On-device STTTTS playbackHands-free

How it connects

๐Ÿ”

Tailscale-secured mesh

All channels run over your private Tailscale network. No ports are opened to the public internet. The phone must be authorised on your tailnet โ€” everything else is end-to-end encrypted with WireGuard.

๐Ÿ”Œ

Single WebSocket bridge

The desktop runs chameleon_mobile_bridge.py as a daemon thread inside the Qt process. The phone app connects to port 8770 on the Tailscale IP. One persistent connection carries all channels as typed JSON messages.

๐Ÿค–

Termux on Android

The signal server (chameleon_signal.py) can run directly on the Android phone via Termux โ€” making the phone both a client and a signalling node. No cloud relay needed for WebRTC peer connections within your tailnet.

๐Ÿ“ถ

LAN fallback

When Tailscale is unavailable, lan_video.py streams video over UDP (port 47732) and audio over UDP (port 47733) directly on the local network โ€” same channels, no VPN overhead.

Interested in the Companion App?

Currently in testing โ€” contact us to register interest or request a demo.

Get in touch โ† Back to overview