This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

--filter-tag

Nathan Herald (Apr 15, 2026, 6:10 PM +0200) c1b1a224 61793b63

+12 -3
+3 -2
CHANGELOG.md
··· 4 4 5 5 ### Interactive TUI 6 6 - Add `--preselect-new` flag: `pty --preselect-new` opens the interactive TUI with "Create new session..." pre-selected (useful for pty-layout panes that should land on the create prompt) 7 - - Add `--filter-tag key=value` flag (repeatable): filters the TUI to sessions matching all given tags AND auto-applies those tags to any session created from this TUI instance — so new sessions stay in the filtered view (e.g., pty-layout layouts) 8 - - Tag filter is shown in the Filter line; remote groups are hidden when a tag filter is active (remote session tags aren't surfaced by pty-relay) 7 + - Add `--filter-tag key=value` flag (repeatable): filters the TUI to sessions matching all given tags AND auto-applies those tags to any session created from this TUI instance — so new sessions (local and remote) stay in the filtered view (e.g., pty-layout layouts) 8 + - Remote session spawns forward filter tags to pty-relay as `--tag key=value` so remote sessions created from a filtered TUI are tagged on the remote side and stay in the filtered view 9 + - Tag filter is shown in the Filter line; remote groups are filtered by their `tags` field when a tag filter is active 9 10 10 11 ### Listing 11 12 - `pty list` now shows tags by default (hashtag format, e.g., `#role=web`) — internal bookkeeping keys (`ptyfile*`, `strategy`, `supervisor.status`) are hidden
+9 -1
src/tui/interactive.ts
··· 759 759 if (!relayBin) return; 760 760 myApp?.pause(); 761 761 762 - const result = spawnSync(relayBin, ["connect", host.url, "--spawn", name], { 762 + // Forward --filter-tag tags to the relay so the newly-spawned remote 763 + // session is tagged and stays within the filtered view. 764 + const tags = filterTags.peek(); 765 + const tagArgs: string[] = []; 766 + for (const [k, v] of Object.entries(tags)) { 767 + tagArgs.push("--tag", `${k}=${v}`); 768 + } 769 + 770 + const result = spawnSync(relayBin, ["connect", host.url, "--spawn", name, ...tagArgs], { 763 771 stdio: "inherit", 764 772 }); 765 773