strom-research 1.13.2-beta.5 → 1.13.2-beta.7

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 (88) hide show
  1. package/assets/lang/cs.json +234 -1
  2. package/assets/lang/de.json +234 -1
  3. package/assets/method/core.md +13 -3
  4. package/assets/method/enrich.md +21 -25
  5. package/assets/method/reading.md +32 -33
  6. package/assets/plugins/connectors/DISCOVERY.md +16 -1
  7. package/assets/plugins/gates/README.md +36 -1
  8. package/assets/plugins/gates/claude-usage/gate.json +1 -1
  9. package/assets/plugins/gates/claude-usage/gate.ts +100 -22
  10. package/dist/agents/effort.js +182 -0
  11. package/dist/agents/files.js +12 -8
  12. package/dist/agents/launch.js +15 -6
  13. package/dist/agents/profiles.js +53 -22
  14. package/dist/agents/scanreader.js +42 -21
  15. package/dist/brief/brief.js +433 -83
  16. package/dist/brief/sheet.js +10 -4
  17. package/dist/cli/colors.js +11 -0
  18. package/dist/cli/help.js +1 -1
  19. package/dist/cli/main.js +4 -3
  20. package/dist/cli/menu-settings.js +31 -4
  21. package/dist/cli/menu-waiting.js +32 -3
  22. package/dist/cli/menu.js +9 -1
  23. package/dist/cli/model-choice.js +50 -1
  24. package/dist/cli/tunereset.js +114 -0
  25. package/dist/cli/ui.js +215 -1
  26. package/dist/cli/wizard.js +5 -1
  27. package/dist/cli.js +5 -2
  28. package/dist/commands/analysis.js +135 -15
  29. package/dist/commands/browse.js +22 -2
  30. package/dist/commands/calibrate.js +518 -0
  31. package/dist/commands/clips.js +4 -4
  32. package/dist/commands/connectors.js +434 -28
  33. package/dist/commands/gates.js +16 -7
  34. package/dist/commands/guide.js +21 -6
  35. package/dist/commands/index.js +1 -0
  36. package/dist/commands/intake.js +1 -0
  37. package/dist/commands/media.js +104 -39
  38. package/dist/commands/meta.js +14 -2
  39. package/dist/commands/read.js +171 -37
  40. package/dist/commands/readers.js +131 -17
  41. package/dist/commands/readings.js +88 -0
  42. package/dist/commands/session.js +158 -16
  43. package/dist/commands/setup.js +173 -15
  44. package/dist/commands/start.js +10 -4
  45. package/dist/commands/tasks.js +46 -9
  46. package/dist/commands/transcripts.js +3 -3
  47. package/dist/core/assets.js +11 -4
  48. package/dist/core/changelog.js +106 -14
  49. package/dist/core/clock.js +37 -2
  50. package/dist/core/config.js +39 -3
  51. package/dist/core/connector.js +57 -2
  52. package/dist/core/edge.js +8 -2
  53. package/dist/core/evidence.js +7 -0
  54. package/dist/core/gate.js +111 -11
  55. package/dist/core/hypolinks.js +121 -6
  56. package/dist/core/lines.js +99 -0
  57. package/dist/core/live.js +22 -7
  58. package/dist/core/media.js +42 -0
  59. package/dist/core/mediaindex.js +24 -2
  60. package/dist/core/metrics.js +212 -0
  61. package/dist/core/net.js +21 -1
  62. package/dist/core/phrases.js +20 -0
  63. package/dist/core/reader.js +47 -1
  64. package/dist/core/readstats.js +1735 -0
  65. package/dist/core/sandbox.js +37 -0
  66. package/dist/core/schema.js +1 -0
  67. package/dist/core/session.js +6 -2
  68. package/dist/core/stories.js +6 -0
  69. package/dist/core/tidy.js +109 -2
  70. package/dist/core/transcripts.js +330 -0
  71. package/dist/core/tree.js +1 -1
  72. package/dist/core/tune.js +639 -0
  73. package/dist/core/tuneask.js +823 -0
  74. package/dist/core/tunereset.js +378 -0
  75. package/dist/core/views.js +55 -3
  76. package/dist/core/viewsample.js +366 -0
  77. package/dist/core/viewsizes.js +78 -0
  78. package/dist/gedcom/export.js +24 -4
  79. package/dist/gedcom/validate.js +7 -4
  80. package/dist/runners/antigravity.js +97 -17
  81. package/dist/runners/claude.js +139 -11
  82. package/dist/runners/codex.js +70 -11
  83. package/dist/runners/grok.js +77 -9
  84. package/dist/runners/jsonl.js +61 -3
  85. package/dist/runners/opencode.js +25 -2
  86. package/dist/runners/runner.js +50 -2
  87. package/dist/runners/script.js +12 -1
  88. package/package.json +1 -1
@@ -134,9 +134,199 @@
134
134
  "ui.setup.model.recommended": "{model} (doporučeno)",
135
135
  "ui.setup.model.own.is": "Nechat na agentovi (teď {model})",
136
136
  "ui.setup.model.now": "{model} (zvoleno teď)",
