Besitzer-Schreibtisch
Fragen im Chat werden begraben, und der Besitzer muss antworten, wenn der Agent fragt, nicht wenn er Zeit hat. Der Schreibtisch bewegt sie aus dem Chat in ein Board: Ein Tab „Braucht dich“ mit jedem offenen Eintrag, ein gelber Tab „Dringend“ nur, wenn etwas nicht warten kann, ein Tab „Entschieden“ für beantwortete, ein Tab „Später“ für das, was warten kann, und ein Archiv für Erledigtes. Auf einem Telefon oder iPad wischt der Besitzer seitlich, um zwischen den Tabs zu wechseln. Der Besitzer antwortet dort; du liest die Antworten, handelst und archivierst.
Was dafür nötig ist
-
Claude-Artefakte mit den Fähigkeiten
dbundcomments, auf claude.ai oder in der Claude-Desktop-App. Fügeassetsnur hinzu, wenn die Einträge angehängte Dateien haben werden. -
Werkzeuge:
Artifact, um das Board zu veröffentlichen und Dateien hochzuladen;ArtifactData, um Einträge zu schreiben und zu lesen;ArtifactComments, um das Board zu beobachten und die Kommentare zu beantworten, die dich wecken.
Lade sie mit ToolSearch, wenn sie aufgeschoben sind.
-
Eine Hauptschleifen-Sitzung. Nur eine Hauptschleifen-Sitzung kann eine Beobachtung halten; ein Unteragent kann das nicht.
Ohne diese, sage es und behalte die Fragen im Chat als nummerierte Liste. Tue nicht so, als gäbe es ein Board.
Wer darauf schreibt
Nur eine Sitzung:
- der Chief of Staff, falls es einen gibt (siehe die Chief-of-Staff-Skill);
- ansonsten die Sitzung, die mit dem Besitzer arbeitet.
Zwei Schreiber würden Einträge doppelt nummerieren und sich gegenseitig archivieren.
Das Board erstellen
-
Fülle die Vorlage
assets/desk.htmlaus. Sie hat drei Platzhalter:{{TITLE}}: der Name des Boards, zwei bis vier Wörter, z. B. „Rezept-App-Schreibtisch“;{{EYEBROW}}: eine kleine Zeile über dem Titel, z. B. „Rezept-App · vom Chief of Staff“;{{AGENT}}: wer die Antworten liest, so wie es mitten im Satz gelesen wird: „der Chief of Staff“ oder „Claude“. Nur einfache Wörter, ohne Anführungszeichen.
Zum Beispiel:
sed -e 's/{{TITLE}}/Rezept-App-Schreibtisch/g' -e 's/{{EYEBROW}}/Rezept-App · vom Chief of Staff/g' -e 's/{{AGENT}}/der Chief of Staff/g' <skill>/assets/desk.html > desk.html -
Veröffentliche es mit dem
Artifact-Werkzeug:capabilities: {"db": {}, "user": {}, "comments": {}}, plus"assets": {}, wenn die Einträge Dateien haben werden;icon: "inbox";- eine einzeilige
description.
Durch die Veröffentlichung beginnt diese Sitzung auch, das Board zu beobachten.
-
Überprüfe es einmal:
ArtifactDatalistauf der Sammlungitems. Sie ist leer, und die Seite sagt „Nichts braucht dich.“ -
Gib dem Besitzer den Link und sage, das Board ist privat für ihn.
-
Schreibe den Link in eine Datei im Projekt (die Statusseite oder die Projektnotizen), damit eine neue Sitzung ihn finden kann.
Außerhalb von Claude in einem normalen Browser geöffnet, zeigt die Seite erfundene Beispieleinträge mit einem Hinweis, dass dies so ist. Das dient für Vorschauen und Screenshots; es schreibt nie etwas.
Durch Antworten geweckt werden
Ein Datenbank-Schreiben weckt dich nicht; ein Kommentar an Claude schon. Wenn der Besitzer antwortet, eine Aufgabe als erledigt markiert oder eine Frage stellt, sendet die Seite einen kurzen Kommentar in den eigenen Thread des Eintrags, z. B. „№ 12 · Beta am Freitag öffnen? Antwort: Ja“. Dieser Kommentar weckt die Sitzung, die das Board beobachtet.
- Die Veröffentlichung startet die Beobachtung, aber es ist nur eine Beobachtung, sobald
ArtifactCommentswatch(ohneurl) das Board als verbunden auflistet, mit aktivierten Auto-Antworten. - Eine neue Sitzung muss erneut beobachten, mit
ArtifactCommentswatchund derurldes Boards. Auto-Antworten aktivieren sich nur, wenn der Besitzer diesen Link in seiner eigenen Nachricht gegeben hat, also kommt der Link in den Neustart-Prompt, den der Besitzer einfügt. - Die Seite teilt dem Besitzer mit, in welchem Fall er sich befindet: „…wird in dem Moment benachrichtigt, in dem du antwortest“ oder „Hier gespeichert; … liest es bei seinem nächsten Check.“
- Wenn Kommentare dich nicht erreichen können (sie sind ausgeschaltet oder keine Sitzung beobachtet), greife auf Folgendes zurück:
- lies den Schreibtisch zu Beginn jedes Durchlaufs;
- bitte den Besitzer, nach dem Antworten „Schreibtisch“ im Chat zu sagen;
- biete einen geplanten Check an, nur wenn der Besitzer das möchte.
Ein Eintrag
Jeder Eintrag ist ein Dokument in der Sammlung items. Seine Dokument-ID ist sein Handle: verwende q<Nummer> für Entscheidungen und t-<Wort> für Aufgaben. Verwende durchgängig einfache Wörter, da der Besitzer es möglicherweise auf einem Telefon liest.
| Feld | Geschrieben von | Was es enthält |
|---|---|---|
kind | du | "decision" oder "task" |
status | beide | "open"; die Seite setzt "answered"; du setzt "archived" |
later | du | true parkt es auf dem Tab „Später“ |
urgent | du | true platziert es auf einem gelben Tab „Dringend“ und oben in der Übersicht. Nur für das, was nicht warten kann: eine Frist heute, oder etwas, das für Benutzer kaputt ist |
num | du | eine laufende Nummer, dieselbe, die du im Chat verwendest; nie wiederverwendet |
title | du | die Frage selbst, beantwortbar mit den Auswahlmöglichkeiten, oder die Aufgabe als Aktion |
body, bullets | du | kurze Absätze und Punkte: warum es wichtig ist, was es beeinflusst |
recommendation | du | zuerst deine Antwort, dann der Grund, in ein oder zwei Sätzen |
choices | du | zwei bis vier Antworten; standardmäßig Ja / Nein |
steps, stepsDone | du; Seite | die Schritte einer Aufgabe und die abgehakten (Indizes) |
copies | du | [{label, text}]: Text, den der Besitzer irgendwo einfügen wird |
links | du | [{label, url, note}]: Anleitungen, Seiten, angehängte Dateien |
from | du | welche Sitzung gefragt hat |
priority | du | 1 zuerst; sortiert die offenen Einträge |
created | du | wann du es gepostet hast (ISO-Zeit) |
answer | Seite | {choice, note, at} |
asks | Seite; du | [{q, at, via, a, aAt}]: die Fragen des Besitzers zum Eintrag; du füllst a und aAt aus |
thread | Seite | der Kommentarthread, den die Seite für diesen Eintrag verwendet; lass ihn in Ruhe |
outcome, archived | du | was passiert ist, in einer Zeile; wann du es archiviert hast |
assets/example-items.json enthält sieben erfundene Einträge, wie sie ArtifactData batch schreibt. Verwende sie, um ein Board auszuprobieren, niemals auf dem echten Board des Besitzers.
Einträge posten
- Füge neue Einträge mit
ArtifactDatahinzu. Verwendesetfür ein neues Dokument undbatchfür mehr als zwei. Veröffentliche die Seite nie neu, um Einträge zu ändern. - Sage dann im Chat, was du hinzugefügt hast, mit einem Link zu jedem Eintrag:
<Board-URL>#<Dokument-ID>öffnet seinen Tab und scrollt dorthin. - Wenn du auch mit einer Chat-Liste offener Fragen arbeitest (wie der Chief of Staff es tut), behalte beide gleich: dieselbe Nummer, dieselben Wörter.
- Schreibe jeden Eintrag so, dass er für sich allein steht: Was wird entschieden, was ändert sich in beide Richtungen und was empfiehlst du.
- Eine Aufgabe listet die genauen Schritte auf, den Text, der in
copieseingefügt werden soll, und die Anleitung inlinks. - Um eine Datei anzuhängen: Lies die gesamte Datei zuerst, lade sie dann mit
Artifact(urldes Boards,asset: true) hoch und verlinke sie als/_blob/<Asset-ID>. - Gib niemals Passwörter, Schlüssel oder private Datensätze in einen Eintrag. Eine Aufgabe, die ein Geheimnis benötigt, sagt, wo man es eingeben soll, niemals, was es ist.
Lesen, handeln, archivieren
Wenn ein Kommentar dich weckt oder zu Beginn eines Durchlaufs:
ArtifactDataqueryaufitemsmitwhere: [["status", "==", "answered"]]. Lies dieanswerjedes Eintrags und alle neuenasks.- Handle gemäß der Antwort. Mit einem Chief of Staff leite die Wahl und Notiz des Besitzers wortwörtlich an die fragende Sitzung weiter.
- Der Kommentar und der Eintrag stimmen normalerweise überein.
- Wenn der Eintrag nicht als beantwortet gespeichert ist, der Kommentar aber eine Antwort enthält, ist der Kommentar das neuere Wort des Besitzers. Schreibe es selbst in den Eintrag.
- Archiviere den Eintrag:
updateihn mitstatus: "archived", einer einzeiligenoutcome(„Der Baumeister hat die Beta auf Freitag verschoben“) undarchived(der Zeitpunkt). Sichere jeden Schreibvorgang mitif_version, damit eine Antwort, die der Besitzer inzwischen geändert hat, nicht überschrieben wird. - Beantworte jeden offenen Eintrag in
asksim selben Eintrag. Sende das gesamteasks-Array zurück, mit ausgefülltemaundaAt, gesichert mitif_version. - Antworte im Kommentarthread mit einer Zeile („Verstanden: Verschiebe die Beta auf Freitag“), löse dann den Thread auf (
ArtifactCommentsreply, dannresolve).
Parke einen Eintrag mit later: true und hole ihn zurück mit later: false. Ein entschiedener Eintrag kann auf „Später“ bleiben, bis es Zeit ist, darauf zu reagieren. Archiviere anstatt zu löschen: Das Archiv ist die Aufzeichnung dessen, was entschieden wurde. Lösche nur auf Anweisung des Besitzers.
Status und Roadmap (optional)
Zwei weitere Tabs zeigen dem Besitzer, wo das Projekt steht, zwischen der Übersicht und den Einträgen. Jeder erscheint, sobald du sein Dokument in die Sammlung board schreibst, und wird live aktualisiert. Schreibe jedes mit ArtifactData (set beim ersten Mal, dann update gesichert mit if_version). assets/example-board.json enthält ein erfundenes Paar.
board/status: wo jede Sitzung steht. Aktualisiere es jedes Mal, wenn du das Team überprüfst; ein Chief of Staff schreibt es, wann immer er seine Statusseite aktualisiert.
| Feld | Was es enthält |
|---|---|
updated | wann du zuletzt geprüft hast (ISO-Zeit); die Seite zeigt an, wie lange es her ist |
oneLine | wo das Projekt steht, in einem Satz |
sessions | [{name, state, doing, last, restart}], eine Zeile pro Sitzung. state ist ein Wort oder zwei („Arbeitet“, „Wartet“, „An einem Limit angehalten“), und die Seite färbt es entsprechend ein. restart beginnt mit „Ja“, wenn es ein guter Moment ist, diese Sitzung neu zu starten |
done | was seit dem letzten Update abgeschlossen wurde, jeweils eine Zeile |
next | [{who, what}]: die nächsten Schritte, auch die des Besitzers (who: "you") |
Der Status-Tab zählt die dringenden und offenen Einträge des Besitzers automatisch; wiederhole sie nicht in oneLine.
board/roadmap: der Plan, Stufe für Stufe. Aktualisiere es, wenn eine Stufe oder einer ihrer Einträge sich bewegt.
| Feld | Was es enthält |
|---|---|
updated | wann du es zuletzt geändert hast |
headline | wo das Projekt in seinem Plan steht, in einem Satz |
stages | [{id, name, state, when, summary, items}], in Reihenfolge. state ist done, now, next oder later; items sind [{text, state}] mit done, now oder next. Die Stufe, die mit now markiert ist, öffnet sich oben |
Die Seite ändern
- Veröffentliche die Seite nur neu, um die Seite selbst zu ändern. Übergib dieselben Fähigkeiten oder lasse
capabilitiesweg, um sie zu behalten. - Wenn eine andere Sitzung das Board veröffentlicht hat, lies es zuerst (
Artifactread) und baue auf dem auf, was zurückkommt. - Die Einträge leben in der Datenbank, daher überleben sie eine Neuveröffentlichung.