Visual für TOB Werkzeug-Evidenz TOB TOB ist Novas Tool Observation Bus. Er hält beobachtete Werkzeug-Evidenz fest, damit Aufgabenabschluss, Lernen, Sicherheit und Zustandsprüfung nicht nur auf Agentenbehauptungen beruhen. Überblick Beobachtet Agentenmodell Agentenfluss Evidenzzustände Fehlerregeln MCP-Vertrag Agenten-Werkzeuge

TOB

TOB steht für Tool Observation Bus. Nova nutzt TOB, um Agenten-Werkzeugaktivität in beobachtete Evidenz zu übersetzen, die andere Bereiche mit Agentenbehauptungen vergleichen können.

TOB hält fest, was Nova während echter Ausführung beobachten kann: Eine Seite wurde gelesen, ein Selektor berührt, Text eingegeben, Navigation versucht, ein Werkzeug schlug fehl oder ein Gate stoppte einen Aufruf vor der Ausführung.

Eine Abschlussnotiz ist eine Behauptung. TOB-Evidenz ist die beobachtbare Spur hinter dieser Behauptung. ETM kann einen Aufgabenabschluss ablehnen, wenn geprüfte Einheiten nicht genug beobachtete Stützung haben; ALP, LCJ, PKS, OK, CLS und AAG können dieselbe Evidenz nach eigenen Regeln nutzen.

Nutzer bedienen TOB selten direkt. Agenten und Integratoren sehen TOB über Felder wie evidenceSummary, verificationResults, taskAwareness.completionAllowed, coverageEvidence und Task-URL-Coverage-Gates.

Kurz gesagt

  • TOB speichert beobachtete Werkzeug-Evidenz, kein dauerhaftes Gedächtnis.
  • TOB trennt Agentenbehauptungen von Ausführungssignalen.
  • Evidenz wird erst nützlich, wenn sie an Aufgabe, Tab oder Scope gebunden ist.
  • ETM kann voreiligen Abschluss mit reason=evidence_gap blockieren.
  • Coverage Scan liefert serverregistrierte coverageEvidence für vollständige URL-Aufgaben.
  • TOB-Evidenz umgeht nie Nutzerfreigaben oder Handlungsschutz.

Was TOB beobachtet

TOB hält evidenzrelevante Signale aus Agenten-Werkzeugarbeit fest. Es macht nicht jedes Ereignis zu geprüftem Wissen, sondern bewahrt Signale für spätere Prüfung.

  1. Werkzeugausführung TOB kann festhalten, welches Werkzeug lief, ob es erfolgreich war, wie lange es dauerte, welches Ziel genutzt wurde und ob ein logischer Erfolg oder Fehler entstand.
  2. Oberflächenkontext Bei Browserarbeit können Seiten-URL, Route, Tab, Dokument, Selektor, Eingabe und Vorher-/Nachher-Kontext erhalten bleiben, damit spätere Prüfungen wissen, was berührt wurde.
  3. Handlungsart Beobachtete Arbeit wird als read, navigate, interact, write oder meta eingeordnet.
  4. Signale Gelesener Inhalt, sichtbare Oberfläche, DOM-Exposition, Selektorberührung, eingegebener Text, abgeschlossene Navigation, versuchte Mutation und bestätigte Mutation sind Beispiele für TOB-Signale.
  5. Aufgaben-Evidenz Für ETM vergleicht TOB geprüfte Aufgabeneinheiten mit beobachteter Evidenz und gibt das Ergebnis in evidenceSummary aus.
  6. Coverage-Evidenz Für vollständige URL-Arbeit liefert nova.coverage_scan ein coverageEvidence-Objekt aus registrierten Scans, statt agentenseitige Coverage-Behauptungen zu vertrauen.

Wann brauche ich TOB?

TOB ist relevant, wenn Nova beweisen muss, dass Arbeit wirklich stattgefunden hat, bevor ein Ergebnis akzeptiert wird: große URL-Reviews, Compliance- oder Accessibility-Prüfungen, Aufgabenläufe mit vielen Einheiten, Selektorreparatur, Lernen aus echten Ergebnissen oder jeder Ablauf, bei dem eine plausible Abschlussnotiz nicht reicht.