137
+ "ui.effort.ask": "Jak hluboce má {agent} uvažovat, než odpoví (hloubka uvažování)?",
138
+ "ui.effort.high": "high – doporučeno: staré rukopisy se čtou s nejlepším nastavením; limit předplatného dojde dřív (v testu došel po 18 minutách i na low)",
139
+ "ui.effort.xhigh": "xhigh – ještě déle; limit dojde ještě dřív",
140
+ "ui.effort.medium": "medium",
141
+ "ui.effort.low": "low – limit vydrží déle; rukopisy se čtou méně pečlivě",
142
+ "ui.effort.own": "Nechat na vlastním nastavení agenta {agent}",
143
+ "ui.effort.own.is": "Nechat na vlastním nastavení agenta {agent} (teď {value})",
144
+ "ui.effort.now": "{value} (zvoleno teď)",
145
+ "ui.effort.line": "{agent}: model {model}, hloubka uvažování {effort}",
146
+ "ui.effort.strom": "{value} (nastavení strom)",
147
+ "ui.effort.args": "{value} (vlastní přepínač tohoto běhu)",
148
+ "ui.effort.config": "{value} – z {file}",
149
+ "ui.effort.profile": "{value} – z {file}, profil {profile}",
150
+ "ui.effort.default": "výchozí nastavení agenta {agent}",
151
+ "ui.doc.codex": "Codex",
137
152
  "ui.chat.app.model.chosen": "V aplikaci {app} zvolit pro výzkum model {model} (zvolený v nastavení).",
138
153
  "ui.settings.model": "Model výzkumu ({agent}): {model}",
139
154
  "ui.settings.model.own": "vlastní model agenta",
