@cotal-ai/tmux 0.85.0 → 0.87.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -2
- package/dist/runtime.d.ts +8 -0
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +37 -9
- package/dist/runtime.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -28,8 +28,9 @@ import.
|
|
|
28
28
|
|
|
29
29
|
- **`TerminalLayout` (`tmux`)** — opens/closes tmux windows for host-side orchestration
|
|
30
30
|
(e.g. `cotal setup`). Detects the current session from `$TMUX`; must be called from inside
|
|
31
|
-
a tmux session. Supports multi-pane tabs via `split-window
|
|
32
|
-
|
|
31
|
+
a tmux session. Supports multi-pane tabs via `split-window`; a tab with more than one pane
|
|
32
|
+
needs a `split`, and one without it is refused before any window opens. Looking up tabs by
|
|
33
|
+
label throws when tmux cannot be queried.
|
|
33
34
|
|
|
34
35
|
## Usage
|
|
35
36
|
|
package/dist/runtime.d.ts
CHANGED
|
@@ -11,6 +11,14 @@ export declare class TmuxRuntime implements Runtime {
|
|
|
11
11
|
readonly kind: "tmux";
|
|
12
12
|
constructor(session: string);
|
|
13
13
|
spawn(name: string, spec: LaunchSpec, cwd: string): AgentHandle;
|
|
14
|
+
/** The handle for one seat's window. A spawn and an adoption drive the window the same way. */
|
|
15
|
+
private handle;
|
|
16
|
+
/** Take back a window an earlier manager opened, by the reference its handle carried (#4095). Only
|
|
17
|
+
* the exact seat is adopted: the server that opened it still runs, the pane is still in the
|
|
18
|
+
* recorded window, that window is still in this runtime's session, and the pane's process is still
|
|
19
|
+
* running. Anything else throws and nothing is touched, so the caller reaps or retires instead.
|
|
20
|
+
* The name is the reference's window id; the caller knows the seat's name. */
|
|
21
|
+
adopt(reference: RuntimeReference): AgentHandle;
|
|
14
22
|
/** Close a window an earlier manager opened, by the reference its handle carried, and prove the
|
|
15
23
|
* window and its pane gone. The window decides, not the pane: a pane that exited can leave its
|
|
16
24
|
* window open (`remain-on-exit`, or another pane split into it), so a window this runtime's
|
package/dist/runtime.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,WAAW,EAEhB,KAAK,UAAU,EACf,KAAK,OAAO,EACZ,KAAK,eAAe,EACpB,KAAK,gBAAgB,EAErB,KAAK,cAAc,EACpB,MAAM,gBAAgB,CAAC;AASxB;;;;;;GAMG;AACH,qBAAa,WAAY,YAAW,OAAO;IAG7B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAFpC,QAAQ,CAAC,IAAI,EAAG,MAAM,CAAU;gBAEH,OAAO,EAAE,MAAM;IAE5C,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,GAAG,WAAW;
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,WAAW,EAEhB,KAAK,UAAU,EACf,KAAK,OAAO,EACZ,KAAK,eAAe,EACpB,KAAK,gBAAgB,EAErB,KAAK,cAAc,EACpB,MAAM,gBAAgB,CAAC;AASxB;;;;;;GAMG;AACH,qBAAa,WAAY,YAAW,OAAO;IAG7B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAFpC,QAAQ,CAAC,IAAI,EAAG,MAAM,CAAU;gBAEH,OAAO,EAAE,MAAM;IAE5C,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,GAAG,WAAW;IAuD/D,+FAA+F;IAC/F,OAAO,CAAC,MAAM;IA+Cd;;;;mFAI+E;IAC/E,KAAK,CAAC,SAAS,EAAE,gBAAgB,GAAG,WAAW;IAc/C;;;;;;;0FAOsF;IAChF,IAAI,CAAC,SAAS,EAAE,gBAAgB,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,QAAQ,CAAA;KAAE,GAAG;QAAE,OAAO,EAAE,QAAQ,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAsBhH;AAYD;8EAC8E;AAC9E,eAAO,MAAM,mBAAmB,EAAE,eAKjC,CAAC;AA8BF;;;kFAGkF;AAClF,eAAO,MAAM,oBAAoB,EAAE,cAclC,CAAC"}
|
package/dist/runtime.js
CHANGED
|
@@ -70,6 +70,10 @@ export class TmuxRuntime {
|
|
|
70
70
|
}
|
|
71
71
|
},
|
|
72
72
|
});
|
|
73
|
+
return this.handle(name, windowId, paneId, serverPid);
|
|
74
|
+
}
|
|
75
|
+
/** The handle for one seat's window. A spawn and an adoption drive the window the same way. */
|
|
76
|
+
handle(name, windowId, paneId, serverPid) {
|
|
73
77
|
return {
|
|
74
78
|
name,
|
|
75
79
|
kind: "tmux",
|
|
@@ -117,6 +121,25 @@ export class TmuxRuntime {
|
|
|
117
121
|
},
|
|
118
122
|
};
|
|
119
123
|
}
|
|
124
|
+
/** Take back a window an earlier manager opened, by the reference its handle carried (#4095). Only
|
|
125
|
+
* the exact seat is adopted: the server that opened it still runs, the pane is still in the
|
|
126
|
+
* recorded window, that window is still in this runtime's session, and the pane's process is still
|
|
127
|
+
* running. Anything else throws and nothing is touched, so the caller reaps or retires instead.
|
|
128
|
+
* The name is the reference's window id; the caller knows the seat's name. */
|
|
129
|
+
adopt(reference) {
|
|
130
|
+
const { serverPid, windowId, paneId } = parseReference(reference);
|
|
131
|
+
const running = tmux.serverPid();
|
|
132
|
+
if (running !== serverPid)
|
|
133
|
+
throw new Error(`tmux runtime: pane ${paneId} ran on tmux server ${serverPid}, and ${running === undefined ? "no server" : `server ${running}`} runs now`);
|
|
134
|
+
const paneAt = tmux.paneWindow(paneId);
|
|
135
|
+
if (paneAt !== windowId)
|
|
136
|
+
throw new Error(`tmux runtime: pane ${paneId} is ${paneAt === undefined ? "gone" : `in window ${paneAt}`}, not in window ${windowId}`);
|
|
137
|
+
if (!tmux.windowSessions(windowId).includes(this.session))
|
|
138
|
+
throw new Error(`tmux runtime: window ${windowId} is not in session "${this.session}"`);
|
|
139
|
+
if (tmux.paneState(paneId) !== "running")
|
|
140
|
+
throw new Error(`tmux runtime: pane ${paneId} has exited`);
|
|
141
|
+
return this.handle(windowId, windowId, paneId, serverPid);
|
|
142
|
+
}
|
|
120
143
|
/** Close a window an earlier manager opened, by the reference its handle carried, and prove the
|
|
121
144
|
* window and its pane gone. The window decides, not the pane: a pane that exited can leave its
|
|
122
145
|
* window open (`remain-on-exit`, or another pane split into it), so a window this runtime's
|
|
@@ -126,13 +149,7 @@ export class TmuxRuntime {
|
|
|
126
149
|
* anything about it. tmux checks the pane and the session again in the command that closes the
|
|
127
150
|
* window, so a seat whose placement changed after these listings is `absent` too. */
|
|
128
151
|
async reap(reference) {
|
|
129
|
-
|
|
130
|
-
throw new Error(`cannot reap runtime kind "${reference.kind}" with tmux`);
|
|
131
|
-
// The ids reach a tmux format and command string, so only tmux's own id shapes pass.
|
|
132
|
-
const match = /^(\d+)\.(@\d+)\.(%\d+)$/.exec(reference.id);
|
|
133
|
-
if (!match)
|
|
134
|
-
throw new Error(`tmux runtime: malformed reference ${JSON.stringify(reference.id)}`);
|
|
135
|
-
const [, serverPid, windowId, paneId] = match;
|
|
152
|
+
const { serverPid, windowId, paneId } = parseReference(reference);
|
|
136
153
|
if (tmux.serverPid() !== serverPid) {
|
|
137
154
|
// Another server answers here. The seat is gone only if the server that ran it is gone too.
|
|
138
155
|
try {
|
|
@@ -160,6 +177,17 @@ export class TmuxRuntime {
|
|
|
160
177
|
return { outcome: "reaped", detail: `closed tmux window ${windowId}; pane ${paneId} exited` };
|
|
161
178
|
}
|
|
162
179
|
}
|
|
180
|
+
/** The parts of a reference this runtime's handle carried. The ids reach a tmux format and command
|
|
181
|
+
* string, so only tmux's own id shapes pass. */
|
|
182
|
+
function parseReference(reference) {
|
|
183
|
+
if (reference.kind !== "tmux")
|
|
184
|
+
throw new Error(`cannot address runtime kind "${reference.kind}" with tmux`);
|
|
185
|
+
const match = /^(\d+)\.(@\d+)\.(%\d+)$/.exec(reference.id);
|
|
186
|
+
if (!match)
|
|
187
|
+
throw new Error(`tmux runtime: malformed reference ${JSON.stringify(reference.id)}`);
|
|
188
|
+
const [, serverPid, windowId, paneId] = match;
|
|
189
|
+
return { serverPid, windowId, paneId };
|
|
190
|
+
}
|
|
163
191
|
/** Self-registering runtime provider — `import "@cotal-ai/tmux"` makes the manager's
|
|
164
192
|
* `tmux` runtime available without the manager depending on this package. */
|
|
165
193
|
export const tmuxRuntimeProvider = {
|
|
@@ -176,14 +204,14 @@ function tmuxLayout(session, label, tab) {
|
|
|
176
204
|
const [first, ...rest] = tab.panes;
|
|
177
205
|
if (!first)
|
|
178
206
|
throw new Error(`tmux layout "${label}": tab has no panes`);
|
|
207
|
+
if (rest.length > 0 && !tab.split)
|
|
208
|
+
throw new Error(`tmux layout "${label}": ${tab.panes.length} panes need a split (direction + ratio)`);
|
|
179
209
|
const firstCmd = tmux.privateLaunch(tmux.mergedCommand(first.env ?? {}, first.command, first.args ?? [])).command;
|
|
180
210
|
// Drive splits/focus off the STABLE window ID returned here — never `session:label` (labels can
|
|
181
211
|
// collide or be renamed) or pane indexes `.0`/`.1` (shift under `pane-base-index`).
|
|
182
212
|
const { windowId } = tmux.openWindow(session, label, firstCmd, first.cwd ?? ".", {
|
|
183
213
|
focus: false,
|
|
184
214
|
});
|
|
185
|
-
if (rest.length > 0 && !tab.split)
|
|
186
|
-
throw new Error(`tmux layout "${label}": ${tab.panes.length} panes need a split (direction + ratio)`);
|
|
187
215
|
rest.forEach((pane) => {
|
|
188
216
|
const cmd = tmux.privateLaunch(tmux.mergedCommand(pane.env ?? {}, pane.command, pane.args ?? [])).command;
|
|
189
217
|
tmux.splitWindow(windowId, cmd, pane.cwd ?? ".", tab.split.direction, tab.split.ratio);
|
package/dist/runtime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cotal-ai/tmux",
|
|
3
3
|
"description": "Cotal tmux integration: a tmux Runtime and TerminalLayout provider for spawning agents into tmux windows.",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.87.0",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"@cotal-ai/core": "*"
|
|
22
22
|
},
|
|
23
23
|
"devDependencies": {
|
|
24
|
-
"@cotal-ai/core": "0.
|
|
24
|
+
"@cotal-ai/core": "0.87.0"
|
|
25
25
|
},
|
|
26
26
|
"files": [
|
|
27
27
|
"dist"
|