https://github.com/pasqualesalza/claude.fish
Fish session picker and completions for Claude Code (ccr / ccri)
https://github.com/pasqualesalza/claude.fish
claude claude-code cli fish fish-plugin fisher fzf
Last synced: 13 days ago
JSON representation
Fish session picker and completions for Claude Code (ccr / ccri)
- Host: GitHub
- URL: https://github.com/pasqualesalza/claude.fish
- Owner: pasqualesalza
- License: mit
- Created: 2026-06-03T13:06:04.000Z (21 days ago)
- Default Branch: main
- Last Pushed: 2026-06-04T09:39:06.000Z (20 days ago)
- Last Synced: 2026-06-04T11:10:13.090Z (20 days ago)
- Topics: claude, claude-code, cli, fish, fish-plugin, fisher, fzf
- Language: Shell
- Size: 28.3 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# claude.fish
[](https://github.com/pasqualesalza/claude.fish/actions/workflows/ci.yml)
[](LICENSE)
A [fish](https://fishshell.com) plugin for [Claude Code](https://docs.anthropic.com/en/docs/claude-code):
a zoxide-style session picker (`ccr` / `ccri`) plus completions for the `claude` CLI
(which ships none).
Sessions are scoped to the current project by default — exactly how Claude Code stores
them — so resuming always reattaches to the right conversation instead of spawning an empty one.
## Commands
| Command | Behaviour |
|---|---|
| `ccr` | Resume the **most recent** session in this folder — "continue where I left off". |
| `ccr ` | Resume the most recent session matching `` (title + transcript). Falls back to the picker if nothing matches. |
| `ccri [query]` | **Interactive** `fzf` picker with a transcript preview. |
| `… --all` | Search across every project, not just this folder. |
Both run `claude --resume ` in the session's own working directory. Tab-completing
`claude --resume ` also lists your sessions by title.
## What the picker shows
- **Real titles** — a session's `/rename` (marked `✎`) or Claude's auto-generated title,
not just the first message, with a short id to tell similar/forked sessions apart.
- **Recap preview** — each session opens with its title and the last thing you asked
("where you left off"), then the recent conversation with colored user/assistant turns.
## Requirements
- fish 3.4+
- [`jq`](https://jqlang.github.io/jq/) and [`fzf`](https://github.com/junegunn/fzf)
- Optional: [`fzf.fish`](https://github.com/PatrickF1/fzf.fish) — if present, the picker reuses
its `_fzf_wrapper` for a consistent look; otherwise plain `fzf` is used.
## Install
```fish
fisher install pasqualesalza/claude.fish
```
## License
[MIT](LICENSE)