Wissensmodell für Agenten

Für einen Agenten beantwortet TOB vier Fragen: Welche Arbeit wurde behauptet, welche Signale wurden beobachtet, wie stark ist die Evidenz, und welche Entscheidung soll ein anderer Bereich daraus treffen?

Behauptung
Ein gemeldeter Zustand des Agenten, etwa eine geprüfte Aufgabeneinheit oder ein Abschlusswunsch für eine Instanz.
Beobachtung
Ein Signal aus Werkzeugausführung, das Nova sehen kann: Lesen, Klick, Eingabe, Navigation, Fehler, blockierter Aufruf oder strukturierter Scan.
Scope
Die Arbeitsgrenze, die Beobachtungen an eine Aufgabe oder ein Ziel bindet. Ohne Scope kann Evidenz existieren, aber keine Aufgabeneinheit sicher beweisen.
Evidenzgrad
strong bedeutet starke beobachtete Stützung; weak bedeutet vorhandenes, aber unvollständiges Signal; none bedeutet fehlende erwartete Evidenz nach vollständiger Aufnahme; unknown bedeutet, dass Nova noch nicht beurteilen kann.
Evidenzlücke
Eine Differenz zwischen claimedCheckedUnits und der Evidenz, die die aktive Richtlinie akzeptiert. Ist die Lücke zu groß, kann Completion reason=evidence_gap zurückgeben.
Coverage Evidence
coverageEvidence ist ein Ergebnis registrierter Scans. Es wird erst trusted, wenn serverseitige Prüfungen passen, darunter URL-Konsistenz und Plausibilität zwischen behaupteter und gemessener Extraktion.
Verification Report
verificationResults fasst explizite Verifikationsschritte zusammen, die über evidenceReport eingereicht wurden.

So nutzen Agenten TOB-Infos

TOB ist ein Evidenzweg, keine sichtbare Aufgabenliste. Der Agent arbeitet, meldet Fortschritt, liest Evidenzzustand und schließt erst ab, wenn beobachtete Evidenz die Behauptung stützt.

  1. Aufgabe oder Claim scopen Der Agent arbeitet in einem beanspruchten Tab oder in einer ETM-Instanz, die mit nova.task_instance_create erstellt wurde. Dadurch bekommt TOB eine Grenze für Evidenzkorrelation.
  2. Normale Browser-Werkzeuge nutzen Aufrufe wie nova.perceive, nova.read_text, nova.navigate, nova.click_selector oder nova.type_selector erzeugen beobachtbare Dispatch-Signale.
  3. Geprüfte Arbeit melden Bei Aufgabeninstanzen markiert der Agent Einheiten über nova.task_instance_progress. Diese geprüften Einheiten bilden die Behauptungsmenge, die TOB später gegen Beobachtungen prüft.
  4. Coverage Scan für vollständige URL-Arbeit nutzen Wenn eine vollständige URL-Aufgabe blockfähige Evidenz braucht, nutzt der Agent nova.coverage_scan mit registriertem scanId statt coverageEvidence über beliebige Evaluation zu behaupten.
  5. Evidenzzustand vor Abschluss lesen nova.task_instance_get kann evidenceSummary, urlCoverage und taskAwareness.completionAllowed liefern, damit der Agent sieht, ob Abschluss wahrscheinlich besteht.
  6. Nur mit ausreichender Evidenz abschließen nova.task_instance_complete kann completed=false mit verification_failed, evidence_gap oder Task-URL-Coverage-Hinweisen zurückgeben, wenn beobachtete Evidenz nicht reicht.

Wann TOB-Evidenz gilt

TOB-Zustand beschreibt Evidenzreife. Er kann eine Behauptung stützen oder zurückweisen, gibt aber nie allein Erlaubnis für riskante Website-Handlungen.

