Own your mobile agent.

A private AI engineering workspace that runs natively on Android. Local Alpine Linux sandbox, remote SSH, MCP tools, offline GGUF & Whisper models, and seamless OAuth account switching.

Android 7.0+ (ARM64) · 59.6 MB APK & 54.5 MB ZIP · Zero subscription fees

Mobile-native agentic execution that works

READY
Run the test suite in the local Linux sandbox, check my Ubuntu server over SSH, and deploy the update.
✳ TinCan Agent· Build Mode
execute_shell_command (Local Sandbox · Alpine Linux)0.7s ✓
$ pytest -q && aapt dump badging /mnt/shared/Download/app.apk
execute_shell_command (SSH · ubuntu-prod:22)1.1s ✓
$ docker compose ps && systemctl status worker.service
OUTCOME VERIFIED All local checks and remote SSH health probes succeeded.
2/2 Hosts ✓
Free-tier quota reached on ChatGPT Account A. Switch OAuth to Account B and resume this exact refactoring thread.
✳ TinCan Agent· OAuth Session Manager
oauth_provider_switch (OpenAI / Antigravity / Puter / OpenRouter)Instant ✓
Switched active credential → Account B. Local SQLite thread & Active Memory preserved.
resume_conversation (Branch #main · 42 messages)0 Lost ✓
Continuing patch from message #42 with full working-memory context.
ZERO CONTEXT LOSS Switch accounts or providers anytime without starting a new chat.
100% Intact
🎙️ [Local Whisper Draft]: “Summarize pages 3–8 of this PDF contract offline using my local Qwen GGUF model.”
✳ TinCan Agent· Offline On-Device Engine
local_whisper_stt + pdf_page_selectorOffline ✓
Transcribed voice into editable draft · Extracted pages 3–8 locally.
llama_cpp_inference (GGUF + mmproj vision)On-Device ✓
Generated structured summary & saved key clauses to Memory Files.
100% OFFLINE CAPABLE No Wi-Fi, no cloud API cost, zero data leaving your phone.
0 Cloud Calls
Alpine Linux Sandbox (proot)
Multi-Host SSH Client
Model Context Protocol (MCP)
skills.sh Direct Installer
OpenAI / ChatGPT OAuth
Antigravity / Google OAuth
Puter & OpenRouter OAuth
On-Device llama.cpp (.gguf)
Offline Local Whisper STT
Android System & AI TTS
Two-Tier Persistent Memory
5-Field Cron Automation
35+
Built-in agentic tools & system integrations
4 OAuths
ChatGPT, Antigravity, Puter & OpenRouter + BYOK
100%
Conversation history preserved across account switches
v2.14.2
Native ARM64 Android release (APK & ZIP)

No desktop required.

Preconfigured for real engineering.

LOCAL SANDBOX · ALPINE LINUX (PROOT) /mnt/shared MOUNTED
$ apk add python3 git nodejs curl
(1/4) Installing python3 (3.12) ... OK
$ ls -la /mnt/shared/Download
-rwxrwx--- TinCan-2.14.2-fdroid-arm64-v8a.apk
$ python3 analyze_metrics.py --export-report
Saved verified summary to /mnt/shared/Documents/report.md
REMOTE INFRASTRUCTURE · MULTI-HOST SSH CONCH DURABLE JOBS
ssh://homelab-optiplex:22 $ docker ps --format "table {{.Names}}\t{{.Status}}"
nginx-proxy Up 14 days (healthy)
postgres-db Up 14 days (healthy)
ssh://homelab-optiplex:22 $ conch start --background ./backup_db.sh
Started durable Conch job #job_94f1 (survives mobile disconnect)
EXTENSIBILITY · MCP SERVERS & SKILLS.SH HTTP / SSE + OAUTH
mcp > connected: Notion, GitHub, Netlify, Composio, Parallel Search
skills.sh > install @landing-page-design @web-design-guidelines
✓ Installed 2 reusable SKILL.md workflows into active agent context
Agent templates ready: Coding · Research · Office · Data
MEMORY, RAG & CRON AUTOMATION 5-FIELD CRON + LOOPS
memory > Active Memory core + 18 searchable Markdown Memory Files
rag > search_conversations("server deployment") → 4 semantic matches
cron > create_task("0 8 * * *", "Check server health & summarize")
✓ Scheduled recurring background task with push notification

Execute shell scripts, run Python or Node tools, and manage packages inside a real Alpine Linux environment on your phone. Optionally mount your Android storage at /mnt/shared to read and write device files directly.

Learn more about the Linux Sandbox →

Connect your home lab or production servers over SSH. Your agent can inspect logs, edit remote configs, and launch durable Conch background jobs that keep running even if your phone disconnects.

Explore SSH & Conch Jobs →

Connect any HTTP/SSE Model Context Protocol server with custom headers or OAuth credentials, and install reusable agent skills directly from skills.sh in one tap.

See MCP & Skills support →

Combine an always-present Active Memory core with searchable Memory Files, semantic RAG search across past chats, 5-field cron scheduled background tasks, and timed in-chat loops.

Learn about Memory & Automation →

Pro Mode & Seamless OAuth Continuity

Every answer challenged.
Every thread preserved.

Standard mobile apps give you a single unverified pass—and force you to start a new chat if your free tier runs out. TinCan challenges its own assumptions before executing, and keeps your conversation history locally owned across every account switch.

  • 5-Stage Pro Mode Loop: Initial Answer → Challenge → Final Answer → Implement → Loop.
  • Plan vs. Build Separation: Inspect safely with read-only tools in Plan Mode before switching to Build Mode.
  • Zero-Loss OAuth Switching: Switch between ChatGPT, Antigravity, Puter, OpenRouter, or local GGUF mid-conversation without losing a single message.
Stage 01 — Formulate a concrete initial architecture and proposed solution for your task before touching any files.

Voice, Vision & Model Freedom

Intelligence across every modality.

Speak naturally and review your words inside an editable draft before sending—never accidentally send a half-finished voice prompt. Supports offline Local Whisper models and multiple cloud STT profiles.

Read responses aloud with Android system TTS by default or add multiple AI TTS profiles. Generate images, edit reference images, or use a vision bridge model so text-only LLMs can understand photos, sliced video frames, and selected PDF pages.

Sign in via OAuth with OpenAI (ChatGPT), Antigravity/Google, Puter, or OpenRouter. Bring any custom API key and base URL, or run quantized .gguf and multimodal mmproj models 100% offline on your phone.

Share an entire conversation branch with colleagues so they get the full context, or fork any conversation to explore a new direction without altering the original. Includes ChatGPT & Claude history import.

AUDIO TRANSCRIPTION · MULTI-PROFILE STT LOCAL WHISPER + CLOUD
Profile: Whisper-Small-OnDevice (Offline) | Gemini-STT (Cloud)
Recording: 00:42 · Foreground capture active
↓ Transcribed into editable composer draft (never auto-sent):
"Check the nginx config on my server and renew the TLS cert."
MULTIMODAL PROFILES · TTS, IMAGE GEN & MEDIA MULTI-PROVIDER
TTS Profiles: Android System TTS (Default) + OpenAI / Custom AI TTS
Image Profiles: Generate new visuals + edit attached reference images
Media Slicers: Video frame extractor (time/interval) + PDF page picker
Vision Bridge: auto-describes images when using text-only models
MODEL ENGINE · OAUTH + BYOK + LOCAL GGUF SEAMLESS SWITCHING
OAuth: OpenAI (ChatGPT) · Antigravity · Puter · OpenRouter
Local: llama.cpp (.gguf + mmproj vision) · GPU/CPU threads
Controls: thinking_budget · temp · top_p · min_p · max_tokens
✓ Switch accounts or models mid-thread with zero history loss
COLLABORATION · SHARE, FORK & IMPORT PORTABLE THREADS
Branch #main (28 msgs) ──► Forked Branch #experiment
Share Link: Exports full visible conversation branch for collaborators
Import / Backup: ChatGPT JSON · Claude export · TinCan auto-backup

Up and running in a few taps.

1

Download the APK

📦 TinCan-v2.apk One file. Native ARM64 Android 7.0+. Direct APK or ZIP archive.

Grab the latest signed installer from GitHub Releases. No Play Store lock-in or mandatory cloud account required.

2

Connect OAuth, API, or GGUF

⇄ 1-Tap OAuth / Local ChatGPT · Antigravity · Puter · OpenRouter · BYOK · .gguf

Sign in with your existing free-tier OAuth account, enter an API key, or load a local GGUF model on your device.

3

Enable Linux, SSH & MCP

>_ Sandbox + SSH Alpine Linux · /mnt/shared · SSH hosts · skills.sh

Turn on the local Linux sandbox, link your remote SSH servers, and install skills directly from skills.sh.

4

Scale with Pro Mode & Cron

↺ Pro Loop + Cron Challenge answers · 5-field cron tasks · In-chat loops

Use Pro Mode to challenge and verify complex implementations, schedule recurring cron tasks, and switch accounts anytime.

Interactive 3D Feature Walkthrough

See a single request travel through every layer of TinCan.

Want to experience how voice transcription, Pro Mode reasoning, the local Linux sandbox, remote SSH, MCP tools, and conversation forks connect? Launch our interactive 3D web experience.

Launch Interactive 3D Tour ↗ View Release Notes on GitHub →
TinCan App Icon

TinCan v2.14.2

com.shunmin.tincan · ARM64 · Android 7.0+

Complete Specification

Built without compromises.

01 / Execution & Protocols

Linux, SSH, MCP & Skills

  • On-device Alpine Linux sandbox (proot) with package manager UI
  • Optional /mnt/shared mount for Android shared storage
  • Multi-host SSH client (read, write, edit, grep, glob & shell)
  • Durable Conch background shell jobs that survive disconnects
  • Custom HTTP/SSE MCP servers with headers & OAuth credentials
  • Direct skills.sh skill discovery & one-tap installation
02 / Models & Multimodal

OAuth, Offline AI & Profiles

  • OpenAI (ChatGPT), Antigravity, Puter & OpenRouter OAuth
  • Switch OAuth accounts mid-thread with zero lost history
  • On-device llama.cpp for offline .gguf & mmproj vision
  • Multi-profile Audio Transcription (Local Whisper + cloud STT)
  • Multi-profile Read Aloud (Android system TTS default + AI TTS)
  • Multi-profile Image Gen/Edit, Video frame slicer & PDF picker
03 / Workflow, Memory & Privacy

Pro Mode, RAG & Automation

  • Chat Mode, read-only Plan Mode, Build Mode & 5-stage Pro Mode
  • Agent templates & reusable prompt templates with variables
  • Two-tier persistent memory (Active Memory + Memory Files DB)
  • Semantic RAG & keyword search across past conversations
  • 5-field Cron scheduled tasks & automated in-chat Loops
  • Whole-chat sharing, forks, ChatGPT/Claude import & HTTP/SOCKS proxy

Free & Direct Distribution.

Built for power users.
Owned by you.

Your conversations, memory files, and SSH keys live locally on your Android device. Switch model providers, rotate accounts, or run completely offline—your workspace always stays yours.

9 Pillars
Complete Agent Harness
0 Lock-In
Switch OAuth Anytime
v2.14.2
GitHub Release Assets
View on GitHub ↗ Latest Release Notes →
What happens when my free-tier OAuth account hits its limit?

Switch to another OAuth account (ChatGPT, Antigravity, Puter, or OpenRouter) or swap to an API key / local GGUF model. Because conversations are stored on your device, you resume the exact same thread without losing context.

How do multi-provider profiles work for Voice, TTS, and Images?

Audio Transcription (Local Whisper or cloud STT), Read Aloud (Android system TTS default or AI TTS), and Image Generation each support multiple saved profiles so you can switch providers without re-entering credentials.

Should I download TinCan-v2.apk or TinCan-v2-Android-APK.zip?

Both contain the exact same signed v2.14.2 ARM64 installer. Use the .zip file if Chrome on Android pauses at 100% while scanning the .apk. Ignore GitHub’s auto-generated Source code archives.

Can I inspect files safely without the agent making changes?

Yes. Switch to Plan Mode to restrict TinCan to read-only inspection across your files, sandbox, and SSH servers before approving any changes in Build Mode.

Don’t rent your workflow. Own it.

Break free from mobile chat limitations and account lock-in. Download TinCan and run a full Linux, SSH, MCP, and local/cloud AI agent on your Android device in minutes.

Verify v2.14.2 SHA-256 Checksums (Updated October 23, 2026) APK (TinCan-v2.apk · 59.6 MB): add0f4724edbcdaaec429b1c8dd561bb4a04c6cf65d00d2cee2bf72ae3f8c335 ZIP (TinCan-v2-Android-APK.zip · 54.5 MB): b8fb54adc3b9e9dfec5dfc17f4949c9e86b536514d2edbce56b77bbdf5d79bb2