Files

111 lines
3.9 KiB
Markdown

# Claude for Nova
Launch and resume [Claude Code](https://claude.com/product/claude-code) sessions
for your project from Nova's sidebar.
Chat happens in a terminal, where Claude Code's own interface handles questions,
plans and long output properly. Nova's job is everything around it: which
sessions exist, how to get back into one, and which account you're on.
## Requirements
- Nova 10 or later (built against Nova 14)
- Claude Code installed (`~/.local/bin/claude`, Homebrew, or a path you set in
settings)
## Getting started
1. Open the **Claude** sidebar (the starburst in the sidebar rail).
2. If it says *Not signed in*, click it and choose how to sign in.
3. Press **⌘⇧L** — the launch command is copied to your clipboard.
4. Open a terminal in Nova and paste it.
That's a normal `claude` session, in your project directory, with whatever model
and permission mode the sidebar shows.
## The sidebar
```
Claude
Account [email protected] · Pro
Model Opus
Permissions Ask each time
Sessions
▾ fix the parser bug 2h ago
Copy Resume Command
Copy Resume + Remote Control
Reveal Session File
▸ add a --version flag yesterday
```
**Sessions** lists this project's conversations, newest first, labelled with
their opening prompt. Sessions you started in a terminal appear here too — it is
Claude Code's own store (`~/.claude/projects/`), not a separate list.
Double-click a session to copy its resume command, or expand it for more:
| Action | What it copies |
| --- | --- |
| Copy Resume Command | `cd <project> && claude --resume <id>` |
| Copy Resume + Remote Control | The same, plus `--remote-control` |
| Reveal Session File | *(opens the transcript in Finder)* |
The list refreshes when the section becomes visible, or from the header button.
## Why the clipboard?
Nova provides no terminal API to extensions — an extension cannot open a
terminal tab or type into one. So the extension prepares the exact command and
hands it to you; you paste it wherever you want it, including Nova's own
terminal. One paste, and the session is completely ordinary: resumable from any
terminal, and drivable with `--remote-control`.
## Commands
| Command | Shortcut |
| --- | --- |
| New Session… | ⌘⇧L |
| Resume Session… | |
| Refresh Sessions | |
| Copy File Reference for Claude (Editor menu) | |
| Set Model… / Set Permission Mode… | |
| Sign In… / Sign Out / Show Account Status | |
| Set API Key… / Clear Stored API Key | |
**Copy File Reference for Claude** puts `@path/to/file` on the clipboard for
pasting into a session — Claude Code resolves `@` paths against the project.
## Signing in
Authentication is handled by Claude Code itself; the extension never sees your
credentials. **Sign In** offers your Claude subscription, an Anthropic Console
account, or opening a terminal to run `claude auth login` yourself — use that
last one for SSO.
You can also store an API key with **Set API Key…**. It goes in the macOS
keychain and is passed to Claude Code as `ANTHROPIC_API_KEY`.
## Settings
Model, effort, permission mode and the `claude` executable path are set in
Extension Settings; Model and Permission Mode can be overridden per project.
They are applied to the commands the extension builds, so a launched session
matches what the sidebar shows. **Additional CLI arguments** are appended
verbatim.
## What's next
The [IDE bridge](docs/features/ide-bridge.md): a Node sidecar that lets the
terminal session see Nova — the current selection, open files, and diffs
reviewed in the editor rather than as terminal text.
## Development
```sh
nova extension validate . # check the bundle (makes network calls)
nova extension activate . # load it into Nova for development
```
See [`CLAUDE.md`](CLAUDE.md) for architecture and constraints, and
[`docs/features/`](docs/features/README.md) for per-feature detail.