155
+ "ui.views.title": "Ladění čtení snímků · {agent}: snímků {n}, knih {books}, velikosti {sizes} px",
156
+ "ui.views.find": "Nalezení zápisu na celém snímku:",
157
+ "ui.views.find.row": " {size} px na místě {located} z {n} · na snímku bez něj {wrong} z {neg} · {cost}",
158
+ "ui.views.read": "Přečtení zápisu z poloviny nebo strany:",
159
+ "ui.views.read.row": " {size} px přečteno {keys} z {total} · nejistých míst {unsure} · {cost}",
160
+ "ui.views.rule": "Menší velikost se uloží jen při jasném výsledku: každý zápis nalezený na místě jako u největší velikosti a žádný navíc na snímku bez něj; přečteno celkem aspoň tolik, žádný zápis o víc než jeden údaj méně, nejistých míst ne víc.",
161
+ "ui.views.stored": "Uloženo pro {agent} ({date}): hledání {find} px · čtení {read} px — řídí se tím strom media view a strom read; zpět na výchozí: strom media calibrate --reset",
162
+ "ui.views.kept": "Bez jasného výsledku: nic se neuložilo, velikosti zůstávají, jak byly.",
163
+ "ui.views.unclear.find": "Hledání: bez jasného výsledku — zůstává výchozí ({size} px).",
164
+ "ui.views.unclear.read": "Čtení: bez jasného výsledku — zůstává výchozí ({size} px).",
165
+ "ui.views.failed": "Čtení, která nedoběhla: {failed} — nic se neuložilo, velikosti zůstávají, jak byly.",
166
+ "ui.views.few": "Na vyladění čtení snímků je málo snímků se známou pravdou: {have} z potřebných {need}. Takový snímek je sken záznamu, který cituje doložený údaj, s jeho slovy (přepisem) a už na tomto počítači; chybí ještě {more} — vzniknou běžnou prací agenta, zkusit znovu po několika sezeních. Do té doby platí výchozí velikosti.",
167
+ "ui.views.ask": "Vyladit čtení snímků pro {agent}: {readers} placených čtení {n} snímků tohoto výzkumu ve velikostech {sizes} px, asi {cost} (typický odhad; ceny agenta se mohou lišit). Spustit?",
168
+ "ui.views.no": "Nic se nespustilo; velikosti zůstávají, jak byly.",
169
+ "ui.views.estimate": "Snímků {n}, knih {books}, {readers} čtení ve velikostech {sizes} px, asi {cost} — spouští člověk: strom media calibrate",
170
+ "ui.views.offer": "čtení snímků bylo vyladěno pro {before}, pro {now} zatím ne: strom media calibrate (spouští člověk; placená práce modelu)",
171
+ "ui.views.progress": "▶ {what} · {size} px · snímky: {n}",
172
+ "ui.views.what.find": "hledání",
173
+ "ui.views.what.read": "čtení",
174
+ "ui.views.cost.unknown": "cena neznámá",
175
+ "ui.views.spent": "Čtení stála {cost}.",
176
+ "ui.tune.q.title": "Otázky ke čtení snímků · {agent} – rozhoduje člověk; bez odpovědi se nic nemění:",
177
+ "ui.tune.q.waiting": "Otázky čekají na rozhodnutí člověka: {n} – strom media calibrate --questions",
178
+ "ui.tune.q.none": "Žádná otázka ke čtení snímků nečeká ({agent}).",
179
+ "ui.tune.q.recommended": "(doporučeno)",
180
+ "ui.tune.q.held": "Zodpovězeno dřív, znovu až při změně dat: {n}",
181
+ "ui.tune.q.person": "Odpovídá jen člověk: strom media calibrate --questions v terminálu, nebo v menu Co čeká; z relace agenta se ptá okno systému.",
182
+ "ui.tune.q.window": "Odpovědět na otázku ke čtení snímků – „{text}“: {label}?",
183
+ "ui.tune.q.kept": "✓ Odpověď uložena: {label}.",
184
+ "ui.tune.q.kept.tasks": "✓ Přidané úkoly: {tasks} – ve frontě s prioritou práce, ze které vzešly.",
185
+ "ui.tune.q.kept.notasks": "Teď není koho hledat: žádný úkol nepřibyl (každá osoba už jeden má, nebo není na kraji stromu ani v rozpracovaném směru).",
186
+ "ui.tune.q.kept.calibrate": "Kalibraci spouští člověk: strom media calibrate (cena se řekne předem).",
187
+ "ui.tune.q.kept.reset": "Vrátí se příkazem: {command}",
188
+ "ui.tune.q.kept.vision": "✓ Skeny se odteď čtou modelem {model} (model.vision).",
189
+ "ui.tune.q.kept.vision.tree": "model.vision je vlastní nastavení tohoto výzkumu: strom config set model.vision {model} --for-tree",
190
+ "ui.tune.q.requests": "{n} požadavků navíc na {host}, asi {minutes} min v jeho tempu",
191
+ "ui.tune.q.smaller": "Knihy se čtou dobře, ale stojí zřetelně víc než ostatní ({n}). Kalibrovat menší pohledy?",
192
+ "ui.tune.q.smaller.why": "{books}: {ratio}× obvyklá cena za sken, čtení ne méně jisté (skeny {scans}). Menší pohledy jen z placené kalibrace na vlastních známých záznamech výzkumu – nikdy samy.",
193
+ "ui.tune.q.c.calibrate": "Kalibrovat (placené; cena se řekne předem)",
194
+ "ui.tune.q.c.later": "Později",
195
+ "ui.tune.q.c.never": "Nikdy",
196
+ "ui.tune.q.weak": "Kniha {book} ({title}): záporů na slabých skenech {n}, teď je tu ostřejší kopie. Hledat znovu?",
197
+ "ui.tune.q.weak.why": "{n} z {of} záporů vzniklo na pohledech zvětšených nad detail skenů; ostřejší kopie ({copies}) mají až {gain}× víc detailu.",
198
+ "ui.tune.q.c.edge": "Ano, u osob na kraji stromu nebo v rozpracovaném směru (úkolů asi {tasks})",
199
+ "ui.tune.q.c.brief": "Jen uvést v zadání agenta",
200
+ "ui.tune.q.c.no": "Ne",
201
+ "ui.tune.q.sharper": "Kniha {book} ({title}) se čte hůř než ostatní a její archiv dává ostřejší výřezy. Stáhnout ostřejší výřezy nejistých snímků?",
202
+ "ui.tune.q.sharper.why": "Nejisté nebo zvětšené {value} proti {base} u ostatních knih; výřezy archivu mají {gain}× víc detailu. Požadavků navíc {n} proti {day} za den na {host} – do desetiny.",
203
+ "ui.tune.q.sharper.why.many": "Nejisté nebo zvětšené {value} proti {base} u ostatních knih; výřezy archivu mají {gain}× víc detailu. Požadavků navíc {n} proti {day} za den na {host} – víc než desetina: archiv se šetří.",
204
+ "ui.tune.q.c.sharper": "Ano: výřezy nejistých snímků ({n})",
205
+ "ui.tune.q.index": "Knihy se procházely stránku po stránce, i když je znám rejstřík místa ({n}). Od kolika skenů napřed rejstřík?",
206
+ "ui.tune.q.index.why": "{books}: prošlo se skenů {scans}; rejstřík místa ({indexes}) najde stránku pár pohledy – jeho zápis i jeho absence jsou ale jen vodítko.",
207
+ "ui.tune.q.c.from": "Od {n} skenů",
208
+ "ui.tune.q.c.never.index": "Nikdy – procházet jako dosud",
209
+ "ui.tune.q.vision": "Rukopis čte {vision}, výzkum {lead}, a čtení jsou méně jistá. Číst skeny znovu modelem {lead}?",
210
+ "ui.tune.q.vision.why": "Nejisté s {vision}: {pv} z {nv} čtení; s {lead}: {pl} z {nl}.",
211
+ "ui.tune.q.c.lead": "Ano: skeny číst modelem {lead}",
212
+ "ui.tune.q.c.keep.model": "Ponechat {vision}",
213
+ "ui.tune.q.reset": "{scope}: čtení se zhoršilo po samočinné změně {what} ({at}). Vrátit ji?",
214
+ "ui.tune.q.scope.key": "Čtení snímků",
215
+ "ui.tune.q.reset.why.M5": "Nejistá čtení {before} před změnou, {after} po ní (skeny {nb} → {na}).",
216
+ "ui.tune.q.reset.why.M10": "Čtenáři bez výsledku {before} před změnou, {after} po ní (skeny {nb} → {na}).",
217
+ "ui.tune.q.reset.why.M1": "Cena za sken {before} před změnou, {after} po ní, čtení ne jistější (skeny {nb} → {na}); změna šla k přesnosti.",
218
+ "ui.tune.q.c.reset": "Vrátit ({command})",
219
+ "ui.tune.q.c.keep": "Ponechat",
220
+ "ui.o.tune": "otázky ke čtení čekají na rozhodnutí člověka ({n}): strom media calibrate --questions",
221
+ "ui.waiting.tune": "Otázka ke čtení snímků: {text}",
222
+ "ui.waiting.tune.read": "Rozhodnout {k}: čtení snímků",
223
+ "ui.tune.title": "Čtení snímků · {agent} · {days} dní od {since} — z vlastních záznamů výzkumu, zdarma",
224
+ "ui.tune.none": "Čtení snímků · {agent}: zatím nic naměřeno — čísla přinášejí sezení strom run a čtenáři strom read.",
225
+ "ui.tune.noscans": "Čtení snímků · {agent}: tady zatím žádné přečtené snímky (sezení {sessions}).",
226
+ "ui.tune.samples": "Sezení {sessions} · čtenáři {readers} · skeny {scans} · pohledy {views}",
227
+ "ui.tune.recovered": "dopočteno ze starších záznamů (méně jisté): {n}",
228
+ "ui.tune.backfill.partial": "Starší sezení dopočtena jen zčásti: záznamy smazané úklidem {gone}, nečitelné {skipped} — dopočtené údaje jsou neúplné",
229
+ "ui.tune.cost.usd": "Cena za sken {scan} · za pohled {view} (známá u {known} skenů)",
230
+ "ui.tune.cost.tokens": "Na sken: nové tokeny {new} · výstup {out} · z cache {cr} (cena neuvedena; známé u {known} skenů)",
231
+ "ui.tune.cost.unknown": "Cena za sken: neznámá (neuvedena)",
232
+ "ui.tune.cost.unknownSessions": "cena čtení neznámá u sezení: {n} (spotřeba jejich podagentů neuvedena)",
233
+ "ui.tune.views": "Pohledy na sken: {perScan} · celé {whole} · půlky {half} · výřezy {crop} · části {split} · zvětšené {enlarged}",
234
+ "ui.tune.context": "Kontext vyčištěn: {clears}× (čtenáři s vyčištěním: {with} z {of}), poprvé zhruba při {ctx} tokenech; pohledy po něm znovu otevřené {reopened} (odhad)",
235
+ "ui.tune.context.none": "Kontext: nevyčistil se (čtenáři: {of})",
236
+ "ui.tune.context.unknown": "Vyčištění kontextu: neznámé (spotřeba se hlásí až na konci)",
237
+ "ui.tune.readers": "Čtenáři bez výsledku: {bad} z {n}",
238
+ "ui.tune.readers.halted": "Čtenáři zastavení přihlášením, limitem plánu nebo chybou: {n} – nepočítají se, o čtení neříkají nic",
239
+ "ui.tune.books": "Knihy:",
240
+ "ui.tune.more": " … další: {n} (všechny: --json)",
241
+ "ui.tune.book": " {id} {title}: skeny {scans} · pohledy na sken {vps}",
242
+ "ui.tune.book.unsure": "nejisté {value} z {n} čtení (ostatní knihy {base})",
243
+ "ui.tune.book.unsure.nobase": "nejisté {value} z {n} čtení",
244
+ "ui.tune.book.marked": "s nečitelným místem {n} z {of}",
245
+ "ui.tune.book.doubtful": "[?] v přepisech: {n} z {of}",
246
+ "ui.tune.book.enlarged": "zvětšené pohledy {value}",
247
+ "ui.tune.book.nosharper": "ostřejší výřez nebyl {n}×",
248
+ "ui.tune.book.weak": "zápory na slabých skenech {n} z {of}",
249
+ "ui.tune.book.requests": "požadavky {n}",
250
+ "ui.tune.book.unread": "staženo a nepřečteno {n} z {of}",
251
+ "ui.tune.hosts": "Archivy:",
252
+ "ui.tune.host": " {host}: sezení {sessions} · požadavky {requests} ({perSession} na sezení, {perImage} na snímek) · čekání {wait} min · limit vyčerpán {later}×",
253
+ "ui.tune.signals": "Nad obvyklou mírou téhož agenta a modelu:",
254
+ "ui.tune.signals.none": "Nic nad obvyklou mírou téhož agenta a modelu.",
255
+ "ui.tune.sig.M1": " {scope}: cena za sken {value}, {ratio}× obvyklé ({base})",
256
+ "ui.tune.sig.M2": " {scope}: pohledy na sken {value}, {ratio}× obvyklé ({base})",
257
+ "ui.tune.sig.M3": " pohledy znovu otevřené po vyčištění kontextu: {n} z posledních {of} čtenářů (odhad)",
258
+ "ui.tune.sig.M4": " kontext se vyčistil: {n} z posledních {of} čtenářů, poprvé zhruba při {ctx} tokenech",
259
+ "ui.tune.sig.M5": " {scope}: čte se hůř než ostatní knihy — nejisté {value} proti {base} (n={n})",
260
+ "ui.tune.sig.M5.nobase": " {scope}: čte se hůř než ostatní knihy — nejisté {value}, ostatní knihy žádné (n={n})",
261
+ "ui.tune.sig.M6": " {scope}: zvětšené pohledy {value} proti {base} (n={n}) — skeny mají méně detailu, než pohledy ukazují",
262
+ "ui.tune.sig.M6.nobase": " {scope}: zvětšené pohledy {value}, ostatní knihy žádné (n={n}) — skeny mají méně detailu, než pohledy ukazují",
263
+ "ui.tune.sig.M7": " {scope}: portál ostřejší výřez nedal {n}×",
264
+ "ui.tune.sig.M8": " {scope}: sezení s čekáním na limit archivu: {n} z {of} ({wait} min, vyčerpán {later}×)",
265
+ "ui.tune.sig.M9": " {scope}: {value} z {n} záporů na slabých skenech (pohledy převážně zvětšené)",
266
+ "ui.tune.sig.M10": " čtenáři bez výsledku: {n} z posledních {of}",
267
+ "ui.tune.sig.M11": " {scope}: staženo a nepřečteno {value} ({n} z {of} snímků)",
268
+ "ui.tune.short": "Zatím málo pro srovnání: {list} — přibude s dalšími sezeními.",
269
+ "ui.tune.m.M1": "cena za sken",
270
+ "ui.tune.m.M2": "pohledy na sken",
271
+ "ui.tune.m.M3": "znovu otevřené pohledy",
272
+ "ui.tune.m.M4": "vyčištění kontextu",
273
+ "ui.tune.m.M5": "nejistá čtení",
274
+ "ui.tune.m.M6": "zvětšené pohledy",
275
+ "ui.tune.m.M8": "čekání na archiv",
276
+ "ui.tune.m.M10": "čtenáři bez výsledku",
277
+ "ui.tune.m.M11": "nepřečtené snímky",
278
+ "ui.tune.recommend": "Doporučení, která strom sám nenastavil (rozhoduje člověk, nebo je tune.auto vypnuté):",
279
+ "ui.tune.rec.A1": " {scope}: celý snímek ve velikosti čtení, dvoustrana v půlkách, výřez aspoň 1:1 — ze skenů, které už tu jsou, žádný požadavek navíc",
280
+ "ui.tune.rec.A2": " menší dávky: skeny na čtenáře asi {to} místo {from} — víc volání, menší kontext",
281
+ "ui.tune.rec.A3": " čtenář skončí asi po {to} pohledech místo {from} (podle naměřeného kontextu)",
282
+ "ui.tune.rec.A4": " {scope}: napřed celé snímky, půlky a výřezy jen u kandidátů — tytéž požadavky v jiném pořadí",
283
+ "ui.tune.rec.A5": " {scope}: další výřezy této knihy se nenabízejí — ostřejší portál nemá",
284
+ "ui.tune.rec.A7": " {scope}: stahovat jen to, co úkol čte, další dávku až po přečtení předchozí — méně požadavků",
285
+ "ui.tune.rec.D1": " menší pohledy jen kalibrací, kterou spouští člověk (placená): strom media calibrate",
286
+ "ui.tune.rec.D4": " {scope}: znovu prohledat slabé skeny jen na rozhodnutí člověka, s počtem požadavků navíc",
287
+ "ui.tune.tuned": "Nastavil strom sám — jen k přesnosti nebo k menší zátěži archivu, zpět na výchozí, až to nebude potřeba:",
288
+ "ui.tune.off": "strom tu sám nic nenastavuje: tune.auto je vypnuté.",
289
+ "ui.tune.calibrated": "Velikosti zkalibrované na {n} známých záznamech ({at}): hledání {find} px, čtení {read} px",
290
+ "ui.tune.back": " {scope}: {what} zpět na výchozí — už to není potřeba",
291
+ "ui.tune.restart": " {scope}: {what} se už nepoužívá — jiný model ({model}) začíná znovu",
292
+ "ui.tune.what.views.size": "větší pohledy",
293
+ "ui.tune.what.reading.batch": "menší dávky",
294
+ "ui.tune.what.reading.views": "dřívější zastavení",
295
+ "ui.tune.what.fetch.order": "napřed celé snímky",
296
+ "ui.tune.what.parts.none": "žádné výřezy",
297
+ "ui.tune.what.fetch.only-needed": "stahovat jen to, co úkol čte",
298
+ "ui.tune.cap": "Vyšší hodinový strop archivu se nikdy nedoporučuje: určuje ho služba nebo člověk.",
299
+ "ui.tune.others": "Naměřeno také pro: {list}",
300
+ "ui.tune.reset.ask": "Vrátit výchozí nastavení čtení snímků? Vrátí se: {list}",
301
+ "ui.tune.reset.title": "Nastaveno pro čtení snímků · {agent}:",
302
+ "ui.tune.reset.cols": "co|rozsah|teď → výchozí|zdroj|datum|proč",
303
+ "ui.tune.reset.none": "Pro čtení snímků není nic nastaveno, co by se vracelo ({scope}): platí výchozí hodnoty.",
304
+ "ui.tune.reset.dry": "Jen výpis, nic se nevrátilo. Vrací se se souhlasem člověka: {command}",
305
+ "ui.tune.reset.no": "Nic se nevrátilo; nastavení zůstává, jak bylo.",
306
+ "ui.tune.reset.done": "Vráceno na výchozí: {n}. strom nic z toho sám znovu nenastaví {days} dní nebo do nových čtení; měření zůstávají.",
307
+ "ui.tune.reset.tasks": "Úkoly {tasks} zůstávají: patří k výzkumu.",
308
+ "ui.tune.reset.others": "Jiné výzkumy na tomto počítači si drží vlastní hodnoty knih a archivů: {list}. Vrací se v každém zvlášť: {command}",
309
+ "ui.tune.reset.last": "Zpět na výchozí (nejdřív výpis, vrátí se jen po souhlasu): strom media calibrate --reset",
310
+ "ui.tune.reset.src.calibrated": "kalibrace",
311
+ "ui.tune.reset.src.tuned": "nastavil strom",
312
+ "ui.tune.reset.src.answered": "odpověď",
313
+ "ui.tune.reset.scope.key": "model",
314
+ "ui.tune.reset.scope.research": "tento výzkum",
315
+ "ui.tune.reset.scope.all": "všechny modely",
316
+ "ui.tune.what.calibration": "kalibrované velikosti",
317
+ "ui.tune.what.answer": "odpověď na {kind}",
318
+ "ui.tune.unknownKey": "agent a model nezaznamenány (starší záznamy)",
319
+ "ui.o.views": "snímky",
320
+ "ui.settings.views": "Vyladit čtení snímků ({state})",
321
+ "ui.settings.views.default": "výchozí velikosti",
322
+ "ui.settings.views.done": "vyladěno {date}",
323
+ "ui.settings.views.other": "zatím vyladěno pro jiný model",
324
+ "ui.doc.views": "čtení snímků",
325
+ "ui.doc.views.default": "výchozí velikosti: hledání {find} px · čtení {read} px",
326
+ "ui.doc.views.done": "vyladěno {date}: hledání {find} px · čtení {read} px",
327
+ "ui.doc.tuneworse": "po samoladění",
328
+ "ui.doc.tuneworse.a": "{scope}: čte se hůř od změny stromu z {at} ({what}) — {metric} {before} → {after} ({nb} skenů před, {na} po); doporučeno ji vrátit",
329
+ "ui.doc.tuneworse.b": "{scope}: dražší od změny stromu z {at} ({what}) — {before} → {after} na sken ({nb} skenů před, {na} po), čtení o nic jistější; doporučeno ji ponechat (šla k přesnosti), vrátit ji jde",
140
330
  "ui.setup.level": "Co smí agent dělat bez ptaní?",
