mirror of
https://github.com/l0ng-ai/tty7.git
synced 2026-10-09 00:02:16 +00:00
Merge origin/main into fix/cli-orchestration
Both sides added to the Unreleased section of the CHANGELOG; #484's SSH entry keeps main's place ahead of this branch's four, and the `Changed` section this branch introduces moves below it. The `docs/` overlap the PR description warned about merged on its own.
This commit is contained in:
@@ -22,9 +22,9 @@ server is reachable, whether its wire dialect matches this binary, and whether
|
||||
running *inside* a tty7 pane.
|
||||
|
||||
Being inside a pane matters because the address-taking verbs (`split`, `send`,
|
||||
`capture`, `procs`, `pane close`) default to `$TTY7_PANE`, and `run --keep`
|
||||
files its pane into `$TTY7_WS`. Outside one you must name a target, and the
|
||||
error says so rather than guessing.
|
||||
`capture`, `procs`, `wait`, `pane close`) default to `$TTY7_PANE`, and
|
||||
`run --keep` files its pane into `$TTY7_WS`. Outside one you must name a target,
|
||||
and the error says so rather than guessing.
|
||||
|
||||
## Addresses
|
||||
|
||||
|
||||
+15
-6
@@ -19,7 +19,7 @@ Set inside every tty7 pane, inherited by anything launched from one.
|
||||
|
||||
| Variable | Meaning |
|
||||
|---|---|
|
||||
| `TTY7_PANE` | This pane's id, e.g. `71` or `%71` (both accepted). Default target of `split`, `send`, `capture`, `procs`, `pane close`. |
|
||||
| `TTY7_PANE` | This pane's id, e.g. `71` or `%71` (both accepted). Default target of `split`, `send`, `capture`, `procs`, `wait`, `pane close`. |
|
||||
| `TTY7_WS` | This pane's workspace id. Default for `run --keep`, `tab new`, `ws tree`. |
|
||||
| `TTY7_CONFIG_DIR` | The server's config dir — how the CLI finds the right server. You never pass a socket path. |
|
||||
|
||||
@@ -43,6 +43,16 @@ a stand-in.
|
||||
|
||||
## Top-level verbs
|
||||
|
||||
### `tty7 [PATH]`
|
||||
|
||||
No subcommand means the GUI. A running window is asked to come forward and open
|
||||
a tab at `PATH`; if none is registered, the app is launched instead.
|
||||
JSON: `{"path","delivered","launched"}` — `delivered` says an existing window
|
||||
took it, `launched` that a new process was started.
|
||||
|
||||
Without `PATH` it just activates the app. `-m` is refused: this verb drives the
|
||||
GUI on *this* machine.
|
||||
|
||||
### `tty7 ls`
|
||||
|
||||
Same as `ws ls`. Table: `WORKSPACE NAME TABS PANES ATTACHED`.
|
||||
@@ -208,7 +218,7 @@ candidates.
|
||||
| Command | Effect | JSON |
|
||||
|---|---|---|
|
||||
| `ws ls` | Every workspace | `{"workspaces":[...]}` |
|
||||
| `ws tree [WORKSPACE]` | One workspace as a tree: tabs, split axes and ratios, panes with cwds | The whole workspace object: `{"id","name","last_active","tabs":[{"id","name","sidebar_group","root",…}]}` |
|
||||
| `ws tree [WORKSPACE]` | One workspace as a tree: tabs, split axes and ratios, panes with cwds | The whole workspace object: `{"id","name","last_active","active_tab","tabs":[{"id","name","sidebar_group","root",…}]}` |
|
||||
| `ws new [NAME]` | An empty workspace (no tab, no pane) | `{"id","name"}` |
|
||||
| `ws rename WORKSPACE NAME` | Name or rename | `{"id","name"}` |
|
||||
| `ws rm WORKSPACE` | Delete the workspace | `{"removed"}` |
|
||||
@@ -262,9 +272,9 @@ a stand-in.
|
||||
| `pane close --orphans` | Close every pane no workspace holds | `{"closed":[…]}` |
|
||||
|
||||
`--all` is the one that shows leaks. Each entry is
|
||||
`{"pane","workspace","orphan","owner","title","cwd","live"}`: `owner` is
|
||||
`tty7-cli` for panes this CLI spawned, and `orphan: true` means no workspace
|
||||
holds it. An interrupted `run` and a removed workspace both leave orphans here.
|
||||
`{"pane","workspace","orphan","owner","title","cwd","live"}`: `owner` is the id
|
||||
of the workspace that owns the pane, and `orphan: true` means no workspace holds
|
||||
it. An interrupted `run` and a removed workspace both leave orphans here.
|
||||
|
||||
`--orphans` is the reaper for exactly those. It closes what `pane ls --all`
|
||||
lists as orphaned and nothing else — panes a workspace holds are untouched —
|
||||
@@ -309,4 +319,3 @@ These parse and then exit 1 with an explanation:
|
||||
|
||||
- `ws stop` — the control dialect has no workspace-stop request yet
|
||||
- `machine connect` / `machine disconnect` — use the GUI's connection manager
|
||||
- bare `tty7 <path>` (launch or focus the GUI)
|
||||
|
||||
Reference in New Issue
Block a user