Nicht zugeordnetes Signal scope missing
Bedeutung
Ein Werkzeugsignal existiert, ist aber nicht sicher an die Aufgabe oder das Ziel gebunden, das die Behauptung macht.
Benötigte Evidenz
Kein passender Aufgaben-, Tab- oder Workflow-Scope für den beobachteten Dispatch.
Agentenverhalten
Nicht als Beweis für eine Aufgabeneinheit zählen. Kontext neu herstellen und erneut beobachten.
Darf Abschluss stützen
Nein.
Beobachteter Dispatch tool outcome
Bedeutung
Nova hat einen Werkzeugaufruf und sein Grundresultat beobachtet.
Benötigte Evidenz
Werkzeugname, Ziel, Erfolg/Fehler, Dauer, Handlungsart, Oberfläche und optionale Vorher-/Nachher-Hinweise.
Agentenverhalten
Als Roh-Evidenz nutzen. Ein einzelner Dispatch kann für Abschluss noch zu schwach sein.
Darf Abschluss stützen
Nicht allein.
Schwache Evidenz weak
Bedeutung
Eine passende Beobachtung existiert, aber der Nachweis ist unvollständig.
Benötigte Evidenz
Eine passende Beobachtung ohne genug read-artige Stützung oder ohne starkes Besuchsfenster.
Agentenverhalten
Bessere Evidenz sammeln, meist durch erneutes Lesen oder Scannen des Ziels.
Darf Abschluss stützen
Hängt von der Richtlinie ab.
Starke Evidenz strong
Bedeutung
Die geprüfte Einheit hat beobachtete Stützung, die TOB verlässlich zählen kann.
Benötigte Evidenz
Eine passende read-artige Beobachtung und ein starkes Besuchs-/Lesefenster für dieselbe Aufgabeneinheit.
Agentenverhalten
Zu beobachteten geprüften Einheiten zählen und normale Abschlussprüfung fortsetzen.
Darf Abschluss stützen
Ja, wenn der Rest der Richtlinie passt.
Keine Evidenz none
Bedeutung
TOB erwartete Evidenz für eine deterministische Einheit, fand aber nach vollständiger Aufnahme keine passende Beobachtung.
Benötigte Evidenz
Deterministischer Locator existiert, Ingestion/Projection ist vollständig, aber keine passende Beobachtung wurde gefunden.
Agentenverhalten
Fehlende Einheit öffnen, beobachten, begründet ausschließen oder Aufgabe offen halten.
Darf Abschluss stützen
Nein, wenn die Lücke die Richtlinie überschreitet.
Unbekannte Evidenz unknown
Bedeutung
Nova kann die geprüfte Einheit aus den aktuellen Signalen nicht beurteilen.
Benötigte Evidenz
Kein Locator, kein deterministischer Locator, fehlende Scope-Bindung, unvollständige Ingestion oder unvollständige Projection.
Agentenverhalten
Mehr Beobachtung oder bessere Unit-Locators bevorzugen. Die Richtlinie entscheidet, ob unknown als Lücke zählt.
Darf Abschluss stützen
Hängt von der Richtlinie ab.
Evidenzlücke reason=evidence_gap
Bedeutung
Die beobachtete Stützung liegt unter der aktiven Abschlussgrenze.
Benötigte Evidenz
evidenceSummary.gapPercent überschreitet evidenceSummary.maxGapPercent.
Agentenverhalten
Nach fehlenden Beobachtungen reparieren und erneut versuchen. Die Ablehnung ist retryable.
Darf Abschluss stützen
Nein.
Trusted Coverage coverageEvidence.trust.trusted=true
Bedeutung
Ein registrierter Coverage-Scan hat die serverseitigen Vertrauensprüfungen bestanden.
Benötigte Evidenz
Registrierter Scan, passende effectiveUrl, gemessene Text-Plausibilität und Extraktionsmetriken.
Agentenverhalten
Für URL-Coverage-Fortschritt oder Reconcile nutzen, danach normal durch das Task-Gate abschließen.
Darf Abschluss stützen
Ja, nur als Coverage-Evidenz.

Fehler- und Schutzbedingungen

Diese harten Kanten sollten Agenten und Integrationen bei TOB-nahen Feldern erwarten.

