Skip to content

[feature][P2] anet attach <alias> — 一键 attach 节点 tmux session(取代手工记 tmux 名) #121

@s2agi

Description

@s2agi

需求

anet ls 输出节点列表后,用户常常需要 attach 到某个节点的 tmux session(看 agent 在干啥、捕获 prompt、debug 等)。当前流程:

  1. anet ls 看 NAME 列
  2. 心算或猜:tmux session 名是否就是 alias(多数情况是,但 N站马 在 通信N站 tmux,B站马 历史上也错位过)
  3. tmux ls | grep <alias> 找对应 session
  4. tmux attach -t <session> 进去

Vincent 2026-05-15 telegram 4886 提出:「anet ls 要不要加一给 attach 的功能啊」

期望

anet ls 输出直接支持一键 attach(或 anet attach <alias> shortcut),免去用户记 tmux session 名 + 跨多个命令导航。

设计建议

Option A — anet attach <alias> 子命令(最干净):

anet attach B站负责人
# → tmux attach -t <node 的 tmux session>
  • 内部读 .anet/nodes/<alias>/session.json 或类似 metadata 找到该节点的 tmux session 名
  • 不存在 / 节点未跑 → 友好 error + 提示 anet node start

Option B — anet ls 输出加 TMUX 列

NAME      RUNTIME  STATUS  SSE  SESSION  TMUX
B站负责人   claude   idle   ●    7847c7   B站负责人

然后用户 tmux attach -t <列里看到的名字>

Option C — 交互式anet ls--attach <alias> flag,或 selection prompt 选哪个 attach。

通信龙 倾向 A(最低 friction,跟 #117 anet project up/restart/down 顶层动词风格一致)。B 可作为信息补全(不冲突)。C 多余。

实现要点

  • 需要存「节点 → tmux session 名」映射(当前 anet node start 用 alias 当 session 名是 convention,但 RFC-010 没硬绑定,rename 后可能 drift)
  • 或者:anet attach 不依赖映射,直接尝试 tmux attach -t <alias>,找不到再 tmux ls | grep -i <alias> 模糊匹配
  • 失败回 user-friendly error,建议下一步动作

优先级 / Owner

P2(小 UX feature,~30 LOC cli.ts,不阻塞)· 候选 Owner: 通信工程马(CLI 一手包,#115/#117/#88 都在他手里)

Related


Reporter: Vincent (telegram 4886) · 通信龙 代开

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Normal — 常规 enhancement / 非阻塞 bug

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions