human-hindsight 1.8.0 → 1.8.1

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 CHANGED
@@ -13,7 +13,7 @@
13
13
  </p>
14
14
 
15
15
  ```bash
16
- npx human-hindsight
16
+ npx human-hindsight@latest
17
17
  ```
18
18
 
19
19
  Human Hindsight mines your coding-agent session history (Claude Code, Codex, Kiro, OpenCode)
@@ -106,7 +106,7 @@ Use `--no-follow-up` for one command at a time; pipes, dry runs, and scripted
106
106
  You can also start directly with distillation:
107
107
 
108
108
  ```bash
109
- npx human-hindsight distill # offers to export first, then digest → cluster →
109
+ npx human-hindsight@latest distill # offers to export first, then digest → cluster →
110
110
  # author (asks before any runner call), then shows
111
111
  # offers the finished library in your browser
112
112
  ```
@@ -114,24 +114,24 @@ npx human-hindsight distill # offers to export first, then digest → cluster
114
114
  Prefer to drive each stage yourself? The pipeline is just three verbs:
115
115
 
116
116
  ```bash
117
- npx human-hindsight # 1. scan: inventory your projects (read-only)
118
- npx human-hindsight export # 2. export: human-only markdown per session
119
- npx human-hindsight distill # 3. distill: digest → cluster → author (asks first)
117
+ npx human-hindsight@latest # 1. scan: inventory your projects (read-only)
118
+ npx human-hindsight@latest export # 2. export: human-only markdown per session
119
+ npx human-hindsight@latest distill # 3. distill: digest → cluster → author (asks first)
120
120
  ```
121
121
 
122
122
  Then browse and curate the results:
123
123
 
124
124
  ```bash
125
- npx human-hindsight list # your library (✎ edited / ▲▼ rating badges)
126
- npx human-hindsight gui # browse, search, and copy in your browser
127
- npx human-hindsight show <slug> # read a oneshot
128
- npx human-hindsight copy <slug> # → clipboard, paste into a fresh session
129
- npx human-hindsight edit <slug> # open in $EDITOR; your edits are protected
130
- npx human-hindsight rate <slug> up # record a verdict (up|down)
131
- npx human-hindsight prune # remove orphaned entries (asks first)
132
- npx human-hindsight preferences # → CLAUDE.md block
133
- npx human-hindsight status # pipeline funnel + orphan/skip flags
134
- npx human-hindsight retention # optional: preview longer local retention
125
+ npx human-hindsight@latest list # your library (✎ edited / ▲▼ rating badges)
126
+ npx human-hindsight@latest gui # browse, search, and copy in your browser
127
+ npx human-hindsight@latest show <slug> # read a oneshot
128
+ npx human-hindsight@latest copy <slug> # → clipboard, paste into a fresh session
129
+ npx human-hindsight@latest edit <slug> # open in $EDITOR; your edits are protected
130
+ npx human-hindsight@latest rate <slug> up # record a verdict (up|down)
131
+ npx human-hindsight@latest prune # remove orphaned entries (asks first)
132
+ npx human-hindsight@latest preferences # → CLAUDE.md block
133
+ npx human-hindsight@latest status # pipeline funnel + orphan/skip flags
134
+ npx human-hindsight@latest retention # optional: preview longer local retention
135
135
  ```
136
136
 
