157 Commits

Author SHA1 Message Date
LukeMackin
c1a9e40d0a feat: 离线APK—Android Bridge本地执行(exec/listFiles/sysinfo) 2026-07-22 21:32:40 +08:00
LukeMackin
a7dad7debc chore: 删除调试截图 2026-07-22 21:25:09 +08:00
LukeMackin
323fd62ed4 fix: 审查—删除shell.html+MainApplication+清理manifest 2026-07-22 21:23:21 +08:00
LukeMackin
5cf0cf40e3 fix: allowUniversalAccessFromFileURLs(CORS审查) 2026-07-22 21:13:39 +08:00
LukeMackin
d851c25edf fix: MainActivity→ReactActivity(AS中MakeProject即可运行) 2026-07-22 21:04:02 +08:00
LukeMackin
b04238892d feat: shell.html—本地HTML加载Expo web bundle(safe) 2026-07-22 21:02:06 +08:00
LukeMackin
d75ed790cc fix: WebView加载index.bundle(Expo bundle URL替代manifest JSON) 2026-07-22 20:58:05 +08:00
LukeMackin
09457ed730 fix: exec命令正则放宽—允许全部ASCII可打印字符(引号/管道等) 2026-07-22 20:55:57 +08:00
LukeMackin
cd62fd8fe4 fix: UTF-16→UTF-8编码修复+BOM清除→BUILD SUCCESSFUL 2026-07-22 20:48:54 +08:00
LukeMackin
c6ab70aaca feat: 恢复RN prebuild配置—MainActivity+MainApplication+Gradle
→AS中File→Open android/→Sync Project→Make Project
→APK内嵌ReactActivity+App.tsx(Chat+Terminal)
2026-07-22 20:38:41 +08:00
LukeMackin
282bc79510 fix: exec默认cwd也走safePath(审查) 2026-07-22 20:30:04 +08:00
LukeMackin
37c6605582 fix: 完全重写tools.ts—safePath全部到位+命令净化+启动验证通过 2026-07-22 20:24:05 +08:00
LukeMackin
fcfedf1ae0 fix: 安全CRITICAL—exec用净化命令+file_read/write/move全加safePath 2026-07-22 20:19:20 +08:00
LukeMackin
12e00bf683 fix: 安全—路径沙箱+命令字符过滤+移除unused spire
- safePath(): resolve→startsWith(BASE_DIR)防路径遍历
- sanitizeCommand(): 拒绝;&|$(){}等shell元字符
- 移除unused import(spawn,DeviceIdentity)
2026-07-22 20:12:05 +08:00
LukeMackin
9f912da9fd feat: MCP Server运行成功—stdio传输+7个Tool+Zod schema
- StdioServerTransport(stdin/stdout标准MCP协议)
- Zod schema注册(file_list/read/write/move/exec/process_list/sysinfo)
- pnpm install完成+SDK依赖解析
- 添加zod依赖
2026-07-22 20:06:40 +08:00
LukeMackin
3d82964075 chore: 清理未用import 2026-07-22 19:39:31 +08:00
LukeMackin
490201f0d4 fix: 审查阻断—移除MainApplication引用+cleartext+SYSTEM_ALERT_WINDOW 2026-07-22 19:37:51 +08:00
LukeMackin
e29e0f7e36 fix: dependencies语法修复+移除重复includeBuild(审查阻断) 2026-07-22 19:23:53 +08:00
LukeMackin
ffb74262e9 chore: 移除expo-updates依赖+清理BOM 2026-07-22 18:25:20 +08:00
LukeMackin
4db4b6c0f3 fix: 移除expo-updates插件(已用WebView OTA取代) 2026-07-22 18:21:53 +08:00
LukeMackin
09fde0501f fix: 审查修复—cleartext+package.json main+dead HTML+comment 2026-07-22 18:21:42 +08:00
LukeMackin
ce7204b016 fix: Rules of Hooks — Terminal state提升到App顶层
- 移除JSX内IIFE(违反Rules of Hooks)
- termCmd/termOut/termRunning→App顶层useState
- 切换标签不再触发hook数量变化
2026-07-22 17:56:15 +08:00
LukeMackin
02967ae5c3 fix: Terminal阻塞修复—cmd state+onPress+fetch /tools/exec
- IIFE内useState: cmd/out/running
- Run按钮→POST /tools/exec→显示stdout/stderr
- onSubmitEditing键盘发送
- loading disabled反馈
2026-07-22 17:53:44 +08:00
LukeMackin
c407f6c483 feat: Terminal Tab — 远程exec命令执行界面
- Terminal标签: 命令输入+Run按钮+输出区域
- 等宽字体+绿字黑底终端风格
- 5个Tab: Chat/Term/Gateway/Device/Connection
2026-07-22 17:51:49 +08:00
LukeMackin
aa45b258b2 feat: Android客户端—Chat聊天界面+状态指示器
- Chat Tab: 消息列表+输入框+发送按钮
- POST /chat 与Gateway通信(支持Error显示)
- 右上角连接状态圆点(绿/黄/红/灰)
- 底部Connection Tab独立状态管理
- KeyboardAvoidingView键盘适配
2026-07-22 17:50:33 +08:00
LukeMackin
93ca593f1b fix: 审查阻断 — BOM+信号时序+unused import+exit前等待 2026-07-22 17:33:52 +08:00
LukeMackin
bca14ebe7b feat: U-001 设置页面 — Gateway/Device/Connection三标签
- Gateway标签: URL配置+心跳间隔+日志级别+自动连接
- Device标签: 设备名称+信息卡片
- Connection标签: 状态指示器+连接/断开按钮
- 引用@yuzu-gca/shared的DEFAULT_GATEWAY_CONFIG
2026-07-22 17:30:18 +08:00
LukeMackin
34ead6e471 feat: C-015+P-006/008/009 Gateway连接生命周期
- connection.ts: ConnectionManager(注册/心跳/重连)
- checkConnectivity+P-006: /health HEAD探测
- registerWithGateway: POST /devices/register
- sendHeartbeat+P-008: 15s心跳 POST /devices/:id/heartbeat
- backoffDelay+P-009: 指数退避+30%抖动
- main.ts: bootstrap后启动ConnectionManager
- SIGINT/SIGTERM优雅关闭
2026-07-22 17:29:21 +08:00
LukeMackin
8c1ba243b5 chore: server包package.json+tsconfig 2026-07-22 17:24:52 +08:00
LukeMackin
8d8d99acdd fix: 审查修复 — import清理+capabilities匹配+placeholder加required 2026-07-22 17:24:08 +08:00
LukeMackin
f85ce9aa43 feat: P0 — MCP Tool类型(36) + Server框架 + 7个核心Tool实现
S-001: packages/shared/src/mcp/tools.ts — 36 Tool接口定义(10模块)
S-002: packages/shared/src/mcp/config.ts — DeviceConfig/Gateway类型
C-001: packages/server/src/index.ts — MCP Server框架+SSE传输
C-002~011: packages/server/src/tools.ts — 7个P0核心Tool
  - file_list, file_read, file_write, file_move
  - exec, process_list, sysinfo
