@wrenautomation/birdwatch 0.33.1 → 0.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -51,12 +51,13 @@ birdwatch plan "who buys growth help" --premise "coaches are the buyer" # a pr
51
51
  birdwatch brief 01M5YS... # the ask, budget, sources (and those missing here), what earlier runs found, what is open, hits with their metrics and lift, authors' baselines, findings, yield, cost
52
52
  birdwatch recall staffing repeat clients --not 01M5YS... # earlier runs' findings: quote, URL, source date, run; --also <ledger> per extra folder
53
53
  birdwatch search 01M5YS... "staffing repeat client rate" --why "the ask's words" # one query, then every searcher
54
+ birdwatch search 01M5YS... "first sales hire" --site linkedin.com --preset top-month --why "what drew this month" # sort and window: only sources that take presets
54
55
  echo '[{"terms":"...","why":"..."},{"terms":"...","why":"..."}]' | birdwatch search 01M5YS... # a batch
55
56
  birdwatch search 01M5YS... < tree.json # a query tree, one tier: {facets: [{name, why, tries: [[{terms, why}], [...]]}]}
56
57
  birdwatch search 01M5YS... < tree.json # after triage, the same file: the next try of each facet still thin in kept hits
57
58
  birdwatch add call 01M5YS... 01M5YT... keep --why "a survey with numbers" # triage: a hit kept
58
59
  birdwatch add call 01M5YS... 01M5YU... drop --why "a vendor page"
59
- birdwatch open 01M5YS... 01M5YT... --url https://a.example/report --why "numbers" # keep these, read every kept hit
60
+ birdwatch open 01M5YS... 01M5YT... --url https://a.example/report --why "numbers" # keep these and read them
60
61
  birdwatch open 01M5YS... --with ladder # an opener the run lacks joins it, to open only
61
62
  birdwatch show 01M5YS... 01M5YV... # a document's text, for the agent to read itself
62
63
  birdwatch add finding 01M5YS... 01M5YV... --text "412 firms were surveyed." --quote "A 2025 survey of 412 firms"
@@ -85,7 +86,7 @@ steer, what the last round left open, the allow-list and the budget. No queries:
85
86
  through `search` or `add query`, never capped. The budget is a guard rail: `brief` shows it, and
86
87
  an edge `again` past `budget.rounds` prints a warning, never a refusal. `search`, `open`,
