amenbo 0.1.5 → 0.2.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.
Files changed (52) hide show
  1. package/README.en.md +11 -1
  2. package/README.md +11 -1
  3. package/dist/cache.d.ts +31 -1
  4. package/dist/cache.js +67 -7
  5. package/dist/cache.js.map +1 -1
  6. package/dist/cli.d.ts +3 -1
  7. package/dist/cli.js +59 -4
  8. package/dist/cli.js.map +1 -1
  9. package/dist/core.d.ts +6 -0
  10. package/dist/core.js +125 -38
  11. package/dist/core.js.map +1 -1
  12. package/dist/diff.d.ts +1 -1
  13. package/dist/diff.js +29 -9
  14. package/dist/diff.js.map +1 -1
  15. package/dist/errors.d.ts +11 -0
  16. package/dist/errors.js +13 -0
  17. package/dist/errors.js.map +1 -1
  18. package/dist/extract/dataSources.js +17 -4
  19. package/dist/extract/dataSources.js.map +1 -1
  20. package/dist/extract/outline.js +15 -1
  21. package/dist/extract/outline.js.map +1 -1
  22. package/dist/extract/pdf.js +2 -2
  23. package/dist/extract/pruning.d.ts +4 -2
  24. package/dist/extract/pruning.js +36 -7
  25. package/dist/extract/pruning.js.map +1 -1
  26. package/dist/extract/qualityScore.d.ts +3 -2
  27. package/dist/extract/qualityScore.js +8 -3
  28. package/dist/extract/qualityScore.js.map +1 -1
  29. package/dist/fetcher/browser.js +15 -1
  30. package/dist/fetcher/browser.js.map +1 -1
  31. package/dist/fetcher/http.d.ts +11 -1
  32. package/dist/fetcher/http.js +6 -1
  33. package/dist/fetcher/http.js.map +1 -1
  34. package/dist/fetcher/index.d.ts +6 -0
  35. package/dist/fetcher/index.js +18 -13
  36. package/dist/fetcher/index.js.map +1 -1
  37. package/dist/installBrowser.d.ts +11 -0
  38. package/dist/installBrowser.js +30 -0
  39. package/dist/installBrowser.js.map +1 -0
  40. package/dist/links.d.ts +12 -0
  41. package/dist/links.js +32 -17
  42. package/dist/links.js.map +1 -1
  43. package/dist/politeness.d.ts +23 -3
  44. package/dist/politeness.js +27 -6
  45. package/dist/politeness.js.map +1 -1
  46. package/dist/screenshot.d.ts +2 -0
  47. package/dist/screenshot.js +14 -4
  48. package/dist/screenshot.js.map +1 -1
  49. package/dist/server.d.ts +2 -0
  50. package/dist/server.js +55 -26
  51. package/dist/server.js.map +1 -1
  52. package/package.json +3 -6
