Every AI coding agent session at a glance: what is working, what needs you, and where.
Works with Claude Code, Codex and Copilot CLI.
What it does | Supported agents | Install | Commands | Documentation
Running several AI coding agents at once means clicking through tabs and terminals to find out which one finished and which one is stuck on a question. Lookout keeps that answer on one board in the side bar, takes you to the right tab or terminal with one keystroke, and finds any conversation, running or not, by a word you remember from it. Claude Code in its VS Code panel or a terminal, Codex in its extension's panel, VS Code's Chat or a terminal, Copilot in VS Code's Chat or a terminal: one board, one jump key, one search, each agent with its own colour and boat once more than one is on the board. It reads only what the agents already write on disk.
- Board. The Lookout view in the activity bar. At the top, the harbour: a night scene where every session is a boat, placed by its state and by how long it has been there. Below, one card per session, grouped into Needs you, Finished, Working and Idle, or by project, branch, model, agent, account or window; a click on a group's heading folds it, and in your own order a drag puts a card where you want it in its group.
- Cards. Each card shows the session's title, its time in state, what it asks you when it waits (the permission with its command or file, the question with its answers, the plan to approve), its tool calls per minute, how full its context window is, its tokens and their price, its project, worktree and git branch, where it runs, its model with the reasoning effort of its last reply, and, when a Claude Code session has scheduled a task for itself (a wakeup, or a cron job of its own), a clock chip with the time of the next one. An eye marks the session you are in, and a grey one the others in front while you are elsewhere. A click jumps to the session; a click on its title renames it.
- Jump.
Ctrl+Alt+Jlists the sessions, the ones that need you first, and brings the chosen one's tab or terminal to the front, in this VS Code window or in another on the same machine.Ctrl+Alt+Shift+Jgoes straight to the session that has waited longest. - Answer. A Claude Code session in a terminal of this window that waits on a permission or a question is answered from its card: Yes or No when the card shows all the call would do (a whole command, an address, a file to read; not a file to write or edit, whose content the card leaves out), or one of a single question's options. Lookout reads the session again first and types the answer's key into its terminal only while it still shows that prompt, without bringing the terminal forward; anything else waits for a jump.
- Notify. A notification with a Jump button when a session starts to wait for you, saying why, and optionally when one finishes. While VS Code is not in front, the same notification shows on your desktop, with a sound if you want one.
- Search. A box above the cards looks through every conversation, live and earlier, for the words you remember, with
since:,before:,project:,branch:andfile:to narrow it. A search page gives the matches room to read, and a conversation tab shows any session whole, scrolled to the match. The search survives the agents' purge: Lookout keeps what was said in a database of its own, so a session whose transcript the agent deleted stays under Purged, readable and searchable, and a word matches at a word's start. - Earlier, favourites and archive. Under the live sessions, the ones that are not running, of this window's folders or of every project on the machine, 20 to a page; a click resumes one. A star keeps a session at the top of the board; an archive button puts one away, and a running session you are done with can be parked, out of the way until it works again.
- Notes. Notes on any session, running or not, like comments: as many as you like, each with its time, to remember it by: why it is starred, what it holds, what is still to do. They open as a thread in a tab of their own from the card; the newest shows on the card with a count, the search finds them, and a Notes chip beside the search box shows only the sessions with notes.
- Worktrees.
Lookout: Clean Up Worktreeschecks every git worktree of your repositories, wherever it lives, and says what removing each would lose. The ones whose change is already on the default branch, a squash merge included, or whose every commit is on a remote, and which hold only files a tool builds again, are ticked; one with commits on no remote, an ignored.envor a commit from the last day waits for you to look; one a session, window or process uses, or with changes, is kept. It removes what you tick with git (2.17 or newer, VS Code'sgit.pathwhen set), says how much room came back, and can put each back for two weeks. - Usage. Every limit of the account, named as the agent's own panel names it, and Claude's usage credits while extra usage is on, on the board and in the status bar: the 5-hour window as a coloured bar with the time to its reset (the weekly limit on an account without a 5-hour one, a verified Ultra account). Lookout says so once per window when the 5-hour window reaches 70% and 90%, and a week 90%, the all-models one or a model's own such as Fable's. Several Claude accounts, each in a config directory of its own or switched in one, each get their own usage and their name on their cards: see Several Claude accounts.
- No setup. Lookout reads the state the agents already record on disk. It installs no hooks, reads no credentials, and sends nothing off the machine. Besides the answers you click on a card, which it types into the session's own terminal, the one thing it writes for an agent is Claude Code's transcript retention, when
lookout.retention.daysasks for it: Claude Code deletes transcripts after 30 days by default, and the setting has Lookout keepcleanupPeriodDaysin Claude Code's user settings file at the number you choose, every other key kept and a copy of the file as it was beside it.
What Lookout shows describes each of these in full, and the session states.
| Agent | Live sessions | Jump to terminal | Jump to tab | Rename | Resume | Search | Usage | Answer |
|---|---|---|---|---|---|---|---|---|
| Claude Code | ✓ in the VS Code panel and in terminals | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ in terminals |
| Codex | ✓ the Codex extension's panel, VS Code's Chat (its Codex sessions), the codex program in terminals, and codex exec runs |
✓ | ✓ | — | ✓ in the panel, VS Code's Chat or a terminal | ✓ | ✓ | — |
| Copilot (CLI, and VS Code's Chat) | ✓ VS Code's Chat (its Copilot, Copilot CLI and Local sessions), and the copilot program in terminals |
✓ | ✓ | — | ✓ in VS Code's Chat or a terminal | ✓ | — | — |
Each agent has its own colour and boat once more than one is on the board. Where an agent lacks an action, Lookout leaves it out rather than offering one that fails. Supported agents says what each column means, where each agent runs (its panel, VS Code's Chat, a terminal, a script, the desktop app, the cloud) and what a click does there, and what applies to some agents only.
Install from the Visual Studio Marketplace, or from Open VSX, the registry that Cursor, Kiro, Antigravity, VSCodium and other VS Code forks read:
| Where | How |
|---|---|
| VS Code | The Marketplace listing, or ext install nimrod-teich.lookout in the Quick Open box (Ctrl+P) |
| Cursor | cursor --install-extension nimrod-teich.lookout, or search the Extensions view for Lookout |
| Kiro, Antigravity, VSCodium and other forks | The Open VSX listing, or search the Extensions view for Lookout |
| Any of them, by hand | Download lookout-<version>.vsix from the Releases page, then code --install-extension lookout-<version>.vsix |
Or build it from source:
git clone https://github.com/nimrod-teich/lookout.git
cd lookout
npm install
npm run package
code --install-extension lookout-*.vsixUpdating an installed copy restarts the extension host, which ends the agent sessions that window hosts. Update when they are idle.
- VS Code 1.94 or newer.
- The extension runs where the agent runs: Linux, macOS or Windows, including WSL and remote hosts (SSH, containers), since it lives on the remote side there.
- A recent version of a supported agent.
On SSH and container remotes Lookout runs on the remote machine, where none of your desktop is, so desktop notifications are off there; the notification inside the VS Code window still comes. Under WSL they reach the Windows desktop.
| Command | Key | What it does |
|---|---|---|
Lookout: Jump to Session |
Ctrl+Alt+J |
Lists the sessions and brings the chosen one's tab or terminal to the front. |
Lookout: Jump to Next Session That Needs You |
Ctrl+Alt+Shift+J |
Jumps to the session that has waited longest for you, then to the finished ones. Each press moves to the next. |
Lookout: Mark All Sessions as Seen |
Clears every "finished" mark. | |
Lookout: Show Sessions |
Opens the board. Clicking the status bar item runs it too. | |
Lookout: Refresh Usage |
Has Claude Code fetch the account's usage again. | |
Lookout: Search All Sessions |
Opens the search page: every conversation's matches in an editor tab. | |
Lookout: Show Session Notes |
Opens the search page on every session with a note. |
Every setting, with its default, is in Settings.
| Page | What it covers |
|---|---|
| What Lookout shows | Every part of the board, the search, the usage, the status bar, jump and notifications, and the session states. |
| Supported agents | What the table above means, where each agent runs and what a click does there, and the limitations that apply to some agents only. |
| Several Claude accounts | Setting up a config directory per account, or naming accounts switched in one, and what the board shows of each. |
| Settings | Every lookout.* setting with its default. |
| How it works | Which processes, files and commands Lookout reads, for every agent and for each one. |
| Development | Building and testing, the board's preview page, adding an agent, releasing. |
| Changelog | What each version brought. |
Node 22 or newer. npm run check, npm run lint and npm test are what CI runs; npm run build bundles to dist/, and F5 in VS Code runs the extension in an Extension Development Host. Development has the rest: the layout of the source, the board's preview page and its fixtures, how to add an agent, and how to release.
Lookout is an independent project, free and MIT. It is not affiliated with or endorsed by Anthropic or any other agent vendor. If it saves you a tab hunt a day, sponsor it ♥.

