Tools
Erweiterter Modus
Wenn ein Agent innerhalb einer Sandbox ausgeführt wird, sind seine exec-Befehle auf die Sandbox-Umgebung beschränkt. Im erweiterten Modus kann der Agent stattdessen die Sandbox verlassen und Befehle außerhalb der Sandbox ausführen, wobei konfigurierbare Genehmigungsschranken gelten.
Direktiven
Steuern Sie den erweiterten Modus sitzungsbezogen mit Slash-Befehlen:
| Direktive | Funktion |
|---|---|
/elevated on |
Außerhalb der Sandbox im konfigurierten Hostpfad ausführen und Genehmigungen beibehalten |
/elevated ask |
Identisch mit on (Alias) |
/elevated full |
Außerhalb der Sandbox im konfigurierten Hostpfad ausführen und Genehmigungen überspringen, wenn die Genehmigungsrichtlinie für Modus/Host bereits permissiv ist |
/elevated off |
Zur auf die Sandbox beschränkten Ausführung zurückkehren |
Auch als /elev on|off|ask|full verfügbar.
Senden Sie /elevated ohne Argument, um die aktuelle Stufe anzuzeigen.
Funktionsweise
Verfügbarkeit prüfen
Elevated muss in der Konfiguration aktiviert sein und der Absender muss auf der Zulassungsliste stehen:
{ tools: { elevated: { enabled: true, allowFrom: { discord: ["user-id-123"], whatsapp: ["+15555550123"], }, }, },}Stufe festlegen
Senden Sie eine Nachricht, die ausschließlich eine Direktive enthält, um den Sitzungsstandard festzulegen:
/elevated fullOder verwenden Sie sie inline (gilt nur für diese Nachricht):
/elevated on führen Sie das Bereitstellungsskript ausBefehle außerhalb der Sandbox ausführen
Wenn Elevated aktiv ist, verlassen exec-Aufrufe die Sandbox. Der effektive Host ist standardmäßig
gateway oder node, wenn das konfigurierte bzw. sitzungsbezogene exec-Ziel
node ist. Im Modus full werden exec-Genehmigungen übersprungen, wenn die aufgelöste Genehmigungsrichtlinie für exec-
Modus/Host bereits vollständig permissiv ist (Sicherheit full,
Abfrage off); andernfalls gilt weiterhin die normale Genehmigungsrichtlinie. Im Modus
on/ask gelten die konfigurierten Genehmigungsregeln immer.
Auflösungsreihenfolge
- Inline-Direktive in der Nachricht (gilt nur für diese Nachricht)
- Sitzungsüberschreibung (wird durch Senden einer Nachricht festgelegt, die ausschließlich eine Direktive enthält)
- Globaler Standard (
agents.defaults.elevatedDefaultin der Konfiguration)
Verfügbarkeit und Zulassungslisten
- Globale Schranke:
tools.elevated.enabled(musstruesein) - Absender-Zulassungsliste:
tools.elevated.allowFrommit kanalspezifischen Listen - Agentenspezifische Schranke:
agents.entries.*.tools.elevated.enabled(kann nur weiter einschränken; sowohl die globale als auch die agentenspezifische Schranke müssentruesein) - Agentenspezifische Zulassungsliste:
agents.entries.*.tools.elevated.allowFrom(der Absender muss sowohl der globalen als auch der agentenspezifischen Liste entsprechen) - Vom Kanal bereitgestellte Fallback-Zulassungsliste: Kanal-Plugins können optional über einen SDK-Adapter-Hook eine Fallback-Zulassungsliste bereitstellen, die verwendet wird, wenn
tools.elevated.allowFrom.<provider>nicht konfiguriert ist. Derzeit implementiert kein gebündelter Kanal diesen Hook, daher benötigt heute in der Praxis jeder Provider einen explizitentools.elevated.allowFrom.<provider>-Eintrag. - Alle Schranken müssen passiert werden; andernfalls gilt Elevated als nicht verfügbar
Formate für Einträge in der Zulassungsliste:
| Präfix | Übereinstimmung |
|---|---|
| (keines) | Absender-ID, E.164 oder From-Feld |
name: |
Anzeigename des Absenders |
username: |
Benutzername des Absenders |
tag: |
Tag des Absenders |
id:, from:, e164: |
Explizite Identitätsadressierung |
Was Elevated nicht steuert
- Tool-Richtlinie: Wenn
execdurch die Tool-Richtlinie verweigert wird, kann Elevated dies nicht außer Kraft setzen. - Hostauswahlrichtlinie: Elevated macht
autonicht zu einer uneingeschränkten hostübergreifenden Überschreibung. Es verwendet die konfigurierten bzw. sitzungsbezogenen Regeln für das exec-Ziel und wähltnodenur aus, wenn das Ziel bereitsnodeist. - Unabhängig von
/exec: Die Direktive/execpasst für autorisierte Absender die sitzungsbezogenen exec-Standardwerte (Host, Sicherheit, Abfrage, Node) an und erfordert den erweiterten Modus nicht.