@jarkkojs/readseek 0.7.9 → 0.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.
Files changed (2) hide show
  1. package/README.md +24 -22
  2. package/package.json +5 -5
package/README.md CHANGED
@@ -1,8 +1,14 @@
1
1
  # readseek
2
2
 
3
+ <img alt="Screencast of readseek captioning an image" src="screencast.gif" width="1024">
4
+
5
+
3
6
  `readseek` reads source files and PDFs for scripts, editors, and coding agents.
4
- It returns compact JSON with stable line/hash anchors, symbol maps, parse diagnostics,
5
- AST matches, references, and rename plans.
7
+ It returns compact JSON with stable line/hash anchors, symbol maps, parse
8
+ diagnostics, AST matches, references, and rename plans.
9
+
10
+ The screencast above was recorded with a very modest AMD Ryzen 5 PRO 4650 laptop
11
+ CPU, and demonstrates the tailored inference engine for Qwen3-VL-2B.
6
12
 
7
13
  ## Installation
8
14
 
@@ -53,7 +59,7 @@ tools to OpenCode. Add it to `opencode.json`:
53
59
 
54
60
  The bundled `readseek.vim` plugin provides anchored reads, structural navigation,
55
61
  parse diagnostics, search, references, and renames. It requires Vim9 with `+job`,
56
- `+channel`, `+popupwin`, and `+textprop`; Neovim is not supported.
62
+ `+channel`, `+timers`, `+popupwin`, and `+textprop`; Neovim is not supported.
57
63
 
58
64
  Install it with a Vim plugin manager, such as `Plug 'jarkkojs/readseek'`, then run
59
65
  `:ReadSeekInstall` to install the matching prebuilt binary. Downloads are explicit
@@ -93,38 +99,34 @@ printf '%s\n' 'fn main() {}' | readseek identify stdin:scratch.rs:1 --column 4
93
99
  ## Images and PDFs
94
100
 
95
101
  `detect` reports image metadata and PDF page counts. `read` returns bounded base64
96
- images by default; select local analysis with `--image`:
102
+ images by default; select local analysis with `--vision-mode`:
97
103
 
98
104
  ```sh
99
- readseek read photo.jpg # default: bounded base64 image
100
- readseek read photo.jpg --image caption # detailed natural-language caption
101
- readseek read photo.jpg --image objects # object labels + bounding boxes
102
- readseek read photo.jpg --image ocr # extracted text
103
- readseek read photo.jpg --image all # caption, objects, and OCR in one pass
105
+ readseek read photo.jpg # default: bounded base64 image
106
+ readseek read photo.jpg --vision-mode caption # detailed natural-language caption
107
+ readseek read photo.jpg --vision-mode objects # object labels + bounding boxes
108
+ readseek read photo.jpg --vision-mode ocr # extracted text
109
+ readseek read photo.jpg --vision-mode all # caption, objects, and OCR in one pass
104
110
  ```
105
111
 
106
- Vision analysis uses the `balanced` profile by default. Choose `fast` for lower
107
- latency or `accurate` for dense OCR and small objects:
112
+ Vision analysis uses the `low` level by default. Start at `low`, then increase to
113
+ `medium` or `high` only when additional detail is needed:
108
114
 
109
115
  ```sh
110
- readseek read photo.jpg --image caption --vision-profile fast
111
- readseek read scan.png --image ocr --vision-profile accurate
116
+ readseek read photo.jpg --vision-mode caption --vision-level low
117
+ readseek read scan.png --vision-mode ocr --vision-level high
112
118
  ```
113
119
 
114
- `--vision-diagnostics` writes cache status, devices, token counts, timings,
115
- throughput, and peak RSS as JSON to stderr. `--vision-benchmark N` runs one warmup
116
- and `N` measured iterations for an image file:
120
+ Set `RUST_LOG=tracing` to emit vision cache and inference traces on standard error.
117
121
 
118
- ```sh
119
- readseek read fixture.png --image all --vision-benchmark 5 \
120
- >result.json 2>benchmark.json
121
- ```
122
+ Run `cargo bench --features vision-bench --bench vision` for data-driven comparisons
123
+ defined in `benches/vision.txt`.
122
124
 
123
125
  Set `READSEEK_VISION_THREADS` to a positive integer to override Rayon's worker
124
126
  count. More workers may improve throughput at the cost of CPU and memory.
125
127
 
126
128
  PDF reads return page-tagged Markdown and embedded images. Use `--page` to select a
127
- page; `--image` applies to each embedded image. After `readseek init`, `view` creates
129
+ page; `--vision-mode` applies to each embedded image. After `readseek init`, `view` creates
128
130
  or reuses a structural PDF index that can be narrowed by page, node, kind, or depth.
129
131
  Line/hash suffixes, `--end`, `--limit`, and `--language` do not apply to visual files.
130
132
 
@@ -138,7 +140,7 @@ can be slow.
138
140
  Map-dependent commands update them on demand and find `.readseek/` by walking up
139
141
  from the target; `--readseek-dir` selects one explicitly. PDF indexes and extracted
140
142
  assets live in `.readseek/documents/`, while image analysis results are cached under
141
- `.readseek/vision/`. Image cache entries are profile-specific.
143
+ `.readseek/vision/`. Image cache entries are level-specific.
142
144
 
143
145
  ## Documentation
144
146
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jarkkojs/readseek",
3
- "version": "0.7.9",
3
+ "version": "0.8.1",
4
4
  "description": "A structural read command",
5
5
  "license": "Apache-2.0 AND LGPL-2.1-or-later",
6
6
  "homepage": "https://github.com/jarkkojs/readseek#readme",
@@ -21,10 +21,10 @@
21
21
  "LICENSE-LGPL-2.1"
22
22
  ],
23
23
  "optionalDependencies": {
24
- "@jarkkojs/readseek-darwin-arm64": "0.7.9",
25
- "@jarkkojs/readseek-linux-arm64": "0.7.9",
26
- "@jarkkojs/readseek-linux-x64": "0.7.9",
27
- "@jarkkojs/readseek-win32-x64": "0.7.9"
24
+ "@jarkkojs/readseek-darwin-arm64": "0.8.1",
25
+ "@jarkkojs/readseek-linux-arm64": "0.8.1",
26
+ "@jarkkojs/readseek-linux-x64": "0.8.1",
27
+ "@jarkkojs/readseek-win32-x64": "0.8.1"
28
28
  },
29
29
  "publishConfig": {
30
30
  "access": "public"