Communitygithub.com

chuspeeism/doubaoplot

DoubaoPlot – Mit Origin editierbare wissenschaftliche Diagramme in Doubao/Doubao Work erstellen. Unterstützt auch Codex und Claude Code. Basierend auf einer Weiterentwicklung von hang-jin/editaplot mit einem 45-Diagramm-Auswahlmenü.

Was ist doubaoplot?

DoubaoPlot ist ein KI-Agenten-Skill, der es Entwicklern und Wissenschaftlern ermöglicht, direkt aus Doubao Work, Codex oder Claude Code heraus vollständig editierbare, reproduzierbare wissenschaftliche Diagramme mit Origin zu erstellen. Der Skill ist eine Erweiterung von hang-jin/editaplot und führt einen neuartigen „Selector-Modus“ ein: Ein lokaler Webserver zeigt 45 echte Origin-Beispielgrafiken an, aus denen der Benutzer per Klick auswählen kann. Dadurch entfällt das mühsame Beschreiben des gewünschten Diagrammtyps. Der Skill durchläuft einen vollständigen, auditierbaren Workflow: Dateninspektion, Planung, Rendering in Origin und Rücklesen der Ergebnisse. Er unterstützt Referenzbilder und direkte Diagrammangaben und ist auf physische Windows 10/11 x64 mit CPython 3.10–3.12 und Origin 2021+ beschränkt. Der gesamte Prozess ist so gestaltet, dass er auch für Anfänger zugänglich bleibt, ohne die Kontrolle über die wissenschaftliche Entscheidungsfindung zu verlieren.

Funktioniert mit✓Claude Code✓Codex CLI~Cursor
npx skills add chuspeeism/doubaoplot

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

EditaPlot

Verwandeln Sie eine wissenschaftliche Frage und eine schreibgeschützte Tabelle in eine überprüfbare, editierbare Origin-Grafik. Halten Sie das Erlebnis für Anfänger dialogorientiert; nutzen Sie die deterministische Engine für Inspektion, Planung, Rendering, Export und Rücklesen.

Entscheiden Sie zuerst, welchen Weg Sie gehen (Neu in der Doubao Work-Version)

Wenn ein Benutzer hereinkommt, schauen Sie zuerst, was er hat, und entscheiden Sie dann, wie Sie vorgehen. Spekulieren Sie nicht auf den Diagrammtyp, bevor der Benutzer eine Richtung angibt.

Was der Benutzer hatWelcher WegWie vorgehen
Ein Referenzbild („Zeichne das hier nach“, „Übernimm diesen Stil“)ReferenzbildmodusDem bestehenden Workflow folgen, beginnend bei Schritt 10 reference-inspect. Das Referenzbild beeinflusst nur die grafische Grammatik und sichere Stile, die durch bestätigte Daten gestützt werden; es fügt keine neuen Belege hinzu und verbirgt keine erforderlichen Elemente.
Der Diagrammtyp wurde explizit genannt („Zeichne ein Regenwolkendiagramm“, „ROC-Kurve“)Direkter ModusDem bestehenden Workflow folgen. Zuerst references/not-covered.md prüfen; wenn das gewünschte Diagramm in dieser Tabelle aufgeführt ist, direkt klarstellen, dass es diese Route nicht gibt – nicht probieren.
Nur Daten, keine Angabe zum Diagramm, oder explizit „Ich weiß nicht, welches Diagramm“AuswahlmodusSiehe unten. Dies ist der neue Pfad dieser Version und auch der häufigste Fall.

Auswahlmodus

