KickMint is built the other way. The AI runs on your phone.
What this means in practice
When you open the app for the first time, KickMint offers a one-time download. About 900 megabytes over WiFi, the size of a short film. The file is Qwen 2.5 1.5B Instruct, an open-weight model from Alibaba Cloud, quantized to Q4_K_M to fit on a phone (roughly one gigabyte). It downloads from our R2 bucket at models.kick-mint.com. The SHA-256 hash of the file is published in the manifest and verified after download.
After that, every AI feature, the task breakdowns, the Pick One suggestions, the Stuck recoveries, the Weekly Review summaries, runs against that file using llama.cpp. The inference happens on the Neural Engine and the CPU of your iPhone. No prompt and no completion ever leaves the device.
To verify this for yourself: turn on airplane mode after the model is downloaded. Every AI feature continues to work.
What about a second device
There is no sync. KickMint has no account system and operates no server that holds your content, so your data lives on the one iPhone you use the app on.
An end-to-end encrypted sync feature was described in earlier marketing for this app. It was never released, and the plan has been withdrawn: the honest version of a no-cloud app is one where our infrastructure never sees a request from your phone after the model download, and that is what ships.
Moving to a new iPhone works through Apple's encrypted device backup. The app's database is included in it, so a restore brings everything across without us being in the path.
Why we chose this architecture
Three reasons.
First, the people we serve disclose more in private writing than in shared tools. ADHD and AuDHD adults often write down what they are actually avoiding, what is actually overwhelming them, what they are actually ashamed of. Those notes are the raw material the breakdown model uses to be useful. The breakdowns are only useful when the user is honest, and the user is only honest when the system gives them no reason to perform.
Second, server-side AI is a forever-cost. We would have to pass it on to you. The cloud bill scales with daily active users, and the only way to keep the price down at scale is to upsell tiers, mine usage, or insert ads. We did not want any of those incentive structures.
Third, regulatory durability. The on-device model is unaffected by any future jurisdiction-specific privacy regulation, because there is no data flow to regulate. The decision once, hold forever.
The model itself
- Architecture: Qwen 2.5 1.5B Instruct, a transformer with 1.5 billion parameters.
- Quantization: Q4_K_M, four-bit weights with selected weights at higher precision.
- File size on device: approximately 986 MB.
- Runtime: llama.cpp 0.x via SwiftCpp bridging, Metal-accelerated where available.
- License: Apache 2.0 (Qwen 2.5 weights are released under Apache 2.0 by Alibaba Cloud).
- What we did not modify: the weights. We use the published Qwen 2.5 1.5B Instruct release exactly as Alibaba shipped it. We re-host the GGUF on our CDN for download stability.
- What we did add: our own prompt scaffolding, the verb allowlist that enforces physical-first first actions, the rationale catalog, and the parser that rejects malformed JSON or banned phrases. Those are the layers that turn a general-purpose model into the ADHD-focused task helper.
When the model is unavailable
If the user skips the download or deletes the model file, KickMint falls back to rule-based templates for breakdowns and Pick One. The free templates are good enough to use the app for the daily loop. The on-device AI is the upgrade, not the floor.
If you want to verify this technically
- Source layout:
iosApp/Sources/AI/ModelManager.swift(download lifecycle),iosApp/Sources/AI/LlamaInference.swift(inference),iosApp/Sources/AI/BreakdownParser.swift(output validation). - The egress audit lives in
iosApp/Tests/AI/RemoteFeatureFlagsEgressTests.swift. It records every outbound URL request made by the app under test and asserts the count is zero on a clean install. - The privacy policy lives at /privacy. The full citation library is at /science.
KickMint is a productivity tool, not a medical device. Medical disclaimer at /medical-disclaimer.
Common questions
Does KickMint send my tasks to the cloud?
No. Every AI feature runs on your phone using a local model. No prompt or completion ever leaves the device. You can verify it by turning on airplane mode after the model downloads: every AI feature keeps working.
What AI model does KickMint use?
Qwen 2.5 1.5B Instruct, an open-weight Apache 2.0 model from Alibaba Cloud, quantized to Q4_K_M (about 986 MB). It downloads once over WiFi and then runs via llama.cpp on the iPhone's Neural Engine and CPU.
Does the app talk to any server at all?
Once, and only if you let it: a one-time download of the AI model file, roughly 1 GB, from our CDN on first launch. After that the app makes no network request. There is no account, no sync service, and no analytics endpoint, so there is nothing else for it to call.
How can I verify KickMint runs AI on-device?
Turn on airplane mode after the model downloads. Every AI feature, the task breakdowns, Pick One suggestions, Stuck recoveries, and Weekly Review summaries, keeps working with no network. The model file's SHA-256 hash is published in the manifest and verified after download.
What happens if I do not download the model?
KickMint falls back to rule-based templates for breakdowns and Pick One. The free templates are good enough for the daily loop, so the on-device AI is the upgrade, not the floor. After the one-time model download, the app makes no network request at all.
Why did KickMint choose on-device AI over the cloud?
Three reasons: people disclose more honestly when nothing leaves the device; server-side AI is a recurring cost that pushes apps toward upsells, data mining, or ads; and an on-device model is unaffected by future privacy regulation because there is no data flow to regulate.