

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 Lambda MicroVMs做為 Claude Managed Agents 的沙盒
<a name="microvms-integrations-claude-managed-agents"></a>

AWS Lambda MicroVMs 是自我託管沙盒中的受管沙盒供應商，適用於 Claude Managed Agents；在您控制的基礎設施中保留敏感檔案、套件和服務。人類託管代理程式迴圈和 Claude 模型，而 Lambda MicroVM 是工具呼叫執行的位置。透過此模式，您可以控制執行環境 – 安裝的內容、可用的網路存取，以及代理程式可以存取的資源。

每個 MicroVM 都是 Firecracker 隔離的虛擬機器，具有快照型次秒啟動，執行時間長達 8 小時，並且可以在工作階段結束時終止。工作階段永遠不會共用狀態。您可以取得 VM 的安全界限，其操作模型為無伺服器 – 無需管理叢集，無需支付閒置容量。您可以使用 AWS 服務協調 MicroVMs以實作自我託管沙盒規格，如下所述。如需詳細資訊，請參閱 [Lambda MicroVMs 上的 Claude Managed Agents 自我託管沙盒](https://github.com/aws-samples/sample-lambda-microvm-claude-managed-agents)參考範例。

## 運作方式
<a name="microvms-integrations-claude-how-it-works"></a>

控制平面會為每個 Claude 工作階段啟動一個 MicroVM：

1. 工作階段達到執行中狀態，而 Anthropic 會將 `session.status_run_started` Webhook 傳送至您帳戶中的端點。

1. 啟動器 Lambda 函數會驗證 Webhook 簽章，然後呼叫 `RunMicroVM`。

1. MicroVM 上的程式碼會宣告工作階段、在 中執行工具呼叫 (bash、read、 write、 edit、glob、grep)`/workspace`，並將結果發佈回 Anthropic。

1. 工作階段結束時，MicroVM 會暫停或終止。

您的 Anthropic 組織 API 金鑰永遠不會達到 AWS 運算。啟動器只會將 AWS Secrets Manager 參考傳遞至您的 Anthropic 環境金鑰；MicroVM 的執行角色允許程式碼在執行時間讀取。

## 金鑰屬性
<a name="microvms-integrations-claude-properties"></a>


| 屬性 | 優勢 | 
| --- | --- | 
| Firecracker 隔離 | 每個工作階段的硬體虛擬化界限 | 
| 快照型開機 | 從 Firecracker 快照以次秒到單位數秒為單位繼續 | 
| 透過 IMDSv2 的 IAM | 使用短期最低權限登入資料 | 
| 狀態持續時間 | 可使用完整磁碟和記憶體存取執行長達 8 小時 | 
| Pay-per-session | 工作階段完成時會終止 MicroVMs，這會結束計費 | 

## 先決條件
<a name="microvms-integrations-claude-prereqs"></a>
+ 具有 Amazon Simple Storage Service (Amazon S3) AWS Identity and Access Management 、 (IAM)、Secrets Manager、、 AWS WAF、Lambda 和 Lambda MicroVMs 許可 AWS 的帳戶
+ 具有`self_hosted`環境的 Claude Managed Agents 代理程式
+ 來自 Claude Console 的環境金鑰和 Webhook 簽署秘密

## 部署參考實作
<a name="microvms-integrations-claude-deploy"></a>

![架構圖顯示 Lambda MicroVMs 參考實作上的 Claude 自我託管沙盒](http://docs.aws.amazon.com/zh_tw/lambda/latest/dg/images/microvms-claude-managed-agents-architecture.png)


[Lambda MicroVMs 儲存庫上的 Claude Managed Agents 自我託管沙盒](https://github.com/aws-samples/sample-lambda-microvm-claude-managed-agents)提供最少的工作部署。其中包括：
+  CloudFormation 堆疊 (Amazon API Gateway、啟動器 Lambda 函數、Secrets Manager 秘密、Amazon S3 儲存貯體、IAM 角色）
+ MicroVM 映像 (`Dockerfile`、Node.js EnvironmentWorker、生命週期掛鉤）
+ 部署指令碼和驗證指令碼

部署步驟：

1. 部署 CloudFormation 堆疊。

1. 將環境金鑰和簽署秘密存放在建立的 Secrets Manager 秘密中。

1. 建置 MicroVM 映像。

1. 在 Claude 主控台中註冊堆疊的 Webhook URL。

1. 透過建立工作階段進行驗證。

如需詳細說明，請參閱儲存庫 README。

## 聯網
<a name="microvms-integrations-claude-networking"></a>

根據預設，Lambda MicroVMs具有公有網際網路存取 – 不需要組態即可到達 `api.anthropic.com`。

若要存取 Amazon Aurora 資料庫或 Amazon ElastiCache 叢集等私有資源，或套用您自己的網路限制，請在啟動時連接 VPC 輸出連接器。請參閱 [使用輸出網路連接器](microvms-networking.md#microvms-networking-connectors)。

## 閒置政策
<a name="microvms-integrations-claude-idle-policy"></a>

`autoResumeEnabled: false` 為每個工作階段 MicroVMs設定 `suspendedDurationSeconds: 0`和 。`maximumDurationInSeconds` 設定為停滯工作階段的上限 （最多 28，800 秒）。

```
{
  "maxIdleDurationSeconds": 120,
  "suspendedDurationSeconds": 0,
  "autoResumeEnabled": false
}
```

## 監控
<a name="microvms-integrations-claude-monitoring"></a>

**應用程式日誌** – 檢閱 CloudWatch Logs 中的應用程式日誌：

```
aws logs tail /aws/lambda-microvms/claude-worker --follow
```

**執行MicroVMs** – 列出您帳戶中執行MicroVMs：

```
aws lambda-microvms list-microvms \
  --image-identifier claude-worker \
  --query 'items[].[microvmId,state,startedAt]' --output table
```

## 疑難排解
<a name="microvms-integrations-claude-troubleshooting"></a>


| 徵狀 | 原因 | 
| --- | --- | 
| Webhook 傳回 401 | 簽署秘密不相符或過時交付 | 
| 沒有 MicroVM 啟動 | Webhook 未註冊 session.status\_run\_started，或啟動器 Lambda 函數執行角色缺少RunMicroVM許可 | 
| MicroVM 會立即終止 | /run 勾點逾時 – 提升 runTimeoutInSeconds | 
| 工作者立即結束 | 將 HTTPS 傳出至api.anthropic.com封鎖 | 
| 映像建置失敗 S3\_\* | 建置角色或儲存貯體組態錯誤 | 