87
88
  `extract` and `check` each run one step and print what it wrote (a document's text as `chars`);
88
- a step that gave up exits 2 with its note. `open` reads every kept hit of the run that has no
89
+ a step that gave up exits 2 with its note. `open` reads the hits it names, else every kept hit of the run that has no
89
90
  document; `extract` every document without a verdict; `check` a sample across documents of the
90
91
  kept findings not yet checked. `add` writes one record by hand: a query, a finding (its quote
91
92
  must be on the document word for word, or the add fails with the gate's why), a check (the
@@ -67,6 +67,9 @@ const SEE_MODEL = "sonnet";
67
67
  /** The sources this machine can run, from the environment. */
68
68
  export function sourcesHere(printed, ledger, ytDlp, warn = (l) => console.error(l)) {
69
69
  const out = [];
70
+ // one ear, one pace: Cohere takes 20 calls a minute a key
71
+ const cohereKeys = keys(printed, "COHERE_API_KEY");
72
+ const ear = cohereKeys.length ? cohereSpeech(cohereKeys) : undefined;
70
73
  if (printed.SEARXNG_URL)
71
74
  out.push(searxng({
72
75
  url: printed.SEARXNG_URL,
@@ -79,20 +82,20 @@ export function sourcesHere(printed, ledger, ytDlp, warn = (l) => console.error(
79
82
  if (pplxKeys.length)
80
83
  out.push(perplexity({ keys: pplxKeys }));
81
84
  out.push(hn());
82
- // hits through the Data API when there is a key; an open reads captions, no model
85
+ // hits through the Data API when there is a key; an open reads captions, else Cohere hears the audio
83
86
  out.push(ytdlpSource({
84
87
  ytDlp,
85
88
  ...(printed.YOUTUBE_API_KEY ? { api: youtubeApi({ key: printed.YOUTUBE_API_KEY }) } : {}),
89
+ ...(ear ? { ear } : {}),
86
90
  warn,
87
91
  }));
88
92
  // what a video shows, on the agent's ask: Claude on the frames, Cohere hears a video with no captions
89
93
  const claudeKeys = keys(printed, "ANTHROPIC_API_KEY");
90
- const cohereKeys = keys(printed, "COHERE_API_KEY");
91
94
  if (claudeKeys.length)
92
95
  out.push(youtubeSee({
93
96
  ytDlp,
94
97
  eye: anthropic({ key: claudeKeys, model: SEE_MODEL }),
95
- ...(cohereKeys.length ? { ear: cohereSpeech(cohereKeys) } : {}),
98
+ ...(ear ? { ear } : {}),
96
99
  store: dirStore(printed.BIRDWATCH_MEDIA ?? join(homedir(), ".cache", "birdwatch", "media")),
97
100
  }));
98
101
  if (printed.BIRDWATCH_CONTACT) {
@@ -290,9 +293,10 @@ export function addEngineCommands(program, deps = {}) {
290
293
  }));
291
294
  });
292
295
  agent(machine(common(program.command("search <run> [terms]"))))
293
- .description("one query in the agent's name, then every searcher on every unsearched query of the round; the new hits as JSON. No terms: on stdin, a JSON array of {terms, why, site?}, or a tree {facets: [{name, why, tries: [[{terms, why, site?}]]}]}: one tier. First call: every facet's first try. After triage, the same tree again: the next try of each facet under the guide's thin in kept hits; a facet with uncalled hits waits")
296
+ .description("one query in the agent's name, then every searcher on every unsearched query of the round; the new hits as JSON. No terms: on stdin, a JSON array of {terms, why, site?, preset?}, or a tree {facets: [{name, why, tries: [[{terms, why, site?, preset?}]]}]}: one tier. First call: every facet's first try. After triage, the same tree again: the next try of each facet under the guide's thin in kept hits; a facet with uncalled hits waits")
294
297
  .option("--why <why>", "why this query serves the ask")
295
298
  .option("--site <host>", "keep the query on one host")
299
+ .option("--preset <preset>", "sort and window: latest or top, day, week, month or year, or paired (top-week); only sources that take presets search it")
296
300
  .option("--facet <name>", "the tree's facet this query serves")
297
301
  .option("--all", "tree: the next try of every facet that has one, whatever triage kept")
298
302
  .action(async (runId, terms, o) => {
@@ -305,6 +309,7 @@ export function addEngineCommands(program, deps = {}) {
305
309
  terms,
306
310
  why: o.why ?? "",
307
311
  ...(o.site ? { site: o.site } : {}),
312
+ ...(o.preset ? { preset: o.preset } : {}),
308
313
  ...(o.facet ? { facet: o.facet } : {}),
309
314
  };
310
315
  printDid(await search(deps, runId, [q], whoOf(o)));
@@ -335,7 +340,7 @@ export function addEngineCommands(program, deps = {}) {
335
340
  console.log(o.head ? d.text.slice(0, o.head) : d.text);
336
341
  });
337
342
  agent(machine(common(program.command("open <run> [hit...]"))))
338
- .description("keep the hits named (and a hit per --url), then read every kept hit of the run that has no document yet")
343
+ .description("keep the hits named (and a hit per --url) and read them; no names: read every kept hit of the run that has no document yet")
339
344
  .option("--url <url...>", "pages the agent names itself")
340
345
  .option("--why <why>", "why read these (with hits or --url)")
341
346
  .option("--with <source...>", "open sources this machine has that the run's allow-list lacks (`sources` lists them)")
@@ -387,10 +392,10 @@ export function addEngineCommands(program, deps = {}) {
387
392
  });
388
393
  const added = async (o, runId, a) => {
389
394
  const s = { ledger: ledgerOf(o), sources: registry(), model: null, judge: null };
390
- const { record, warnings } = await add(depsOf(s, agentOf(o)), runId, a, whoOf(o));
395
+ const { record, warnings, spread } = await add(depsOf(s, agentOf(o)), runId, a, whoOf(o));
391
396
  for (const w of warnings)
392
397
  console.error(`${runId}: ${w}`);
393
- console.log(JSON.stringify(record));
398
+ console.log(JSON.stringify(spread ? { ...record, ...spread } : record));
394
399
  };
395
400
  const adds = program
396
401
  .command("add")
@@ -399,12 +404,14 @@ export function addEngineCommands(program, deps = {}) {
399
404
  .description("a query for the next search")
400
405
  .requiredOption("--why <why>", "why it serves the ask")
401
406
  .option("--site <host>")
407
+ .option("--preset <preset>", "sort and window (top-week); only sources that take presets search it")
402
408
  .option("--facet <name>", "the tree's facet it serves")
403
409
  .action((runId, terms, o) => added(o, runId, {
404
410
  type: "query",
405
411
  terms,
406
412
  why: o.why,
407
413
  ...(o.site ? { site: o.site } : {}),
414
+ ...(o.preset ? { preset: o.preset } : {}),
408
415
  ...(o.facet ? { facet: o.facet } : {}),
409
416
  }));
410
417
  agent(common(adds.command("check <run> <finding>")))
@@ -1 +1 @@
1
- {"version":3,"file":"engine-cli.js","sourceRoot":"","sources":["../../src/app/engine-cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine-cli.js","sourceRoot":"","sources":["../../src/app/engine-cli.ts"],"names":[],"mappings":"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"}
@@ -12,11 +12,11 @@ import { costOf } from "./cost.js";
12
12
  import { type JudgeStats } from "./judge.js";
13
13
  import { type PersonView, type Unfollowed } from "./people.js";
14
14
  import { type AskKind, type Criterion, type Edge, PlanFile, QueryTree, type TreeGuide, type YieldRow } from "./plan.js";
15
- import type { Deps } from "./ports.js";
15
+ import { type Deps } from "./ports.js";
16
16
  import { type Recalled } from "./recall.js";
17
17
  import { type Pointer, type RunState } from "./state.js";
18
18
  import { type ChildView } from "./tree.js";
19
- import type { MetricKey } from "./types.js";
19
+ import { type MetricKey } from "./types.js";
20
20
  /** Who a record is from: the agent (`ai`, its id) or the person through it (`human`, their name). */
21
21
  export interface Who {
22
22
  from: From;
@@ -73,6 +73,8 @@ export interface QueryInput {
73
73
  terms: string;
74
74
  why: string;
75
75
  site?: string;
76
+ /** Sort and window (`top-week`); only sources that take presets search it. */
77
+ preset?: string;
76
78
  /** The tree's facet it serves, when the agent adds one more leaf by hand. */
77
79
  facet?: string;
78
80
  }
@@ -177,8 +179,8 @@ export interface OpenInput {
177
179
  /** Kept hits of any round with no document yet. */
178
180
  export declare const unread: (state: RunState) => HitRecord[];
179
181
  /**
180
- * Keeps the hits named (and writes a hit per URL named), then runs the read step over every
181
- * kept hit of the run that has no document. No names: the reads alone.
182
+ * Keeps the hits named (and writes a hit per URL named), then reads those named that have no
183
+ * document. No names: reads every kept hit of the run that has no document.
182
184
  */
183
185
  /** Videos seen a run: each is about $0.30 of Claude on the frames. */
184
186
  export declare const SEE_PER_RUN = 6;
@@ -207,6 +209,7 @@ export type Addition = {
207
209
  terms: string;
208
210
  why: string;
209
211
  site?: string;
212
+ preset?: string;
210
213
  facet?: string;
211
214
  } | {
212
215
  type: "finding";
@@ -273,6 +276,11 @@ export interface Added {
273
276
  record: Shown;
274
277
  /** What the agent should know: an edge past the budget, a finding on a dropped document. */
275
278
  warnings: string[];
279
+ /** A pattern's spread as the brief counts it: distinct sites, and sites per class. */
280
+ spread?: {
281
+ sources: number;
282
+ classes: Partial<Record<SourceClass | "unclassed", number>>;
283
+ };
276
284
  }
277
285
  /**
278
286
  * One record in the agent's or the person's name. A query, finding or pattern lands in the
@@ -7,7 +7,7 @@
7
7
  * stops a round by it.
8
8
  */
9
9
  import { isTransient } from "@wrenautomation/models";
10
- import { gateDrafts } from "@wrenautomation/read/study";
10
+ import { gateDrafts, numbersUnquoted } from "@wrenautomation/read/study";
11
11
  import { gateFindings, patternOf } from "../document/index.js";
12
12
  import { baselines, liftOf } from "../ledger/ledger.js";
13
13
  import { LedgerRecord, SOURCE_CLASSES, } from "../ledger/records.js";
@@ -17,10 +17,12 @@ import { costOf } from "./cost.js";
17
17
  import { classGuess, judgeStats, pickOf, yesOf } from "./judge.js";
18
18
  import { peopleView, profileKey, unfollowedOf, } from "./people.js";
19
19
  import { ageOf, defaultPlanFile, PlanFile, QueryTree, rulesOf, treeOf, } from "./plan.js";
20
+ import { searchersFor } from "./ports.js";
20
21
  import { recall } from "./recall.js";
21
22
  import { checkCount, classesOf, echoOf, fold, kept, personRound, queriesOf, sourcesOf, spreadSample, } from "./state.js";
22
23
  import { checkSample, extractDocuments, fetchStep, openAfter, planAsk, readHits, } from "./steps.js";
23
24
  import { budgetUnder, lineageOf, linkTo, runTree, treeReadsOf, treeRoom, treeStateOf, } from "./tree.js";
25
+ import { Preset } from "./types.js";
24
26
  export const shown = (r) => {
25
27
  if (r.type !== "document")
26
28
  return r;
@@ -132,6 +134,22 @@ export async function planRound(deps, input) {
132
134
  wrote: after.filter((r) => r.round === round && r.step === "plan").map(shown),
133
135
  };
134
136
  }
137
+ /** A preset query's searchers in the run, else the error that names the sources that take one. */
138
+ function presetOf(deps, state, q, terms) {
139
+ if (!q.preset)
140
+ return undefined;
141
+ const preset = Preset.parse(q.preset);
142
+ const names = state.snapshot?.sources ?? [];
143
+ const run = names.flatMap((n) => {
144
+ const s = deps.sources.get(n);
145
+ return s ? [s] : [];
146
+ });
147
+ if (!searchersFor(run, { preset, ...(q.site ? { site: q.site } : {}) }).length) {
148
+ const take = [...deps.sources.values()].filter((s) => s.search && s.presets).map((s) => s.name);
149
+ throw new Error(`query "${terms}": preset ${preset}, but no searcher in the run${q.site ? ` for ${q.site}` : ""} takes presets${take.length ? `; these do: ${take.join(", ")}` : ""}`);
150
+ }
151
+ return preset;
152
+ }
135
153
  /** Writes the agent's queries, then runs the fetch step: every searcher on every unsearched query of the round. */
136
154
  export async function search(deps, run, queries, who) {
137
155
  const state = await stateOf(deps, run);
@@ -144,12 +162,14 @@ export async function search(deps, run, queries, who) {
144
162
  throw new Error("a query needs terms");
145
163
  if (!q.why.trim())
146
164
  throw new Error(`query "${terms}": why?`);
165
+ const preset = presetOf(deps, state, q, terms);
147
166
  await ctx.write({
148
167
  type: "query",
149
168
  kind,
150
169
  terms,
151
170
  why: q.why,
152
171
  ...(q.site ? { site: q.site } : {}),
172
+ ...(preset ? { preset } : {}),
153
173
  ...(q.facet ? { facet: q.facet } : {}),
154
174
  }, who);
155
175
  }
@@ -379,6 +399,7 @@ export async function searchTree(deps, run, tree, who, options = {}) {
379
399
  throw new Error(`facet "${facet.name}": a query needs terms`);
380
400
  if (!leaf.why.trim())
381
401
  throw new Error(`query "${terms}": why?`);
402
+ const preset = presetOf(deps, first, leaf, terms);
382
403
  ids.push(await ctx.write({
383
404
  type: "query",
384
405
  kind: ask.kind,
@@ -387,6 +408,7 @@ export async function searchTree(deps, run, tree, who, options = {}) {
387
408
  facet: facet.name,
388
409
  tier,
389
410
  ...(leaf.site ? { site: leaf.site } : {}),
411
+ ...(preset ? { preset } : {}),
390
412
  ...(facet.needs?.length ? { needs: facet.needs } : {}),
391
413
  }, who));
392
414
  }
@@ -428,8 +450,8 @@ export const unread = (state) => {
428
450
  return state.hits.filter((h) => state.called.get(h.id) === "keep" && !read.has(h.id));
429
451
  };
430
452
  /**
431
- * Keeps the hits named (and writes a hit per URL named), then runs the read step over every
432
- * kept hit of the run that has no document. No names: the reads alone.
453
+ * Keeps the hits named (and writes a hit per URL named), then reads those named that have no
454
+ * document. No names: reads every kept hit of the run that has no document.
433
455
  */
434
456
  /** Videos seen a run: each is about $0.30 of Claude on the frames. */
435
457
  export const SEE_PER_RUN = 6;
@@ -484,7 +506,9 @@ export async function open(deps, run, input, who) {
484
506
  throw new Error(`open --see: ${seen} seen this run, ${want.size} asked; the cap is ${SEE_PER_RUN} a run (about $0.30 each)`);
485
507
  return stepRun(deps, run, "read", (c, s) => readHits(c, s, s.hits.filter((h) => want.has(h.id)), seers));
486
508
  }
487
- return stepRun(deps, run, "read", (c, s) => readHits(c, s, unread(s)));
509
+ // names: only those (a retry costs one read); none: every kept hit with no document
510
+ const only = new Set(named);
511
+ return stepRun(deps, run, "read", (c, s) => readHits(c, s, only.size ? unread(s).filter((h) => only.has(h.id)) : unread(s)));
488
512
  }
489
513
  /** Documents of any round the extractor has no verdict on. */
490
514
  export const unjudged = (state) => {
@@ -589,6 +613,7 @@ export async function add(deps, run, a, who) {
589
613
  const terms = a.terms.replace(/\s+/g, " ").trim();
590
614
  if (!terms)
591
615
  throw new Error("a query needs terms");
616
+ const preset = presetOf(deps, state, a, terms);
592
617
  return {
593
618
  record: await write({
594
619
  type: "query",
@@ -596,6 +621,7 @@ export async function add(deps, run, a, who) {
596
621
  terms,
597
622
  why: why(a.why, `query "${terms}"`),
598
623
  ...(a.site ? { site: a.site } : {}),
624
+ ...(preset ? { preset } : {}),
599
625
  ...(a.facet ? { facet: a.facet } : {}),
600
626
  }),
601
627
  warnings,
@@ -610,9 +636,14 @@ export async function add(deps, run, a, who) {
610
636
  const f = gate.findings[0];
611
637
  if (!f) {
612
638
  const why = gate.dropped[0]?.why ?? "empty";
639
+ const lacks = why === "number_not_in_quote"
640
+ ? numbersUnquoted(a.text, a.quote, { url: doc.url, text: doc.text })
641
+ : [];
613
642
  throw new Error(why === "quote_short"
614
643
  ? "finding dropped at the gate: quote_short, the quote needs 5 words: take the line with its label or the next line"
615
- : `finding dropped at the gate: ${why}`);
644
+ : lacks.length
645
+ ? `finding dropped at the gate: number_not_in_quote, the quote lacks ${lacks.join(", ")}: drop it from the text or quote the line that has it`
646
+ : `finding dropped at the gate: ${why}`);
616
647
  }
617
648
  return {
618
649
  record: await write({
@@ -714,7 +745,11 @@ export async function add(deps, run, a, who) {
714
745
  warnings.push(r === run
715
746
  ? `unchecked: ${ids.join(" ")}; run check --patterns`
716
747
  : `unchecked in child run ${r}: ${ids.join(" ")}; run check ${r} ${ids.join(" ")}`);
717
- return { record: await write({ type: "pattern", ...pattern }), warnings };
748
+ return {
749
+ record: await write({ type: "pattern", ...pattern }),
750
+ warnings,
751
+ spread: { sources: sourcesOf(classes), classes },
752
+ };
718
753
  }
719
754
  case "dead": {
720
755
  const facet = a.facet.trim();