Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
298 changes: 156 additions & 142 deletions content/.metadata.json

Large diffs are not rendered by default.

8 changes: 8 additions & 0 deletions content/claude/claude-science/admin-controls.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,14 @@ Skills are instructions, sometimes with helper code, that Claude loads when a ta

When the switch is off, members can't add new skills of their own or publish them, and the app notes that custom skills are disabled by your admin. Skills a member added earlier still work and can still be edited, and Featured skills aren't affected. Custom skills are how members teach Claude their own workflows and analysis pipelines, so Anthropic recommends leaving this switch on.

### Organization skills

Add skills for everyone in your organization in claude.ai, under **Organization settings** > **Skills** > **Organization skills**. Upload each skill as a .zip file. Members see it in the Claude Science app under **Settings** > **Skills**, in the **Organization** section. Organization skills go to every member. To update a skill, upload a new version in claude.ai.

To let members manage their own skills, host them in a GitHub repository. Put one `skills/<name>/SKILL.md` folder per skill in the repository and share the link. Members import them in the Claude Science app under **Settings** > **Skills** > **Add skill** > **Import from GitHub**. Claude Science records the commit each skill came from. **Check for updates** flags skills that are behind the repository's latest commit; each member chooses when to import again. Private repositories work after a member adds a GitHub token in the Claude Science app under **Settings** > **Credentials**.

