webforai 2.1.1 → 4.0.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 (203) hide show
  1. package/README.md +86 -4
  2. package/dist/adapters/index.js +58 -0
  3. package/dist/adapters/registry.js +149 -0
  4. package/dist/adapters/sites/declarative.js +178 -0
  5. package/dist/adapters/sites/hackernews.js +94 -0
  6. package/dist/adapters/sites/youtube.js +165 -0
  7. package/dist/adapters/types.js +0 -0
  8. package/dist/bin.js +4142 -549
  9. package/dist/cjs/adapters/index.js +86 -0
  10. package/dist/cjs/adapters/registry.js +178 -0
  11. package/dist/cjs/adapters/sites/declarative.js +202 -0
  12. package/dist/cjs/adapters/sites/hackernews.js +117 -0
  13. package/dist/cjs/adapters/sites/youtube.js +191 -0
  14. package/dist/cjs/adapters/types.js +16 -0
  15. package/dist/cjs/constants.js +2 -2
  16. package/dist/cjs/detect-client-shell.js +78 -0
  17. package/dist/cjs/extract-meta-refresh.js +71 -0
  18. package/dist/cjs/extractors/index.js +5 -0
  19. package/dist/cjs/extractors/lib/constants.js +186 -0
  20. package/dist/cjs/extractors/lib/sanitize.js +429 -0
  21. package/dist/cjs/extractors/lib/score.js +264 -0
  22. package/dist/cjs/extractors/lib/terminators.js +131 -0
  23. package/dist/cjs/extractors/lib/ui-chrome.js +119 -0
  24. package/dist/cjs/extractors/pipeExtractors.js +12 -9
  25. package/dist/cjs/extractors/presets/auto.js +44 -0
  26. package/dist/cjs/extractors/presets/minimal-filter.js +27 -48
  27. package/dist/cjs/extractors/presets/takumi.js +84 -122
  28. package/dist/cjs/html-to-markdown.js +44 -7
  29. package/dist/cjs/html-to-mdast.js +10 -1
  30. package/dist/cjs/index.js +43 -2
  31. package/dist/cjs/link-replacer.js +19 -13
  32. package/dist/cjs/loaders/cf-puppeteer.js +14 -7
  33. package/dist/cjs/loaders/fetch.js +14 -2
  34. package/dist/cjs/loaders/playwright.js +32 -30
  35. package/dist/cjs/loaders/puppeteer.js +14 -7
  36. package/dist/cjs/md-splitter.js +24 -11
  37. package/dist/cjs/mdast-handlers/custom-a-handler.js +25 -9
  38. package/dist/cjs/mdast-handlers/custom-code-handler.js +18 -7
  39. package/dist/cjs/mdast-handlers/custom-div-handler.js +12 -33
  40. package/dist/cjs/mdast-handlers/custom-img-handler.js +23 -1
  41. package/dist/cjs/mdast-handlers/custom-table-handler.js +16 -0
  42. package/dist/cjs/mdast-handlers/definition-list-handler.js +110 -0
  43. package/dist/cjs/mdast-handlers/math-handler.js +12 -3
  44. package/dist/cjs/mdast-handlers/sup-sub-handler.js +39 -0
  45. package/dist/cjs/mdast-to-markdown.js +2 -5
  46. package/dist/cjs/metadata/index.js +223 -0
  47. package/dist/cjs/normalize/index.js +177 -0
  48. package/dist/cjs/platform/client.js +204 -0
  49. package/dist/cjs/platform/error.js +36 -0
  50. package/dist/cjs/platform/fetch.js +37 -0
  51. package/dist/cjs/platform/index.js +44 -0
  52. package/dist/cjs/platform/types.js +40 -0
  53. package/dist/cjs/utils/hast-fast.js +284 -0
  54. package/dist/constants.js +2 -2
  55. package/dist/detect-client-shell.js +53 -0
  56. package/dist/extract-meta-refresh.js +47 -0
  57. package/dist/extractors/index.js +3 -0
  58. package/dist/extractors/lib/constants.js +150 -0
  59. package/dist/extractors/lib/sanitize.js +419 -0
  60. package/dist/extractors/lib/score.js +242 -0
  61. package/dist/extractors/lib/terminators.js +107 -0
  62. package/dist/extractors/lib/ui-chrome.js +96 -0
  63. package/dist/extractors/pipeExtractors.js +12 -9
  64. package/dist/extractors/presets/auto.js +20 -0
  65. package/dist/extractors/presets/minimal-filter.js +35 -47
  66. package/dist/extractors/presets/takumi.js +91 -122
  67. package/dist/html-to-markdown.js +42 -6
  68. package/dist/html-to-mdast.js +10 -1
  69. package/dist/index.js +45 -2
  70. package/dist/link-replacer.js +19 -13
  71. package/dist/loaders/cf-puppeteer.js +15 -8
  72. package/dist/loaders/fetch.js +14 -2
  73. package/dist/loaders/playwright.js +32 -30
  74. package/dist/loaders/puppeteer.js +15 -8
  75. package/dist/md-splitter.js +24 -11
  76. package/dist/mdast-handlers/custom-a-handler.js +25 -9
  77. package/dist/mdast-handlers/custom-code-handler.js +17 -7
  78. package/dist/mdast-handlers/custom-div-handler.js +12 -33
  79. package/dist/mdast-handlers/custom-img-handler.js +23 -1
  80. package/dist/mdast-handlers/custom-table-handler.js +16 -0
  81. package/dist/mdast-handlers/definition-list-handler.js +87 -0
  82. package/dist/mdast-handlers/math-handler.js +12 -3
  83. package/dist/mdast-handlers/sup-sub-handler.js +16 -0
  84. package/dist/mdast-to-markdown.js +2 -5
  85. package/dist/metadata/index.js +198 -0
  86. package/dist/normalize/index.js +159 -0
  87. package/dist/platform/client.js +182 -0
  88. package/dist/platform/error.js +13 -0
  89. package/dist/platform/fetch.js +14 -0
  90. package/dist/platform/index.js +23 -0
  91. package/dist/platform/types.js +13 -0
  92. package/dist/types/adapters/index.d.ts +24 -0
  93. package/dist/types/adapters/index.js.map +1 -0
  94. package/dist/types/adapters/registry.d.ts +35 -0
  95. package/dist/types/adapters/registry.js.map +1 -0
  96. package/dist/types/adapters/sites/declarative.d.ts +13 -0
  97. package/dist/types/adapters/sites/declarative.js.map +1 -0
  98. package/dist/types/adapters/sites/hackernews.d.ts +13 -0
  99. package/dist/types/adapters/sites/hackernews.js.map +1 -0
  100. package/dist/types/adapters/sites/youtube.d.ts +31 -0
  101. package/dist/types/adapters/sites/youtube.js.map +1 -0
  102. package/dist/types/adapters/types.d.ts +99 -0
  103. package/dist/types/adapters/types.js.map +1 -0
  104. package/dist/types/cli/bin.js.map +1 -1
  105. package/dist/types/cli/commands/jobs/files.d.ts +28 -0
  106. package/dist/types/cli/commands/jobs/files.js.map +1 -0
  107. package/dist/types/cli/commands/jobs/llms-txt.d.ts +33 -0
  108. package/dist/types/cli/commands/jobs/llms-txt.js.map +1 -0
  109. package/dist/types/cli/commands/jobs/options.d.ts +58 -0
  110. package/dist/types/cli/commands/jobs/options.js.map +1 -0
  111. package/dist/types/cli/commands/jobs/run.d.ts +44 -0
  112. package/dist/types/cli/commands/jobs/run.js.map +1 -0
  113. package/dist/types/cli/commands/skill/content.d.ts +9 -0
  114. package/dist/types/cli/commands/skill/content.js.map +1 -0
  115. package/dist/types/cli/commands/skill/index.d.ts +19 -0
  116. package/dist/types/cli/commands/skill/index.js.map +1 -0
  117. package/dist/types/cli/commands/webforai/interactive.d.ts +7 -0
  118. package/dist/types/cli/commands/webforai/interactive.js.map +1 -0
  119. package/dist/types/cli/commands/webforai/loadHtml.js.map +1 -1
  120. package/dist/types/cli/commands/webforai/options.d.ts +62 -0
  121. package/dist/types/cli/commands/webforai/options.js.map +1 -0
  122. package/dist/types/cli/commands/webforai/run.d.ts +10 -0
  123. package/dist/types/cli/commands/webforai/run.js.map +1 -0
  124. package/dist/types/cli/constants.d.ts +14 -4
  125. package/dist/types/cli/constants.js.map +1 -1
  126. package/dist/types/cli/helpers/selectExtractMode.js.map +1 -1
  127. package/dist/types/cli/helpers/selectLoader.js.map +1 -1
  128. package/dist/types/cli/utils.d.ts +8 -1
  129. package/dist/types/cli/utils.js.map +1 -1
  130. package/dist/types/constants.d.ts +7 -1
  131. package/dist/types/constants.js.map +1 -1
  132. package/dist/types/detect-client-shell.d.ts +24 -0
  133. package/dist/types/detect-client-shell.js.map +1 -0
  134. package/dist/types/extract-meta-refresh.d.ts +29 -0
  135. package/dist/types/extract-meta-refresh.js.map +1 -0
  136. package/dist/types/extractors/index.d.ts +1 -0
  137. package/dist/types/extractors/index.js.map +1 -1
  138. package/dist/types/extractors/lib/constants.d.ts +81 -0
  139. package/dist/types/extractors/lib/constants.js.map +1 -0
  140. package/dist/types/extractors/lib/sanitize.d.ts +66 -0
  141. package/dist/types/extractors/lib/sanitize.js.map +1 -0
  142. package/dist/types/extractors/lib/score.d.ts +85 -0
  143. package/dist/types/extractors/lib/score.js.map +1 -0
  144. package/dist/types/extractors/lib/terminators.d.ts +26 -0
  145. package/dist/types/extractors/lib/terminators.js.map +1 -0
  146. package/dist/types/extractors/lib/ui-chrome.d.ts +18 -0
  147. package/dist/types/extractors/lib/ui-chrome.js.map +1 -0
  148. package/dist/types/extractors/pipeExtractors.d.ts +5 -0
  149. package/dist/types/extractors/pipeExtractors.js.map +1 -1
  150. package/dist/types/extractors/presets/auto.d.ts +30 -0
  151. package/dist/types/extractors/presets/auto.js.map +1 -0
  152. package/dist/types/extractors/presets/minimal-filter.d.ts +10 -2
  153. package/dist/types/extractors/presets/minimal-filter.js.map +1 -1
  154. package/dist/types/extractors/presets/takumi.d.ts +19 -3
  155. package/dist/types/extractors/presets/takumi.js.map +1 -1
  156. package/dist/types/extractors/types.d.ts +8 -0
  157. package/dist/types/html-to-markdown.d.ts +38 -0
  158. package/dist/types/html-to-markdown.js.map +1 -1
  159. package/dist/types/html-to-mdast.d.ts +11 -0
  160. package/dist/types/html-to-mdast.js.map +1 -1
  161. package/dist/types/index.d.ts +8 -3
  162. package/dist/types/index.js.map +1 -1
  163. package/dist/types/link-replacer.d.ts +3 -1
  164. package/dist/types/link-replacer.js.map +1 -1
  165. package/dist/types/loaders/cf-puppeteer.js.map +1 -1
  166. package/dist/types/loaders/fetch.d.ts +4 -0
  167. package/dist/types/loaders/fetch.js.map +1 -1
  168. package/dist/types/loaders/playwright.js.map +1 -1
  169. package/dist/types/loaders/puppeteer.js.map +1 -1
  170. package/dist/types/md-splitter.d.ts +1 -1
  171. package/dist/types/md-splitter.js.map +1 -1
  172. package/dist/types/mdast-handlers/custom-a-handler.js.map +1 -1
  173. package/dist/types/mdast-handlers/custom-code-handler.d.ts +2 -0
  174. package/dist/types/mdast-handlers/custom-code-handler.js.map +1 -1
  175. package/dist/types/mdast-handlers/custom-div-handler.js.map +1 -1
  176. package/dist/types/mdast-handlers/custom-img-handler.js.map +1 -1
  177. package/dist/types/mdast-handlers/custom-table-handler.js.map +1 -1
  178. package/dist/types/mdast-handlers/definition-list-handler.d.ts +2 -0
  179. package/dist/types/mdast-handlers/definition-list-handler.js.map +1 -0
  180. package/dist/types/mdast-handlers/math-handler.js.map +1 -1
  181. package/dist/types/mdast-handlers/sup-sub-handler.d.ts +10 -0
  182. package/dist/types/mdast-handlers/sup-sub-handler.js.map +1 -0
  183. package/dist/types/mdast-to-markdown.js.map +1 -1
  184. package/dist/types/metadata/index.d.ts +47 -0
  185. package/dist/types/metadata/index.js.map +1 -0
  186. package/dist/types/normalize/index.d.ts +53 -0
  187. package/dist/types/normalize/index.js.map +1 -0
  188. package/dist/types/platform/client.d.ts +55 -0
  189. package/dist/types/platform/client.js.map +1 -0
  190. package/dist/types/platform/error.d.ts +22 -0
  191. package/dist/types/platform/error.js.map +1 -0
  192. package/dist/types/platform/fetch.d.ts +36 -0
  193. package/dist/types/platform/fetch.js.map +1 -0
  194. package/dist/types/platform/index.d.ts +4 -0
  195. package/dist/types/platform/index.js.map +1 -0
  196. package/dist/types/platform/types.d.ts +164 -0
  197. package/dist/types/platform/types.js.map +1 -0
  198. package/dist/types/utils/hast-fast.d.ts +101 -0
  199. package/dist/types/utils/hast-fast.js.map +1 -0
  200. package/dist/utils/hast-fast.js +246 -0
  201. package/package.json +25 -7
  202. package/dist/types/cli/commands/webforai/index.d.ts +0 -6
  203. package/dist/types/cli/commands/webforai/index.js.map +0 -1
