Zum Hauptinhalt springen

Befehle

Dies ist die vollständige Befehlsreferenz für copera, gruppiert nach Domäne. Führen Sie copera <command> --help aus, um die komplette Flag-Liste und Beispiele für jeden Befehl zu sehen.

tipp

Die meisten Befehle akzeptieren --json für maschinenlesbare Ausgabe, und die CLI wechselt automatisch zu JSON, wenn stdout per Pipe oder Umleitung läuft. Siehe Ausgabeformate.

Globale Flags für jeden Befehl: --token, --profile, --json, --output auto|json|table|plain, --quiet/-q, --no-input, --verbose.

Auth

copera auth login                   # guided browser flow
copera auth login --token=cp_pat_xxx # save a token directly
copera auth login --token # masked paste prompt, no browser
copera auth status # active profile + token source
copera auth whoami # who the token belongs to
copera auth logout # remove the stored credential

Siehe Authentifizierung für Token-Typen und Login-Modi.

Boards

copera bases ist ein eingebauter Alias für copera boards — verwenden Sie, was natürlicher wirkt.

copera boards list
copera boards list --query "roadmap" # search by name or description
copera boards get <board-id>

copera boards create --name "Q3 Roadmap"
copera boards create --name "CRM" --description "Sales pipeline" \
--table-name "Leads"

copera boards update <board-id> --name "Q3 Launch Plan"
copera boards update <board-id> --description "Updated plan" --icon "🚀"
copera boards delete <board-id> --force

copera boards participants add --board <board-id> \
--participant <user-or-team-id> --participant <another-id>
copera boards participants remove <participant-id> --board <board-id> --force
Aktuelle CLI und Board-Blueprints

Die installierte CLI v0.15.0 erstellt ein Board mit einer initialen Tabelle, aber boards create akzeptiert keinen Blueprint mit benutzerdefinierten Spalten. Die neuere Public API, gehostete MCP-Tools und Ask Copera können das Board und bis zu 32 benutzerdefinierte Spalten atomar anlegen und die echten Spalten- und Options-IDs zurückgeben. Atomare Blueprint-Eingabe folgt in einer späteren CLI-Version; in v0.15.0 gibt es kein Flag --columns.

[
{
"_id": "64a1b2c3d4e5f6a7b8c9d0e1",
"name": "Engineering Roadmap",
"description": "Track features, bugs, and milestones across the engineering team.",
"createdAt": "2025-03-10T09:15:42.301Z",
"updatedAt": "2026-02-18T11:30:05.128Z"
}
]

Tabellen

copera tables list --board <board-id>
copera tables list --board <board-id> --query "tasks"
copera tables get <table-id> --board <board-id>

copera tables create --board <board-id> --name "Campaigns"
copera tables update <table-id> --board <board-id> --name "Launch Campaigns"
copera tables delete <table-id> --board <board-id> --force

Jede Tabelle enthält ihr vollständiges Spaltenschema — columnId, label und type, plus options für STATUS- und DROPDOWN-Spalten. Nutzen Sie tables get, um die Spalten- und Options-IDs zu ermitteln, bevor Sie Zeilen anlegen oder aktualisieren.

Spalten

copera tables columns add --board <board-id> --table <table-id> \
--label "Priority" --type STATUS \
--option "Low:green" --option "High:red"

copera tables columns update <column-id> --board <board-id> --table <table-id> \
--label "Stage"
copera tables columns update <column-id> --board <board-id> --table <table-id> \
--add-option "Blocked:red"

In CLI v0.15.0 sind --option und --add-option wiederholbar und akzeptieren "Label" oder "Label:color". Die CLI listet derzeit TEXT, PARAGRAPH, NUMBER, MONEY, DATE, EMAIL, PHONE, WEBSITE, CHECKBOX, STATUS, DROPDOWN, LABELS, USERS, LOCATION, DESCRIPTION und FILE für --type.

Die Public API unterstützt zusätzlich CHECKLIST-Spalten und DATE-Formate DATE_ISO und DATE_TIME_ISO. Diese Eingaben folgen für die CLI: v0.15.0 listet weder CHECKLIST noch ein DATE-Format-Flag.