141
331
  "ui.setup.level.ask": "Ptát se mě na všechno mimo výzkum",
142
332
  "ui.setup.level.auto": "Pracovat samostatně – ptát se jen u riskantních kroků (doporučeno)",
@@ -233,6 +423,7 @@
233
423
  "session.chat": "rozhovor skončil dřív, než se sezení zavřelo",
234
424
  "transcript.read": "Přepis napsal čtenář ({model}) z výřezu zápisu a druhý čtenář ho zkontroloval ({date}, strom transcripts).",
235
425
  "session.agent": "agent skončil ({outcome}), aniž by sezení zavřel",
426
+ "session.limit": "limit plánu agenta se vyčerpal dřív, než bylo sezení zavřeno{resets}",
236
427
  "ui.tree.created": "✓ Rodokmen „{name}“ je založený: {dir}",
237
428
  "ui.chat.trust": "Claude Code se poprvé zeptá, jestli této složce důvěřovat. Je to složka rodokmenu, kterou vytvořil strom – stačí potvrdit „Yes, proceed“.",
238
429
  "ui.doc.program": "program",
@@ -336,6 +527,9 @@
336
527
  "story.sources.where": "digitalizované noviny, knihy a archivy země a doby; web (rejstříky a rodokmeny jsou jen vodítko)",
