Einrichtung der Cloud-Umgebung
Passe Cloud-Sandboxes für deine Sessions an.
Environments (Umgebungen) definieren die Sandbox-Konfiguration, in der dein Agent läuft. Du erstellst eine Umgebung einmal und referenzierst dann ihre ID jedes Mal, wenn du eine Session startest. Mehrere Sessions können dieselbe Umgebung gemeinsam nutzen, aber jede Session erhält ihre eigene isolierte Sandbox (einen frischen Linux-Container).
Diese Seite behandelt Umgebungen vom Typ type: cloud. Um Sandboxes auf deiner eigenen Infrastruktur auszuführen, siehe Selbst gehostete Sandboxes.
Eine Umgebung erstellen
ant beta:environments create < python-dev.environment.yamlname: python-dev
config:
type: cloud
networking:
type: unrestrictedVerwende einen eindeutigen, aussagekräftigen name, damit du Umgebungen voneinander unterscheiden kannst.
Die Umgebung in einer Session verwenden
Übergib die Umgebungs-ID als String beim Erstellen einer Session.
ant beta:sessions create --agent "$AGENT_ID" --environment-id "$ENVIRONMENT_ID"Konfigurationsoptionen
Pakete
Das Feld packages installiert Pakete vorab in der Sandbox, bevor der Agent startet. Pakete werden von ihren jeweiligen Paketmanagern installiert und über Sessions hinweg, die dieselbe Umgebung nutzen, zwischengespeichert. Wenn mehrere Paketmanager angegeben sind, werden sie in alphabetischer Reihenfolge ausgeführt (apt, cargo, gem, go, npm, pip). Du kannst optional bestimmte Versionen festlegen. Pakete ohne festgelegte Version installieren die neueste Version. Wenn die Umgebung limited Networking verwendet, setze außerdem networking.allow_package_managers auf true; andernfalls wird die Anfrage mit einem 400-Fehler abgelehnt.
ant beta:environments create < environment.yamlname: data-analysis
config:
type: cloud
packages:
pip:
- pandas
- numpy
- scikit-learn
npm:
- express
networking:
type: unrestrictedUnterstützte Paketmanager:
| Feld | Paketmanager | Beispiel |
|---|---|---|
apt | Systempakete (apt-get) | "graphviz" |
cargo | Rust (cargo) | "hyperfine@1.18.0" |
gem | Ruby (gem) | "rails:7.1.0" |
go | Go-Module | "golang.org/x/tools/cmd/goimports@latest" |
npm | Node.js (npm) | "express@4.18.0" |
pip | Python (pip) | "sqlalchemy==2.0.30" |
Networking
Das Feld networking steuert den ausgehenden Netzwerkzugriff der Sandbox. Es wirkt sich nicht auf die Tools web_search oder web_fetch aus, die auf den Servern von Anthropic laufen; um die Websites einzuschränken, die diese Tools erreichen können, setze allowed_domains oder blocked_domains im Eintrag des Tools im Agent-Toolset. Siehe Domains für Websuche und Web-Fetch einschränken.
| Modus | Beschreibung |
|---|---|
unrestricted | Voller ausgehender Netzwerkzugriff, mit Ausnahme einer allgemeinen Sicherheits-Blockliste. Dies ist der Standard. |
limited | Beschränkt den Netzwerkzugriff der Sandbox auf die Hosts in allowed_hosts. Setze allow_package_managers und allow_mcp_servers auf true, um zusätzlichen Zugriff zu erlauben. |
Das folgende Beispiel erstellt eine Umgebung mit limited Networking:
ant beta:environments create < environment.yamlname: api-access
config:
type: cloud
networking:
type: limited
allowed_hosts:
- api.example.com
allow_mcp_servers: true
allow_package_managers: trueBei Verwendung von limited Networking:
allowed_hostsgibt die Domains an, die die Sandbox erreichen kann. Gib reine Hostnamen oder Wildcard-Muster an (wie*.example.com). Füge kein URL-Schema, keinen Port und keinen Pfad hinzu.allow_mcp_serverserlaubt ausgehenden Zugriff auf die am Agenten konfigurierten MCP-Server-Endpunkte, zusätzlich zu den im Arrayallowed_hostsaufgeführten. Standardmäßigfalse.allow_package_managerserlaubt ausgehenden Zugriff auf öffentliche Paket-Registries (wie PyPI und npm), zusätzlich zu den im Arrayallowed_hostsaufgeführten. Standardmäßigfalse. Setze es auftrue, wann immer die Umgebungpackagesangibt; andernfalls wird die Anfrage mit einem 400-Fehler abgelehnt, selbst wenn die Registry-Hosts inallowed_hostsaufgeführt sind.
Lebenszyklus von Umgebungen
- Umgebungen bleiben bestehen, bis sie explizit archiviert oder gelöscht werden.
- Jede Session erhält ihre eigene Sandbox-Instanz, auch wenn mehrere Sessions dieselbe Umgebung referenzieren. Sessions teilen keinen Dateisystemzustand.
- Umgebungen sind nicht versioniert. Wenn du eine Umgebung häufig aktualisierst, führe deine eigenen Aufzeichnungen über die Änderungen, damit du nachvollziehen kannst, welche Konfiguration jede Session verwendet hat.
Umgebungen verwalten
# Environments auflisten
ant beta:environments list
# Ein bestimmtes Environment abrufen
ant beta:environments retrieve --environment-id "$ENVIRONMENT_ID"
# Ein Environment archivieren (schreibgeschützt, bestehende Sessions laufen weiter)
ant beta:environments archive --environment-id "$ENVIRONMENT_ID"
# Ein Environment löschen (nur wenn keine Sessions darauf verweisen)
ant beta:environments delete --environment-id "$ENVIRONMENT_ID"Vorinstallierte Laufzeitumgebungen
Cloud-Sandboxes enthalten standardmäßig gängige Sprach-Laufzeitumgebungen, Datenbanken und Kommandozeilen-Tools. Siehe Cloud-Sandbox-Referenz für die vollständige Liste.
Nächste Schritte
Vorinstallierte Pakete, Datenbanken und Dienstprogramme, die in Cloud-Sandboxes verfügbar sind.
Erstelle eine Session, um deinen Agenten auszuführen und mit der Ausführung von Aufgaben zu beginnen.
Was this page helpful?