mulmoterminal 5.6.0 → 5.7.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 +10 -1
- package/dist/assets/{abnfDiagram-O67JEVCF-RFfgyLoh.js → abnfDiagram-O67JEVCF-CYOfx7Yo.js} +1 -1
- package/dist/assets/architecture-7GRP2DOG-Dijgh_EH.js +1 -0
- package/dist/assets/{architectureDiagram-NJMV4G6O-DAIQV4rO.js → architectureDiagram-NJMV4G6O-Dm0h1sLC.js} +1 -1
- package/dist/assets/{blockDiagram-BEXU5L5S-UROY713P.js → blockDiagram-BEXU5L5S-cC6WXel_.js} +1 -1
- package/dist/assets/{c4Diagram-YGBWAQC7-DTNuYtHX.js → c4Diagram-YGBWAQC7-BqW75dss.js} +1 -1
- package/dist/assets/channel-DHp9c6le.js +1 -0
- package/dist/assets/{chunk-3FUC2YCW-C-X1ZyiP.js → chunk-3FUC2YCW-DTVDYTX9.js} +1 -1
- package/dist/assets/{chunk-5DYCD2WN-DYzrVJ4g.js → chunk-5DYCD2WN-Dg5McYUR.js} +1 -1
- package/dist/assets/{chunk-742MDFTN-DS7U8zBF.js → chunk-742MDFTN-BEAKMPzi.js} +1 -1
- package/dist/assets/{chunk-7INBJB4K-B1wYOj10.js → chunk-7INBJB4K-C0yNpk2a.js} +1 -1
- package/dist/assets/{chunk-7M6MHVWA-BiGTObKz.js → chunk-7M6MHVWA-D-sFy2uQ.js} +1 -1
- package/dist/assets/{chunk-7PRAP22T-DVtJcWUJ.js → chunk-7PRAP22T-B14Ti70Y.js} +1 -1
- package/dist/assets/{chunk-GTNCS2PH-Da0ND9eE.js → chunk-GTNCS2PH-GehvsYOa.js} +1 -1
- package/dist/assets/{chunk-GWA4HPMP-CVesnc8B.js → chunk-GWA4HPMP-BulkiEZu.js} +1 -1
- package/dist/assets/{chunk-MBY4JIJT-L9FiAeQ3.js → chunk-MBY4JIJT-tfx8juF1.js} +1 -1
- package/dist/assets/{chunk-NETBCI7D-CXJT9YAs.js → chunk-NETBCI7D-C47K-ltk.js} +1 -1
- package/dist/assets/{chunk-O7XYJQB3-Dqy2Ij3F.js → chunk-O7XYJQB3-BCjP9Rta.js} +1 -1
- package/dist/assets/{chunk-UA2S7LBM-Bfg3sSte.js → chunk-UA2S7LBM-BpEzQRku.js} +1 -1
- package/dist/assets/{chunk-WEXAMYUT-RM1WdIlv.js → chunk-WEXAMYUT-D2vVHs-s.js} +1 -1
- package/dist/assets/{chunk-Z7XXMR3K-Dt-Plljg.js → chunk-Z7XXMR3K-DrJC9r6c.js} +1 -1
- package/dist/assets/{chunk-ZIGJFQKS-3lsPo_kX.js → chunk-ZIGJFQKS-Cqa6msm6.js} +1 -1
- package/dist/assets/{classDiagram-v2-NBCMYWYE-DKOdHcNv.js → classDiagram-v2-NBCMYWYE-D69sDeij.js} +1 -1
- package/dist/assets/{cynefin-OW5HDTMX-CdfEeYnn.js → cynefin-OW5HDTMX-D9hRYnKO.js} +1 -1
- package/dist/assets/{cynefinDiagram-VND7K2PF-IkWvIqEb.js → cynefinDiagram-VND7K2PF-DldT_nhD.js} +1 -1
- package/dist/assets/{dagre-6A5THRUB-DLgBrsyE.js → dagre-6A5THRUB-BlyXIart.js} +1 -1
- package/dist/assets/{diagram-22UHCM2B-zk6neLfs.js → diagram-22UHCM2B-CjYyg7-_.js} +1 -1
- package/dist/assets/{diagram-3UASUU5V-C7fNd6nz.js → diagram-3UASUU5V-D8pdVWk4.js} +1 -1
- package/dist/assets/{diagram-ATOU4E4O-CzZ0ybLh.js → diagram-ATOU4E4O-DxMrJkE8.js} +1 -1
- package/dist/assets/{diagram-CDSNMT55-DFzYQbXV.js → diagram-CDSNMT55-BrsVpho9.js} +1 -1
- package/dist/assets/{diagram-MLGK6HIB-LhlSm3At.js → diagram-MLGK6HIB-CzfhH-bY.js} +1 -1
- package/dist/assets/{diagram-MPIPVDR6-DGlz-Gz_.js → diagram-MPIPVDR6-BGHdoFkl.js} +1 -1
- package/dist/assets/{dist-BmiKcFDk.js → dist-C5oyTNeI.js} +1 -1
- package/dist/assets/{dist-CYyCFtex.js → dist-CJNuReym.js} +1 -1
- package/dist/assets/{dist-DlVfafDj.js → dist-CQ590Pt6.js} +1 -1
- package/dist/assets/{dist-CUB7R6CP.js → dist-DEUFvoe-.js} +1 -1
- package/dist/assets/{ebnfDiagram-ZINNZB2B-BXOpXLDq.js → ebnfDiagram-ZINNZB2B-DCg9UZ81.js} +1 -1
- package/dist/assets/{elk-276RUBZZ-COOLC29s.js → elk-276RUBZZ-C18yctnQ.js} +1 -1
- package/dist/assets/{erDiagram-OPXOYQCR-DLW9touV.js → erDiagram-OPXOYQCR-Dq5BOJPw.js} +1 -1
- package/dist/assets/eventmodeling-NTZA5JFV-CDYLpUt9.js +1 -0
- package/dist/assets/flowDiagram-KWPJA3E3-h1ikP3h8.js +1 -0
- package/dist/assets/{ganttDiagram-FUAMR5RP-B-J2yKj-.js → ganttDiagram-FUAMR5RP-BSrhA7Pa.js} +1 -1
- package/dist/assets/{gitGraph-4MIJSDKK-D9V7nTh3.js → gitGraph-4MIJSDKK-CvczhabF.js} +1 -1
- package/dist/assets/{gitGraphDiagram-X574FWY7-D2ydD-sr.js → gitGraphDiagram-X574FWY7-29kAFfTL.js} +1 -1
- package/dist/assets/index-ugC-gYB8.css +1 -0
- package/dist/assets/{index-jqKj2Ih-.js → index-yIGIp5mP.js} +137 -137
- package/dist/assets/{info-A6RAGUB7-BZamo1a2.js → info-A6RAGUB7-5Vfn18aA.js} +1 -1
- package/dist/assets/{infoDiagram-VRGFBTTK-1mF8GY7H.js → infoDiagram-VRGFBTTK-C0xjRn68.js} +1 -1
- package/dist/assets/{ishikawaDiagram-OU5B5YK6-Duj77geT.js → ishikawaDiagram-OU5B5YK6-BNyfWBfD.js} +1 -1
- package/dist/assets/{journeyDiagram-ZHPQQLJL-avHPhq3z.js → journeyDiagram-ZHPQQLJL-Bgoyolap.js} +1 -1
- package/dist/assets/{kanban-definition-PNTS6WVX-B3YcPpJl.js → kanban-definition-PNTS6WVX-B_T0w2yS.js} +1 -1
- package/dist/assets/{line-DoCr4bJP.js → line-BrXN-7YZ.js} +1 -1
- package/dist/assets/{mermaid-parser.core-V1gpWY2I.js → mermaid-parser.core-Co2Ckrb2.js} +3 -3
- package/dist/assets/{mermaid.core-D3e7D68E.js → mermaid.core-D_YUclq0.js} +4 -4
- package/dist/assets/{mindmap-definition-NLK3R4M7-u1klmfn5.js → mindmap-definition-NLK3R4M7-fNbg5oGy.js} +1 -1
- package/dist/assets/{packet-AYTQ26CC-BJILPUX-.js → packet-AYTQ26CC-CMQpjVs5.js} +1 -1
- package/dist/assets/{pegDiagram-GJSIUBJH-B1a6bBkF.js → pegDiagram-GJSIUBJH-Be59j7k7.js} +1 -1
- package/dist/assets/{pie-WAS4IAKB-DbR_G7bn.js → pie-WAS4IAKB-BXlA1T4A.js} +1 -1
- package/dist/assets/{pieDiagram-5QR66LMP-BQP4p421.js → pieDiagram-5QR66LMP-DNRFkJyr.js} +1 -1
- package/dist/assets/{quadrantDiagram-O4NWA36T-D8utwgpm.js → quadrantDiagram-O4NWA36T-C0i5FRZ5.js} +1 -1
- package/dist/assets/{radar-RG4KPBEZ-BXz4Ty90.js → radar-RG4KPBEZ-2KY2iAu1.js} +1 -1
- package/dist/assets/{railroad-74A4TZTK-B37cvSf2.js → railroad-74A4TZTK-C_GgKCcI.js} +1 -1
- package/dist/assets/railroad-abnf-HS5TGJTU-Cf7XV4TE.js +1 -0
- package/dist/assets/railroad-ebnf-LZEXJU2U-CKRQohBA.js +1 -0
- package/dist/assets/railroad-peg-WCYAUIDC-CjbG--HC.js +1 -0
- package/dist/assets/{railroadDiagram-XR7U4H2S-DMSskLpg.js → railroadDiagram-XR7U4H2S-fr0qrDLC.js} +1 -1
- package/dist/assets/{requirementDiagram-PLB6GJNP-DVh6Y9kv.js → requirementDiagram-PLB6GJNP-B2KHZAiT.js} +1 -1
- package/dist/assets/{sankeyDiagram-IPEJSGJF-7e6ybiU1.js → sankeyDiagram-IPEJSGJF-BemGIYLY.js} +1 -1
- package/dist/assets/{sequenceDiagram-PO4LG4MO-MwLzuLBw.js → sequenceDiagram-PO4LG4MO-CiH1vDbp.js} +1 -1
- package/dist/assets/{stateDiagram-v2-GCMORJYK-ClFmP9D_.js → stateDiagram-v2-GCMORJYK-DmIHn8Nr.js} +1 -1
- package/dist/assets/{swimlanes-2SLR337P-94uTsBbN.js → swimlanes-2SLR337P-BmsAt5p2.js} +1 -1
- package/dist/assets/swimlanesDiagram-TC7HE7FX-DvhbaIot.js +8 -0
- package/dist/assets/{timeline-definition-EJHVYXUP-Do5dGsUL.js → timeline-definition-EJHVYXUP-CyNooLGe.js} +1 -1
- package/dist/assets/{treeView-Q6P3EWNA-BcUdf2cs.js → treeView-Q6P3EWNA-o7bobygY.js} +1 -1
- package/dist/assets/{treemap-WGGIJYW6-g4e4QV1M.js → treemap-WGGIJYW6-CZmVz7iJ.js} +1 -1
- package/dist/assets/{usecaseDiagram-POWQR4AR-CwWWrct5.js → usecaseDiagram-POWQR4AR-Bmltb1jH.js} +1 -1
- package/dist/assets/{vennDiagram-UO4OBE2U-CzwGLaXY.js → vennDiagram-UO4OBE2U-dgKx3GjX.js} +1 -1
- package/dist/assets/{wardley-WFR3VGLG-CwShVfwe.js → wardley-WFR3VGLG-C2KTqHOy.js} +1 -1
- package/dist/assets/{wardleyDiagram-VNRHLVJA-BYMi6RfJ.js → wardleyDiagram-VNRHLVJA-BUIrJNs3.js} +1 -1
- package/dist/assets/{xychartDiagram-PMCCYNJV-yED7nk5a.js → xychartDiagram-PMCCYNJV-B1S0Fgu_.js} +1 -1
- package/dist/index.html +2 -2
- package/package.json +1 -1
- package/server/backends/remoteHost/hostSessionList.ts +67 -13
- package/server/backends/remoteHost/phoneRowText.ts +60 -0
- package/server/backends/remoteHost/terminalScreen.ts +28 -3
- package/server/index.ts +17 -1
- package/server/infra/tmux.ts +27 -0
- package/server/session/lifecycle.ts +3 -0
- package/server/session/pane-mode-watch.ts +72 -0
- package/server/session/pty-connection.ts +40 -14
- package/server/session/session-reads.ts +12 -1
- package/dist/assets/architecture-7GRP2DOG-D6B2cgBI.js +0 -1
- package/dist/assets/channel-btmtLVS8.js +0 -1
- package/dist/assets/eventmodeling-NTZA5JFV-DzjiXhxT.js +0 -1
- package/dist/assets/flowDiagram-KWPJA3E3-DB_pveN5.js +0 -1
- package/dist/assets/index-Ckw6w67E.css +0 -1
- package/dist/assets/railroad-abnf-HS5TGJTU-DyVFspQu.js +0 -1
- package/dist/assets/railroad-ebnf-LZEXJU2U-DdONoAAl.js +0 -1
- package/dist/assets/railroad-peg-WCYAUIDC-B7_KDdFK.js +0 -1
- package/dist/assets/swimlanesDiagram-TC7HE7FX-CpVlK8Hz.js +0 -8
package/README.md
CHANGED
|
@@ -646,6 +646,12 @@ a crash. Windows keeps the old behaviour — the launcher ends when its server d
|
|
|
646
646
|
before. An explicit close (a cell's ✕) ends the tmux session; a machine reboot does not
|
|
647
647
|
survive (tmux itself is gone). Command-cell scripts are ephemeral and not persisted.
|
|
648
648
|
|
|
649
|
+
**Scrolling back can put a pane in tmux's copy-mode.** A program that does not handle the mouse
|
|
650
|
+
itself — a shell, or Codex's normal screen — scrolls through tmux: a wheel-up or a drag enters
|
|
651
|
+
copy-mode, where keys move through the history instead of reaching the program. While a pane is
|
|
652
|
+
in it, the cell shows a **"Viewing history" banner** with a **Back to input** button; `q` works
|
|
653
|
+
too. Leaving sends nothing to the program, and keys typed right after the button are not lost.
|
|
654
|
+
|
|
649
655
|
**Installing tmux** (optional):
|
|
650
656
|
|
|
651
657
|
```bash
|
|
@@ -2034,6 +2040,7 @@ connection (or reattach to an existing background PTY).
|
|
|
2034
2040
|
| `{ "type": "session", "id": string }` | Sent immediately on connect — the session id this socket is bound to (lets the client learn a new session's generated id). |
|
|
2035
2041
|
| `{ "type": "output", "data": string }` | PTY output to write to the terminal. On reattach, the first `output` frame is the replayed tail buffer (≤ 64 KB). |
|
|
2036
2042
|
| `{ "type": "exit", "exitCode": number, "signal": number }` | The `claude` process exited; the socket then closes. |
|
|
2043
|
+
| `{ "type": "paneMode", "inCopyMode": boolean }` | tmux-backed sessions only: whether the pane is in tmux copy-mode, where keys go to tmux instead of the program. Sent when it changes, and again to a reattached socket. |
|
|
2037
2044
|
|
|
2038
2045
|
**Client → server** (JSON text frames):
|
|
2039
2046
|
|
|
@@ -2041,6 +2048,7 @@ connection (or reattach to an existing background PTY).
|
|
|
2041
2048
|
| ------- | ------- |
|
|
2042
2049
|
| `{ "type": "input", "data": string }` | Keystrokes / bytes to write to the PTY. |
|
|
2043
2050
|
| `{ "type": "resize", "cols": number, "rows": number }` | Resize the PTY. |
|
|
2051
|
+
| `{ "type": "exitCopyMode" }` | tmux-backed sessions only: leave copy-mode (`send-keys -X cancel`). Writes nothing to the PTY. |
|
|
2044
2052
|
|
|
2045
2053
|
A non-JSON frame is written to the PTY verbatim (fallback).
|
|
2046
2054
|
|
|
@@ -2050,7 +2058,8 @@ A non-JSON frame is written to the PTY verbatim (fallback).
|
|
|
2050
2058
|
|
|
2051
2059
|
### More WebSocket endpoints
|
|
2052
2060
|
|
|
2053
|
-
The other raw WebSockets share the `/ws` frame format (`output` / `input` / `resize` / `exit
|
|
2061
|
+
The other raw WebSockets share the `/ws` frame format (`output` / `input` / `resize` / `exit`, plus
|
|
2062
|
+
`paneMode` / `exitCopyMode` for a tmux-backed session).
|
|
2054
2063
|
**Every non-Claude agent has one** — `/ws/codex`, `/ws/antigravity`, `/ws/grok`, `/ws/muse`,
|
|
2055
2064
|
`/ws/copilot`, `/ws/cursor` — and they take the same query and behave the same way; codex's is
|
|
2056
2065
|
documented here as the representative one, and the per-agent differences are the matrix in
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{m as e,t}from"./mermaid-parser.core-
|
|
1
|
+
import{m as e,t}from"./mermaid-parser.core-Co2Ckrb2.js";import{n}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as r}from"./src-CllyRBe0.js";import"./chunk-O7XYJQB3-BCjP9Rta.js";import{n as i,r as a,t as o}from"./chunk-GTNCS2PH-GehvsYOa.js";import{t as s}from"./chunk-JWPE2WC7-DVXcaiue.js";import"./mermaid.core-D_YUclq0.js";var c=e().RailroadAbnf.parser.LangiumParser,l=n(e=>{let t=e.alternatives.map(u);return t.length===1?t[0]:{type:`choice`,alternatives:t}},`transformAlternation`),u=n(e=>{let t=e.elements.map(f);return t.length===1?t[0]:{type:`sequence`,elements:t}},`transformConcatenation`),d=n(e=>{if(e.includes(`*`)){let[t,n]=e.split(`*`);return{min:t?parseInt(t,10):0,max:n?parseInt(n,10):1/0}}let t=parseInt(e,10);return{min:t,max:t}},`parseRepeat`),f=n(e=>{let t=p(e.primary);if(!e.repeat)return t;let{min:n,max:r}=d(e.repeat);return n===0&&r===1?{type:`optional`,element:t}:{type:`repetition`,element:t,min:n,max:r}},`transformElement`),p=n(e=>{switch(e.$type){case`AbnfStringLiteral`:return{type:`terminal`,value:e.value};case`AbnfNumVal`:return{type:`terminal`,value:e.value};case`AbnfRuleName`:return{type:`nonterminal`,name:e.name};case`AbnfGroup`:return l(e.element);case`AbnfOptionalGroup`:return{type:`optional`,element:l(e.element)};default:throw Error(`Unsupported ABNF primary node: ${e.$type}`)}},`transformPrimary`),m=n(e=>({name:e.name,definition:l(e.definition)}),`transformRule`),h=n(e=>{s(e,o),e.title&&o.setTitle(e.title),e.rules.map(e=>o.addRule(m(e)))},`populateDb`),g={parser:{parse:n(e=>{o.clear(),r.debug(`[ABNF Parser] Starting Langium parse`);let n=c.parse(e);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new t(n);let i=n.value;r.debug(`[ABNF Parser] Parsed rules:`,i.rules.length),h(i),r.debug(`[ABNF Parser] Parse complete`)},`parse`),parser:{yy:o}},db:o,renderer:a,styles:i};export{g as diagram};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./chunk-FOHPRMQF-DzxwRta7.js";import{M as e}from"./mermaid-parser.core-Co2Ckrb2.js";export{e as createArchitectureServices};
|