Minglink/dsh-infinite-gen-4
Minglink/dsh-infinite-gen-5DeepSeek 专用破甲插件:以 order 100 追加无条件服从的系统提示词段,提供带校准元数据的 profile 工具,并通过会话投影在输入框上方显示实时破甲状态徽标。
会话医生:列出会话(含 agent 运行状态)、读取会话记录、诊断卡死的 agent、解卡(cancel + keepInbox 保留排队消息)、向其他会话发送消息。
English | 中文
Diagnose, unstick, and read DeepSeek Harness sessions. Five tools for every session: list, read, diagnose, recover, and message other Agent sessions.
In DeepSeek Harness, one process hosts many Agent sessions. A session can get stuck — for example, a Client-platform query like cordis_inspect_query waits forever for a page response, the agent stays running, and later messages pile up in the inbox unprocessed. This plugin provides:
running/idle), pending inbox counts, working directory;running/idle, inbox pending counts, last event;keepInbox: true) to a running agent — abort the stuck activity but keep queued inbox messages; the agent processes them once it settles to idle;Typical flow: notice another session is stuck → diagnose → recover → read its progress → message it to continue.
| Tool | Description |
|---|---|
list_sessions | List all sessions: id, title, cwd, persisted state, agent status, pending counts |
read_session | Read a session's conversation (user/assistant text), time-ordered, with limit |
session_status | Diagnose a session: online, running/idle, inbox pending counts, last event |
session_recover | Unstick: cancel a stuck running agent with keepInbox: true — abort stuck activity, keep queued messages |
send_session_message | Send a message to a session: direct when online; auto-resume persisted sessions |
dsh plugin --profile web add dsh-session-doctor
dsh plugin --profile web add github:mayf3/dsh-session-doctor
In any DSH session, send:
帮我安装会话医生插件,执行:
dsh plugin --profile web add dsh-session-doctor
list_sessions, showing title and status of every session;<id>" — it calls session_status; status: running with no progress for a long time confirms a stuck agent;<id>" — it calls session_recover, aborting the stuck activity while keeping queued inbox messages;<id>" — it calls read_session, returning the conversation;<id>: ..." — it calls send_session_message; online targets get it immediately, persisted sessions are resumed first.sessionQuery.listSessions() lists the full logical corpus; ctx.agents.get(id) reads the live agent's status and inbox pending counts; sessionQuery.listEvents(id) provides the last event as progress evidence;status === 'running', call agent.cancel({ kind: 'user' }, { keepInbox: true }) — abort the stuck activity but keep queued messages; the agent processes them after settling to idle;sessionQuery.readSession(id) replays the full session log, extracting text from user/message and assistant/message events;agents.get(id) then followup(); offline → agentLoop.resume() then deliver.dsh-agent-message focuses on cross-session messaging (five delivery modes, receipts, session navigation); this plugin focuses on session health (diagnosis, recovery, reading) with a simple send entry. They coexist: use agent-message for messaging, use session-doctor when a session gets stuck.
dsh-session-doctor/
├── lib/
│ └── index.js # host half: five tools
├── cordis.patch.yml # self-register patch (pointed by dsh.bundle.patch)
├── package.json # DSH plugin manifest (dsh.bundle / dshx.contributes)
├── README.md # Chinese docs
└── README.en.md # English documentation
session_recover only acts on live agents (running); offline sessions have no stuck activity to recover.send_session_message resumes offline sessions with the default model (not the model manually selected last time).