@wrenautomation/birdwatch 0.29.0 → 0.30.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +36 -53
- package/dist/app/cli.js +5 -2
- package/dist/app/cli.js.map +1 -1
- package/dist/app/config.d.ts +5 -0
- package/dist/app/config.js +53 -0
- package/dist/app/config.js.map +1 -0
- package/dist/app/engine-cli.d.ts +2 -8
- package/dist/app/engine-cli.js +34 -164
- package/dist/app/engine-cli.js.map +1 -1
- package/dist/app/index.d.ts +3 -3
- package/dist/app/index.js +3 -3
- package/dist/app/index.js.map +1 -1
- package/dist/document/extract.d.ts +1 -1
- package/dist/document/types.d.ts +2 -2
- package/dist/document/types.js +2 -2
- package/dist/engine/agent.d.ts +12 -10
- package/dist/engine/agent.js +42 -30
- package/dist/engine/agent.js.map +1 -1
- package/dist/engine/context.d.ts +9 -0
- package/dist/engine/{runner.js → context.js} +10 -78
- package/dist/engine/context.js.map +1 -0
- package/dist/engine/index.d.ts +2 -2
- package/dist/engine/index.js +2 -2
- package/dist/engine/index.js.map +1 -1
- package/dist/engine/judge.d.ts +1 -1
- package/dist/engine/plan.d.ts +4 -4
- package/dist/engine/plan.js +4 -4
- package/dist/engine/plan.js.map +1 -1
- package/dist/{plan → engine}/plans/index.d.ts +4 -2
- package/dist/engine/plans/index.js +104 -0
- package/dist/engine/plans/index.js.map +1 -0
- package/dist/engine/ports.d.ts +9 -57
- package/dist/engine/ports.js +3 -3
- package/dist/engine/ports.js.map +1 -1
- package/dist/engine/recall.d.ts +1 -1
- package/dist/engine/state.d.ts +0 -3
- package/dist/engine/state.js +1 -25
- package/dist/engine/state.js.map +1 -1
- package/dist/engine/steps.d.ts +20 -20
- package/dist/engine/steps.js +42 -167
- package/dist/engine/steps.js.map +1 -1
- package/dist/engine/tree.d.ts +9 -2
- package/dist/engine/tree.js +16 -0
- package/dist/engine/tree.js.map +1 -1
- package/dist/{plan → engine}/types.d.ts +14 -165
- package/dist/{plan → engine}/types.js +18 -73
- package/dist/engine/types.js.map +1 -0
- package/dist/index.d.ts +9 -9
- package/dist/index.js +9 -9
- package/dist/ledger/files.d.ts +1 -1
- package/dist/ledger/files.js +1 -1
- package/dist/ledger/files.js.map +1 -1
- package/dist/ledger/ledger.d.ts +2 -2
- package/dist/ledger/records.d.ts +139 -139
- package/dist/ledger/records.js +6 -6
- package/dist/ledger/records.js.map +1 -1
- package/dist/sources/arxiv.d.ts +1 -1
- package/dist/sources/google.d.ts +1 -1
- package/dist/sources/paste.d.ts +1 -1
- package/dist/sources/sites.d.ts +1 -1
- package/package.json +4 -8
- package/dist/engine/runner.d.ts +0 -30
- package/dist/engine/runner.js.map +0 -1
- package/dist/plan/index.d.ts +0 -7
- package/dist/plan/index.js +0 -8
- package/dist/plan/index.js.map +0 -1
- package/dist/plan/model.d.ts +0 -6
- package/dist/plan/model.js +0 -7
- package/dist/plan/model.js.map +0 -1
- package/dist/plan/plan.d.ts +0 -31
- package/dist/plan/plan.js +0 -87
- package/dist/plan/plan.js.map +0 -1
- package/dist/plan/plans/index.js +0 -236
- package/dist/plan/plans/index.js.map +0 -1
- package/dist/plan/render.d.ts +0 -41
- package/dist/plan/render.js +0 -75
- package/dist/plan/render.js.map +0 -1
- package/dist/plan/review.d.ts +0 -11
- package/dist/plan/review.js +0 -39
- package/dist/plan/review.js.map +0 -1
- package/dist/plan/triage.d.ts +0 -18
- package/dist/plan/triage.js +0 -65
- package/dist/plan/triage.js.map +0 -1
- package/dist/plan/types.js.map +0 -1
package/dist/app/engine-cli.js
CHANGED
|
@@ -1,45 +1,31 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The engine from a shell
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* can drive it. The ledger is a folder (`--ledger`, BIRDWATCH_LEDGER, default `./ledger`); a
|
|
2
|
+
* The engine from a shell, one step per command for the agent that drives it: `plan`, `search`,
|
|
3
|
+
* `open`, `extract`, `check`, `add`, `brief`, `trace` a run, `yield` per source, `sources` on this
|
|
4
|
+
* machine. Every command prints JSON. The ledger is a folder (`--ledger`, BIRDWATCH_LEDGER, default `./ledger`); a
|
|
6
5
|
* writer names this terminal's file in it (`--writer`, BIRDWATCH_WRITER, default the user name).
|
|
7
6
|
* The model is a `@wrenautomation/models` spec: `anthropic` by default (Claude Haiku direct,
|
|
8
7
|
* ANTHROPIC_API_KEY), `gateway[:alias]`, `gemini`, `claude-code`, `command:<cmd>` and the rest
|
|
9
8
|
* of its grammar. A host with its own ledger, sources or
|
|
10
9
|
* model passes them in `EngineCliDeps`; wren's `research` command is these commands over
|
|
11
|
-
* Postgres. A
|
|
12
|
-
*
|
|
10
|
+
* Postgres. A step that stops on a transient failure (a 429, a 5xx, a dropped connection) exits
|
|
11
|
+
* with its note; the agent runs it again, and it skips what its records show done.
|
|
13
12
|
*/
|
|
14
13
|
import { mkdir, readFile } from "node:fs/promises";
|
|
15
14
|
import { userInfo } from "node:os";
|
|
16
15
|
import { serve } from "@hono/node-server";
|
|
17
|
-
import { isTransient } from "@wrenautomation/models";
|
|
18
16
|
import { judgeFromSpec } from "@wrenautomation/models/judge";
|
|
19
17
|
import { modelFromSpec } from "@wrenautomation/models/spec";
|
|
20
18
|
import { PoliteFetcher, userAgent } from "@wrenautomation/read/fetch";
|
|
21
19
|
import { geminiVideo } from "@wrenautomation/read/video";
|
|
22
20
|
import { claimExtractor } from "../document/index.js";
|
|
23
|
-
import { accept, add, brief, check, costOf, extract, fold, follow, joined, open, planRound, RESERVED, recall, registry,
|
|
21
|
+
import { accept, add, brief, check, costOf, extract, fold, follow, joined, open, planRound, RESERVED, recall, registry, search, searchTree, tunePlan, } from "../engine/index.js";
|
|
22
|
+
import { Criterion, defaultPlanFile, PLAN_KINDS, QueryTree, TreeGuide, treeOf, } from "../engine/plan.js";
|
|
23
|
+
import { Step as PlanStep } from "../engine/types.js";
|
|
24
24
|
import { FilesLedger, FollowAs, SOURCE_CLASSES, SourceClass, ulids, } from "../ledger/index.js";
|
|
25
|
-
import {
|
|
26
|
-
import { accountsFrom, arxivSource, exa, facebookSource, fetcherSource, googleSource, httpLadderClient, ingressLadderClient, ladderSource, ledgerSource, paste, redditSource, searxng, ytdlpSource, } from "../sources/index.js";
|
|
25
|
+
import { accountsFrom, arxivSource, exa, facebookSource, fetcherSource, googleSource, httpLadderClient, ingressLadderClient, ladderSource, ledgerSource, redditSource, searxng, ytdlpSource, } from "../sources/index.js";
|
|
27
26
|
import { SERVE_ORIGINS, SERVE_PORT, serveApp, watchRuns } from "./serve.js";
|
|
28
27
|
const DEFAULT_MODEL = "anthropic";
|
|
29
|
-
/** Resumes `run` makes on its own after a transient failure. */
|
|
30
|
-
export const RESUMES = 5;
|
|
31
|
-
/** The longest pause before a resume, whatever `retry-after` said. */
|
|
32
|
-
const MAX_RESUME_WAIT_MS = 300_000;
|
|
33
28
|
export { costOf };
|
|
34
|
-
/** The pause before a resume: to `retryAfter` (five minutes at most), else 15 s per resume so far. */
|
|
35
|
-
export function resumeWaitMs(n, retryAfter, now = Date.now()) {
|
|
36
|
-
if (retryAfter) {
|
|
37
|
-
const until = Date.parse(retryAfter) - now;
|
|
38
|
-
if (!Number.isNaN(until))
|
|
39
|
-
return Math.max(0, Math.min(until, MAX_RESUME_WAIT_MS));
|
|
40
|
-
}
|
|
41
|
-
return 15_000 * n;
|
|
42
|
-
}
|
|
43
29
|
/** `NAME`, then `NAME_1`, `NAME_2`, ... in order: a fleet of keys for one vendor. */
|
|
44
30
|
export function keys(printed, name) {
|
|
45
31
|
const out = [];
|
|
@@ -110,7 +96,7 @@ export function sourcesHere(printed, ledger, ytDlp, warn = (l) => console.error(
|
|
|
110
96
|
url: printed.RESTATE_INGRESS_URL,
|
|
111
97
|
token: printed.RESTATE_AUTH_TOKEN ?? null,
|
|
112
98
|
...(printed.AUTOBROWSE_SERVICE ? { service: printed.AUTOBROWSE_SERVICE } : {}),
|
|
113
|
-
caller: `birdwatch:${printed.BIRDWATCH_AGENT ?? "
|
|
99
|
+
caller: `birdwatch:${printed.BIRDWATCH_AGENT ?? "cli"}`,
|
|
114
100
|
})
|
|
115
101
|
: null;
|
|
116
102
|
if (sites) {
|
|
@@ -140,7 +126,6 @@ export function allowList(sources, wanted, byHand, warn = (l) => console.error(l
|
|
|
140
126
|
: [...sources.values()].filter((s) => s.open && !out.includes(s.name)).map((s) => s.name);
|
|
141
127
|
return { sources: out, opens };
|
|
142
128
|
}
|
|
143
|
-
const progress = (e) => console.error(`${e.run} ${e.round}.${e.step} ${e.ok ? "ok" : "gave up"} ${e.ms}ms${e.note ? `: ${e.note}` : ""}`);
|
|
144
129
|
/** A kind the engine plans for; anything else is the caller's mistake, said in words. */
|
|
145
130
|
export const kindOf = (kind) => {
|
|
146
131
|
const k = PLAN_KINDS.find((p) => p === kind);
|
|
@@ -148,7 +133,7 @@ export const kindOf = (kind) => {
|
|
|
148
133
|
throw new Error(`no kind "${kind}": the kinds are ${PLAN_KINDS.join(", ")}`);
|
|
149
134
|
return k;
|
|
150
135
|
};
|
|
151
|
-
/** Prints what a command did as JSON; a step that gave up exits 2
|
|
136
|
+
/** Prints what a command did as JSON; a step that gave up exits 2. */
|
|
152
137
|
function printDid(did) {
|
|
153
138
|
console.error(`${did.run} ${did.round}.${did.step} ${did.ok ? "ok" : "gave up"}${did.note ? `: ${did.note}` : ""}`);
|
|
154
139
|
console.log(JSON.stringify(did, null, 2));
|
|
@@ -164,14 +149,23 @@ async function stdinText() {
|
|
|
164
149
|
}
|
|
165
150
|
export function addEngineCommands(program, deps = {}) {
|
|
166
151
|
const ledgerOf = deps.ledger ?? filesLedger;
|
|
167
|
-
|
|
152
|
+
// defaults resolve in preAction: a root `--ledger` before the command name must win over env
|
|
168
153
|
const common = (c) => c
|
|
169
|
-
.option("--ledger <dir>", "the ledger folder
|
|
170
|
-
.option("--writer <name>", "this terminal's file in the ledger
|
|
154
|
+
.option("--ledger <dir>", "the ledger folder (default: BIRDWATCH_LEDGER, else ./ledger)")
|
|
155
|
+
.option("--writer <name>", "this terminal's file in the ledger (default: BIRDWATCH_WRITER, else the user)");
|
|
156
|
+
if (!program.options.some((x) => x.long === "--ledger"))
|
|
157
|
+
common(program);
|
|
158
|
+
program.hook("preAction", (root, cmd) => {
|
|
159
|
+
if (cmd === root || !cmd.options.some((x) => x.long === "--ledger"))
|
|
160
|
+
return;
|
|
161
|
+
const own = cmd.opts();
|
|
162
|
+
const top = root.opts();
|
|
163
|
+
cmd.setOptionValue("ledger", own.ledger ?? top.ledger ?? process.env.BIRDWATCH_LEDGER ?? "./ledger");
|
|
164
|
+
cmd.setOptionValue("writer", own.writer ?? top.writer ?? process.env.BIRDWATCH_WRITER ?? userInfo().username);
|
|
165
|
+
});
|
|
171
166
|
const machine = (c) => c
|
|
172
167
|
.option("--model <spec>", "a models spec: anthropic[:haiku|sonnet|opus], gateway[:alias], gemini[:id], claude-code, command:<cmd>, ...", process.env.BIRDWATCH_MODEL ?? DEFAULT_MODEL)
|
|
173
168
|
.option("--no-model", "no model: nothing extracted or checked")
|
|
174
|
-
.option("--decider <spec>", "the model for the steps that decide what comes next (plan, triage, review); default: anthropic:sonnet when --model is Haiku, else --model", process.env.BIRDWATCH_DECIDER)
|
|
175
169
|
.option("--judge <spec>", "cheap typed answers on every hit, page and finding (a hint and a router): jev[:model], fake, off", process.env.BIRDWATCH_JUDGE ?? (process.env.TYPESAFE_API_KEY ? "jev" : "off"))
|
|
176
170
|
.option("--no-judge", "no judge")
|
|
177
171
|
.option("--yt-dlp <cmd>", "the yt-dlp command", process.env.BIRDWATCH_YTDLP ?? "yt-dlp");
|
|
@@ -185,12 +179,8 @@ export function addEngineCommands(program, deps = {}) {
|
|
|
185
179
|
? deps.sources(o, ledger)
|
|
186
180
|
: sourcesHere(process.env, ledger, o.ytDlp);
|
|
187
181
|
const model = o.model === false ? null : (deps.model ?? modelFromSpec)(o.model, process.env);
|
|
188
|
-
// Haiku restates, Sonnet decides: a few cents a run.
|
|
189
|
-
const deciderSpec = o.decider ??
|
|
190
|
-
(o.model === "anthropic" || o.model === "anthropic:haiku" ? "anthropic:sonnet" : null);
|
|
191
|
-
const decider = model && deciderSpec ? (deps.model ?? modelFromSpec)(deciderSpec, process.env) : null;
|
|
192
182
|
const judge = o.judge === false ? null : (deps.judge ?? judgeFromSpec)(o.judge, process.env);
|
|
193
|
-
return { ledger, sources, model, judge
|
|
183
|
+
return { ledger, sources, model, judge };
|
|
194
184
|
};
|
|
195
185
|
/**
|
|
196
186
|
* The ledger's tuned plan file for the kind (the stock one when none), its sources the run's
|
|
@@ -203,16 +193,16 @@ export function addEngineCommands(program, deps = {}) {
|
|
|
203
193
|
if (tuned.version < stock.version)
|
|
204
194
|
console.error(`plan file ${kind} is version ${tuned.version}; birdwatch ships ${stock.version}: delete it to take the new one`);
|
|
205
195
|
const wanted = byHand ?? [...first, ...tuned.sources];
|
|
206
|
-
//
|
|
196
|
+
// A run narrows to the plan file's sources, so the run's allow-list goes in as the plan file's.
|
|
207
197
|
const { sources: list, opens } = allowList(sources, wanted, !!byHand);
|
|
208
198
|
return { planFile: { ...tuned, sources: list }, opens };
|
|
209
199
|
};
|
|
210
|
-
const depsOf = (s,
|
|
200
|
+
const depsOf = (s, writer) => ({
|
|
211
201
|
...s,
|
|
212
202
|
extractor: deps.extractor ?? claimExtractor,
|
|
213
203
|
clock: () => new Date(),
|
|
214
204
|
ids: ulids(),
|
|
215
|
-
|
|
205
|
+
writer,
|
|
216
206
|
});
|
|
217
207
|
/** The agent's id: `--by` or BIRDWATCH_AGENT. Every record it writes names it. */
|
|
218
208
|
const agentOf = (o) => {
|
|
@@ -224,123 +214,6 @@ export function addEngineCommands(program, deps = {}) {
|
|
|
224
214
|
const whoOf = (o) => o.human
|
|
225
215
|
? { from: "human", by: o.human === true ? o.writer : o.human }
|
|
226
216
|
: { from: "ai", by: agentOf(o) };
|
|
227
|
-
machine(common(program.command("run [ask]")))
|
|
228
|
-
.description("run an ask through plan, fetch, triage, read, extract, check and review; prints the run as JSON")
|
|
229
|
-
.option("--kind <kind>", `one of ${PLAN_KINDS.join(", ")}`, "web")
|
|
230
|
-
.option("--known <line...>", "what is known already, one line each, with its URL or ledger id; a line without one is a premise")
|
|
231
|
-
.option("--premise <line...>", "what the ask takes as given (a buyer, an offer, a price): the tree tests each")
|
|
232
|
-
.option("--criterion <name=question...>", 'a yes-or-no test of a good source (code="Is code released?"): the judge asks it on every hit and every page read whole, a hint only')
|
|
233
|
-
.option("--steer <line...>", "what you say to the model, first in every prompt")
|
|
234
|
-
.option("--site <host>", "the site the ask is about")
|
|
235
|
-
.option("--sources <name...>", "the allow-list for this run (default: the plan file's, as far as this machine has them)")
|
|
236
|
-
.option("--propose <terms...>", "queries from you, merged with the model's in round 1")
|
|
237
|
-
.option("--url <url...>", "pages you want read: a paste source, first in the allow-list")
|
|
238
|
-
.option("--by <who>", "who proposes or pastes", process.env.BIRDWATCH_WRITER ?? userInfo().username)
|
|
239
|
-
.option("--resume <run>", "continue an earlier run from the step it stopped on")
|
|
240
|
-
.option("--run <id>", "the new run's id")
|
|
241
|
-
.option("--pause", "stop after each round's review: `birdwatch steer`, then --resume")
|
|
242
|
-
.option("--parent <run>", "a new run's parent: this run is a child of it (one niche of a wide run)")
|
|
243
|
-
.option("--why <why>", "with --parent: why this child")
|
|
244
|
-
.action(async (ask, o) => {
|
|
245
|
-
if (!ask && !o.resume)
|
|
246
|
-
throw new Error("run needs an ask, or --resume <run>");
|
|
247
|
-
const kind = kindOf(o.kind);
|
|
248
|
-
const s = setup(o);
|
|
249
|
-
const { ledger, sources } = s;
|
|
250
|
-
if (o.url?.length)
|
|
251
|
-
sources.set("paste", paste(o.url.map((url) => ({ url })), o.by));
|
|
252
|
-
const { planFile, opens } = await planFileOf(ledger, sources, kind, o.sources, o.url?.length ? ["paste"] : []);
|
|
253
|
-
const byHand = [
|
|
254
|
-
...(o.propose ?? []).map((terms) => ({ kind, terms, why: "proposed by hand" })),
|
|
255
|
-
// The paste answers the first query it sees: this one, when nothing else is proposed.
|
|
256
|
-
...(o.url?.length && !o.propose?.length && ask
|
|
257
|
-
? [{ kind, terms: ask, why: "the pasted pages" }]
|
|
258
|
-
: []),
|
|
259
|
-
];
|
|
260
|
-
const proposals = byHand.length
|
|
261
|
-
? [{ from: "human", by: o.by, queries: byHand }]
|
|
262
|
-
: [];
|
|
263
|
-
const id = o.resume ?? o.run ?? ulids()();
|
|
264
|
-
const engineDeps = depsOf(s, o.writer);
|
|
265
|
-
const options = {
|
|
266
|
-
...(ask
|
|
267
|
-
? {
|
|
268
|
-
ask: {
|
|
269
|
-
text: ask,
|
|
270
|
-
kind,
|
|
271
|
-
known: o.known ?? [],
|
|
272
|
-
premises: o.premise ?? [],
|
|
273
|
-
criteria: criteriaOf(o.criterion),
|
|
274
|
-
steer: o.steer ?? [],
|
|
275
|
-
...(o.site ? { site: o.site } : {}),
|
|
276
|
-
},
|
|
277
|
-
}
|
|
278
|
-
: {}),
|
|
279
|
-
planFile,
|
|
280
|
-
opens,
|
|
281
|
-
proposals,
|
|
282
|
-
onStep: progress,
|
|
283
|
-
...(o.pause ? { pause: true } : {}),
|
|
284
|
-
...(o.parent ? { parent: { run: o.parent, why: o.why ?? "" } } : {}),
|
|
285
|
-
};
|
|
286
|
-
let result = null;
|
|
287
|
-
for (let n = 0; result === null; n++) {
|
|
288
|
-
try {
|
|
289
|
-
result = await run(engineDeps, {
|
|
290
|
-
...options,
|
|
291
|
-
...(n === 0 && !o.resume ? { run: id } : { resume: id }),
|
|
292
|
-
});
|
|
293
|
-
}
|
|
294
|
-
catch (err) {
|
|
295
|
-
if (!isTransient(err))
|
|
296
|
-
throw err;
|
|
297
|
-
if (n >= RESUMES) {
|
|
298
|
-
console.error(`${id}: ${err.message}; stopped after ${RESUMES} resumes`);
|
|
299
|
-
break;
|
|
300
|
-
}
|
|
301
|
-
const ms = resumeWaitMs(n + 1, err.retryAfter);
|
|
302
|
-
console.error(`${id}: ${err.message}; resume ${n + 1} of ${RESUMES} in ${Math.round(ms / 1000)}s`);
|
|
303
|
-
await sleep(ms);
|
|
304
|
-
}
|
|
305
|
-
}
|
|
306
|
-
const state = result?.state ?? fold(id, await ledger.trace(id));
|
|
307
|
-
if (result?.paused)
|
|
308
|
-
console.error(`${id}: paused after round ${state.edges.length}; birdwatch add steer ${id} "<their words>" --human, then birdwatch run --resume ${id} --pause`);
|
|
309
|
-
if (result?.parked)
|
|
310
|
-
console.error(`${id}: ${result.parked}; birdwatch run --resume ${id} goes one more round, birdwatch plan --run ${id} opens it by hand`);
|
|
311
|
-
const cost = costOf(state.spends);
|
|
312
|
-
// The last review's word: what the ask still lacks, or that it is answered.
|
|
313
|
-
const last = state.edges.at(-1);
|
|
314
|
-
if (last)
|
|
315
|
-
console.error(`${id}: ${last.next}: ${last.why}`);
|
|
316
|
-
console.error(`${id}: ${cost.line}`);
|
|
317
|
-
console.log(JSON.stringify({
|
|
318
|
-
run: id,
|
|
319
|
-
rounds: state.round,
|
|
320
|
-
cost: cost.total,
|
|
321
|
-
finished: result?.finished ?? false,
|
|
322
|
-
...(result?.paused ? { paused: true } : {}),
|
|
323
|
-
...(result?.parked ? { parked: result.parked } : {}),
|
|
324
|
-
note: result ? result.note : "stopped on a transient failure: --resume to go on",
|
|
325
|
-
...(last ? { edge: { next: last.next, why: last.why } } : {}),
|
|
326
|
-
hits: state.hits.length,
|
|
327
|
-
documents: state.documents.length,
|
|
328
|
-
findings: state.findings.filter((f) => state.called.get(f.id) !== "drop"),
|
|
329
|
-
spends: state.spends.map(({ source, op, about, ok, cost, ms, usd, tokens }) => ({
|
|
330
|
-
source,
|
|
331
|
-
op,
|
|
332
|
-
about,
|
|
333
|
-
ok,
|
|
334
|
-
cost,
|
|
335
|
-
ms,
|
|
336
|
-
...(usd !== undefined ? { usd } : {}),
|
|
337
|
-
...(tokens ? { tokens } : {}),
|
|
338
|
-
})),
|
|
339
|
-
problems: ledger.problems ?? [],
|
|
340
|
-
}, null, 2));
|
|
341
|
-
if (!result?.finished && !result?.paused && !result?.parked)
|
|
342
|
-
process.exitCode = 2;
|
|
343
|
-
});
|
|
344
217
|
agent(machine(common(program.command("plan [ask]"))))
|
|
345
218
|
.description("open a round: a new run from an ask, or the next round of --run after an edge that said again. Prints the run id")
|
|
346
219
|
.option("--run <id>", "the run whose next round to open")
|
|
@@ -540,8 +413,9 @@ export function addEngineCommands(program, deps = {}) {
|
|
|
540
413
|
.option("--on <id>", "the query or hit it is about")
|
|
541
414
|
.action((runId, text, o) => added(o, runId, { type: "gap", note: text, ...(o.on ? { on: o.on } : {}) }));
|
|
542
415
|
agent(common(adds.command("pattern <run> <text>")))
|
|
543
|
-
.
|
|
544
|
-
.
|
|
416
|
+
.usage("<run> <text> --on <finding...> [options]")
|
|
417
|
+
.description("what several kept findings say together: one sentence; the count of distinct sites is computed. --on takes findings of this run or of any run under it")
|
|
418
|
+
.requiredOption("--on <finding...>", "the findings it rests on (this run's or its children's)")
|
|
545
419
|
.action((runId, text, o) => added(o, runId, { type: "pattern", text, findings: o.on }));
|
|
546
420
|
agent(common(adds.command("dead <run> <facet>")))
|
|
547
421
|
.description("give up on a facet, with why: later tries and rounds skip it, and a parent's next plan reads it as a dead end")
|
|
@@ -605,12 +479,10 @@ export function addEngineCommands(program, deps = {}) {
|
|
|
605
479
|
.option("--sources <name...>", "the allow-list, in order of preference")
|
|
606
480
|
.option("--queries <n>", "queries per round", Number)
|
|
607
481
|
.option("--reads <n>", "reads per round", Number)
|
|
608
|
-
.option("--rounds <n>", "rounds
|
|
482
|
+
.option("--rounds <n>", "rounds a run should take: a guard rail", Number)
|
|
609
483
|
.option("--checks <n>", "findings checked per round", Number)
|
|
610
484
|
.option("--age <sentence>", "how much a source's age counts")
|
|
611
|
-
.option("--
|
|
612
|
-
.option("--triage <file>", "the triage prompt, from a file")
|
|
613
|
-
.option("--review <file>", "the review prompt, from a file")
|
|
485
|
+
.option("--rule <line...>", "the rules the agent heeds for this kind, one line each: replaces them all")
|
|
614
486
|
.option("--thin <n>", "new hits under which a tree's try is thin, so the next try runs", Number)
|
|
615
487
|
.option("--tree <file>", "the query tree's guide, as JSON {facets: [{name, why}], thin}")
|
|
616
488
|
.action(async (kind, o) => {
|
|
@@ -634,9 +506,7 @@ export function addEngineCommands(program, deps = {}) {
|
|
|
634
506
|
...(o.sources ? { sources: o.sources } : {}),
|
|
635
507
|
budget,
|
|
636
508
|
...(o.age !== undefined ? { age: o.age } : {}),
|
|
637
|
-
...(o.
|
|
638
|
-
...(o.triage ? { triage: await text(o.triage) } : {}),
|
|
639
|
-
...(o.review ? { review: await text(o.review) } : {}),
|
|
509
|
+
...(o.rule ? { rules: o.rule } : {}),
|
|
640
510
|
...(o.tree
|
|
641
511
|
? { tree: TreeGuide.parse(JSON.parse(await text(o.tree))) }
|
|
642
512
|
: o.thin !== undefined
|
|
@@ -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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"}
|
package/dist/app/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The engine from a host's CLI: `addEngineCommands(program, deps)` mounts
|
|
3
|
-
*
|
|
2
|
+
* The engine from a host's CLI: `addEngineCommands(program, deps)` mounts the agent's commands,
|
|
3
|
+
* trace, yield and sources with the host's ledger, sources and model. A `--model` spec is read by
|
|
4
4
|
* `@wrenautomation/models/spec`.
|
|
5
5
|
*/
|
|
6
|
-
export { addEngineCommands, allowList, type Common, type EngineCliDeps, type HostLedger, keys,
|
|
6
|
+
export { addEngineCommands, allowList, type Common, type EngineCliDeps, type HostLedger, keys, sourcesHere, } from "./engine-cli.js";
|
package/dist/app/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The engine from a host's CLI: `addEngineCommands(program, deps)` mounts
|
|
3
|
-
*
|
|
2
|
+
* The engine from a host's CLI: `addEngineCommands(program, deps)` mounts the agent's commands,
|
|
3
|
+
* trace, yield and sources with the host's ledger, sources and model. A `--model` spec is read by
|
|
4
4
|
* `@wrenautomation/models/spec`.
|
|
5
5
|
*/
|
|
6
|
-
export { addEngineCommands, allowList, keys,
|
|
6
|
+
export { addEngineCommands, allowList, keys, sourcesHere, } from "./engine-cli.js";
|
|
7
7
|
//# sourceMappingURL=index.js.map
|
package/dist/app/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/app/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACL,iBAAiB,EACjB,SAAS,EAIT,IAAI,EACJ,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/app/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACL,iBAAiB,EACjB,SAAS,EAIT,IAAI,EACJ,WAAW,GACZ,MAAM,iBAAiB,CAAC"}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
import { z } from "zod";
|
|
16
16
|
import { type Model, type Usage } from "./model.js";
|
|
17
17
|
import { type Document, type Finding, type Verdict } from "./types.js";
|
|
18
|
-
/** What the run is after; the same fields the
|
|
18
|
+
/** What the run is after; the same fields the engine's `Ask` has, met by structure. */
|
|
19
19
|
export interface AskView {
|
|
20
20
|
text: string;
|
|
21
21
|
/** Facts already in hand, one line each: the extractor looks past them. */
|
package/dist/document/types.d.ts
CHANGED
|
@@ -63,8 +63,8 @@ export declare const Quality: z.ZodEnum<{
|
|
|
63
63
|
export type Quality = z.infer<typeof Quality>;
|
|
64
64
|
/**
|
|
65
65
|
* The extractor's word on one document after its findings: the quality, and the gap, one
|
|
66
|
-
* sentence on what the ask still lacks after this document. A filter's report to the
|
|
67
|
-
* never a query: the
|
|
66
|
+
* sentence on what the ask still lacks after this document. A filter's report to the agent,
|
|
67
|
+
* never a query: the agent reads the round's verdicts before it picks the edge.
|
|
68
68
|
*/
|
|
69
69
|
export declare const Verdict: z.ZodObject<{
|
|
70
70
|
quality: z.ZodEnum<{
|
package/dist/document/types.js
CHANGED
|
@@ -47,8 +47,8 @@ export const Finding = z.object({
|
|
|
47
47
|
export const Quality = z.enum(["rich", "thin", "off", "empty"]);
|
|
48
48
|
/**
|
|
49
49
|
* The extractor's word on one document after its findings: the quality, and the gap, one
|
|
50
|
-
* sentence on what the ask still lacks after this document. A filter's report to the
|
|
51
|
-
* never a query: the
|
|
50
|
+
* sentence on what the ask still lacks after this document. A filter's report to the agent,
|
|
51
|
+
* never a query: the agent reads the round's verdicts before it picks the edge.
|
|
52
52
|
*/
|
|
53
53
|
export const Verdict = z.object({
|
|
54
54
|
quality: Quality,
|
package/dist/engine/agent.d.ts
CHANGED
|
@@ -3,15 +3,14 @@
|
|
|
3
3
|
* agent) plans, triages, reviews and stops in its own head; the engine does the fixed work
|
|
4
4
|
* (search, open, extract through the quote gate, check) and keeps the records. Every record the
|
|
5
5
|
* agent writes carries its id and, on a decision, a why; the person's words come through it
|
|
6
|
-
* marked `from: human`. The
|
|
7
|
-
*
|
|
8
|
-
* brief shows it, nothing cuts a query or stops a round by it.
|
|
6
|
+
* marked `from: human`. The budget is a guard rail: the brief shows it, nothing cuts a query or
|
|
7
|
+
* stops a round by it.
|
|
9
8
|
*/
|
|
10
9
|
import { type DocumentRecord, type DraftRecord, type FollowAs, type From, type HitRecord, LedgerRecord, type SourceClass, type Step } from "../ledger/records.js";
|
|
11
|
-
import { type AskKind, type Criterion, type Edge, PlanFile, QueryTree, type TreeGuide, type YieldRow } from "../plan/index.js";
|
|
12
10
|
import { costOf } from "./cost.js";
|
|
13
11
|
import { type JudgeStats } from "./judge.js";
|
|
14
12
|
import { type PersonView, type Unfollowed } from "./people.js";
|
|
13
|
+
import { type AskKind, type Criterion, type Edge, PlanFile, QueryTree, type TreeGuide, type YieldRow } from "./plan.js";
|
|
15
14
|
import type { Deps } from "./ports.js";
|
|
16
15
|
import { type Pointer, type RunState } from "./state.js";
|
|
17
16
|
import { type ChildView } from "./tree.js";
|
|
@@ -297,16 +296,14 @@ export interface PlanChanges {
|
|
|
297
296
|
sources?: string[];
|
|
298
297
|
budget?: Partial<PlanFile["budget"]>;
|
|
299
298
|
age?: string;
|
|
300
|
-
|
|
301
|
-
triage?: string;
|
|
302
|
-
review?: string;
|
|
299
|
+
rules?: string[];
|
|
303
300
|
tree?: TreeGuide;
|
|
304
301
|
runs?: PlanFile["runs"];
|
|
305
302
|
}
|
|
306
303
|
/**
|
|
307
304
|
* The next version of a plan file: the current one with the changes, version plus one. Pure:
|
|
308
305
|
* the ledger writes it (`birdwatch learn`), at the end of a run the agent and the person agreed
|
|
309
|
-
* was good. The sources stay an allow-list
|
|
306
|
+
* was good. The sources stay an allow-list a run narrows, never widens; `learn` is how it widens.
|
|
310
307
|
*/
|
|
311
308
|
export declare function tunePlan(current: PlanFile, changes: PlanChanges): PlanFile;
|
|
312
309
|
/** A hit as the brief shows it: the view, its id, round and queries. */
|
|
@@ -327,7 +324,7 @@ export type HitBrief = Omit<HitRecord, "type" | "run" | "step" | "at" | "from" |
|
|
|
327
324
|
export interface Brief {
|
|
328
325
|
run: string;
|
|
329
326
|
round: number;
|
|
330
|
-
/**
|
|
327
|
+
/** The next step the fold points at; null when an edge said stop. */
|
|
331
328
|
next: Pointer | null;
|
|
332
329
|
/** The last edge's why, or the step that gave up. */
|
|
333
330
|
note: string | null;
|
|
@@ -335,6 +332,11 @@ export interface Brief {
|
|
|
335
332
|
budget: NonNullable<RunState["snapshot"]>["budget"] | null;
|
|
336
333
|
sources: string[];
|
|
337
334
|
planFile: NonNullable<RunState["snapshot"]>["planFile"] | null;
|
|
335
|
+
/** The kind's word for the agent, from its plan file: how much a source's age counts, and the rules to heed when it plans and triages. */
|
|
336
|
+
guide: {
|
|
337
|
+
age: string | null;
|
|
338
|
+
rules: string[];
|
|
339
|
+
} | null;
|
|
338
340
|
/** What the person said, oldest first. */
|
|
339
341
|
steer: string[];
|
|
340
342
|
/** What the last round left open: its edge's why, its gaps, the person's calls. */
|
|
@@ -469,5 +471,5 @@ export interface Brief {
|
|
|
469
471
|
judge: JudgeStats;
|
|
470
472
|
cost: ReturnType<typeof costOf>;
|
|
471
473
|
}
|
|
472
|
-
/**
|
|
474
|
+
/** The brief, as JSON: everything the agent needs to plan, triage, review and stop. */
|
|
473
475
|
export declare function brief(deps: Deps, run: string): Promise<Brief>;
|