Tabelle exportieren

copera tables export <table-id> --board <board-id> --view <view-id> \
--format CSV -o out.csv

--view ist erforderlich und exportiert Zeilen in derselben Form wie eine gespeicherte View. --format akzeptiert CSV, XLSX, JSON, MARKDOWN, HTML, PDF, ZIP und ICS. -o/--output-file schreibt in einen Pfad (Standard: stdout; - bedeutet ebenfalls stdout).

Zeilen

Die CLI deckt den gesamten Zeilen-Lebenszyklus ab — listen, lesen, anlegen, aktualisieren, löschen — plus Kommentare, Anhänge, Rich-Text-Zellen und Zeilen-Authentifizierung.

copera rows list   --board <board-id> --table <table-id>
copera rows list --board <board-id> --table <table-id> --query "oauth"
copera rows get <row-id> --board <board-id> --table <table-id>

copera rows create --board <board-id> --table <table-id> \
--data '{"columns":[{"columnId":"<column-id>","value":"Hello"}]}'

copera rows update <row-id> --board <board-id> --table <table-id> \
--data '{"columns":[{"columnId":"<column-id>","value":"Updated"}]}'

copera rows delete <row-id> --board <board-id> --table <table-id> --force

--query durchsucht die sichtbaren, nicht passwortgeschützten Spalten der Tabelle.

Beschreibungen und Rich-Text-Zellen

Zeilen haben zwei getrennte Langtext-Oberflächen:

  • Feste Legacy-Zeilenbeschreibung — von rows get als Description (legacy) angezeigt. Mit rows description lesen. Aktualisieren wird von der CLI nicht mehr unterstützt.
  • RICH TEXT- / DESCRIPTION-Tabellenspaltenzellen — moderne Langtext-Spalten. Eine Tabelle kann mehrere haben; daher mit --column <column-id> ansprechen.
# Read the legacy row description
copera rows description <row-id> --board <board-id> --table <table-id>

# Read a RICH TEXT / DESCRIPTION column cell
copera rows column-content <row-id> --board <board-id> --table <table-id> \
--column <column-id>

# Write a RICH TEXT / DESCRIPTION column cell
copera rows update-column-content <row-id> --board <board-id> --table <table-id> \
--column <column-id> --content "# Notes"

update-column-content unterstützt --operation replace (Standard), append oder prepend. Um die Spalten-ID einer Spalte namens Description zu finden, führen Sie copera tables get <table-id> --board <board-id> --json aus.

Kommentare

copera rows comment  <row-id> --board <board-id> --table <table-id> \
--content "Looks good"
copera rows comments <row-id> --board <board-id> --table <table-id>

Anhänge

Anhänge aus FILE-Spalten oder aus Kommentaren herunterladen:

# From a FILE column
copera rows attachments download <row-id> --board <board-id> --table <table-id> \
--column <column-id> --file <file-id> -o ./contract.pdf

# From a comment
copera rows comments attachments download <row-id> --board <board-id> --table <table-id> \
--comment <comment-id> --file <file-id> -o ./contract.pdf

Zeile authentifizieren

Ein Identifier/Passwort-Paar gegen die passenden Spalten einer Zeile prüfen (z. B. eine Credentials-Tabelle):

copera rows authenticate --board <board-id> --table <table-id> \
--identifier-column <column-id> --identifier-value "[email protected]" \
--password-column <column-id> --password-value "secret"

Stdin-Unterstützung

rows create, rows comment und rows update-column-content lesen von stdin, wenn das Content-Flag weggelassen wird:

echo '{"columns":[{"columnId":"<column-id>","value":"Hello"}]}' \
| copera rows create --board <board-id> --table <table-id>

echo "Looks good" \
| copera rows comment <row-id> --board <board-id> --table <table-id>

echo "# Notes" \
| copera rows update-column-content <row-id> --board <board-id> --table <table-id> \
--column <column-id>

Docs

Docs-Befehle erfordern ein Personal Access Token (cp_pat_...).

copera docs tree
copera docs tree --parent <doc-id> # subtree under a doc
copera docs search "keyword"
copera docs get <doc-id> # metadata
copera docs content <doc-id> # body as Markdown
copera docs content <doc-id> --no-cache # bypass the local cache