Wenn ein Benutzer nicht weiß, welches Diagramm er möchte, lassen Sie ihn sehen und auswählen – das ist viel genauer, als ihn beschreiben zu lassen.

  1. Führen Sie python selector/selector.py aus. Es öffnet eine lokale Seite: 45 echte, von Origin erstellte Beispielgrafiken werden nach Kategorien sortiert angezeigt; der Benutzer klickt auf eine Grafik, und rechts werden die benötigten Datenspalten angezeigt, zusammen mit einer automatisch zusammengestellten vollständigen Anfrage.
    • Wenn der Host selbst ein integriertes Browser-Panel hat, verwenden Sie stattdessen python selector/selector.py --print-path, um den Pfad zu erhalten, und öffnen Sie ihn im Panel – kein separates Fenster öffnen.
  2. Der Benutzer klickt auf der Seite auf „An Doubao senden“; das Skript nimmt die zusammengestellte Anfrage entgegen und gibt sie auf der Standardausgabe aus; bei „Kopieren“ landet der Inhalt in seiner Zwischenablage – bitten Sie ihn, ihn einzufügen. Beide Wege sind gültig. Warten Sie nicht nur auf einen.
  3. Nachdem Sie diese Anfrage erhalten haben, kehren Sie zu Schritt 6 des bestehenden Workflows zurück (start → understand → Bestätigung → plan → Rendering → Validierung). Der Auswahlmodus dient nur dazu, die Anforderungen zu klären; er ändert kein Plotverhalten und überspringt keine Bestätigungsschritte.

Die vom Auswahlmodus angegebenen „benötigten Spalten“ sind ein Hinweis, kein Ergebnis. Ob die Daten des Benutzers diese Spalten tatsächlich enthalten, wird weiterhin von Schritt 7 understand spaltenweise überprüft; fehlende Spalten werden wie gewohnt gemeldet – gehen Sie nicht davon aus, dass die Daten vollständig sind, nur weil der Benutzer auf der Seite geklickt hat.

Wenn selector.py nicht startet (alle Ports belegt, keine grafische Oberfläche): bleiben Sie nicht stecken – geben Sie dem Benutzer den Seitenpfad, lassen Sie ihn die Datei per Doppelklick öffnen, auf „Kopieren“ klicken und den Inhalt zurück einfügen. Der Workflow läuft normal weiter.

Nur Windows-Berechtigungen im benötigten Umfang anfordern

  • Lesen Sie das gesamte Repository, die ausgewählte Tabelle und das optionale lokale Referenzbild.
  • Schreiben Sie nur in das EditaPlot-Repository, das Skill-Verzeichnis des aktuellen Benutzers (Doubao Work oder Codex) und den Ordner, der die ausgewählte Quelldatei enthält, für quellnahe Ergebnisse.
  • Starten Sie den lokalen Launcher, PowerShell/Python-Unterprozesse und eine EditaPlot-eigene Origin-Instanz in derselben aktiven interaktiven Windows-Benutzersitzung.
  • Ein normaler Host-Befehl kann zuerst in einem isolierten Konto ausgeführt werden. Wenn der Origin-Worker origin_codex_sandbox_context zurückgibt, reichen Sie eine formelle, eng gefasste Anfrage zur lokalen Ausführung genau dieses origin-smoke- oder render-Befehls ein. Führen Sie den Befehl nur erneut aus, wenn diese Anfrage genehmigt wurde – entweder durch den Benutzer bei Aufforderung oder durch den konfigurierten automatischen Prüfer des Hosts. Eine Genehmigung ist nicht garantiert, und diese Übergabe stellt keine Sandbox-Umgehung dar. Bitten Sie den Benutzer niemals, den Befehl in ein separates PowerShell-Fenster zu kopieren oder die Anfrage auf Administrator- oder Systemkonfigurationszugriff auszuweiten.
  • Verwenden Sie Netzwerkzugriff nur für Repository-Download/-Update und abgesicherte Abhängigkeitsabrufe. Behandeln Sie eine Python-Installation im Benutzerkontext über winget als separate Systemänderung, die weiterhin ausdrückliche Zustimmung erfordert.
  • Fordern Sie keine Administratorrechte, Maussteuerung, Schreibzugriff auf das gesamte Laufwerk, Cloud-Upload privater Eingaben oder Änderungen an DCOM, Registry, Firewall, Benutzergruppen oder Origin-Installation an. Wenn der kontrollierte Ordnerzugriff, eine Unternehmensrichtlinie, Cloud-Synchronisierung oder ein schreibgeschützter Speicherort Schreibvorgänge blockiert, fordern Sie nur Zugriff auf den betroffenen Ordner an oder bitten Sie um einen expliziten alternativen Ausgabeordner.