Bedingung Beobachtetes Signal Agentenverhalten
Unbekanntes Argument Task-Instance-Werkzeuge und nova.coverage_scan weisen unbekannte Top-Level-Felder zurück. Nur die veröffentlichten Felder des jeweiligen Werkzeugs senden; nicht auf Metadaten-Passthrough verlassen, wenn das Schema ihn nicht ausweist.
Task-Snapshot ohne Evidenz evidenceSummary fehlt, wenn keine geprüften Einheiten existieren oder Korrelation keine nützliche Zusammenfassung liefert. Zuerst Fortschritt melden oder den Task-Zustand lesen, statt Evidenz anzunehmen.
Completion-Richtlinie nicht erfüllt nova.task_instance_complete liefert completed=false mit fachlichem Grund und currentState. Verbleibende, blockierte, fehlgeschlagene oder verpflichtende Einheiten vor erneutem Versuch bearbeiten.
Verifikation fehlgeschlagen reason=verification_failed und verificationResults nennen erforderliche fehlgeschlagene Fast-Gate-Schritte. Sichtbare Ursache beheben oder den Verifikationsvertrag anpassen; fehlgeschlagenen Schritt nicht ignorieren.
Evidenzlücke reason=evidence_gap, retryable=true, gapPercent, maxGapPercent und policyMode erklären den abgelehnten Abschluss. Stärkere Beobachtungen sammeln, Coverage Scan nutzen oder nicht belegbare Einheiten korrekt markieren.
Coverage Scan ohne Scan-ID scanId ist für nova.coverage_scan erforderlich. Unbekannte Scan-IDs werden abgelehnt; bekannte IDs können zurückgegeben werden. Je nach Aufgabe nova_full_page_text_v1, nova_structured_dom_v1 oder nova_i18n_spellcheck_v1 nutzen.
Coverage-Trust fehlgeschlagen coverageEvidence.trust.trusted=false mit Gründen wie scan_returned_null_or_empty, scan_result_not_json, effective_url_mismatch oder claimed_text_exceeds_measured. Payload als Telemetrie behandeln, nicht als blockfähige Coverage-Evidenz. Vom richtigen Ziel erneut scannen oder besseren Scan wählen.
Agentenbehauptete Coverage Agentenseitig geliefertes coverageEvidence über beliebige Evaluation ist für Block-Mode-Coverage nicht trusted. Für serverregistrierte Coverage-Evidenz nova.coverage_scan nutzen.
Task-URL-Coverage-Gate _aagGates.taskUrlCoverage kann offene URL-Einheiten melden und nova.coverage_scan empfehlen. Verbleibende URLs prüfen, legitime Ausnahmen ausschließen, Reconcile-Dry-Run ausführen oder User-Force-Complete nur nutzen, wenn erlaubt.

Agenteninterpretationsbeispiel

Das Beispiel zeigt TOB als Abschlussvertrag: Der Agent liest Evidenz, erkennt unvollständige beobachtete Stützung und sammelt weitere Nachweise, bevor er Completion erneut versucht.

Task-Snapshot mit Evidenz

{
  "tool": "nova.task_instance_get",
  "arguments": {
    "instanceId": "task_42"
  }
}

Relevante Antwortfelder

{
  "structuredContent": {
    "evidenceSummary": {
      "claimedCheckedUnits": 12,
      "observedCheckedUnits": 9,
      "strong": 7,
      "weak": 2,
      "none": 2,
      "unknown": 1,
      "ingestionComplete": true
    },
    "taskAwareness": {
      "completionAllowed": false
    }
  }
}

Agenteninterpretation

{
  "claim": "12 units marked checked",
  "observedSupport": "9 units have TOB evidence",
  "risk": "completion may be rejected as evidence_gap",
  "nextStep": "inspect the none/unknown units before calling task_instance_complete again"
}

MCP-Vertrag

Das ist die nüchterne Schicht unter der Erklärung. TOB veröffentlicht kein einzelnes eigenes Werkzeug; Agenten lesen den Vertrag über Task-Instance-, Verifikations- und Coverage-Felder.

Ausführungsregel: Kein TOB-Feld darf allein eine Website-Handlung autorisieren; TOB-Evidenz darf Completion, Lernen oder Zustandsprüfung nur stützen, wenn Aufgabe und Sicherheitsgates es erlauben.

