feat: move session sharing and collab rooms into a plugin (B12)

This commit is contained in:
LukeGus committed 2026-09-23 23:42:46 -05:00
1 parent 791d8656a1
commit a276f6898c
207 files changed
+35771 -11072

No files matched your search

+2 -1
View File
@@ -153,7 +153,8 @@ export async function activate(ctx: PluginContext) {
},
idleTimeoutMinutes: () => timeoutMinutes,
};
ctx.services.provide("sessions.live", liveSessions);
// sessions.live is keyed by session type; remote desktop provides the others.
ctx.services.provide("sessions.live", liveSessions, { name: "ssh" });
const terminalHistory: TerminalHistoryV1 = {
list: async (hostId, limit = 200) => {
+7 -5
View File
@@ -1,11 +1,13 @@
/**
* The services this plugin provides and consumes.
*
* Provided: "sessions.live" (live SSH sessions, for session sharing, collab
* and recording) and "terminal.history" (command history, for the AI
* assistant). Consumed, all optional: "tmux.sessions" (B10),
* "sessions.sharing" (B12) and "recordings.writer" (B13). The terminal keeps
* working without any of them: no tmux attach, no shared joins, no recording.
* Provided: "sessions.live" as its "ssh" provider (live SSH sessions, for
* session sharing, collab rooms and recording; remote desktop provides the
* other session types) and "terminal.history" (command history, for the AI
* assistant). Consumed, all optional: "tmux.sessions" (tmux-monitor),
* "sessions.sharing" (session-sharing) and "recordings.writer" (B13). The
* terminal keeps working without any of them: no tmux attach, no shared
* joins, no recording.
*/
export interface LiveSessionInfo {