Skip to content

Commit bd2ad25

Browse files
author
qpalzm2332933171-droid
committed
chore: 首次开源发布 GGMCP-Control v1.0.0
Android 可视化客户端(GG 控制台),通过 MCP(JSON-RPC over HTTP) 操控设备本机的 ggmcp 服务端。 - app/: 六标签页界面(连接/进程/搜索/结果/工具/日志),纯 Android 框架实现,无三方依赖 - app/src/main/assets/: 内置 arm64 / x86_64 服务端二进制,支持一键部署并启动 - server/: 上游 gameguardian-mcp-server 的逐字快照(GPL-3.0,commit be6c5e8),满足 GPL 源码提供义务 - docs/: 构建、使用手册、45 个 MCP 工具参考、架构说明、常见问题 - 新增 LICENSE(GPL-3.0)、NOTICE、CHANGELOG、CONTRIBUTING、SECURITY、CODE_OF_CONDUCT - 新增 Issue/PR 模板与 GitHub Actions 构建工作流
0 parents  commit bd2ad25

73 files changed

Lines changed: 11976 additions & 0 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitattributes

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# 统一换行符,避免 Windows / Linux 协作时整文件 diff
2+
* text=auto eol=lf
3+
4+
# Windows 专用文件保留 CRLF
5+
*.bat text eol=crlf
6+
*.cmd text eol=crlf
7+
8+
# Shell / Gradle 脚本必须是 LF,否则在设备与 Linux 上无法执行
9+
*.sh text eol=lf
10+
gradlew text eol=lf
11+
gradlew.bat text eol=crlf
12+
13+
# 二进制文件(内置服务端、Gradle wrapper、图标等)不做换行转换,且不计入语言统计
14+
app/src/main/assets/ggmcp_arm64 binary
15+
app/src/main/assets/ggmcp_x86_64 binary
16+
gradle/wrapper/gradle-wrapper.jar binary
17+
*.jar binary
18+
*.apk binary
19+
*.png binary
20+
*.jpg binary
21+
*.ttf binary
22+
23+
# 文档与资源
24+
*.md text eol=lf
25+
*.xml text eol=lf
26+
*.java text eol=lf
27+
*.gradle text eol=lf
28+
*.properties text eol=lf
29+
30+
# 生成物不参与 diff 统计
31+
CHANGELOG.md merge=union
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
name: 🐞 Bug 报告
2+
description: 应用闪退、按钮无效、搜索/读写结果异常等问题
3+
title: "[Bug] "
4+
labels: ["bug"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
感谢反馈!提交前请先看 [docs/FAQ.md](https://github.com/qpalzm2332933171-droid/GGMCP-Control/blob/main/docs/FAQ.md) 与 [docs/USAGE.md](https://github.com/qpalzm2332933171-droid/GGMCP-Control/blob/main/docs/USAGE.md),多数问题(无法连接、搜不到值、Text file busy、memfile 模式)在那里已有说明。
10+
11+
- type: checkboxes
12+
id: preflight
13+
attributes:
14+
label: 提交前确认
15+
options:
16+
- label: 我已经阅读 README 与 FAQ,并搜索过现有 Issue
17+
required: true
18+
- label: 问题出在本应用,而不是服务端功能本身(服务端问题请提到上游仓库)
19+
required: false
20+
21+
- type: textarea
22+
id: what-happened
23+
attributes:
24+
label: 问题描述
25+
description: 期望发生什么?实际发生了什么?
26+
placeholder: 例如:点「附加选中进程」后顶部显示已附加,但搜索一直返回 0 条结果
27+
validations:
28+
required: true
29+
30+
- type: textarea
31+
id: steps
32+
attributes:
33+
label: 复现步骤
34+
placeholder: |
35+
1. 打开应用 → 连接页 → 部署内置二进制并启动
36+
2. 进程页 → 附加 xxx
37+
3. 搜索页 → 值 100 / dword / all → 搜索
38+
4. 看到 …
39+
validations:
40+
required: true
41+
42+
- type: textarea
43+
id: logs
44+
attributes:
45+
label: 日志(「日志」页复制)
46+
description: 请粘贴出错前后的 `→ CALL` / `← RESP` 行;如与服务启动有关,也请附「连接 → 自检」输出。
47+
render: text
48+
validations:
49+
required: false
50+
51+
- type: input
52+
id: app-version
53+
attributes:
54+
label: 应用版本
55+
description: 设置页/关于看不到时,写 APK 文件名或 Release 版本号
56+
placeholder: v1.0.0
57+
validations:
58+
required: true
59+
60+
- type: input
61+
id: device
62+
attributes:
63+
label: 设备与系统
64+
placeholder: 小米 13 / Android 14 / arm64-v8a
65+
validations:
66+
required: true
67+
68+
- type: input
69+
id: root
70+
attributes:
71+
label: Root 方案
72+
placeholder: Magisk 27.0 / KernelSU 0.9.5 / 模拟器自带 su
73+
validations:
74+
required: true
75+
76+
- type: dropdown
77+
id: kpatch
78+
attributes:
79+
label: 是否安装 KPatch-Next + MemoryDriver KPM
80+
options:
81+
- 未安装(读取模式为 memfile 或 processvm)
82+
- 已安装(读取模式为 kernel)
83+
- 不清楚
84+
validations:
85+
required: true
86+
87+
- type: dropdown
88+
id: source
89+
attributes:
90+
label: APK 来源
91+
options:
92+
- GitHub Releases 下载
93+
- 自行构建(gradlew)
94+
- 其它来源
95+
validations:
96+
required: true

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
blank_issues_enabled: true
2+
contact_links:
3+
- name: 📖 使用与排错文档
4+
url: https://github.com/qpalzm2332933171-droid/GGMCP-Control/tree/main/docs
5+
about: 构建、使用流程、工具参考、架构说明与常见问题
6+
- name: 🧩 服务端(ggmcp)问题
7+
url: https://github.com/giaoimgiao/gameguardian-mcp-server/issues
8+
about: 内存读写、搜索算法、内核驱动协议等服务端问题请提到上游仓库
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
name: ✨ 功能建议
2+
description: 希望增加的新功能、界面改进或文档完善
3+
title: "[Feature] "
4+
labels: ["enhancement"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
提示:服务端本身提供了 45 个 MCP 工具,其中有相当一部分已经可以通过「工具 → RAW 调用」直接使用(工具名 + JSON 参数,见 [docs/TOOLS.md](https://github.com/qpalzm2332933171-droid/GGMCP-Control/blob/main/docs/TOOLS.md))。
10+
11+
- type: textarea
12+
id: problem
13+
attributes:
14+
label: 你遇到的使用场景
15+
description: 现在是怎么做的?哪里不顺手?
16+
validations:
17+
required: true
18+
19+
- type: textarea
20+
id: proposal
21+
attributes:
22+
label: 期望的方案
23+
description: 你希望界面/流程变成什么样?如果涉及具体工具或参数,请一并说明。
24+
validations:
25+
required: true
26+
27+
- type: textarea
28+
id: alternatives
29+
attributes:
30+
label: 备选方案
31+
description: 目前有没有绕过办法(例如 RAW 调用)?
32+
validations:
33+
required: false
34+
35+
- type: checkboxes
36+
id: scope
37+
attributes:
38+
label: 范围确认
39+
options:
40+
- label: 该功能只需要调用服务端已有工具即可实现(不需要改上游服务端)
41+
required: false
42+
- label: 我愿意提交 PR 实现这个功能
43+
required: false

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
## 这个 PR 做了什么
2+
3+
<!-- 一句话说明改动目的,例如:修复结果页在后台线程切页时的空白问题 -->
4+
5+
## 类型
6+
7+
- [ ] Bug 修复(fix)
8+
- [ ] 新功能(feat)
9+
- [ ] 界面/交互优化(ui)
10+
- [ ] 文档(docs)
11+
- [ ] 重构/清理(refactor / chore)
12+
13+
## 影响范围
14+
15+
<!-- 涉及哪些标签页/文件;是否改变既有行为或默认值;是否影响服务端二进制 -->
16+
17+
## 验证方式
18+
19+
<!-- 如何验证:构建命令、真机/模拟器、具体操作步骤与结果 -->
20+
21+
- [ ] `./gradlew :app:assembleDebug` 构建通过(Windows:`.\gradlew.bat :app:assembleDebug`
22+
- [ ] 已在真机或模拟器上实际点击验证(说明 Android 版本与 Root 方案)
23+
- [ ] 用户可见行为变化已同步到 `README.md` / `docs/` / `CHANGELOG.md`
24+
25+
## 关联 Issue
26+
27+
<!-- 例如:Closes #12 -->
28+
29+
## 其它说明
30+
31+
<!-- 截图、日志、已知限制等。注意隐去个人敏感信息 -->

.github/workflows/build.yml

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: Build
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
workflow_dispatch:
8+
9+
jobs:
10+
assemble:
11+
name: Build debug APK
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Checkout
15+
uses: actions/checkout@v4
16+
17+
- name: Set up JDK
18+
uses: actions/setup-java@v4
19+
with:
20+
distribution: temurin
21+
java-version: '21'
22+
cache: gradle
23+
24+
- name: Set up Android SDK
25+
uses: android-actions/setup-android@v3
26+
27+
- name: Show toolchain versions
28+
run: |
29+
java -version
30+
./gradlew --version
31+
32+
- name: Build debug APK
33+
run: ./gradlew :app:assembleDebug --no-daemon --console=plain
34+
35+
- name: Upload APK
36+
uses: actions/upload-artifact@v4
37+
with:
38+
name: app-debug
39+
path: app/build/outputs/apk/debug/*.apk
40+
if-no-files-found: warn
41+
retention-days: 14

.gitignore

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Gradle / Android 构建产物
2+
*.iml
3+
.gradle/
4+
/build/
5+
/app/build/
6+
/captures/
7+
/local.properties
8+
.externalNativeBuild/
9+
.cxx/
10+
11+
# IDE 配置(Android Studio / IntelliJ / VS Code)
12+
/.idea/
13+
.vscode/
14+
*.hprof
15+
16+
# 打包与签名产物(APK 请通过 GitHub Releases 分发)
17+
*.apk
18+
*.aab
19+
*.ap_
20+
*.jks
21+
*.keystore
22+
23+
# 系统文件
24+
.DS_Store
25+
Thumbs.db
26+
desktop.ini
27+
28+
# 临时文件
29+
*.log
30+
*.tmp
31+
*.bak
32+
*.swp
33+
*~

CHANGELOG.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# 更新日志 · Changelog
2+
3+
本项目遵循 [语义化版本](https://semver.org/lang/zh-CN/)。版本号对应 `app/build.gradle` 中的 `versionName`
4+
5+
## [1.0.0] - 2026-09-14
6+
7+
首个公开版本。
8+
9+
### 新增
10+
11+
- **连接页**:服务地址配置与连接测试;一键部署内置服务端二进制(按 ABI 自动选择 `ggmcp_arm64` / `ggmcp_x86_64`)并启动;导入自定义二进制;服务启动/停止/日志查看;环境自检;写入控制脚本与开机自启脚本;`su` 路径自动探测与 root 测试;GameGuardian 绑定/换绑/解绑。
12+
- **进程页**:进程列表(关键字过滤、仅应用、含内核线程、4 种排序、分页)、点选附加、分离、目标信息、模块列表、暂停/恢复。
13+
- **搜索页**:精确搜索(`auto` 全类型)、两步搜索 refine、模糊搜索(初始化 / 增大 / 减小 / 不变 / 有变化 / 范围过滤)、区间搜索、Xor 加密值搜索。
14+
- **结果页**:结果分页浏览与点选、按地址读写、单条修改与冻结、批量改成同一值、批量冻结结果集(范围过滤 + 坐标对模式)、解冻全部、Hex 转储、监视地址、快照保存/列出、结果分析、导出结果、复制地址。
15+
- **工具页**:读/写/Hex 转储/原始字节读取、模块基址、计算偏移、模块列表、指针扫描、暂停/恢复、快照与交叉分析、GG 数据文件与保存列表、GG Lua 脚本生成与输出回读、服务器配置读写、关闭服务器、shell 执行、RAW 调用任意工具、列出全部工具。
16+
- **日志页**:调用审计(`→ CALL` / `← RESP`,含时间戳与超长内容截断)、清空、复制全部、手动刷新、自动滚动开关。
17+
- 全局:顶部实时状态栏(连接状态 / 已附加 pid / 结果数 / 冻结数)、后台任务指示与中断、深色主题、纯 Android 框架实现(无 AndroidX / Kotlin / 第三方依赖)。
18+
19+
### 说明
20+
21+
- 内置服务端二进制编译自 [gameguardian-mcp-server](https://github.com/giaoimgiao/gameguardian-mcp-server) v2.9.x 快照,完整源码随仓库提供于 `server/`(GPL-3.0)。
22+
- Release APK 使用 debug 密钥签名,便于直接安装与覆盖升级;如需正式签名请自行配置。

CODE_OF_CONDUCT.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# 行为准则 · Code of Conduct
2+
3+
## 我们的承诺
4+
5+
为了让每个人都能在友好、安全的环境中参与,本项目的维护者与贡献者承诺:无论年龄、体型、可见或不可见的残障、族群、性别认同与表达、经验水平、教育程度、社会经济状况、国籍、外貌、种族、宗教或性取向如何,参与本项目都不会受到骚扰。
6+
7+
## 期望的行为
8+
9+
- 使用友善、包容的语言,尊重不同观点与经验。
10+
- 就事论事地给出与接受建设性反馈。
11+
- 承认错误、道歉并从中学习,关注社区整体的最佳利益。
12+
- 在讨论中避免人身攻击、歧视性言论、挑衅与政治/宗教争论。
13+
14+
## 不可接受的行为
15+
16+
- 任何形式的骚扰、侮辱、贬损性评论或人身攻击。
17+
- 性化语言或图像、未经同意的性关注或示好。
18+
- 公开或私下骚扰、跟踪、威胁。
19+
- 发布他人的私人信息(如真实姓名、住址、账号、设备序列号)而未获许可。
20+
- 在本项目渠道内宣传或协助**违法用途**,包括但不限于:绕过在线游戏服务条款实施作弊、攻击或入侵非本人拥有的系统、传播恶意软件。
21+
- 其它在专业场合中明显不当的行为。
22+
23+
## 适用范围
24+
25+
本准则适用于项目仓库、Issue、Pull Request、 Discussions 以及任何以本项目名义开展的公开或私下交流。
26+
27+
## 执行
28+
29+
维护者有权对违反本准则的言行采取任何其认为适当的措施,包括警告、删除评论、关闭 Issue/PR、临时或永久禁止参与。
30+
31+
如需举报,请通过仓库的私下渠道(如 GitHub 的 Report abuse 功能或维护者邮箱)联系维护者;所有举报都会被及时、公正地审阅与处理,并尊重举报者的隐私与安全。
32+
33+
维护者在执行本准则时应遵循:以善意判断、优先教育、但必要时果断处置。
34+
35+
## 致谢
36+
37+
本准则参考 [Contributor Covenant v2.1](https://www.contributor-covenant.org/version/2/1/code_of_conduct/) 的通用框架,并结合本项目(涉及 Root 与内存修改工具)的实际情况补充了对违法用途的限制条款。

0 commit comments

Comments
 (0)