@hyperlogue/r3 0.9.3 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +49 -39
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
|
|
5
5
|
<h1 align="center">r3: Review. Revise. Resolve.</h1>
|
|
6
6
|
|
|
7
|
+
<p align="center"><b>Chat is a terrible UI for reviewing large amounts of agent-generated code and docs.<br>r3 is where you do it instead.</b></p>
|
|
8
|
+
|
|
7
9
|
<p align="center">
|
|
8
10
|
<a href="https://www.npmjs.com/package/@hyperlogue/r3"><img src="https://img.shields.io/npm/v/@hyperlogue/r3?color=cb3837&logo=npm&label=%40hyperlogue%2Fr3" alt="npm version"></a>
|
|
9
11
|
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="license: MIT"></a>
|
|
@@ -11,34 +13,46 @@
|
|
|
11
13
|
<a href="https://hyperlogue.github.io/r3/demo/"><img src="https://img.shields.io/badge/live-demo-6164ff?logo=googlechrome&logoColor=white" alt="live demo"></a>
|
|
12
14
|
</p>
|
|
13
15
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
know—built specifically for you and your agents, and running entirely locally.
|
|
16
|
+
Imagine your agent just wrote a 2,000-word design doc and six new files. A handful of
|
|
17
|
+
passages need work. In a chat box you paste each one back, retype what is wrong with
|
|
18
|
+
it, and from then on you are the one remembering which notes got addressed and which
|
|
19
|
+
quietly dropped two turns ago.
|
|
20
|
+
|
|
21
|
+
r3 is a local review tool for what your coding agent writes. Your agent opens a review
|
|
22
|
+
of its diff or its doc, you leave notes on the exact lines, and it works through them
|
|
23
|
+
one at a time. This is the loop you already know from code review, running entirely on your
|
|
24
|
+
own machine.
|
|
25
|
+
|
|
26
|
+
- **Your note sits on the line it's about.** Select a line of code, or a sentence
|
|
27
|
+
inside a rendered Markdown doc, and type. Nothing gets pasted into a chat window to
|
|
28
|
+
explain which part you meant.
|
|
29
|
+
- **The agent is waiting to revise.** It blocks on `r3 watch` while you read. Hit
|
|
30
|
+
Submit and it wakes with your notes; its replies show up in the browser without a
|
|
31
|
+
refresh.
|
|
32
|
+
- **Every note is tracked to resolution.** Each one carries its own thread and status,
|
|
33
|
+
so three rounds later you can still see which four are open.
|
|
33
34
|
|
|
34
35
|
<div align="center">
|
|
35
36
|
<video src="https://github.com/user-attachments/assets/0c1aefaf-0229-49e7-a4dc-e660dc0214f6" width="760" muted controls></video>
|
|
36
37
|
</div>
|
|
37
38
|
|
|
39
|
+
```sh
|
|
40
|
+
npm install -g @hyperlogue/r3 # or: bun add -g @hyperlogue/r3 · npx @hyperlogue/r3@latest
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Then tell your agent to put its changes up for review. If you'd rather look before
|
|
44
|
+
installing anything, [**▶ try the live demo**](https://hyperlogue.github.io/r3/demo/) —
|
|
45
|
+
the whole UI runs in your browser.
|
|
46
|
+
|
|
38
47
|
## Workflow
|
|
39
48
|
|
|
40
49
|
r3 offers a tight, copy-paste-free review loop between you and an agent.
|
|
41
50
|
|
|
51
|
+
<p align="center">
|
|
52
|
+
<img alt="r3_cc" src="https://github.com/user-attachments/assets/ba85f5a2-e244-4a04-b673-22cb88694c2b" width="49.6%">
|
|
53
|
+
<img alt="r3_web" src="https://github.com/user-attachments/assets/4b99a128-3484-44ce-a727-8d72a3dc532b" width="42.4%">
|
|
54
|
+
</p>
|
|
55
|
+
|
|
42
56
|
```mermaid
|
|
43
57
|
sequenceDiagram
|
|
44
58
|
participant A as Agent
|
|
@@ -50,8 +64,10 @@ sequenceDiagram
|
|
|
50
64
|
A->>S: [2] `r3 watch` (blocks for feedback)
|
|
51
65
|
U->>S: [3] leave feedback + Submit
|
|
52
66
|
S-->>A: `r3 watch` prints your feedback to stdout and exits
|
|
53
|
-
A->>S: [4] `r3
|
|
54
|
-
S-->>U:
|
|
67
|
+
A->>S: [4] `r3 claim` feedback being worked
|
|
68
|
+
S-->>U: working indicator appears live
|
|
69
|
+
A->>S: [5] `r3 reply` by feedback id (releases claim)
|
|
70
|
+
S-->>U: [6] reply + claim release update live
|
|
55
71
|
end
|
|
56
72
|
```
|
|
57
73
|
|
|
@@ -60,10 +76,13 @@ sequenceDiagram
|
|
|
60
76
|
waits for feedback.
|
|
61
77
|
3. You leave feedback anchored to the exact lines it's about, then click
|
|
62
78
|
**Submit**. `watch` prints your feedback to stdout that's captured by the agent.
|
|
63
|
-
4. The agent
|
|
79
|
+
4. The agent claims the items it starts (`r3 claim <fid>...`), so the UI shows
|
|
80
|
+
which session is actively working. Claims are 60-minute leases and can be
|
|
81
|
+
renewed by repeating the command.
|
|
82
|
+
5. The agent works each item and **replies by feedback id**
|
|
64
83
|
(`r3 reply <fid> -m "what I changed"`), saying what it changed, or the
|
|
65
|
-
reasoning for why it didn't.
|
|
66
|
-
|
|
84
|
+
reasoning for why it didn't. A successful agent reply releases that claim.
|
|
85
|
+
6. Every reply lands on the web UI through live updates. The agent `watch`es again
|
|
67
86
|
until you **Approve** or **Abandon** the review.
|
|
68
87
|
|
|
69
88
|
## Quick start
|
|
@@ -74,14 +93,14 @@ your tool's equivalent), or just try it out by pasting it into a new session:
|
|
|
74
93
|
|
|
75
94
|
```md
|
|
76
95
|
This project uses r3 for review. Run it with whichever of these you have:
|
|
77
|
-
`npx @hyperlogue/r3@latest`, `bunx @hyperlogue/r3@latest`, or
|
|
78
|
-
`r3 guide` will show how to use it.
|
|
96
|
+
`r3` (if installed), `npx @hyperlogue/r3@latest`, `bunx @hyperlogue/r3@latest`, or
|
|
97
|
+
`nix run github:hyperlogue/r3 --`. `r3 guide` will show how to use it.
|
|
79
98
|
```
|
|
80
99
|
|
|
81
|
-
Then just ask: "put your changes up for review." Your agent runs
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
review.
|
|
100
|
+
Then just ask: "put your changes up for review." Your agent runs `r3 create …`,
|
|
101
|
+
shares the URL, and waits while you leave feedback in the browser. Nothing needs to
|
|
102
|
+
be installed first — the `npx`/`bunx`/`nix` forms work standalone, and whichever one
|
|
103
|
+
your agent uses lazily starts the web server on localhost and opens the review.
|
|
85
104
|
|
|
86
105
|
One **web server** spans all your repos on a stable port (default 8791). The first
|
|
87
106
|
call spawns it automatically, so there's nothing to start by hand;
|
|
@@ -111,15 +130,6 @@ You rarely type the commands yourself — you ask your agent, and it runs the ri
|
|
|
111
130
|
→ adhoc scratch review with no git source
|
|
112
131
|
```
|
|
113
132
|
|
|
114
|
-
To install `r3` permanently — a persistent command instead of `npx`/`bunx` each
|
|
115
|
-
time — add `-g`:
|
|
116
|
-
|
|
117
|
-
```sh
|
|
118
|
-
npm install -g @hyperlogue/r3 # or: bun add -g @hyperlogue/r3
|
|
119
|
-
```
|
|
120
|
-
|
|
121
|
-
Then run `r3 …` from anywhere.
|
|
122
|
-
|
|
123
133
|
## Reviews
|
|
124
134
|
|
|
125
135
|
Every review is one of two kinds:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hyperlogue/r3",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.0",
|
|
4
4
|
"description": "Review. Revise. Resolve. — a local-first review tool for AI-generated code and docs. Runs the matching prebuilt native r3 binary (shipped as a per-platform optional dependency); works with `bunx @hyperlogue/r3` and `npx @hyperlogue/r3`.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -17,10 +17,10 @@
|
|
|
17
17
|
"launch.mjs"
|
|
18
18
|
],
|
|
19
19
|
"optionalDependencies": {
|
|
20
|
-
"@hyperlogue/r3-darwin-arm64": "0.
|
|
21
|
-
"@hyperlogue/r3-darwin-x64": "0.
|
|
22
|
-
"@hyperlogue/r3-linux-x64": "0.
|
|
23
|
-
"@hyperlogue/r3-linux-arm64": "0.
|
|
20
|
+
"@hyperlogue/r3-darwin-arm64": "0.10.0",
|
|
21
|
+
"@hyperlogue/r3-darwin-x64": "0.10.0",
|
|
22
|
+
"@hyperlogue/r3-linux-x64": "0.10.0",
|
|
23
|
+
"@hyperlogue/r3-linux-arm64": "0.10.0"
|
|
24
24
|
},
|
|
25
25
|
"engines": {
|
|
26
26
|
"node": ">=18"
|