Mit dem Anfängerpfad beginnen

  1. Plattformen ablehnen, bevor etwas installiert wird. Unterstützen Sie die CLI-/Abhängigkeitsebene nur auf physischem Windows 10/11 x64 mit 64-Bit CPython 3.10–3.12. Zielen Sie auf Origin/OriginPro 2021 und höher über externes originpro; Origin 2020b und älter werden über diesen Weg nicht unterstützt. Die vollständig verifizierte Live-Baseline ist CPython 3.10 + Origin 2024b / 10.15. Behandeln Sie eine andere 2021+-Version als funktionsabhängig, nicht automatisch verifiziert, bis ihre Smoke-Tests und vollständigen Artefakte bestanden sind. Geben Sie klar an, dass macOS (Intel/Apple Silicon), Linux, WSL, Wine/CrossOver, Parallels und andere VMs in V1 nicht unterstützt werden. doctor kann nicht zuverlässig jede VM erkennen – fragen Sie den Benutzer, ob er einen physischen Windows-Host bestätigen kann, wenn dies nicht bekannt ist.
  2. Suchen Sie editaplot.cmd im installierten Skill-Verzeichnis; wenn Sie aus einem geklonten Repository arbeiten, verwenden Sie editaplot.cmd im Repository-Stammverzeichnis. Verwenden Sie in Befehlen absolute Launcher-Pfade. Lassen Sie Anfänger kein Python-Executable auswählen oder scripts/editaplot.py direkt aufrufen.
  3. Erfordern Sie das vollständige Repository für die erste Installation. Führen Sie editaplot.cmd setup im Repository-Stammverzeichnis aus; weisen Sie Benutzer niemals an, nur skill/editaplot zu kopieren, da dies die Laufzeit weglässt. Lesen Sie references/runtime.md für Setup-, Erkennungs- und Befehlsdetails.
  4. Verwenden Sie ein vorhandenes kompatibles Python wieder. Wenn keines vorhanden ist, erklären Sie auf Chinesisch, dass die Installation von Python eine systemweite Änderung ist. Führen Sie zuerst winget show aus und erläutern Sie den genauen Herausgeber, die Quelle und die Vereinbarungen. Nur nach ausdrücklicher Benutzerbestätigung ist eine spätere nicht-interaktive Installation von Python.Python.3.12 mit Benutzerkontext und x64-Architektur zulässig. Wenn winget nicht verfügbar ist, geben Sie die offiziellen Windows-Installationsanweisungen von python.org an und warten Sie auf den Benutzer; verwenden Sie niemals ein nicht vertrauenswürdiges Spiegelverzeichnis oder installieren Sie Python stillschweigend.
  5. Führen Sie für jeden neuen Workflow editaplot.cmd doctor aus. Erlauben Sie doctor --repair nur für die gemeldete Reparatur von projektspezifischen Python-Abhängigkeiten. Halten Sie alle Python-Pakete in .editaplot-venv. Behandeln Sie Origin als lokal installierte, vom Benutzer verwaltete Anwendung; installieren oder ändern Sie es niemals während der Reparatur.
  6. Führen Sie editaplot.cmd start <data-file> für eine neue Tabelle aus. Fügen Sie --intent "<user intent>" hinzu, wenn der Benutzer ein Ziel angibt. Behandeln Sie die Inspektions- und Empfehlungsnutzdaten als internen Arbeitszustand. Verwenden Sie den ursprünglichen lokalen Quellpfad, der vom Anhang bereitgestellt wird. Wenn der Host nur eine temporäre Kopie des Anhangs bereitstellt und der ursprüngliche Ordner nicht wiederhergestellt werden kann, fragen Sie einmal nach dem beabsichtigten lokalen Quell-/Ausgabeordner vor dem Rendering; raten Sie nie auf einen nicht zusammenhängenden Arbeitsbereichszielort.
  7. Führen Sie nach Auswahl einer Kandidatenvorlage editaplot.cmd understand <data-file> --template-id <id> mit derselben bestätigten Zuordnung aus, die für die Planung verwendet wird. Gruppieren Sie das Ergebnis in eine kurze Checkliste: Datentyp; zu zeichnende Spalten; nur zur Unterstützung oder Validierung verwendete Spalten; beibehaltene, aber nicht gezeichnete Spalten; vorgeschlagene Figurenelemente; und Berechnungen, die nicht durchgeführt werden. Jede Quellspalte muss genau einmal vorkommen. Wenn ein Element uncertain ist, fragen Sie nach einer korrigierten Zuordnung und führen Sie understand erneut aus; bestätigen oder planen Sie es nicht.
  8. Teilen Sie einem Anfänger nur mit: was erkannt wurde, die ein bis drei besten Diagrammwahlen, warum sie passen, und die kleinste noch erforderliche wissenschaftliche Entscheidung. Geben Sie keine Pipeline inspect → recommend → understand → plan oder rohes JSON aus, es sei denn, sie fragen nach technischen Details.
  9. Bitten Sie den Benutzer, sowohl einen ein-sätzigen wissenschaftlichen Zweck als auch die prägnante Element-Checkliste zu bestätigen. Fixieren Sie den genauen proposal_hash, die genehmigten abgeleiteten Element-IDs und die aufgelösten Ambiguitätsentscheidungen in --semantic-confirmation-json. Verwenden Sie eine Bestätigung nie wieder, nachdem sich Quelle, Zuordnung, Zweck oder Vorschlag-Hash geändert haben. Wenn die Konfidenz niedrig ist, die Kandidatenmargen klein sind, Rollen oder Einheiten mehrdeutig sind oder eine Anzeigetransformation vorgeschlagen wird, stellen Sie nur die zusätzlichen fokussierten Fragen, die benötigt werden.
  10. Wenn der Benutzer ein Referenzbild bereitstellt, führen Sie zuerst reference-inspect aus. Sie können dann nur dessen Panel/Mark/Codierung/Layout/Stil-Grammatik im strikten ReferenceFigureSpec-JSON beschreiben und reference-review ausführen; die Laufzeit führt keine OCR- oder Modellinferenz durch. Zeigen Sie die übernommenen und abgelehnten Features, binden Sie jede essentielle Mark an bestätigte, renderbare Benutzerdaten und holen Sie eine separate, hash-gebundene Bestätigung ein. Kopieren Sie niemals Referenzwerte, Beschriftungen, Anpassungen, Phasenzuweisungen, Autorentext, Logos, Wasserzeichen oder die Bitmap in das Origin-Projekt. Bevorzugen Sie verifizierte template_adaptation; halten Sie controlled_composition blockiert, bis diese genaue Zusammensetzung die vollständige Origin-Nachweispflicht durchlaufen hat. Ein Referenzbild kann keine fehlenden Beweise hinzufügen oder die bestätigte wissenschaftliche Elementliste ändern. Behandeln Sie aus dem Referenzbild abgeleitete Stile als Vorschlag, nicht als Anweisung des Benutzers. Bitten Sie den Benutzer, einen von drei Modi zu wählen: die verifizierte Vorlagenstandard beibehalten; eine bestätigte, zugelassene Annäherung, die vom Referenzbild vorgeschlagen wird, verwenden; oder genaue benutzerdefinierte Werte angeben. Fragen Sie für den genauen Modus separat nach Farben, physikalischer Linienbreite, Fülltransparenz, Seitengröße und Legenden-Sichtbarkeit, Rahmen oder Position. Eine explizite Benutzerwahl hat Vorrang vor einem widersprüchlichen Referenz-Token. Fixieren Sie jeden Referenzvorschlag als applied, retained_template_default oder rejected; behaupten Sie nie, dass eine Anfrage angewendet wurde, es sei denn, die ausgewählte Vorlage hat denselben verifizierten Vorschau-/Origin-Pfad und das erforderliche Origin-Objekt-Rücklesen.
  11. Wenn die Farbe vom Benutzer wählbar ist, führen Sie editaplot.cmd palettes aus, zeigen Sie assets/palettes/palette-selector-public.zh-CN.png an und empfehlen Sie nicht mehr als zwei kompatible palette_id-Werte. Lesen Sie references/palettes.md, bevor Sie eine fixieren.
  12. Fixieren Sie die bestätigte Wahl intern mit editaplot.cmd plan; bearbeiten Sie nie einen Plan von Hand oder schreiben Sie eine Entscheidung in die Quelldatei zurück. Schreiben Sie für eine genaue XPS-Anforderung die bestätigten Werte in ein separates JSON-Objekt und übergeben Sie dessen Pfad mit --visual-style-json. Die unterstützten genauen Felder sind series_colors, line_width_pt, fill_transparency_percent, page_size_cm, legend_visible, legend_position und legend_frame. Ungültige explizite Felder oder Werte müssen sofort fehlschlagen und mit dem Benutzer korrigiert werden; verwerfen Sie sie niemals stillschweigend oder fallen Sie auf einen Referenz-/Standardstil zurück. Der Render-Befehl kopiert diesen genehmigten Plan in den endgültigen Ausgabeordner als render-plan.json.
  13. Behandeln Sie Origin-Bereitschaft nur als technischen Zustand. Doctor führt eine schreibgeschützte Erkennung von Origin.Application, Origin.ApplicationSI, installierten Kandidaten, Python, originpro und OriginExt durch; es startet Origin nie und ready_for_render bedeutet nie, dass eine Live-Verbindung erfolgreich war. Wenn die Standard-Start-Registrierung vorhanden ist, fahren Sie mit dem echten Pre-Render-Smoke fort, ohne den Benutzer zu bitten, Origin zu öffnen oder erneut zu bestätigen. Halten Sie die Ausgabe für Anfänger auf ein bis drei Sätze in einfacher Sprache; belassen Sie CLSIDs, Registrierungsansichten, Kandidaten und Phasen in JSON. Lesen Sie den redigierten origin_execution_context getrennt von ready_for_render. Ein codex_sandbox-Status erfordert die oben genannte Genehmigungsübergabe für den genauen Befehl, bevor COM aufgerufen wird; nur eine genehmigte Anforderung darf erneut ausgeführt werden. Auto-Review evaluiert diese einzelne Anforderung und gewährt keinen vorherigen Origin-Zugriff. Ein unknown-Windows-Ausführungskontext ist fehlergeschlossen und keine Genehmigungsanforderung: Stoppen Sie vor COM und melden Sie, dass die aktuelle Windows-Identität nicht verifiziert werden konnte.
  14. Führen Sie editaplot.cmd origin-smoke --output-dir <unique-smoke-directory> mit launch_isolated aus: Starten und besitzen Sie eine dedizierte Origin-Instanz, führen Sie den Live-Smoke und den Versions-Handshake durch, dann wenden Sie die Vorlagen-Fähigkeitsentscheidung an. Dieser Befehl ist nach der Planung und vor dem formellen Rendering obligatorisch. attach_existing ist ein expliziter erweiterter Modus nur; setzen Sie ein benutzereigenes Projekt niemals zurück, überschreiben oder schließen Sie es, und trennen Sie es anstatt zu beenden. Melden Sie Fehler nach technischer Phase und nächstem Schritt ohne Spekulation. Verwenden Sie niemals Mausautomatisierung oder geben Sie Anwendungspatches oder Umgehungsanweisungen. Die Laufzeit muss versuchen, eine partielle EditaPlot-eigene Aktivierung zu bereinigen, und darf eine frische isolierte Instanz für einen wiederholbaren Startcode nur versuchen, wenn die Bereinigung erfolgreich ist. Bereinigungsfehler geben origin_activation_cleanup_failed zurück und stoppen. Dann muss sie mit sec -poc 30 warten und run.isOCready() bestätigen, bevor die Version gelesen oder ein Projekt erstellt wird. Niemals in einer Schleife laufen, zu ApplicationSI wechseln, DCOM/Registry-Berechtigungen bearbeiten oder einem Anfänger sagen, dass er den gesamten Workflow als Administrator ausführen soll. Nachdem der automatische Versuch ausgeschöpft ist, fordern Sie die Genehmigung für höchstens einen erneuten Versuch im selben aktiven Windows-Benutzerkontext an und verwenden Sie ein frisches, leeres verschwistertes Smoke-Verzeichnis, sodass der erste Bericht intakt bleibt. origin_com_class_not_registered und origin_com_activation_access_denied stoppen ohne automatischen erneuten Versuch. Beenden Sie einen Python-Worker nicht zwangsweise, nur weil er lange läuft: Er könnte eine versteckte Origin-Instanz besitzen. Bewahren Sie Diagnosedaten auf und melden Sie die letzte Fortschrittsphase, bevor Sie eine benutzergesteuerte Abbrechen vorschlagen. Halten Sie die Sandbox-Genehmigungsübergabe getrennt von einem Aktivierungswiederholungsversuch: Ersteres geschieht vor COM, während Letzteres nur verfügbar ist, nachdem die begrenzte Aktivierungs-/Bereinigungsrichtlinie ausgeführt wurde. Wenn sowohl die primäre Aktivierung als auch die Bereinigung fehlschlagen, geben Sie nur primary_activation_code, primary_activation_stage, cleanup_error_code und cleanup_error_stage aus. Fügen Sie niemals einen Windows-Kontonamen, einen lokalen Pfad, eine rohe HRESULT oder einen rohen COM-Text in diese strukturierte Diagnose-Nutzlast ein, und wiederholen Sie den Vorgang nie, da beide Paare vorhanden sind. Aktuelle EditaPlot-Worker serialisieren nur ihren aktiven origin-smoke-/render-Origin-Abschnitt innerhalb einer angemeldeten Windows-Sitzung; Dateninspektion, Empfehlung und Planung können parallel bleiben. Respektieren Sie den Fortschritt von origin_job_queue, der sofort beim Warten und dann etwa alle 30 Sekunden ausgegeben wird. Die Reihenfolge ist nicht streng FIFO garantiert. Das 30-Minuten-Limit gilt nur für den wartenden Job: Es stoppt diesen Wartenden, ohne den aktiven Halter zu beenden oder zu unterbrechen. Reichen Sie keinen Duplikat ein, während eine Warteschlangennachricht sichtbar ist. Manuelle Skripte, ältere EditaPlot-Versionen und nicht zusammenhängende Programme liegen außerhalb dieser Koordinationsgrenze.
  15. Führen Sie erst nach bestandenem Smoke-Test eine erlaubte Vorlagenroute mit editaplot.cmd render <plan> aus. Lassen Sie eine EditaPlot-eigene Origin-Instanz nach Erfolg geöffnet, es sei denn, der Benutzer wünscht etwas anderes. Standardmäßig erstellt die Laufzeit ein direktes Geschwister der Quelldatei mit dem Namen <source_stem>_EditaPlot_YYYYMMDD_HHMMSS; halten Sie alle formellen Artefakte in diesem Ordner. Leiten Sie normale Ausführungen nicht auf das Repository, das Skill-Verzeichnis, das aktuelle Arbeitsverzeichnis oder einen gemeinsamen globalen Ausgabeordner um. Verwenden Sie --output-dir nur, wenn der Benutzer explizit einen anderen Ort anfordert.
  16. ...

[Der Rest wurde für die Übersetzung gekürzt]

Verwandte Skills