@@ -0,0 +1,99 @@
1
+ import type { Element, Nodes as Hast } from "hast";
2
+ /**
3
+ * Cheap, precomputed summary of a document.
4
+ *
5
+ * Fingerprints must answer "is this page built with X?" without scanning the tree, because they
6
+ * run for every adapter on every conversion. Collecting the identifying markers in one pass and
7
+ * letting fingerprints do set lookups turns N full CSS traversals into one walk.
8
+ */
9
+ export interface PageSignature {
10
+ /** Every distinct class token in the document. */
11
+ classes: ReadonlySet<string>;
12
+ /** Every distinct `id`. */
13
+ ids: ReadonlySet<string>;
14
+ /** Every distinct tag name, lower-cased. */
15
+ tags: ReadonlySet<string>;
16
+ /** Concatenated `content` of `<meta name="generator">`, lower-cased. */
17
+ generator: string;
18
+ /** Concatenated `property`/`name` + `content` pairs of meta tags, lower-cased. */
19
+ meta: string;
20
+ }
21
+ /** Everything an adapter is given to decide whether, and how, it applies. */
22
+ export interface AdapterContext {
23
+ hast: Hast;
24
+ /** Page URL, when known. Adapters that key off the host require it. */
25
+ url?: string;
26
+ lang?: string;
27
+ /**
28
+ * Precomputed document summary.
29
+ *
30
+ * Optional so that adapters remain callable standalone; the pipeline always supplies it.
31
+ */
32
+ signature?: PageSignature;
33
+ /**
34
+ * True when the caller owns `hast` and an adapter may mutate it in place.
35
+ *
36
+ * Adapters prune their selected container directly, so without this an adapter would damage a
37
+ * tree the caller still intends to use.
38
+ */
39
+ owned?: boolean;
40
+ }
41
+ /**
42
+ * A site-specific extraction strategy.
43
+ *
44
+ * Adapters exist because generic scoring cannot know that a YouTube page keeps its description
45
+ * in an embedded JSON blob, or that a Hacker News thread is laid out with nested tables. They
46
+ * run before the generic extractor and may decline, in which case extraction proceeds normally.
47
+ */
48
+ export interface SiteAdapter {
49
+ /** Stable identifier, also used to select an adapter explicitly. */
50
+ id: string;
51
+ /**
52
+ * Quick applicability test.
53
+ *
54
+ * Should be cheap: it runs for every adapter on every conversion. Host checks first, DOM
55
+ * fingerprints only when the host is unknown.
56
+ */
57
+ matches: (context: AdapterContext) => boolean;
58
+ /**
59
+ * Secondary applicability test, run only after no adapter matched on hostname.
60
+ *
61
+ * Splitting this from {@link matches} keeps the common path — a known host — free of the
62
+ * platform-detection work that only matters for self-hosted instances.
63
+ */
64
+ matchesFingerprint?: (context: AdapterContext) => boolean;
65
+ /**
66
+ * Produces the content tree, or `undefined` to decline after a closer look.
67
+ *
68
+ * Declining is normal and expected — a host match does not guarantee the page is the kind
69
+ * this adapter understands (a GitHub profile is not a GitHub issue).
70
+ */
71
+ extract: (context: AdapterContext) => Hast | undefined;
72
+ }
73
+ /**
74
+ * Declarative adapter definition.
75
+ *
76
+ * Most sites need nothing more than "the content is here, minus these widgets", so they are
77
+ * expressed as data and compiled into a {@link SiteAdapter} by `defineSelectorAdapter`.
78
+ */
79
+ export interface SelectorAdapterSpec {
80
+ id: string;
81
+ /** Hostname test, applied to the URL's host. */
82
+ hosts?: RegExp;
83
+ /**
84
+ * DOM fingerprint, used when no adapter matched on hostname.
85
+ *
86
+ * This is what lets one adapter cover every self-hosted instance of a platform: any site
87
+ * built with the generator matches, not just the flagship domain. Reads only the precomputed
88
+ * {@link PageSignature}, so it must stay a set lookup rather than a tree query.
89
+ */
90
+ fingerprint?: (signature: PageSignature) => boolean;
91
+ /** Candidate content containers, best first. The first one that holds text wins. */
92
+ content: string[];
93
+ /** Selectors removed from the chosen container. */
94
+ remove?: string[];
95
+ /** Minimum text length the chosen container must hold before the adapter commits. */
96
+ minLength?: number;
97
+ /** Optional post-processing, e.g. prepending a title or appending metadata. */
98
+ decorate?: (content: Element[], context: AdapterContext) => Hast | undefined;
99
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/adapters/types.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"bin.js","sourceRoot":"","sources":["../../../src/cli/bin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO;KACL,IAAI,CAAC,UAAU,CAAC;KAChB,WAAW,CAAC,wDAAwD,CAAC;KACrE,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,4BAA4B,CAAC,CAAC;AAE9E,OAAO;KACL,QAAQ,CAAC,UAAU,EAAE,wBAAwB,CAAC;KAC9C,MAAM,CAAC,uBAAuB,EAAE,kCAAkC,CAAC;KACnE,MAAM,CAAC,mBAAmB,EAAE,oBAAoB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;KACpE,MAAM,CAAC,uBAAuB,EAAE,kBAAkB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;KACxE,MAAM,CAAC,aAAa,EAAE,oCAAoC,CAAC;KAC3D,MAAM,CAAC,eAAe,CAAC,CAAC;AAE1B,OAAO,CAAC,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"bin.js","sourceRoot":"","sources":["../../../src/cli/bin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Maps a page URL to a relative `.md` path that mirrors the site's structure:
3
+ * `/` → `index.md`, `/docs/` → `docs/index.md`, `/docs/intro.html` → `docs/intro.md`.
4
+ * A query string adds a short stable hash (`search_q-1a2b3c4d.md`) so `?page=2` does not
5
+ * overwrite `?page=1`. `includeHost` prefixes the hostname (batch jobs span origins).
6
+ *
7
+ * The result never escapes the output directory: segments are sanitized one by one, so
8
+ * `..`, encoded slashes and absolute paths cannot survive.
9
+ */
10
+ export declare const pageRelativePath: (pageUrl: string, options?: {
11
+ includeHost?: boolean;
12
+ }) => string;
13
+ export interface PlannedFile {
14
+ url: string;
15
+ /** Path relative to the output directory, POSIX separators. */
16
+ relativePath: string;
17
+ }
18
+ /**
19
+ * Assigns every URL a distinct relative path. URLs are sorted first so the same set of pages
20
+ * always gets the same names, whatever order the job returned them in; collisions (e.g.
21
+ * `/a` and `/a.html`) take the CLI's usual `_1`, `_2` suffixes. Comparison is
22
+ * case-insensitive because macOS and Windows filesystems are.
23
+ */
24
+ export declare const planOutputFiles: (urls: readonly string[], options?: {
25
+ includeHost?: boolean;
26
+ }) => PlannedFile[];
27
+ /** Resolves a planned path inside `outputDir`, refusing anything that would land outside it. */
28
+ export declare const resolveInside: (outputDir: string, relativePath: string) => string;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../../../../../src/cli/commands/jobs/files.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * llms.txt / llms-full.txt rendering for crawl output, per https://llmstxt.org:
3
+ *
4
+ * ```md
5
+ * # Site title
6
+ *
7
+ * > One-line summary
8
+ *
9
+ * ## Section
10
+ *
11
+ * - [Page title](https://url): description
12
+ * ```
13
+ *
14
+ * `llms-full.txt` is the companion convention: every page's Markdown, concatenated, so an
15
+ * agent can load a whole site in one read.
16
+ */
17
+ export interface LlmsPage {
18
+ url: string;
19
+ markdown: string;
20
+ metadata: Record<string, unknown>;
21
+ }
22
+ export interface LlmsSite {
23
+ /** The crawl's seed URL; its page supplies the site title and summary when present. */
24
+ seedUrl: string;
25
+ pages: readonly LlmsPage[];
26
+ }
27
+ /** Pages in output order: grouped by section (top level first, then A→Z), URL order inside. */
28
+ export declare const orderPages: (pages: readonly LlmsPage[]) => {
29
+ section: string;
30
+ pages: LlmsPage[];
31
+ }[];
32
+ export declare const renderLlmsTxt: (site: LlmsSite) => string;
33
+ export declare const renderLlmsFullTxt: (site: LlmsSite) => string;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llms-txt.js","sourceRoot":"","sources":["../../../../../src/cli/commands/jobs/llms-txt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ import type { CrawlSitemapMode, Region, RequestedEngine } from "../../../platform";
2
+ import { type ExtractorName } from "../../constants";
3
+ /** Server-side caps (docs/specs/platform/03_api.md); checked locally to fail before billing. */
4
+ export declare const MAX_BATCH_URLS = 100;
5
+ export declare const MAX_CRAWL_DEPTH = 5;
6
+ export declare const MAX_CRAWL_LIMIT = 500;
7
+ export type JobKind = "crawl" | "batch";
8
+ export interface JobFlags {
9
+ output?: string;
10
+ engine?: string;
11
+ region?: string;
12
+ extractor?: string;
13
+ frontmatter?: boolean;
14
+ /** `true`/`false` from `--respect-robots`/`--no-respect-robots`; undefined = server default. */
15
+ respectRobots?: boolean;
16
+ apiKey?: string;
17
+ platformUrl?: string;
18
+ json?: boolean;
19
+ debug?: boolean;
20
+ /** Seconds to wait for the job before giving up (it keeps running server-side). */
21
+ timeout?: string;
22
+ maxDepth?: string;
23
+ limit?: string;
24
+ include?: string[];
25
+ exclude?: string[];
26
+ sitemap?: string;
27
+ llmsTxt?: boolean;
28
+ file?: string;
29
+ }
30
+ export interface ResolvedJob {
31
+ kind: JobKind;
32
+ /** crawl: exactly one seed URL; batch: 1–100 URLs, de-duplicated, in input order. */
33
+ urls: string[];
34
+ outputDir: string;
35
+ engine?: RequestedEngine;
36
+ region?: Region;
37
+ extractor: ExtractorName;
38
+ frontmatter: boolean;
39
+ respectRobotsTxt?: boolean;
40
+ apiKey: string;
41
+ platformUrl?: string;
42
+ json: boolean;
43
+ debug: boolean;
44
+ timeoutMs: number;
45
+ maxDepth?: number;
46
+ limit?: number;
47
+ includePaths?: string[];
48
+ excludePaths?: string[];
49
+ sitemap?: CrawlSitemapMode;
50
+ llmsTxt: boolean;
51
+ }
52
+ /** Reads a URL list: one per line, blank lines and `#` comments ignored; `-` is stdin. */
53
+ export declare const parseUrlList: (text: string) => string[];
54
+ /**
55
+ * Turns `crawl`/`batch` arguments and flags into a validated job description. Pure except
56
+ * for reading `--file`, so the surface is unit-testable without a server.
57
+ */
58
+ export declare const resolveJobOptions: (kind: JobKind, sources: string[], flags: JobFlags, env?: Record<string, string | undefined>, readFile?: (file: string) => string) => ResolvedJob;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../../../../src/cli/commands/jobs/options.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import type { JobStatus } from "../../../platform";
2
+ import type { ResolvedJob } from "./options";
3
+ export interface JobIo {
4
+ stdout: (text: string) => void;
5
+ stderr: (text: string) => void;
6
+ /** Live progress (a rewritten status line) only when stderr is an interactive terminal. */
7
+ isTTY: boolean;
8
+ sleep: (ms: number) => Promise<void>;
9
+ fetch: typeof fetch;
10
+ }
11
+ /** What `--json` prints: the job, every written file, and every failed page. */
12
+ export interface JobEnvelope {
13
+ jobId: string;
14
+ type: ResolvedJob["kind"];
15
+ status: JobStatus["status"];
16
+ outputDir: string;
17
+ credits: number;
18
+ pages: {
19
+ url: string;
20
+ file: string;
21
+ title?: string;
22
+ engine: string;
23
+ credits: number;
24
+ warning?: string;
25
+ }[];
26
+ failures: {
27
+ url: string;
28
+ code: string;
29
+ message: string;
30
+ }[];
31
+ llmsTxt?: string;
32
+ llmsFullTxt?: string;
33
+ error?: string;
34
+ }
35
+ /** The job finished but not cleanly (job failed, or no page converted) — exit code 1. */
36
+ export declare class JobIncompleteError extends Error {
37
+ }
38
+ /**
39
+ * `webforai crawl` / `webforai batch`: submit the job, wait for it (progress on stderr), page
40
+ * through the results, write one `.md` per page into the output directory (plus llms.txt
41
+ * files on request), then report. stdout carries only the written file paths — or the
42
+ * `--json` envelope — so the command composes like the single-page one.
43
+ */
44
+ export declare const runJobCommand: (job: ResolvedJob, io?: JobIo) => Promise<JobEnvelope>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../../../src/cli/commands/jobs/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE7F,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAG9D,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAC9B,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACjC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAW/B,MAAM,SAAS,GAAG,GAAU,EAAE,CAAC,CAAC;IAC/B,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;IAC5C,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;IAC5C,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;IACpC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAChE,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;CACxC,CAAC,CAAC;AAgBH,yFAAyF;AACzF,MAAM,OAAO,kBAAmB,SAAQ,KAAK;CAAG;AAEhD,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,MAAiB,EAAU,EAAE;IAChE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,MAAM,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IACrE,OAAO,GAAG,IAAI,IAAI,MAAM,CAAC,KAAK,MAAM,MAAM,CAAC,MAAM,MAAM,MAAM,CAAC,SAAS,GAAG,KAAK,SAAS,MAAM,MAAM,MAAM,CAAC,OAAO,UAAU,CAAC;AAC9H,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,kBAAkB,GAAG,KAAK,EAAK,EAAS,EAAE,GAA2B,EAAE,IAAsB,EAAc,EAAE;IAClH,KAAK,IAAI,OAAO,GAAG,CAAC,GAAI,OAAO,EAAE,EAAE,CAAC;QACnC,IAAI,CAAC;YACJ,OAAO,MAAM,IAAI,EAAE,CAAC;QACrB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,CAAC,KAAK,YAAY,gBAAgB,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,IAAI,OAAO,GAAG,sBAAsB,EAAE,CAAC;gBAC/G,MAAM,KAAK,CAAC;YACb,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,IAAI,OAAO,EAAE,GAAG,CAAC,CAAC;YAChE,GAAG,CAAC,6BAA6B,OAAO,GAAG,CAAC,CAAC;YAC7C,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;QAChC,CAAC;IACF,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,CAAC,MAAsB,EAAE,GAAgB,EAAE,EAAE;IAC3D,MAAM,MAAM,GAAG;QACd,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;QACtC,OAAO,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,SAAS,EAAE;KAChF,CAAC;IACF,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC1B,OAAO,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC;QACnB,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAW;QAC1B,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,YAAY,EAAE,GAAG,CAAC,YAAY;QAC9B,YAAY,EAAE,GAAG,CAAC,YAAY;QAC9B,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,GAAG,MAAM;KACT,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,KAAK,EAAE,EAAS,EAAE,IAAmB,EAAuB,EAAE;IACjF,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IACb,CAAC;IACD,8DAA8D;IAC9D,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAChD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QAClB,MAAM,IAAI,gBAAgB,CACzB,uBAAuB,EACvB,qBAAqB,IAAI,CAAC,GAAG,kCAAkC,QAAQ,CAAC,MAAM,GAAG,EACjF,QAAQ,CAAC,MAAM,CACf,CAAC;IACH,CAAC;IACD,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAgB,CAAC;AAC/C,CAAC,CAAC;AAEF,mFAAmF;AACnF,MAAM,cAAc,GAAG,CAAC,EAAS,EAAE,GAAgB,EAAE,EAAE;IACtD,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,SAAS,GAAG,GAAG,EAAE;QACtB,IAAI,QAAQ,EAAE,CAAC;YACd,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YACzB,QAAQ,GAAG,KAAK,CAAC;QAClB,CAAC;IACF,CAAC,CAAC;IACF,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,EAAE;QAC5B,SAAS,EAAE,CAAC;QACZ,EAAE,CAAC,MAAM,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,OAAkB,EAAE,EAAE;QACrC,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC;YACd,EAAE,CAAC,MAAM,CAAC,yBAAyB,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YACtE,QAAQ,GAAG,IAAI,CAAC;QACjB,CAAC;aAAM,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACtB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QACtC,CAAC;IACF,CAAC,CAAC;IACF,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AACnC,CAAC,CAAC;AAIF,MAAM,gBAAgB,GAAG,KAAK,EAC7B,MAAsB,EACtB,GAAgB,EAChB,KAAa,EACb,EAAS,EACT,QAAkB,EACG,EAAE;IACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,SAAS,CAAC;IAC5C,IAAI,CAAC;QACJ,OAAO,MAAM,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,CACtD,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE;YACxB,cAAc,EAAE,gBAAgB;YAChC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7C,QAAQ,EAAE,QAAQ,CAAC,MAAM;SACzB,CAAC,CACF,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,IAAI,KAAK,YAAY,gBAAgB,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACxE,MAAM,IAAI,gBAAgB,CACzB,cAAc,EACd,GAAG,KAAK,CAAC,OAAO,mGAAmG,KAAK,WAAW,EACnI,CAAC,CACD,CAAC;QACH,CAAC;QACD,MAAM,KAAK,CAAC;IACb,CAAC;YAAS,CAAC;QACV,QAAQ,CAAC,SAAS,EAAE,CAAC;IACtB,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,KAAK,EAAE,MAAsB,EAAE,KAAa,EAAE,EAAS,EAAE,QAAkB,EAAE,EAAE;IACrG,MAAM,SAAS,GAAkB,EAAE,CAAC;IACpC,MAAM,QAAQ,GAAkB,EAAE,CAAC;IACnC,IAAI,MAA0B,CAAC;IAC/B,GAAG,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QACvG,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YAC3C,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;gBAC5B,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACP,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvB,CAAC;QACF,CAAC;QACD,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IACtB,CAAC,QAAQ,MAAM,EAAE;IACjB,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,KAAK,EAAE,GAAgB,EAAE,SAAwB,EAAiC,EAAE;IACtG,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACjE,MAAM,OAAO,GAAyB,EAAE,CAAC;IACzC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,KAAK,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,eAAe,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC,EAAE,CAAC;QAC/G,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAgB,CAAC;QAC3C,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAC1D,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;QAChG,OAAO,CAAC,IAAI,CAAC;YACZ,GAAG;YACH,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC;YAC5C,KAAK,EAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YAChF,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;SACrB,CAAC,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,KAAK,EAAE,GAAgB,EAAE,SAAwB,EAAE,QAAqB,EAAiB,EAAE;IACjH,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/E,MAAM,IAAI,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAW,EAAE,KAAK,EAAE,CAAC;IACvD,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACxD,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IACjE,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1D,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;AACnE,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,CAAC,GAAgB,EAAE,QAAqB,EAAE,EAAS,EAAE,GAA2B,EAAQ,EAAE;IACxG,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;QACd,EAAE,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;SAAM,CAAC;QACP,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACnC,EAAE,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;QAC7B,CAAC;IACF,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;IACxC,GAAG,CACF,GAAG,GAAG,CAAC,IAAI,IAAI,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,KAAK,CAAC,MAAM,uBAAuB,GAAG,CAAC,SAAS,EAAE;QAC/G,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,QAAQ,CAAC,OAAO,UAAU,CAC1E,CAAC;IACF,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QACtB,GAAG,CAAC,yCAAyC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IAC/D,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,mBAAmB,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,YAAY,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACtE,CAAC;IACD,IAAI,MAAM,GAAG,mBAAmB,EAAE,CAAC;QAClC,GAAG,CAAC,WAAW,MAAM,GAAG,mBAAmB,oBAAoB,CAAC,CAAC;IAClE,CAAC;AACF,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAAE,GAAgB,EAAE,KAAY,SAAS,EAAE,EAAwB,EAAE;IACtG,MAAM,MAAM,GAAG,oBAAoB,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;IACvG,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAEzC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,kBAAkB,CAAC,EAAE,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IACxF,QAAQ,CAAC,GAAG,CACX,GAAG,GAAG,CAAC,IAAI,QAAQ,KAAK,eAAe,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,OAAO,GAAG,CACxG,CAAC;IAEF,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;IACvE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;IAElF,MAAM,QAAQ,GAAgB;QAC7B,KAAK;QACL,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,KAAK,EAAE,MAAM,UAAU,CAAC,GAAG,EAAE,SAAS,CAAC;QACvC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/F,KAAK,EAAE,KAAK,CAAC,KAAK;KAClB,CAAC;IACF,IAAI,GAAG,CAAC,OAAO,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzC,MAAM,cAAc,CAAC,GAAG,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;IACD,MAAM,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;IAExC,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,IAAI,kBAAkB,CAAC,GAAG,GAAG,CAAC,IAAI,QAAQ,KAAK,UAAU,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzG,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,kBAAkB,CAAC,GAAG,GAAG,CAAC,IAAI,QAAQ,KAAK,qBAAqB,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * The Agent Skill (SKILL.md) that teaches a coding agent this CLI.
3
+ *
4
+ * Single source of truth for the skill: `webforai skill` prints it, `webforai skill
5
+ * --install` hands it to the `skills` CLI, and the copy committed at `skills/webforai/`
6
+ * in the repository (installable via `npx skills add inaridiy/webforai`) is bound to this
7
+ * template by a drift test. A unit test also asserts every public flag appears here.
8
+ */
9
+ export declare const renderSkillMarkdown: (version?: string) => string;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content.js","sourceRoot":"","sources":["../../../../../src/cli/commands/skill/content.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAAgB,EAAU,EAAE,CAAC;;;;;gBAKjD,OAAO,CAAC,CAAC,CAAC,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8J9C,CAAC"}
@@ -0,0 +1,19 @@
1
+ export interface SkillFlags {
2
+ install?: boolean;
3
+ /** Direct-write escape hatch: skip the `skills` CLI and write into this skills directory. */
4
+ dir?: string;
5
+ global?: boolean;
6
+ agent?: string;
7
+ yes?: boolean;
8
+ copy?: boolean;
9
+ all?: boolean;
10
+ }
11
+ /** Builds the `npx skills add <source>` argv from our pass-through flags (pure, for tests). */
12
+ export declare const buildSkillsAddArgs: (source: string, flags: SkillFlags) => string[];
13
+ /**
14
+ * `webforai skill` — print the Agent Skill; `--install` delegates placement to the
15
+ * [`skills` CLI](https://github.com/vercel-labs/skills) (`npx skills add`), which manages
16
+ * agent directories, symlinks/copies and the skills lockfile far more robustly than a
17
+ * hand-rolled file write. `--dir` remains as an offline direct-write fallback.
18
+ */
19
+ export declare const skillCommand: (flags: SkillFlags) => Promise<void>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/cli/commands/skill/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { type CliFlags } from "./options";
2
+ /**
3
+ * The guided flow behind `-i/--interactive` — the pre-v3 default. Prompts only for what the
4
+ * flags did not already provide, then runs the exact same pipeline as the non-interactive
5
+ * path and saves the result to a file.
6
+ */
7
+ export declare const interactiveCommand: (initialSource: string | undefined, flags: CliFlags, env?: Record<string, string | undefined>) => Promise<void>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../../../../../src/cli/commands/webforai/interactive.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"loadHtml.js","sourceRoot":"","sources":["../../../../../src/cli/commands/webforai/loadHtml.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loadHtml.js","sourceRoot":"","sources":["../../../../../src/cli/commands/webforai/loadHtml.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,62 @@
1
+ import { REGIONS, REQUESTED_ENGINES } from "../../../platform";
2
+ import type { ExtractorName, Loader, Mode } from "../../constants";
3
+ /** A caller mistake (bad flag value, missing input) — reported without a stack, exit code 2. */
4
+ export declare class UsageError extends Error {
5
+ }
6
+ export interface CliFlags {
7
+ output?: string;
8
+ loader?: string;
9
+ mode?: string;
10
+ extractor?: string;
11
+ frontmatter?: boolean;
12
+ json?: boolean;
13
+ engine?: string;
14
+ region?: string;
15
+ screenshot?: boolean;
16
+ respectRobots?: boolean;
17
+ apiKey?: string;
18
+ platformUrl?: string;
19
+ debug?: boolean;
20
+ }
21
+ export interface ResolvedRun {
22
+ source: string;
23
+ loader: Loader;
24
+ mode: Mode;
25
+ extractor: ExtractorName;
26
+ frontmatter: boolean;
27
+ output?: string;
28
+ json: boolean;
29
+ debug: boolean;
30
+ /** Platform-loader fields; undefined otherwise. */
31
+ engine?: (typeof REQUESTED_ENGINES)[number];
32
+ region?: (typeof REGIONS)[number];
33
+ screenshot: boolean;
34
+ /** Platform loader only: honor the target site's robots.txt rules. */
35
+ respectRobotsTxt: boolean;
36
+ apiKey?: string;
37
+ platformUrl?: string;
38
+ }
39
+ /** Shared by every platform-backed command: where to get a key, and that it starts free. */
40
+ export declare const missingApiKeyError: (platformUrl?: string) => UsageError;
41
+ /**
42
+ * Turns raw commander flags into a validated run description. Pure aside from one existence
43
+ * check on local files, so the flag surface is unit-testable without spawning the binary.
44
+ */
45
+ export declare const resolveRunOptions: (source: string, flags: CliFlags, env?: Record<string, string | undefined>) => ResolvedRun;
46
+ /** What `--json` prints: everything an agent needs to consume the conversion programmatically. */
47
+ export interface RunEnvelope {
48
+ source: string;
49
+ loader: Loader;
50
+ /** Final URL for URL sources (after redirects when the platform reports one). */
51
+ url?: string;
52
+ engine?: string;
53
+ region?: string;
54
+ markdown: string;
55
+ metadata: Record<string, unknown>;
56
+ credits?: number;
57
+ screenshotUrl?: string;
58
+ /** Present when the result is probably degraded (e.g. an unrendered client-side shell). */
59
+ warning?: string;
60
+ /** Present when the markdown was also written to a file. */
61
+ output?: string;
62
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../../../../src/cli/commands/webforai/options.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type { ResolvedRun, RunEnvelope } from "./options";
2
+ /** Acquire + convert, without deciding where the result goes. */
3
+ export declare const executeRun: (run: ResolvedRun) => Promise<RunEnvelope>;
4
+ export declare const writeOutputFile: (outputPath: string, markdown: string) => Promise<void>;
5
+ /**
6
+ * The non-interactive entry: converts and prints the markdown (or the `--json` envelope) to
7
+ * stdout. Only the conversion result goes to stdout — every log goes to stderr — so the
8
+ * command composes with pipes and is safe for agents to call programmatically.
9
+ */
10
+ export declare const runCommand: (run: ResolvedRun) => Promise<void>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../../../src/cli/commands/webforai/run.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,15 @@
1
1
  export declare const DEFAULT_PATH = "https://example.com";
2
- export declare const LOADERS: readonly ["fetch", "playwright"];
3
- export type Loaders = (typeof LOADERS)[number];
4
- export declare const MODES: string[];
5
- export type Modes = (typeof MODES)[number];
2
+ /**
3
+ * How the CLI acquires HTML (`local` is selected automatically for file paths):
4
+ * - `fetch` — plain HTTP fetch, no JavaScript execution.
5
+ * - `playwright` — local headless Chromium (must be installed).
6
+ * - `platform` — the hosted webforai platform API; also converts server-side.
7
+ */
8
+ export declare const LOADERS: readonly ["fetch", "playwright", "platform"];
9
+ export type Loader = (typeof LOADERS)[number] | "local";
10
+ export declare const MODES: readonly ["default", "ai"];
11
+ export type Mode = (typeof MODES)[number];
12
+ export declare const EXTRACTORS: readonly ["auto", "takumi", "minimal", "none"];
13
+ export type ExtractorName = (typeof EXTRACTORS)[number];
14
+ export declare const API_KEY_ENV = "WEBFORAI_API_KEY";
15
+ export declare const PLATFORM_URL_ENV = "WEBFORAI_PLATFORM_URL";
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/cli/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,qBAAqB,CAAC;AAElD,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,YAAY,CAAU,CAAC;AAGxD,MAAM,CAAC,MAAM,KAAK,GAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/cli/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,qBAAqB,CAAC;AAElD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,CAAU,CAAC;AAGpE,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,SAAS,EAAE,IAAI,CAAU,CAAC;AAGhD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAU,CAAC;AAGzE,MAAM,CAAC,MAAM,WAAW,GAAG,kBAAkB,CAAC;AAC9C,MAAM,CAAC,MAAM,gBAAgB,GAAG,uBAAuB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"selectExtractMode.js","sourceRoot":"","sources":["../../../../src/cli/helpers/selectExtractMode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,IAAI,EAAE;IAC3C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC;QAC3B,OAAO,EAAE,yBAAyB;QAClC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;KACtB,CAAC,CAAC;IAEH,cAAc,CAAC,MAAM,CAAC,CAAC;IAEvB,OAAO,MAAM,CAAC;AACf,CAAC,CAAC"}
1
+ {"version":3,"file":"selectExtractMode.js","sourceRoot":"","sources":["../../../../src/cli/helpers/selectExtractMode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,IAAI,EAAE;IAC3C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC;QAC3B,OAAO,EAAE,yBAAyB;QAClC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAc,EAAE,KAAK,EAAE,IAAc,EAAE,CAAC,CAAC;QAChF,YAAY,EAAE,KAAK,CAAC,CAAC,CAAW;KAChC,CAAC,CAAC;IAEH,cAAc,CAAC,MAAM,CAAC,CAAC;IAEvB,OAAO,MAAM,CAAC;AACf,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"selectLoader.js","sourceRoot":"","sources":["../../../../src/cli/helpers/selectLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,WAAW,GAAG;IACnB,KAAK,EAAE,uCAAuC;IAC9C,UAAU,EAAE,kGAAkG;IAC9G,SAAS,EAAE,gGAAgG;CAClG,CAAC;AAEX,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,IAAI,EAAE;IACtC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC;QAC3B,OAAO,EAAE,gBAAgB;QACzB,YAAY,EAAE,OAAO;QACrB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;KAC7F,CAAC,CAAC;IACH,cAAc,CAAC,MAAM,CAAC,CAAC;IAEvB,OAAO,MAAM,CAAC;AACf,CAAC,CAAC"}
1
+ {"version":3,"file":"selectLoader.js","sourceRoot":"","sources":["../../../../src/cli/helpers/selectLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,WAAW,GAA6C;IAC7D,KAAK,EAAE,uCAAuC;IAC9C,UAAU,EAAE,gFAAgF;IAC5F,QAAQ,EAAE,iEAAiE;CAC3E,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,IAAI,EAAE;IACtC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC;QAC3B,OAAO,EAAE,gBAAgB;QACzB,YAAY,EAAE,OAAO;QACrB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,MAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;KACzG,CAAC,CAAC;IACH,cAAc,CAAC,MAAM,CAAC,CAAC;IAEvB,OAAO,MAAM,CAAC;AACf,CAAC,CAAC"}
@@ -2,4 +2,11 @@ export declare const isUrl: (maybeUrl: string) => boolean;
2
2
  export declare function changeFileExtension(filePath: string, newExtension: string): string;
3
3
  export declare function urlToFilename(url: string): string;
4
4
  export declare const sourcePathToOutputPath: (sourcePath: string) => string;
5
- export declare function getNextAvailableFilePath(filePath: string): string;
5
+ /**
6
+ * `article.md` → `article_1.md` → `article_2.md` ... until `exists` says the name is free.
7
+ * `exists` defaults to the filesystem; multi-page writers pass an in-memory set so reruns
8
+ * into the same directory overwrite deterministically instead of drifting to new suffixes.
9
+ */
10
+ export declare function getNextAvailableFilePath(filePath: string, exists?: (candidate: string) => boolean): string;
11
+ /** The dashboard of the configured platform (flag/env override, else the hosted instance). */
12
+ export declare const platformDashboardUrl: (platformUrl?: string) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/cli/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/cli/utils.ts"],"names":[],"mappings":"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"}