package/README.en.md CHANGED
@@ -37,7 +37,12 @@ For a measured comparison against similar tools (official fetch MCP / Jina Reade
37
37
 
38
38
  ```bash
39
39
  npm install -g amenbo
40
- # postinstall downloads Chromium (for SPA rendering & screenshots)
40
+ ```
41
+
42
+ That's enough for plain Markdown fetching (`fetch` / `links`). If you also want browser-based fetching — SPA escalation or screenshots — run this once (a ~170MB download the first time):
43
+
44
+ ```bash
45
+ npx -y amenbo install-browser
41
46
  ```
42
47
 
43
48
  Or for development:
@@ -165,6 +170,11 @@ Discovery order: sitemap → RSS/Atom → in-page links.
165
170
  - **SSRF protection**: rejects non-http/https schemes (`file:`, `ftp:`, etc.). Rejects DNS-resolved destinations that are private / loopback / link-local / reserved addresses. As a DNS rebinding (TOCTOU) countermeasure, actual connections are pinned to the validated IP
166
171
  - **Body size cap**: prevents OOM from oversized responses
167
172
 
173
+ ## Known limitations
174
+
175
+ - **No HTTP proxy support**: `HTTP_PROXY` / `HTTPS_PROXY` environment variables are not honored. As an SSRF countermeasure, connections are pinned to a validated IP (DNS rebinding protection), which is incompatible with delegating name resolution to an upstream proxy. Networks that require an upstream proxy are currently unsupported
176
+ - **No anti-bot circumvention**: fetch failures due to robots.txt denial or bot countermeasures are by design and reported as-is (see [Low impact on target sites](#low-impact-on-target-sites))
177
+
168
178
  ## Development
169
179
 
170
180
  ```bash
package/README.md CHANGED
@@ -37,7 +37,12 @@ amenbo(アメンボ / water strider)は、Claude Code や Codex のようなコ
37
37
 
38
38
  ```bash
39
39
  npm install -g amenbo
40
- # postinstall で Chromium が入ります(SPA描画・スクリーンショット用)
40
+ ```
41
+
42
+ Markdown 取得(通常の `fetch` / `links`)はこれだけで動きます。JS 描画が必要な SPA への昇格やスクリーンショットなど、ブラウザ(Chromium)経由の取得を使う場合のみ、初回に一度だけ実行してください(約 170MB のダウンロード):
43
+
44
+ ```bash
45
+ npx -y amenbo install-browser
41
46
  ```
42
47
 
43
48
  または開発用途:
@@ -160,6 +165,11 @@ sitemap → RSS/Atom → ページ内リンクの順で探索します。
160
165
  - **SSRF 対策**:http/https 以外のスキーム(`file:`, `ftp:` 等)を拒否。DNS 解決した接続先が private / loopback / link-local / 予約アドレスなら拒否。DNS rebinding(TOCTOU)対策として実接続を検証済み IP に固定します
161
166
  - **ボディサイズ上限**:巨大レスポンスによる OOM を防止
162
167
 
168
+ ## 既知の制限
169
+
170
+ - **HTTP プロキシ非対応**:`HTTP_PROXY` / `HTTPS_PROXY` 等の環境変数は尊重しません。SSRF 対策として接続先を検証済み IP に固定する設計(DNS rebinding 対策)と、プロキシへ名前解決を委ねる方式が両立しないためです。上流プロキシ必須のネットワークでは現状ご利用いただけません
171
+ - **anti-bot 回避は実装しません**:robots.txt 拒否やボット対策による取得失敗は仕様です。失敗はそのまま報告します([収集先への低負荷](#収集先への低負荷)参照)
172
+
163
173
  ## 開発
164
174
 
165
175
  ```bash
package/dist/cache.d.ts CHANGED
@@ -17,6 +17,7 @@ export interface CacheWriteInput {
17
17
  markdown: string;
18
18
  metadata: Record<string, unknown>;
19
19
  }
20
+ export declare function resolveCacheDir(): string;
20
21
  export declare function hashContent(content: string): string;
21
22
  /** スクリーンショットのキャッシュキー(url+撮影パラメータの組)を計算する。 */
22
23
  export declare function computeScreenshotCacheKey(url: string, width: number, scale: number, fullPage: boolean): string;
@@ -38,6 +39,7 @@ export declare class PageCache {
38
39
  private readonly cacheDir;
39
40
  private readonly ttlMs;
40
41
  private readonly now;
42
+ private closed;
41
43
  constructor(options?: {
42
44
  dbPath?: string;
43
45
  cacheDir?: string;
@@ -57,7 +59,16 @@ export declare class PageCache {
57
59
  }): boolean;
58
60
  /** 保存済みスクリーンショットエントリを取得する(TTL判定は isFresh を使う)。 */
59
61
  getScreenshot(cacheKey: string): ScreenshotCacheEntry | undefined;
60
- /** スクリーンショットのタイル群をファイル保存し、パスをSQLiteへ記録する。 */
62
+ /**
63
+ * スクリーンショットのタイル群をファイル保存し、パスをSQLiteへ記録する。
64
+ *
65
+ * レビュー指摘対応(Medium): 同一cacheKeyへの再撮影でタイル数が減った場合(旧5枚→新3枚)、
66
+ * 新しいtile_pathsで上書きされるDB行からは旧tile-3.png/tile-4.pngを参照できなくなり、
67
+ * pruneExpiredもそれらを認識できず孤立ファイルとしてディスクに残り続けていた。
68
+ * tileDirはcacheKey単位のディレクトリ(他のcacheKeyのタイルと混在しない)のため、
69
+ * 書き込み前にディレクトリごと削除してから作り直すことで、枚数が変化しても
70
+ * 旧タイルを確実に一掃する(初回撮影時はディレクトリが存在しないためforce:trueで無視する)。
71
+ */
61
72
  setScreenshot(input: ScreenshotWriteInput): ScreenshotCacheEntry;
62
73
  /** 新規取得結果を保存(既存があれば上書き)する。 */
63
74
  set(input: CacheWriteInput): CacheEntry;
@@ -86,5 +97,24 @@ export declare class PageCache {
86
97
  * store JSDoc参照)。せめて時刻が巻き戻らないよう、SQL側でMAXを取って単調増加を保証する。
87
98
  */
88
99
  setHostLastRequestAt(host: string, at: number): void;
100
+ /**
101
+ * レビュー指摘対応: オリジン(例 "https://example.com")のrobots.txtキャッシュを返す
102
+ * (未記録ならnull)。PolitenessManagerのrobotsStoreオプションとして注入し、プロセス間で
103
+ * robots.txt取得結果を共有するために使う。TTL判定(robotsTtlMs)は呼び出し元(PolitenessManager)
104
+ * がfetchedAtを見て行う(page cacheのttlMsとは別の時間軸のため、ここでは判定しない)。
105
+ * 空bodyのrobots.txt(=制限なし)も正しい取得結果として保存されるため、
106
+ * 「未記録(null)」と「空bodyの記録あり」は区別される。
107
+ */
108
+ getRobotsCache(origin: string): {
109
+ body: string;
110
+ fetchedAt: number;
111
+ } | null;
112
+ /** オリジンのrobots.txt取得結果(本文+取得時刻)を記録する。既存があれば上書きする。 */
113
+ setRobotsCache(origin: string, body: string, fetchedAt: number): void;
114
+ /**
115
+ * 冪等なclose。better-sqlite3のclose()は閉鎖済みでも安全だったが、node:sqliteは
116
+ * "database is not open" を投げるため、CLIのfinallyとprocess 'exit'ハンドラの両方から
117
+ * 呼ばれる二重close経路(core.ts参照)を自前のフラグで吸収する。
118
+ */
89
119
  close(): void;
90
120
  }
package/dist/cache.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * cache.ts — better-sqlite3によるURL単位のローカルキャッシュ。
2
+ * cache.ts — node:sqlite(DatabaseSync)によるURL単位のローカルキャッシュ。
3
3
  *
4
4
  * 保存場所: $AMENBO_CACHE_DIR または ~/.cache/amenbo/cache.sqlite
5
5
  * URL毎にETag/Last-Modified/本文ハッシュ/変換済みMarkdown/取得時刻を保存する。
@@ -21,17 +21,26 @@
21
21
  * 短時間に連続実行すると同一ドメインへの最小間隔が守られない。host_requests テーブルへ
22
22
  * 最終リクエスト時刻を永続化し、PolitenessManagerのstoreオプションとして注入することで
23
23
  * MCPサーバー/CLIの複数プロセス間で共有する(再起動直後の連続アクセスも守れる副次効果あり)。
24
- * journal_mode=WAL は複数プロセスからの同時アクセスを想定して設定している。
24
+ * 同じ理由でrobots.txtの取得結果もrobots_cache テーブルへ永続化し、PolitenessManagerの
25
+ * robotsStoreオプションとして注入する(CLIでの複数ページ一括収集時にコマンド毎の
26
+ * robots.txt再取得を防ぐ)。journal_mode=WAL は複数プロセスからの同時アクセスを想定して設定している。
27
+ *
28
+ * node:sqliteの制約: better-sqlite3はNumber.MAX_SAFE_INTEGERを超えるINTEGER列を読むと
29
+ * 例外を投げたが、node:sqliteは黙ってbigintを返す(上流の挙動差)。本ファイルの整数列
30
+ * (fetched_at/last_request_at)は全てDate.now()由来でMAX_SAFE_INTEGERを超えないため、
31
+ * number型へのキャストのみで安全に扱える。
25
32
  */
26
33
  import { createHash } from "node:crypto";
27
34
  import { existsSync, mkdirSync, rmSync, writeFileSync } from "node:fs";
28
35
  import { homedir } from "node:os";
29
36
  import { join } from "node:path";
30
- import Database from "better-sqlite3";
37
+ import { DatabaseSync } from "node:sqlite";
31
38
  const DEFAULT_TTL_MS = 15 * 60 * 1000; // 15分
32
39
  /** Phase 4テンプレート学習: 定型ブロック判定に使う「直近ページ数」の既定値。 */
33
40
  const DEFAULT_TEMPLATE_RECENT_PAGES = 3;
34
- function resolveCacheDir() {
41
+ // レビュー指摘対応: cli.ts(fetch画像の保存先)がキャッシュディレクトリ解決ロジックを
42
+ // 再利用できるようexportする(AMENBO_CACHE_DIR未指定時の既定値~/.cache/amenboとのずれを防ぐ)。
43
+ export function resolveCacheDir() {
35
44
  const dir = process.env.AMENBO_CACHE_DIR ?? join(homedir(), ".cache", "amenbo");
36
45
  if (!existsSync(dir)) {
37
46
  mkdirSync(dir, { recursive: true });
@@ -50,15 +59,16 @@ export class PageCache {
50
59
  cacheDir;
51
60
  ttlMs;
52
61
  now;
62
+ closed = false;
53
63
  constructor(options = {}) {
54
64
  this.cacheDir = options.cacheDir ?? resolveCacheDir();
55
65
  if (!existsSync(this.cacheDir)) {
56
66
  mkdirSync(this.cacheDir, { recursive: true });
57
67
  }
58
- this.db = new Database(options.dbPath ?? join(this.cacheDir, "cache.sqlite"));
68
+ this.db = new DatabaseSync(options.dbPath ?? join(this.cacheDir, "cache.sqlite"));
59
69
  this.ttlMs = options.ttlMs ?? DEFAULT_TTL_MS;
60
70
  this.now = options.now ?? Date.now;
61
- this.db.pragma("journal_mode = WAL");
71
+ this.db.exec("PRAGMA journal_mode = WAL");
62
72
  this.db.exec(`
63
73
  CREATE TABLE IF NOT EXISTS pages (
64
74
  url TEXT PRIMARY KEY,
@@ -94,6 +104,16 @@ export class PageCache {
94
104
  host TEXT PRIMARY KEY,
95
105
  last_request_at INTEGER NOT NULL
96
106
  )
107
+ `);
108
+ // レビュー指摘対応: robots.txtの取得結果をhost_requestsと同じ考え方でプロセス間共有する。
109
+ // CLIバルク収集(1コマンド=1プロセス)で、コマンド毎にrobots.txtを再取得してしまう
110
+ // 低負荷原則違反への対応(PolitenessManagerのrobotsStoreオプションとして注入する)。
111
+ this.db.exec(`
112
+ CREATE TABLE IF NOT EXISTS robots_cache (
113
+ origin TEXT PRIMARY KEY,
114
+ body TEXT NOT NULL,
115
+ fetched_at INTEGER NOT NULL
116
+ )
97
117
  `);
98
118
  // M3: TTL超過削除・サイズ上限が無くディスクが無制限に増加する問題への対応。
99
119
  // 起動(コンストラクタ)のたびにTTL超過エントリを掃除する。
@@ -156,9 +176,19 @@ export class PageCache {
156
176
  fetchedAt: row.fetched_at,
157
177
  };
158
178
  }
159
- /** スクリーンショットのタイル群をファイル保存し、パスをSQLiteへ記録する。 */
179
+ /**
180
+ * スクリーンショットのタイル群をファイル保存し、パスをSQLiteへ記録する。
181
+ *
182
+ * レビュー指摘対応(Medium): 同一cacheKeyへの再撮影でタイル数が減った場合(旧5枚→新3枚)、
183
+ * 新しいtile_pathsで上書きされるDB行からは旧tile-3.png/tile-4.pngを参照できなくなり、
184
+ * pruneExpiredもそれらを認識できず孤立ファイルとしてディスクに残り続けていた。
185
+ * tileDirはcacheKey単位のディレクトリ(他のcacheKeyのタイルと混在しない)のため、
186
+ * 書き込み前にディレクトリごと削除してから作り直すことで、枚数が変化しても
187
+ * 旧タイルを確実に一掃する(初回撮影時はディレクトリが存在しないためforce:trueで無視する)。
188
+ */
160
189
  setScreenshot(input) {
161
190
  const tileDir = join(this.cacheDir, "screenshots", input.cacheKey);
191
+ rmSync(tileDir, { recursive: true, force: true });
162
192
  mkdirSync(tileDir, { recursive: true });
163
193
  const tilePaths = input.tiles.map((buffer, index) => {
164
194
  const filePath = join(tileDir, `tile-${index}.png`);
@@ -279,7 +309,37 @@ export class PageCache {
279
309
  ON CONFLICT(host) DO UPDATE SET last_request_at = MAX(last_request_at, excluded.last_request_at)`)
280
310
  .run({ host, lastRequestAt: at });
281
311
  }
312
+ /**
313
+ * レビュー指摘対応: オリジン(例 "https://example.com")のrobots.txtキャッシュを返す
314
+ * (未記録ならnull)。PolitenessManagerのrobotsStoreオプションとして注入し、プロセス間で
315
+ * robots.txt取得結果を共有するために使う。TTL判定(robotsTtlMs)は呼び出し元(PolitenessManager)
316
+ * がfetchedAtを見て行う(page cacheのttlMsとは別の時間軸のため、ここでは判定しない)。
317
+ * 空bodyのrobots.txt(=制限なし)も正しい取得結果として保存されるため、
318
+ * 「未記録(null)」と「空bodyの記録あり」は区別される。
319
+ */
320
+ getRobotsCache(origin) {
321
+ const row = this.db.prepare("SELECT * FROM robots_cache WHERE origin = ?").get(origin);
322
+ return row ? { body: row.body, fetchedAt: row.fetched_at } : null;
323
+ }
324
+ /** オリジンのrobots.txt取得結果(本文+取得時刻)を記録する。既存があれば上書きする。 */
325
+ setRobotsCache(origin, body, fetchedAt) {
326
+ this.db
327
+ .prepare(`INSERT INTO robots_cache (origin, body, fetched_at)
328
+ VALUES (@origin, @body, @fetchedAt)
329
+ ON CONFLICT(origin) DO UPDATE SET
330
+ body = excluded.body,
331
+ fetched_at = excluded.fetched_at`)
332
+ .run({ origin, body, fetchedAt });
333
+ }
334
+ /**
335
+ * 冪等なclose。better-sqlite3のclose()は閉鎖済みでも安全だったが、node:sqliteは
336
+ * "database is not open" を投げるため、CLIのfinallyとprocess 'exit'ハンドラの両方から
337
+ * 呼ばれる二重close経路(core.ts参照)を自前のフラグで吸収する。
338
+ */
282
339
  close() {
340
+ if (this.closed)
341
+ return;
342
+ this.closed = true;
283
343
  this.db.close();
284
344
  }
285
345
  }
package/dist/cache.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts CHANGED
@@ -11,7 +11,9 @@ export type ParsedCommand = {
11
11
  kind: "version";
12
12
  } | {
13
13
  kind: "help";
14
- topic?: "fetch" | "links" | "screenshot";
14
+ topic?: "fetch" | "links" | "screenshot" | "install-browser";
15
+ } | {
16
+ kind: "install-browser";
15
17
  } | ParsedFetchCommand | ParsedLinksCommand | ParsedScreenshotCommand;
16
18
  export interface ParsedFetchCommand {
17
19
  kind: "fetch";
package/dist/cli.js CHANGED
@@ -8,6 +8,8 @@
8
8
  * - `amenbo fetch/links/screenshot <url> [options]` は対応するcore.tsのハンドラを呼び、
9
9
  * TextBlockはそのまま標準出力へ、ImageBlock(スクリーンショット/スキャンPDF画像)は
10
10
  * --out-dir配下へファイル保存しパスを列挙する(エージェント/ユーザーがそのまま開けるように)。
11
+ * - `amenbo install-browser` はChromium遅延化(postinstall廃止)対応で追加したコマンド。
12
+ * core.tsは経由せず、installBrowser.tsが同梱playwrightのCLIをspawnする。
11
13
  * - 引数パース(parseCliArgs)は純関数として切り出し、ユニットテストできるようにしている。
12
14
  * - キャッシュ・差分応答・レート制御の状態はMCPサーバーと同じ ~/.cache/amenbo (cache.ts)を
13
15
  * 共有する。CLIは1コマンド=1プロセスのため、politenessのドメイン毎レート制御は
@@ -17,10 +19,13 @@ import { mkdirSync, realpathSync, writeFileSync } from "node:fs";
17
19
  import { join } from "node:path";
18
20
  import { parseArgs } from "node:util";
19
21
  import { fileURLToPath } from "node:url";
22
+ import { resolveCacheDir } from "./cache.js";
20
23
  import { cache, formatLinksResponse, handleFetchTool, handleScreenshotTool, politeness, resolvePackageVersion, } from "./core.js";
21
24
  import { AmenboError } from "./errors.js";
22
25
  import { closeBrowser } from "./fetcher/browser.js";
26
+ import { installBrowser } from "./installBrowser.js";
23
27
  import { discoverLinks } from "./links.js";
28
+ import { MAX_SCALE, MIN_SCALE } from "./screenshot.js";
24
29
  import { runServer } from "./server.js";
25
30
  // ---- 引数パース(純関数。ユニットテスト対象) ----
26
31
  /** 引数の使い方が不正な場合に投げる(cli.ts側でusageを表示しexit code 2にする)。 */
@@ -41,6 +46,18 @@ function parsePositiveFloat(raw, flag) {
41
46
  }
42
47
  return n;
43
48
  }
49
+ /**
50
+ * レビュー指摘対応(Low): --scaleはparsePositiveFloatを通すだけで[0.5,1.0]範囲を検証しておらず、
51
+ * `--scale 3.0`のような範囲外値がscreenshot.ts clampScaleで黙って1.0にクランプされていた。
52
+ * MCP側はzod .min(0.5).max(1.0)で明示的にエラーになるため、CLIも同じ強度の検証で揃える。
53
+ */
54
+ function parseScreenshotScale(raw) {
55
+ const n = parsePositiveFloat(raw, "--scale");
56
+ if (n < MIN_SCALE || n > MAX_SCALE) {
57
+ throw new CliUsageError(`--scaleは${MIN_SCALE}〜${MAX_SCALE}の範囲で指定してください: ${raw}`);
58
+ }
59
+ return n;
60
+ }
44
61
  function requireUrl(positionals, command) {
45
62
  const url = positionals[0];
46
63
  if (!url) {
@@ -122,10 +139,19 @@ function parseScreenshotArgs(args) {
122
139
  url,
123
140
  ...(values["viewport-only"] ? { viewportOnly: true } : {}),
124
141
  ...(values.width !== undefined ? { width: parsePositiveInt(values.width, "--width") } : {}),
125
- ...(values.scale !== undefined ? { scale: parsePositiveFloat(values.scale, "--scale") } : {}),
142
+ ...(values.scale !== undefined ? { scale: parseScreenshotScale(values.scale) } : {}),
126
143
  ...(values["out-dir"] !== undefined ? { outDir: values["out-dir"] } : {}),
127
144
  };
128
145
  }
146
+ function parseInstallBrowserArgs(args) {
147
+ const { values, positionals } = safeParseArgs(args, "install-browser", { help: { type: "boolean", short: "h" } });
148
+ if (values.help)
149
+ return { kind: "help", topic: "install-browser" };
150
+ if (positionals.length > 0) {
151
+ throw new CliUsageError(`install-browser: 不明な引数です: ${positionals[0]}`);
152
+ }
153
+ return { kind: "install-browser" };
154
+ }
129
155
  /** CLI引数(process.argv.slice(2)相当)をコマンドへパースする純関数。 */
130
156
  export function parseCliArgs(argv) {
131
157
  if (argv.length === 0)
@@ -143,6 +169,8 @@ export function parseCliArgs(argv) {
143
169
  return parseLinksArgs(rest);
144
170
  if (first === "screenshot")
145
171
  return parseScreenshotArgs(rest);
172
+ if (first === "install-browser")
173
+ return parseInstallBrowserArgs(rest);
146
174
  throw new CliUsageError(`不明なコマンドです: ${first}`);
147
175
  }
148
176
  // ---- ヘルプ/usage文言 ----
@@ -155,6 +183,7 @@ function usageText() {
155
183
  " fetch <url> [options] ページをMarkdownとして取得する",
156
184
  " links <url> [options] ページ内のリンクを列挙する(sitemap/RSS優先)",
157
185
  " screenshot <url> [options] ページのスクリーンショットを撮影する",
186
+ " install-browser スクリーンショット/SPA取得に必要なChromiumをインストールする(初回のみ)",
158
187
  "",
159
188
  "Options:",
160
189
  " -h, --help ヘルプを表示する",
@@ -174,7 +203,7 @@ function fetchHelpText() {
174
203
  " --page <n> ページ番号(既定 1)",
175
204
  " --max-tokens <n> 1ページの概算トークン上限(既定 8000)",
176
205
  " --force-full 差分応答(unchanged/diff)と定型ブロック除去を無効化し常に全文を返す",
177
- " --out-dir <dir> screenshot切替時の画像保存先(既定 カレントディレクトリ)",
206
+ " --out-dir <dir> screenshot切替時の画像保存先(既定 $AMENBO_CACHE_DIR/screenshots-cli/、未設定時は ~/.cache/amenbo/screenshots-cli/)",
178
207
  ].join("\n");
179
208
  }
180
209
  function linksHelpText() {
@@ -187,10 +216,20 @@ function screenshotHelpText() {
187
216
  "Options:",
188
217
  " --viewport-only 最初のビューポート分のみ撮影する(既定はfullPage)",
189
218
  " --width <n> タイル幅px(既定 1280)",
190
- " --scale <x> 解像度スケール(既定 1.0)。小さいほど画像トークンが減る",
219
+ " --scale <x> 解像度スケール(0.5〜1.0、既定 1.0)。小さいほど画像トークンが減る",
191
220
  " --out-dir <dir> 画像保存先(既定 カレントディレクトリ)",
192
221
  ].join("\n");
193
222
  }
223
+ function installBrowserHelpText() {
224
+ return [
225
+ "amenbo install-browser",
226
+ "",
227
+ "スクリーンショット撮影やSPA(JavaScriptレンダリング必須)ページの取得に必要なChromiumを",
228
+ "インストールする(初回のみ、約170MBのダウンロード)。通常のHTTP取得(fetch/linksの大半)は",
229
+ "この操作なしで動作する。amenboに同梱されたバージョンのplaywright CLIを使うため、",
230
+ "バージョン不一致は起こらない。",
231
+ ].join("\n");
232
+ }
194
233
  function helpText(topic) {
195
234
  if (topic === "fetch")
196
235
  return fetchHelpText();
@@ -198,9 +237,22 @@ function helpText(topic) {
198
237
  return linksHelpText();
199
238
  if (topic === "screenshot")
200
239
  return screenshotHelpText();
240
+ if (topic === "install-browser")
241
+ return installBrowserHelpText();
201
242
  return usageText();
202
243
  }
203
244
  // ---- 出力(TextBlockはstdout、ImageBlockはファイル保存) ----
245
+ /**
246
+ * レビュー指摘対応(Medium・ユーザー確定仕様): `amenbo fetch`(mode auto)が品質低下でscreenshotへ
247
+ * 自動切替した場合の画像既定保存先。以前はoutDir未指定時にprocess.cwd()を使っており、
248
+ * リポジトリ直下等カレントディレクトリを黙って汚していた。cache.tsのキャッシュディレクトリ
249
+ * 解決ロジック(AMENBO_CACHE_DIR ?? ~/.cache/amenbo)を再利用し、その配下のscreenshots-cli/へ
250
+ * 保存する(実撮影キャッシュのscreenshots/とは別ディレクトリ)。screenshotサブコマンドは
251
+ * 明示的な視覚確認用途のため対象外(--out-dir未指定時は従来通りcwd)。
252
+ */
253
+ function resolveFetchScreenshotDir() {
254
+ return join(resolveCacheDir(), "screenshots-cli");
255
+ }
204
256
  /** ファイル名として安全なホスト名(取れなければ"page")。amenbo-<hostname>-<連番>.pngの命名に使う。 */
205
257
  function hostnameForFilename(url) {
206
258
  try {
@@ -246,7 +298,7 @@ async function dispatch(command) {
246
298
  ...(command.forceFull !== undefined ? { force_full: command.forceFull } : {}),
247
299
  };
248
300
  const blocks = await handleFetchTool(input);
249
- writeBlocks(blocks, command.url, command.outDir ?? process.cwd());
301
+ writeBlocks(blocks, command.url, command.outDir ?? resolveFetchScreenshotDir());
250
302
  return;
251
303
  }
252
304
  if (command.kind === "links") {
@@ -291,6 +343,9 @@ export async function run(argv) {
291
343
  return 0;
292
344
  }
293
345
  try {
346
+ if (command.kind === "install-browser") {
347
+ return await installBrowser();
348
+ }
294
349
  await dispatch(command);
295
350
  return 0;
296
351
  }
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/dist/core.d.ts CHANGED
@@ -8,6 +8,8 @@ export declare function resolvePackageVersion(): string;
8
8
  export declare function resolveCacheTtlMs(): number | undefined;
9
9
  export declare const cache: PageCache;
10
10
  export declare const politeness: PolitenessManager;
11
+ /** サーバー常駐プロセス向けの終了処理(exit/SIGINT/SIGTERM)を登録する。多重登録は行わない(冪等)。 */
12
+ export declare function registerCoreShutdownHandlers(): void;
11
13
  interface ScreenshotTileData {
12
14
  data: Buffer;
13
15
  }
@@ -66,6 +68,8 @@ export interface FetchToolInput {
66
68
  page?: number | undefined;
67
69
  max_tokens?: number | undefined;
68
70
  force_full?: boolean | undefined;
71
+ /** MCP progress notifications用(server.tsがprogressToken有無に応じて組み立てて渡す。CLIは渡さない)。 */
72
+ onProgress?: ((message: string) => void) | undefined;
69
73
  }
70
74
  export declare function handleFetchTool(input: FetchToolInput): Promise<Array<TextBlock | ImageBlock>>;
71
75
  export interface ScreenshotToolInput {
@@ -73,6 +77,8 @@ export interface ScreenshotToolInput {
73
77
  fullPage?: boolean | undefined;
74
78
  width?: number | undefined;
75
79
  scale?: number | undefined;
80
+ /** MCP progress notifications用(server.tsがprogressToken有無に応じて組み立てて渡す)。 */
81
+ onProgress?: ((message: string) => void) | undefined;
76
82
  }
77
83
  export declare function handleScreenshotTool(input: ScreenshotToolInput): Promise<Array<TextBlock | ImageBlock>>;
78
84
  export {};