One read of Claude Code CLIclaude-code-20260928T233702Z
154 pages moved out of 210 read.
Pages moved
154
significant first
Pages read
210
in this capture
Captured
23:37 UTC
Corpus hash
82a8d4497843
corpus-hash
What this read moved
151-154 of 154, page 7 of 7This capture is too large to show at once. Changes 151-154 of 154 are below, significant first; the rest are on the following screens.
web-quickstart Changed · +16 / -16 lines
from line 34
3434
3535Claude Code behaves the same everywhere. What changes is where the session runs and whether your local configuration is available:
3636
37| | Cloud session | Local session | Local session with [Remote Control](/docs/en/remote-control) |
38| :------------------------------------------- | :------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------- |
39| **Code runs on** | Cloud VM, Anthropic-managed by default | Your machine | Your machine |
40| **You start it from** | claude.ai/code, the Claude mobile app, the Desktop app with **Cloud** selected, or `claude --cloud` | Your terminal, your IDE, or the Desktop app with **Local** selected | Your terminal, the VS Code extension, or the Desktop app |
41| **You chat from** | claude.ai, the mobile app, or the Desktop app | Where you started it | claude.ai or the mobile app, as well as where you started it |
42| **Uses your local config** | No, repo only | Yes | Yes |
43| **Requires GitHub** | Yes, or [bundle a local repo](/docs/en/claude-code-on-the-web#send-local-repositories-without-github) via `--cloud` | No | No |
44| **Keeps running if you disconnect** | Yes | No | While the session stays open on your machine |
45| **[Permission modes](/docs/en/permission-modes)** | Accept edits, Plan, Auto | All modes in the terminal; see [Switch permission modes](/docs/en/permission-modes#switch-permission-modes) for the IDE and Desktop app | Manual, Accept edits, or Plan from claude.ai and the mobile app |
46| **Network access** | Configurable per environment | Your machine's network | Your machine's network |
37| | Cloud session | Local session | Local session with [Remote Control](/docs/en/remote-control) |
38| :- | :- | :- | :- |
39| **Code runs on** | Cloud VM, Anthropic-managed by default | Your machine | Your machine |
40| **You start it from** | claude.ai/code, the Claude mobile app, the Desktop app with **Cloud** selected, or `claude --cloud` | Your terminal, your IDE, or the Desktop app with **Local** selected | Your terminal, the VS Code extension, or the Desktop app |
41| **You chat from** | claude.ai, the mobile app, or the Desktop app | Where you started it | claude.ai or the mobile app, as well as where you started it |
42| **Uses your local config** | No, repo only | Yes | Yes |
43| **Requires GitHub** | Yes, or [bundle a local repo](/docs/en/claude-code-on-the-web#send-local-repositories-without-github) via `--cloud` | No | No |
44| **Keeps running if you disconnect** | Yes | No | While the session stays open on your machine |
45| **[Permission modes](/docs/en/permission-modes)** | Accept edits, Plan, Auto | All modes in the terminal; see [Switch permission modes](/docs/en/permission-modes#switch-permission-modes) for the IDE and Desktop app | Manual, Accept edits, or Plan from claude.ai and the mobile app |
46| **Network access** | Configurable per environment | Your machine's network | Your machine's network |
4747
4848See the [terminal quickstart](/docs/en/quickstart), [Desktop app](/docs/en/desktop), or [Remote Control](/docs/en/remote-control) docs to set up local sessions.
4949
from line 158
158158
159159You can prefill the prompt, repositories, and environment for a new session by adding query parameters to the [claude.ai/code](https://claude.ai/code) URL. Use this to build integrations such as a button in your issue tracker that opens Claude Code with the issue description as the prompt.
160160
161| Parameter | Description |
162| :------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------- |
163| `prompt` | Prompt text to prefill in the input box. The alias `q` is also accepted. |
164| `prompt_url` | URL to fetch the prompt text from, for prompts too long to embed in a query string. The URL must allow cross-origin requests. Ignored when `prompt` is also set. |
165| `repositories` | Comma-separated list of `owner/repo` slugs to preselect. The alias `repo` is also accepted. |
166| `environment` | Name or ID of the [environment](#connect-github) to preselect. |
161| Parameter | Description |
162| :- | :- |
163| `prompt` | Prompt text to prefill in the input box. The alias `q` is also accepted. |
164| `prompt_url` | URL to fetch the prompt text from, for prompts too long to embed in a query string. The URL must allow cross-origin requests. Ignored when `prompt` is also set. |
165| `repositories` | Comma-separated list of `owner/repo` slugs to preselect. The alias `repo` is also accepted. |
166| `environment` | Name or ID of the [environment](#connect-github) to preselect. |
167167
168168URL-encode each value. The example below opens the form with a prompt and a repository already selected:
169169
workflows Changed · +41 / -41 lines
from line 14
1414
1515[Subagents](/docs/en/sub-agents), [skills](/docs/en/skills), [agent teams](/docs/en/agent-teams), and workflows can all run a multi-step task. The difference is who holds the plan:
1616
17| | Subagents | Skills | Agent teams | Workflows |
18| :------------------------------ | :----------------------------- | :--------------------------- | :------------------------------------- | :----------------------------------- |
19| What it is | A worker Claude spawns | Instructions Claude follows | A lead agent supervising peer sessions | A script the runtime executes |
20| Who decides what runs next | Claude, turn by turn | Claude, following the prompt | The lead agent, turn by turn | The script |
21| Where intermediate results live | Claude's context window | Claude's context window | A shared task list | Script variables |
22| What's repeatable | The worker definition | The instructions | The team definition | The orchestration itself |
23| Scale | A few delegated tasks per turn | Same as subagents | A handful of long-running peers | Dozens to hundreds of agents per run |
24| Interruption | Restarts the turn | Restarts the turn | Teammates keep running | Resumable in the same session |
17| | Subagents | Skills | Agent teams | Workflows |
18| :- | :- | :- | :- | :- |
19| What it is | A worker Claude spawns | Instructions Claude follows | A lead agent supervising peer sessions | A script the runtime executes |
20| Who decides what runs next | Claude, turn by turn | Claude, following the prompt | The lead agent, turn by turn | The script |
21| Where intermediate results live | Claude's context window | Claude's context window | A shared task list | Script variables |
22| What's repeatable | The worker definition | The instructions | The team definition | The orchestration itself |
23| Scale | A few delegated tasks per turn | Same as subagents | A handful of long-running peers | Dozens to hundreds of agents per run |
24| Interruption | Restarts the turn | Restarts the turn | Teammates keep running | Resumable in the same session |
2525
2626A workflow moves the plan into code. With subagents, skills, and agent teams, Claude is the orchestrator: it decides turn by turn what to spawn or assign next, and every result goes into a context window. A workflow script holds the loop, the branching, and the intermediate results itself, so Claude's context holds only the final answer.
2727
from line 69
6969
7070Claude Code includes `/deep-research` as a built-in workflow:
7171
72| Command | What it does |
73| :-------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
72| Command | What it does |
73| :- | :- |
7474| `/deep-research <question>` | Fans out web searches on a question across several angles, fetches and cross-checks the sources it finds, votes on each claim, and returns a cited report with claims that didn't survive cross-checking filtered out. Requires the [WebSearch tool](/docs/en/tools-reference#websearch-tool-behavior) to be available |
7575
7676`/deep-research` runs only when you invoke it.
from line 83
8383
8484The progress view shows each phase with its agent counts, token totals, and elapsed time. The footer lists the key for each action:
8585
86| Key | Action |
87| :------------- | :-------------------------------------------------------------------------------------------------------------------------- |
88| `↑` / `↓` | Select a phase or agent |
89| `Enter` or `→` | Drill into the selected phase, then into an agent's detail. In the detail, `Enter` expands or collapses it |
90| `Esc` or `←` | Back out one level. In v2.1.203 through v2.1.205, `←` didn't step back out of a phase or agent; use `Esc` on those versions |
91| `j` / `k` | Scroll within the agent detail when it overflows |
92| `f` | Filter the agent list in the selected phase by status. Press again to cycle |
93| `p` | Pause or resume the run |
94| `x` | Stop the selected agent, or stop the whole workflow when focus is on the run |
95| `r` | Restart the selected running agent |
96| `s` | [Save](#save-the-workflow-for-reuse) the run's script as a command |
86| Key | Action |
87| :- | :- |
88| `↑` / `↓` | Select a phase or agent |
89| `Enter` or `→` | Drill into the selected phase, then into an agent's detail. In the detail, `Enter` expands or collapses it |
90| `Esc` or `←` | Back out one level. In v2.1.203 through v2.1.205, `←` didn't step back out of a phase or agent; use `Esc` on those versions |
91| `j` / `k` | Scroll within the agent detail when it overflows |
92| `f` | Filter the agent list in the selected phase by status. Press again to cycle |
93| `p` | Pause or resume the run |
94| `x` | Stop the selected agent, or stop the whole workflow when focus is on the run |
95| `r` | Restart the selected running agent |
96| `s` | [Save](#save-the-workflow-for-reuse) the run's script as a command |
9797
9898The agent detail lists the agent's prompt, its recent tool calls, and its result. Each call shows its state, such as still running or failed. When the agent keeps a task list of its own, the detail shows it too, with each task's status.
9999
from line 172
172172
173173Whether you see this prompt depends on your [permission mode](/docs/en/permission-modes):
174174
175| Permission mode | When you're prompted |
176| :--------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------ |
177| Auto | First launch only. Any **Yes** records consent in your user settings, and later launches start without prompting. Skipped entirely when ultracode is on |
178| Manual, accept edits | Every run, unless you've selected **Yes, and don't ask again** for that workflow in this project |
179| Bypass permissions | Claude Code doesn't prompt you. The run starts immediately |
180| `claude -p`, Agent SDK | Claude Code doesn't prompt you |
175| Permission mode | When you're prompted |
176| :- | :- |
177| Auto | First launch only. Any **Yes** records consent in your user settings, and later launches start without prompting. Skipped entirely when ultracode is on |
178| Manual, accept edits | Every run, unless you've selected **Yes, and don't ask again** for that workflow in this project |
179| Bypass permissions | Claude Code doesn't prompt you. The run starts immediately |
180| `claude -p`, Agent SDK | Claude Code doesn't prompt you |
181181
182182In `claude -p` and the Agent SDK, Claude Code never shows this prompt. It runs the Workflow tool call through the same [permission evaluation](/docs/en/agent-sdk/permissions#how-permissions-are-evaluated) as the rest of the session, so deny rules, ask rules, and `dontAsk` mode apply to the launch as they apply to every tool call. To let the workflow start in these runs, use one of these:
183183
from line 353
353353
354354The runtime applies the following constraints:
355355
356| Constraint | Why |
357| :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
358| No mid-run user input | A run pauses on its own only for agent permission prompts and a [usage-limit wait](#when-a-run-hits-your-usage-limit). For sign-off between stages, run each stage as its own workflow |
359| No direct filesystem or shell access from the workflow itself | Agents read, write, and run commands. The script coordinates the agents |
360| No module loading: a script that contains `import()` fails before the run starts | The script body is plain JavaScript. Put work that needs a library in an agent's task |
361| Up to 16 concurrent agents by default, fewer when Claude Code has fewer CPUs available, including inside a CPU-limited container. To change the limit, set [`CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS`](/docs/en/env-vars#variables) to a value from 1 to 256, which requires Claude Code v2.1.269 or later | Bounds local resource use |
362| In a fan-out, agents that share the first agent's prompt-cache prefix start up to 5 seconds after it by default | All but the first read the [prefix the first agent cached](#prompt-caching-in-a-fan-out) instead of each processing it uncached |
363| Up to 4,096 items in a single `parallel()` or `pipeline()` call: the runtime rejects a longer list with an error | A silent cap would drop part of the workload without telling the script |
364| 1,000 agents total per run | Prevents runaway loops |
356| Constraint | Why |
357| :- | :- |
358| No mid-run user input | A run pauses on its own only for agent permission prompts and a [usage-limit wait](#when-a-run-hits-your-usage-limit). For sign-off between stages, run each stage as its own workflow |
359| No direct filesystem or shell access from the workflow itself | Agents read, write, and run commands. The script coordinates the agents |
360| No module loading: a script that contains `import()` fails before the run starts | The script body is plain JavaScript. Put work that needs a library in an agent's task |
361| Up to 16 concurrent agents by default, fewer when Claude Code has fewer CPUs available, including inside a CPU-limited container. To change the limit, set [`CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS`](/docs/en/env-vars#variables) to a value from 1 to 256, which requires Claude Code v2.1.269 or later | Bounds local resource use |
362| In a fan-out, agents that share the first agent's prompt-cache prefix start up to 5 seconds after it by default | All but the first read the [prefix the first agent cached](#prompt-caching-in-a-fan-out) instead of each processing it uncached |
363| Up to 4,096 items in a single `parallel()` or `pipeline()` call: the runtime rejects a longer list with an error | A silent cap would drop part of the workload without telling the script |
364| 1,000 agents total per run | Prevents runaway loops |
365365
366366## Manage runs
367367
from line 431
431431
432432Each value maps to an agent count:
433433
434| Value | Agent count Claude aims for |
435| :------------- | :-------------------------------------------------- |
434| Value | Agent count Claude aims for |
435| :- | :- |
436436| `unrestricted` | No guideline: Claude sizes the workflow to the task |
437| `small` | Fewer than 5 agents |
438| `medium` | Fewer than 10 agents |
439| `large` | Fewer than 50 agents |
437| `small` | Fewer than 5 agents |
438| `medium` | Fewer than 10 agents |
439| `large` | Fewer than 50 agents |
440440
441441The default is `medium`, or `small` when you're signed in on a Pro plan with Claude Code v2.1.271 or later. Until you choose a value, the `/config` row marks the value as the default, and the workflow's `Running in background` line names the size in force. Requires Claude Code v2.1.219 or later; earlier versions default to `unrestricted`.
442442
worktrees Changed · +5 / -5 lines
from line 344
344344
345345When you resume a session interactively and Claude Code can't return it to its worktree, Claude Code says so with one of the messages below. When Claude Code clears the worktree binding, it records the clear in the session transcript. If you [suppress transcript writes](/docs/en/sessions#where-transcripts-are-stored), the message says instead that the binding could not be cleared and that Claude Code will re-check the worktree on a later resume.
346346
347| Message starts with | What happened and what to do |
348| :------------------------------------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
349| `Your worktree <path> no longer exists` | The worktree directory was removed. The session continues in the current directory without isolation, and Claude Code clears the worktree binding. No action needed. |
347| Message starts with | What happened and what to do |
348| :- | :- |
349| `Your worktree <path> no longer exists` | The worktree directory was removed. The session continues in the current directory without isolation, and Claude Code clears the worktree binding. No action needed. |
350350| `Could not verify your worktree <path> this time` | Claude Code couldn't verify the worktree, usually for a transient reason; the binding is kept, and the session continues in the current directory without isolation. Resume again to retry; if it keeps happening, enter the worktree in a new session and match the refusal message under [Claude Code refuses to use a worktree](#claude-code-refuses-to-use-a-worktree), which can name the main checkout's metadata rather than the worktree's. |
351| `Did not re-enter your worktree <path>` | Claude Code refused the worktree binding as unsafe; it clears the binding and the session continues without isolation. The message includes the specific refusal: match it under [Claude Code refuses to use a worktree](#claude-code-refuses-to-use-a-worktree), since the fix is recreation for some refusals and a path change for others. |
352| `Could not re-enter your worktree <path>` | Claude Code couldn't vouch for the worktree from where you launched, most commonly because you launched from inside it; the binding is kept. The rest of the message names the fix; match it under [Claude Code refuses to use a worktree](#claude-code-refuses-to-use-a-worktree). |
351| `Did not re-enter your worktree <path>` | Claude Code refused the worktree binding as unsafe; it clears the binding and the session continues without isolation. The message includes the specific refusal: match it under [Claude Code refuses to use a worktree](#claude-code-refuses-to-use-a-worktree), since the fix is recreation for some refusals and a path change for others. |
352| `Could not re-enter your worktree <path>` | Claude Code couldn't vouch for the worktree from where you launched, most commonly because you launched from inside it; the binding is kept. The rest of the message names the fix; match it under [Claude Code refuses to use a worktree](#claude-code-refuses-to-use-a-worktree). |
353353
354354In [non-interactive mode](/docs/en/headless) with `-p`, and on resumes that the [Agent SDK](/docs/en/agent-sdk/sessions) runs, Claude Code stops the resume with a stderr error for every refusal except a gone worktree, instead of continuing without isolation.
355355
zero-data-retention Changed · +13 / -13 lines
from line 37
3737
3838ZDR does not extend to the following, even for organizations with ZDR enabled. These features follow [standard data retention policies](/docs/en/data-usage#data-retention):
3939
40| Feature | Details |
41| ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
42| Chat on claude.ai | Chat conversations through the Claude for Enterprise web interface are not covered by ZDR. |
43| Cowork | Cowork sessions are not covered by ZDR. |
44| Claude Code Analytics | Does not store prompts or model responses, but collects productivity metadata such as account emails and usage statistics. Contribution metrics are not available for ZDR organizations; the [analytics dashboard](/docs/en/analytics) shows usage metrics only. |
45| User and seat management | Administrative data such as account emails and seat assignments is retained under standard policies. |
46| Third-party integrations | Data processed by third-party tools, MCP servers, or other external integrations is not covered by ZDR. Review those services' data handling practices independently. |
40| Feature | Details |
41| - | - |
42| Chat on claude.ai | Chat conversations through the Claude for Enterprise web interface are not covered by ZDR. |
43| Cowork | Cowork sessions are not covered by ZDR. |
44| Claude Code Analytics | Does not store prompts or model responses, but collects productivity metadata such as account emails and usage statistics. Contribution metrics are not available for ZDR organizations; the [analytics dashboard](/docs/en/analytics) shows usage metrics only. |
45| User and seat management | Administrative data such as account emails and seat assignments is retained under standard policies. |
46| Third-party integrations | Data processed by third-party tools, MCP servers, or other external integrations is not covered by ZDR. Review those services' data handling practices independently. |
4747
4848## Features disabled under ZDR
4949
5050When ZDR is enabled for a Claude Code organization on Claude for Enterprise, certain features that require storing prompts or completions are automatically disabled at the backend level:
5151
52| Feature | Reason |
53| ------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------- |
52| Feature | Reason |
53| - | - |
5454| [Cloud sessions](/docs/en/claude-code-on-the-web), including those started from the [Desktop app](/docs/en/desktop#cloud-sessions) | Requires server-side storage of session data, including conversation history with prompts and completions. |
55| [Claude Tag](https://claude.com/docs/claude-tag) | Retains channel memory and session transcripts. |
56| [Artifacts](/docs/en/artifacts) | Requires storing published page content on Anthropic-operated infrastructure. |
57| Feedback submission (`/feedback`, `/bug`, `/share`) | Submitting feedback sends conversation data to Anthropic. |
58| [Remote Control](/docs/en/remote-control) | Stores the session transcript on Anthropic servers to sync the conversation across devices. |
55| [Claude Tag](https://claude.com/docs/claude-tag) | Retains channel memory and session transcripts. |
56| [Artifacts](/docs/en/artifacts) | Requires storing published page content on Anthropic-operated infrastructure. |
57| Feedback submission (`/feedback`, `/bug`, `/share`) | Submitting feedback sends conversation data to Anthropic. |
58| [Remote Control](/docs/en/remote-control) | Stores the session transcript on Anthropic servers to sync the conversation across devices. |
5959
6060These features are blocked in the backend regardless of client-side display. If you see a disabled feature in the Claude Code terminal during startup, attempting to use it returns an error indicating the organization's policies do not allow that action.
6161