copera docs create --title "New Doc" --content "Initial content"
copera docs update <doc-id> --content "Replacement content"
copera docs update <doc-id> --operation append --content "More content"
copera docs metadata <doc-id> --title "New title"
copera docs delete <doc-id> --force

docs update --operation akzeptiert replace (Standard), append oder prepend. Inhaltsaktualisierungen werden asynchron verarbeitet — die API nimmt die Anfrage an und wendet sie kurz danach an. docs create und docs update lesen beide von stdin, wenn --content weggelassen wird:

cat ./notes.md | copera docs create --title "Q2 Strategy"
cat ./report.md | copera docs update <doc-id>

Drive

Drive-Befehle erfordern ein Personal Access Token mit Drive-Zugriff.

copera drive tree
copera drive tree --parent <folder-id> # subtree under a folder
copera drive tree --depth 5 # control nesting depth (1-10, default 3)
copera drive search "quarterly report"
copera drive get <file-id>
copera drive download <file-id> -o report.pdf
copera drive upload ./report.pdf --parent <folder-id>
copera drive upload ./project/ --parent <folder-id> # recursive directory upload
copera drive mkdir "New Folder"
copera drive mkdir "Sub Folder" --parent <folder-id>

Uploads unterstützen Multipart-Transfer, rekursive Verzeichnis-Uploads (die passende Ordnerstruktur wird automatisch angelegt) und eine Fortschrittsanzeige in interaktiven Terminals. Abstimmen mit --chunk-size <bytes> (Standard 10 MB) und --concurrency <n> (Standard 4). download schreibt in das aktuelle Verzeichnis, sofern Sie nicht -o/--dest angeben.

Channels

copera channels list
copera channels list --query "deploy" # name, description, or participant
copera channels list --type <type> # filter by channel type
copera channels list --kind dm --participant <user-id>

copera channels message send "Hello" --channel <channel-id>
copera channels message send "Hello" --user <user-id> # DM by user ID
echo "Deploy done" | copera channels message send --channel <channel-id>

channels list --kind akzeptiert group oder dm. Für eine Direktnachricht verwenden Sie channels message send mit --user <user-id> statt --channel — Copera nutzt den bestehenden DM-Channel, falls vorhanden. Nachrichten unterstützen Markdown (Überschriften, Fett/Kursiv, Listen, Codeblöcke, Zitate, Links):

copera channels message send "## Build Report

* **Status:** Success
* **Duration:** 3m 42s

> All tests passed." --channel <channel-id>

Workspace

copera workspace info       # workspace metadata
copera workspace members # members of the workspace
copera workspace teams # teams in the workspace

Diese erfordern ein Personal Access Token.

Suche

Suche über Ressourcentypen. --type ist wiederholbar, um die Ergebnisse einzugrenzen:

copera search "contract"
copera search "contract" --type document --type driveContent

Erfordert ein Personal Access Token.

Benachrichtigungen

copera notifications list
copera notifications read <notification-id>
copera notifications unread <notification-id>
copera notifications delete <notification-id> --force

Erfordert ein Personal Access Token.

Cache

Die CLI speichert Dokumentinhalte lokal für schnellere Lesezugriffe.

copera cache status   # size, file count, and cache path
copera cache clean # clear the cache

Mit copera docs content <id> --no-cache umgehen Sie den Cache für einen einzelnen Lesevorgang, ohne ihn zu leeren.

Hilfsbefehle

copera version
copera version --json
copera update # update to the latest version
copera update --version 1.2.0 # pin to a specific version
copera update --force # skip the confirmation prompt

copera completion bash
copera completion zsh
copera completion fish

Leiten Sie die Completion-Ausgabe in die Shell-Startdatei um, um Tab-Vervollständigung zu aktivieren:

copera completion zsh >> ~/.zshrc                                 # zsh
copera completion bash >> ~/.bashrc # bash
copera completion fish > ~/.config/fish/completions/copera.fish # fish

Starten Sie die Shell neu oder führen Sie source ~/.zshrc (oder Entsprechendes) aus, um sie zu aktivieren.

Verwandte Themen