Variable Typ / Werte Standard Wirkung
nova.task_instance_get MCP-Tool; Args enthalten instanceId und optionale include*-Limits instanceId erforderlich Liest aktuellen Task-Zustand und kann evidenceSummary, urlCoverage und taskAwareness ausgeben.
nova.task_instance_create MCP-Tool; Args enthalten profileId, adHocContext, targetUrl, currentScope, agentId, unitSource, declaredTaskKind profileId optional; adHocContext für Ad-hoc-Läufe erforderlich Erstellt die gescopte ETM-Instanz, gegen die TOB-Evidenz später korreliert werden kann.
nova.task_instance_progress MCP-Tool; Args enthalten instanceId, expectedInstanceRev, clientEventId, Unit-Updates task-spezifisch Schreibt geprüfte, ausgeschlossene, blockierte, fehlgeschlagene oder entdeckte Units, gegen die spätere Evidenz geprüft wird.
nova.task_instance_complete MCP-Tool; Args: instanceId, expectedInstanceRev, clientEventId, note, completionNote, evidenceReport instanceId, expectedInstanceRev und clientEventId erforderlich Flusht Abschluss, prüft Richtlinie und TOB-Evidenz und gibt completed plus Ablehnungsgrund zurück.
nova.task_instance_verify MCP-Tool; Args: instanceId instanceId erforderlich Liefert Verifikationsschritte, die später als evidenceReport[] eingereicht werden können.
evidenceSummary object aus task_instance_get und task_instance_complete nur wenn geprüfte Einheiten existieren Fasst beobachtete Evidenz gegen behauptete geprüfte Einheiten zusammen.
evidenceSummary.claimedCheckedUnits integer berechnet Geprüfte Aufgabeneinheiten, die der Agent durch Fortschritt oder Abschlusszustand behauptet hat.
evidenceSummary.observedCheckedUnits integer berechnet Geprüfte Einheiten, die durch starke oder schwache TOB-Evidenz gestützt sind.
evidenceSummary.strong integer berechnet Einheiten mit starker beobachteter Stützung.
evidenceSummary.weak integer berechnet Einheiten mit passender, aber unvollständiger beobachteter Stützung.
evidenceSummary.none integer berechnet Einheiten mit deterministischen Locators, aber ohne passende Beobachtung nach vollständiger Ingestion.
evidenceSummary.unknown integer berechnet Einheiten, deren Evidenz wegen Locator, Scope, Ingestion oder Projection nicht beurteilbar ist.
evidenceSummary.ingestionComplete boolean berechnet Zeigt, ob relevante Evidenzquellen für den Scope vollständig aufgenommen wurden.
evidenceSummary.gapPercent / maxGapPercent / policyMode number; number; string nur bei evidence_gap-Ablehnung Erklärt, warum Completion von der aktiven Evidenzrichtlinie abgelehnt wurde.
reason=evidence_gap / retryable=true task_instance_complete-Ablehnungsfelder nur wenn Gap die Richtlinie überschreitet Signalisiert, dass Abschluss nach stärkerer Evidenz erneut versucht werden kann.
taskAwareness.completionAllowed boolean berechnet in Task-Snapshots Zeigt vor einem Abschlussversuch, ob die fachliche Completion-Richtlinie aktuell erfüllt ist.
verificationResults phase, noRequiredFailed, summary, steps[], duplicateStepIds nur bei Verifikationsvertrag/Evidenz Berichtet explizite Verifikations-Evidenz, die eingereicht oder übersprungen wurde.
verificationResults.summary total, passed, failed, inconclusive, skipped, failedRequired berechnet Aggregiert Ergebnisse der Verifikationsschritte.
verificationResults.steps[] stepId, state, gate, required, detail berechnet Zeigt jeden Verifikationsschritt und ob er passed, failed, inconclusive oder skipped war.
evidenceReport[] task_instance_complete-Arg; stepId, state, toolResult, detail optional Vom Agenten eingereichte Verifikations-Evidenz für einen Abschlussversuch.
evidenceReport[].state passed | failed | inconclusive | skipped pro Eintrag erforderlich Agentenseitig bewertetes Verifikationsergebnis. Erforderliche fehlgeschlagene Fast-Gate-Schritte können Completion blockieren.
nova.coverage_scan MCP-Tool; Args: scanId, targetId, scopeOptions targetId=active; scanId erforderlich Führt registrierten Coverage-Scan aus und gibt coverageEvidence zurück. Neue Clients sollten die veröffentlichten Schema-Felder nutzen.
scanId nova_full_page_text_v1 | nova_structured_dom_v1 | nova_i18n_spellcheck_v1 erforderlich Wählt den registrierten Scan. Unbekannte IDs werden abgelehnt.
scopeOptions.includeShadowDom / includeIframes / waitForHydration boolean-Felder registry-definiert Optionale Scope-Optionen aus dem Coverage-Scan-Schema.
scopeOptions.hydrationTimeoutMs integer 0-30000 registry-definiert Optionales Hydration-Wartebudget aus dem veröffentlichten Schema.
coverageEvidence version, registeredScanId, scanHash, document, extraction, trust, raw Antwort von coverage_scan Evidenzblock für Coverage-aware Tasks und Telemetrie.
coverageEvidence.document.* effectiveUrl, visibleTextCharsMeasured, nodeCountMeasured, iframeCount, shadowRootCount berechnet Gemessene Dokumentfakten für Trust- und Coverage-Bewertung.
coverageEvidence.extraction.textChars / textCoverageRatio integer; number 0.0-1.0 berechnet Zeigt, wie viel Text der Scan im Verhältnis zum gemessenen sichtbaren Text extrahiert hat.
coverageEvidence.trust.trusted / reason boolean; string berechnet Zeigt, ob serverseitige Trust-Prüfungen bestanden wurden und warum.
rawUrlBefore / rawUrlAfter / targetId string; string; string Antwort von coverage_scan Zeigt aufgelöstes Ziel und URL vor/nach dem registrierten Scan.
urlCoverage coverageSchemaVersion, urlUnits*, reportingGroupsTotal, observations*, last* nur bei Task-Instanzen mit URL-Einheiten Fasst URL-Coverage in task_instance_get zusammen.
_aagGates.taskUrlCoverage gateId, status, urlUnits, evidence, resolution nur bei abgelehnter Completion mit offenen URL-Einheiten Leitet den Agenten zu Coverage Scan, Exclusion, Reconcile-Dry-Run oder User-Force-Complete.
nova.task_instance_reconcile_coverage MCP-Tool; Args: instanceId, dryRun, observationCutoff dryRun=true Spielt gespeicherte Beobachtungen gegen URL-Einheiten zurück und schlägt Coverage-Upgrades vor oder wendet sie an, wenn erlaubt.
Agenten-Werkzeuge

