diff --git a/.github/workflows/version-bump.yml b/.github/workflows/version-bump.yml
index 43fe89c679..5a30c76a34 100644
--- a/.github/workflows/version-bump.yml
+++ b/.github/workflows/version-bump.yml
@@ -40,11 +40,35 @@ jobs:
run: echo "${{ steps.next.outputs.version }}" > VERSION
- name: Increment versionCode
+ id: vcode
run: |
FILE=android/app/build.gradle.kts
CODE=$(grep -oP 'versionCode\s*=\s*\K\d+' "$FILE")
- sed -i "s/versionCode\s*=\s*[0-9]\+/versionCode = $((CODE+1))/" "$FILE"
- echo "versionCode: $CODE -> $((CODE+1))"
+ NEW_CODE=$((CODE+1))
+ sed -i "s/versionCode\s*=\s*[0-9]\+/versionCode = $NEW_CODE/" "$FILE"
+ echo "versionCode: $CODE -> $NEW_CODE"
+ echo "code=$NEW_CODE" >> "$GITHUB_OUTPUT"
+
+ - name: Generate fastlane changelog
+ env:
+ GH_TOKEN: ${{ github.token }}
+ run: |
+ PREV_TAG=$(git describe --tags --abbrev=0 2>/dev/null || echo "")
+ if [ -n "$PREV_TAG" ]; then
+ MERGED_SINCE=$(git log -1 --format=%aI "$PREV_TAG")
+ NOTES=$(gh pr list --state merged --base main \
+ --search "merged:>$MERGED_SINCE" \
+ --json title --jq '.[].title | "* " + .' | head -20)
+ fi
+ if [ -z "${NOTES:-}" ]; then
+ NOTES="* v${{ steps.next.outputs.version }}"
+ fi
+ CODE=${{ steps.vcode.outputs.code }}
+ for locale in en-US ja; do
+ dir="android/fastlane/metadata/android/${locale}/changelogs"
+ mkdir -p "$dir"
+ printf '%s\n' "$NOTES" > "${dir}/${CODE}.txt"
+ done
- name: Create Pull Request
uses: peter-evans/create-pull-request@v7
@@ -54,3 +78,7 @@ jobs:
body: "Automated version bump: `${{ steps.current.outputs.version }}` → `${{ steps.next.outputs.version }}`"
branch: chore/bump-${{ steps.next.outputs.version }}
delete-branch: true
+ add-paths: |
+ VERSION
+ android/app/build.gradle.kts
+ android/fastlane/metadata/android/
diff --git a/android/fastlane/metadata/android/en-US/changelogs/4.txt b/android/fastlane/metadata/android/en-US/changelogs/4.txt
new file mode 100644
index 0000000000..ad41db73b2
--- /dev/null
+++ b/android/fastlane/metadata/android/en-US/changelogs/4.txt
@@ -0,0 +1,11 @@
+Initial release.
+
+* Chat UI with Jetpack Compose
+* Embedded Go backend (single binary in APK)
+* Voice mode with continuous conversation loop
+* Floating assistant overlay (replace Google Assistant)
+* Device automation via AccessibilityService
+* 16+ built-in tools (file ops, web search, memory, cron, MCP)
+* Multi-channel support (Telegram, Discord, Slack, WhatsApp, LINE)
+* 10+ LLM providers (OpenAI, Anthropic, Gemini, and more)
+* Termux edition for advanced users
\ No newline at end of file
diff --git a/android/fastlane/metadata/android/en-US/full_description.txt b/android/fastlane/metadata/android/en-US/full_description.txt
new file mode 100644
index 0000000000..1ebd6fd65e
--- /dev/null
+++ b/android/fastlane/metadata/android/en-US/full_description.txt
@@ -0,0 +1,26 @@
+ClawDroid is an Android AI assistant with an embedded Go backend. Install the APK, launch, and start chatting — no separate server setup needed.
+
+A Kotlin/Jetpack Compose app provides the chat UI, voice assistant, and device automation. The Go backend runs as a single binary bundled inside the APK, handling the agent loop, tool execution, LLM calls, and messaging channels.
+
+Features:
+
+* Chat UI built with Jetpack Compose
+* Floating assistant overlay — replace Google Assistant with long-press home
+* Voice mode — continuous conversation loop (listen, send, think, speak)
+* Device automation — tap, swipe, text input, screenshot via AccessibilityService
+* 16+ built-in tools — file operations, web search, memory, cron, sub-agents, MCP
+* Multi-channel messaging — Telegram, Discord, Slack, WhatsApp, LINE
+* 10+ LLM providers — OpenAI, Anthropic, Gemini, DeepSeek, Groq, Mistral, Ollama, and more
+* Long-term memory and daily notes
+* Scheduled tasks with cron expressions
+* MCP (Model Context Protocol) server support
+* Customizable personality via workspace files
+
+Two editions:
+
+* Embedded — Go backend bundled in the APK, works out of the box
+* Termux — Run the Go backend separately in Termux for advanced users
+
+Requires an LLM API key (OpenAI, Anthropic, Gemini, etc.) to function.
+
+Source code: https://github.com/KarakuriAgent/clawdroid
\ No newline at end of file
diff --git a/android/fastlane/metadata/android/en-US/images/icon.png b/android/fastlane/metadata/android/en-US/images/icon.png
new file mode 100755
index 0000000000..d960cb9522
Binary files /dev/null and b/android/fastlane/metadata/android/en-US/images/icon.png differ
diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png
new file mode 100644
index 0000000000..8f1292a1f2
Binary files /dev/null and b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png differ
diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png
new file mode 100644
index 0000000000..32fecf2bc0
Binary files /dev/null and b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png differ
diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png
new file mode 100644
index 0000000000..7f729fae66
Binary files /dev/null and b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png differ
diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png
new file mode 100644
index 0000000000..9239b0f921
Binary files /dev/null and b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png differ
diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png
new file mode 100644
index 0000000000..0b2ff55d0d
Binary files /dev/null and b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png differ
diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/6.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/6.png
new file mode 100644
index 0000000000..b33be609bb
Binary files /dev/null and b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/6.png differ
diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/7.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/7.png
new file mode 100644
index 0000000000..db145df181
Binary files /dev/null and b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/7.png differ
diff --git a/android/fastlane/metadata/android/en-US/short_description.txt b/android/fastlane/metadata/android/en-US/short_description.txt
new file mode 100644
index 0000000000..d1b16f46bd
--- /dev/null
+++ b/android/fastlane/metadata/android/en-US/short_description.txt
@@ -0,0 +1 @@
+AI assistant with embedded Go backend - chat, voice, device automation
\ No newline at end of file
diff --git a/android/fastlane/metadata/android/ja/changelogs/4.txt b/android/fastlane/metadata/android/ja/changelogs/4.txt
new file mode 100644
index 0000000000..5c7c0111c9
--- /dev/null
+++ b/android/fastlane/metadata/android/ja/changelogs/4.txt
@@ -0,0 +1,11 @@
+初回リリース
+
+* Jetpack Composeチャット UI
+* Go内蔵バックエンド(APK内バイナリ)
+* 音声モード(会話ループ)
+* アシスタントオーバーレイ
+* デバイス自動操作(タップ、スワイプ等)
+* 16以上のツール(ファイル、Web検索、メモリ、MCP)
+* マルチチャンネル(Telegram、Discord、Slack等)
+* 10以上のLLMプロバイダー対応
+* Termux版
\ No newline at end of file
diff --git a/android/fastlane/metadata/android/ja/full_description.txt b/android/fastlane/metadata/android/ja/full_description.txt
new file mode 100644
index 0000000000..045023ca49
--- /dev/null
+++ b/android/fastlane/metadata/android/ja/full_description.txt
@@ -0,0 +1,26 @@
+ClawDroidはGoバックエンドを内蔵したAndroid AIアシスタントです。APKをインストールして起動するだけですぐに使えます。サーバーの別途セットアップは不要です。
+
+Kotlin/Jetpack Composeアプリがチャット UI、音声アシスタント、デバイス自動操作を提供します。Goバックエンドはシングルバイナリとして APK 内にバンドルされ、エージェントループ、ツール実行、LLM呼び出し、メッセージングチャンネルを処理します。
+
+主な機能:
+
+* Jetpack Composeで構築されたチャットUI
+* フローティングアシスタントオーバーレイ — ホームボタン長押しでGoogleアシスタントの代わりに起動
+* 音声モード — 継続的な会話ループ(聞く→送信→思考→話す)
+* デバイス自動操作 — AccessibilityServiceによるタップ、スワイプ、テキスト入力、スクリーンショット
+* 16以上の組み込みツール — ファイル操作、Web検索、メモリ、cron、サブエージェント、MCP
+* マルチチャンネル — Telegram、Discord、Slack、WhatsApp、LINE
+* 10以上のLLMプロバイダー — OpenAI、Anthropic、Gemini、DeepSeek、Groq、Mistral、Ollama等
+* 長期メモリとデイリーノート
+* cron式によるスケジュールタスク
+* MCP(Model Context Protocol)サーバー対応
+* ワークスペースファイルによるカスタマイズ可能なパーソナリティ
+
+2つのエディション:
+
+* 組み込み版 — Goバックエンドを APK に内蔵、すぐに使える
+* Termux版 — 上級者向け、GoバックエンドをTermuxで別途実行
+
+動作にはLLM APIキー(OpenAI、Anthropic、Gemini等)が必要です。
+
+ソースコード: https://github.com/KarakuriAgent/clawdroid
\ No newline at end of file
diff --git a/android/fastlane/metadata/android/ja/images/phoneScreenshots/1.png b/android/fastlane/metadata/android/ja/images/phoneScreenshots/1.png
new file mode 100644
index 0000000000..8f1292a1f2
Binary files /dev/null and b/android/fastlane/metadata/android/ja/images/phoneScreenshots/1.png differ
diff --git a/android/fastlane/metadata/android/ja/images/phoneScreenshots/2.png b/android/fastlane/metadata/android/ja/images/phoneScreenshots/2.png
new file mode 100644
index 0000000000..32fecf2bc0
Binary files /dev/null and b/android/fastlane/metadata/android/ja/images/phoneScreenshots/2.png differ
diff --git a/android/fastlane/metadata/android/ja/images/phoneScreenshots/3.png b/android/fastlane/metadata/android/ja/images/phoneScreenshots/3.png
new file mode 100644
index 0000000000..7f729fae66
Binary files /dev/null and b/android/fastlane/metadata/android/ja/images/phoneScreenshots/3.png differ
diff --git a/android/fastlane/metadata/android/ja/images/phoneScreenshots/4.png b/android/fastlane/metadata/android/ja/images/phoneScreenshots/4.png
new file mode 100644
index 0000000000..9239b0f921
Binary files /dev/null and b/android/fastlane/metadata/android/ja/images/phoneScreenshots/4.png differ
diff --git a/android/fastlane/metadata/android/ja/images/phoneScreenshots/5.png b/android/fastlane/metadata/android/ja/images/phoneScreenshots/5.png
new file mode 100644
index 0000000000..0b2ff55d0d
Binary files /dev/null and b/android/fastlane/metadata/android/ja/images/phoneScreenshots/5.png differ
diff --git a/android/fastlane/metadata/android/ja/images/phoneScreenshots/6.png b/android/fastlane/metadata/android/ja/images/phoneScreenshots/6.png
new file mode 100644
index 0000000000..b33be609bb
Binary files /dev/null and b/android/fastlane/metadata/android/ja/images/phoneScreenshots/6.png differ
diff --git a/android/fastlane/metadata/android/ja/images/phoneScreenshots/7.png b/android/fastlane/metadata/android/ja/images/phoneScreenshots/7.png
new file mode 100644
index 0000000000..db145df181
Binary files /dev/null and b/android/fastlane/metadata/android/ja/images/phoneScreenshots/7.png differ
diff --git a/android/fastlane/metadata/android/ja/short_description.txt b/android/fastlane/metadata/android/ja/short_description.txt
new file mode 100644
index 0000000000..a5b8f80c21
--- /dev/null
+++ b/android/fastlane/metadata/android/ja/short_description.txt
@@ -0,0 +1 @@
+Go内蔵AIアシスタント - チャット、音声、デバイス自動操作
\ No newline at end of file
diff --git a/fdroid/metadata/io.clawdroid.yml b/fdroid/metadata/io.clawdroid.yml
new file mode 100644
index 0000000000..a0dcf53a64
--- /dev/null
+++ b/fdroid/metadata/io.clawdroid.yml
@@ -0,0 +1,67 @@
+# F-Droid metadata for ClawDroid
+# Reference: https://f-droid.org/docs/Build_Metadata_Reference/
+#
+# This file is a template for submitting to fdroiddata.
+# To submit: fork https://gitlab.com/fdroid/fdroiddata, add this file
+# to metadata/, and create a merge request.
+
+Categories:
+ - System
+ - Internet
+
+License: MIT
+AuthorName: KarakuriAgent
+WebSite: https://github.com/KarakuriAgent/clawdroid
+SourceCode: https://github.com/KarakuriAgent/clawdroid
+IssueTracker: https://github.com/KarakuriAgent/clawdroid/issues
+Changelog: https://github.com/KarakuriAgent/clawdroid/releases
+
+AntiFeatures:
+ NonFreeNet:
+ en-US: Requires a third-party LLM API (OpenAI, Anthropic, etc.) to function.
+ ja: 動作にサードパーティのLLM API(OpenAI、Anthropic等)が必要です。
+
+RepoType: git
+Repo: https://github.com/KarakuriAgent/clawdroid.git
+
+Builds:
+ - versionName: 0.4.0
+ versionCode: 4
+ commit: '0.4.0'
+ timeout: 20000
+ subdir: android/app
+ submodules: true
+
+ sudo:
+ - apt-get update
+ - apt-get install -y make
+
+ init: |-
+ cd ../..
+ # Extract Go version from go.mod
+ GO_VERSION=$(grep '^go ' go.mod | awk '{print $2}')
+ # Download and install Go
+ wget -q https://go.dev/dl/go${GO_VERSION}.linux-amd64.tar.gz
+ tar -C $HOME -xzf go${GO_VERSION}.linux-amd64.tar.gz
+ rm go${GO_VERSION}.linux-amd64.tar.gz
+
+ prebuild: |-
+ cd ../..
+ export PATH=$HOME/go/bin:$PATH
+ export GOPATH=$HOME/gopath
+ # Build Go backend for all Android architectures
+ make build-android
+
+ gradle:
+ - embedded
+
+ ndk: r27c
+
+ antifeatures:
+ NonFreeNet:
+ en-US: Requires a third-party LLM API to function.
+
+AutoUpdateMode: Version
+UpdateCheckMode: Tags
+CurrentVersion: 0.4.0
+CurrentVersionCode: 4