2026-05-17 04:20:20 +08:00
2026-05-17 04:20:20 +08:00
2026-05-17 04:20:20 +08:00
2026-05-17 04:20:20 +08:00
2026-05-17 04:20:20 +08:00
2026-05-17 04:20:20 +08:00
2026-05-17 04:20:20 +08:00
2026-05-17 04:20:20 +08:00
2026-05-17 04:20:20 +08:00
2026-05-17 04:20:20 +08:00

Multi-Casual Android

English | 简体中文

An independent Android companion app for Multica users.

This repository publishes an Android app that works with the Multica backend service. It is not maintained, endorsed, or published by the Multica project maintainers, and it should not be presented as an Android app from the upstream Multica project.

The app exists for users who already use Multica and want the core workspace workflow on Android: issue browsing, issue details, comments, projects, agents, skills, labels, and settings.

Relationship to Multica

Multica is the original product and backend service. Multi-Casual Android is an independent companion client for that service.

The name “Multi-Casual” is used here to describe this Android client and its compatibility with Multica workflows. Product ownership, trademarks, service availability, and backend behavior remain with the Multica project and its maintainers.

If you represent Multica and would like wording or attribution adjusted, please open an issue. The goal is to keep the relationship accurate, respectful, and clear.

What this app does

  • Sign in with the email-code flow used by the Multica service.
  • Browse workspaces, inbox items, issues, projects, agents, runtimes, skills, labels, and settings.
  • Create and update issues, comments, labels, projects, agents, skills, and related resources through the Multica service API.
  • Bring the everyday Multica workspace loop to Android without bundling a server.

Privacy and analytics

Analytics are opt-in. The app asks for consent before sending analytics.

After consent, the public Android build reports only the app_open event:

  • Mainland China route: Umeng
  • Global route: PostHog
  • The app does not intentionally report page views, chat content, file content, email addresses, tokens, or precise location.

You can also build the app without analytics keys. In that case, analytics providers will not start.

Build

Requirements:

  • Android Studio / Android SDK
  • JDK 17; Android Studio's bundled JBR is recommended

Create local configuration:

cp local.properties.example local.properties

Optional analytics keys can be filled in locally. Do not commit real keys.

Build the Android APK:

JAVA_HOME="/Applications/Android Studio.app/Contents/jbr/Contents/Home" \
ANDROID_HOME="$HOME/Library/Android/sdk" \
./gradlew assemblePublicDebug --console=plain

APK output:

app/build/outputs/apk/public/debug/app-public-debug.apk

Install locally:

$ANDROID_HOME/platform-tools/adb install -r app/build/outputs/apk/public/debug/app-public-debug.apk

Local analytics configuration

local.properties.example documents optional local keys:

multicaUmengPublicAppKey=
multicaPostHogPublicApiKey=
multicaPostHogPublicHost=https://us.i.posthog.com
multicaAnalyticsRoute=auto

Use multicaAnalyticsRoute=auto for normal public builds. The app chooses the analytics route at runtime after user consent.

Contributing

Contributions are welcome if they keep the boundaries clear:

  • Keep this as an independent Android companion app for Multica users.
  • Do not imply Multica maintainer endorsement.
  • Do not add runtime backend switching for normal users.
  • Do not commit secrets, analytics keys, private endpoints, or company-internal material.
  • Keep privacy-sensitive changes conservative and easy to review.

License

This repository is licensed under GPL-3.0-only. See LICENSE for the full license text.

If you distribute a modified APK or other binary based on this project, keep the corresponding source code available under GPL-3.0-only and preserve the third-party notices.


简体中文

这是一个面向 Multica 用户的独立 Android companion app。

本仓库发布的是一个对接 Multica 后端服务的 Android App。它并不由 Multica 项目维护者维护、背书或发布,也不应该被表述为上游 Multica 项目推出的 Android App。

这个 App 面向已经使用 Multica 的用户,把核心 workspace 工作流带到 Android 上:Issue 浏览、Issue 详情、评论、项目、Agent、Skill、Label 和设置等能力。

与 Multica 的关系

Multica 是原始产品和后端服务。Multi-Casual Android 是面向该服务的独立 companion 客户端。

这里使用 “Multi-Casual” 名称,是为了说明这个 Android 客户端及其与 Multica 工作流的兼容关系。产品归属、商标、服务可用性和后端行为都仍属于 Multica 项目及其维护者。

如果你代表 Multica,并希望调整措辞或署名方式,欢迎开 issue。这个仓库希望把关系说明得准确、礼貌、清楚。

App 能做什么

  • 使用 Multica 服务的邮箱验证码流程登录。
  • 浏览 workspace、Inbox、Issue、Project、Agent、Runtime、Skill、Label 和 Settings。
  • 通过 Multica 服务 API 创建和更新 Issue、评论、标签、项目、Agent、Skill 等资源。
  • 在不内置服务端的前提下,把日常 Multica workspace 闭环带到 Android。

隐私与 analytics

Analytics 是 opt-in。App 会先请求用户同意,然后才会上报 analytics。

同意后,公开 Android build 只上报 app_open 启动事件:

  • 中国大陆路线:友盟
  • 全球路线:PostHog
  • App 不会有意上报页面访问、聊天内容、文件内容、邮箱、token 或精确位置。

如果本地不配置 analytics keyanalytics provider 不会启动。

构建

环境要求:

  • Android Studio / Android SDK
  • JDK 17;推荐使用 Android Studio 自带 JBR

创建本地配置:

cp local.properties.example local.properties

可选 analytics key 只填在本地。不要提交真实 key。

构建 Android APK

JAVA_HOME="/Applications/Android Studio.app/Contents/jbr/Contents/Home" \
ANDROID_HOME="$HOME/Library/Android/sdk" \
./gradlew assemblePublicDebug --console=plain

APK 输出:

app/build/outputs/apk/public/debug/app-public-debug.apk

本地安装:

$ANDROID_HOME/platform-tools/adb install -r app/build/outputs/apk/public/debug/app-public-debug.apk

本地 analytics 配置

local.properties.example 记录了可选本地 key

multicaUmengPublicAppKey=
multicaPostHogPublicApiKey=
multicaPostHogPublicHost=https://us.i.posthog.com
multicaAnalyticsRoute=auto

普通公开 build 使用 multicaAnalyticsRoute=auto。App 会在用户同意后自动选择 analytics 路线。

贡献

欢迎贡献,但需要保持边界清楚:

  • 保持这是面向 Multica 用户的独立 Android companion app。
  • 不暗示 Multica 维护者背书。
  • 不为普通用户加入运行时后端切换。
  • 不提交 secrets、analytics key、私有 endpoint 或公司内部材料。
  • 涉及隐私的改动要保守、清晰、容易审阅。

License

本仓库使用 GPL-3.0-only 授权。完整协议文本见 LICENSE

如果你分发基于本项目修改后的 APK 或其他二进制产物,需要按 GPL-3.0-only 提供对应源码,并保留第三方依赖 notices。

S
Description
Independent Android companion app for Multica users — inbox, issues, agents, workspaces. — mirror of https://github.com/park0er/multi-casual-android
Readme GPL-3.0
102 MiB
Languages
Kotlin 74.9%
Java 18.4%
TypeScript 3.7%
CSS 2.8%
HTML 0.2%