Skip to content

gh-my-posts-panel

Verified

gh-my-posts-panel · v0.1.0 · MIT · Web UI

DSH 内的「我的 GitHub 看板」:收件箱 / 我发起的 / 我参与的,点条目跳 GitHub(只读,脚本版在同一个仓库)

Install

dsh plugin add gh-my-posts-panel

Confirm the layer applied with dsh --profile default --dump-config — see the install guide.

Source

Tags

Readme

gh-my-posts-panel —— DSH 里的「我的 GitHub 看板」

把脚本版看板(同仓库的 gh-my-posts.mjs)搬进 DSH 界面:左侧栏多一个 GitHub 图标, 点开主区域就是三块列表,每条点一下在新标签打开对应的 GitHub 页面。

三块列表

分区 数据来源 说明
收件箱 gh api notifications --paginate GitHub 只给未读;显示原因(有人回复 / 有人 @ 我…)、仓库、时间
我发起的 search author:<我> Discussion + Issue,显示评论数、最后回复是谁、什么时候
我参与的 search involves:<我> 我评论过但不是发起人的(按 仓库#编号 剔除已在我发起里的),网页上很难找

怎么装、怎么开

  • 安装:plugin_manager action=install_bundle,target 给本目录。
  • 打开:左侧栏点 GitHub 图标(主区域切换;面板里「回到对话」切回去)。
  • 刷新:面板顶部「刷新」按钮 —— 会带 ?force=1 绕过 host 的 60 秒缓存。

结构

package.json        包声明:dsh.bundle.patch + dsh.client(platform: web)
cordis.patch.yml    bundle 层 insert 一行(用户层只能覆盖,不能新增)
src/index.js        host 半边:只读路由 GET /gh-my-posts-panel/data
lib/client.js       浏览器半边:sidebar.panellist 图标 + main 面板

边界与注意

  • 只读:本插件只调 gh api 的 GET / graphql 查询,不发任何写请求(删除、回复都不会做)。
  • 需要 gh 已登录:gh auth login。host 进程的 PATH 未必与终端一致,所以按 DSH_GH_BIN → gh → Windows 默认安装位置(C:\Program Files\GitHub CLI\gh.exe)依次找; 找不到可执行文件才换下一个候选,认证失败会直接把错误显示在面板上。
  • host 结果缓存 60 秒:gh 一次要打 2~3 个请求、常常好几秒,面板刷新不该次次都等。
  • 样式只用 --dsw-alias-* 主题令牌,不 require 任何 Harness Client 包(primitives 之类), 亮/暗主题自动跟随,也不会因为客户端包版本变动整块崩掉。
  • 面板文案目前是中文硬编码(跟随本 profile 既有插件的做法),没有走客户端 locale 服务。