337
528
  "story.sources.why": "vyprávění má říct víc než matriky – a každé slovo pořád na záznamu; potom strom navrhne vyprávění",
338
529
  "story.sources.done": "každý nález zapsaný jako pramen a údaj s citací (osoba doložená víc než jménem), dějiny místa jako pramen, každé hledání zapsané – i marné",
530
+ "tune.negatives.what": "Znovu hledat: {name} v knize {book} – dřívější hledání nic nenašlo na slabých skenech, teď je tu ostřejší kopie",
531
+ "tune.negatives.why": "záporné hledání ({searches}) proběhlo na pohledech zvětšených nad detail skenů; ostřejší kopie má {gain}× víc detailu – člověk rozhodl hledat znovu",
532
+ "tune.negatives.done": "snímky {pages} přečtené znovu na ostřejších kopiích: zápis nalezen a zapsán, nebo hledání znovu zapsané jako záporné",
339
533
  "review.research": "Revize: {name}",
340
534
  "review.unproven.research": "Osoby bez vlastního záznamu",
341
535
  "review.more": " (a po nich dalších {count})",
@@ -662,6 +856,7 @@
662
856
  "ui.help.cmd.pack": "Zabalit výzkum do jednoho souboru ZIP, aby v něm mohl pokračovat někdo jiný",
