Files
tty7/docs/docs.json
T
l0ng-ai 6fcf659e04 feat(search): tabbed Search Everywhere with a Sessions tab to resume agent sessions (#969)
* feat(search): replace the command palette with tabbed Search Everywhere

The palette was one flat list that every new kind of row had to be squeezed
into: tabs and SSH hosts rode along as "Switch to Tab: …" and "SSH: …"
commands, and the only way to narrow to one kind was a magic seed word.

Search Everywhere splits it into sources behind one trait — All, Actions,
Terminals, Hosts — each with its own empty-query layout and ranking. The All
tab shows each source's top rows, ordered by best match, with a row that
opens the full tab. Tab / Shift-Tab walk the tabs and keep the query.

- Terminals lists every open tab of every workspace (reusing the switcher's
  tab rows) and jumps to it wherever it lives, plus the shells and agents.
- Hosts replaces the separate "Add Connection" input: a typed address or
  full `ssh …` line offers to connect.
- Fixes Return doing nothing after a search that found nothing, or when the
  search opens pre-filtered: gpui-component re-picks the row from a stale
  frame; the delegate now re-arms the first row.
- Fixes `ssh -p 2222 me@box` being offered as a quick-connect address with
  user `ssh -p 2222 me`.

The keymap action stays `TogglePalette` so custom bindings keep working.

* feat(search): a Sessions tab to resume past agent sessions

Search Everywhere gains a Sessions tab listing the Claude Code and Codex
sessions on this computer, read from ~/.claude/projects and
~/.codex/sessions ($CODEX_HOME). Sessions that ran in the focused tab's
directory lead; the All tab offers the last three of them before anything
is typed. Return opens a new tab in the session's directory and runs the
agent's resume command with its configured launch flags.

- Only each transcript's head and tail are read, off the window thread,
  and cached by path, size and mtime: ~170ms cold for 50 sessions,
  under 1ms warm. The search opens on the cached list and fills in.
- Titles: /rename name, then the agent's own title (ai-title, Codex's
  session_index.jsonl), then the first thing typed, skipping harness
  injections. Codex rollouts it ran for itself (subagent/internal) and
  sessions never asked anything are left out.
- A session whose directory is gone is refused with a notice rather than
  resumed where the agent cannot find it.
2026-09-27 09:38:31 +08:00

149 lines
3.5 KiB
JSON

{
"$schema": "https://mintlify.com/docs.json",
"theme": "mint",
"name": "tty7",
"description": "A terminal workbench: persistent sessions, remote work, agents.",
"colors": {
"primary": "#0FA968",
"light": "#3FDD8C",
"dark": "#0FA968"
},
"favicon": "/favicon.ico",
"logo": {
"light": "/logo/logo.svg",
"dark": "/logo/logo.svg",
"href": "https://github.com/l0ng-ai/tty7"
},
"navigation": {
"tabs": [
{
"tab": "Documentation",
"groups": [
{
"group": "Getting started",
"pages": [
"index",
"getting-started/installation",
"getting-started/first-launch",
"getting-started/concepts"
]
},
{
"group": "The window",
"pages": [
"window/tabs-and-splits",
"window/sidebar",
"window/search-everywhere",
"window/search",
"window/side-panel"
]
},
{
"group": "The terminal",
"pages": [
"terminal/prompt",
"terminal/history",
"terminal/selection-and-clipboard",
"terminal/links",
"terminal/mouse-and-scrolling"
]
},
{
"group": "Coding agents",
"pages": [
"agents/overview",
"agents/status",
"agents/sessions",
"agents/orchestration"
]
},
{
"group": "Remote work",
"pages": [
"remote/ssh",
"remote/sftp",
"remote/port-forwarding",
"remote/workspaces"
]
},
{
"group": "Git",
"pages": [
"git/source-control",
"git/diffs",
"git/worktrees"
]
},
{
"group": "Customization",
"pages": [
"customization/settings",
"customization/themes",
"customization/fonts",
"customization/keybindings"
]
}
]
},
{
"tab": "CLI",
"groups": [
{
"group": "The tty7 command",
"pages": [
"cli/overview",
"cli/reference",
"cli/agent-skill"
]
}
]
},
{
"tab": "Reference",
"groups": [
{
"group": "Reference",
"pages": [
"reference/configuration",
"reference/keyboard-shortcuts",
"reference/shell-integration",
"reference/updates",
"reference/privacy",
"reference/troubleshooting"
]
}
]
}
]
},
"navbar": {
"links": [
{
"label": "GitHub",
"href": "https://github.com/l0ng-ai/tty7"
},
{
"label": "Discord",
"href": "https://discord.gg/s3dethqz2V"
}
],
"primary": {
"type": "button",
"label": "Download",
"href": "https://github.com/l0ng-ai/tty7/releases"
}
},
"footer": {
"socials": {
"github": "https://github.com/l0ng-ai/tty7",
"discord": "https://discord.gg/s3dethqz2V"
}
},
"redirects": [
{
"source": "/window/command-palette",
"destination": "/window/search-everywhere"
}
]
}