ccch1mneyyy / dsh-go Architecture and code health
dsh-go — DeepSeek Harness 装进口袋:手机本机运行,也能遥控你的电脑。
github.com/ccch1mneyyy/dsh-goIndexed at bf01594Up to date with upstream
What is dsh-go?
dsh-go is an Android client for DeepSeek Harness (DSH) that lets you chat with DSH on a phone or control DSH on a computer or server. It runs the DSH engine locally inside an embedded Linux environment on the phone, or connects over SSH or DSH Remote to a DSH instance elsewhere. The app is written mainly in Dart with Flutter, with Kotlin for Android-specific code.
Written by a model from the README and the source
2,494 files and 44,547 symbols in 10 modules, led by Dart (1,642 files) and Kotlin (245).
Code health
Hotspots average 9.0, as healthy as the rest of the code.
Use ccch1mneyyy/dsh-go in your agent
Point Claude Code, Cursor, Codex or VS Code at this repository. Your agent gets the index this page is built from: cited answers, callers, history and health for any file.
- 1.In Claude, open Customize → Connectors, click +, then Add custom connector. On a Team or Enterprise plan an owner adds it first under Organization settings → Connectors.
- 2.Paste the server URL below as the Remote MCP server URL, then click Add.
- 3.Click Connect. A Repowise sign-in window opens. Approve access.
- 4.Repowise's tools are now available in your Claude chats.
Connect with one click. Sign in with Repowise (OAuth), no API key to copy. Works in Claude on the web, desktop, and mobile.
Docshttps://api.repowise.dev/mcp/ccch1mneyyy/dsh-go
This repo is public, so anyone with a Repowise account and an API key can connect.
Try asking
- get_overview()
- get_answer("how is dsh-go put together?")
- get_why("why is dsh-go structured this way?")
Explore dsh-go
- DocumentationModule-by-module documentation, 4,604 pages.
- ArchitectureDependency graph, layers and third-party dependencies.
- Code healthEvery file's score and the findings behind it.
- CommitsEach commit's effect on code health.
- OverviewEverything else the index found: contributors, decisions, what changed this week.
Key features of dsh-go
- Runs DSH directly on an Android phone inside a built-in Linux environment, without root or Termux.
- Connects to DSH on a computer or server over SSH or DSH Remote.
- Lets you send messages while a reply is still in progress, with queued messages sent immediately.
- Creates share cards and end-to-end encrypted links to a conversation that can be replayed in a browser.
- Can read the phone screen, tap and enter input for the local engine once you grant the permissions, and you can stop it at any time.
How ccch1mneyyy/dsh-go works
The Flutter user interface and the Android platform code live in app/, and app/android/app/src/main/kotlin/io/github/ccch1mneyyy/dsh_app/MainActivity.kt is the Android entry point. Android services in the same kotlin tree, such as PhoneA11yService.kt, handle phone control once the user grants the required permissions. Connections to a DSH instance go through the Dart clients in packages/dsh_client/, which talks to the DSH Web API, and packages/dsh_remote/, which handles DSH Remote. The runtime/ directory packages the Linux environment that runs the DSH engine on the phone and holds the app bridge. tooling/build-apk.sh runs the APK build, and sdk/plugin-kit contains the toolkit for plugin authors.
The codebase has 2,494 files and 44,547 symbols in 10 modules, led by Dart, Kotlin and JavaScript. Code health is 7.8 out of 10, rated good.
Getting started with dsh-go
- Change into the dsh-go directory and set up the toolchain
bash tooling/setup-toolchain.sh - Build the runtime for arm64-v8a
bash runtime/build-runtime.sh arm64-v8a - Build the arm64 release APK
DSH_BETA_TOKEN_FILE= bash tooling/build-apk.sh -f arm64 --keep-daemon
Commands copied from the README
ccch1mneyyy/dsh-go FAQ
What is dsh-go?
dsh-go is an Android client for DeepSeek Harness (DSH) that runs DSH on a phone or controls a DSH instance on a computer or server. It is an unofficial app developed by the community and is not affiliated with DeepSeek.
How does dsh-go work?
dsh-go runs the DSH engine locally in an embedded Linux environment on the phone, or connects to a DSH instance on a computer or server over SSH or DSH Remote. Model requests are sent to the model provider you configure.
How do I install dsh-go?
dsh-go is installed by cloning the repository and building an arm64 APK with the scripts in tooling/ and runtime/. The build needs internet access to download dependencies.
What language is dsh-go written in?
dsh-go is written mainly in Dart using Flutter, with Kotlin for Android platform code. The repository also includes JavaScript, TypeScript, Python and shell files.
How is the dsh-go code organized?
app/ holds the Flutter interface and Android Kotlin code, packages/ holds Dart clients for DSH and DSH Remote, and runtime/ packages the Linux environment. tooling/ contains the build scripts.
When should I use dsh-go?
Use dsh-go to run DeepSeek Harness on an Android phone or to control a DSH instance on a computer or server from your phone. The app requires Android 8.0 or later.
What license does dsh-go use?
dsh-go is licensed under AGPL-3.0. The sdk/ and examples/ directories are licensed under MIT.
The summary, features and answers on this page are written by a model from the README and the source, and refreshed with each index.
About this page
Get a page like this for your own codebase
Repowise built this map of ccch1mneyyy/dsh-go from its source and git history. It parses every symbol, draws the dependency graph, scores each file's health from complexity, duplication, coverage and churn, finds hotspots and owners in the history, and writes documentation for every module. Your coding agent reads the same index over MCP, so its answers cite real files.
Prefer local? pip install repowise && repowise init indexes your own checkout, no account needed.
Maintain ccch1mneyyy/dsh-go?
Claim this page, add a badge to the README, or re-index it.
Claim this page
Sign in with GitHub and we check that you are an admin or maintainer of ccch1mneyyy/dsh-go. Then add a badge to the README that links readers here.
Add a badge to your README
Every badge is public, cached, and updates on its own after every index. Nothing to install.
Repowise badge
Links to this page, with no score on it. Adding it also re-indexes the repo every week.
[](https://repowise.dev/repo/ccch1mneyyy/dsh-go?src=badge_wiki)Code health badge
The repo's health score out of 10, from the latest index.
[](https://repowise.dev/repo/ccch1mneyyy/dsh-go?src=badge_health)Code health card
A larger card with the score, its change since the last index, and when it was measured. The HTML version follows the reader's light or dark theme.
[](https://repowise.dev/repo/ccch1mneyyy/dsh-go?src=badge_card)