663
857
  "ui.help.cmd.unpack": "Rozbalit rodokmen, který někdo poslal",
664
858
  "ui.help.cmd.tidy": "Uvolnit místo, které si strom drží vedle výzkumu (nejdřív ukáže, pak se zeptá)",
859
+ "ui.help.cmd.media.calibrate": "Vyladit velikost snímků pro agenta a model výzkumu na jeho vlastních doložených záznamech (placená práce modelu; cena se řekne předem)",
665
860
  "ui.help.cmd.check": "Zkontrolovat výzkum: vše v pořádku, nic změněné mimo strom",
666
861
  "ui.help.cmd.config.get": "Přečíst nastavení",
667
862
  "ui.help.cmd.config.set": "Změnit nastavení",
@@ -697,6 +892,8 @@
697
892
  "ui.tidy.kind.kept": "Starší poslání z aplikace Strom, už zapsaná (změny jsou v historii)",
698
893
  "ui.tidy.kind.inbox": "Dávná poslání z aplikace Strom, která ve schránce nechal starší strom",
699
894
  "ui.tidy.kind.pointers": "Zbytky skončených pracovních sezení",
895
+ "ui.tidy.kind.metrics": "Měření čtení snímků a stahování (starší nebo nad stanovenou velikost)",
896
+ "ui.tidy.kind.gate": "Záznam odpovědí podmínky samostatné práce agenta (starší nebo nad stanovenou velikost)",
700
897
  "ui.tidy.row": " {what}: počet {n}, celkem {size} → {does}",
