Skip to content

v0.18.7

Choose a tag to compare

@LucioleAI LucioleAI released this 07 Oct 09:27

A running research run can now be steered: its limits changed, its nodes spoken to, its cards added, reassigned or cancelled. Pages carry the numbers printed on them, quotations are checked against the page they are cited on, and what a run spent can be seen. Everything here answers issue #9.

Update

misaka update --apply

An install from a release archive is updated by running the installer again:

curl -fsSL https://raw.githubusercontent.com/Luciole-Studio/Misaka-Agent/main/scripts/install.sh | sh
irm https://raw.githubusercontent.com/Luciole-Studio/Misaka-Agent/main/scripts/install.ps1 | iex

Research: a running run can be changed

  • Limits. /research limits [RUN_ID] --sister-parallel 2 … (or misaka research --limits RUN_ID …) changes a running run's limits with the options a new run takes. Each is read where it is used: Sister cards per node at once, nodes at once from the next level, depth and node limit at the next reconciliation, follow-ups and revisions at each node's next decision. A limit is never set below what the graph already holds.
  • Speak to a node. /research tell [RUN_ID] [--to NODE_ID] MESSAGE (or misaka research --tell RUN_ID [--to NODE_ID] "MESSAGE") reaches a running node's Last Order -- the root's when no node is named -- as if typed in her window. misaka dm reaches a contact session, never a running research node; its help now says so.
  • Change a node's cards while they run. Ask the node's Last Order to add a card, give a card that has not started to another Sister (one created since the plan was made, say), or cancel one. She records it with misaka_research_cards, checked as a plan's cards are; the run applies it at once, the cards already working go on, and the node's plan file lists what changed and why.
  • Roster changes are told. A Sister created or removed while a run works is a notice to Last Order.
  • A failed card is told at once, with its reason. What becomes of it (retry, go on without it, or fail the node) is still decided once the phase's other cards are back.

Spending

  • misaka usage lists what recent runs spent, in tokens and money; misaka usage --run RUN_ID shows one run by conversation (the root's Last Order from the run's start, each node, each card with its retries) and by model. /research status gives the total. Money is each call's price in the model catalogue; a call to a model with no price there is counted apart.
  • Reasoning tokens a provider reports are recorded (they are part of the output count, which was right all along).

Documents

  • Printed page numbers. Beside the file's page, doc_read, doc_find and doc_verify show the number printed on it: from the PDF's own page labels, or read from the running heads and footers. A citation can then name both ([doc p14; printed p. 351]).
  • Quotations are checked against the page they are cited on. doc_verify takes the page you cite and says when the quotation is on another page, or nowhere in the indexed text. Research cards can use it, and the ledger, the evidence the red team reads and SOURCES.md mark a quotation that is not where it is cited.
  • PDF outlines come with every install. The outline packages were an optional extra, which a release archive cannot add: no archive install had chapter outlines. They are dependencies now. misaka[...,pageindex] still installs.
  • A range of pages with no text gets doc_read's hint to look at the page image again.
  • Helper scripts a card writes are no longer warned about as documents the corpus refused.

Board and web

  • misaka task add TITLE --to SISTER --body-file FILE adds a card by hand, through the same checks as Last Order's; misaka task start ID runs a ready card in the terminal. misaka task ID --delete works as before.
  • Keyless web search walks past a free service that refuses this client (HTTP 401/402/403/5xx), as it does past one that throttles. When every service fails, the model is told so in one line; the services' own messages go to the log.
  • A Sister whose description contains a colon no longer drops out of the roster; a profile that does not read back is not reported as created.