Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,18 @@ type = "plugin_action"
command = "annotate.copy-archive"
description = "copy annotations as context and archive them"

[[keys.command]]
key = "prefix+ctrl+v"
type = "plugin_action"
command = "annotate.paste-archive"
description = "paste annotations into the agent's prompt and archive them"

[[keys.command]]
key = "prefix+ctrl+s"
type = "plugin_action"
command = "annotate.send-archive"
description = "send annotations to the agent and archive them"

[[keys.command]]
key = "prefix+m"
type = "plugin_action"
Expand Down Expand Up @@ -135,6 +147,18 @@ type = "plugin_action"
command = "annotate.copy-archive"
description = "copy annotations as context and archive them"

[[keys.command]]
key = "prefix+ctrl+v"
type = "plugin_action"
command = "annotate.paste-archive"
description = "paste annotations into the agent's prompt and archive them"

[[keys.command]]
key = "prefix+ctrl+s"
type = "plugin_action"
command = "annotate.send-archive"
description = "send annotations to the agent and archive them"

[[keys.command]]
key = "prefix+m"
type = "plugin_action"
Expand All @@ -160,13 +184,20 @@ herdr server reload-config
| `Ctrl+B A` | comment on the selected text 路 `Ctrl+S` saves |
| `Ctrl+B Shift+A` | copy all annotations as Markdown |
| `Ctrl+B Ctrl+A` | copy all annotations as Markdown, then archive them |
| `Ctrl+B Ctrl+V` | paste all annotations into the focused agent's prompt without sending, then archive them |
| `Ctrl+B Ctrl+S` | send all annotations as the focused agent's next message, then archive them |
| `Ctrl+B M` | manage 路 `y` copy one 路 `c` copy all 路 `Shift+C` copy and archive 路 `Tab` archives (`y` copy 路 `u` restore 路 `d d` delete) |

Copies made inside the manager pane also emit OSC 52, so on Herdr 0.9.0 they reach the clipboard of
the machine you are viewing from even when the plugin runs on a remote server with no clipboard tool
installed; `Ctrl+B Shift+A` and `Ctrl+B Ctrl+A` do not, because those actions run outside a pane and
have no terminal to write to.

`Ctrl+B Ctrl+V` and `Ctrl+B Ctrl+S` skip the clipboard and put the same Markdown straight into the
prompt of the agent in the focused pane. Both first ask Herdr whether the agent is ready. When
that pane has no running agent Herdr recognises, the agent is still launching, or it is waiting at
an approval or question prompt, they refuse, type nothing, and leave your annotations active.

### Review documents and agent replies

Full install. Works with Claude Code, Codex, pi, Copilot CLI, Droid, Oh My Pi, Hermes CLI and OpenCode (1 and 2).
Expand Down
6 changes: 4 additions & 2 deletions docs/lite-testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,12 @@ by running both runtimes side by side.

## Recorded goldens

`scripts/lite-regression.py` drives all six entrypoints the Lite manifest declares and compares
`scripts/lite-regression.py` drives the six entrypoints the Bun runtime shipped and compares
every observable with a recording checked in under `scripts/lite-goldens/`. The recording was taken
from the Bun runtime at commit `2add0da`, the last commit that still contained `src/`, so a green
run means the native runtime still does what Bun did.
run means the native runtime still does what Bun did. `paste-archive` and `send-archive` came
later and have no recording; the harness checks their manifest entries, and `cargo test` covers
their behavior.

```sh
bash scripts/lite-regression.sh
Expand Down
2 changes: 2 additions & 0 deletions docs/windows-full-acceptance.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@ requirements, not completed verification. Every box starts unchecked.
| `capture` | Annotate selection | `pane` |
| `copy-context` | Copy annotations as context | `global` |
| `copy-archive` | Copy annotations as context and archive them | `global` |
| `paste-archive` | Paste annotations into the agent's prompt and archive them | `pane` |
| `send-archive` | Send annotations to the agent and archive them | `pane` |
| `manage` | Manage annotations | `global` |
| `open` | Annotate: open here | `workspace`, `pane` |
| `open-link` | Annotate this file | `pane` |
Expand Down
16 changes: 15 additions & 1 deletion herdr-plugin.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
id = "annotate"
name = "Annotate"
version = "0.6.0"
version = "0.7.0"
min_herdr_version = "0.8.0"
description = "Comment on terminal selections and copy annotations as agent context."
platforms = ["linux", "macos", "windows"]
Expand Down Expand Up @@ -41,6 +41,20 @@ description = "Copy all saved annotations to the clipboard as Markdown, then arc
contexts = ["global"]
command = ["./bin/herdr-annotate.exe", "copy-archive"]

[[actions]]
id = "paste-archive"
title = "Paste annotations into the agent's prompt and archive them"
description = "Paste all saved annotations into the focused agent's prompt without sending, then archive them."
contexts = ["pane"]
command = ["./bin/herdr-annotate.exe", "paste-archive"]

[[actions]]
id = "send-archive"
title = "Send annotations to the agent and archive them"
description = "Send all saved annotations as the focused agent's next message, then archive them."
contexts = ["pane"]
command = ["./bin/herdr-annotate.exe", "send-archive"]

[[actions]]
id = "manage"
title = "Manage annotations"
Expand Down
16 changes: 15 additions & 1 deletion lite/herdr-plugin.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

id = "annotate"
name = "Annotate"
version = "0.6.0"
version = "0.7.0"
min_herdr_version = "0.8.0"
description = "Comment on terminal selections and copy annotations as agent context."
platforms = ["linux", "macos", "windows"]
Expand Down Expand Up @@ -46,6 +46,20 @@ description = "Copy all saved annotations to the clipboard as Markdown, then arc
contexts = ["global"]
command = ["../bin/herdr-annotate.exe", "copy-archive"]

[[actions]]
id = "paste-archive"
title = "Paste annotations into the agent's prompt and archive them"
description = "Paste all saved annotations into the focused agent's prompt without sending, then archive them."
contexts = ["pane"]
command = ["../bin/herdr-annotate.exe", "paste-archive"]

[[actions]]
id = "send-archive"
title = "Send annotations to the agent and archive them"
description = "Send all saved annotations as the focused agent's next message, then archive them."
contexts = ["pane"]
command = ["../bin/herdr-annotate.exe", "send-archive"]

[[actions]]
id = "manage"
title = "Manage annotations"
Expand Down
Loading
Loading