strom-research 1.4.0 → 1.4.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/assets/method/reading.md +8 -1
- package/dist/agents/files.js +4 -1
- package/dist/agents/global.js +9 -4
- package/dist/agents/profiles.js +8 -4
- package/dist/commands/guide.js +19 -7
- package/dist/core/tree.js +1 -1
- package/package.json +1 -1
package/assets/method/reading.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Method: reading scans
|
|
2
2
|
|
|
3
|
+
**Old handwriting is read by your strongest model** — you, or a subagent or
|
|
4
|
+
reader on that same model; never a faster, cheaper or "quick" pass. A misread
|
|
5
|
+
name sends the research to the wrong village. **A name or place the next
|
|
6
|
+
search depends on** (a surname, a birthplace, a parish) is read again on a
|
|
7
|
+
crop at full resolution before it is recorded; what stays unsure is recorded
|
|
8
|
+
as unsure and said so.
|
|
9
|
+
|
|
3
10
|
An image you open stays in your context and is paid for again on every turn.
|
|
4
11
|
Look at as few pixels as the question needs, and write down what you saw at once.
|
|
5
12
|
|
|
@@ -22,7 +29,7 @@ Look at as few pixels as the question needs, and write down what you saw at once
|
|
|
22
29
|
It waits for its readers (often ten minutes or more): run it in the
|
|
23
30
|
foreground and let it finish — your session ends with your turn, and
|
|
24
31
|
whatever is left running in the background ends with it.
|
|
25
|
-
(Your own subagents can read too, in batches of at most twelve — but what they
|
|
32
|
+
(Your own subagents can read too — on your own model, never a faster one — in batches of at most twelve — but what they
|
|
26
33
|
report is lost with your session unless you write it down: record each
|
|
27
34
|
report as it comes back, before you send the next readers.) Only the entries
|
|
28
35
|
that will be cited need your own eyes, at full resolution.
|
package/dist/agents/files.js
CHANGED
|
@@ -26,7 +26,10 @@ the researcher; \`strom\` is your only way to read and change the research.
|
|
|
26
26
|
1. Start with \`strom\` — it says where things stand and what to do next.
|
|
27
27
|
\`strom guide\` explains the work; \`strom help <command>\` any command.
|
|
28
28
|
2. Work in sessions: \`strom session start\` gives you the brief for the next
|
|
29
|
-
task; finish with \`strom session close --summary "…" --next "…"\`.
|
|
29
|
+
task; finish with \`strom session close --summary "…" --next "…"\`. The
|
|
30
|
+
next step is strom's queue (\`strom\` names it, \`strom plan\` lists it):
|
|
31
|
+
what the user wants instead becomes a task first — never search outside a
|
|
32
|
+
session and its task.
|
|
30
33
|
3. Never create, edit or delete anything in \`data/\`, \`strom.json\` or \`.git\`,
|
|
31
34
|
never read the files in \`data/\` (strom shows them better and shorter), and
|
|
32
35
|
never run git yourself. strom detects changes and then refuses to write.
|
package/dist/agents/global.js
CHANGED
|
@@ -26,8 +26,10 @@ registers, archives, evidence, a family tree the Strom app can import.
|
|
|
26
26
|
Use it whenever the user wants to research their ancestors or family, or
|
|
27
27
|
mentions strom, a family tree or the Strom app.
|
|
28
28
|
|
|
29
|
-
1. Run \`strom\` first
|
|
30
|
-
(\`strom --json\` for the same as data
|
|
29
|
+
1. Run \`strom\` first, and before each step: it says where the research
|
|
30
|
+
stands and what to do next (\`strom --json\` for the same as data). Read
|
|
31
|
+
\`strom guide\` before the first step — the rules and the way to work —
|
|
32
|
+
and work only in strom's sessions on its tasks.
|
|
31
33
|
Run each strom command on its own — no pipes, no \`;\` or \`&&\` chains: you
|
|
32
34
|
may run strom without asking, but not what is chained to it.
|
|
33
35
|
2. Not set up yet: ask the user where to keep the research (suggest
|
|
@@ -47,10 +49,13 @@ mentions strom, a family tree or the Strom app.
|
|
|
47
49
|
6. When strom needs the user's consent it opens a window on their screen —
|
|
48
50
|
tell them to answer it; you cannot. Exit code 4 means the user must run
|
|
49
51
|
the given command themselves.
|
|
50
|
-
7.
|
|
52
|
+
7. Old handwriting is read by your strongest model — never a faster or
|
|
53
|
+
cheaper model, subagent or pass; a name or place the next search depends
|
|
54
|
+
on is read again on an enlarged crop before it is recorded.
|
|
55
|
+
8. Scans come through strom. An archive the research needs has no
|
|
51
56
|
downloader (connector) yet: build one yourself, unasked
|
|
52
57
|
(\`strom connector new\`), and tell the user in a sentence.
|
|
53
|
-
|
|
58
|
+
9. The Strom app (https://stromapp.info) is strom's companion: a free family
|
|
54
59
|
tree app, no account, the data stay on the user's computer. The research's
|
|
55
60
|
result (\`output/tree-strom.ged\`) opens in it. When the user wants to see
|
|
56
61
|
the tree (or \`strom\` says to offer it — once), suggest it gently — best installed as an app from the browser,
|
package/dist/agents/profiles.js
CHANGED
|
@@ -23,10 +23,14 @@ const DELEGATION_RULES = `- Browsing a book, an index or a range of images ("is
|
|
|
23
23
|
/** For agents that cannot pick a model for a subagent (Codex, Antigravity, OpenCode, Grok): read yourself, in small batches. */
|
|
24
24
|
export const SELF_READING = `## Reading scans (Codex, Antigravity, OpenCode, Grok)
|
|
25
25
|
|
|
26
|
-
Read the images yourself,
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
26
|
+
Read the images yourself, with your strongest model — never hand old
|
|
27
|
+
handwriting to a faster or cheaper model, subagent or pass. Read them
|
|
28
|
+
in batches of at most ten: open a batch, write down what it gave (strom
|
|
29
|
+
search add … for what was not found, facts for what was), then open the
|
|
30
|
+
next. Images stay in your context and are paid for on every turn, so never
|
|
31
|
+
keep more than one batch open. A name or place the next search depends on:
|
|
32
|
+
read it again on a crop at full resolution (\`strom media view … --crop\`)
|
|
33
|
+
before you record it.
|
|
30
34
|
`;
|
|
31
35
|
export const PROFILES = {
|
|
32
36
|
claude: {
|
package/dist/commands/guide.js
CHANGED
|
@@ -32,6 +32,12 @@ HARD RULES
|
|
|
32
32
|
the research needs has none yet: build one first (strom connector new,
|
|
33
33
|
its DISCOVERY.md) and tell the user in a sentence. The user saves images
|
|
34
34
|
by hand only where the archive does not allow automation.
|
|
35
|
+
8. Old handwriting is read by your strongest model — you, or a subagent on
|
|
36
|
+
that same model; never a faster, cheaper or "quick" pass. A name or place
|
|
37
|
+
the next search depends on is read again on a crop at full resolution
|
|
38
|
+
(strom media view … --crop) before it is recorded; unsure stays unsure.
|
|
39
|
+
9. A find is told to the user only once it is recorded (the source with its
|
|
40
|
+
transcript, the facts citing it), and told from strom: strom person card.
|
|
35
41
|
${language}
|
|
36
42
|
|
|
37
43
|
GETTING STARTED (once)
|
|
@@ -42,14 +48,20 @@ GETTING STARTED (once)
|
|
|
42
48
|
strom intake --text "<what the user told you, in their words>"
|
|
43
49
|
strom intake <file or folder> documents, photos, a GEDCOM or Strom tree
|
|
44
50
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
51
|
+
THE WORK, STEP BY STEP (every agent — also one strom did not start: a
|
|
52
|
+
conversation opened anywhere, a bot on its own server)
|
|
53
|
+
strom where things stand and the next step — run it before each step
|
|
54
|
+
strom session start the next task of the queue (or: strom session start T0003, the one
|
|
55
|
+
the user chose): its brief — the task, what is known, the method
|
|
56
|
+
… work on that task only; record every finding at once …
|
|
48
57
|
strom task done T0001 --result "…" a complete negative search is a result
|
|
49
|
-
strom session close --summary "…" --next "…" (not finished: --continue)
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
58
|
+
strom session close --summary "…" --next "…" (not finished: --continue) — it proposes the next tasks
|
|
59
|
+
then tell the user what was found (strom person card …) and what comes next (strom plan), and ask
|
|
60
|
+
before the next session. The next step is strom's queue: what the user wants instead becomes a
|
|
61
|
+
task first (strom task add …, or strom research new …) — never search outside a session and its task.
|
|
62
|
+
In a conversation the next task is best begun in a fresh context (Claude Code: /clear) — suggest
|
|
63
|
+
it to the user; many tasks waiting: the agent working on its own (strom run, the user starts it
|
|
64
|
+
from strom's menu), every task in a fresh session
|
|
53
65
|
|
|
54
66
|
RECORDING
|
|
55
67
|
A record (register entry, certificate) — the source first, then its facts:
|
package/dist/core/tree.js
CHANGED
|
@@ -23,7 +23,7 @@ import * as git from "./git.js";
|
|
|
23
23
|
import { commitSeal, createKey, fingerprint, loadKey, sha256, signOp } from "./seal.js";
|
|
24
24
|
import { stringifyCanonical } from "./json.js";
|
|
25
25
|
export const TREE_FILE = "strom.json";
|
|
26
|
-
export const VERSION = "1.4.
|
|
26
|
+
export const VERSION = "1.4.1";
|
|
27
27
|
const GITIGNORE = `# Strom Research — local state and large files are not versioned
|
|
28
28
|
.strom/
|
|
29
29
|
/media/
|