To stop members from adding their own skills, turn off the **Allow custom skills** switch on the **Organization settings** > **Claude Science** page (see [Custom skills](#custom-skills)).

### Network allowlist

When Claude runs code for a member, that code can reach only the domains on the analysis sandbox's network allowlist: the package hosts, the scientific databases behind the Featured connectors, and hosts the member approved. See [Sandbox](/docs/claude-science/core-concepts#sandbox) and the domain tables in [Network requirements](/docs/claude-science/network-requirements#analysis-sandbox-domains).
Expand Down
2 changes: 2 additions & 0 deletions content/claude/claude-science/connectors-and-skills.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,3 +50,5 @@ The databases behind Featured connectors are on the network allowlist in groups
Claude loads a skill automatically when the work calls for it. Type **/** in the composer to open the skill picker and insert one explicitly. On Team and Enterprise plans, your organization can turn individual Featured skills off; a skill it has off stays listed, grayed, and Claude doesn't load it.

**Add skill** lets you create your own via **Chat with Claude**, **Write from scratch**, **Upload a skill**, or **Import from GitHub**. **Import from GitHub** works with private repositories too, once you add a GitHub token under **Settings > Credentials**. You can also ask Claude to distill a workflow from an existing session into a skill. On Team and Enterprise plans, adding skills of your own is available only if your organization allows custom skills; skills you added earlier keep working either way (see [Custom skills](/docs/claude-science/admin-controls#custom-skills)).

Your admin can also add skills for everyone in your organization from claude.ai. See [Organization skills](/docs/claude-science/admin-controls#organization-skills).
2 changes: 1 addition & 1 deletion content/claude/connectors/mcp-tunnels/oauth.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
> Make OAuth sign-in work for MCP servers reached through an MCP tunnel when the authorization server or identity provider is inside your network. Covers the Tunnel OAuth configuration fields (issuer, authorization endpoint, token endpoint, registration endpoint, scopes) and the split-metadata alternative.

<Note>
MCP tunnels are in research preview and are available to organizations on the Claude Enterprise plan by request. To request access, contact your Anthropic account team.
MCP tunnels are in research preview and are available to organizations on the Claude Enterprise plan by request. To request access, [submit the MCP tunnels interest form](https://claude.com/form/mcp-tunnels) or contact your Anthropic account team.
</Note>

An MCP tunnel carries Claude's requests to an MCP server inside your network, but it does not authenticate to that server. Each tunneled server should still require OAuth, as the [MCP authorization specification](https://modelcontextprotocol.io/specification/2025-11-25/basic/authorization) describes, so that a member signs in with their own account before Claude can call the server's tools. This page is for the administrator adding a tunneled server as a custom connector, and explains what to configure when the OAuth authorization server is itself only reachable inside your network.
Expand Down
4 changes: 2 additions & 2 deletions content/claude/connectors/mcp-tunnels/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
> Connect Claude to MCP servers inside your private network without opening inbound firewall ports or exposing the servers to the internet. How MCP tunnels work, what you deploy, network and plan requirements, and the security model.

<Note>
MCP tunnels are in research preview and are available to organizations on the Claude Enterprise plan by request. To request access, contact your Anthropic account team. The preview is provided as-is, without uptime, support, or continuity commitments, and it depends on a third-party network provider (Cloudflare) that makes no availability commitment for the underlying transport. Anthropic may modify or discontinue MCP tunnels at any time.
MCP tunnels are in research preview and are available to organizations on the Claude Enterprise plan by request. To request access, [submit the MCP tunnels interest form](https://claude.com/form/mcp-tunnels) or contact your Anthropic account team. The preview is provided as-is, without uptime, support, or continuity commitments, and it depends on a third-party network provider (Cloudflare) that makes no availability commitment for the underlying transport. Anthropic may modify or discontinue MCP tunnels at any time.
</Note>

MCP tunnels connect Claude to [Model Context Protocol (MCP)](/docs/connectors/building/mcp) servers that run inside your private network. You run a small tunnel stack on a host in your network, the stack opens an outbound-only connection to Anthropic, and Claude sends MCP requests to your servers over that connection. Your firewall needs no inbound rules and your MCP servers need no public endpoint. Members of your organization use the tunneled servers as [custom connectors](/docs/connectors/custom/remote-mcp) in Claude, the same way they use any other remote MCP server.
Expand Down Expand Up @@ -39,7 +39,7 @@ Hostnames under `tunnel.anthropic.com` accept connections only from Claude. You

## What you need

* A claude.ai organization on the Enterprise plan with MCP tunnels enabled. Contact your Anthropic account team to request access.
* A claude.ai organization on the Enterprise plan with MCP tunnels enabled. To request access, [submit the MCP tunnels interest form](https://claude.com/form/mcp-tunnels) or contact your Anthropic account team.
* The Owner or Primary Owner role in that organization, to create the API key the tunnel setup uses and to add the tunneled servers as connectors.
* A place to run the tunnel stack inside your network: a Kubernetes cluster (deployed with Helm) or a Linux host with Docker and Docker Compose. One stack serves one tunnel, and you can run replicas of it on several hosts for availability.
* One or more MCP servers that speak the Streamable HTTP transport and are reachable from that cluster or host.
Expand Down
2 changes: 1 addition & 1 deletion content/claude/connectors/mcp-tunnels/setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
> Create a Tunnels API key in claude.ai, deploy the MCP tunnel stack with Helm or Docker Compose, verify the connection, add tunneled MCP servers as custom connectors, rotate the tunnel token and certificates, and remove a tunnel.

<Note>
MCP tunnels are in research preview and are available to organizations on the Claude Enterprise plan by request. To request access, contact your Anthropic account team.
MCP tunnels are in research preview and are available to organizations on the Claude Enterprise plan by request. To request access, [submit the MCP tunnels interest form](https://claude.com/form/mcp-tunnels) or contact your Anthropic account team.
</Note>

This page covers the full setup of an MCP tunnel for a claude.ai Enterprise organization, from creating the API key that provisioning uses to members calling a tunneled MCP server from Claude. You need the Owner or Primary Owner role in claude.ai, and someone who can deploy containers to a Kubernetes cluster or a Docker host inside your network. Read [MCP tunnels](/docs/connectors/mcp-tunnels/overview) first if the tunnel stack, the tunnel domain, and routes are unfamiliar.
Expand Down
2 changes: 1 addition & 1 deletion content/claude/connectors/mcp-tunnels/troubleshooting.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
> Fix MCP tunnel problems: cloudflared won't connect, connector added but tools don't appear, no route for host, IP validation failed, TLS handshake failed, expired certificate, OAuth sign-in redirects to a tunnel.anthropic.com URL, token exchange fails, and setup or Helm hook errors.

<Note>
MCP tunnels are in research preview and are available to organizations on the Claude Enterprise plan by request. To request access, contact your Anthropic account team.
MCP tunnels are in research preview and are available to organizations on the Claude Enterprise plan by request. To request access, [submit the MCP tunnels interest form](https://claude.com/form/mcp-tunnels) or contact your Anthropic account team.
</Note>

A request through an [MCP tunnel](/docs/connectors/mcp-tunnels/overview) can fail at three points, and it helps to check them in order. First the outbound connection from cloudflared to the tunnel edge, then the inner TLS handshake between Anthropic and your proxy, then the proxy's routing to your MCP server. The cloudflared and proxy logs on your side show which point a request reached. If the proxy logs nothing at all for a request, it never arrived in your network.
Expand Down
2 changes: 1 addition & 1 deletion content/claude/cowork/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

> Release notes for Claude Desktop

<Update label="v1.44121.4" description="2026-09-03">
<Update label="v1.44121.4" description="2026-09-02">
**General**

* No user-facing changes.
Expand Down
4 changes: 2 additions & 2 deletions content/claude/government/org-admin/analytics.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,11 +54,11 @@ The **Token usage** chart plots input and output tokens over the window. It show

The **Active users over time** chart plots the number of distinct users who made at least one request in each period of the window, using the same hourly or daily buckets as the token chart.

The **By product** table breaks usage down by which Claude product it came from (for example, Claude Desktop or Claude Code), with the same request, token, and spend columns as the other tables. This table only appears once your deployment has recorded usage from at least one product.
The **By product** table breaks usage down by which Claude product it came from (for example, Claude Desktop or Claude Code), with the same request, token, and spend columns as the other tables. Chat and Cowork activity in Claude Desktop is counted together in a single Claude Desktop row. Code sessions in Claude Desktop run on Claude Code, so they are counted in the Claude Code row along with any use of the standalone Claude Code command-line tool. This table only appears once your deployment has recorded usage from at least one product.

The **By model** table lists each model used in the window along with its request count, input tokens, output tokens, and, in the self-managed view, its spend.

The **Top users** table lists the most active users in the window with the same columns. The table starts with ten rows, and you can click **Show more** to reveal additional users. Up to 100 users are listed individually, and beyond that a note tells you how many more are not listed.
The **Top users** table lists the most active users in the window with the same columns, and each user's figures combine their usage across all products. The table starts with ten rows, and you can click **Show more** to reveal additional users. Up to 100 users are listed individually, and beyond that a note tells you how many more are not listed.

## CSV exports

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -653,7 +653,7 @@ Configuration keys by Claude Desktop release. Each section lists keys added in t
```
</Update>

<Update label="v1.10628.0" description="2026-06-03">
<Update label="v1.10628.0" description="2026-06-02">
<div className="cfg-keys">
| MDM key | Type | Description |
| ----------------------------------------------- | --------- | ---------------------------------- |
Expand Down Expand Up @@ -691,7 +691,7 @@ Configuration keys by Claude Desktop release. Each section lists keys added in t
```
</Update>

<Update label="v1.9659.0" description="2026-06-02">
<Update label="v1.9659.0" description="2026-05-27">
<div className="cfg-keys">
| MDM key | Type | Description |
| ------------------ | --------- | ---------------- |
Expand All @@ -709,7 +709,7 @@ Configuration keys by Claude Desktop release. Each section lists keys added in t
```
</Update>

<Update label="v1.9255.0" description="2026-05-27">
<Update label="v1.9255.0" description="2026-05-26">
<div className="cfg-keys">
| MDM key | Type | Description |
| -------------------------- | -------- | ------------------------------ |
Expand All @@ -735,7 +735,7 @@ Configuration keys by Claude Desktop release. Each section lists keys added in t
```
</Update>

<Update label="v1.8555.0" description="2026-05-25">
<Update label="v1.8555.0" description="2026-05-21">
<div className="cfg-keys">
| MDM key | Type | Description |
| ------------------------- | ------ | --------------- |
Expand Down Expand Up @@ -782,7 +782,7 @@ Configuration keys by Claude Desktop release. Each section lists keys added in t
```
</Update>

<Update label="v1.7196.0" description="2026-05-16">
<Update label="v1.7196.0" description="2026-05-12">
<div className="cfg-keys">
| MDM key | Type | Description |
| -------- | -------- | ------------------- |
Expand Down Expand Up @@ -820,7 +820,7 @@ Configuration keys by Claude Desktop release. Each section lists keys added in t
```
</Update>

<Update label="v1.6259.0" description="2026-05-06">
<Update label="v1.6259.0" description="2026-05-05">
<div className="cfg-keys">
| MDM key | Type | Description |
| ------------------------------ | -------- | ------------------ |
Expand Down
5 changes: 1 addition & 4 deletions content/en/build-with-claude/batch-processing.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,10 +71,7 @@ A small number of Messages API parameters are **not** supported in batch request
| -------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| `stream: true` | Batch results come back as a single file, not a stream. |
| `speed` ([Fast mode](https://platform.claude.com/docs/en/build-with-claude/fast-mode)) | Fast mode tunes synchronous latency, which doesn't apply to asynchronous batch processing. |
| `store` / `previous_thread_event_id` (Threads) | Threads are stateful; batch requests are not. |
| `cache_hint` / `context_hint` | These routing hints apply to synchronous request scheduling only. |
| `max_tokens: 0` | See [Batch limitations](https://platform.claude.com/docs/en/build-with-claude/batch-processing#batch-limitations). |
| `research_preview_2026_02: "active"` | Research preview mode is not available on the batch path. |

<Tip>
Because batches can take longer than 5 minutes to process, consider using the [1-hour cache duration](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#1-hour-cache-duration) with prompt caching for better cache hit rates when processing batches with shared context.
Expand Down Expand Up @@ -1843,7 +1840,7 @@ For ZDR eligibility across all features, see [API and data retention](https://pl
</Accordion>

<Accordion title="Can I use the Message Batches API with other API features?">
Yes, the Message Batches API supports nearly all features available in the Messages API, including most beta features. A small number of parameters (`stream`, `speed`, `store`, `previous_thread_event_id`, `cache_hint`, `context_hint`, `max_tokens: 0`, and `research_preview_2026_02`) are not supported. See [What can be batched](https://platform.claude.com/docs/en/build-with-claude/batch-processing#what-can-be-batched) for the full list.
Yes, the Message Batches API supports nearly all features available in the Messages API, including most beta features. A small number of parameters (`stream`, `speed`, and `max_tokens: 0`) are not supported. See [What can be batched](https://platform.claude.com/docs/en/build-with-claude/batch-processing#what-can-be-batched) for the full list.
</Accordion>

<Accordion title="How does the Message Batches API affect pricing?">
Expand Down
2 changes: 1 addition & 1 deletion content/en/docs/claude-code/agent-sdk/python.md
Original file line number Diff line number Diff line change
Expand Up @@ -1596,7 +1596,7 @@ Several fields carry diagnostic detail about how the conversation ended:
* `api_error_status`: the HTTP status code of the terminating API error. `None` when the turn ended without one. Populated only on `subtype="success"`.
* `result`: text of the final assistant message on `subtype="success"`, or `None` on the `error_*` subtypes. When `subtype="success"` and `is_error=True`, this holds the API error string if one is available but can be empty, so check `api_error_status` and the preceding `AssistantMessage` content for detail.
* `errors`: loop-level error strings such as the max-turns message. Populated only on the `error_*` subtypes.
* `terminal_reason`: why the query loop ended, such as `"completed"`, `"max_turns"`, `"api_error"`, `"aborted_streaming"`, or `"aborted_tools"`. A value of `"aborted_streaming"` or `"aborted_tools"` means the turn was aborted before completing. Common causes are [`interrupt()`](#claudesdkclient) and a permission callback returning [`PermissionResultDeny`](#permissionresultdeny) with `interrupt=True`. `None` on CLI versions that predate the field, on results that bypassed the query loop such as local slash commands, or on synthesized error results emitted when the session fails fatally. Mirrors the TypeScript SDK's [`SDKResultMessage.terminal_reason`](/docs/en/agent-sdk/typescript#sdkresultmessage), which lists the full set of values.
* `terminal_reason`: why the query loop ended, such as `"completed"`, `"max_turns"`, `"api_error"`, `"aborted_streaming"`, or `"aborted_tools"`. A value of `"aborted_streaming"` or `"aborted_tools"` means the turn was aborted before completing. Common causes are [`interrupt()`](#claudesdkclient) and a permission callback returning [`PermissionResultDeny`](#permissionresultdeny) with `interrupt=True`. `None` on CLI versions that predate the field, on results from local commands such as `/voice` or `/usage`, which bypass the query loop, or on synthesized error results emitted when the session fails fatally. Mirrors the TypeScript SDK's [`SDKResultMessage.terminal_reason`](/docs/en/agent-sdk/typescript#sdkresultmessage), which lists the full set of values.
* `origin`: origin of the user message that triggered this turn. In [streaming input mode](/docs/en/agent-sdk/streaming-vs-single-mode), check this to tell the result of your own prompt, where `origin` is `None` or `{"kind": "human"}`, from the result of an injected turn such as a background-task notification. Requires Python Agent SDK 0.2.137 or later.

The `usage` dict covers the main agent loop only and excludes subagent and other nested or auxiliary model calls. In [streaming input mode](/docs/en/agent-sdk/streaming-vs-single-mode), the values are per-turn. Prefer `model_usage` for token and cost accounting. The `usage` dict contains the following keys when present:
Expand Down
Loading
Loading