runpane 2.3.1 → 2.3.3
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/dist/agentContext.d.ts +23 -0
- package/dist/agentContext.d.ts.map +1 -0
- package/dist/agentContext.js +100 -0
- package/dist/agentContext.js.map +1 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +16 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands.d.ts +6 -0
- package/dist/commands.d.ts.map +1 -1
- package/dist/commands.js +43 -1
- package/dist/commands.js.map +1 -1
- package/dist/generated/contract.d.ts +771 -7
- package/dist/generated/contract.d.ts.map +1 -1
- package/dist/generated/contract.js +1272 -3
- package/dist/generated/contract.js.map +1 -1
- package/dist/localControl.d.ts +4 -0
- package/dist/localControl.d.ts.map +1 -1
- package/dist/localControl.js +165 -1
- package/dist/localControl.js.map +1 -1
- package/package.json +1 -1
|
@@ -116,6 +116,18 @@ exports.RUNPANE_CONTRACT = {
|
|
|
116
116
|
"runpane doctor"
|
|
117
117
|
]
|
|
118
118
|
},
|
|
119
|
+
{
|
|
120
|
+
"name": "agent-context",
|
|
121
|
+
"summary": "Print token-efficient Pane command context for coding agents.",
|
|
122
|
+
"usage": [
|
|
123
|
+
"runpane agent-context [--json]",
|
|
124
|
+
"runpane agent-context --command <command> [--json]"
|
|
125
|
+
],
|
|
126
|
+
"jsonSchemas": [
|
|
127
|
+
"agentContextBriefResult",
|
|
128
|
+
"agentContextCommandResult"
|
|
129
|
+
]
|
|
130
|
+
},
|
|
119
131
|
{
|
|
120
132
|
"name": "repos list",
|
|
121
133
|
"summary": "List repositories saved in the running Pane app.",
|
|
@@ -138,6 +150,16 @@ exports.RUNPANE_CONTRACT = {
|
|
|
138
150
|
"repoAddResult"
|
|
139
151
|
]
|
|
140
152
|
},
|
|
153
|
+
{
|
|
154
|
+
"name": "panes list",
|
|
155
|
+
"summary": "List Pane sessions in a saved repository.",
|
|
156
|
+
"usage": [
|
|
157
|
+
"runpane panes list [--repo <selector>] [--json]"
|
|
158
|
+
],
|
|
159
|
+
"jsonSchemas": [
|
|
160
|
+
"paneListResult"
|
|
161
|
+
]
|
|
162
|
+
},
|
|
141
163
|
{
|
|
142
164
|
"name": "panes create",
|
|
143
165
|
"summary": "Create one or more Pane sessions in a saved repository and open a terminal-backed tool tab.",
|
|
@@ -150,6 +172,38 @@ exports.RUNPANE_CONTRACT = {
|
|
|
150
172
|
"paneCreateRequest",
|
|
151
173
|
"paneCreateResult"
|
|
152
174
|
]
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"name": "panels list",
|
|
178
|
+
"summary": "List tool panels inside a Pane session.",
|
|
179
|
+
"usage": [
|
|
180
|
+
"runpane panels list --pane <pane-id> [--json]"
|
|
181
|
+
],
|
|
182
|
+
"jsonSchemas": [
|
|
183
|
+
"panelListResult"
|
|
184
|
+
]
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"name": "panels output",
|
|
188
|
+
"summary": "Read recent terminal output from a panel.",
|
|
189
|
+
"usage": [
|
|
190
|
+
"runpane panels output --panel <panel-id> [--limit <count>] [--json]"
|
|
191
|
+
],
|
|
192
|
+
"jsonSchemas": [
|
|
193
|
+
"panelOutputResult"
|
|
194
|
+
]
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
"name": "panels input",
|
|
198
|
+
"summary": "Send input bytes to a terminal panel.",
|
|
199
|
+
"usage": [
|
|
200
|
+
"runpane panels input --panel <panel-id> (--text <text>|--input-file <path|->) --yes [--json]"
|
|
201
|
+
],
|
|
202
|
+
"mutates": true,
|
|
203
|
+
"jsonSchemas": [
|
|
204
|
+
"panelInputRequest",
|
|
205
|
+
"panelInputResult"
|
|
206
|
+
]
|
|
153
207
|
}
|
|
154
208
|
],
|
|
155
209
|
"flags": {
|
|
@@ -252,6 +306,16 @@ exports.RUNPANE_CONTRACT = {
|
|
|
252
306
|
"value": "<selector>",
|
|
253
307
|
"description": "Repository selector: active, id, exact path, or saved repository name."
|
|
254
308
|
},
|
|
309
|
+
{
|
|
310
|
+
"name": "--pane",
|
|
311
|
+
"value": "<pane-id>",
|
|
312
|
+
"description": "Pane/session id to inspect."
|
|
313
|
+
},
|
|
314
|
+
{
|
|
315
|
+
"name": "--panel",
|
|
316
|
+
"value": "<panel-id>",
|
|
317
|
+
"description": "Tool panel id to inspect or control."
|
|
318
|
+
},
|
|
255
319
|
{
|
|
256
320
|
"name": "--path",
|
|
257
321
|
"value": "<path>",
|
|
@@ -309,6 +373,21 @@ exports.RUNPANE_CONTRACT = {
|
|
|
309
373
|
"name": "--timeout-ms",
|
|
310
374
|
"value": "<milliseconds>",
|
|
311
375
|
"description": "Maximum time to wait for each pane creation job."
|
|
376
|
+
},
|
|
377
|
+
{
|
|
378
|
+
"name": "--limit",
|
|
379
|
+
"value": "<count>",
|
|
380
|
+
"description": "Maximum number of output records to read."
|
|
381
|
+
},
|
|
382
|
+
{
|
|
383
|
+
"name": "--text",
|
|
384
|
+
"value": "<text>",
|
|
385
|
+
"description": "Text bytes to send to a terminal panel."
|
|
386
|
+
},
|
|
387
|
+
{
|
|
388
|
+
"name": "--input-file",
|
|
389
|
+
"value": "<path|->",
|
|
390
|
+
"description": "Read panel input from a file or stdin."
|
|
312
391
|
}
|
|
313
392
|
],
|
|
314
393
|
"localBoolean": [
|
|
@@ -328,9 +407,14 @@ exports.RUNPANE_CONTRACT = {
|
|
|
328
407
|
" runpane update [options]",
|
|
329
408
|
" runpane version",
|
|
330
409
|
" runpane doctor",
|
|
410
|
+
" runpane agent-context [--json]",
|
|
331
411
|
" runpane repos list [--json]",
|
|
332
412
|
" runpane repos add --path <path> [--name <name>]",
|
|
413
|
+
" runpane panes list [--repo <selector>] [--json]",
|
|
333
414
|
" runpane panes create --repo <selector> --name <name> --agent <codex|claude>",
|
|
415
|
+
" runpane panels list --pane <pane-id> [--json]",
|
|
416
|
+
" runpane panels output --panel <panel-id> [--limit <count>] [--json]",
|
|
417
|
+
" runpane panels input --panel <panel-id> --text <text> --yes",
|
|
334
418
|
" runpane help [command]",
|
|
335
419
|
"",
|
|
336
420
|
"Quick start:",
|
|
@@ -343,6 +427,7 @@ exports.RUNPANE_CONTRACT = {
|
|
|
343
427
|
" pnpm dlx runpane@latest",
|
|
344
428
|
" pipx run runpane",
|
|
345
429
|
"",
|
|
430
|
+
"Run \"runpane agent-context\" when an agent needs Pane command context.",
|
|
346
431
|
"Run \"runpane help panes create\" for pane orchestration options."
|
|
347
432
|
],
|
|
348
433
|
"install": [
|
|
@@ -435,6 +520,17 @@ exports.RUNPANE_CONTRACT = {
|
|
|
435
520
|
" --dry-run Validate and preview without adding the repo",
|
|
436
521
|
" --yes Skip confirmation for mutating commands"
|
|
437
522
|
],
|
|
523
|
+
"panes list": [
|
|
524
|
+
"Usage:",
|
|
525
|
+
" runpane panes list [--repo <selector>] [--json]",
|
|
526
|
+
"",
|
|
527
|
+
"Lists Pane sessions. Pass --repo to limit results to one saved repository.",
|
|
528
|
+
"",
|
|
529
|
+
"Options:",
|
|
530
|
+
" --repo <selector> active, id, exact path, or saved repository name",
|
|
531
|
+
" --pane-dir <path> Connect to a specific Pane data directory",
|
|
532
|
+
" --json Print machine-readable output"
|
|
533
|
+
],
|
|
438
534
|
"panes create": [
|
|
439
535
|
"Usage:",
|
|
440
536
|
" runpane panes create --repo <selector> --name <name> --agent <codex|claude> [options]",
|
|
@@ -459,6 +555,60 @@ exports.RUNPANE_CONTRACT = {
|
|
|
459
555
|
" --json Print machine-readable output",
|
|
460
556
|
" --dry-run Validate and preview without creating panes",
|
|
461
557
|
" --yes Skip confirmation for mutating commands"
|
|
558
|
+
],
|
|
559
|
+
"panels list": [
|
|
560
|
+
"Usage:",
|
|
561
|
+
" runpane panels list --pane <pane-id> [--json]",
|
|
562
|
+
"",
|
|
563
|
+
"Lists tool panels in a Pane session.",
|
|
564
|
+
"",
|
|
565
|
+
"Options:",
|
|
566
|
+
" --pane <pane-id> Pane/session id",
|
|
567
|
+
" --pane-dir <path> Connect to a specific Pane data directory",
|
|
568
|
+
" --json Print machine-readable output"
|
|
569
|
+
],
|
|
570
|
+
"panels output": [
|
|
571
|
+
"Usage:",
|
|
572
|
+
" runpane panels output --panel <panel-id> [--limit <count>] [--json]",
|
|
573
|
+
"",
|
|
574
|
+
"Reads recent terminal output records from a panel.",
|
|
575
|
+
"",
|
|
576
|
+
"Options:",
|
|
577
|
+
" --panel <panel-id> Tool panel id",
|
|
578
|
+
" --limit <count> Maximum output records to read",
|
|
579
|
+
" --pane-dir <path> Connect to a specific Pane data directory",
|
|
580
|
+
" --json Print machine-readable output"
|
|
581
|
+
],
|
|
582
|
+
"panels input": [
|
|
583
|
+
"Usage:",
|
|
584
|
+
" runpane panels input --panel <panel-id> (--text <text>|--input-file <path|->) --yes [--json]",
|
|
585
|
+
"",
|
|
586
|
+
"Sends exact input bytes to a terminal panel. Include a newline in the input when you mean Enter.",
|
|
587
|
+
"",
|
|
588
|
+
"Options:",
|
|
589
|
+
" --panel <panel-id> Terminal panel id",
|
|
590
|
+
" --text <text> Text bytes to send",
|
|
591
|
+
" --input-file <path|-> Read input from a file or stdin",
|
|
592
|
+
" --pane-dir <path> Connect to a specific Pane data directory",
|
|
593
|
+
" --json Print machine-readable output",
|
|
594
|
+
" --yes Skip confirmation for mutating commands"
|
|
595
|
+
],
|
|
596
|
+
"agent-context": [
|
|
597
|
+
"Usage:",
|
|
598
|
+
" runpane agent-context [--json]",
|
|
599
|
+
" runpane agent-context --command <command> [--json]",
|
|
600
|
+
"",
|
|
601
|
+
"Prints Pane command context for coding agents without requiring a running Pane app.",
|
|
602
|
+
"",
|
|
603
|
+
"Options:",
|
|
604
|
+
" --command <command> Print the full definition for one runpane command",
|
|
605
|
+
" --json Print machine-readable output",
|
|
606
|
+
"",
|
|
607
|
+
"Examples:",
|
|
608
|
+
" runpane agent-context",
|
|
609
|
+
" runpane agent-context --json",
|
|
610
|
+
" runpane agent-context --command \"panes create\"",
|
|
611
|
+
" runpane agent-context --command \"panes create\" --json"
|
|
462
612
|
]
|
|
463
613
|
},
|
|
464
614
|
"pip": {
|
|
@@ -470,9 +620,14 @@ exports.RUNPANE_CONTRACT = {
|
|
|
470
620
|
" runpane update [options]",
|
|
471
621
|
" runpane version",
|
|
472
622
|
" runpane doctor",
|
|
623
|
+
" runpane agent-context [--json]",
|
|
473
624
|
" runpane repos list [--json]",
|
|
474
625
|
" runpane repos add --path <path> [--name <name>]",
|
|
626
|
+
" runpane panes list [--repo <selector>] [--json]",
|
|
475
627
|
" runpane panes create --repo <selector> --name <name> --agent <codex|claude>",
|
|
628
|
+
" runpane panels list --pane <pane-id> [--json]",
|
|
629
|
+
" runpane panels output --panel <panel-id> [--limit <count>] [--json]",
|
|
630
|
+
" runpane panels input --panel <panel-id> --text <text> --yes",
|
|
476
631
|
" runpane help [command]",
|
|
477
632
|
"",
|
|
478
633
|
"Quick start:",
|
|
@@ -484,6 +639,7 @@ exports.RUNPANE_CONTRACT = {
|
|
|
484
639
|
" pipx run runpane install daemon --label \"My Server\"",
|
|
485
640
|
" uvx runpane@latest",
|
|
486
641
|
"",
|
|
642
|
+
"Run \"runpane agent-context\" when an agent needs Pane command context.",
|
|
487
643
|
"Run \"runpane help panes create\" for pane orchestration options."
|
|
488
644
|
],
|
|
489
645
|
"install": [
|
|
@@ -565,6 +721,17 @@ exports.RUNPANE_CONTRACT = {
|
|
|
565
721
|
" --dry-run",
|
|
566
722
|
" --yes"
|
|
567
723
|
],
|
|
724
|
+
"panes list": [
|
|
725
|
+
"Usage:",
|
|
726
|
+
" runpane panes list [--repo <selector>] [--json]",
|
|
727
|
+
"",
|
|
728
|
+
"Lists Pane sessions. Pass --repo to limit results to one saved repository.",
|
|
729
|
+
"",
|
|
730
|
+
"Options:",
|
|
731
|
+
" --repo <selector>",
|
|
732
|
+
" --pane-dir <path>",
|
|
733
|
+
" --json"
|
|
734
|
+
],
|
|
568
735
|
"panes create": [
|
|
569
736
|
"Usage:",
|
|
570
737
|
" runpane panes create --repo <selector> --name <name> --agent <codex|claude> [options]",
|
|
@@ -589,6 +756,60 @@ exports.RUNPANE_CONTRACT = {
|
|
|
589
756
|
" --json",
|
|
590
757
|
" --dry-run",
|
|
591
758
|
" --yes"
|
|
759
|
+
],
|
|
760
|
+
"panels list": [
|
|
761
|
+
"Usage:",
|
|
762
|
+
" runpane panels list --pane <pane-id> [--json]",
|
|
763
|
+
"",
|
|
764
|
+
"Lists tool panels in a Pane session.",
|
|
765
|
+
"",
|
|
766
|
+
"Options:",
|
|
767
|
+
" --pane <pane-id>",
|
|
768
|
+
" --pane-dir <path>",
|
|
769
|
+
" --json"
|
|
770
|
+
],
|
|
771
|
+
"panels output": [
|
|
772
|
+
"Usage:",
|
|
773
|
+
" runpane panels output --panel <panel-id> [--limit <count>] [--json]",
|
|
774
|
+
"",
|
|
775
|
+
"Reads recent terminal output records from a panel.",
|
|
776
|
+
"",
|
|
777
|
+
"Options:",
|
|
778
|
+
" --panel <panel-id>",
|
|
779
|
+
" --limit <count>",
|
|
780
|
+
" --pane-dir <path>",
|
|
781
|
+
" --json"
|
|
782
|
+
],
|
|
783
|
+
"panels input": [
|
|
784
|
+
"Usage:",
|
|
785
|
+
" runpane panels input --panel <panel-id> (--text <text>|--input-file <path|->) --yes [--json]",
|
|
786
|
+
"",
|
|
787
|
+
"Sends exact input bytes to a terminal panel. Include a newline in the input when you mean Enter.",
|
|
788
|
+
"",
|
|
789
|
+
"Options:",
|
|
790
|
+
" --panel <panel-id>",
|
|
791
|
+
" --text <text>",
|
|
792
|
+
" --input-file <path|->",
|
|
793
|
+
" --pane-dir <path>",
|
|
794
|
+
" --json",
|
|
795
|
+
" --yes"
|
|
796
|
+
],
|
|
797
|
+
"agent-context": [
|
|
798
|
+
"Usage:",
|
|
799
|
+
" runpane agent-context [--json]",
|
|
800
|
+
" runpane agent-context --command <command> [--json]",
|
|
801
|
+
"",
|
|
802
|
+
"Prints Pane command context for coding agents without requiring a running Pane app.",
|
|
803
|
+
"",
|
|
804
|
+
"Options:",
|
|
805
|
+
" --command <command>",
|
|
806
|
+
" --json",
|
|
807
|
+
"",
|
|
808
|
+
"Examples:",
|
|
809
|
+
" runpane agent-context",
|
|
810
|
+
" runpane agent-context --json",
|
|
811
|
+
" runpane agent-context --command \"panes create\"",
|
|
812
|
+
" runpane agent-context --command \"panes create\" --json"
|
|
592
813
|
]
|
|
593
814
|
}
|
|
594
815
|
},
|
|
@@ -654,10 +875,16 @@ exports.RUNPANE_CONTRACT = {
|
|
|
654
875
|
"runpane update",
|
|
655
876
|
"runpane version",
|
|
656
877
|
"runpane doctor",
|
|
878
|
+
"runpane agent-context",
|
|
879
|
+
"runpane agent-context --command \"panes create\" --json",
|
|
657
880
|
"runpane repos list --json",
|
|
658
881
|
"runpane repos add --path /path/to/repo --name Pane --yes --json",
|
|
882
|
+
"runpane panes list --repo active --json",
|
|
659
883
|
"runpane panes create --repo active --name issue-252 --agent codex --prompt \"Kick off the discussion skill for issue 252\" --yes",
|
|
660
884
|
"runpane panes create --from-json panes.json --yes --json",
|
|
885
|
+
"runpane panels list --pane <pane-id> --json",
|
|
886
|
+
"runpane panels output --panel <panel-id> --limit 200 --json",
|
|
887
|
+
"runpane panels input --panel <panel-id> --text \"Continue\\n\" --yes --json",
|
|
661
888
|
"runpane help",
|
|
662
889
|
"runpane <command> --help"
|
|
663
890
|
],
|
|
@@ -670,13 +897,20 @@ exports.RUNPANE_CONTRACT = {
|
|
|
670
897
|
"`runpane update` uses the same release resolution and installer path as `install client`.",
|
|
671
898
|
"`runpane version` prints the wrapper package version, the installed Pane version when detectable, and the latest GitHub release version when reachable.",
|
|
672
899
|
"`runpane doctor` checks platform support, release metadata reachability, download URL selection, installed Pane detection, and remote-daemon hints.",
|
|
900
|
+
"`runpane agent-context` prints a brief, token-efficient command schema for coding agents without connecting to the Pane daemon.",
|
|
901
|
+
"`runpane agent-context --command \"panes create\"` prints the detailed definition for one command. Add `--json` for machine-readable output.",
|
|
673
902
|
"`runpane repos list` connects to the running local Pane daemon and prints saved repository records.",
|
|
674
903
|
"`runpane repos add` registers an existing git repository with the running local Pane daemon. It does not create directories or initialize git repositories by default.",
|
|
904
|
+
"`runpane panes list` lists Pane sessions, optionally scoped to one saved repository.",
|
|
675
905
|
"`runpane panes create` connects to the running local Pane daemon, resolves the requested repository, creates Pane sessions, opens terminal-backed tool tabs, and optionally sends initial input to the started tool.",
|
|
676
|
-
"`runpane
|
|
906
|
+
"`runpane panels list` lists tool panels inside one Pane session.",
|
|
907
|
+
"`runpane panels output` reads recent terminal output records from one panel.",
|
|
908
|
+
"`runpane panels input` sends exact input bytes to one terminal panel. Include a newline in the input when the agent means Enter.",
|
|
909
|
+
"`runpane panes create --prompt` is an alias for `--initial-input`; request JSON and daemon payloads should use the canonical `initialInput` field.",
|
|
910
|
+
"When running from WSL while Pane is installed on Windows, the Linux wrapper may look for a missing `/tmp/pane-daemon.../daemon.sock`. In that case invoke the Windows wrapper through PowerShell, for example `powershell.exe -NoProfile -Command 'Set-Location $env:TEMP; runpane repos list --json'`."
|
|
677
911
|
],
|
|
678
912
|
"wrapperFlagNote": "The top-level `runpane --version` form prints the wrapper version. The install subcommand form `runpane install --version vX.Y.Z` selects a Pane release.",
|
|
679
|
-
"localControlFlagNote": "`runpane repos list`
|
|
913
|
+
"localControlFlagNote": "`runpane repos list`, `runpane panes list`, `runpane panes create`, and `runpane panels ...` commands use the local framed daemon socket/pipe for a running Pane app. `--pane-dir` points the wrapper at a non-default Pane data directory, such as `PANE_DIR=~/.pane_test` in development. `runpane agent-context` is local/offline and can be used before Pane is running. From WSL, if the user runs Windows Pane, call the Windows wrapper through `powershell.exe -NoProfile -Command 'Set-Location $env:TEMP; runpane ...'` so the command can reach the Windows named-pipe daemon.",
|
|
680
914
|
"daemonFlagNote": "Unknown daemon flags should be forwarded rather than dropped so newer Pane versions can extend `--remote-setup` without requiring an immediate wrapper release. Unknown flags for non-daemon commands should fail clearly.",
|
|
681
915
|
"downloadAttribution": [
|
|
682
916
|
"The npm package uses `source=npm` for all npm-registry consumers, including `npx`, `pnpm dlx`, `yarn dlx`, `bunx`, and global npm/pnpm installs.",
|
|
@@ -752,6 +986,15 @@ exports.RUNPANE_CONTRACT = {
|
|
|
752
986
|
"zip",
|
|
753
987
|
"--verbose"
|
|
754
988
|
],
|
|
989
|
+
[
|
|
990
|
+
"agent-context"
|
|
991
|
+
],
|
|
992
|
+
[
|
|
993
|
+
"agent-context",
|
|
994
|
+
"--command",
|
|
995
|
+
"panes create",
|
|
996
|
+
"--json"
|
|
997
|
+
],
|
|
755
998
|
[
|
|
756
999
|
"repos",
|
|
757
1000
|
"list",
|
|
@@ -772,6 +1015,13 @@ exports.RUNPANE_CONTRACT = {
|
|
|
772
1015
|
"--pane-dir",
|
|
773
1016
|
"/tmp/pane"
|
|
774
1017
|
],
|
|
1018
|
+
[
|
|
1019
|
+
"panes",
|
|
1020
|
+
"list",
|
|
1021
|
+
"--repo",
|
|
1022
|
+
"active",
|
|
1023
|
+
"--json"
|
|
1024
|
+
],
|
|
775
1025
|
[
|
|
776
1026
|
"panes",
|
|
777
1027
|
"create",
|
|
@@ -795,6 +1045,32 @@ exports.RUNPANE_CONTRACT = {
|
|
|
795
1045
|
"--yes",
|
|
796
1046
|
"--json"
|
|
797
1047
|
],
|
|
1048
|
+
[
|
|
1049
|
+
"panels",
|
|
1050
|
+
"list",
|
|
1051
|
+
"--pane",
|
|
1052
|
+
"session-1",
|
|
1053
|
+
"--json"
|
|
1054
|
+
],
|
|
1055
|
+
[
|
|
1056
|
+
"panels",
|
|
1057
|
+
"output",
|
|
1058
|
+
"--panel",
|
|
1059
|
+
"panel-1",
|
|
1060
|
+
"--limit",
|
|
1061
|
+
"200",
|
|
1062
|
+
"--json"
|
|
1063
|
+
],
|
|
1064
|
+
[
|
|
1065
|
+
"panels",
|
|
1066
|
+
"input",
|
|
1067
|
+
"--panel",
|
|
1068
|
+
"panel-1",
|
|
1069
|
+
"--text",
|
|
1070
|
+
"Continue\\n",
|
|
1071
|
+
"--yes",
|
|
1072
|
+
"--json"
|
|
1073
|
+
],
|
|
798
1074
|
[
|
|
799
1075
|
"--version"
|
|
800
1076
|
]
|
|
@@ -805,9 +1081,14 @@ exports.RUNPANE_CONTRACT = {
|
|
|
805
1081
|
"runpane update",
|
|
806
1082
|
"runpane version",
|
|
807
1083
|
"runpane doctor",
|
|
1084
|
+
"runpane agent-context",
|
|
808
1085
|
"runpane repos list",
|
|
809
1086
|
"runpane repos add",
|
|
810
|
-
"runpane panes
|
|
1087
|
+
"runpane panes list",
|
|
1088
|
+
"runpane panes create",
|
|
1089
|
+
"runpane panels list",
|
|
1090
|
+
"runpane panels output",
|
|
1091
|
+
"runpane panels input"
|
|
811
1092
|
],
|
|
812
1093
|
"npmHelpIncludes": [
|
|
813
1094
|
"pnpm dlx runpane@latest",
|
|
@@ -1192,7 +1473,995 @@ exports.RUNPANE_CONTRACT = {
|
|
|
1192
1473
|
}
|
|
1193
1474
|
},
|
|
1194
1475
|
"additionalProperties": false
|
|
1476
|
+
},
|
|
1477
|
+
"paneListResult": {
|
|
1478
|
+
"type": "object",
|
|
1479
|
+
"required": [
|
|
1480
|
+
"ok",
|
|
1481
|
+
"panes"
|
|
1482
|
+
],
|
|
1483
|
+
"properties": {
|
|
1484
|
+
"ok": {
|
|
1485
|
+
"const": true
|
|
1486
|
+
},
|
|
1487
|
+
"repo": {
|
|
1488
|
+
"$ref": "#/jsonSchemas/repoListResult/properties/repos/items"
|
|
1489
|
+
},
|
|
1490
|
+
"panes": {
|
|
1491
|
+
"type": "array",
|
|
1492
|
+
"items": {
|
|
1493
|
+
"type": "object",
|
|
1494
|
+
"required": [
|
|
1495
|
+
"id",
|
|
1496
|
+
"paneId",
|
|
1497
|
+
"name",
|
|
1498
|
+
"status",
|
|
1499
|
+
"worktreePath",
|
|
1500
|
+
"repoId",
|
|
1501
|
+
"panelCount"
|
|
1502
|
+
],
|
|
1503
|
+
"properties": {
|
|
1504
|
+
"id": {
|
|
1505
|
+
"type": "string"
|
|
1506
|
+
},
|
|
1507
|
+
"paneId": {
|
|
1508
|
+
"type": "string"
|
|
1509
|
+
},
|
|
1510
|
+
"name": {
|
|
1511
|
+
"type": "string"
|
|
1512
|
+
},
|
|
1513
|
+
"status": {
|
|
1514
|
+
"type": "string"
|
|
1515
|
+
},
|
|
1516
|
+
"worktreePath": {
|
|
1517
|
+
"type": "string"
|
|
1518
|
+
},
|
|
1519
|
+
"repoId": {
|
|
1520
|
+
"type": "number"
|
|
1521
|
+
},
|
|
1522
|
+
"repoName": {
|
|
1523
|
+
"type": "string"
|
|
1524
|
+
},
|
|
1525
|
+
"panelCount": {
|
|
1526
|
+
"type": "number"
|
|
1527
|
+
},
|
|
1528
|
+
"createdAt": {
|
|
1529
|
+
"type": "string"
|
|
1530
|
+
},
|
|
1531
|
+
"lastActivity": {
|
|
1532
|
+
"type": "string"
|
|
1533
|
+
},
|
|
1534
|
+
"archived": {
|
|
1535
|
+
"type": "boolean"
|
|
1536
|
+
}
|
|
1537
|
+
},
|
|
1538
|
+
"additionalProperties": false
|
|
1539
|
+
}
|
|
1540
|
+
}
|
|
1541
|
+
},
|
|
1542
|
+
"additionalProperties": false
|
|
1543
|
+
},
|
|
1544
|
+
"panelListResult": {
|
|
1545
|
+
"type": "object",
|
|
1546
|
+
"required": [
|
|
1547
|
+
"ok",
|
|
1548
|
+
"paneId",
|
|
1549
|
+
"panels"
|
|
1550
|
+
],
|
|
1551
|
+
"properties": {
|
|
1552
|
+
"ok": {
|
|
1553
|
+
"const": true
|
|
1554
|
+
},
|
|
1555
|
+
"paneId": {
|
|
1556
|
+
"type": "string"
|
|
1557
|
+
},
|
|
1558
|
+
"panels": {
|
|
1559
|
+
"type": "array",
|
|
1560
|
+
"items": {
|
|
1561
|
+
"type": "object",
|
|
1562
|
+
"required": [
|
|
1563
|
+
"id",
|
|
1564
|
+
"panelId",
|
|
1565
|
+
"paneId",
|
|
1566
|
+
"type",
|
|
1567
|
+
"title",
|
|
1568
|
+
"active"
|
|
1569
|
+
],
|
|
1570
|
+
"properties": {
|
|
1571
|
+
"id": {
|
|
1572
|
+
"type": "string"
|
|
1573
|
+
},
|
|
1574
|
+
"panelId": {
|
|
1575
|
+
"type": "string"
|
|
1576
|
+
},
|
|
1577
|
+
"paneId": {
|
|
1578
|
+
"type": "string"
|
|
1579
|
+
},
|
|
1580
|
+
"type": {
|
|
1581
|
+
"type": "string"
|
|
1582
|
+
},
|
|
1583
|
+
"title": {
|
|
1584
|
+
"type": "string"
|
|
1585
|
+
},
|
|
1586
|
+
"active": {
|
|
1587
|
+
"type": "boolean"
|
|
1588
|
+
},
|
|
1589
|
+
"initialized": {
|
|
1590
|
+
"type": "boolean"
|
|
1591
|
+
},
|
|
1592
|
+
"agentType": {
|
|
1593
|
+
"type": "string"
|
|
1594
|
+
},
|
|
1595
|
+
"isCliPanel": {
|
|
1596
|
+
"type": "boolean"
|
|
1597
|
+
},
|
|
1598
|
+
"position": {
|
|
1599
|
+
"type": "number"
|
|
1600
|
+
},
|
|
1601
|
+
"createdAt": {
|
|
1602
|
+
"type": "string"
|
|
1603
|
+
},
|
|
1604
|
+
"lastActiveAt": {
|
|
1605
|
+
"type": "string"
|
|
1606
|
+
}
|
|
1607
|
+
},
|
|
1608
|
+
"additionalProperties": false
|
|
1609
|
+
}
|
|
1610
|
+
}
|
|
1611
|
+
},
|
|
1612
|
+
"additionalProperties": false
|
|
1613
|
+
},
|
|
1614
|
+
"panelOutputResult": {
|
|
1615
|
+
"type": "object",
|
|
1616
|
+
"required": [
|
|
1617
|
+
"ok",
|
|
1618
|
+
"panelId",
|
|
1619
|
+
"outputs",
|
|
1620
|
+
"text"
|
|
1621
|
+
],
|
|
1622
|
+
"properties": {
|
|
1623
|
+
"ok": {
|
|
1624
|
+
"const": true
|
|
1625
|
+
},
|
|
1626
|
+
"panelId": {
|
|
1627
|
+
"type": "string"
|
|
1628
|
+
},
|
|
1629
|
+
"paneId": {
|
|
1630
|
+
"type": "string"
|
|
1631
|
+
},
|
|
1632
|
+
"limit": {
|
|
1633
|
+
"type": "number"
|
|
1634
|
+
},
|
|
1635
|
+
"outputs": {
|
|
1636
|
+
"type": "array",
|
|
1637
|
+
"items": {
|
|
1638
|
+
"type": "object",
|
|
1639
|
+
"required": [
|
|
1640
|
+
"type",
|
|
1641
|
+
"data",
|
|
1642
|
+
"timestamp"
|
|
1643
|
+
],
|
|
1644
|
+
"properties": {
|
|
1645
|
+
"type": {
|
|
1646
|
+
"type": "string"
|
|
1647
|
+
},
|
|
1648
|
+
"data": {},
|
|
1649
|
+
"timestamp": {
|
|
1650
|
+
"type": "string"
|
|
1651
|
+
}
|
|
1652
|
+
},
|
|
1653
|
+
"additionalProperties": false
|
|
1654
|
+
}
|
|
1655
|
+
},
|
|
1656
|
+
"text": {
|
|
1657
|
+
"type": "string"
|
|
1658
|
+
}
|
|
1659
|
+
},
|
|
1660
|
+
"additionalProperties": false
|
|
1661
|
+
},
|
|
1662
|
+
"panelInputRequest": {
|
|
1663
|
+
"type": "object",
|
|
1664
|
+
"required": [
|
|
1665
|
+
"panelId",
|
|
1666
|
+
"input"
|
|
1667
|
+
],
|
|
1668
|
+
"properties": {
|
|
1669
|
+
"panelId": {
|
|
1670
|
+
"type": "string"
|
|
1671
|
+
},
|
|
1672
|
+
"input": {
|
|
1673
|
+
"type": "string"
|
|
1674
|
+
}
|
|
1675
|
+
},
|
|
1676
|
+
"additionalProperties": false
|
|
1677
|
+
},
|
|
1678
|
+
"panelInputResult": {
|
|
1679
|
+
"type": "object",
|
|
1680
|
+
"required": [
|
|
1681
|
+
"ok",
|
|
1682
|
+
"panelId",
|
|
1683
|
+
"inputBytes",
|
|
1684
|
+
"sentAt"
|
|
1685
|
+
],
|
|
1686
|
+
"properties": {
|
|
1687
|
+
"ok": {
|
|
1688
|
+
"const": true
|
|
1689
|
+
},
|
|
1690
|
+
"panelId": {
|
|
1691
|
+
"type": "string"
|
|
1692
|
+
},
|
|
1693
|
+
"paneId": {
|
|
1694
|
+
"type": "string"
|
|
1695
|
+
},
|
|
1696
|
+
"inputBytes": {
|
|
1697
|
+
"type": "number"
|
|
1698
|
+
},
|
|
1699
|
+
"sentAt": {
|
|
1700
|
+
"type": "string"
|
|
1701
|
+
}
|
|
1702
|
+
},
|
|
1703
|
+
"additionalProperties": false
|
|
1704
|
+
},
|
|
1705
|
+
"agentContextBriefResult": {
|
|
1706
|
+
"type": "object",
|
|
1707
|
+
"required": [
|
|
1708
|
+
"ok",
|
|
1709
|
+
"mode",
|
|
1710
|
+
"source",
|
|
1711
|
+
"summary",
|
|
1712
|
+
"rules",
|
|
1713
|
+
"tools",
|
|
1714
|
+
"detailCommand"
|
|
1715
|
+
],
|
|
1716
|
+
"properties": {
|
|
1717
|
+
"ok": {
|
|
1718
|
+
"const": true
|
|
1719
|
+
},
|
|
1720
|
+
"mode": {
|
|
1721
|
+
"const": "brief"
|
|
1722
|
+
},
|
|
1723
|
+
"source": {
|
|
1724
|
+
"const": "runpane-contract"
|
|
1725
|
+
},
|
|
1726
|
+
"summary": {
|
|
1727
|
+
"type": "string"
|
|
1728
|
+
},
|
|
1729
|
+
"rules": {
|
|
1730
|
+
"type": "array",
|
|
1731
|
+
"items": {
|
|
1732
|
+
"type": "string"
|
|
1733
|
+
}
|
|
1734
|
+
},
|
|
1735
|
+
"tools": {
|
|
1736
|
+
"type": "array",
|
|
1737
|
+
"items": {
|
|
1738
|
+
"type": "object",
|
|
1739
|
+
"required": [
|
|
1740
|
+
"name",
|
|
1741
|
+
"summary",
|
|
1742
|
+
"arguments"
|
|
1743
|
+
],
|
|
1744
|
+
"properties": {
|
|
1745
|
+
"name": {
|
|
1746
|
+
"type": "string"
|
|
1747
|
+
},
|
|
1748
|
+
"summary": {
|
|
1749
|
+
"type": "string"
|
|
1750
|
+
},
|
|
1751
|
+
"arguments": {
|
|
1752
|
+
"type": "array",
|
|
1753
|
+
"items": {
|
|
1754
|
+
"type": "string"
|
|
1755
|
+
}
|
|
1756
|
+
}
|
|
1757
|
+
},
|
|
1758
|
+
"additionalProperties": false
|
|
1759
|
+
}
|
|
1760
|
+
},
|
|
1761
|
+
"detailCommand": {
|
|
1762
|
+
"type": "string"
|
|
1763
|
+
}
|
|
1764
|
+
},
|
|
1765
|
+
"additionalProperties": false
|
|
1766
|
+
},
|
|
1767
|
+
"agentContextCommandResult": {
|
|
1768
|
+
"type": "object",
|
|
1769
|
+
"required": [
|
|
1770
|
+
"ok",
|
|
1771
|
+
"mode",
|
|
1772
|
+
"source",
|
|
1773
|
+
"command"
|
|
1774
|
+
],
|
|
1775
|
+
"properties": {
|
|
1776
|
+
"ok": {
|
|
1777
|
+
"const": true
|
|
1778
|
+
},
|
|
1779
|
+
"mode": {
|
|
1780
|
+
"const": "command"
|
|
1781
|
+
},
|
|
1782
|
+
"source": {
|
|
1783
|
+
"const": "runpane-contract"
|
|
1784
|
+
},
|
|
1785
|
+
"command": {
|
|
1786
|
+
"type": "object",
|
|
1787
|
+
"required": [
|
|
1788
|
+
"name",
|
|
1789
|
+
"summary",
|
|
1790
|
+
"details",
|
|
1791
|
+
"arguments",
|
|
1792
|
+
"examples"
|
|
1793
|
+
],
|
|
1794
|
+
"properties": {
|
|
1795
|
+
"name": {
|
|
1796
|
+
"type": "string"
|
|
1797
|
+
},
|
|
1798
|
+
"summary": {
|
|
1799
|
+
"type": "string"
|
|
1800
|
+
},
|
|
1801
|
+
"details": {
|
|
1802
|
+
"type": "string"
|
|
1803
|
+
},
|
|
1804
|
+
"requiresPaneDaemon": {
|
|
1805
|
+
"type": "boolean"
|
|
1806
|
+
},
|
|
1807
|
+
"mutates": {
|
|
1808
|
+
"type": "boolean"
|
|
1809
|
+
},
|
|
1810
|
+
"arguments": {
|
|
1811
|
+
"type": "array",
|
|
1812
|
+
"items": {
|
|
1813
|
+
"type": "object"
|
|
1814
|
+
}
|
|
1815
|
+
},
|
|
1816
|
+
"examples": {
|
|
1817
|
+
"type": "array",
|
|
1818
|
+
"items": {
|
|
1819
|
+
"type": "string"
|
|
1820
|
+
}
|
|
1821
|
+
},
|
|
1822
|
+
"jsonSchemas": {
|
|
1823
|
+
"type": "array",
|
|
1824
|
+
"items": {
|
|
1825
|
+
"type": "string"
|
|
1826
|
+
}
|
|
1827
|
+
},
|
|
1828
|
+
"notes": {
|
|
1829
|
+
"type": "array",
|
|
1830
|
+
"items": {
|
|
1831
|
+
"type": "string"
|
|
1832
|
+
}
|
|
1833
|
+
}
|
|
1834
|
+
},
|
|
1835
|
+
"additionalProperties": false
|
|
1836
|
+
}
|
|
1837
|
+
},
|
|
1838
|
+
"additionalProperties": false
|
|
1195
1839
|
}
|
|
1840
|
+
},
|
|
1841
|
+
"agentContext": {
|
|
1842
|
+
"brief": {
|
|
1843
|
+
"title": "Pane agent context",
|
|
1844
|
+
"summary": "Pane lets a developer manage repositories and user-visible panes. Agents can use runpane to list/add Pane repositories and create panes with terminal-backed tools.",
|
|
1845
|
+
"rules": [
|
|
1846
|
+
"Start with `runpane repos list --json` to find the saved repository when unsure.",
|
|
1847
|
+
"If WSL cannot find `/tmp/pane-daemon.../daemon.sock`, the user may be running Windows Pane; try `powershell.exe -NoProfile -Command 'Set-Location $env:TEMP; runpane repos list --json'`.",
|
|
1848
|
+
"If the repository exists on disk but is not saved in Pane, use `runpane repos add --path <repo> --yes --json` before creating panes.",
|
|
1849
|
+
"Use `runpane panes create` to create a Pane session and open a built-in agent or custom terminal command.",
|
|
1850
|
+
"Use `runpane panels list`, `runpane panels output`, and `runpane panels input` when you need to inspect or drive an existing Pane terminal.",
|
|
1851
|
+
"Use `runpane agent-context --command <command>` for detailed command definitions only when needed."
|
|
1852
|
+
],
|
|
1853
|
+
"detailCommand": "runpane agent-context --command <command> [--json]",
|
|
1854
|
+
"tools": [
|
|
1855
|
+
{
|
|
1856
|
+
"name": "agent-context",
|
|
1857
|
+
"summary": "Print token-efficient Pane command context for coding agents.",
|
|
1858
|
+
"arguments": [
|
|
1859
|
+
"--command <command>",
|
|
1860
|
+
"--json"
|
|
1861
|
+
]
|
|
1862
|
+
},
|
|
1863
|
+
{
|
|
1864
|
+
"name": "repos list",
|
|
1865
|
+
"summary": "List repositories saved in the running Pane app.",
|
|
1866
|
+
"arguments": [
|
|
1867
|
+
"--json",
|
|
1868
|
+
"--pane-dir <path>"
|
|
1869
|
+
]
|
|
1870
|
+
},
|
|
1871
|
+
{
|
|
1872
|
+
"name": "repos add",
|
|
1873
|
+
"summary": "Register an existing git repository with the running Pane app.",
|
|
1874
|
+
"arguments": [
|
|
1875
|
+
"--path <path>",
|
|
1876
|
+
"--name <name>",
|
|
1877
|
+
"--yes",
|
|
1878
|
+
"--json",
|
|
1879
|
+
"--dry-run",
|
|
1880
|
+
"--pane-dir <path>"
|
|
1881
|
+
]
|
|
1882
|
+
},
|
|
1883
|
+
{
|
|
1884
|
+
"name": "panes list",
|
|
1885
|
+
"summary": "List Pane sessions, optionally scoped to a saved repository.",
|
|
1886
|
+
"arguments": [
|
|
1887
|
+
"--repo <selector>",
|
|
1888
|
+
"--json",
|
|
1889
|
+
"--pane-dir <path>"
|
|
1890
|
+
]
|
|
1891
|
+
},
|
|
1892
|
+
{
|
|
1893
|
+
"name": "panes create",
|
|
1894
|
+
"summary": "Create one or more Pane sessions in a saved repository and open a terminal-backed tool tab.",
|
|
1895
|
+
"arguments": [
|
|
1896
|
+
"--repo <selector>",
|
|
1897
|
+
"--name <name>",
|
|
1898
|
+
"--agent <codex|claude>",
|
|
1899
|
+
"--tool-command <command>",
|
|
1900
|
+
"--prompt <text>",
|
|
1901
|
+
"--from-json <path|->",
|
|
1902
|
+
"--yes",
|
|
1903
|
+
"--json"
|
|
1904
|
+
]
|
|
1905
|
+
},
|
|
1906
|
+
{
|
|
1907
|
+
"name": "panels list",
|
|
1908
|
+
"summary": "List tool panels inside a Pane session.",
|
|
1909
|
+
"arguments": [
|
|
1910
|
+
"--pane <pane-id>",
|
|
1911
|
+
"--json",
|
|
1912
|
+
"--pane-dir <path>"
|
|
1913
|
+
]
|
|
1914
|
+
},
|
|
1915
|
+
{
|
|
1916
|
+
"name": "panels output",
|
|
1917
|
+
"summary": "Read recent terminal output from a panel.",
|
|
1918
|
+
"arguments": [
|
|
1919
|
+
"--panel <panel-id>",
|
|
1920
|
+
"--limit <count>",
|
|
1921
|
+
"--json",
|
|
1922
|
+
"--pane-dir <path>"
|
|
1923
|
+
]
|
|
1924
|
+
},
|
|
1925
|
+
{
|
|
1926
|
+
"name": "panels input",
|
|
1927
|
+
"summary": "Send input bytes to a terminal panel.",
|
|
1928
|
+
"arguments": [
|
|
1929
|
+
"--panel <panel-id>",
|
|
1930
|
+
"--text <text>",
|
|
1931
|
+
"--input-file <path|->",
|
|
1932
|
+
"--yes",
|
|
1933
|
+
"--json",
|
|
1934
|
+
"--pane-dir <path>"
|
|
1935
|
+
]
|
|
1936
|
+
}
|
|
1937
|
+
]
|
|
1938
|
+
},
|
|
1939
|
+
"commands": {
|
|
1940
|
+
"help": {
|
|
1941
|
+
"name": "help",
|
|
1942
|
+
"summary": "Show help for runpane or a specific command.",
|
|
1943
|
+
"details": "Use this when you need human-readable usage text for a command.",
|
|
1944
|
+
"requiresPaneDaemon": false,
|
|
1945
|
+
"mutates": false,
|
|
1946
|
+
"arguments": [
|
|
1947
|
+
{
|
|
1948
|
+
"name": "command",
|
|
1949
|
+
"value": "<command>",
|
|
1950
|
+
"required": false,
|
|
1951
|
+
"description": "Optional command topic such as \"panes create\"."
|
|
1952
|
+
}
|
|
1953
|
+
],
|
|
1954
|
+
"examples": [
|
|
1955
|
+
"runpane help",
|
|
1956
|
+
"runpane help panes create"
|
|
1957
|
+
],
|
|
1958
|
+
"notes": [
|
|
1959
|
+
"Help text is generated from the runpane contract."
|
|
1960
|
+
]
|
|
1961
|
+
},
|
|
1962
|
+
"setup": {
|
|
1963
|
+
"name": "setup",
|
|
1964
|
+
"summary": "Open the guided setup wizard for install, remote host setup, update, and diagnostics.",
|
|
1965
|
+
"details": "Use this for a human-driven Pane setup flow, not for unattended agent orchestration.",
|
|
1966
|
+
"requiresPaneDaemon": false,
|
|
1967
|
+
"mutates": false,
|
|
1968
|
+
"arguments": [],
|
|
1969
|
+
"examples": [
|
|
1970
|
+
"runpane setup"
|
|
1971
|
+
],
|
|
1972
|
+
"notes": [
|
|
1973
|
+
"In non-interactive shells, setup prints help and exits successfully."
|
|
1974
|
+
]
|
|
1975
|
+
},
|
|
1976
|
+
"install": {
|
|
1977
|
+
"name": "install",
|
|
1978
|
+
"summary": "Install Pane on this machine or configure this machine as a remote daemon host.",
|
|
1979
|
+
"details": "Installs or launches Pane release artifacts at command runtime. `install daemon` forwards remote setup flags to Pane.",
|
|
1980
|
+
"requiresPaneDaemon": false,
|
|
1981
|
+
"mutates": true,
|
|
1982
|
+
"arguments": [
|
|
1983
|
+
{
|
|
1984
|
+
"name": "target",
|
|
1985
|
+
"value": "<client|daemon>",
|
|
1986
|
+
"required": false,
|
|
1987
|
+
"description": "Install the desktop client or configure a remote daemon host."
|
|
1988
|
+
},
|
|
1989
|
+
{
|
|
1990
|
+
"name": "--version",
|
|
1991
|
+
"value": "<latest|vX.Y.Z>",
|
|
1992
|
+
"required": false,
|
|
1993
|
+
"description": "Pane release to install."
|
|
1994
|
+
},
|
|
1995
|
+
{
|
|
1996
|
+
"name": "--format",
|
|
1997
|
+
"value": "<auto|appimage|deb|dmg|zip|exe>",
|
|
1998
|
+
"required": false,
|
|
1999
|
+
"description": "Release artifact format."
|
|
2000
|
+
},
|
|
2001
|
+
{
|
|
2002
|
+
"name": "--yes",
|
|
2003
|
+
"required": false,
|
|
2004
|
+
"description": "Skip interactive prompts where possible."
|
|
2005
|
+
}
|
|
2006
|
+
],
|
|
2007
|
+
"examples": [
|
|
2008
|
+
"runpane install client",
|
|
2009
|
+
"runpane install daemon --label \"My Server\""
|
|
2010
|
+
],
|
|
2011
|
+
"notes": [
|
|
2012
|
+
"Package install itself is inert; work begins only when runpane is executed."
|
|
2013
|
+
]
|
|
2014
|
+
},
|
|
2015
|
+
"update": {
|
|
2016
|
+
"name": "update",
|
|
2017
|
+
"summary": "Update the Pane desktop app using the same artifact path as install client.",
|
|
2018
|
+
"details": "Resolves and installs the selected Pane client release.",
|
|
2019
|
+
"requiresPaneDaemon": false,
|
|
2020
|
+
"mutates": true,
|
|
2021
|
+
"arguments": [
|
|
2022
|
+
{
|
|
2023
|
+
"name": "--version",
|
|
2024
|
+
"value": "<latest|vX.Y.Z>",
|
|
2025
|
+
"required": false,
|
|
2026
|
+
"description": "Pane release to update to."
|
|
2027
|
+
},
|
|
2028
|
+
{
|
|
2029
|
+
"name": "--format",
|
|
2030
|
+
"value": "<auto|appimage|deb|dmg|zip|exe>",
|
|
2031
|
+
"required": false,
|
|
2032
|
+
"description": "Release artifact format."
|
|
2033
|
+
},
|
|
2034
|
+
{
|
|
2035
|
+
"name": "--dry-run",
|
|
2036
|
+
"required": false,
|
|
2037
|
+
"description": "Print the update plan without downloading."
|
|
2038
|
+
}
|
|
2039
|
+
],
|
|
2040
|
+
"examples": [
|
|
2041
|
+
"runpane update",
|
|
2042
|
+
"runpane update --version latest"
|
|
2043
|
+
],
|
|
2044
|
+
"notes": [
|
|
2045
|
+
"Equivalent artifact selection to `runpane install client`."
|
|
2046
|
+
]
|
|
2047
|
+
},
|
|
2048
|
+
"version": {
|
|
2049
|
+
"name": "version",
|
|
2050
|
+
"summary": "Print the runpane wrapper version and installed Pane version when detectable.",
|
|
2051
|
+
"details": "Use this for diagnostics or to confirm which wrapper is available.",
|
|
2052
|
+
"requiresPaneDaemon": false,
|
|
2053
|
+
"mutates": false,
|
|
2054
|
+
"arguments": [
|
|
2055
|
+
{
|
|
2056
|
+
"name": "--pane-path",
|
|
2057
|
+
"value": "<path>",
|
|
2058
|
+
"required": false,
|
|
2059
|
+
"description": "Inspect a specific Pane executable."
|
|
2060
|
+
}
|
|
2061
|
+
],
|
|
2062
|
+
"examples": [
|
|
2063
|
+
"runpane version",
|
|
2064
|
+
"runpane --version"
|
|
2065
|
+
],
|
|
2066
|
+
"notes": []
|
|
2067
|
+
},
|
|
2068
|
+
"doctor": {
|
|
2069
|
+
"name": "doctor",
|
|
2070
|
+
"summary": "Run platform, release, installed Pane, and remote setup diagnostics.",
|
|
2071
|
+
"details": "Use this when runpane install/update behavior needs environment diagnostics.",
|
|
2072
|
+
"requiresPaneDaemon": false,
|
|
2073
|
+
"mutates": false,
|
|
2074
|
+
"arguments": [
|
|
2075
|
+
{
|
|
2076
|
+
"name": "--pane-path",
|
|
2077
|
+
"value": "<path>",
|
|
2078
|
+
"required": false,
|
|
2079
|
+
"description": "Use an existing Pane executable for diagnostics."
|
|
2080
|
+
},
|
|
2081
|
+
{
|
|
2082
|
+
"name": "--verbose",
|
|
2083
|
+
"required": false,
|
|
2084
|
+
"description": "Print extra diagnostics."
|
|
2085
|
+
}
|
|
2086
|
+
],
|
|
2087
|
+
"examples": [
|
|
2088
|
+
"runpane doctor",
|
|
2089
|
+
"runpane doctor --verbose"
|
|
2090
|
+
],
|
|
2091
|
+
"notes": []
|
|
2092
|
+
},
|
|
2093
|
+
"agent-context": {
|
|
2094
|
+
"name": "agent-context",
|
|
2095
|
+
"summary": "Print token-efficient Pane command context for coding agents.",
|
|
2096
|
+
"details": "Use this first when an agent needs to discover Pane primitives. It is local/offline and does not require a running Pane app.",
|
|
2097
|
+
"requiresPaneDaemon": false,
|
|
2098
|
+
"mutates": false,
|
|
2099
|
+
"arguments": [
|
|
2100
|
+
{
|
|
2101
|
+
"name": "--command",
|
|
2102
|
+
"value": "<command>",
|
|
2103
|
+
"required": false,
|
|
2104
|
+
"description": "Print the detailed definition for one command, for example \"panes create\"."
|
|
2105
|
+
},
|
|
2106
|
+
{
|
|
2107
|
+
"name": "--json",
|
|
2108
|
+
"required": false,
|
|
2109
|
+
"description": "Print machine-readable output."
|
|
2110
|
+
}
|
|
2111
|
+
],
|
|
2112
|
+
"examples": [
|
|
2113
|
+
"runpane agent-context",
|
|
2114
|
+
"runpane agent-context --command \"panes create\" --json"
|
|
2115
|
+
],
|
|
2116
|
+
"jsonSchemas": [
|
|
2117
|
+
"agentContextBriefResult",
|
|
2118
|
+
"agentContextCommandResult"
|
|
2119
|
+
],
|
|
2120
|
+
"notes": [
|
|
2121
|
+
"Default output is brief so AGENTS.md can point here without bloating context."
|
|
2122
|
+
]
|
|
2123
|
+
},
|
|
2124
|
+
"repos list": {
|
|
2125
|
+
"name": "repos list",
|
|
2126
|
+
"summary": "List repositories saved in the running Pane app.",
|
|
2127
|
+
"details": "Use this to find the right Pane-managed repository before creating panes. If the repo is missing, use `repos add` first.",
|
|
2128
|
+
"requiresPaneDaemon": true,
|
|
2129
|
+
"mutates": false,
|
|
2130
|
+
"arguments": [
|
|
2131
|
+
{
|
|
2132
|
+
"name": "--json",
|
|
2133
|
+
"required": false,
|
|
2134
|
+
"description": "Print machine-readable repository records."
|
|
2135
|
+
},
|
|
2136
|
+
{
|
|
2137
|
+
"name": "--pane-dir",
|
|
2138
|
+
"value": "<path>",
|
|
2139
|
+
"required": false,
|
|
2140
|
+
"description": "Connect to a specific Pane data directory."
|
|
2141
|
+
}
|
|
2142
|
+
],
|
|
2143
|
+
"examples": [
|
|
2144
|
+
"runpane repos list --json"
|
|
2145
|
+
],
|
|
2146
|
+
"jsonSchemas": [
|
|
2147
|
+
"repoListResult"
|
|
2148
|
+
],
|
|
2149
|
+
"notes": [
|
|
2150
|
+
"Requires a running Pane app or daemon for the selected Pane data directory.",
|
|
2151
|
+
"If this fails from WSL with a missing `/tmp/pane-daemon.../daemon.sock`, the user may be running Windows Pane. Retry via `powershell.exe -NoProfile -Command 'Set-Location $env:TEMP; runpane repos list --json'`."
|
|
2152
|
+
]
|
|
2153
|
+
},
|
|
2154
|
+
"repos add": {
|
|
2155
|
+
"name": "repos add",
|
|
2156
|
+
"summary": "Register an existing git repository with the running Pane app.",
|
|
2157
|
+
"details": "Use this when the repository exists on disk but is not saved in Pane yet. It validates the path as a git repository.",
|
|
2158
|
+
"requiresPaneDaemon": true,
|
|
2159
|
+
"mutates": true,
|
|
2160
|
+
"arguments": [
|
|
2161
|
+
{
|
|
2162
|
+
"name": "--path",
|
|
2163
|
+
"value": "<path>",
|
|
2164
|
+
"required": true,
|
|
2165
|
+
"description": "Existing git repository path to register with Pane."
|
|
2166
|
+
},
|
|
2167
|
+
{
|
|
2168
|
+
"name": "--name",
|
|
2169
|
+
"value": "<name>",
|
|
2170
|
+
"required": false,
|
|
2171
|
+
"description": "Saved repository name; defaults to the directory name."
|
|
2172
|
+
},
|
|
2173
|
+
{
|
|
2174
|
+
"name": "--yes",
|
|
2175
|
+
"required": false,
|
|
2176
|
+
"description": "Skip confirmation for mutating commands."
|
|
2177
|
+
},
|
|
2178
|
+
{
|
|
2179
|
+
"name": "--json",
|
|
2180
|
+
"required": false,
|
|
2181
|
+
"description": "Print machine-readable output."
|
|
2182
|
+
},
|
|
2183
|
+
{
|
|
2184
|
+
"name": "--dry-run",
|
|
2185
|
+
"required": false,
|
|
2186
|
+
"description": "Validate and preview without adding the repo."
|
|
2187
|
+
},
|
|
2188
|
+
{
|
|
2189
|
+
"name": "--pane-dir",
|
|
2190
|
+
"value": "<path>",
|
|
2191
|
+
"required": false,
|
|
2192
|
+
"description": "Connect to a specific Pane data directory."
|
|
2193
|
+
}
|
|
2194
|
+
],
|
|
2195
|
+
"examples": [
|
|
2196
|
+
"runpane repos add --path /path/to/repo --yes --json"
|
|
2197
|
+
],
|
|
2198
|
+
"jsonSchemas": [
|
|
2199
|
+
"repoAddRequest",
|
|
2200
|
+
"repoAddResult"
|
|
2201
|
+
],
|
|
2202
|
+
"notes": [
|
|
2203
|
+
"It does not create directories or initialize git repositories by default.",
|
|
2204
|
+
"For a Windows Pane app managing WSL repositories, prefer a saved WSL repo from `repos list` when possible. Adding a brand-new WSL repo from Windows may require WSL-aware path handling."
|
|
2205
|
+
]
|
|
2206
|
+
},
|
|
2207
|
+
"panes list": {
|
|
2208
|
+
"name": "panes list",
|
|
2209
|
+
"summary": "List Pane sessions, optionally scoped to a saved repository.",
|
|
2210
|
+
"details": "Use this after selecting a repository to find existing Pane sessions and their ids before inspecting panels.",
|
|
2211
|
+
"requiresPaneDaemon": true,
|
|
2212
|
+
"mutates": false,
|
|
2213
|
+
"arguments": [
|
|
2214
|
+
{
|
|
2215
|
+
"name": "--repo",
|
|
2216
|
+
"value": "<selector>",
|
|
2217
|
+
"required": false,
|
|
2218
|
+
"description": "Optional repository selector: active, id, exact path, or saved repository name."
|
|
2219
|
+
},
|
|
2220
|
+
{
|
|
2221
|
+
"name": "--json",
|
|
2222
|
+
"required": false,
|
|
2223
|
+
"description": "Print machine-readable output."
|
|
2224
|
+
},
|
|
2225
|
+
{
|
|
2226
|
+
"name": "--pane-dir",
|
|
2227
|
+
"value": "<path>",
|
|
2228
|
+
"required": false,
|
|
2229
|
+
"description": "Connect to a specific Pane data directory."
|
|
2230
|
+
}
|
|
2231
|
+
],
|
|
2232
|
+
"examples": [
|
|
2233
|
+
"runpane panes list --repo active --json"
|
|
2234
|
+
],
|
|
2235
|
+
"jsonSchemas": [
|
|
2236
|
+
"paneListResult"
|
|
2237
|
+
],
|
|
2238
|
+
"notes": [
|
|
2239
|
+
"Without --repo, this lists sessions across saved Pane repositories."
|
|
2240
|
+
]
|
|
2241
|
+
},
|
|
2242
|
+
"panes create": {
|
|
2243
|
+
"name": "panes create",
|
|
2244
|
+
"summary": "Create one or more Pane sessions in a saved repository and open a terminal-backed tool tab.",
|
|
2245
|
+
"details": "Use this to set up user-visible panes for work. Select a saved repository, choose a built-in agent or custom terminal command, and optionally send initial input after the tool starts.",
|
|
2246
|
+
"requiresPaneDaemon": true,
|
|
2247
|
+
"mutates": true,
|
|
2248
|
+
"arguments": [
|
|
2249
|
+
{
|
|
2250
|
+
"name": "--repo",
|
|
2251
|
+
"value": "<selector>",
|
|
2252
|
+
"required": true,
|
|
2253
|
+
"description": "Repository selector: active, id, exact path, or saved repository name."
|
|
2254
|
+
},
|
|
2255
|
+
{
|
|
2256
|
+
"name": "--name",
|
|
2257
|
+
"value": "<name>",
|
|
2258
|
+
"required": true,
|
|
2259
|
+
"description": "Pane/session name."
|
|
2260
|
+
},
|
|
2261
|
+
{
|
|
2262
|
+
"name": "--agent",
|
|
2263
|
+
"value": "<codex|claude>",
|
|
2264
|
+
"required": false,
|
|
2265
|
+
"description": "Built-in agent terminal template to open."
|
|
2266
|
+
},
|
|
2267
|
+
{
|
|
2268
|
+
"name": "--tool-command",
|
|
2269
|
+
"value": "<command>",
|
|
2270
|
+
"required": false,
|
|
2271
|
+
"description": "Custom terminal command to run instead of a built-in agent."
|
|
2272
|
+
},
|
|
2273
|
+
{
|
|
2274
|
+
"name": "--prompt",
|
|
2275
|
+
"value": "<text>",
|
|
2276
|
+
"required": false,
|
|
2277
|
+
"description": "Alias for --initial-input; sends text after the command is ready."
|
|
2278
|
+
},
|
|
2279
|
+
{
|
|
2280
|
+
"name": "--initial-input-file",
|
|
2281
|
+
"value": "<path|->",
|
|
2282
|
+
"required": false,
|
|
2283
|
+
"description": "Read initial input from a file or stdin."
|
|
2284
|
+
},
|
|
2285
|
+
{
|
|
2286
|
+
"name": "--from-json",
|
|
2287
|
+
"value": "<path|->",
|
|
2288
|
+
"required": false,
|
|
2289
|
+
"description": "Read a full panes.create request JSON payload."
|
|
2290
|
+
},
|
|
2291
|
+
{
|
|
2292
|
+
"name": "--yes",
|
|
2293
|
+
"required": false,
|
|
2294
|
+
"description": "Skip confirmation for mutating commands."
|
|
2295
|
+
},
|
|
2296
|
+
{
|
|
2297
|
+
"name": "--json",
|
|
2298
|
+
"required": false,
|
|
2299
|
+
"description": "Print machine-readable output."
|
|
2300
|
+
}
|
|
2301
|
+
],
|
|
2302
|
+
"examples": [
|
|
2303
|
+
"runpane panes create --repo active --name issue-257 --agent codex --prompt \"Plan this issue\" --yes",
|
|
2304
|
+
"runpane panes create --from-json panes.json --yes --json"
|
|
2305
|
+
],
|
|
2306
|
+
"jsonSchemas": [
|
|
2307
|
+
"paneCreateRequest",
|
|
2308
|
+
"paneCreateResult"
|
|
2309
|
+
],
|
|
2310
|
+
"notes": [
|
|
2311
|
+
"At least one of --agent or --tool-command is required unless --from-json is used.",
|
|
2312
|
+
"The built-in agent templates come from the runpane contract; custom terminal commands can pass agent-specific flags when requested by the user.",
|
|
2313
|
+
"From WSL with Windows Pane, invoke through PowerShell and select the saved WSL repo by name or id, for example `powershell.exe -NoProfile -Command 'Set-Location $env:TEMP; runpane panes create --repo \"WSL Pane\" --name issue-123 --agent codex --prompt \"Plan this issue\" --yes --json'`."
|
|
2314
|
+
]
|
|
2315
|
+
},
|
|
2316
|
+
"panels list": {
|
|
2317
|
+
"name": "panels list",
|
|
2318
|
+
"summary": "List tool panels inside a Pane session.",
|
|
2319
|
+
"details": "Use this to find the terminal panel id to inspect or control after creating or selecting a Pane session.",
|
|
2320
|
+
"requiresPaneDaemon": true,
|
|
2321
|
+
"mutates": false,
|
|
2322
|
+
"arguments": [
|
|
2323
|
+
{
|
|
2324
|
+
"name": "--pane",
|
|
2325
|
+
"value": "<pane-id>",
|
|
2326
|
+
"required": true,
|
|
2327
|
+
"description": "Pane/session id."
|
|
2328
|
+
},
|
|
2329
|
+
{
|
|
2330
|
+
"name": "--json",
|
|
2331
|
+
"required": false,
|
|
2332
|
+
"description": "Print machine-readable output."
|
|
2333
|
+
},
|
|
2334
|
+
{
|
|
2335
|
+
"name": "--pane-dir",
|
|
2336
|
+
"value": "<path>",
|
|
2337
|
+
"required": false,
|
|
2338
|
+
"description": "Connect to a specific Pane data directory."
|
|
2339
|
+
}
|
|
2340
|
+
],
|
|
2341
|
+
"examples": [
|
|
2342
|
+
"runpane panels list --pane <pane-id> --json"
|
|
2343
|
+
],
|
|
2344
|
+
"jsonSchemas": [
|
|
2345
|
+
"panelListResult"
|
|
2346
|
+
],
|
|
2347
|
+
"notes": [
|
|
2348
|
+
"The ids returned here are stable inputs for `panels output` and `panels input`."
|
|
2349
|
+
]
|
|
2350
|
+
},
|
|
2351
|
+
"panels output": {
|
|
2352
|
+
"name": "panels output",
|
|
2353
|
+
"summary": "Read recent terminal output from a panel.",
|
|
2354
|
+
"details": "Use this to inspect what is currently visible or recently emitted by a terminal-backed panel.",
|
|
2355
|
+
"requiresPaneDaemon": true,
|
|
2356
|
+
"mutates": false,
|
|
2357
|
+
"arguments": [
|
|
2358
|
+
{
|
|
2359
|
+
"name": "--panel",
|
|
2360
|
+
"value": "<panel-id>",
|
|
2361
|
+
"required": true,
|
|
2362
|
+
"description": "Tool panel id."
|
|
2363
|
+
},
|
|
2364
|
+
{
|
|
2365
|
+
"name": "--limit",
|
|
2366
|
+
"value": "<count>",
|
|
2367
|
+
"required": false,
|
|
2368
|
+
"description": "Maximum output records to read."
|
|
2369
|
+
},
|
|
2370
|
+
{
|
|
2371
|
+
"name": "--json",
|
|
2372
|
+
"required": false,
|
|
2373
|
+
"description": "Print machine-readable output."
|
|
2374
|
+
},
|
|
2375
|
+
{
|
|
2376
|
+
"name": "--pane-dir",
|
|
2377
|
+
"value": "<path>",
|
|
2378
|
+
"required": false,
|
|
2379
|
+
"description": "Connect to a specific Pane data directory."
|
|
2380
|
+
}
|
|
2381
|
+
],
|
|
2382
|
+
"examples": [
|
|
2383
|
+
"runpane panels output --panel <panel-id> --limit 200 --json"
|
|
2384
|
+
],
|
|
2385
|
+
"jsonSchemas": [
|
|
2386
|
+
"panelOutputResult"
|
|
2387
|
+
],
|
|
2388
|
+
"notes": [
|
|
2389
|
+
"Default text output concatenates stdout/stderr-like records. Use --json when an agent needs timestamps and record types."
|
|
2390
|
+
]
|
|
2391
|
+
},
|
|
2392
|
+
"panels input": {
|
|
2393
|
+
"name": "panels input",
|
|
2394
|
+
"summary": "Send input bytes to a terminal panel.",
|
|
2395
|
+
"details": "Use this to answer prompts or continue an agent inside an existing Pane terminal panel.",
|
|
2396
|
+
"requiresPaneDaemon": true,
|
|
2397
|
+
"mutates": true,
|
|
2398
|
+
"arguments": [
|
|
2399
|
+
{
|
|
2400
|
+
"name": "--panel",
|
|
2401
|
+
"value": "<panel-id>",
|
|
2402
|
+
"required": true,
|
|
2403
|
+
"description": "Terminal panel id."
|
|
2404
|
+
},
|
|
2405
|
+
{
|
|
2406
|
+
"name": "--text",
|
|
2407
|
+
"value": "<text>",
|
|
2408
|
+
"required": false,
|
|
2409
|
+
"description": "Text bytes to send."
|
|
2410
|
+
},
|
|
2411
|
+
{
|
|
2412
|
+
"name": "--input-file",
|
|
2413
|
+
"value": "<path|->",
|
|
2414
|
+
"required": false,
|
|
2415
|
+
"description": "Read input from a file or stdin."
|
|
2416
|
+
},
|
|
2417
|
+
{
|
|
2418
|
+
"name": "--yes",
|
|
2419
|
+
"required": false,
|
|
2420
|
+
"description": "Skip confirmation for this mutating command."
|
|
2421
|
+
},
|
|
2422
|
+
{
|
|
2423
|
+
"name": "--json",
|
|
2424
|
+
"required": false,
|
|
2425
|
+
"description": "Print machine-readable output."
|
|
2426
|
+
},
|
|
2427
|
+
{
|
|
2428
|
+
"name": "--pane-dir",
|
|
2429
|
+
"value": "<path>",
|
|
2430
|
+
"required": false,
|
|
2431
|
+
"description": "Connect to a specific Pane data directory."
|
|
2432
|
+
}
|
|
2433
|
+
],
|
|
2434
|
+
"examples": [
|
|
2435
|
+
"runpane panels input --panel <panel-id> --text \"Continue\\n\" --yes --json",
|
|
2436
|
+
"printf 'Continue\\n' | runpane panels input --panel <panel-id> --input-file - --yes"
|
|
2437
|
+
],
|
|
2438
|
+
"jsonSchemas": [
|
|
2439
|
+
"panelInputRequest",
|
|
2440
|
+
"panelInputResult"
|
|
2441
|
+
],
|
|
2442
|
+
"notes": [
|
|
2443
|
+
"Input is sent exactly as provided. Include `\\n` or `\\r` when the terminal should receive Enter.",
|
|
2444
|
+
"Runpane records action metadata and errors for observability, but should not log full input text by default."
|
|
2445
|
+
]
|
|
2446
|
+
}
|
|
2447
|
+
},
|
|
2448
|
+
"managedBlock": [
|
|
2449
|
+
"## Pane",
|
|
2450
|
+
"",
|
|
2451
|
+
"The developer is using Pane for this repository. Pane can manage saved repositories and create user-visible panes with terminal-backed tools for planning, discussion, and implementation work.",
|
|
2452
|
+
"",
|
|
2453
|
+
"Use `runpane agent-context` for a brief Pane command schema. Use `runpane agent-context --command \"panes create\"` or another command name for the detailed schema only when needed.",
|
|
2454
|
+
"",
|
|
2455
|
+
"Common commands:",
|
|
2456
|
+
"- `runpane repos list --json`",
|
|
2457
|
+
"- `runpane repos add --path <repo> --yes --json`",
|
|
2458
|
+
"- `runpane panes create --repo active --name <name> --agent codex --prompt \"<task>\" --yes`",
|
|
2459
|
+
"- `runpane panels list --pane <pane-id> --json`",
|
|
2460
|
+
"- `runpane panels output --panel <panel-id> --limit 200 --json`",
|
|
2461
|
+
"- `runpane panels input --panel <panel-id> --text \"<input>\" --yes`",
|
|
2462
|
+
"",
|
|
2463
|
+
"WSL note: if `runpane repos list` cannot find `/tmp/pane-daemon.../daemon.sock`, Pane may be running on Windows. Try `powershell.exe -NoProfile -Command 'Set-Location $env:TEMP; runpane repos list --json'`, then create panes through the same PowerShell form using the saved WSL repo name or id."
|
|
2464
|
+
]
|
|
1196
2465
|
}
|
|
1197
2466
|
};
|
|
1198
2467
|
//# sourceMappingURL=contract.js.map
|