# Anthropic 讓 Claude Platform 全面提供 Computer use、browser tool、Skills API 與 Files API

> 📖 本站完整內容索引（documentation index）：[llms.txt](/llms.txt)

> 原作者：ClaudeDevs (@ClaudeDevs) · 策展與摘要：EasyVibeCoding · 平台：X (Twitter) · 熱度：🔥🔥 · 日期：2026-08-21

> 原始來源：https://x.com/ClaudeDevs/status/2090540270219567575

## 證據與延伸閱讀

- [Anthropic 讓 Claude Platform 全面提供 Computer use、browser tool、Skills API 與 Files API。](https://claude.com/blog/computer-use-skills-api-files-api) — 官方文件
- [新版 computer_toolset_20260801 改變互動方式](https://platform.claude.com/docs/en/agents-and-tools/tool-use/computer-use-tool#earlier-tool-versions) — 官方文件
- [computer_toolset_20260801 提供 17 個 member tools](https://platform.claude.com/docs/en/agents-and-tools/tool-use/computer-use-tool) — 官方文件
- [Browser tool 透過頁面結構改善 automation](https://platform.claude.com/docs/en/agents-and-tools/tool-use/browser-use-tool) — 官方文件
- [Matthew Midson 表示 Skills API 建立 specialized document](https://www.anthropic.com/engineering/equipping-agents-for-the-real-world-with-agent-skills) — 官方文件

## 中文摘要

Anthropic 讓 Claude Platform 全面提供 Computer use、browser tool、Skills API 與 Files API。

**發布重點**  
ClaudeDevs 於 2026 年 8 月 21 日分享這項更新，核心主張是：即使企業應用程式沒有 API，Claude 仍能透過 Computer use 或 browser tool 執行工作；團隊則可用 Skills API 封裝並版本化既有程序，再透過 Files API 重複使用輸入與輸出檔案。來源文件標示相關功能於 2026 年 8 月 20 日在 Claude Platform 正式全面可用。

這次更新包含四個互相搭配的元件：

- Computer use：透過 screenshot、滑鼠與鍵盤控制 desktop environment。
- browser tool：直接讀取網頁結構並操作元素，減少只依賴螢幕座標的脆弱性。
- Skills API：上傳、版本化並重複套用團隊的程序與專業知識。
- Files API：檔案上傳一次後，後續 request 可用 `file_id` 參照，不必重複傳送。

Skills API 與 Files API 是 Claude Managed Agents 的基礎。Computer use 則是由應用程式在自控環境執行的 client toolset，目前不在 Managed Agents 提供；需要操作沒有 API 的系統時，應用程式必須執行工具呼叫，再把結果送回 Claude。Browser tool 適合只在網頁內完成的工作。

**Computer use 的多動作執行**  
新版 `computer_toolset_20260801` 改變了 Computer use 的互動方式。Claude 不再每次 model call 只執行一次點擊或輸入，而是能在同一個 turn 依序產生數個動作，例如點擊、輸入、按鍵與截圖。ClaudeDevs 表示，早期存取客戶的每個 task round trip 減少 20–40%，因此工作完成得更快，成本也較低。

`computer_toolset_20260801` 是 Anthropic 定義的 client toolset。單一 `{"type": "computer_toolset_20260801"}` 會提供 17 個 member tools，包含：

- `screenshot`、`zoom`
- `left_click`、`right_click`、`middle_click`
- `double_click`、`triple_click`
- `left_click_drag`
- `mouse_move`、`left_mouse_down`、`left_mouse_up`
- `cursor_position`
- `scroll`
- `type`、`key`、`hold_key`、`wait`

Claude 的 `tool_use` block 會帶有 `"toolset_name": "computer"`，而 member tool 的參數直接放在 `input`，不再使用舊版的 `input.action`。應用程式必須依 `(toolset_name, name)` pair 分派，不能只讀取第一個 tool call，也不能假設同名的 `screenshot` 或 `key` 一定來自同一個 toolset。

Computer use 的簡單呼叫方式如下，這個 request 同時宣告 Computer use、text editor 與 bash：

```bash
curl https://api.anthropic.com/v1/messages \
  -H "content-type: application/json" \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -d '{
    "model": "claude-opus-5",
    "max_tokens": 1024,
    "tools": [
      {"type": "computer_toolset_20260801"},
      {"type": "text_editor_20250728", "name": "str_replace_based_edit_tool"},
      {"type": "bash_20250124", "name": "bash"}
    ],
    "messages": [
      {"role": "user", "content": "Save a picture of a cat to my desktop."}
    ]
  }'
```

這類 CLI 內容只是來源文件中的整合範例，不代表可以直接在未檢查的環境中執行。尤其只要同一個 agent loop 另行加入 bash、檔案操作、登入資訊或外部網路，仍需人工核對權限與資料流向。

**Browser tool 改用頁面結構**  
只需要操作網頁時，Anthropic 建議使用 browser use tool，而不是建立完整 desktop environment。Computer use 主要依賴 screenshot 與座標；browser tool 則會讀取頁面結構，讓 Claude 根據 element references 加上 coordinates 鎖定欄位、按鈕或其他 web elements。

這種設計針對的是 pixel-based automation 的常見問題：當網頁排版改變時，原本指向按鈕的座標可能失效。browser tool 仍可處理視覺資訊，但會多取得頁面結構，因此比單純依賴 pixels 更能適應 layout shift。瀏覽器工具的說明見 [Browser use tool](https://platform.claude.com/docs/en/agents-and-tools/tool-use/browser-use-tool)。

在同一個 `tools` array 中，Computer use 與 browser use tool 可以並用。兩個 toolset 各自擁有 coordinate frame；若兩者都有 `screenshot` 或 `key` 等同名 member，則要用 `toolset_name` 區分。只要任一 toolset 尚未實作，就必須對相應 block 回傳 `is_error: true`，不能靜默忽略。

**Agent loop 與批次處理**  
Computer use 的執行核心是 agent loop：

1. 將 Computer tool 與需要 desktop interaction 的 prompt 傳給 Claude。
2. Claude 回傳 `stop_reason: "tool_use"`，其中可能包含一個或多個 `tool_use` blocks。
3. 應用程式依照 blocks 出現的順序，在自有 container 或 virtual machine 執行每個 member call。
4. 為每個 call 建立對應的 `tool_result`，保留正確的 `tool_use_id`，並在結果中加入 `"toolset_name": "computer"`。
5. `screenshot` 與 `zoom` 必須回傳 image；其他 action 可回傳 `OK` 等短文字。
6. 將所有結果放入新的 `user` message，再送回 Claude。
7. Claude 持續請求 actions，直到不再要求 tools，最後改以文字回覆，或達到最大迭代次數。

官方示範的 loop 如下：

```python
for _ in range(max_iterations):
    response = client.messages.create(
        model=model, max_tokens=4096,
        messages=messages, tools=TOOLS,
    )
    messages.append({"role": "assistant", "content": response.content})
    tool_results = process_tool_calls(response)
    if not tool_results:
        return messages
    messages.append({"role": "user", "content": tool_results})
return messages
```

各語言的等價實作包含 Python、TypeScript、C#、Go、Java、PHP 與 Ruby，預設 `max_iterations`／`maxIterations` 為 `10`。這個上限是防止意外 infinite loops 與不可預期 API costs 的 safeguard；loop 會在 Claude 不再要求 tools，或達到上限時結束。

批次 action 必須遵循「首個失敗即停止」：

- `left_click`、`type`、`screenshot` 等 actions 必須依序執行，不可 concurrently 執行。
- 每個 `tool_use` 都要在下一個 user message 中有對應的 `tool_result`。
- 若某個 action 失敗，該結果要設 `"is_error": true`，並說明原因。
- 後續尚未執行的 actions 必須回傳固定文字：`Not executed: an earlier computer action in this turn failed.`

```python
NOT_EXECUTED = "Not executed: an earlier computer action in this turn failed."
failed = False
for block in response.content:
    if block.type != "tool_use" or block.toolset_name != "computer":
        continue
    if failed:
        result["content"] = NOT_EXECUTED
        result["is_error"] = True
    else:
        try:
            result["content"] = handle_computer_action(block.name, block.input)
        except Exception as err:
            result["content"] = f"Error: {err}"
            result["is_error"] = True
            failed = True
```

失敗結果的格式例如：

```json
{
  "role": "user",
  "content": [
    {
      "type": "tool_result",
      "tool_use_id": "toolu_01A09q90qw90lq917835lq9",
      "toolset_name": "computer",
      "content": "Error: Failed to capture screenshot. Display may be locked or unavailable.",
      "is_error": true
    }
  ]
}
```

若應用程式暫時只能一次執行一個 action，可在 `tool_choice` 設定 `disable_parallel_tool_use: true`。若 batch 沒有以 screenshot 結束，應用程式可以把額外 screenshot image 附在最後一個結果，避免再增加一次 round trip；官方也建議在 system prompt 要求每批 action 都以 screenshot 結束：

```text
End each group of actions with a screenshot so you can verify the result before continuing.
```

**Sandbox、工具實作與安全邊界**  
Computer use 是 client-side tool。使用者環境保存螢幕截圖、滑鼠操作、鍵盤輸入與 session files；Anthropic 只在 API call 中即時處理截圖與動作請求。要建置自己的執行環境，通常需要：

- virtualized 或 containerized environment
- Xvfb 或類似 virtual display
- Mutter window manager 與 Tint2 panel
- Firefox、LibreOffice、文字編輯器與檔案管理器等 Linux applications
- 截圖、點擊、輸入等動作處理器
- 負責呼叫 Claude API、執行 `tool_use` 並回傳結果的 agent loop
- 啟動 loop 的 API 或 UI

官方 reference implementation 可參考 [computer-use-demo](https://github.com/anthropics/anthropic-quickstarts/tree/main/computer-use-demo)，其中包含 [Dockerfile](https://github.com/anthropics/anthropic-quickstarts/blob/main/computer-use-demo/Dockerfile)、[Computer use 工具](https://github.com/anthropics/anthropic-quickstarts/tree/main/computer-use-demo/computer_use_demo/tools)、[Agent 迴圈](https://github.com/anthropics/anthropic-quickstarts/blob/main/computer-use-demo/computer_use_demo/loop.py) 與網頁介面。

以下是來源文件中的最小 Python action handler。實際部署時，placeholder PNG 必須換成真實螢幕擷取；這段程式碼本身不會安全地操作真實桌面：

```python
PLACEHOLDER_PNG = "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNkYPhfDwAChwGA60e6kgAAAABJRU5ErkJggg=="

def handle_computer_action(name, tool_input):
    if name == "screenshot":
        return [{
            "type": "image",
            "source": {
                "type": "base64",
                "media_type": "image/png",
                "data": PLACEHOLDER_PNG,
            },
        }]
    elif name == "left_click":
        return f"clicked at {tool_input.get('coordinate', 'current cursor')}"
    elif name == "type":
        return f"typed: {tool_input['text']}"
    raise ValueError(f"Unknown or unimplemented member: {name}")
```

Java 的對應分派範例如下：

```java
ToolResultBlockParam.Content handleComputerAction(String action, Map<String, JsonValue> input) {
    if (action.equals("screenshot")) {
        return captureScreenshot();
    }
    String output = switch (action) {
        case "left_click" -> {
            JsonValue coordinate = input.get("coordinate");
            if (coordinate == null) yield clickAtCursor();
            List<JsonValue> point = (List<JsonValue>) coordinate.asArray().get();
            long x = ((Number) point.get(0).asNumber().get()).longValue();
            long y = ((Number) point.get(1).asNumber().get()).longValue();
            yield clickAt(x, y);
        }
        case "type" -> typeText(input.get("text").asStringOrThrow());
        default -> throw new UnsupportedOperationException("Unknown or unimplemented member: " + action);
    };
    return ToolResultBlockParam.Content.ofString(output);
}
```

來源也提供 Ruby 的錯誤處理範例：

```ruby
NOT_EXECUTED = "Not executed: an earlier computer action in this turn failed."

def process_tool_calls(response)
  tool_results = []
  failed = false
  response.content.each do |block|
    next unless block.type == :tool_use && block.toolset_name == "computer"

    result = { type: "tool_result", tool_use_id: block.id, toolset_name: "computer" }
    if failed
      result.update(content: NOT_EXECUTED, is_error: true)
    else
      begin
        result[:content] = handle_computer_action(block.name, block.input)
      rescue => e
        result.update(content: "Error: #{e.message}", is_error: true)
        failed = true
      end
    end
    tool_results << result
  end
  tool_results
end
```

TypeScript、C#、Go、Java、PHP 也維持相同契約：TypeScript 使用 `HALT_TEXT`、`computerResult` 與 `Anthropic.ToolResultBlockParam`；C# 使用 `HaltText` 與 `TryPickToolUse`；Go 的 `computerToolResult` 必須 echo toolset name 並用 `is_error` 標記錯誤；Java 的 `HALT_TEXT` 使用相同固定字串；PHP 同時相容 `toolsetName` 與 `toolset_name`。

Computer use 帶有一般 API feature 沒有的風險。Anthropic 建議：

- 使用低權限的 dedicated virtual machine 或 container。
- 以 allowlist 限制可存取的 domains。
- 不要提供 account login 或其他 sensitive data。
- 對 cookies、金融交易、接受 terms of service 等具實際後果的動作要求 human confirmation。
- 在啟用產品前向 end users 說明風險並取得同意。
- 人工 review Claude 的 actions 與 logs，不要在沒有 human oversight 的情況下處理要求 perfect precision 或 sensitive user information 的 task。

網頁或 image 中的惡意指令可能覆蓋原本的 prompt，形成 prompt injection。Anthropic 已加入模型訓練與 classifier defense；若 classifier 從 screenshot 偵測到潛在 prompt injection，可能引導模型先要求 user confirmation，但這不代表隔離 sensitive data 與 actions 可以省略。若要 opt out 或關閉防護，需聯絡 [support](https://support.claude.com/en/)。不可信的網頁、Skills、指令碼或外部 URL 都應先人工 audit，不能因為 Claude 有防護就直接信任。

**座標、影像與操作可靠性**  
所有 `coordinate`、`start_coordinate`、`region` 與 `cursor_position` 都使用 full-display screenshot 的左上角作為 origin。`zoom` 不會改變座標空間；如果 client 先縮放 screenshot，必須保存 scale factor，將 Claude 回傳的座標映射回真實 display。

常見的 member input 包含：

```json
{"type":"tool_use","id":"toolu_01Qg8m3XqC5aRy7tD2eS4jUg","name":"left_click","toolset_name":"computer","input":{"coordinate":[500,300],"text":"shift"}}
{"type":"tool_use","id":"toolu_01Ed6j9VnA3yPw5rB8cQ2gSe","name":"left_click_drag","toolset_name":"computer","input":{"start_coordinate":[200,300],"coordinate":[600,300]}}
{"type":"tool_use","id":"toolu_01Yc5h8UmZ2xNv4qA7bP9fRd","name":"scroll","toolset_name":"computer","input":{"coordinate":[500,400],"scroll_direction":"down","scroll_amount":3}}
{"type":"tool_use","id":"toolu_01Sb4g7TkY9wLu3pX6zM8eQc","name":"key","toolset_name":"computer","input":{"text":"Tab","repeat":4}}
{"type":"tool_use","id":"toolu_01Kf7k2WpB4zQx6sC9dR3hTf","name":"zoom","toolset_name":"computer","input":{"region":[100,200,400,350]}}
```

`scroll_direction` 可使用 `"up"`、`"down"`、`"left"` 或 `"right"`，`scroll_amount` 代表 wheel clicks；`key` 支援 `"Return"`、`"ctrl+s"`、`"alt+Tab"` 等組合鍵，`repeat` 範圍為 1–100，預設為 1；`hold_key` 的 `duration` 最長為 300 seconds；`wait` 的 `duration` 也最長為 300 seconds。

新版 toolset 最多接受 long edge 2576 pixels、總計 4784 visual tokens，計算方式為 `⌈width / 28⌉ × ⌈height / 28⌉`，約 3.75 megapixels。較早模型的 long edge 上限為 1568 pixels，約 1.15 megapixels。單一 request 超過 20 張影像後，每張影像會受到更嚴格的 per-side limit；建議每邊控制在 2000 px 以下，並保留最後 3 張 screenshot、每 25 turns 批次 prune。

早期模型的縮放範例以 `1512 × 982` 螢幕為基準：

```python
import math

screen_width, screen_height = 1512, 982

def get_scale_factor(width, height):
    long_edge = max(width, height)
    total_pixels = width * height
    long_edge_scale = 1568 / long_edge
    total_pixels_scale = math.sqrt(1_150_000 / total_pixels)
    return min(1.0, long_edge_scale, total_pixels_scale)

scale = get_scale_factor(screen_width, screen_height)
scaled_width = int(screen_width * scale)
scaled_height = int(screen_height * scale)
screenshot = capture_and_resize(scaled_width, scaled_height)

def execute_click(x, y):
    screen_x = x / scale
    screen_y = y / scale
    perform_click(screen_x, screen_y)
```

macOS Retina display 以 device pixel ratio `2` 擷取，影像解析度是 logical screen coordinates 的兩倍；送出前應 downscale `2x`，或在 click 前將座標除以 `2`。一般 desktop 可先以 `1024x768` 或 `1280x720` 作為 baseline，web application 可用 `1280x800` 或 `1366x768`，避免超過 `1920x1080` 造成效能問題。

如果 click 總是往同一方向偏移，通常是 screenshot 尺寸與 display 尺寸不一致；如果 click 落在正確區域卻錯過小目標，可能是 `4K+` downscaling、細節不足或 aspect ratio 被扭曲。這時應保持 aspect ratio、使用 `zoom`、裁切相關區域，或降低 DPI。每個 click 後也建議等待 `0.5` 秒；TypeScript 與 Java 使用 `500` milliseconds，其他語言提供 `click_and_wait`／`clickAndWait` 封裝。

執行前可驗證座標是否位於 `1024x768` display 範圍內：

```text
0 <= x < 1024
0 <= y < 768
```

不符合時回傳 `"Coordinates out of bounds"`；Go 另應處理格式錯誤並回傳 `"Invalid coordinate"`。除錯時需記錄所有動作、參數與結果，來源範例分別使用 Python `logging.info`、TypeScript／C# 標準錯誤輸出、Go `log.Printf`、Java `System.Logger` 的 `INFO`、PHP `error_log` 與 Ruby `Logger.new($stderr)`。

**新版 toolset 的設定與遷移**  
`tools` 陣列中的 toolset entry 可接受 `type`、`configs`、`cache_control` 與 `allowed_callers`。`allowed_callers` 目前只能是 `["direct"]`；`configs` 可依 member name 設定 `enabled` 與 `defer_loading`。例如停用 `zoom` 並設定 ephemeral cache breakpoint：

```json
{
  "type": "computer_toolset_20260801",
  "configs": {
    "zoom": { "enabled": false }
  },
  "cache_control": { "type": "ephemeral" }
}
```

來源文件亦指出 `defer_loading` 必須放進 `configs`，不能繼續放在 entry；各 enabled member 使用相同值。`computer_toolset_20260801` 不接受早期版本的 `name`、`display_width_px`、`display_height_px`、`display_number` 或 `enable_zoom`，混用 `computer_20251124` 或另一個名為 `computer` 的 tool 也會失敗。

舊 entry 是：

```json
{
  "type": "computer_20251124",
  "name": "computer",
  "display_width_px": 1024,
  "display_height_px": 768,
  "display_number": 1
}
```

遷移時應將 `type` 改成 `computer_toolset_20260801`，移除上述舊欄位，並移除 `anthropic-beta: computer-use-2025-11-24` 與 SDK 的 `betas` parameter，改用 standard Messages API client。若要維持舊 entry 未設定 `enable_zoom` 的行為，可使用：

```json
{
  "type": "computer_toolset_20260801",
  "configs": {
    "zoom": { "enabled": false }
  }
}
```

舊版 beta integration 在遷移期間仍可運作。`computer_20251124` 使用 `computer-use-2025-11-24`，`computer_20250124` 使用 `computer-use-2025-01-24`；前者仍可搭配 Claude Fable 5、Claude Mythos 5、Claude Opus 5、Claude Sonnet 5、Claude Opus 4.8、Claude Opus 4.7、Claude Opus 4.6、Claude Sonnet 4.6 與 Claude Opus 4.5，後者支援 Claude Sonnet 4.5、Claude Haiku 4.5、Claude Opus 4.1、Claude Sonnet 4 與 Claude Opus 4。早期版本需要 beta header，部分版本已 retired。

新版 toolset 宣告本身約增加 4,500 input tokens：Claude Fable 5、Claude Mythos 5、Claude Opus 5 與 Claude Opus 4.8 約 4,520，Claude Sonnet 5 約 4,590；停用 `zoom` 可減少約 410 tokens。實際數值會出現在 response `usage`，也可用 [token counting endpoint](https://platform.claude.com/docs/en/build-with-claude/token-counting) 預估。舊版 `computer_20251124`／`computer_20250124` 的 system prompt overhead 為 466–499 tokens，`computer_20250124` 每個 tool definition 約 735 input tokens；截圖、縮放影像與執行結果也會產生額外 token 成本。

**Skills API 與可重複流程**  
Skills 是以 filesystem 為基礎的可重複資源，將指示、metadata，以及可選的指令碼、範本與參考資料封裝在同一個資料夾。它不是一次性的 conversation-level prompt，而是依任務需要載入，讓 Claude 能重複套用相同的專業流程。

Skills 採 progressive disclosure：

- Level 1：啟動時只載入 YAML frontmatter 的 `name` 與 `description`，每個 skill 約 `~100 tokens`。
- Level 2：觸發後才讀取 `SKILL.md`，通常少於 `5k tokens`。
- Level 3+：只有需要時才讀取 `FORMS.md`、結構定義、參考資料或其他 resources。
- scripts 由 bash 執行，只有像 `Validation passed` 這類輸出進入 context，原始程式碼不必載入。

每個 skill 都必須有 `SKILL.md` 與 YAML frontmatter。`name` 最多 `64` 字元，只能使用小寫英文字母、數字與連字號，不能含 XML tags，也不能使用保留字 `"anthropic"` 或 `"claude"`；`description` 必填，最多 `1024` 字元，並要同時說明 skill 做什麼及何時使用：

```yaml
---
name: pdf-processing
description: Extract text and tables from PDF files, fill forms, merge documents. Use when working with PDF files or when the user mentions PDFs, forms, or document extraction.
---
```

API 同時支援 pre-built Agent Skills 與 custom Skills。可用 `pptx`、`xlsx`、`docx` 與 `pdf`，也可透過 Skills API 的 `/v1/skills` endpoints 上傳自製 skill。API skill 在 sandboxed container 中執行，沒有 network access，也不能安裝 runtime package，只能使用預先安裝的 packages。Claude API 需要在 `container` 中搭配 `skill_id` 與 code execution tool。

PDF Skill 的範例是用 `pdfplumber` 抽取文字與 tables：

```python
import pdfplumber

with pdfplumber.open("document.pdf") as pdf:
    text = pdf.pages[0].extract_text()
```

典型資料夾結構包含 `pdf-processing/`、`SKILL.md`、`FORMS.md`、`REFERENCE.md` 與 `scripts/fill_form.py`。`SKILL.md` 可引用相對檔案 `FORMS.md`；這類相對路徑應以 inline code 顯示，不應包成 Markdown 連結。scripts 如 `fill_form.py`、`validate.py` 可由 bash 執行，把 deterministic operations 留在程式中，避免把大量程式碼塞進 context。

Skills 可在 Claude API、Claude Platform on AWS、Microsoft Foundry、Claude Code 與 claude.ai 使用，但管理方式不同：

- Claude Code 會自動發現含 `SKILL.md` 的 directory，個人路徑是 `~/.claude/skills/`，專案路徑是 `.claude/skills/`。
- claude.ai 可從 Settings > Features 以 zip 上傳 custom Skills，適用 Pro、Max、Team 與 Enterprise，但目前只屬於個別使用者，不能由 admin 集中管理。
- API 的 custom Skills 是 workspace-wide。
- Claude Code 可採個人或 project-based 管理，也可透過 Claude Code Plugins 分享。
- custom Skills 不會跨 claude.ai、API 與 Claude Code 自動同步，必須分別上傳或管理。
- claude.ai 可使用 pre-built PowerPoint、Excel、Word 與 PDF Skills；Claude Code 不提供這些 pre-built Skills，但隨附 open-source [Claude API skill](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/claude-api-skill)。

完整背景可參考 [Agent Skills overview](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview)、[Skill authoring best practices](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/best-practices)、[快速入門教學](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/quickstart)、[Agent Skills Cookbook](https://platform.claude.com/cookbook/skills-notebooks-01-skills-introduction)、[skills repository](https://github.com/anthropics/skills) 與 [Equipping agents for the real world with Agent Skills](https://www.anthropic.com/engineering/equipping-agents-for-the-real-world-with-agent-skills)。

**Files API 與 Managed Agents**  
Files API 讓 Agent 將 PDF、spreadsheet 或其他檔案上傳一次，後續 request 透過 `file_id` 參照，也能下載 Agent 產生的檔案。這次更新新增：

- `expires_in_seconds`
- 5 倍更高的 rate limits，達到 `500 RPM`
- 每個 organization `1 TB` storage

這種檔案層能減少重複上傳，也讓跨 request 的流程更容易維持固定輸入。Skills API 則可把 procedure 上傳一次、建立版本，再讓每次 request 綁定 `version_id` 或 `latest`。兩者合起來，Agent 不只會按照固定流程工作，也能在不同 request 間重複使用檔案與知識。

來源提供的 claims workflow 例子是：先從 Files API 讀取 intake document，遵循編碼團隊的 filing procedure skill，再透過 browser use tool 進入 insurer web portal 完成 submission，最後把 confirmation 儲存為檔案。這個 loop 也能加入已全面可用的 code execution 與 web search。

Healthcare 與 insurance systems 是重要的應用場景。Research Engineer **Davide Locatelli** 表示，他們的 agents 可在沒有 API 的 healthcare 與 insurance systems 中運作；新版 Computer use 讓最長的 claims workflow 從 **32 分鐘降至 13 分鐘**，所有測試 workflow 的 cost per task 約下降 **30%**，completion 達到 **100%**，而且 prompt 沒有改動。這是 Anthropic 引述的實作結果，並非獨立第三方 benchmark。

Managing Director of Banking **Matthew Midson** 則表示，Skills API 讓 Box Agent 能直接建立 specialized document creation。銀行可以把 firm 的 credit methodology 與 approved memo format 封裝成 skill，Box Agent 再套用到既有 financial statements 與 deal documents，產生 source-grounded credit memo 供 analyst review，避免每次都從零打造複雜 workflow 的 Agent。

**成本、限制與部署範圍**  
Computer use 的 latency 可能慢於人類操作，因此較適合不重視即時速度的 trusted environments，例如背景資訊蒐集與 automated software testing。Claude 仍可能在座標、tool selection 或 niche、多應用程式情境中犯錯；社交與通訊平台的建立帳號、產生內容、分享及 human impersonation 也有能力限制。

Computer use 支援 Claude API；Claude Platform on AWS、Amazon Bedrock、Google Cloud 與 Microsoft Foundry 目前都僅提供較早的 beta tool versions。支援 models 包含 `claude-fable-5`、`claude-mythos-5`、`claude-opus-5`、`claude-sonnet-5`、`claude-opus-4-8`；Claude Opus 4.7、Claude Opus 4.6、Claude Sonnet 4.6 與 Claude Opus 4.5 仍只能透過較早的 `computer_20251124` 搭配 beta header 使用。更新後的 Computer use 與 browser use tools預計登陸 Google Cloud 的 Vertex AI。

這些工具採 standard tool use pricing。Computer use 的 screenshot 與 zoom image 按 image input 計費，bash 與 text editor 另有成本；API request retention 仍依 [API and data retention](https://platform.claude.com/docs/en/manage-claude/api-and-data-retention) 規範。Computer use 具有 ZDR eligibility，但不包含 Covered Models；Agent Skills 不受 ZDR arrangements 覆蓋，definitions 與 execution data 依 Anthropic standard data retention policy 保留。

Anthropic 對 Skills 的安全立場也很明確：只應使用自己建立或從 Anthropic 取得的 Skills。不可信 skill 可能指示 Claude 誤用 tools、執行 code、外洩資料，或取得未授權的系統存取權。人工 audit 時應檢查：

- `SKILL.md`、指令碼、圖片與資源。
- 異常網路呼叫、檔案存取與工具誤用。
- 是否抓取 external URL。
- 是否要求不必要的權限或傳送本機資料。

claude.ai／Claude Cowork 可啟用 [content scanning](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/enterprise#skill-content-scanning)，但這項掃描不涵蓋 Skills API 或 Claude Console 上傳的內容。企業治理可參考 [enterprise guidance](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/enterprise)。

**整體意義**  
這次發布的重點不只是讓 Claude「看著螢幕操作」，而是把操作、流程與檔案組成可重複部署的 Agent 工作單位。Computer use 解決沒有 API 的舊系統接入問題，browser tool 以頁面結構改善網頁自動化，Skills API 將團隊知識版本化，Files API 則提供跨 request 的檔案參照。

<video src="https://pub-75d4fe1e4e80421b9ecb1245a7ae0d1a.r2.dev/curated/1787303743610-382k2fpw.mp4" poster="https://pub-75d4fe1e4e80421b9ecb1245a7ae0d1a.r2.dev/curated/0354adf40f13bbf3.jpg" controls playsinline preload="metadata" style="max-width:100%;height:auto;display:block;margin:1rem 0"></video>
> Claude Platform 推出 Computer Use、Browser Tool、Files API 與 Skills API 等多項 GA 功能更新的總覽與操作示範畫面

ClaudeDevs 想傳達的是，企業可以從單次 prompt automation，進一步建立長流程 Agent；Skills API 與 Files API 可作為 Managed Agents 的基礎，但 Computer use 目前仍需由應用程式在自控環境執行。這個方向仍以 sandbox、權限隔離、人工確認、錯誤停止與 logs 為前提。若要實際試用官方 demo，可參考 [computer-use-demo](https://github.com/anthropics/anthropic-quickstarts/tree/main/computer-use-demo)；若要導入正式流程，則必須先核對模型、平台、beta migration、影像限制、token 成本與 Skills 的安全來源。


## 媒體內容

**Claude Platform 推出 Computer Use、Browser Tool、Files API 與 Skills API 等多項 GA 功能更新的總覽與操作示範畫面**

**影片中的 Prompt 與操作**

操作步驟：

1. （00:14）點擊 Claim ID 輸入欄位
2. （00:15）輸入 CLM-2024-88412
3. （00:17）點擊 Amount 輸入欄位
4. （00:18）輸入 $1,240.00
5. （00:19）點擊 Approve 按鈕

## 標籤

ComputerUse, Skills, 功能更新, Claude, Anthropic, Claude