137
137
  Requires Node 22.13+ on Node 22, or Node 23.4+ on newer releases, on macOS or Linux (Windows is untested and currently
@@ -142,17 +142,46 @@ with a consent prompt (or your explicit `--yes`).
142
142
  ### A small local library viewer
143
143
 
144
144
  ```bash
145
- npx human-hindsight gui # start locally and open your browser
146
- npx human-hindsight gui --no-open # print the address without opening it
147
- npx human-hindsight gui --port 3210 # choose a port (default: any available port)
148
- npx human-hindsight gui --home /path/to/library-home
145
+ npx human-hindsight@latest gui # start locally and open your browser
146
+ npx human-hindsight@latest gui --no-open # print the address without opening it
147
+ npx human-hindsight@latest gui --port 3210 # choose a port (default: any available port)
148
+ npx human-hindsight@latest gui --home /path/to/library-home
149
149
  ```
150
150
 
151
- Search titles and text, filter by domain, sort, and copy prompts with one click.
151
+ Switch between **Prompts** and **Preferences** to search, filter by domain,
152
+ sort, and copy items with one click. Preferences are deduplicated across tasks
153
+ and can be sorted by frequency, recency, or text. Search also matches their
154
+ evidence and source prompt titles.
155
+ Domain filters start with broad categories and reveal optional subdomains,
156
+ up to five levels deep. Selecting a parent includes all its descendants.
157
+ Existing flat labels are grouped locally without changing the library or
158
+ making a model call; newly distilled sessions use hierarchical domain paths.
152
159
  **Preview** renders Markdown headings, lists, tables, links, blockquotes, task
153
160
  lists, and code blocks. **Markdown** shows the original source. Copy always
154
161
  uses that original Markdown, including when the preview is selected.
155
162
 
163
+ Each prompt links to its observed preferences; each preference shows its
164
+ evidence and links back to the source prompts. You can bookmark either view
165
+ and use your browser's Back and Forward buttons. **View all preferences**
166
+ opens a combined Markdown block ready to copy into `CLAUDE.md` or `AGENTS.md`.
167
+
168
+ The tips bar starts with an open-source and privacy reminder, then rotates
169
+ through quick tips with copyable `npx human-hindsight@latest` commands.
170
+ Pause it, hide it, or restore it with **Show tips**. Hidden tips stay hidden
171
+ when you reload the same local address.
172
+
173
+ Export and distill show an open-source/privacy reminder near the start.
174
+ Interactive terminals get a colorful elapsed-time progress indicator during
175
+ scanning, export, and model work; redirected output stays free of animation.
176
+
177
+ Consolidation is optional: `npx human-hindsight@latest preferences --consolidate`
178
+ uses one call through your own coding harness and its configured provider,
179
+ with consent and the subscription/credit cost explained first. Successful
180
+ results are saved, with their Markdown and input metadata, in
181
+ `<home>/library/preferences.consolidated.json`. Refresh the GUI to open
182
+ **Saved consolidation**. It flags results whose observed preferences have
183
+ changed. Failed or declined calls leave the last saved result intact.
184
+
156
185
  The viewer uses a minimal black-and-white palette and system monospace fonts.
157
186
  Light and dark appearance follow your system setting. Local edits, ratings,
158
187
  and session counts remain visible. Use **Refresh** after changing files and
@@ -201,14 +230,14 @@ then falls back in the order Claude → Codex → Kiro → OpenCode. Models are
201
230
  with `--model`; without it, the chosen CLI uses its configured default.
202
231
 
203
232
  ```bash
204
- npx human-hindsight export --source codex
205
- npx human-hindsight distill --source codex --runner codex
206
- npx human-hindsight distill --source claude --runner codex
207
- npx human-hindsight preferences --target codex # AGENTS.md; alias of --target agents
208
- npx human-hindsight export --source opencode
209
- npx human-hindsight distill --source opencode --runner opencode
210
- npx human-hindsight distill --source claude --runner opencode --model provider/model
211
- npx human-hindsight preferences --target opencode # AGENTS.md
233
+ npx human-hindsight@latest export --source codex
234
+ npx human-hindsight@latest distill --source codex --runner codex
235
+ npx human-hindsight@latest distill --source claude --runner codex
236
+ npx human-hindsight@latest preferences --target codex # AGENTS.md; alias of --target agents
237
+ npx human-hindsight@latest export --source opencode
238
+ npx human-hindsight@latest distill --source opencode --runner opencode
239
+ npx human-hindsight@latest distill --source claude --runner opencode --model provider/model
240
+ npx human-hindsight@latest preferences --target opencode # AGENTS.md
212
241
  ```
213
242
 
214
243
  `preferences --target claude|codex|kiro|opencode|agents` emits a `CLAUDE.md` block,
@@ -258,10 +287,10 @@ OpenCode preferences can go into the project's `AGENTS.md`, or the global
258
287
  ### Optional: keep more local history
259
288
 
260
289
  ```bash
261
- npx human-hindsight retention # read-only preview
262
- npx human-hindsight retention --apply # preview, then confirm
263
- npx human-hindsight retention --apply --yes # explicit opt-in for scripting
264
- npx human-hindsight retention --source codex --apply
290
+ npx human-hindsight@latest retention # read-only preview
291
+ npx human-hindsight@latest retention --apply # preview, then confirm
292
+ npx human-hindsight@latest retention --apply --yes # explicit opt-in for scripting
293
+ npx human-hindsight@latest retention --source codex --apply
265
294
  ```
266
295
 
267
296
  The default reviews existing tool directories. An explicit `--source` can
@@ -1,140 +1,6 @@
1
1
  Human Hindsight includes the following open-source libraries.
2
2
 
3
3
 
4
- ========================================================================
5
- @clack/prompts@1.7.0 — MIT
6
-
7
- MIT License
8
-
9
- MIT License Copyright (c) 2025-Present [Bombshell contributors](https://bomb.sh/team)
10
-
11
- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
16
-
17
-
18
- ========================================================================
19
- @clack/core@1.4.3 — MIT
20
-
21
- MIT License
22
-
23
- MIT License Copyright (c) 2025-Present [Bombshell contributors](https://bomb.sh/team)
24
-
25
- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
26
-
27
- The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
28
-
29
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
30
-
31
-
32
- ========================================================================
33
- fast-wrap-ansi@0.2.2 — MIT
34
-
35
- MIT License
36
-
37
- Copyright (c) 2025 James Garbutt
38
-
39
- Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
40
-
41
- Permission is hereby granted, free of charge, to any person obtaining a copy
42
- of this software and associated documentation files (the "Software"), to deal
43
- in the Software without restriction, including without limitation the rights
44
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
45
- copies of the Software, and to permit persons to whom the Software is
46
- furnished to do so, subject to the following conditions:
47
-
48
- The above copyright notice and this permission notice shall be included in all
49
- copies or substantial portions of the Software.
50
-
51
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
52
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
53
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
54
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
55
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
56
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
57
- SOFTWARE.
58
-
59
-
60
- ========================================================================
61
- fast-string-width@3.0.2 — MIT
62
-
63
- The MIT License (MIT)
64
-
65
- Copyright (c) 2024-present Fabio Spampinato
66
-
67
- Permission is hereby granted, free of charge, to any person obtaining a
68
- copy of this software and associated documentation files (the "Software"),
69
- to deal in the Software without restriction, including without limitation
70
- the rights to use, copy, modify, merge, publish, distribute, sublicense,
71
- and/or sell copies of the Software, and to permit persons to whom the
72
- Software is furnished to do so, subject to the following conditions:
73
-
74
- The above copyright notice and this permission notice shall be included in
75
- all copies or substantial portions of the Software.
76
-
77
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
78
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
79
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
80
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
81
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
82
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
83
- DEALINGS IN THE SOFTWARE.
84
-
85
-
86
- ========================================================================
87
- fast-string-truncated-width@3.0.3 — MIT
88
-
89
- The MIT License (MIT)
90
-
91
- Copyright (c) 2024-present Fabio Spampinato
92
-
93
- Permission is hereby granted, free of charge, to any person obtaining a
94
- copy of this software and associated documentation files (the "Software"),
95
- to deal in the Software without restriction, including without limitation
96
- the rights to use, copy, modify, merge, publish, distribute, sublicense,
97
- and/or sell copies of the Software, and to permit persons to whom the
98
- Software is furnished to do so, subject to the following conditions:
99
-
100
- The above copyright notice and this permission notice shall be included in
101
- all copies or substantial portions of the Software.
102
-
103
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
104
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
105
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
106
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
107
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
108
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
109
- DEALINGS IN THE SOFTWARE.
110
-
111
-
112
- ========================================================================
113
- sisteransi@1.0.5 — MIT
114
-
115
- MIT License
116
-
117
- Copyright (c) 2018 Terkel Gjervig Nielsen
118
-
119
- Permission is hereby granted, free of charge, to any person obtaining a copy
120
- of this software and associated documentation files (the "Software"), to deal
121
- in the Software without restriction, including without limitation the rights
122
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
123
- copies of the Software, and to permit persons to whom the Software is
124
- furnished to do so, subject to the following conditions:
125
-
126
- The above copyright notice and this permission notice shall be included in all
127
- copies or substantial portions of the Software.
128
-
129
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
130
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
131
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
132
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
133
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
134
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
135
- SOFTWARE.
136
-
137
-
138
4
  ========================================================================
139
5
  citty@0.2.2 — MIT
140
6