Echolot
Arbeitsbereiche

Secrets

Halte Passwörter, Tokens und Schlüssel im Schlüsselbund statt in Dateien des Arbeitsbereichs und gib sie dem Befehlszeilentool und CI.

Ein Secret ist eine Variable, deren Wert im Schlüsselbund auf deinem Mac bleibt. Die Datei des Arbeitsbereichs enthält nur ihren Namen, sodass du den Arbeitsbereich committen und teilen kannst, ohne deine Anmeldedaten zu teilen. Nutze Secrets für Passwörter, Tokens, API-Schlüssel und alles andere, das du nicht in einen Chat einfügen würdest.

Eine Variable zum Secret machen

  1. Öffne die Tabelle der Variablen: die Seite Umgebungen, Ordnereinstellungen … › Variablen oder den Tab Variablen der Anfrage.
  2. Füge die Variable hinzu oder suche sie und hake Secret an.
  3. Tippe den Wert ins Feld (es zeigt Auf diesem Mac nicht festgelegt) und drücke ↩ oder klicke auf Sichern.

Das Feld zeigt den Wert nie wieder. Sobald ein Wert vorhanden ist, zeigt es Im Schlüsselbund gespeichert, mit einem Schlüssel. Um den Wert zu ändern, tippe einen neuen und sichere ihn.

Nutze ein Secret wie jede Variable: {{token}}.

Variablen des Arbeitsbereichs auf der Seite „Umgebungen“: token als Secret markiert, sein Wertfeld zeigt „Im Schlüsselbund gespeichert“

In der Datei ist ein Secret ein Name und ein Flag, ohne Wert:

[[variables]]
name = "token"
secret = true

Jede Ebene behält ihren eigenen Wert. Ein Secret password in der Umgebung Staging und eines in Production sind zwei Einträge im Schlüsselbund, sodass jede Umgebung ihr eigenes Passwort haben kann.

Wo die Werte liegen

Die Werte liegen in deinem Anmelde-Schlüsselbund, ein Eintrag pro Secret, mit der Bezeichnung Echolot secret <name>. Sie gehören zum Arbeitsbereich (über seine ID, die in workspace.toml steht) und zu der Ebene, auf der die Variable definiert ist. Das Befehlszeilentool auf demselben Mac liest dieselben Einträge.

Ein Secret ohne Wert auf diesem Mac fällt nicht auf eine andere Ebene zurück. Die Anfrage sagt the secret {{password}} has no value on this Mac, bis du einen festlegst.

Mac-App-Store-Edition

Die App-Store-Edition nutzt denselben Schlüsselbund. Einträge, die der Direktdownload oder das Befehlszeilentool angelegt haben, fragen vielleicht einmal nach Zugriff; wähle Immer erlauben.

Editionen vergleichen

Was nie in Dateien kommt

Echolot hält diese aus den Dateien des Arbeitsbereichs heraus:

  • Die Werte von Secret-Variablen.
  • Secrets, die Erfassungen von Antwortwerten speichern: Eine als Secret markierte Erfassung schreibt nur in den Schlüsselbund. In Alpenglow erfasst Auth › Sign in access_token in das Secret {{token}}.
  • OAuth-2.0-Tokens und MCP-Anmeldungen.
  • Werte, die du mit In den Schlüsselbund verschieben verschiebst (unten).

Was du als Klartext tippst, bleibt Klartext. Enthält ein Passwortfeld von Auth oder Proxy einen festen Wert statt einer Variablen, warnt Echolot darunter: Als Klartext in der Arbeitsbereichsdatei gespeichert. Klicke auf In den Schlüsselbund verschieben: Der Wert wird zu einer Secret-Variablen des Arbeitsbereichs, und das Feld erhält stattdessen {{name}}.

Secrets sind auch überall maskiert, wo Echolot eine aufgelöste Anfrage zeigt oder weitergibt: Vorschauen, die Übersicht, das Panel „Variablen“, die Verlaufssuche und alles, was Agenten erhalten. Code erzeugen … und Als cURL kopieren sind die Ausnahme: Sie schreiben die Anfrage so, wie sie gesendet würde, mit den Secrets.

Importe verschieben Anmeldedaten in Secrets

Wenn du eine Postman-Sammlung, einen Insomnia-Export oder eine andere Datei importierst, werden Passwörter, Tokens und API-Schlüssel, die in Auth-Einstellungen und Anmelde-Headern stehen, zu Secret-Variablen. Ihre Werte gehen in den Schlüsselbund, und die Anfrage erhält stattdessen {{name}}: den Namen der Anfrage und das Feld, etwa {{me_password}}. Der Importbericht listet die Namen der Secrets, die er gesichert hat, nie die Werte.

Anmeldedaten, die in Adressen (https://user:pass@…), Query-Strings und Bodys stehen, werden noch nicht verschoben. Prüfe diese nach einem Import.

Exporte lassen Werte aus

Ein Export schreibt Secret-Variablen in jedem Format nur mit ihrem Namen, ohne Wert. Wer den Export öffnet, legt die Werte auf seiner Seite fest.

Secrets in der Befehlszeile und in CI

Das Befehlszeilentool sucht den Wert eines Secrets in dieser Reihenfolge:

  1. Eine Datei --secrets, die du echolot run gibst: Zeilen mit NAME=value.
  2. Eine Umgebungsvariable ECHOLOT_SECRET_<NAME>: der Name in Großbuchstaben, jedes Zeichen außer Buchstaben und Ziffern zu _ gemacht. {{token}} liest ECHOLOT_SECRET_TOKEN; {{api-key}} liest ECHOLOT_SECRET_API_KEY.
  3. Auf einem Mac die Einträge im Schlüsselbund, die die App führt.
ECHOLOT_SECRET_TOKEN=… echolot run Alpenglow.echolot --folder orders
echolot run Alpenglow.echolot --env staging --secrets staging.secrets

Der Schlüsselbund wird übersprungen, wenn CI gesetzt ist und bei ECHOLOT_KEYCHAIN=0. Setze in CI die Variablen ECHOLOT_SECRET_… aus dem Secret-Speicher deiner CI. Siehe CI.

Ein Secret, das in der Umgebung gefunden wird, zählt für jede Ebene: ECHOLOT_SECRET_PASSWORD beantwortet {{password}} in jeder Umgebung.

Importe in der Befehlszeile verschieben Anmeldedaten wie die App in Secrets. Ohne Schlüsselbund sagt das Tool, welche Variablen ECHOLOT_SECRET_… du setzen musst.

Das erste Öffnen durch ein Teammitglied

Wer im Team den Arbeitsbereich klont, bekommt den Namen jedes Secrets und keinen der Werte. Die Tabellen zeigen Auf diesem Mac nicht festgelegt. Die Person legt ihre eigenen Werte einmal fest, und von da an arbeiten alle mit denselben Dateien und den eigenen Anmeldedaten. Siehe Git und Teams.

Auf dieser Seite