Zum Hauptinhalt springen

Externer Zugriff (CLI und AI-Clients)

Externer Zugriff ermöglicht es lokalen Kommandozeilenprogrammen und MCP-fähigen AI-Clients, Skripte in ScriptCat über sctl zu verwalten.

AI client ── stdio MCP ──▶ sctl mcp ── local control API ──▶ sctl serve ── WebSocket ──▶ ScriptCat
CLI ────────────────────────────────────────────────────────▲

sctl serve ist ein separater lokaler Daemon, der explizit gestartet werden muss. sctl mcp und Anfragebefehle starten ihn niemals automatisch.

Der Listener ist standardmäßig lokal

sctl hört standardmäßig auf 127.0.0.1. Es hört nur auf einer anderen Schnittstelle, wenn --listen-address explizit übergeben wird. ws:// verschlüsselt keinen Geschäftsverkehr, verwenden Sie eine Nicht-Standard-Adresse nur in vertrauenswürdigen Netzwerken.

1. sctl installieren

curl -fsSL https://raw.githubusercontent.com/scriptscat/sctl/main/scripts/install.sh | sh

oder Windows PowerShell:

irm https://raw.githubusercontent.com/scriptscat/sctl/main/scripts/install.ps1 | iex
sctl version

2. Daemon starten und registrieren

2.1 Datenverzeichnis wählen

export SCTL_DATA_DIR=/absolute/path/to/sctl-data
sctl serve
sctl status
sctl mcp

2.2 Daemon starten

sctl serve

2.3 In ScriptCat aktivieren und paarweisen

  1. Öffnen Sie Einstellungen → Werkzeuge → Externer Zugriff in ScriptCat und schalten Sie um.

  2. Bestätigen Sie, dass die sctl-Adresse mit dem Daemon übereinstimmt.

  3. Führen Sie in einem anderen Terminal aus:

    sctl connect
  4. Geben Sie den 8-Zeichen-Terminalcode ein.

  5. Verbindung überprüfen:

    sctl status
Der Paarungscode ist nur im Terminal

Der Code sieht wie A1B2-C3D4 aus, läuft nach 2 Minuten ab und funktioniert nur einmal. Fügen Sie ihn niemals in einen AI-Chat, Issue, Log oder MCP-Konfiguration ein.

3. Berechtigungen und Bestätigung

FähigkeitStandardverhalten
Skripte auflisten und Metadaten lesenDirekt zurückgeben
Skriptquelle lesen oder suchenFolgt der Quellenlese-Richtlinie
Skript installieren, bearbeiten, aktivieren, deaktivieren oder löschenFolgt der Schreib-Richtlinie

4. Kommandozeilenverwendung

sctl get # Skripte auflisten
sctl get <uuid> # Metadaten lesen
sctl get <uuid> -o source # Vollständige Quelle ausgeben
sctl get <uuid> -o source --lines 20-80
sctl grep <uuid> "fetch(" # Wörtliche Quellensuche
sctl grep <uuid> "pattern" -E # Regulärer Ausdruck
sctl install <url|file>
sctl edit <uuid> --replace OLD --with NEW
sctl enable <uuid>
sctl disable <uuid>
sctl delete <uuid>
sctl status

5. AI-Client verbinden (MCP)

{
"mcpServers": {
"scriptcat": {
"command": "/absolute/path/to/sctl",
"env": {
"SCTL_DATA_DIR": "/absolute/path/to/sctl-data"
},
"args": ["mcp", "--name", "my-ai-client"]
}
}
}

Aktuelle Tools:

ToolZweckBestätigungsrichtlinie
scripts_listSkriptübersichten auflistenKeine
scripts_metadata_getMetadaten eines Skripts lesenKeine
scripts_source_getQuelle nach UUID lesenQuellenlese-Richtlinie
scripts_source_grepQuelle durchsuchenQuellenlese-Richtlinie
scripts_install_requestSkriptinstallation anfordernSchreib-Richtlinie
scripts_edit_requestInhaltsgestützte Bearbeitung anfordernSchreib-Richtlinie
scripts_toggle_requestAktivierung/Deaktivierung anfordernSchreib-Richtlinie
scripts_delete_requestLöschung anfordernSchreib-Richtlinie

6. Prüfung und Widerruf

  • sctl status zeigt Daemon-Version, Erweiterungskonnektivität und letzte Sicherheitsereignisse.
  • „Externen Zugriff stoppen" trennt, löscht den Paarungszustand und bereinigt Sitzungszulassungen.

7. Fehlerbehebung

Daemon nicht erreichbar — Starten Sie zuerst sctl serve.

Steuerkanal-Authentifizierung fehlgeschlagen — Bestätigen Sie, dass serve, CLI-Befehle und der MCP-Prozess dasselbe absolute Datenverzeichnis auflösen.

Status sagt „Verbindung fehlgeschlagen" — Bestätigen Sie, dass der Daemon läuft und die Erweiterungsadresse übereinstimmt.

Befehl gibt nicht zurück — Prüfen Sie den Browser auf eine Quellenoffenlegungs- oder Schreibbestätigungsseite.

Logs finden — Logs befinden sich unter <data-dir>/logs/.

PlattformLog-Verzeichnis
macOS~/Library/Application Support/sctl/logs/
Windows%LOCALAPPDATA%\sctl\logs\
Linux~/.config/sctl/logs/