MCP-Tools für Agenten. Diese Variablen und Werkzeugnamen sind für Agenten und Integratoren gedacht. Sie sind keine normalen Bedienbefehle für Menschen in der Oberfläche.

Variable Bedeutung
nova.perceive Die sichtbare Seite verstehen
nova.read_text Seitentext lesen
nova.navigate Eine Seite öffnen
nova.route In einer Web-App wechseln
nova.click_selector Ein Element anklicken
nova.type_selector Text in ein Feld schreiben
nova.file_upload Eine Datei hochladen
nova.dismiss_blockers Sichtbare Blocker entfernen
nova.run_sequence Mehrere Schritte sicher ausführen
nova.tab_claim Einen Tab reservieren
nova.tab_release Einen Tab freigeben
nova.task_instance_create Aufgabenlauf starten
nova.task_instance_get Liest Task-Zustand und kann evidenceSummary, urlCoverage und taskAwareness.completionAllowed enthalten.
nova.task_instance_complete Versucht den Abschluss nach TOB-Korrelation und kann ungestützte Behauptungen mit evidence_gap oder verification_failed ablehnen.
nova.task_instance_progress Meldet geprüfte, ausgeschlossene, blockierte oder fehlgeschlagene Einheiten, die TOB später mit Evidenz vergleicht.
nova.task_instance_verify Liefert Verifikationsschritte, deren Ergebnisse beim Abschluss als evidenceReport gesendet werden können.
nova.coverage_scan Führt einen registrierten Scan aus und liefert coverageEvidence für vollständige URL-Coverage-Aufgaben.
nova.task_instance_reconcile_coverage Spielt gespeicherte Beobachtungen gegen URL-Einheiten zurück und schlägt Coverage-Upgrades vor oder wendet sie an.