爱意满满的作品展示区。
wisteen

Shepi 更新: agent 旁边的一页、worktree 清理,还有更安静的通知

  •  
  •   wisteen · 4h 34m ago · 203 views

    Shepi 窗口:侧边栏里 "ship usage chart" 变成琥珀色并标着 needs you ,右上角横幅写着 "web-dashboard needs you"。

    Shepi (shepi.app)是 Herdr 的 Mac 原生窗口,Herdr 是让 agent 一直活着的终端运行时。从发布文章到现在,它推了三版更新:1.1.0 、1.1.1 和 1.2.0 。这次加的是这些:

    • agent 可以把刚做出来的页面作为 pane 开在自己旁边,dev server 跑在别的机器上也一样。
    • 一个 Worktree 视图,直接告诉你每个 checkout 里还留着什么,安全的那些可以一次删掉,剩下的单独决定。
    • 提示音在该响的时候立刻响,不该响的时候不响。
    • 发反馈时可以附上诊断日志;关闭确认卡片出现在你开始关闭的那个地方。

    每个版本的改动逐条列在版本记录。如果你没看过发布文章,简短版依然成立:每个 agent 都在真正的终端里,在这台 Mac 上或你的服务器上,而那个需要你的会变成琥珀色。

    侧边栏里 "ship usage chart" 变成琥珀色并标着 needs you ,下方卡片写着 "Wants to run bunx wrangler deploy --env staging" 和 Review 按钮,右上角横幅提示 "web-dashboard needs you"

    网页在 agent 旁边打开

    过去的流程是这样的:agent 起一个 dev server ,打印出 http://localhost:5173,你离开 pane 去找浏览器,回来的时候 pane 已经往前跑了。

    现在 agent 可以把那个页面作为 pane 开在自己旁边:

    shepi-agent show localhost:5173 --pane
    

    页面在 Shepi 里面打开,就在提出请求的那个 agent 旁边,标题栏上有后退、前进、刷新和用浏览器打开。点进去就能像普通页面一样用。焦点在输入框里时 prefix 键照样有效,按 Esc 把键盘交回窗口。

    如果 dev server 跑在你的某台服务器上,Shepi 会先通过 SSH 连接把端口转发过来,所以远端机器上的 localhost 地址和本地的一样能开。

    你也可以自己开页面:任意链接菜单里的以 Pane 打开、pane 菜单里的用网页向右分屏…,或者从已经打开的网页 pane 里选用此页向右分屏。

    页面有自己的存储,可以在设置 › Agents 里清掉。它拿不到摄像头、麦克风,也碰不到文件。

    Worktree:agent 留下的那些东西

    给每个 agent 分一个自己的 git worktree ,并行干活就很整齐,直到它不整齐为止。几周之后就是几十个 checkout:有的已经合并,有的还有没 push 的 commit ,有的留着没 commit 的修改,有的里面有你不舍得删的 .env,有的里面 agent 还在跑。

    显示 › Worktree…(⌥⌘W )列出这台 Mac 和你的服务器上所有 worktree ,带分支、大小、最后活动时间,更有用的是它里面是什么状态:已合并、干净、有未 push 的 commit 、有未 commit 的修改、有 .env 这类被忽略的文件、还有 agent 在、文件夹已经不在了,或者 .claude/worktrees 下面 Git 根本不认识的文件夹。

    安全项全移除只动那些没有东西可丢的 worktree ,而且只在你当前显示出来的行里动。其余的每一项都要单独拨自己的开关,旁边一行写清楚会丢什么,所以有风险的那些始终是一个决定,而不是一个勾选框。已合并的分支可以跟着 worktree 一起删,未合并的分支会留着。

    新建 worktree 时,Branch 一栏现在会带着一个生成的名称打开,跟 Herdr 生成的方式一样,而且已经选中。按 Return 就用它,或者直接覆盖输入自己的。

    该响的时候才响的通知

    "需要你"的提示现在立刻响,不再延迟。"完成"的提示会等一秒,只有那一刻 agent 仍然是完成状态才响,所以一个在两步之间停顿的 agent 不会再自己宣布干完了。

    如果你在 Herdr 自己的桌面 App 里设了自定义提示音,现在 Shepi 会放它们,前提是 Herdr 的配置没有另行指定。设置 › 通知 里会说明每个声音来自哪里。另外,当 Herdr 报告某个 agent 处于错误状态时,Shepi 在所有显示这个状态的地方都把它显示成需要你。

    关闭时会问你是从哪儿开始的

    从 × 关标签、从菜单关、或者中键关,确认卡片都出现在那个标签下面。从侧边栏某一行关 Space ,卡片就出现在那一行旁边。要关掉的东西就在原地划掉,一支箭头指着它的名字,不用四处找。卡片浮在 pane 之上,不会压到侧边栏。用快捷键关的时候,仍然在 pane 中间问。

    能带上日志的反馈

    "发送反馈"现在可以附上 Shepi 自己的日志:连接状态、按方法统计的请求、通知的判定,以及最近每次崩溃的概要。里面只有 "space 1 › tab 2" 这种中性标签,绝不含终端内容、名称或路径。开关默认打开并会记住,包含内容会先把日志给你看,再决定发不发。

    发出去之后,Shepi 会显示一个 report ID ,可以复制,也可以写进给支持的邮件里。设置 › 通用 会保留最近三条。

    更小的改动

    • 窗口继续画。macOS 有时候会在 Shepi 窗口明明看得见的时候报告它被完全遮住,仅仅因为别的 App 有一层看不见的浮层就够了;接着 Shepi 就不再向 Herdr 要画面,你正在看的 agent 会卡在半行。现在只有当别的 App 的普通窗口真的压在它上面才算被遮住,把指针移到窗口上也算作看见了它。
    • Shepi 的 agent skill 又能加载进 Pi 了;它的描述是合法的 YAML ,Pi 不再把它列进启动报错里。
    • 查找(⌘F )覆盖 agent 、space 、pane 、机器,以及每个 pane 最近的输出,本地和 SSH 上的都算;⌘E 把你带回任意一台机器上最近用过的 pane 。

    Find 浮在四个 pane 上方,输入框里是 "backf":命中 workbox 上的 agent "backfill events v2",以及那台机器上的一行输出。

    Shepi 需要 macOS 14 或更高版本,以及 Herdr 0.9.3 或更高版本,Apple 芯片和 Intel 都能跑;它是基于 Herdr 公开接口做的独立客户端,不是 Herdr 项目做的,也和 Herdr 项目没有关系。

    如果你并行跑好几个 agent ,你是怎么看哪些 worktree 可以删的?

    1 replies  •  2026-10-31 18:42:59 +08:00
    jheroy
        1
    jheroy  
       1h 57m ago via iPhone
    herdr 本身就有 gui 客户端,功能和这个完全一样。 这个软件就是套了一个壳啥功能没加卖 20 刀,抢钱呢。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2363 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 12:40 · PVG 20:40 · LAX 05:40 · JFK 08:40
    ♥ Do have faith in what you're doing.