deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:WindyPro-rourou/dsh-logcat
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
DSH Web GUI 的安卓实机调试面板(类似 Android Studio 的 Logcat 视图)。
ANDROID_HOME / ANDROID_SDK_ROOT / 默认 %LOCALAPPDATA%\Android\Sdk / PATH /
~/.dsh/adb),每 2 秒轮询 adb devices -l;检测到处于调试模式的设备自动附加 logcat 流(-v threadtime),无需打开面板。~/.dsh/adb 并自动接入,开箱即用(约 10MB)。logcat_set_package 互通,状态栏实时显示)exec-out screencap)~/.dsh/logcat/crashes,
面板弹提示条,可随时在「崩溃」弹窗里查看截图与日志logcat -b events 实时流,看应用启动/崩溃/生命周期事件adb pair + adb connect,摆脱数据线(Android 11+)app_process + 内嵌 dex,首次自动部署),点击/按键注入仅 3~5ms
(原生 input 命令每次都要启动一个 Java VM,实测约 480ms);注入器不可用时自动回退到 input,不影响可用性;
在电脑上直接操控手机:点击=点按、拖动=滑动、滚轮=上下滑动、右键=返回键、长按=长按、双击=双击、
实体键盘直接打字(字母/数字/符号直通手机,Enter/Backspace/Esc/方向键/Tab 映射为对应按键)、
文字输入框(支持中文 IME)、快捷按键(Home/返回/唤醒/音量)、一键下载当前帧、⛶ 全屏logcat_devices(列出设备)、device_info(型号/版本/SDK/分辨率/内存/电量)、device_stats(CPU/内存/电量实时采样)、
app_info(已安装应用版本号/versionCode/APK 路径)screen_capture(截图存档 + 嵌入对话图片块,多模态模型可直接看图配合 input_* 修 bug)adb_exec(shell)、adb_install(本地 APK 装真机)、adb_pull(拉文件)、
app_launch(启动应用/指定 Activity)、app_stop(force-stop,破坏性先确认)input_tap / input_swipe / input_text / input_keyevent(真机 UI 自动化)、ui_dump(界面层级 XML)、
activity_current(当前前台 Activity)logcat_recent(按包名/级别/关键词过滤)、logcat_history(磁盘历史日志回溯,重启不丢)、
logcat_crash(崩溃/ANR 自动捕获 + 上下文)、logcat_events(events 事件缓冲)、
crash_sessions(崩溃自动快照历史)、logcat_set_package(锁定当前测试包名)proc_list(进程列表)、proc_maps(内存映射 + so 模块基址)、proc_status(进程状态/内存摘要)、
proc_smaps(smaps 明细,Pss Top 区域)、mem_dump(指定地址读内存 hex)、
mem_search(内存搜 hex 模式/字符串)、frida_server(frida-server 部署/启停)、
frida_script(hook/trace/scan/bypass/dump 常用脚本模板生成)adb_install 部署 APK → adb_exec 启动 → logcat_set_package 锁包 →
logcat_recent / logcat_crash 看崩溃 → ui_dump + input_* 做界面自动化 → adb_pull 取证,闭环真机调试。proc_list 定位进程 → proc_maps 拿模块基址 → mem_dump 读目标地址 / mem_search 搜特征模式 →
proc_smaps 看内存占用明细 → frida_script 生成脚本 + frida_server 起 frida 做动态插桩。
读其他应用内存/maps 需要 root 或 debuggable 应用(run-as),工具会给出明确提示。main + sidebar.panellist),
与内置面板同样的停靠/主题/布局体验;dsh.client.inject 已按 0.2 清单修正。旧版客户端(0.1.x)自动退回右侧抽屉,
一份安装通用。图标为内置 SVG 图标集(不依赖图标包),配色优先取宿主 --dsw-* 设计 token。POST /api/dsh-logcat/exec 执行 shell、POST /api/dsh-logcat/package 设置包名、
GET /api/dsh-logcat/screenshot 截屏、POST /api/dsh-logcat/install-adb 一键装 adb、
GET /api/dsh-logcat/history 历史回溯、GET /api/dsh-logcat/crashes + GET /api/dsh-logcat/crash-file 崩溃快照读取、
POST /api/dsh-logcat/install-apk 上传安装 APK、POST /api/dsh-logcat/keyevent 按键、
POST /api/dsh-logcat/wifi-connect / wifi-disconnect 无线调试、GET /api/dsh-logcat/processes、
POST /api/dsh-logcat/mem-search、GET /api/dsh-logcat/mem-dump。~/.dsh/logcat/logs/<serial>/logcat-MM-DD.log(原始 threadtime 行);
崩溃快照存 ~/.dsh/logcat/crashes/<serial>/<时间戳>-<FATAL|ANR>/(screenshot.png + crash.log + meta.json)。# 方式一(推荐,npm 安装):
dsh plugin --profile web add @windypro-rourou/dsh-logcat
# 更新到最新版(不会自动更新;装旧版时面板/agent 通告会提示有新版本):
dsh plugin --profile web update # 升到当前 major 内最新
# 或强制最新:dsh plugin --profile web add @windypro-rourou/dsh-logcat@latest
# 更新后重启 GUI(dsh web)生效
# 尝鲜 preview 版(日常迭代高频更新,可能不稳定):
dsh plugin --profile web add @windypro-rourou/dsh-logcat@preview
main 分支 + npm latest 标签:正式版,更新的主要通道 —— 功能攒够一批就发,直接推 main/latest。preview 分支 + npm preview 标签:可选尝鲜通道(高频小步迭代)。正式版发布后如无新的试验特性,
preview 标签可能停留在上一个预览版本,不必理会。latest,preview 用户只看 preview,互不打扰)。# 方式二(源码本地链接,实时生效无需重启):把插件链进 web profile,
# 并在 ~/.dsh/profiles/web/cordis.patch.yml 增加一行:
pnpm --dir "%USERPROFILE%\.dsh\profiles\web" add link:F:\dsh-logcat
# 然后在 profile 的 cordis.patch.yml 追加:
# - insert:
# - id: logcat
# name: '@windypro-rourou/dsh-logcat'
# 该 patch 文件会被运行中的 GUI 热监听;若未生效,重启 GUI 即可。
# 方式三(bundle 层,README 原始流程,适合全新 profile;与方式二互斥,勿混用):
dsh plugin --profile web add link:<本目录绝对路径>
# 之后需要重启 GUI(dsh web)才会装载。
注意:以上方式都会在 profile 树中插入同一行
logcat,不要同时使用,否则下次 启动会因重复插件 id 而失败。
依赖解析:ws / react / react-dom / @deepseek-ai/* 通过本目录 node_modules 下的 junction 指向宿主
实际加载的物理包(保证单例)。若宿主依赖升级,请同步更新 junction 目标。
unauthorized 状态会提示)。/api/dsh-logcat/* 路由仅允许 loopback 访问。adb shell 命令消耗真实设备资源,先确认再执行。lib/index.js — 宿主端:adb 引擎、轮询、logcat 子进程、路由、WebSocket、agent 工具。lib/client.js — 浏览器端:侧边栏入口 + Logcat 面板(React,无构建步骤)。cordis.patch.yml — profile bundle patch(自动应用)。CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。