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 aus der Sandbox ausbrechen und Befehle außerhalb der Sandbox ausführen, wobei konfigurierbare Genehmigungsschranken gelten.
Direktiven
Steuern Sie den erweiterten Modus sitzungsweise 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 Positivliste stehen:
{ tools: { elevated: { enabled: true, allowFrom: { discord: ["user-id-123"], whatsapp: ["+15555550123"], }, }, },}Stufe festlegen
Senden Sie eine Nachricht, die ausschließlich die Direktive enthält, um den Sitzungsstandard festzulegen:
/elevated fullOder verwenden Sie sie eingebettet (gilt nur für diese Nachricht):
/elevated on das Bereitstellungsskript ausführenBefehle außerhalb der Sandbox ausführen
Wenn Elevated aktiv ist, verlassen exec-Aufrufe die Sandbox. Der wirksame Host ist standardmäßig
gateway oder node, wenn das konfigurierte bzw. sitzungsbezogene Ausführungsziel
node ist. Im Modus full werden exec-Genehmigungen übersprungen, wenn die aufgelöste
Genehmigungsrichtlinie für Ausführungsmodus/-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
- Eingebettete Direktive in der Nachricht (gilt nur für diese Nachricht)
- Sitzungsüberschreibung (durch Senden einer Nachricht festgelegt, die ausschließlich eine Direktive enthält)
- Globaler Standard (
agents.defaults.elevatedDefaultin der Konfiguration)
Verfügbarkeit und Positivlisten
- Globale Schranke:
tools.elevated.enabled(musstruesein) - Absender-Positivliste:
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 Positivliste:
agents.entries.*.tools.elevated.allowFrom(der Absender muss sowohl der globalen als auch der agentenspezifischen Positivliste entsprechen) - Vom Kanal bereitgestellte Ersatz-Positivliste: Kanal-Plugins können optional über einen SDK-Adapter-Hook eine Ersatz-Positivliste bereitstellen, die verwendet wird, wenn
tools.elevated.allowFrom.<provider>nicht konfiguriert ist. Derzeit implementiert kein mitgelieferter 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 wird Elevated als nicht verfügbar behandelt
Formate für Positivlisteneinträge:
| Präfix | Entspricht |
|---|---|
| (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ätszuordnung |
Was Elevated nicht steuert
- Tool-Richtlinie: Wenn
execdurch die Tool-Richtlinie abgelehnt wird, kann Elevated dies nicht überschreiben. - Hostauswahlrichtlinie: Elevated macht
autonicht zu einer uneingeschränkten hostübergreifenden Überschreibung. Es verwendet die konfigurierten bzw. sitzungsbezogenen Regeln für das Ausführungsziel und wähltnodenur aus, wenn das Ziel bereitsnodeist. - Unabhängig von
/exec: Die Direktive/execpasst für autorisierte Absender die sitzungsbezogenen exec-Standardeinstellungen (Host, Sicherheit, Abfrage, Node) an und erfordert den erweiterten Modus nicht.