packages/server/src/main.ts — 入口, 环境变量配置
2026-07-22 17:20:38 +08:00
LukeMackin
a98d35cb1c fix: versionCode match失败时跳过(避免curCode=0误报) 2026-07-22 16:50:59 +08:00
LukeMackin
e209db6be8 fix: APK阈值动态提取ver span末尾数字(审查建议) 2026-07-22 16:48:29 +08:00
LukeMackin
c41a3ad9d9 feat: frame.html 加入 APK 版本检测
- checkUpdate 读取 j.apk.versionCode
- 如果>5(当前版本),显示Download APK链接
- apkLink div在下载按钮下方
- BUILD SUCCESSFUL
2026-07-22 16:46:17 +08:00
LukeMackin
c6f7567eb9 fix: 完整重写index-stable.html(gear⚙+overflow) SHA256同步三渠道 2026-07-22 12:51:40 +08:00
LukeMackin
f595c82983 fix: gear emoji鍏?→⚙ 2026-07-22 12:48:17 +08:00
LukeMackin
153af75a44 feat: nightly→v7 测试渠道独立 2026-07-22 12:47:27 +08:00
LukeMackin
7e2f2ebfbd fix: body overflow-x:hidden 修复错位+SHA256同步 2026-07-22 12:30:43 +08:00
LukeMackin
99d8f66f52 fix: SHA256 sync gear修复后 2026-07-22 12:27:43 +08:00
LukeMackin
40998f9be1 fix: BOM清除+chLabel初始化(审查阻断) 2026-07-22 01:16:41 +08:00
LukeMackin
45cce458ac fix: index-stable.html英文版+渠道持久化+highlight 2026-07-22 01:13:39 +08:00
LukeMackin
3a1058d10c chore: 清理tmp_js.js 2026-07-22 01:09:42 +08:00
LukeMackin
f83bc2d524 fix: manifest.json clean rewrite SHA256=f82ea977 2026-07-22 01:09:08 +08:00
LukeMackin
4facecc089 fix: manifest.json SHA256 改为实际值(f82ea977...)
- 使用index-stable.html的实际SHA256
- TBD占位符→真实值,客户端校验将通过
- 清除BOM保证JSON.parse可用
2026-07-22 01:08:28 +08:00
LukeMackin
b5bcf8e9c0 fix: UTF-8 BOM+loadDataWithBaseURL(utf-8)修复乱码
- frame.html/index.html 添加 UTF-8 BOM (EF BB BF)
- loadDataWithBaseURL 显式设置 utf-8 编码
- WebView 以此识别中文内容
2026-07-22 00:59:03 +08:00
LukeMackin
6ee4ff533a chore: 移除调试文件 2026-07-22 00:55:29 +08:00
LukeMackin
337c49f1f9 fix: 改回loadUrl(file://frame.html) - loadDataWithBaseURL导致乱码
- 框架APK始用loadUrl,避免MIME/编码问题
- 缓存HTML仍用loadDataWithBaseURL
- 恢复<!DOCTYPE html>
2026-07-22 00:53:39 +08:00
LukeMackin
db0bc85609 fix: 移除DOCTYPE(loadDataWithBaseURL兼容) 2026-07-22 00:49:41 +08:00
LukeMackin
7f7b75c0fc fix: 审查阻断修复 — cache加载+TBD校验+路径安全
1. 恢复cacheFile.exists()→加载缓存HTML(OTA链路修复)
2. TBD/零哈希双重拒绝(/^(0{64}|TBD)/)
3. fetchText双次替换..防止绕过
4. BUILD SUCCESSFUL
2026-07-22 00:46:55 +08:00
LukeMackin
e9bcb7d804 fix: MainActivity精简+frame.html骨架页[V5]标记
- 移除cacheFile逻辑,始终加载frame.html
- loadDataWithBaseURL避免WebView缓存
- frame.html添加[V5]标记区分版本
- Bridge保留(manifest/fetchText/sha256)
2026-07-22 00:43:06 +08:00