701
898
  "ui.tidy.does.remove": "smaže se",
702
899
  "ui.tidy.does.shrink": "zmenší se",
@@ -727,6 +924,7 @@
727
924
  "ui.recent.facts": "Nové a upřesněné údaje:",
728
925
  "ui.recent.refined": "upřesněno",
729
926
  "ui.recent.stories": "Napsaná vyprávění:",
927
+ "ui.recent.tune": "Čtení snímků, nastavil strom sám:",
730
928
  "ui.recent.sessions": "Co dělal agent:",
731
929
  "ui.recent.more": "… a další: {n}",
732
930
  "ui.recent.morechanges": "(a další změny: {n})",
@@ -978,7 +1176,7 @@
978
1176
  "ui.run.which.bad": "Čísla ze seznamu, 1 až {n}: např. 2 nebo 1,4 nebo 2-5.",
979
1177
  "ui.run.limit": "Na jeden úkol má agent nejvýš {minutes} minut; pak ho strom zastaví a úkol vrátí do fronty (nastavení run.minutes).",
980
1178
  "ui.run.empty": "Fronta je prázdná – co hledat, stačí agentovi říct v rozhovoru.",
981
- "ui.run.browser": "· {name}: snímky přes prohlížeč – agent dostane nástroje prohlížeče pro {hosts}; musí běžet Chrome s rozšířením Claude",
1179
+ "ui.run.browser": "· {name}: snímky přes prohlížeč – nástroje prohlížeče pro {hosts} v sezeních, jejichž úkol je může potřebovat; musí běžet Chrome s rozšířením Claude",
982
1180
  "ui.run.browser.model": " pozor: nástroje prohlížeče potřebují model, který své kroky zkontroluje – Sonnet nebo Opus, ne {model}: strom config set model.lead sonnet",
983
1181
  "ui.run.full": "· oprávnění: plná – agent smí vše kromě toho, co oprávnění rodokmenu zakazují (zpět: strom config set agent.permissions auto)",
984
1182
  "ui.menu.working.more": "Samostatně teď pracují agenti: {n}.",
@@ -994,6 +1192,12 @@
994
1192
  "ui.run.gate.no": "ne",
995
1193
  "ui.run.gate.noanswer": "neodpověděla, jak má (strom gate test)",
996
1194
  "ui.run.stop.gate.declined": "nespuštěno — podmínka „{name}“: {reason}",
1195
+ "ui.run.gate.cap": "· {name}: nastavený strop – kontroluje se před každým sezením; žádné „přesto začít“ ho nepřekročí",
1196
+ "ui.run.gate.said": "· podmínka {name}: {word}{reason} (kód {status}; .strom/gate.log)",
1197
+ "ui.run.stop.gate.cap": "strop podmínky „{name}“ – {reason} (pevná hranice z run.gate; „přesto začít“ ji nepřekročí)",
1198
+ "ui.run.cap.finish": "⏳ {session}: limit agenta na {used} % ({kind}) – sezení dostalo žádost zapsat, co našlo, a skončit; za stropem další sezení nezačne",
1199
+ "ui.run.limit.five_hour": "pětihodinové okno",
1200
+ "ui.run.limit.seven_day": "týden",
997
1201
  "ui.run.loop": "Nechat ho pracovat, dokud je co dělat a dovolí to podmínka „{name}“",
