# Anweisungen, Freigaben und Konfiguration

Legen Sie Schreibvorlieben fest, wählen Sie, wann der Assistent nachfragt, und konfigurieren Sie wiederverwendbare Projektregeln.

Geben Sie dem Assistenten klare Schreibvorlieben und wählen Sie, wie er mit Änderungen umgeht. Anweisungen beschreiben die Arbeit, die Sie wollen; Freigabesteuerungen entscheiden, welche Werkzeugaktionen ausgeführt werden dürfen.

![Einstellungen → KI-Assistent → Anweisungen. Stellen Sie das Standardmodell ein, schreiben Sie Ihre Anweisungen und nutzen Sie dann Anweisungen speichern. Das Erfassen von PDF-Seiten liegt unter dem Textfeld.](https://cdn.oleafly.com/images/screenshots/desktop/docs/settings-instructions-dark-window-v2.png#view=519,89,883,724)

## Standardmodell für Chats

Öffnen Sie **Einstellungen → KI-Assistent → Anweisungen**. Wählen Sie **Standardmodell für Chats**, um das Modell festzulegen, das ein neuer Chat nutzt. Die Liste enthält die aktivierten Modelle Ihrer konfigurierten Anbieter. Sie können das Modell in einer einzelnen Unterhaltung weiterhin wechseln.

## Eigene Anweisungen

Geben Sie Ihre Vorlieben unter **Eigene Anweisungen** ein und klicken Sie dann auf **Anweisungen speichern**. Ein nützlicher Ausgangspunkt für ein Forschungsmanuskript ist:

```text title="Beispiel für Schreibanweisungen"
Use British English and preserve the terminology already used in the paper.
Keep citation keys, labels, equations, and numerical results unchanged unless
I explicitly ask you to edit them.
When a statement needs evidence, mark it for a source check. Do not invent
references or results.
Explain substantive changes briefly so I can review them.
```

Formulieren Sie diese Anweisungen spezifisch genug, um eine Überarbeitung zu lenken, ohne Ihren gesamten Projektbrief zu wiederholen. Sie ergänzen das eingebaute Verhalten des Assistenten und ändern seine Werkzeugberechtigungen nicht.

## Anweisungen speichern

Klicken Sie nach dem Bearbeiten auf **Anweisungen speichern**. Die Anzeige **Gespeichert** bestätigt das dauerhafte Speichern. Eine ungespeicherte Änderung in diesem Feld ist nicht Ihr neuer Standard.

## Erfassen von PDF-Seiten für die KI erlauben

Aktivieren Sie **Erfassen von PDF-Seiten für die KI erlauben**, damit der Assistent gerenderte Seiten mit einem bildfähigen Modell prüfen kann. Das Werkzeug `verify_pdf_pages` rasterisiert kompilierte Seiten für Layoutprüfungen. Deaktivieren Sie die Steuerung, wenn Seitenbilder nicht an den konfigurierten Anbieter gesendet werden sollen.

## Den Werkzeugkatalog ansehen

Klappen Sie im Tab „Anweisungen“ **Der Assistent unterstützt derzeit diese Werkzeuge** auf. Nutzen Sie ihn, um die Arbeit zu sehen, die der Assistent erledigen kann, und bitten Sie dann um ein Ergebnis wie das Kompilieren eines Abschnitts, das Prüfen des PDF oder das Finden einer nicht aufgelösten Referenz.

## Personas

![Einstellungen → KI-Assistent → Personas. Persona anlegen liegt über der Liste; Steuerungen zum Bearbeiten und Löschen sitzen neben jeder Persona.](https://cdn.oleafly.com/images/screenshots/desktop/docs/settings-personas-dark-window-v2.png#view=519,89,883,902)

Eine Persona ist eine benannte Anweisungsvoreinstellung. Legen Sie eine unter **Einstellungen → KI-Assistent → Personas** an und wählen Sie sie dann im Chat-Eingabefeld für eine bestimmte Art von Arbeit. Halten Sie zum Beispiel eine knappe Korrektorat-Persona und eine separate Begutachtungs-Persona.

Eine aktive Persona liefert die Anweisungsvoreinstellung der Unterhaltung anstelle des Standardtexts der eigenen Anweisungen. Nehmen Sie alle dauerhaften Vorlieben auf, die die Persona ebenfalls braucht. Eine Persona ändert die Anleitung; sie gewährt keine Werkzeugberechtigungen.

## Einen Freigabemodus wählen

![Öffnen Sie das Freigabemenü unter dem Nachrichtenfeld. Der gewählte Modus ist mit einem Häkchen markiert; wählen Sie die Richtlinie, die Sie für Ihr Projekt wollen.](https://cdn.oleafly.com/images/screenshots/desktop/docs/llama-approval-menu-dark-window-v2.png#view=1448,770,465,305)

Nutzen Sie die Freigabeauswahl im Chat-Eingabefeld. Die Auswahl wird für das aktuelle Projekt gespeichert.

| Modus | Verhalten |
|---|---|
| **Um Freigabe bitten** | Als „lesen“ eingestufte Werkzeuge können laufen; andere Aktionen fragen zuerst |
| **Für mich freigeben** | Lese- und Netzwerkwerkzeuge können laufen; Dateiänderungen und Shell-Befehle fragen zuerst |
| **Vollzugriff** | Werkzeugaktionen können ohne Freigabeanfrage ausgeführt werden, abgesehen von Werkzeugen, die eine `deny`-Regel sperrt |
| **Eigene Regeln** | Gespeicherte `allow`- und `deny`-Regeln gelten, und Werkzeuge ohne Regel nutzen die Standard-Risikorichtlinie |

**Für mich freigeben** ist der Standard. Manche Werkzeuge haben innerhalb einer Operation eigene Prüfungen. Das Kompilieren und Prüfen eines PDF wird anders behandelt als das Schreiben einer Quelldatei oder das Ausführen eines Shell-Befehls.

## Eine vorgeschlagene Aktion freigeben

Lesen Sie den Werkzeugnamen und die vorgeschlagene Operation auf der Freigabekarte. Geben Sie frei, um diese Aktion auszuführen, oder lehnen Sie sie ab, um die vorgeschlagene Änderung nicht anzuwenden. Fahren Sie die Unterhaltung mit einer enger gefassten Anweisung fort, wenn die angefragte Aktion zu weit gefasst ist.

## Immer in diesem Projekt

Nutzen Sie im Modus **Eigene Regeln** die Option **Immer in diesem Projekt** auf einer Freigabeanfrage, um eine Regel für dieses Werkzeug zu speichern. Prüfen Sie den gewählten Modus, wenn Sie erwarten, dass eine Regel den nächsten Lauf beeinflusst.

## Eine Regel prüfen oder entfernen

Öffnen Sie das Projekt, gehen Sie zu **Einstellungen → KI-Assistent → Anbieter und Schlüssel** und scrollen Sie zu **Werkzeugfreigaben**. Jede Zeile zeigt den Werkzeugnamen und ob es immer erlaubt oder verweigert ist. Entfernen Sie eine Regel, um dieses Werkzeug im Modus „Eigene Regeln“ zur Standard-Risikorichtlinie zurückzuführen.

## approvals.toml bearbeiten

**Datei mit Freigaberegeln**, unter **Werkzeugfreigaben**, bearbeitet `~/.oleafly/approvals.toml`. Nutzen Sie **Neu laden**, um die aktuelle Datei zu lesen, **Änderungen verwerfen**, um ungespeicherte Bearbeitungen fallen zu lassen, oder **Ein Beispiel einfügen**, um von einer Beispielkonfiguration zu starten. **Wie die Datei funktioniert** erklärt das Format und zeigt die Kennung des offenen Projekts. Das Speichern prüft das TOML, bevor es angewendet wird, und die Regeln gelten ab dem nächsten Werkzeugaufruf.

Die Datei enthält eine Modustabelle und Werkzeug-Regeltabellen mit der **Projektordner-Kennung** als Schlüssel, nicht dem Anzeigenamen:

```toml title="~/.oleafly/approvals.toml"
["$approval_modes"]
"my-project-folder-id" = "custom"

["my-project-folder-id"]
write_file = "allow"
replace_in_file = "allow"
run_command = "deny"
delete_file = "deny"
```

Ersetzen Sie `my-project-folder-id` durch die echte Ordnerkennung Ihres Projekts. Projektkennungen sind die Ordnernamen unter `~/.oleafly/projects`. Moduswerte sind `ask-for-approval`, `approve-for-me`, `full-access` und `custom`. Ein nicht aufgeführtes Projekt nutzt „Für mich freigeben“. Werkzeugregelwerte sind `allow` und `deny`. Eine `deny`-Regel gilt in jedem Modus, „Vollzugriff“ eingeschlossen, sodass ein verweigertes Werkzeug nie läuft. Eine `allow`-Regel gilt nur im Modus „Eigene Regeln“. Ein Werkzeug ohne Regel nutzt die normale Risikorichtlinie.

Kommentare, die mit `#` beginnen, überstehen ein Speichern aus den Einstellungen, aber das Wählen von **Immer in diesem Projekt** auf einer Freigabekarte schreibt die Datei ohne sie neu.

Verwenden Sie exakte Werkzeugnamen aus dem Katalog. Häufige Namen sind unter anderem `write_file`, `replace_in_file`, `create_file`, `rename_file`, `delete_file`, `run_command`, `compile`, `insert_figure` und `set_main_doc`.

## Welche Konfigurationsdatei soll ich verwenden?

| Datei | Zweck |
|---|---|
| `~/.oleafly/config.json` | App-Konfiguration, über die Einstellungen verwaltet |
| `~/.oleafly/approvals.toml` | Projekt-Freigabemodi und Regeln je Werkzeug |
| `~/.oleafly/agent.toml` | Fortgeschrittene Multi-Agent-Limits und -Anweisungen |
| Die Konfiguration Ihres externen Agenten, etwa `~/.codex/config.toml` | Dessen eigene Einstellungen und MCP-Verbindungen |

Oleafly verwendet keine einzige `config.toml` für all diese Einstellungen. Nutzen Sie die Einstellungen-Oberfläche für Anbieter-Schlüssel und App-Vorlieben; Zugangsdaten haben eine getrennte verschlüsselte Ablage. Ersetzen Sie nicht Ihre gesamte App-Konfiguration durch ein kurzes Beispiel.

## agent.toml konfigurieren

Fortgeschrittene Nutzer können `~/.oleafly/agent.toml` anlegen, um die Multi-Agent-Einstellungen des Assistenten abzustimmen. Diese Einstellungen regeln Oleaflys eigene Agenten-Laufzeit, getrennt von der Konfiguration eines verbundenen CLI-Agenten.

```toml title="~/.oleafly/agent.toml"
maxAgentDepth = 2
maxConcurrentSubagents = 8
minWaitTimeoutMs = 1000
maxWaitTimeoutMs = 300000
defaultWaitTimeoutMs = 120000
waitAgentEnabled = true

usageHintText = """
Delegate independent checks with clear scopes. Keep writing decisions with
the parent agent, and close completed agents when their work is collected.
"""

subagentDeveloperInstructions = """
Work only on the assigned task. Report the files and evidence you inspected.
Do not spawn additional agents.
"""
```

### maxAgentDepth

Begrenzt die Verschachtelungstiefe. Der Standard ist `2`: Kinder eines Laufs delegieren nicht weiter. Der kleinste akzeptierte Wert ist `1`.

### maxConcurrentSubagents

Begrenzt gleichzeitige Unteragenten in einer Sitzung. Der Standard ist `8`, das Minimum ist `1`. Mehr Agenten können die Modellnutzung erhöhen; erhöhen Sie das Limit für Arbeit, die tatsächlich unabhängig ablaufen kann.

### minWaitTimeoutMs

Setzt die untere Grenze für ein Agenten-Warten, in Millisekunden. Der Standard ist `1000`.

### maxWaitTimeoutMs

Setzt die obere Grenze für ein Agenten-Warten. Der Standard ist `300000`, also fünf Minuten. Er bleibt auf oder über dem Minimum.

### defaultWaitTimeoutMs

Setzt die Standard-Wartedauer. Der Standard ist `120000`, also zwei Minuten. Werte werden auf das konfigurierte Minimum und Maximum begrenzt.

### waitAgentEnabled

Steuert die Verfügbarkeit der Funktion zum Warten auf Agenten. Der Standard ist `true`.

### usageHintText

Liefert Delegationshinweise an den übergeordneten Agenten. Das Beispiel oben ersetzt die Standardhinweise durch Ihren eigenen Text.

### subagentDeveloperInstructions

Liefert Anweisungen an Unteragenten. Nutzen Sie es, um Umfang, Berichterwartungen und die Frage, ob weitere Delegation angebracht ist, festzulegen.

Die Laufzeit akzeptiert auch snake_case-Versionen dieser Schlüssel, etwa `max_agent_depth`. Ausgelassene Felder nutzen Standards. Eine fehlende oder fehlerhafte Datei fällt auf Standards zurück; prüfen Sie also die Syntax sorgfältig und starten Sie nach einer Konfigurationsänderung einen neuen Lauf.

## Eine Regel mit einer kleinen Aufgabe testen

1. Öffnen Sie ein Übungsprojekt und wählen Sie **Um Freigabe bitten**.
2. Fragen Sie: „Lies das Hauptdokument und schlage einen klareren Titel vor. Frage nach, bevor du die Datei änderst.“
3. Prüfen Sie die vorgeschlagene Änderung und geben Sie sie frei oder lehnen Sie sie ab.
4. Sehen Sie sich gespeicherte Regeln in den Einstellungen an, bevor Sie zum Modus „Eigene Regeln“ wechseln.
5. Nutzen Sie den [Planmodus](/docs/ai-chat/#plan-before-editing), wenn Sie mehrere Schritte vereinbaren wollen, bevor Bearbeitungen beginnen.

Externe Assistenten, die sich über Oleafly MCP verbinden, nutzen die [Richtlinie des MCP-Servers](/docs/mcp/#approvals-and-safety), die getrennt konfiguriert wird.
