Built-in design generation now runs as an agentic MCP tool-loop (reusing the agent-rs BuiltInProvider), gated behind OPENPENCIL_DESIGN_AGENT_LOOP / the Settings experimental toggle; the orchestrator stays the default. - design-agent system prompt + in-process design toolset (parity-locked with the MCP surface) + flag-gated Intent::Design routing - spawn_agents execution as sequential sub-loops + live creation-mode badges (per-agent glow + 'N/M designing...' header) - new MCP tools: get_guidelines, ToolSearch, get_screenshot, get_editor_state, export_nodes, spawn_agents; style-guide local audit - #27 AI panel restyle: rounded tool cards + green check-rings, gray user bubbles, model-pill bottom toolbar, header, empty-state pills, the PARALLEL AGENTS (agent_team_size) 1x-6x chip dropdown - multi-chat tabs: ChatSessions model (Deref-to-active) + tab row UI (switch / close / + / Cmd+T) with each run bound to its tab Large checkpoint commit spanning the working tree (Rust shell crates).
126 lines
3.9 KiB
Markdown
126 lines
3.9 KiB
Markdown
# @zseven-w/openpencil
|
|
|
|
[English](./README.md) · [简体中文](./README.zh.md) · [繁體中文](./README.zh-TW.md) · [日本語](./README.ja.md) · [한국어](./README.ko.md) · [Français](./README.fr.md) · [Español](./README.es.md) · [**Deutsch**](./README.de.md) · [Português](./README.pt.md) · [Русский](./README.ru.md) · [हिन्दी](./README.hi.md) · [Türkçe](./README.tr.md) · [ไทย](./README.th.md) · [Tiếng Việt](./README.vi.md) · [Bahasa Indonesia](./README.id.md)
|
|
|
|
CLI fuer [OpenPencil](https://github.com/ZSeven-W/openpencil) — steuere das Design-Tool von deinem Terminal aus.
|
|
|
|
## Installation
|
|
|
|
```bash
|
|
npm install -g @zseven-w/openpencil
|
|
```
|
|
|
|
## Plattformunterstuetzung
|
|
|
|
Das CLI erkennt und startet die OpenPencil-Desktop-App automatisch auf allen Plattformen:
|
|
|
|
| Plattform | Erkannte Installationspfade |
|
|
| ----------- | ------------------------------------------------------------------------------------------------------- |
|
|
| **macOS** | `/Applications/OpenPencil.app`, `~/Applications/OpenPencil.app` |
|
|
| **Windows** | NSIS pro Benutzer (`%LOCALAPPDATA%`), systemweit (`%PROGRAMFILES%`), portabel |
|
|
| **Linux** | `/usr/bin`, `/usr/local/bin`, `~/.local/bin`, AppImage (`~/Applications`, `~/Downloads`), Snap, Flatpak |
|
|
|
|
## Verwendung
|
|
|
|
```bash
|
|
op <Befehl> [Optionen]
|
|
```
|
|
|
|
### Eingabemethoden
|
|
|
|
Argumente, die JSON oder DSL akzeptieren, koennen auf drei Arten uebergeben werden:
|
|
|
|
```bash
|
|
op design '...' # Inline-Zeichenkette (kleine Nutzlasten)
|
|
op design @design.txt # Aus Datei lesen (empfohlen fuer grosse Designs)
|
|
cat design.txt | op design - # Von stdin lesen (Piping)
|
|
```
|
|
|
|
### App-Steuerung
|
|
|
|
```bash
|
|
op start [--desktop|--web] # OpenPencil starten (standardmaessig Desktop)
|
|
op stop # Laufende Instanz beenden
|
|
op status # Pruefen, ob die App laeuft
|
|
```
|
|
|
|
### Design (Batch-DSL)
|
|
|
|
```bash
|
|
op design <dsl|@file|-> [--post-process] [--canvas-width N]
|
|
op design:skeleton <json|@file|->
|
|
op design:content <section-id> <json|@file|->
|
|
op design:refine --root-id <id>
|
|
```
|
|
|
|
### Dokumentoperationen
|
|
|
|
```bash
|
|
op open [file.op] # Datei oeffnen oder mit aktivem Canvas verbinden
|
|
op save <file.op> # Aktuelles Dokument speichern
|
|
op get [--type X] [--name Y] [--id Z] [--depth N]
|
|
op selection # Aktuelle Canvas-Auswahl abrufen
|
|
```
|
|
|
|
### Knotenmanipulation
|
|
|
|
```bash
|
|
op insert <json> [--parent P] [--index N] [--post-process]
|
|
op update <id> <json> [--post-process]
|
|
op delete <id>
|
|
op move <id> --parent <P> [--index N]
|
|
op copy <id> [--parent P]
|
|
op replace <id> <json> [--post-process]
|
|
```
|
|
|
|
### Variablen und Themes
|
|
|
|
```bash
|
|
op vars # Variablen abrufen
|
|
op vars:set <json> # Variablen setzen
|
|
op themes # Themes abrufen
|
|
op themes:set <json> # Themes setzen
|
|
op theme:save <file.optheme> # Theme-Preset speichern
|
|
op theme:load <file.optheme> # Theme-Preset laden
|
|
op theme:list [dir] # Theme-Presets auflisten
|
|
```
|
|
|
|
### Seiten
|
|
|
|
```bash
|
|
op page list # Seiten auflisten
|
|
op page add [--name N] # Eine Seite hinzufuegen
|
|
op page remove <id> # Eine Seite entfernen
|
|
op page rename <id> <name> # Eine Seite umbenennen
|
|
op page reorder <id> <index> # Eine Seite neu anordnen
|
|
op page duplicate <id> # Eine Seite duplizieren
|
|
```
|
|
|
|
### Import
|
|
|
|
```bash
|
|
op import:svg <file.svg> # SVG-Datei importieren
|
|
op import:figma <file.fig> # Figma-.fig-Datei importieren
|
|
```
|
|
|
|
### Layout
|
|
|
|
```bash
|
|
op layout [--parent P] [--depth N]
|
|
op find-space [--direction right|bottom|left|top]
|
|
```
|
|
|
|
### Globale Optionen
|
|
|
|
```text
|
|
--file <path> Ziel-.op-Datei (Standard: aktives Canvas)
|
|
--page <id> Zielseiten-ID
|
|
--pretty Menschenlesbare JSON-Ausgabe
|
|
--help Hilfe anzeigen
|
|
--version Version anzeigen
|
|
```
|
|
|
|
## Lizenz
|
|
|
|
MIT
|