998
1202
  "ui.consent.gate.set": "Nechat podmínku „{name}“ rozhodovat, kdy agent pracující sám pokračuje?",
999
1203
  "ui.consent.gate.unset": "Odebrat podmínku „{name}“ — agent pracující sám se jí už nebude ptát?",
@@ -1280,6 +1484,7 @@
1280
1484
  "log.session.start": "Agent začal: {name}",
1281
1485
  "log.session.close": "Agent skončil: {name}",
1282
1486
  "log.lesson.add": "Poznatek: {name}",
1487
+ "log.lesson.edit": "Opravený poznatek: {name}",
1283
1488
  "log.hypothesis.add": "Hypotéza: {name}",
1284
1489
  "log.hypothesis.argue": "Hypotéza zvážena: {name}",
1285
1490
  "log.hypothesis.link": "Co by verze hypotézy spojila: {name}",
@@ -1318,6 +1523,24 @@
1318
1523
  "log.research.done": "Směr ukončen: {name}",
1319
1524
  "log.mode.archive": "Výzkum je teď archiv",
1320
1525
  "log.mode.research": "Výzkum je znovu zapnutý",
1526
+ "log.reading.loose": "Pročteno snímků: {n}",
1527
+ "log.clips": "Zápisy vyznačené na snímcích: {n} z {total}",
1528
+ "log.transcripts": "Zápisy přepsané z výřezů: {n} z {total}",
1529
+ "log.tree.create": "Výzkum založen: {name}",
1530
+ "log.repair": "Data vrácena do posledního zapečetěného stavu",
1531
+ "log.chat.saved": "Uloženo po rozhovoru s agentem",
1532
+ "log.migrate": "Data rodokmenu převedena pro novější strom",
1533
+ "log.setting": "Změněno nastavení výzkumu: {key}",
1534
+ "log.image": "{name}, obr. {image}",
1535
+ "log.media.edit": "Upravený snímek: {name}",
1536
+ "log.media.retract": "Odvolaný snímek: {name}",
1537
+ "log.input.edit": "Materiál doplněn: {name}",
1538
+ "log.input.skip": "Materiál odložen jako nepoužitelný: {name}",
1539
+ "log.input.sort": "Materiál roztříděn: {name}",
1540
+ "log.record.edit": "Upraveno: {name}",
1541
+ "ui.gate.timeout": "neodpověděla do {s} s",
1542
+ "ui.gate.signal": "ukončena signálem {signal}",
1543
+ "ui.gate.status": "skončila s kódem {status}",
1321
1544
  "ui.waiting.title": "Agent potřebuje ({n}):",
1322
1545
  "ui.waiting.do": "Co udělat: {what}",
1323
1546
  "ui.waiting.ask": "agent to řekne v rozhovoru",
@@ -1478,6 +1701,16 @@
1478
1701
  "ui.gate.asked": "před každým sezením strom run se ptá: {gate} (strom config unset run.gate: žádná)",
1479
1702
  "ui.gate.unset": "žádná se neptá: strom config set run.gate <název> (jen uživatel)",
1480
1703
  "ui.gate.folder": "složka: {folder} – složka podmínky nakopírovaná sem je nainstalovaná (rozhraní: README.md tamtéž)",
1704
+ "ui.gate.cap.week": "strop nastaven: ptá se před každým sezením každého běhu; sezení v práci je požádáno o dokončení při {pct} % týdne",
1705
+ "ui.gate.cap.window": "strop nastaven: ptá se před každým sezením každého běhu; sezení v práci je požádáno o dokončení při {pct} % pětihodinového okna",
1706
+ "ui.error.gate.cap": "{cap}: strop je celé číslo od 1 do 100 – procento týdne, přes které běh nikdy nepůjde",
1707
+ "ui.error.gate.cap.none": "--cap bez čísla: strop je celé číslo od 1 do 100 – procento týdne, přes které běh nikdy nepůjde",
1708
+ "ui.error.gate.cap.hint": "např. strom config set run.gate \"{name} 15 --cap 95\"",
1709
+ "ui.gate.test.go": "pokračovat",
1710
+ "ui.gate.test.wait": "počkat do {at}",
1711
+ "ui.gate.test.stop": "zastavit",
1712
+ "ui.gate.test.error": "chyba – běh by se zastavil",
1713
+ "ui.gate.test.hard": "(strop: pevné zastavení, žádné „přesto začít“)",
1481
1714
  "ui.hook.none": "žádné hooky",
1482
1715
  "ui.hook.on": "zapnuté: {hooks} (strom hook off <název>)",
1483
1716
  "ui.hook.unset": "žádný není zapnutý: strom hook on <název> (jen uživatel)",