SpyBara
Go Premium

Documentation 2026-10-29 23:57 UTC to 2026-10-30 23:01 UTC

90 files changed +4,611 −4,558. View all changes and history on the product overview
2026
Fri 30 23:01 Thu 29 23:57 Wed 28 23:57 Tue 27 22:59 Mon 26 22:57 Sun 25 23:58 Sat 24 22:59 Fri 23 22:59 Thu 22 22:58 Wed 21 23:02 Tue 20 23:00 Mon 19 23:58 Sat 17 23:57 Fri 16 22:59 Thu 15 23:58 Wed 14 22:58 Tue 13 23:57 Sun 11 23:57 Sat 10 23:01 Fri 9 23:02 Thu 8 22:58 Wed 7 23:59 Tue 6 23:59 Mon 5 23:58 Sun 4 23:58 Sat 3 23:57 Fri 2 22:59 Thu 1 23:59
Details

77* **Python:** verifique tipos de mensagens com `isinstance()` contra classes importadas de `claude_agent_sdk` (por exemplo, `isinstance(message, ResultMessage)`).77* **Python:** verifique tipos de mensagens com `isinstance()` contra classes importadas de `claude_agent_sdk` (por exemplo, `isinstance(message, ResultMessage)`).

78* **TypeScript:** verifique o campo de string `type` (por exemplo, `message.type === "result"`). `AssistantMessage` e `UserMessage` envolvem a mensagem bruta da API em um campo `.message`, então blocos de conteúdo estão em `message.message.content`, não em `message.content`.78* **TypeScript:** verifique o campo de string `type` (por exemplo, `message.type === "result"`). `AssistantMessage` e `UserMessage` envolvem a mensagem bruta da API em um campo `.message`, então blocos de conteúdo estão em `message.message.content`, não em `message.content`.

79 79 

80> **Exemplo: Verificar tipos de mensagens e lidar com resultados**80> [accordion] Exemplo: Verificar tipos de mensagens e lidar com resultados

81>81>

82> ```python Python theme={null}82> ```python Python theme={null}

83> import asyncio83> import asyncio


273* **Hook `PreCompact`:** Execute lógica personalizada antes da compactação ocorrer, por exemplo para arquivar a transcrição completa. O hook recebe um campo `trigger` (`manual` ou `auto`). Veja [hooks](https://code.claude.com/docs/pt/agent-sdk/hooks.md).273* **Hook `PreCompact`:** Execute lógica personalizada antes da compactação ocorrer, por exemplo para arquivar a transcrição completa. O hook recebe um campo `trigger` (`manual` ou `auto`). Veja [hooks](https://code.claude.com/docs/pt/agent-sdk/hooks.md).

274* **Compactação manual:** Envie `/compact` como uma string de prompt para acionar compactação sob demanda. Comandos enviados desta forma são entradas SDK ordinárias. Veja [dispatch commands by name](https://code.claude.com/docs/pt/agent-sdk/skills.md#dispatch-commands-by-name).274* **Compactação manual:** Envie `/compact` como uma string de prompt para acionar compactação sob demanda. Comandos enviados desta forma são entradas SDK ordinárias. Veja [dispatch commands by name](https://code.claude.com/docs/pt/agent-sdk/skills.md#dispatch-commands-by-name).

275 275 

276> **Exemplo: Instruções de sumarização em CLAUDE.md**276> [accordion] Exemplo: Instruções de sumarização em CLAUDE.md

277>277>

278> Adicione uma seção ao CLAUDE.md do seu projeto dizendo ao compactador o que preservar. O nome do cabeçalho não é especial; use qualquer rótulo claro.278> Adicione uma seção ao CLAUDE.md do seu projeto dizendo ao compactador o que preservar. O nome do cabeçalho não é especial; use qualquer rótulo claro.

279>279>

Details

42 42 

43Os exemplos em Python nesta página que fazem requisições HTTP usam [httpx](https://www.python-httpx.org/). Adicione-o com o gerenciador de pacotes que seu projeto usa:43Os exemplos em Python nesta página que fazem requisições HTTP usam [httpx](https://www.python-httpx.org/). Adicione-o com o gerenciador de pacotes que seu projeto usa:

44 44 

45**Python (uv)**45> [tab] Python (uv)

46 46>

47```bash theme={null}47> ```bash theme={null}

48uv add httpx48> uv add httpx

49```49> ```

50 

51**Python (pip)**

52 50 

53```bash theme={null}51> [tab] Python (pip)

54pip install httpx52>

55```53> ```bash theme={null}

54> pip install httpx

55> ```

56 56 

57### Exemplo de ferramenta de clima57### Exemplo de ferramenta de clima

58 58 


198 198 

199Combine este trecho com as definições de ferramenta e servidor do [exemplo de ferramenta de clima](#weather-tool-example) em um arquivo, `weather.py` ou `weather.ts`, depois execute-o a partir do seu terminal:199Combine este trecho com as definições de ferramenta e servidor do [exemplo de ferramenta de clima](#weather-tool-example) em um arquivo, `weather.py` ou `weather.ts`, depois execute-o a partir do seu terminal:

200 200 

201**TypeScript**201> [tab] TypeScript

202 202>

203```bash theme={null}203> ```bash theme={null}

204npx tsx weather.ts204> npx tsx weather.ts

205```205> ```

206 

207**Python (uv)**

208 

209```bash theme={null}

210uv run weather.py

211```

212 

213**Python (pip)**

214 206 

215Ative o ambiente virtual onde você instalou o SDK e, em seguida, execute:207> [tab] Python (uv)

208>

209> ```bash theme={null}

210> uv run weather.py

211> ```

216 212 

217```bash theme={null}213> [tab] Python (pip)

218python weather.py214>

219```215> Ative o ambiente virtual onde você instalou o SDK e, em seguida, execute:

216>

217> ```bash theme={null}

218> python weather.py

219> ```

220 220 

221Claude chama `get_temperature` e o script imprime uma resposta de uma linha com a temperatura atual em San Francisco.221Claude chama `get_temperature` e o script imprime uma resposta de uma linha com a temperatura atual em San Francisco.

222 222 

Details

585>585>

586> Abra seu arquivo utilitário (`utils.py` ou `utils.ts`) em seu IDE ou editor antes de executar o script. Você verá o arquivo ser atualizado em tempo real conforme o agente adiciona comentários de documentação e, em seguida, reverter para o original quando você escolher reverter.586> Abra seu arquivo utilitário (`utils.py` ou `utils.ts`) em seu IDE ou editor antes de executar o script. Você verá o arquivo ser atualizado em tempo real conforme o agente adiciona comentários de documentação e, em seguida, reverter para o original quando você escolher reverter.

587 587 

588**Python**588> [tab] Python

589 589>

590```bash theme={null}590> ```bash theme={null}

591python try_checkpointing.py591> python try_checkpointing.py

592```592> ```

593 

594**TypeScript**

595 593 

596```bash theme={null}594> [tab] TypeScript

597npx tsx try_checkpointing.ts595>

598```596> ```bash theme={null}

597> npx tsx try_checkpointing.ts

598> ```

599 599 

600Você verá o agente adicionar comentários de documentação e, em seguida, um prompt perguntando se você quer reverter. Se você escolher sim, o arquivo é restaurado para seu estado original.600Você verá o agente adicionar comentários de documentação e, em seguida, um prompt perguntando se você quer reverter. Se você escolher sim, o arquivo é restaurado para seu estado original.

601 601 

agent-sdk/mcp.md +98 −98

Details

386 386 

387Use o campo `env` para passar chaves de API, tokens e outras credenciais para o servidor MCP:387Use o campo `env` para passar chaves de API, tokens e outras credenciais para o servidor MCP:

388 388 

389**No código**389> [tab] No código

390 390>

391```typescript TypeScript hidelines={1,-1} theme={null}391> ```typescript TypeScript hidelines={1,-1} theme={null}

392const _ = {392> const _ = {

393 options: {393> options: {

394 mcpServers: {394> mcpServers: {

395 "api-server": {395> "api-server": {

396 command: "npx",396> command: "npx",

397 args: ["-y", "@your-org/api-mcp-server"],397> args: ["-y", "@your-org/api-mcp-server"],

398 env: {398> env: {

399 API_KEY: process.env.API_KEY399> API_KEY: process.env.API_KEY

400 }400> }

401 }401> }

402 },402> },

403 allowedTools: ["mcp__api-server__*"]403> allowedTools: ["mcp__api-server__*"]

404 }404> }

405};405> };

406```406> ```

407 407>

408```python Python theme={null}408> ```python Python theme={null}

409options = ClaudeAgentOptions(409> options = ClaudeAgentOptions(

410 mcp_servers={410> mcp_servers={

411 "api-server": {411> "api-server": {

412 "command": "npx",412> "command": "npx",

413 "args": ["-y", "@your-org/api-mcp-server"],413> "args": ["-y", "@your-org/api-mcp-server"],

414 "env": {"API_KEY": os.environ["API_KEY"]},414> "env": {"API_KEY": os.environ["API_KEY"]},

415 }415> }

416 },416> },

417 allowed_tools=["mcp__api-server__*"],417> allowed_tools=["mcp__api-server__*"],

418)418> )

419```419> ```

420 420 

421**.mcp.json**421> [tab] .mcp.json

422 422>

423```json theme={null}423> ```json theme={null}

424{424> {

425 "mcpServers": {425> "mcpServers": {

426 "api-server": {426> "api-server": {

427 "command": "npx",427> "command": "npx",

428 "args": ["-y", "@your-org/api-mcp-server"],428> "args": ["-y", "@your-org/api-mcp-server"],

429 "env": {429> "env": {

430 "API_KEY": "${API_KEY}"430> "API_KEY": "${API_KEY}"

431 }431> }

432 }432> }

433 }433> }

434}434> }

435```435> ```

436 436>

437A sintaxe `${API_KEY}` expande variáveis de ambiente em tempo de execução.437> A sintaxe `${API_KEY}` expande variáveis de ambiente em tempo de execução.

438 438 

439### Cabeçalhos HTTP para servidores remotos439### Cabeçalhos HTTP para servidores remotos

440 440 

441Para servidores HTTP e SSE, passe cabeçalhos de autenticação diretamente na configuração do servidor:441Para servidores HTTP e SSE, passe cabeçalhos de autenticação diretamente na configuração do servidor:

442 442 

443**No código**443> [tab] No código

444 444>

445```typescript TypeScript hidelines={1,-1} theme={null}445> ```typescript TypeScript hidelines={1,-1} theme={null}

446const _ = {446> const _ = {

447 options: {447> options: {

448 mcpServers: {448> mcpServers: {

449 "secure-api": {449> "secure-api": {

450 type: "http",450> type: "http",

451 url: "https://api.example.com/mcp",451> url: "https://api.example.com/mcp",

452 headers: {452> headers: {

453 Authorization: `Bearer ${process.env.API_TOKEN}`453> Authorization: `Bearer ${process.env.API_TOKEN}`

454 }454> }

455 }455> }

456 },456> },

457 allowedTools: ["mcp__secure-api__*"]457> allowedTools: ["mcp__secure-api__*"]

458 }458> }

459};459> };

460```460> ```

461 461>

462```python Python theme={null}462> ```python Python theme={null}

463options = ClaudeAgentOptions(463> options = ClaudeAgentOptions(

464 mcp_servers={464> mcp_servers={

465 "secure-api": {465> "secure-api": {

466 "type": "http",466> "type": "http",

467 "url": "https://api.example.com/mcp",467> "url": "https://api.example.com/mcp",

468 "headers": {"Authorization": f"Bearer {os.environ['API_TOKEN']}"},468> "headers": {"Authorization": f"Bearer {os.environ['API_TOKEN']}"},

469 }469> }

470 },470> },

471 allowed_tools=["mcp__secure-api__*"],471> allowed_tools=["mcp__secure-api__*"],

472)472> )

473```473> ```

474 474 

475**.mcp.json**475> [tab] .mcp.json

476 476>

477```json theme={null}477> ```json theme={null}

478{478> {

479 "mcpServers": {479> "mcpServers": {

480 "secure-api": {480> "secure-api": {

481 "type": "http",481> "type": "http",

482 "url": "https://api.example.com/mcp",482> "url": "https://api.example.com/mcp",

483 "headers": {483> "headers": {

484 "Authorization": "Bearer ${API_TOKEN}"484> "Authorization": "Bearer ${API_TOKEN}"

485 }485> }

486 }486> }

487 }487> }

488}488> }

489```489> ```

490 490>

491A sintaxe `${API_TOKEN}` expande variáveis de ambiente em tempo de execução.491> A sintaxe `${API_TOKEN}` expande variáveis de ambiente em tempo de execução.

492 492 

493Para um exemplo completo de funcionamento de um servidor remoto autenticado com cabeçalhos, consulte [Listar problemas de um repositório](#list-issues-from-a-repository).493Para um exemplo completo de funcionamento de um servidor remoto autenticado com cabeçalhos, consulte [Listar problemas de um repositório](#list-issues-from-a-repository).

494 494 

Details

163 163 

164Você pode definir o modo de permissão uma vez ao iniciar uma consulta, ou alterá-lo dinamicamente enquanto a sessão está ativa.164Você pode definir o modo de permissão uma vez ao iniciar uma consulta, ou alterá-lo dinamicamente enquanto a sessão está ativa.

165 165 

166**No momento da consulta**166> [tab] No momento da consulta

167 167>

168Passe `permission_mode` (Python) ou `permissionMode` (TypeScript) ao criar uma consulta.168> Passe `permission_mode` (Python) ou `permissionMode` (TypeScript) ao criar uma consulta.

169 169>

170```python Python theme={null}170> ```python Python theme={null}

171import asyncio171> import asyncio

172from claude_agent_sdk import query, ClaudeAgentOptions172> from claude_agent_sdk import query, ClaudeAgentOptions

173 173>

174 174>

175async def main():175> async def main():

176 async for message in query(176> async for message in query(

177 prompt="Help me refactor this code",177> prompt="Help me refactor this code",

178 options=ClaudeAgentOptions(178> options=ClaudeAgentOptions(

179 permission_mode="default", # Set the mode here179> permission_mode="default", # Set the mode here

180 ),180> ),

181 ):181> ):

182 if hasattr(message, "result"):182> if hasattr(message, "result"):

183 print(message.result)183> print(message.result)

184 184>

185 185>

186asyncio.run(main())186> asyncio.run(main())

187```187> ```

188 188>

189```typescript TypeScript theme={null}189> ```typescript TypeScript theme={null}

190import { query } from "@anthropic-ai/claude-agent-sdk";190> import { query } from "@anthropic-ai/claude-agent-sdk";

191 191>

192async function main() {192> async function main() {

193 for await (const message of query({193> for await (const message of query({

194 prompt: "Help me refactor this code",194> prompt: "Help me refactor this code",

195 options: {195> options: {

196 permissionMode: "default" // Set the mode here196> permissionMode: "default" // Set the mode here

197 }197> }

198 })) {198> })) {

199 if ("result" in message) {199> if ("result" in message) {

200 console.log(message.result);200> console.log(message.result);

201 }201> }

202 }202> }

203}203> }

204 204>

205main();205> main();

206```206> ```

207 

208**Durante streaming**

209 

210Chame `set_permission_mode()` (Python) ou `setPermissionMode()` (TypeScript) para alterar o modo durante a sessão. O novo modo entra em vigor imediatamente para todas as solicitações de ferramenta subsequentes. Isso permite que você comece restritivo e afrouxe as permissões conforme a confiança aumenta, por exemplo, alternando para `acceptEdits` após revisar a abordagem inicial de Claude.

211 

212```python Python theme={null}

213import asyncio

214from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions

215 

216 

217async def main():

218 async with ClaudeSDKClient(

219 options=ClaudeAgentOptions(

220 permission_mode="default", # Start in default mode

221 )

222 ) as client:

223 await client.query("Help me refactor this code")

224 

225 # Change mode dynamically mid-session

226 await client.set_permission_mode("acceptEdits")

227 

228 # Process messages with the new permission mode

229 async for message in client.receive_response():

230 if hasattr(message, "result"):

231 print(message.result)

232 

233 

234asyncio.run(main())

235```

236 207 

237```typescript TypeScript theme={null}208> [tab] Durante streaming

238import { query } from "@anthropic-ai/claude-agent-sdk";209>

239 210> Chame `set_permission_mode()` (Python) ou `setPermissionMode()` (TypeScript) para alterar o modo durante a sessão. O novo modo entra em vigor imediatamente para todas as solicitações de ferramenta subsequentes. Isso permite que você comece restritivo e afrouxe as permissões conforme a confiança aumenta, por exemplo, alternando para `acceptEdits` após revisar a abordagem inicial de Claude.

240async function main() {211>

241 const q = query({212> ```python Python theme={null}

242 prompt: "Help me refactor this code",213> import asyncio

243 options: {214> from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions

244 permissionMode: "default" // Start in default mode215>

245 }216>

246 });217> async def main():

247 218> async with ClaudeSDKClient(

248 // Change mode dynamically mid-session219> options=ClaudeAgentOptions(

249 await q.setPermissionMode("acceptEdits");220> permission_mode="default", # Start in default mode

250 221> )

251 // Process messages with the new permission mode222> ) as client:

252 for await (const message of q) {223> await client.query("Help me refactor this code")

253 if ("result" in message) {224>

254 console.log(message.result);225> # Change mode dynamically mid-session

255 }226> await client.set_permission_mode("acceptEdits")

256 }227>

257}228> # Process messages with the new permission mode

258 229> async for message in client.receive_response():

259main();230> if hasattr(message, "result"):

260```231> print(message.result)

232>

233>

234> asyncio.run(main())

235> ```

236>

237> ```typescript TypeScript theme={null}

238> import { query } from "@anthropic-ai/claude-agent-sdk";

239>

240> async function main() {

241> const q = query({

242> prompt: "Help me refactor this code",

243> options: {

244> permissionMode: "default" // Start in default mode

245> }

246> });

247>

248> // Change mode dynamically mid-session

249> await q.setPermissionMode("acceptEdits");

250>

251> // Process messages with the new permission mode

252> for await (const message of q) {

253> if ("result" in message) {

254> console.log(message.result);

255> }

256> }

257> }

258>

259> main();

260> ```

261 261 

262### Detalhes do modo262### Detalhes do modo

263 263 

Details

36 36 

37Instale o pacote Agent SDK para sua linguagem:37Instale o pacote Agent SDK para sua linguagem:

38 38 

39**TypeScript (novo projeto)**39> [tab] TypeScript (novo projeto)

40 40>

41```bash theme={null}41> ```bash theme={null}

42npm init -y42> npm init -y

43npm pkg set type=module43> npm pkg set type=module

44npm install @anthropic-ai/claude-agent-sdk44> npm install @anthropic-ai/claude-agent-sdk

45npm install --save-dev tsx45> npm install --save-dev tsx

46```46> ```

47 47>

48Definir `"type": "module"` em `package.json` permite que seu script de agente use `await` de nível superior, e [tsx](https://tsx.hirok.io) executa arquivos TypeScript diretamente. npm imprime `added N packages` quando a instalação é bem-sucedida.48> Definir `"type": "module"` em `package.json` permite que seu script de agente use `await` de nível superior, e [tsx](https://tsx.hirok.io) executa arquivos TypeScript diretamente. npm imprime `added N packages` quando a instalação é bem-sucedida.

49 

50**TypeScript (projeto existente)**

51 

52```bash theme={null}

53npm install @anthropic-ai/claude-agent-sdk

54npm install --save-dev tsx

55```

56 

57[tsx](https://tsx.hirok.io) executa arquivos TypeScript diretamente. Se seu projeto usa CommonJS, nomeie seu script de agente como `agent.mts` em vez de `agent.ts`. A extensão `.mts` faz o tsx tratar o arquivo como um módulo ES, para que `await` de nível superior funcione sem converter todo o seu projeto para módulos ES. Use `agent.mts` no lugar de `agent.ts` nas etapas de criação e execução mais adiante neste início rápido.

58 

59**Python (uv)**

60 

61[Instale uv](https://docs.astral.sh/uv/), um gerenciador de pacotes Python rápido que lida com ambientes virtuais automaticamente. Depois inicialize um projeto e adicione o SDK:

62 

63```bash theme={null}

64uv init

65uv add claude-agent-sdk

66```

67 

68**Python (pip)**

69 

70Crie e ative um ambiente virtual, depois instale o pacote.

71 

72No macOS ou Linux:

73 

74```bash theme={null}

75python3 -m venv .venv

76source .venv/bin/activate

77pip install claude-agent-sdk

78```

79 49 

80No Windows:50> [tab] TypeScript (projeto existente)

51>

52> ```bash theme={null}

53> npm install @anthropic-ai/claude-agent-sdk

54> npm install --save-dev tsx

55> ```

56>

57> [tsx](https://tsx.hirok.io) executa arquivos TypeScript diretamente. Se seu projeto usa CommonJS, nomeie seu script de agente como `agent.mts` em vez de `agent.ts`. A extensão `.mts` faz o tsx tratar o arquivo como um módulo ES, para que `await` de nível superior funcione sem converter todo o seu projeto para módulos ES. Use `agent.mts` no lugar de `agent.ts` nas etapas de criação e execução mais adiante neste início rápido.

81 58 

82```powershell theme={null}59> [tab] Python (uv)

83py -m venv .venv60>

84.venv\Scripts\Activate.ps161> [Instale uv](https://docs.astral.sh/uv/), um gerenciador de pacotes Python rápido que lida com ambientes virtuais automaticamente. Depois inicialize um projeto e adicione o SDK:

85pip install claude-agent-sdk62>

86```63> ```bash theme={null}

64> uv init

65> uv add claude-agent-sdk

66> ```

87 67 

88Se o PowerShell bloquear `Activate.ps1` com um erro de política de execução, execute `Set-ExecutionPolicy -Scope Process RemoteSigned` primeiro.68> [tab] Python (pip)

69>

70> Crie e ative um ambiente virtual, depois instale o pacote.

71>

72> No macOS ou Linux:

73>

74> ```bash theme={null}

75> python3 -m venv .venv

76> source .venv/bin/activate

77> pip install claude-agent-sdk

78> ```

79>

80> No Windows:

81>

82> ```powershell theme={null}

83> py -m venv .venv

84> .venv\Scripts\Activate.ps1

85> pip install claude-agent-sdk

86> ```

87>

88> Se o PowerShell bloquear `Activate.ps1` com um erro de política de execução, execute `Set-ExecutionPolicy -Scope Process RemoteSigned` primeiro.

89 89 

90> [!NOTE]90> [!NOTE]

91>91>


98 98 

99Obtenha uma chave de API no [Claude Console](https://platform.claude.com/), depois defina-a como uma variável de ambiente no shell onde você executará seu agente:99Obtenha uma chave de API no [Claude Console](https://platform.claude.com/), depois defina-a como uma variável de ambiente no shell onde você executará seu agente:

100 100 

101**macOS / Linux**101> [tab] macOS / Linux

102 102>

103```bash theme={null}103> ```bash theme={null}

104export ANTHROPIC_API_KEY=your-api-key104> export ANTHROPIC_API_KEY=your-api-key

105```105> ```

106 

107**Windows (PowerShell)**

108 106 

109```powershell theme={null}107> [tab] Windows (PowerShell)

110$env:ANTHROPIC_API_KEY = "your-api-key"108>

111```109> ```powershell theme={null}

110> $env:ANTHROPIC_API_KEY = "your-api-key"

111> ```

112 112 

113O SDK lê a chave do ambiente do processo que executa seu agente; ele não carrega arquivos `.env` automaticamente. Se você mantiver a chave em um arquivo `.env`, carregue-a você mesmo, por exemplo com o pacote `dotenv`, antes de chamar o SDK.113O SDK lê a chave do ambiente do processo que executa seu agente; ele não carrega arquivos `.env` automaticamente. Se você mantiver a chave em um arquivo `.env`, carregue-a você mesmo, por exemplo com o pacote `dotenv`, antes de chamar o SDK.

114 114 


224 224 

225Seu agente está pronto. Execute-o com o seguinte comando:225Seu agente está pronto. Execute-o com o seguinte comando:

226 226 

227**TypeScript**227> [tab] TypeScript

228 228>

229```bash theme={null}229> ```bash theme={null}

230npx tsx agent.ts230> npx tsx agent.ts

231```231> ```

232 232>

233Se você nomeou seu script como `agent.mts`, execute `npx tsx agent.mts` em vez disso.233> Se você nomeou seu script como `agent.mts`, execute `npx tsx agent.mts` em vez disso.

234 

235**Python (uv)**

236 

237```bash theme={null}

238uv run agent.py

239```

240 

241**Python (pip)**

242 234 

243Com seu ambiente virtual ainda ativado:235> [tab] Python (uv)

236>

237> ```bash theme={null}

238> uv run agent.py

239> ```

244 240 

245```bash theme={null}241> [tab] Python (pip)

246python agent.py242>

247```243> Com seu ambiente virtual ainda ativado:

244>

245> ```bash theme={null}

246> python agent.py

247> ```

248 248 

249Conforme funciona, o agente imprime seu raciocínio e cada ferramenta que chama, terminando com `Done: success`. Após executar, verifique `utils.py`. Você verá código defensivo tratando listas vazias e usuários nulos. Seu agente autonomamente:249Conforme funciona, o agente imprime seu raciocínio e cada ferramenta que chama, terminando com `Done: success`. Após executar, verifique `utils.py`. Você verá código defensivo tratando listas vazias e usuários nulos. Seu agente autonomamente:

250 250 

Details

470 470 

471Cada SDK superficializa a rejeição de forma diferente:471Cada SDK superficializa a rejeição de forma diferente:

472 472 

473**TypeScript**473> [tab] TypeScript

474 474>

475O SDK TypeScript lança um `Error` declarando a regra que a entrada quebrou. Por exemplo, `skills: ["docs:*"]` lança:475> O SDK TypeScript lança um `Error` declarando a regra que a entrada quebrou. Por exemplo, `skills: ["docs:*"]` lança:

476 476>

477```text theme={null}477> ```text theme={null}

478Invalid skill name "docs:*": wildcard-suffix names are not allowed; list each skill by its exact name.478> Invalid skill name "docs:*": wildcard-suffix names are not allowed; list each skill by its exact name.

479```479> ```

480 480>

481Um nome vazio relata `Skill names must be non-empty strings.`481> Um nome vazio relata `Skill names must be non-empty strings.`

482 482>

483Antes do TypeScript Agent SDK 0.3.221, o SDK não executava esta verificação.483> Antes do TypeScript Agent SDK 0.3.221, o SDK não executava esta verificação.

484 

485**Python**

486 

487O SDK Python levanta `ValueError` declarando a regra que a entrada quebrou. Por exemplo, `skills=["docs:*"]` levanta:

488 

489```text theme={null}

490ValueError: Invalid skill name 'docs:*': wildcard-suffix names are not allowed; list each skill by its exact name.

491```

492 

493Um nome vazio relata `Skill names must be non-empty strings`.

494 484 

495Antes do Python Agent SDK 0.2.129, o SDK não executava esta verificação.485> [tab] Python

486>

487> O SDK Python levanta `ValueError` declarando a regra que a entrada quebrou. Por exemplo, `skills=["docs:*"]` levanta:

488>

489> ```text theme={null}

490> ValueError: Invalid skill name 'docs:*': wildcard-suffix names are not allowed; list each skill by its exact name.

491> ```

492>

493> Um nome vazio relata `Skill names must be non-empty strings`.

494>

495> Antes do Python Agent SDK 0.2.129, o SDK não executava esta verificação.

496 496 

497### Solução de problemas adicional497### Solução de problemas adicional

498 498 

Details

16 16 

17Considere um aplicativo de receitas onde um agente pesquisa a web e traz receitas. Sem saídas estruturadas, você obtém texto livre que precisaria analisar você mesmo. Com saídas estruturadas, você define a forma que deseja e obtém dados tipados que pode usar diretamente em seu aplicativo.17Considere um aplicativo de receitas onde um agente pesquisa a web e traz receitas. Sem saídas estruturadas, você obtém texto livre que precisaria analisar você mesmo. Com saídas estruturadas, você define a forma que deseja e obtém dados tipados que pode usar diretamente em seu aplicativo.

18 18 

19> **Sem saídas estruturadas**19> [accordion] Sem saídas estruturadas

20>20>

21> ```text theme={null}21> ```text theme={null}

22> Aqui está uma receita clássica de biscoito com gotas de chocolate!22> Aqui está uma receita clássica de biscoito com gotas de chocolate!


32>32>

33> Para usar isso em seu aplicativo, você precisaria analisar o título, converter "15 minutos" em um número, separar ingredientes de instruções e lidar com formatação inconsistente entre respostas.33> Para usar isso em seu aplicativo, você precisaria analisar o título, converter "15 minutos" em um número, separar ingredientes de instruções e lidar com formatação inconsistente entre respostas.

34 34 

35> **Com saídas estruturadas**35> [accordion] Com saídas estruturadas

36>36>

37> ```jsonc theme={null}37> ```jsonc theme={null}

38> {38> {

Details

225 225 

226Os auxiliares `ask_user` e `askUser` nos trechos a seguir representam a interface de prompt de sua própria aplicação.226Os auxiliares `ask_user` e `askUser` nos trechos a seguir representam a interface de prompt de sua própria aplicação.

227 227 

228**Aprovar**228> [tab] Aprovar

229 229>

230O usuário aprova a ação como está. Passe a `input` do seu callback inalterada e a ferramenta executa exatamente como Claude solicitou.230> O usuário aprova a ação como está. Passe a `input` do seu callback inalterada e a ferramenta executa exatamente como Claude solicitou.

231 231>

232```python Python theme={null}232> ```python Python theme={null}

233async def can_use_tool(tool_name, input_data, context):233> async def can_use_tool(tool_name, input_data, context):

234 print(f"Claude wants to use {tool_name}")234> print(f"Claude wants to use {tool_name}")

235 approved = await ask_user("Allow this action?")235> approved = await ask_user("Allow this action?")

236 236>

237 if approved:237> if approved:

238 return PermissionResultAllow(updated_input=input_data)238> return PermissionResultAllow(updated_input=input_data)

239 return PermissionResultDeny(message="User declined")239> return PermissionResultDeny(message="User declined")

240```240> ```

241 241>

242```typescript TypeScript theme={null}242> ```typescript TypeScript theme={null}

243canUseTool: async (toolName, input) => {243> canUseTool: async (toolName, input) => {

244 console.log(`Claude wants to use ${toolName}`);244> console.log(`Claude wants to use ${toolName}`);

245 const approved = await askUser("Allow this action?");245> const approved = await askUser("Allow this action?");

246 246>

247 if (approved) {247> if (approved) {

248 return { behavior: "allow", updatedInput: input };248> return { behavior: "allow", updatedInput: input };

249 }249> }

250 return { behavior: "deny", message: "User declined" };250> return { behavior: "deny", message: "User declined" };

251};251> };

252```252> ```

253 253 

254**Aprovar com alterações**254> [tab] Aprovar com alterações

255 255>

256O usuário aprova mas quer modificar a solicitação primeiro. Você pode alterar a entrada antes da ferramenta executar. Claude vê o resultado mas não é informado de que você alterou nada. Útil para sanitizar parâmetros, adicionar restrições ou escopar acesso.256> O usuário aprova mas quer modificar a solicitação primeiro. Você pode alterar a entrada antes da ferramenta executar. Claude vê o resultado mas não é informado de que você alterou nada. Útil para sanitizar parâmetros, adicionar restrições ou escopar acesso.

257 257>

258```python Python theme={null}258> ```python Python theme={null}

259async def can_use_tool(tool_name, input_data, context):259> async def can_use_tool(tool_name, input_data, context):

260 if tool_name == "Bash":260> if tool_name == "Bash":

261 # Usuário aprovou, mas escope todos os comandos para sandbox261> # Usuário aprovou, mas escope todos os comandos para sandbox

262 sandboxed_input = {**input_data}262> sandboxed_input = {**input_data}

263 sandboxed_input["command"] = input_data["command"].replace(263> sandboxed_input["command"] = input_data["command"].replace(

264 "/tmp", "/tmp/sandbox"264> "/tmp", "/tmp/sandbox"

265 )265> )

266 return PermissionResultAllow(updated_input=sandboxed_input)266> return PermissionResultAllow(updated_input=sandboxed_input)

267 return PermissionResultAllow(updated_input=input_data)267> return PermissionResultAllow(updated_input=input_data)

268```268> ```

269 269>

270```typescript TypeScript theme={null}270> ```typescript TypeScript theme={null}

271canUseTool: async (toolName, input) => {271> canUseTool: async (toolName, input) => {

272 if (toolName === "Bash") {272> if (toolName === "Bash") {

273 // Usuário aprovou, mas escope todos os comandos para sandbox273> // Usuário aprovou, mas escope todos os comandos para sandbox

274 const sandboxedInput = {274> const sandboxedInput = {

275 ...input,275> ...input,

276 command: input.command.replace("/tmp", "/tmp/sandbox")276> command: input.command.replace("/tmp", "/tmp/sandbox")

277 };277> };

278 return { behavior: "allow", updatedInput: sandboxedInput };278> return { behavior: "allow", updatedInput: sandboxedInput };

279 }279> }

280 return { behavior: "allow", updatedInput: input };280> return { behavior: "allow", updatedInput: input };

281};281> };

282```282> ```

283 283 

284**Aprovar e lembrar**284> [tab] Aprovar e lembrar

285 285>

286O usuário aprova e não quer ser perguntado novamente para este tipo de chamada. O terceiro argumento de callback carrega `suggestions`, uma matriz de entradas [`PermissionUpdate`](https://code.claude.com/docs/pt/agent-sdk/typescript#permissionupdate) prontas. Repita uma de volta em `updatedPermissions` para aplicá-la. Uma sugestão com o destino `localSettings` escreve a regra em `.claude/settings.local.json` para que futuras sessões ignorem o prompt para chamadas correspondentes.286> O usuário aprova e não quer ser perguntado novamente para este tipo de chamada. O terceiro argumento de callback carrega `suggestions`, uma matriz de entradas [`PermissionUpdate`](https://code.claude.com/docs/pt/agent-sdk/typescript#permissionupdate) prontas. Repita uma de volta em `updatedPermissions` para aplicá-la. Uma sugestão com o destino `localSettings` escreve a regra em `.claude/settings.local.json` para que futuras sessões ignorem o prompt para chamadas correspondentes.

287 287>

288Em TypeScript, pule a escolha de sempre permitir para uma solicitação cujas opções carregam [`suppressAlwaysAllowRule: true`](https://code.claude.com/docs/pt/agent-sdk/typescript#canusetool). A dica requer Agent SDK v0.3.268 ou posterior, e o `context` Python não a carrega.288> Em TypeScript, pule a escolha de sempre permitir para uma solicitação cujas opções carregam [`suppressAlwaysAllowRule: true`](https://code.claude.com/docs/pt/agent-sdk/typescript#canusetool). A dica requer Agent SDK v0.3.268 ou posterior, e o `context` Python não a carrega.

289 289>

290O exemplo Python requer `claude-agent-sdk` 0.1.80 ou posterior.290> O exemplo Python requer `claude-agent-sdk` 0.1.80 ou posterior.

291 291>

292```python Python theme={null}292> ```python Python theme={null}

293async def can_use_tool(tool_name, input_data, context):293> async def can_use_tool(tool_name, input_data, context):

294 choice = await ask_user(f"Allow {tool_name}?", ["once", "always", "no"])294> choice = await ask_user(f"Allow {tool_name}?", ["once", "always", "no"])

295 295>

296 if choice == "always":296> if choice == "always":

297 persist = [297> persist = [

298 s for s in context.suggestions if s.destination == "localSettings"298> s for s in context.suggestions if s.destination == "localSettings"

299 ]299> ]

300 return PermissionResultAllow(300> return PermissionResultAllow(

301 updated_input=input_data, updated_permissions=persist301> updated_input=input_data, updated_permissions=persist

302 )302> )

303 if choice == "once":303> if choice == "once":

304 return PermissionResultAllow(updated_input=input_data)304> return PermissionResultAllow(updated_input=input_data)

305 return PermissionResultDeny(message="User declined")305> return PermissionResultDeny(message="User declined")

306```306> ```

307 307>

308```typescript TypeScript theme={null}308> ```typescript TypeScript theme={null}

309canUseTool: async (toolName, input, { suggestions = [] }) => {309> canUseTool: async (toolName, input, { suggestions = [] }) => {

310 const choice = await askUser(`Allow ${toolName}?`, ["once", "always", "no"]);310> const choice = await askUser(`Allow ${toolName}?`, ["once", "always", "no"]);

311 311>

312 if (choice === "always") {312> if (choice === "always") {

313 const persist = suggestions.filter(313> const persist = suggestions.filter(

314 (s) => s.destination === "localSettings"314> (s) => s.destination === "localSettings"

315 );315> );

316 return {316> return {

317 behavior: "allow",317> behavior: "allow",

318 updatedInput: input,318> updatedInput: input,

319 updatedPermissions: persist319> updatedPermissions: persist

320 };320> };

321 }321> }

322 if (choice === "once") {322> if (choice === "once") {

323 return { behavior: "allow", updatedInput: input };323> return { behavior: "allow", updatedInput: input };

324 }324> }

325 return { behavior: "deny", message: "User declined" };325> return { behavior: "deny", message: "User declined" };

326};326> };

327```327> ```

328 328 

329**Rejeitar**329> [tab] Rejeitar

330 330>

331O usuário não quer que esta ação aconteça. Bloqueie a ferramenta e forneça uma mensagem explicando por quê. Claude vê esta mensagem e pode tentar uma abordagem diferente.331> O usuário não quer que esta ação aconteça. Bloqueie a ferramenta e forneça uma mensagem explicando por quê. Claude vê esta mensagem e pode tentar uma abordagem diferente.

332 332>

333```python Python theme={null}333> ```python Python theme={null}

334async def can_use_tool(tool_name, input_data, context):334> async def can_use_tool(tool_name, input_data, context):

335 approved = await ask_user(f"Allow {tool_name}?")335> approved = await ask_user(f"Allow {tool_name}?")

336 336>

337 if not approved:337> if not approved:

338 return PermissionResultDeny(message="User rejected this action")338> return PermissionResultDeny(message="User rejected this action")

339 return PermissionResultAllow(updated_input=input_data)339> return PermissionResultAllow(updated_input=input_data)

340```340> ```

341 341>

342```typescript TypeScript theme={null}342> ```typescript TypeScript theme={null}

343canUseTool: async (toolName, input) => {343> canUseTool: async (toolName, input) => {

344 const approved = await askUser(`Allow ${toolName}?`);344> const approved = await askUser(`Allow ${toolName}?`);

345 345>

346 if (!approved) {346> if (!approved) {

347 return {347> return {

348 behavior: "deny",348> behavior: "deny",

349 message: "User rejected this action"349> message: "User rejected this action"

350 };350> };

351 }351> }

352 return { behavior: "allow", updatedInput: input };352> return { behavior: "allow", updatedInput: input };

353};353> };

354```354> ```

355 355 

356**Sugerir alternativa**356> [tab] Sugerir alternativa

357 357>

358O usuário não quer esta ação específica, mas tem uma ideia diferente. Bloqueie a ferramenta e inclua orientação em sua mensagem. Claude lerá isso e decidirá como proceder com base em seu feedback.358> O usuário não quer esta ação específica, mas tem uma ideia diferente. Bloqueie a ferramenta e inclua orientação em sua mensagem. Claude lerá isso e decidirá como proceder com base em seu feedback.

359 359>

360```python Python theme={null}360> ```python Python theme={null}

361async def can_use_tool(tool_name, input_data, context):361> async def can_use_tool(tool_name, input_data, context):

362 if tool_name == "Bash" and "rm" in input_data.get("command", ""):362> if tool_name == "Bash" and "rm" in input_data.get("command", ""):

363 # Usuário não quer deletar, sugira arquivar em vez disso363> # Usuário não quer deletar, sugira arquivar em vez disso

364 return PermissionResultDeny(364> return PermissionResultDeny(

365 message="User doesn't want to delete files. They asked if you could compress them into an archive instead."365> message="User doesn't want to delete files. They asked if you could compress them into an archive instead."

366 )366> )

367 return PermissionResultAllow(updated_input=input_data)367> return PermissionResultAllow(updated_input=input_data)

368```368> ```

369 369>

370```typescript TypeScript theme={null}370> ```typescript TypeScript theme={null}

371canUseTool: async (toolName, input) => {371> canUseTool: async (toolName, input) => {

372 if (toolName === "Bash" && input.command.includes("rm")) {372> if (toolName === "Bash" && input.command.includes("rm")) {

373 // Usuário não quer deletar, sugira arquivar em vez disso373> // Usuário não quer deletar, sugira arquivar em vez disso

374 return {374> return {

375 behavior: "deny",375> behavior: "deny",

376 message:376> message:

377 "User doesn't want to delete files. They asked if you could compress them into an archive instead."377> "User doesn't want to delete files. They asked if you could compress them into an archive instead."

378 };378> };

379 }379> }

380 return { behavior: "allow", updatedInput: input };380> return { behavior: "allow", updatedInput: input };

381};381> };

382```382> ```

383 383 

384**Redirecionar completamente**384> [tab] Redirecionar completamente

385 385>

386Para uma mudança completa de direção (não apenas um empurrão), use [entrada de streaming](https://code.claude.com/docs/pt/agent-sdk/streaming-vs-single-mode.md) para enviar ao Claude uma nova instrução diretamente. Isso ignora a solicitação de ferramenta atual e dá ao Claude instruções completamente novas para seguir.386> Para uma mudança completa de direção (não apenas um empurrão), use [entrada de streaming](https://code.claude.com/docs/pt/agent-sdk/streaming-vs-single-mode.md) para enviar ao Claude uma nova instrução diretamente. Isso ignora a solicitação de ferramenta atual e dá ao Claude instruções completamente novas para seguir.

387 387 

388## Lidar com perguntas de esclarecimento388## Lidar com perguntas de esclarecimento

389 389 

agents.md +1 −1

Details

13| [Subagentes](https://code.claude.com/docs/pt/sub-agents.md) | Trabalhadores delegados dentro de uma sessão que fazem uma tarefa secundária em seu próprio contexto e retornam um resumo | Uma tarefa secundária inundaria sua conversa principal com resultados de pesquisa, logs ou conteúdos de arquivo que você não consultará novamente |13| [Subagentes](https://code.claude.com/docs/pt/sub-agents.md) | Trabalhadores delegados dentro de uma sessão que fazem uma tarefa secundária em seu próprio contexto e retornam um resumo | Uma tarefa secundária inundaria sua conversa principal com resultados de pesquisa, logs ou conteúdos de arquivo que você não consultará novamente |

14| [Visualização de agentes](https://code.claude.com/docs/pt/agent-view.md) | Uma tela para despachar e monitorar sessões em execução em segundo plano, aberta com `claude agents`. Visualização de pesquisa | Você tem várias tarefas independentes e quer delegá-las, verificar o status rapidamente e intervir apenas quando uma precisar de você |14| [Visualização de agentes](https://code.claude.com/docs/pt/agent-view.md) | Uma tela para despachar e monitorar sessões em execução em segundo plano, aberta com `claude agents`. Visualização de pesquisa | Você tem várias tarefas independentes e quer delegá-las, verificar o status rapidamente e intervir apenas quando uma precisar de você |

15| [Equipes de agentes](https://code.claude.com/docs/pt/agent-teams.md) | Múltiplas sessões coordenadas com uma lista de tarefas compartilhada e mensagens entre agentes, gerenciadas por um líder. Experimental e desabilitado por padrão | Você quer que Claude divida um projeto em partes, as atribua e mantenha os trabalhadores sincronizados |15| [Equipes de agentes](https://code.claude.com/docs/pt/agent-teams.md) | Múltiplas sessões coordenadas com uma lista de tarefas compartilhada e mensagens entre agentes, gerenciadas por um líder. Experimental e desabilitado por padrão | Você quer que Claude divida um projeto em partes, as atribua e mantenha os trabalhadores sincronizados |

16| [Projetos](https://code.claude.com/docs/pt/claude-projects.md) | Uma conversa contínua em claude.ai/code ou no aplicativo desktop. Claude inicia sessões paralelas chamadas threads, na nuvem ou, quando você solicita, em seu computador através do Remote Control, fornece a cada uma as instruções do projeto e mostra quais precisam de você. Beta público em Pro e Max | O trabalho abrange muitas tarefas ao longo de dias ou semanas, deve continuar em execução quando sua máquina está desligada, e você prefere descrevê-lo uma vez em vez de despachar e rastrear cada sessão |16| [Projetos](https://code.claude.com/docs/pt/claude-projects.md) | Uma conversa contínua em claude.ai/code ou no aplicativo desktop. Claude inicia sessões paralelas chamadas threads, na nuvem ou, quando você solicita, em seu computador através do Remote Control. Ele fornece a cada uma as instruções do projeto e mostra quais precisam de você. Beta público em Pro, Max e Ultra | O trabalho abrange muitas tarefas ao longo de dias ou semanas, deve continuar em execução quando sua máquina está desligada, e você prefere descrevê-lo uma vez em vez de despachar e rastrear cada sessão |

17| [Workflows dinâmicos](https://code.claude.com/docs/pt/workflows.md) | Um script que executa muitos subagentes e verifica seus resultados, para um trabalho muito grande para coordenar em um único turno ou que precisa de mais de uma passagem | Uma tarefa cresce além de um punhado de subagentes, ou você quer que as descobertas sejam verificadas uma contra a outra: uma auditoria em toda a base de código, uma migração de 500 arquivos, pesquisa com verificação cruzada ou um plano elaborado de vários ângulos |17| [Workflows dinâmicos](https://code.claude.com/docs/pt/workflows.md) | Um script que executa muitos subagentes e verifica seus resultados, para um trabalho muito grande para coordenar em um único turno ou que precisa de mais de uma passagem | Uma tarefa cresce além de um punhado de subagentes, ou você quer que as descobertas sejam verificadas uma contra a outra: uma auditoria em toda a base de código, uma migração de 500 arquivos, pesquisa com verificação cruzada ou um plano elaborado de vários ângulos |

18 18 

19Em cada abordagem, os trabalhadores são sessões Claude. Para envolver uma ferramenta diferente, exponha-a ao Claude como um [servidor MCP](https://code.claude.com/docs/pt/mcp.md).19Em cada abordagem, os trabalhadores são sessões Claude. Para envolver uma ferramenta diferente, exponha-a ao Claude como um [servidor MCP](https://code.claude.com/docs/pt/mcp.md).

artifacts.md +4 −4

Details

8 8 

9> [!NOTE]9> [!NOTE]

10>10>

11> Artifacts estão disponíveis nos planos Pro, Max, Team e Enterprise e exigem uma sessão conectada com [`/login`](https://code.claude.com/docs/pt/setup#authenticate). Consulte [Disponibilidade](#availability) para o conjunto completo de requisitos.11> Artefatos estão disponíveis nos planos Pro, Max, Ultra, Team e Enterprise e exigem uma sessão conectada com [`/login`](https://code.claude.com/docs/pt/setup#authenticate). Consulte [Disponibilidade](#availability) para o conjunto completo de requisitos.

12 12 

13Um [artifact](https://claude.com/features/artifacts) é uma página web ao vivo e interativa que Claude Code publica de sua sessão para uma URL privada no claude.ai. Você a abre em um navegador e ela é atualizada no local conforme a sessão continua. Compartilhe-a a partir do cabeçalho da página quando quiser que outra pessoa a veja também.13Um [artifact](https://claude.com/features/artifacts) é uma página web ao vivo e interativa que Claude Code publica de sua sessão para uma URL privada no claude.ai. Você a abre em um navegador e ela é atualizada no local conforme a sessão continua. Compartilhe-a a partir do cabeçalho da página quando quiser que outra pessoa a veja também.

14 14 


197 197 

198## Extrair dados ao vivo com conectores MCP198## Extrair dados ao vivo com conectores MCP

199 199 

200Um artefato pode chamar [conectores MCP](https://code.claude.com/docs/pt/mcp.md#use-mcp-servers-from-claude-ai) cada vez que alguém o visualiza, para que a página mostre dados atuais em vez de um instantâneo da sessão que a construiu. Chamadas de conectores de artefatos estão disponíveis nos planos Pro, Max, Team e Enterprise e exigem Claude Code v2.1.209 ou posterior. Em versões anteriores, Claude publica a página com os dados que a sessão coletou durante sua construção.200Um artefato pode chamar [conectores MCP](https://code.claude.com/docs/pt/mcp.md#use-mcp-servers-from-claude-ai) cada vez que alguém o visualiza, para que a página mostre dados atuais em vez de um instantâneo da sessão que a construiu. Chamadas de conectores de artefatos estão disponíveis nos planos Pro, Max, Ultra, Team e Enterprise e exigem Claude Code v2.1.209 ou posterior. Em versões anteriores, Claude publica a página com os dados que a sessão coletou durante sua construção.

201 201 

202Para criar uma página com suporte de conectores, nomeie o conector e os dados que deseja em seu prompt:202Para criar uma página com suporte de conectores, nomeie o conector e os dados que deseja em seu prompt:

203 203 


314 314 

315> [!NOTE]315> [!NOTE]

316>316>

317> Os modelos estão em beta. Eles estão ativados por padrão nos planos Pro, Max e Team. Nos planos Enterprise, um Proprietário [ativa cada modelo](https://support.claude.com/en/articles/16994751-artifacts-admin-guide-for-team-and-enterprise-plans) em **Configurações da Organização > Artefatos**. Se sua organização tiver o modelo Slides desativado, `/slides` não aparece; se tiver o modelo Design desativado, `/design` não rascunha designs. Ambos os comandos exigem Claude Code v2.1.265 ou posterior e uma sessão onde [artefatos estão disponíveis](#availability).317> Os modelos estão em beta. Eles estão ativados por padrão nos planos Pro, Max, Ultra e Team. Nos planos Enterprise, um Proprietário [ativa cada modelo](https://support.claude.com/en/articles/16994751-artifacts-admin-guide-for-team-and-enterprise-plans) em **Configurações da Organização > Artefatos**. Se sua organização tiver o modelo Slides desativado, `/slides` não aparece; se tiver o modelo Design desativado, `/design` não rascunha designs. Ambos os comandos exigem Claude Code v2.1.265 ou posterior e uma sessão onde [artefatos estão disponíveis](#availability).

318 318 

319### Crie um deck de slides319### Crie um deck de slides

320 320 


368 368 

369| Requisito | Disponível quando |369| Requisito | Disponível quando |

370| :- | :- |370| :- | :- |

371| Plano | Pro, Max, Team ou Enterprise. Em planos Pro e Max, artefatos são privados para você até que você os compartilhe, e nenhuma gestão de admin se aplica. Em planos Team e Enterprise, artefatos estão ativados por padrão, e um Owner pode [desativá-los para a organização](#manage-artifacts-for-your-organization) nas configurações de admin do claude.ai. |371| Plano | Pro, Max, Ultra, Team ou Enterprise. Em planos Pro, Max e Ultra, artefatos são privados para você até que você os compartilhe, e nenhuma gestão de admin se aplica. Em planos Team e Enterprise, artefatos estão ativados por padrão, e um Owner pode [desativá-los para a organização](#manage-artifacts-for-your-organization) nas configurações de admin do claude.ai. |

372| Autenticação | A sessão é apoiada por uma conta claude.ai: faça login com `/login` na CLI ou aplicativo de desktop. Sessões Claude Tag não precisam de nenhuma etapa de login. Sessões usando uma chave de API, [token de gateway](https://code.claude.com/docs/pt/llm-gateway) ou credencial de provedor de nuvem não podem publicar. |372| Autenticação | A sessão é apoiada por uma conta claude.ai: faça login com `/login` na CLI ou aplicativo de desktop. Sessões Claude Tag não precisam de nenhuma etapa de login. Sessões usando uma chave de API, [token de gateway](https://code.claude.com/docs/pt/llm-gateway) ou credencial de provedor de nuvem não podem publicar. |

373| Provedor de modelo | API Anthropic. Não disponível em [Amazon Bedrock](https://code.claude.com/docs/pt/amazon-bedrock.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/pt/google-vertex-ai.md) ou [Microsoft Foundry](https://code.claude.com/docs/pt/microsoft-foundry.md). |373| Provedor de modelo | API Anthropic. Não disponível em [Amazon Bedrock](https://code.claude.com/docs/pt/amazon-bedrock.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/pt/google-vertex-ai.md) ou [Microsoft Foundry](https://code.claude.com/docs/pt/microsoft-foundry.md). |

374| Política da organização | Chaves de criptografia gerenciadas pelo cliente (CMEK), HIPAA e [Retenção Zero de Dados](https://code.claude.com/docs/pt/zero-data-retention.md) não estão habilitadas para a organização. |374| Política da organização | Chaves de criptografia gerenciadas pelo cliente (CMEK), HIPAA e [Retenção Zero de Dados](https://code.claude.com/docs/pt/zero-data-retention.md) não estão habilitadas para a organização. |

authentication.md +21 −21

Details

23 23 

24Você pode se autenticar com qualquer um destes tipos de conta:24Você pode se autenticar com qualquer um destes tipos de conta:

25 25 

26* **Assinatura Claude Pro ou Max**: faça login com sua conta do claude.ai. Assine em [claude.com/pricing](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=authentication_pro_max).26* **Assinatura Claude Pro, Max ou Ultra**: faça login com sua conta do claude.ai. Assine em [claude.com/pricing](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=authentication_pro_max).

27* **Claude for Teams ou Enterprise**: faça login com a conta do claude.ai para a qual o administrador da sua equipe convidou você.27* **Claude for Teams ou Enterprise**: faça login com a conta do claude.ai para a qual o administrador da sua equipe convidou você.

28* **Claude Console**: faça login com suas credenciais do Console. Seu administrador precisa ter [convidado você](#claude-console-authentication) primeiro. Você pode fazer login com ou sem [criar uma chave de API](#sign-in-without-an-api-key).28* **Claude Console**: faça login com suas credenciais do Console. Seu administrador precisa ter [convidado você](#claude-console-authentication) primeiro. Você pode fazer login com ou sem [criar uma chave de API](#sign-in-without-an-api-key).

29* **Provedores de nuvem**: se a sua organização usa [Amazon Bedrock](https://code.claude.com/docs/pt/amazon-bedrock.md), [Agent Platform do Google Cloud](https://code.claude.com/docs/pt/google-vertex-ai.md) ou [Microsoft Foundry](https://code.claude.com/docs/pt/microsoft-foundry.md), defina as variáveis de ambiente necessárias antes de executar `claude`, ou selecione **3rd-party platform** no prompt de login, o que inicia um assistente de configuração interativo para Bedrock e Vertex AI. Nenhum login pelo navegador é necessário.29* **Provedores de nuvem**: se a sua organização usa [Amazon Bedrock](https://code.claude.com/docs/pt/amazon-bedrock.md), [Agent Platform do Google Cloud](https://code.claude.com/docs/pt/google-vertex-ai.md) ou [Microsoft Foundry](https://code.claude.com/docs/pt/microsoft-foundry.md), defina as variáveis de ambiente necessárias antes de executar `claude`, ou selecione **3rd-party platform** no prompt de login, o que inicia um assistente de configuração interativo para Bedrock e Vertex AI. Nenhum login pelo navegador é necessário.


2534. Saída do script [`apiKeyHelper`](https://code.claude.com/docs/pt/settings-reference#apikeyhelper). Use isso para credenciais dinâmicas ou rotativas, como tokens de curta duração obtidos de um cofre.2534. Saída do script [`apiKeyHelper`](https://code.claude.com/docs/pt/settings-reference#apikeyhelper). Use isso para credenciais dinâmicas ou rotativas, como tokens de curta duração obtidos de um cofre.

2545. Variável de ambiente `CLAUDE_CODE_OAUTH_TOKEN`. Um token OAuth de longa duração gerado por [`claude setup-token`](#generate-a-long-lived-token). Use isso para pipelines de CI e scripts onde login do navegador não está disponível. Se você executar `/login` enquanto a variável está definida, Claude Code muda a sessão atual para o novo login, mas lê a variável novamente em cada nova sessão até que você a remova do seu perfil de shell ou do bloco `env` de um [arquivo de configurações](https://code.claude.com/docs/pt/settings.md).2545. Variável de ambiente `CLAUDE_CODE_OAUTH_TOKEN`. Um token OAuth de longa duração gerado por [`claude setup-token`](#generate-a-long-lived-token). Use isso para pipelines de CI e scripts onde login do navegador não está disponível. Se você executar `/login` enquanto a variável está definida, Claude Code muda a sessão atual para o novo login, mas lê a variável novamente em cada nova sessão até que você a remova do seu perfil de shell ou do bloco `env` de um [arquivo de configurações](https://code.claude.com/docs/pt/settings.md).

2556. Credenciais de perfil Anthropic e de federação, as credenciais que a CLI `ant` e Workload Identity Federation usam. Um perfil que `ant auth login` escreveu é classificado aqui apenas quando você o nomeia em `ANTHROPIC_PROFILE`; caso contrário, é classificado abaixo de `/login`. Consulte [Perfis Anthropic e credenciais de federação](#anthropic-profiles-and-federation-credentials).2556. Credenciais de perfil Anthropic e de federação, as credenciais que a CLI `ant` e Workload Identity Federation usam. Um perfil que `ant auth login` escreveu é classificado aqui apenas quando você o nomeia em `ANTHROPIC_PROFILE`; caso contrário, é classificado abaixo de `/login`. Consulte [Perfis Anthropic e credenciais de federação](#anthropic-profiles-and-federation-credentials).

2567. Credenciais OAuth de assinatura de `/login`. Este é o padrão para usuários Claude Pro, Max, Team e Enterprise.2567. Credenciais OAuth de assinatura de `/login`. Este é o padrão para usuários Claude Pro, Max, Ultra, Team e Enterprise.

257 257 

258Uma sessão do [gateway de aplicativos Claude](https://code.claude.com/docs/pt/claude-apps-gateway) assinada fica fora desta lista: é uma seleção de provedor como Amazon Bedrock ou Google Cloud's Agent Platform, e a supera. Quando uma sessão de gateway existe, a CLI se autentica com o token do gateway mesmo se `CLAUDE_CODE_USE_BEDROCK`, `CLAUDE_CODE_USE_VERTEX` ou `CLAUDE_CODE_USE_FOUNDRY` está definido, e fontes de credenciais acima como o token bearer, chave de API, `apiKeyHelper` e perfis não são usados.258Uma sessão do [gateway de aplicativos Claude](https://code.claude.com/docs/pt/claude-apps-gateway) assinada fica fora desta lista: é uma seleção de provedor como Amazon Bedrock ou Google Cloud's Agent Platform, e a supera. Quando uma sessão de gateway existe, a CLI se autentica com o token do gateway mesmo se `CLAUDE_CODE_USE_BEDROCK`, `CLAUDE_CODE_USE_VERTEX` ou `CLAUDE_CODE_USE_FOUNDRY` está definido, e fontes de credenciais acima como o token bearer, chave de API, `apiKeyHelper` e perfis não são usados.

259 259 


300 300 

301O comando abre o mesmo fluxo de autorização do navegador que `/login`, e o token é impresso no terminal depois que você aprova o acesso no navegador. Ele não salva o token em lugar nenhum; copie-o e defina-o como a variável de ambiente `CLAUDE_CODE_OAUTH_TOKEN` onde você quiser se autenticar:301O comando abre o mesmo fluxo de autorização do navegador que `/login`, e o token é impresso no terminal depois que você aprova o acesso no navegador. Ele não salva o token em lugar nenhum; copie-o e defina-o como a variável de ambiente `CLAUDE_CODE_OAUTH_TOKEN` onde você quiser se autenticar:

302 302 

303**macOS, Linux, WSL**303> [tab] macOS, Linux, WSL

304 304>

305```bash theme={null}305> ```bash theme={null}

306export CLAUDE_CODE_OAUTH_TOKEN=your-token306> export CLAUDE_CODE_OAUTH_TOKEN=your-token

307```307> ```

308 308 

309**Windows PowerShell**309> [tab] Windows PowerShell

310 310>

311```powershell theme={null}311> ```powershell theme={null}

312$env:CLAUDE_CODE_OAUTH_TOKEN = "your-token"312> $env:CLAUDE_CODE_OAUTH_TOKEN = "your-token"

313```313> ```

314 314 

315**Windows CMD**315> [tab] Windows CMD

316 316>

317```batch theme={null}317> ```batch theme={null}

318set CLAUDE_CODE_OAUTH_TOKEN=your-token318> set CLAUDE_CODE_OAUTH_TOKEN=your-token

319```319> ```

320 320 

321Este token se autentica com sua assinatura Claude e requer um plano Pro, Max, Team ou Enterprise. Ele pode apenas fazer solicitações de modelo, então não pode estabelecer sessões de [Remote Control](https://code.claude.com/docs/pt/remote-control.md) ou buscar [conectores claude.ai](https://code.claude.com/docs/pt/mcp.md#use-mcp-servers-from-claude-ai). Servidores MCP que você configura localmente ainda funcionam.321Este token se autentica com sua assinatura Claude e requer um plano Pro, Max, Ultra, Team ou Enterprise. Ele pode apenas fazer solicitações de modelo, então não pode estabelecer sessões de [Remote Control](https://code.claude.com/docs/pt/remote-control.md) ou buscar [conectores claude.ai](https://code.claude.com/docs/pt/mcp.md#use-mcp-servers-from-claude-ai). Servidores MCP que você configura localmente ainda funcionam.

322 322 

323[Bare mode](https://code.claude.com/docs/pt/headless.md#start-faster-with-bare-mode) não lê `CLAUDE_CODE_OAUTH_TOKEN`. Se seu script passar `--bare`, autentique com `ANTHROPIC_API_KEY` ou um `apiKeyHelper` em vez disso.323[Bare mode](https://code.claude.com/docs/pt/headless.md#start-faster-with-bare-mode) não lê `CLAUDE_CODE_OAUTH_TOKEN`. Se seu script passar `--bare`, autentique com `ANTHROPIC_API_KEY` ou um `apiKeyHelper` em vez disso.

Details

43 43 

44## Por que o aviso aparece44## Por que o aviso aparece

45 45 

46[Revisão do classificador do lado do servidor](https://code.claude.com/docs/pt/permission-modes.md#server-side-classifier-review) lista quais sessões solicitam ao servidor as verificações do classificador. Os planos Pro, Max e Team nunca mostram o aviso. Quando aparece, as causas usuais são:46Em um plano Pro, Max, Ultra ou Team, você nunca vê o aviso. Para descobrir quais sessões solicitam ao servidor as verificações do classificador, consulte [Revisão do classificador do lado do servidor](https://code.claude.com/docs/pt/permission-modes.md#server-side-classifier-review). Se você vir o aviso, verifique estas causas usuais:

47 47 

48* **Um gateway LLM ou proxy está no caminho**: um que remove ou reescreve cabeçalhos de solicitação, descarta campos de solicitação que não reconhece ou edita respostas. O servidor então nunca recebe a solicitação de verificações, ou Claude Code nunca recebe os resultados. Quando sua configuração ou as respostas identificam o gateway, o aviso o nomeia.48* **Um gateway LLM ou proxy está no caminho**: um que remove ou reescreve cabeçalhos de solicitação, descarta campos de solicitação que não reconhece ou edita respostas. O servidor então nunca recebe a solicitação de verificações, ou Claude Code nunca recebe os resultados. Quando sua configuração ou as respostas identificam o gateway, o aviso o nomeia.

49* **As verificações do lado do servidor ainda não chegaram à sua plataforma, região ou credencial**: se uma plataforma ou região as realiza depende do lançamento dessa plataforma. Se você vir o aviso sem nenhum gateway ou proxy no caminho e ele continuar aparecendo, essa é a causa provável. Para confirmar, entre em contato com o suporte ou o administrador da sua empresa, ou relate com `/feedback`.49* **As verificações do lado do servidor ainda não chegaram à sua plataforma, região ou credencial**: se uma plataforma ou região as realiza depende do lançamento dessa plataforma. Se você vir o aviso sem nenhum gateway ou proxy no caminho e ele continuar aparecendo, essa é a causa provável. Para confirmar, entre em contato com o suporte ou o administrador da sua empresa, ou relate com `/feedback`.

Details

161 161 

162> [!NOTE]162> [!NOTE]

163>163>

164> `/auto-mode-setup` está disponível nos planos Pro, Max, Team e Enterprise e com uma chave de API do Claude Console. Em um plano Pro, Max ou Team, você precisa da v2.1.228 ou posterior, ou da v2.1.233 ou posterior no Windows nativo. Em um plano Enterprise ou com uma chave de API do Claude Console, você precisa da v2.1.283 ou posterior. Se o comando não estiver disponível na sua sessão, consulte [`/auto-mode-setup` retorna "Unknown command"](#auto-mode-setup-returns-unknown-command).164> `/auto-mode-setup` está disponível nos planos Pro, Max, Ultra, Team e Enterprise e com uma chave de API do Claude Console. Em um plano Pro, Max, Ultra ou Team, você precisa da v2.1.228 ou posterior, ou da v2.1.233 ou posterior no Windows nativo. Em um plano Enterprise ou com uma chave de API do Claude Console, você precisa da v2.1.283 ou posterior. Se o comando não estiver disponível na sua sessão, consulte [`/auto-mode-setup` retorna "Unknown command"](#auto-mode-setup-returns-unknown-command).

165 165 

166### O que `/auto-mode-setup` lê166### O que `/auto-mode-setup` lê

167 167 

Details

489 489 

490Com uma janela de 1M de tokens na maioria dos modelos atuais e a compactação perto do topo dela, raramente você vai ficar sem contexto. Ainda assim, você pode *pagar* por contexto de que não precisa. Cada requisição envia a conversa inteira, então uma sessão que acumulou três tarefas não relacionadas relê as três em cada turno da quarta. Isso tem [desconto enquanto o cache está quente](https://code.claude.com/docs/pt/costs.md#why-usage-climbs-in-a-long-session) e preço cheio depois que ele expira.490Com uma janela de 1M de tokens na maioria dos modelos atuais e a compactação perto do topo dela, raramente você vai ficar sem contexto. Ainda assim, você pode *pagar* por contexto de que não precisa. Cada requisição envia a conversa inteira, então uma sessão que acumulou três tarefas não relacionadas relê as três em cada turno da quarta. Isso tem [desconto enquanto o cache está quente](https://code.claude.com/docs/pt/costs.md#why-usage-climbs-in-a-long-session) e preço cheio depois que ele expira.

491 491 

492[`/usage`](https://code.claude.com/docs/pt/costs) é o primeiro lugar para olhar. No Pro, Max, Team e Enterprise, ele detalha seu uso por skill, subagente, plugin e servidor MCP. Ele também sinaliza padrões como contexto longo ou falhas frequentes de cache quando um deles passa de 10% do seu uso. A partir daí, as correções habituais:492[`/usage`](https://code.claude.com/docs/pt/costs) é o primeiro lugar para olhar. No Pro, Max, Ultra, Team e Enterprise, ele detalha seu uso por skill, subagente, plugin e servidor MCP. Ele também sinaliza padrões como contexto longo ou falhas frequentes de cache quando um deles passa de 10% do seu uso. A partir daí, as correções habituais:

493 493 

494* `/clear` entre tarefas não relacionadas. Não custa nada e significa que a próxima tarefa não continua pagando pelo histórico da anterior. `/clear oauth-migration` dá nome à sessão que você está deixando, para que você possa voltar a ela depois.494* `/clear` entre tarefas não relacionadas. Não custa nada e significa que a próxima tarefa não continua pagando pelo histórico da anterior. `/clear oauth-migration` dá nome à sessão que você está deixando, para que você possa voltar a ela depois.

495* `/compact` com um foco, como `/compact keep the API changes and the test commands`. Em uma sessão longa, o `/compact` é ele próprio uma requisição grande, já que lê a conversa inteira para resumi-la, e ainda mais depois que o cache expirou.495* `/compact` com um foco, como `/compact keep the API changes and the test commands`. Em uma sessão longa, o `/compact` é ele próprio uma requisição grande, já que lê a conversa inteira para resumi-la, e ainda mais depois que o cache expirou.

channels.md +189 −189

Details

24 24 

25Cada canal suportado é um plugin que requer [Bun](https://bun.sh). Para uma demonstração prática do fluxo de plugin antes de conectar uma plataforma real, tente o [quickstart fakechat](#quickstart).25Cada canal suportado é um plugin que requer [Bun](https://bun.sh). Para uma demonstração prática do fluxo de plugin antes de conectar uma plataforma real, tente o [quickstart fakechat](#quickstart).

26 26 

27**Telegram**27> [tab] Telegram

28 

29Veja o [código-fonte completo do plugin Telegram](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins/telegram).

30 

31**1. Criar um bot do Telegram**

32 

33Abra [BotFather](https://t.me/BotFather) no Telegram e envie `/newbot`. Dê a ele um nome de exibição e um nome de usuário único terminando em `bot`. Copie o token que BotFather retorna.

34 

35**2. Instalar o plugin**

36 

37Inicie o Claude Code executando `claude` no seu terminal e, em seguida, digite isto no prompt dele:

38 

39```

40/plugin install telegram@claude-plugins-official

41```

42 

43Se a instalação falhar, corresponda à mensagem que Claude Code relata:

44 

45* `Marketplace "claude-plugins-official" not found`: adicione o marketplace com `/plugin marketplace add anthropics/claude-plugins-official`, depois tente novamente a instalação.

46* `Plugin "<name>" not found in marketplace "claude-plugins-official"`: sua cópia local do catálogo do marketplace pode estar desatualizada. Atualize-a com `/plugin marketplace update claude-plugins-official` e, em seguida, tente novamente a instalação. Se a nova tentativa exibir a mesma mensagem, consulte [Plugin não encontrado no marketplace](https://code.claude.com/docs/pt/plugins/troubleshooting.md#plugin-not-found-in-marketplace).

47 

48Quando a instalação solicitar um escopo de instalação, escolha a opção de escopo do usuário para que o plugin esteja disponível em todos os seus projetos. Verifique o resumo da instalação: se relatar `Run /reload-plugins to apply.`, consulte [Aplicar alterações de plugin sem reiniciar](https://code.claude.com/docs/pt/plugins/cli-reference.md#reload-plugins) para disponibilizar o comando de configuração do plugin.

49 

50**3. Configurar seu token**

51 

52Execute o comando de configuração com o token do BotFather:

53 

54```

55/telegram:configure <token>

56```

57 

58Isso o salva em `~/.claude/channels/telegram/.env`. Você também pode definir `TELEGRAM_BOT_TOKEN` em seu ambiente de shell antes de iniciar Claude Code.

59 

60**4. Reiniciar com canais habilitados**

61 

62Saia do Claude Code e reinicie com a flag de canal. Isso inicia o plugin Telegram, que começa a pesquisar mensagens do seu bot:

63 

64```bash theme={null}

65claude --channels plugin:telegram@claude-plugins-official

66```

67 

68**5. Emparelhar sua conta**

69 

70Abra o Telegram e envie qualquer mensagem para seu bot. O bot responde com um código de emparelhamento.

71 

72> [!NOTE]

73>28>

74> Se seu bot não responder, certifique-se de que Claude Code está em execução com `--channels` da etapa anterior. O bot só pode responder enquanto o canal está ativo.29> Veja o [código-fonte completo do plugin Telegram](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins/telegram).

75 

76De volta ao Claude Code, execute:

77 

78```

79/telegram:access pair <code>

80```

81 

82Em seguida, bloqueie o acesso para que apenas sua conta possa enviar mensagens:

83 

84```

85/telegram:access policy allowlist

86```

87 

88**Discord**

89 

90Veja o [código-fonte completo do plugin Discord](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins/discord).

91 

92**1. Criar um bot do Discord**

93 

94Vá para o [Portal de Desenvolvedores do Discord](https://discord.com/developers/applications), clique em **New Application** e nomeie-o. Na seção **Bot**, crie um nome de usuário e clique em **Reset Token** e copie o token.

95 

96**2. Habilitar Message Content Intent**

97 

98Nas configurações do seu bot, role até **Privileged Gateway Intents** e habilite **Message Content Intent**.

99 

100**3. Convidar o bot para seu servidor**

101 

102Vá para **OAuth2 > URL Generator**. Selecione o escopo `bot` e habilite estas permissões:

103 

104* View Channels

105* Send Messages

106* Send Messages in Threads

107* Read Message History

108* Attach Files

109* Add Reactions

110 

111Abra a URL gerada para adicionar o bot ao seu servidor.

112 

113**4. Instalar o plugin**

114 

115Inicie o Claude Code executando `claude` no seu terminal e, em seguida, digite isto no prompt dele:

116 

117```

118/plugin install discord@claude-plugins-official

119```

120 

121Se a instalação falhar, corresponda à mensagem que Claude Code relata:

122 

123* `Marketplace "claude-plugins-official" not found`: adicione o marketplace com `/plugin marketplace add anthropics/claude-plugins-official`, depois tente novamente a instalação.

124* `Plugin "<name>" not found in marketplace "claude-plugins-official"`: sua cópia local do catálogo do marketplace pode estar desatualizada. Atualize-a com `/plugin marketplace update claude-plugins-official` e, em seguida, tente novamente a instalação. Se a nova tentativa exibir a mesma mensagem, consulte [Plugin não encontrado no marketplace](https://code.claude.com/docs/pt/plugins/troubleshooting.md#plugin-not-found-in-marketplace).

125 

126Quando a instalação solicitar um escopo de instalação, escolha a opção de escopo do usuário para que o plugin esteja disponível em todos os seus projetos. Verifique o resumo da instalação: se relatar `Run /reload-plugins to apply.`, consulte [Aplicar alterações de plugin sem reiniciar](https://code.claude.com/docs/pt/plugins/cli-reference.md#reload-plugins) para disponibilizar o comando de configuração do plugin.

127 

128**5. Configurar seu token**

129 

130Execute o comando de configuração com o token do bot que você copiou:

131 

132```

133/discord:configure <token>

134```

135 

136Isso o salva em `~/.claude/channels/discord/.env`. Você também pode definir `DISCORD_BOT_TOKEN` em seu ambiente de shell antes de iniciar Claude Code.

137 

138**6. Reiniciar com canais habilitados**

139 

140Saia do Claude Code e reinicie com a flag de canal. Isso conecta o plugin Discord para que seu bot possa receber e responder a mensagens:

141 

142```bash theme={null}

143claude --channels plugin:discord@claude-plugins-official

144```

145 

146**7. Emparelhar sua conta**

147 

148Envie uma mensagem direta para seu bot no Discord. O bot responde com um código de emparelhamento.

149 

150> [!NOTE]

151>30>

152> Se seu bot não responder, certifique-se de que Claude Code está em execução com `--channels` da etapa anterior. O bot só pode responder enquanto o canal está ativo.31> **1. Criar um bot do Telegram**

153 

154De volta ao Claude Code, execute:

155 

156```

157/discord:access pair <code>

158```

159 

160Em seguida, bloqueie o acesso para que apenas sua conta possa enviar mensagens:

161 

162```

163/discord:access policy allowlist

164```

165 

166**iMessage**

167 

168Veja o [código-fonte completo do plugin iMessage](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins/imessage).

169 

170O canal iMessage lê seu banco de dados de Mensagens diretamente e envia respostas através de AppleScript. Requer macOS e não precisa de token de bot ou serviço externo.

171 

172**1. Conceder Acesso Total ao Disco**

173 

174O banco de dados de Mensagens em `~/Library/Messages/chat.db` é protegido pelo macOS. Na primeira vez que o servidor o lê, o macOS solicita acesso: clique em **Allow**. O prompt nomeia qualquer aplicativo que iniciou o Bun, como Terminal, iTerm ou seu IDE.

175 

176Se o prompt não aparecer ou você clicou em Don't Allow, conceda acesso manualmente em **System Settings > Privacy & Security > Full Disk Access** e adicione seu terminal. Sem isso, o servidor sai imediatamente com `authorization denied`.

177 

178**2. Instalar o plugin**

179 

180Inicie o Claude Code executando `claude` no seu terminal e, em seguida, digite isto no prompt dele:

181 

182```

183/plugin install imessage@claude-plugins-official

184```

185 

186Se a instalação falhar, corresponda à mensagem que Claude Code relata:

187 

188* `Marketplace "claude-plugins-official" not found`: adicione o marketplace com `/plugin marketplace add anthropics/claude-plugins-official`, depois tente novamente a instalação.

189* `Plugin "<name>" not found in marketplace "claude-plugins-official"`: sua cópia local do catálogo do marketplace pode estar desatualizada. Atualize-a com `/plugin marketplace update claude-plugins-official` e, em seguida, tente novamente a instalação. Se a nova tentativa exibir a mesma mensagem, consulte [Plugin não encontrado no marketplace](https://code.claude.com/docs/pt/plugins/troubleshooting.md#plugin-not-found-in-marketplace).

190 

191Quando a instalação solicitar um escopo de instalação, escolha a opção de escopo do usuário para que o plugin esteja disponível em todos os seus projetos.

192 

193Se o resumo da instalação relatar `Run /reload-plugins to apply.`, você não precisa agir sobre isso aqui, porque reiniciar na próxima etapa pega o plugin.

194 

195**3. Reiniciar com canais habilitados**

196 

197Saia do Claude Code e reinicie com a flag de canal:

198 

199```bash theme={null}

200claude --channels plugin:imessage@claude-plugins-official

201```

202 

203**4. Envie uma mensagem para si mesmo**

204 

205Abra Mensagens em qualquer dispositivo conectado à sua Apple ID e envie uma mensagem para si mesmo. Ela chega ao Claude imediatamente: o auto-chat ignora o controle de acesso sem configuração.

206 

207> [!NOTE]

208>32>

209> A primeira resposta que Claude envia dispara um prompt de Automação do macOS perguntando se seu terminal pode controlar Mensagens. Clique em **OK**.33> Abra [BotFather](https://t.me/BotFather) no Telegram e envie `/newbot`. Dê a ele um nome de exibição e um nome de usuário único terminando em `bot`. Copie o token que BotFather retorna.

210 34>

211**5. Permitir outros remetentes**35> **2. Instalar o plugin**

212 36>

213Por padrão, apenas suas próprias mensagens passam. Para permitir que outro contato alcance Claude, adicione seu identificador:37> Inicie o Claude Code executando `claude` no seu terminal e, em seguida, digite isto no prompt dele:

38>

39> ```

40> /plugin install telegram@claude-plugins-official

41> ```

42>

43> Se a instalação falhar, corresponda à mensagem que Claude Code relata:

44>

45> * `Marketplace "claude-plugins-official" not found`: adicione o marketplace com `/plugin marketplace add anthropics/claude-plugins-official`, depois tente novamente a instalação.

46> * `Plugin "<name>" not found in marketplace "claude-plugins-official"`: sua cópia local do catálogo do marketplace pode estar desatualizada. Atualize-a com `/plugin marketplace update claude-plugins-official` e, em seguida, tente novamente a instalação. Se a nova tentativa exibir a mesma mensagem, consulte [Plugin não encontrado no marketplace](https://code.claude.com/docs/pt/plugins/troubleshooting.md#plugin-not-found-in-marketplace).

47>

48> Quando a instalação solicitar um escopo de instalação, escolha a opção de escopo do usuário para que o plugin esteja disponível em todos os seus projetos. Verifique o resumo da instalação: se relatar `Run /reload-plugins to apply.`, consulte [Aplicar alterações de plugin sem reiniciar](https://code.claude.com/docs/pt/plugins/cli-reference.md#reload-plugins) para disponibilizar o comando de configuração do plugin.

49>

50> **3. Configurar seu token**

51>

52> Execute o comando de configuração com o token do BotFather:

53>

54> ```

55> /telegram:configure <token>

56> ```

57>

58> Isso o salva em `~/.claude/channels/telegram/.env`. Você também pode definir `TELEGRAM_BOT_TOKEN` em seu ambiente de shell antes de iniciar Claude Code.

59>

60> **4. Reiniciar com canais habilitados**

61>

62> Saia do Claude Code e reinicie com a flag de canal. Isso inicia o plugin Telegram, que começa a pesquisar mensagens do seu bot:

63>

64> ```bash theme={null}

65> claude --channels plugin:telegram@claude-plugins-official

66> ```

67>

68> **5. Emparelhar sua conta**

69>

70> Abra o Telegram e envie qualquer mensagem para seu bot. O bot responde com um código de emparelhamento.

71>

72> > [!NOTE]

73> >

74> > Se seu bot não responder, certifique-se de que Claude Code está em execução com `--channels` da etapa anterior. O bot só pode responder enquanto o canal está ativo.

75>

76> De volta ao Claude Code, execute:

77>

78> ```

79> /telegram:access pair <code>

80> ```

81>

82> Em seguida, bloqueie o acesso para que apenas sua conta possa enviar mensagens:

83>

84> ```

85> /telegram:access policy allowlist

86> ```

214 87 

215```88> [tab] Discord

216/imessage:access allow +1555123456789>

217```90> Veja o [código-fonte completo do plugin Discord](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins/discord).

91>

92> **1. Criar um bot do Discord**

93>

94> Vá para o [Portal de Desenvolvedores do Discord](https://discord.com/developers/applications), clique em **New Application** e nomeie-o. Na seção **Bot**, crie um nome de usuário e clique em **Reset Token** e copie o token.

95>

96> **2. Habilitar Message Content Intent**

97>

98> Nas configurações do seu bot, role até **Privileged Gateway Intents** e habilite **Message Content Intent**.

99>

100> **3. Convidar o bot para seu servidor**

101>

102> Vá para **OAuth2 > URL Generator**. Selecione o escopo `bot` e habilite estas permissões:

103>

104> * View Channels

105> * Send Messages

106> * Send Messages in Threads

107> * Read Message History

108> * Attach Files

109> * Add Reactions

110>

111> Abra a URL gerada para adicionar o bot ao seu servidor.

112>

113> **4. Instalar o plugin**

114>

115> Inicie o Claude Code executando `claude` no seu terminal e, em seguida, digite isto no prompt dele:

116>

117> ```

118> /plugin install discord@claude-plugins-official

119> ```

120>

121> Se a instalação falhar, corresponda à mensagem que Claude Code relata:

122>

123> * `Marketplace "claude-plugins-official" not found`: adicione o marketplace com `/plugin marketplace add anthropics/claude-plugins-official`, depois tente novamente a instalação.

124> * `Plugin "<name>" not found in marketplace "claude-plugins-official"`: sua cópia local do catálogo do marketplace pode estar desatualizada. Atualize-a com `/plugin marketplace update claude-plugins-official` e, em seguida, tente novamente a instalação. Se a nova tentativa exibir a mesma mensagem, consulte [Plugin não encontrado no marketplace](https://code.claude.com/docs/pt/plugins/troubleshooting.md#plugin-not-found-in-marketplace).

125>

126> Quando a instalação solicitar um escopo de instalação, escolha a opção de escopo do usuário para que o plugin esteja disponível em todos os seus projetos. Verifique o resumo da instalação: se relatar `Run /reload-plugins to apply.`, consulte [Aplicar alterações de plugin sem reiniciar](https://code.claude.com/docs/pt/plugins/cli-reference.md#reload-plugins) para disponibilizar o comando de configuração do plugin.

127>

128> **5. Configurar seu token**

129>

130> Execute o comando de configuração com o token do bot que você copiou:

131>

132> ```

133> /discord:configure <token>

134> ```

135>

136> Isso o salva em `~/.claude/channels/discord/.env`. Você também pode definir `DISCORD_BOT_TOKEN` em seu ambiente de shell antes de iniciar Claude Code.

137>

138> **6. Reiniciar com canais habilitados**

139>

140> Saia do Claude Code e reinicie com a flag de canal. Isso conecta o plugin Discord para que seu bot possa receber e responder a mensagens:

141>

142> ```bash theme={null}

143> claude --channels plugin:discord@claude-plugins-official

144> ```

145>

146> **7. Emparelhar sua conta**

147>

148> Envie uma mensagem direta para seu bot no Discord. O bot responde com um código de emparelhamento.

149>

150> > [!NOTE]

151> >

152> > Se seu bot não responder, certifique-se de que Claude Code está em execução com `--channels` da etapa anterior. O bot só pode responder enquanto o canal está ativo.

153>

154> De volta ao Claude Code, execute:

155>

156> ```

157> /discord:access pair <code>

158> ```

159>

160> Em seguida, bloqueie o acesso para que apenas sua conta possa enviar mensagens:

161>

162> ```

163> /discord:access policy allowlist

164> ```

218 165 

219Os identificadores são números de telefone no formato `+country` ou e-mails de Apple ID como `user@example.com`.166> [tab] iMessage

167>

168> Veja o [código-fonte completo do plugin iMessage](https://github.com/anthropics/claude-plugins-official/tree/main/external_plugins/imessage).

169>

170> O canal iMessage lê seu banco de dados de Mensagens diretamente e envia respostas através de AppleScript. Requer macOS e não precisa de token de bot ou serviço externo.

171>

172> **1. Conceder Acesso Total ao Disco**

173>

174> O banco de dados de Mensagens em `~/Library/Messages/chat.db` é protegido pelo macOS. Na primeira vez que o servidor o lê, o macOS solicita acesso: clique em **Allow**. O prompt nomeia qualquer aplicativo que iniciou o Bun, como Terminal, iTerm ou seu IDE.

175>

176> Se o prompt não aparecer ou você clicou em Don't Allow, conceda acesso manualmente em **System Settings > Privacy & Security > Full Disk Access** e adicione seu terminal. Sem isso, o servidor sai imediatamente com `authorization denied`.

177>

178> **2. Instalar o plugin**

179>

180> Inicie o Claude Code executando `claude` no seu terminal e, em seguida, digite isto no prompt dele:

181>

182> ```

183> /plugin install imessage@claude-plugins-official

184> ```

185>

186> Se a instalação falhar, corresponda à mensagem que Claude Code relata:

187>

188> * `Marketplace "claude-plugins-official" not found`: adicione o marketplace com `/plugin marketplace add anthropics/claude-plugins-official`, depois tente novamente a instalação.

189> * `Plugin "<name>" not found in marketplace "claude-plugins-official"`: sua cópia local do catálogo do marketplace pode estar desatualizada. Atualize-a com `/plugin marketplace update claude-plugins-official` e, em seguida, tente novamente a instalação. Se a nova tentativa exibir a mesma mensagem, consulte [Plugin não encontrado no marketplace](https://code.claude.com/docs/pt/plugins/troubleshooting.md#plugin-not-found-in-marketplace).

190>

191> Quando a instalação solicitar um escopo de instalação, escolha a opção de escopo do usuário para que o plugin esteja disponível em todos os seus projetos.

192>

193> Se o resumo da instalação relatar `Run /reload-plugins to apply.`, você não precisa agir sobre isso aqui, porque reiniciar na próxima etapa pega o plugin.

194>

195> **3. Reiniciar com canais habilitados**

196>

197> Saia do Claude Code e reinicie com a flag de canal:

198>

199> ```bash theme={null}

200> claude --channels plugin:imessage@claude-plugins-official

201> ```

202>

203> **4. Envie uma mensagem para si mesmo**

204>

205> Abra Mensagens em qualquer dispositivo conectado à sua Apple ID e envie uma mensagem para si mesmo. Ela chega ao Claude imediatamente: o auto-chat ignora o controle de acesso sem configuração.

206>

207> > [!NOTE]

208> >

209> > A primeira resposta que Claude envia dispara um prompt de Automação do macOS perguntando se seu terminal pode controlar Mensagens. Clique em **OK**.

210>

211> **5. Permitir outros remetentes**

212>

213> Por padrão, apenas suas próprias mensagens passam. Para permitir que outro contato alcance Claude, adicione seu identificador:

214>

215> ```

216> /imessage:access allow +15551234567

217> ```

218>

219> Os identificadores são números de telefone no formato `+country` ou e-mails de Apple ID como `user@example.com`.

220 220 

221## Quickstart221## Quickstart

222 222 


308| `channelsEnabled` | Chave mestra. Deve ser `true` para que qualquer canal entregue mensagens. Bloqueia todos os canais, incluindo a flag de desenvolvimento quando desativado. Veja [Habilitar canais para sua organização](#enable-channels-for-your-organization). | claude.ai Team e Enterprise: canais bloqueados. Console: canais permitidos, a menos que sua organização implante configurações gerenciadas, caso em que os canais são bloqueados até que essa chave seja definida |308| `channelsEnabled` | Chave mestra. Deve ser `true` para que qualquer canal entregue mensagens. Bloqueia todos os canais, incluindo a flag de desenvolvimento quando desativado. Veja [Habilitar canais para sua organização](#enable-channels-for-your-organization). | claude.ai Team e Enterprise: canais bloqueados. Console: canais permitidos, a menos que sua organização implante configurações gerenciadas, caso em que os canais são bloqueados até que essa chave seja definida |

309| `allowedChannelPlugins` | Quais plugins podem se registrar uma vez que os canais estão habilitados. Substitui a lista mantida pela Anthropic quando definido. | A lista padrão da Anthropic se aplica |309| `allowedChannelPlugins` | Quais plugins podem se registrar uma vez que os canais estão habilitados. Substitui a lista mantida pela Anthropic quando definido. | A lista padrão da Anthropic se aplica |

310 310 

311Usuários Pro e Max sem uma organização ignoram essas verificações completamente: os canais estão disponíveis e os usuários optam por sessão com `--channels`.311Usuários Pro, Max e Ultra sem uma organização ignoram essas verificações completamente: os canais estão disponíveis e os usuários optam por sessão com `--channels`.

312 312 

313### Habilitar canais para sua organização313### Habilitar canais para sua organização

314 314 

chrome.md +1 −1

Details

39* [Google Chrome](https://www.google.com/chrome/), [Microsoft Edge](https://www.microsoft.com/edge) ou outro navegador baseado em Chromium, como Brave, Arc, Vivaldi ou Opera39* [Google Chrome](https://www.google.com/chrome/), [Microsoft Edge](https://www.microsoft.com/edge) ou outro navegador baseado em Chromium, como Brave, Arc, Vivaldi ou Opera

40* Extensão [Claude in Chrome](https://chromewebstore.google.com/detail/claude/fcoeoabgfenejglbffodgkkbkcdhcgfn) versão 1.0.36 ou superior, disponível na Chrome Web Store40* Extensão [Claude in Chrome](https://chromewebstore.google.com/detail/claude/fcoeoabgfenejglbffodgkkbkcdhcgfn) versão 1.0.36 ou superior, disponível na Chrome Web Store

41* [Claude Code](https://code.claude.com/docs/pt/quickstart.md#step-1-install-claude-code)41* [Claude Code](https://code.claude.com/docs/pt/quickstart.md#step-1-install-claude-code)

42* Um plano Anthropic direto (Pro, Max, Team ou Enterprise)42* Um plano Anthropic direto (Pro, Max, Ultra, Team ou Enterprise)

43 43 

44Em organizações Enterprise que têm HIPAA habilitado, o Claude in Chrome fica desativado por padrão, e um [Owner](https://code.claude.com/docs/pt/server-managed-settings.md#access-control) pode ativá-lo em [**Organization settings > Claude in Chrome**](https://claude.ai/admin-settings/browser-extension). Seu Business Associate Agreement (BAA) com a Anthropic não cobre dados enviados a sites de terceiros através do Claude in Chrome. Consulte o [Guia de Implementação](https://trust.anthropic.com/resources?s=l1wrssd9hsbi4gak0tp5a6\&name=%5Banthropic%5D-hipaa-ready-offering-implementation-guide) para obter uma lista de Serviços Elegíveis.44Em organizações Enterprise que têm HIPAA habilitado, o Claude in Chrome fica desativado por padrão, e um [Owner](https://code.claude.com/docs/pt/server-managed-settings.md#access-control) pode ativá-lo em [**Organization settings > Claude in Chrome**](https://claude.ai/admin-settings/browser-extension). Seu Business Associate Agreement (BAA) com a Anthropic não cobre dados enviados a sites de terceiros através do Claude in Chrome. Consulte o [Guia de Implementação](https://trust.anthropic.com/resources?s=l1wrssd9hsbi4gak0tp5a6\&name=%5Banthropic%5D-hipaa-ready-offering-implementation-guide) para obter uma lista de Serviços Elegíveis.

45 45 

Details

325 325 

326**7. Implante**326**7. Implante**

327 327 

328**ECS Fargate**328> [tab] ECS Fargate

329 329>

330Crie o cluster e um grupo de logs para stderr do gateway, que carrega seus eventos de auditoria e logs operacionais. A retenção é uma chamada separada, e sem uma CloudWatch mantém os logs para sempre; alinhe os 90 dias com sua política de retenção de auditoria:330> Crie o cluster e um grupo de logs para stderr do gateway, que carrega seus eventos de auditoria e logs operacionais. A retenção é uma chamada separada, e sem uma CloudWatch mantém os logs para sempre; alinhe os 90 dias com sua política de retenção de auditoria:

331 331>

332```bash theme={null}332> ```bash theme={null}

333aws ecs create-cluster --cluster-name claude-gateway333> aws ecs create-cluster --cluster-name claude-gateway

334aws logs create-log-group --log-group-name /ecs/claude-gateway334> aws logs create-log-group --log-group-name /ecs/claude-gateway

335aws logs put-retention-policy --log-group-name /ecs/claude-gateway \335> aws logs put-retention-policy --log-group-name /ecs/claude-gateway \

336 --retention-in-days 90336> --retention-in-days 90

337```337> ```

338 338>

339Escreva a definição de tarefa. A função de tarefa carrega a permissão Bedrock e a função de execução injeta os segredos; use os ARNs de segredo da etapa Secrets Manager:339> Escreva a definição de tarefa. A função de tarefa carrega a permissão Bedrock e a função de execução injeta os segredos; use os ARNs de segredo da etapa Secrets Manager:

340 340>

341```json claude-gateway-task.json theme={null}341> ```json claude-gateway-task.json theme={null}

342{342> {

343 "family": "claude-gateway",343> "family": "claude-gateway",

344 "networkMode": "awsvpc",344> "networkMode": "awsvpc",

345 "requiresCompatibilities": ["FARGATE"],345> "requiresCompatibilities": ["FARGATE"],

346 "cpu": "1024",346> "cpu": "1024",

347 "memory": "2048",347> "memory": "2048",

348 "runtimePlatform": { "cpuArchitecture": "X86_64", "operatingSystemFamily": "LINUX" },348> "runtimePlatform": { "cpuArchitecture": "X86_64", "operatingSystemFamily": "LINUX" },

349 "executionRoleArn": "arn:aws:iam::<account-id>:role/claude-gateway-execution",349> "executionRoleArn": "arn:aws:iam::<account-id>:role/claude-gateway-execution",

350 "taskRoleArn": "arn:aws:iam::<account-id>:role/claude-gateway-task",350> "taskRoleArn": "arn:aws:iam::<account-id>:role/claude-gateway-task",

351 "containerDefinitions": [351> "containerDefinitions": [

352 {352> {

353 "name": "gateway",353> "name": "gateway",

354 "image": "<account-id>.dkr.ecr.<region>.amazonaws.com/claude-gateway:<version>",354> "image": "<account-id>.dkr.ecr.<region>.amazonaws.com/claude-gateway:<version>",

355 "portMappings": [{ "containerPort": 8080 }],355> "portMappings": [{ "containerPort": 8080 }],

356 "secrets": [356> "secrets": [

357 { "name": "GATEWAY_JWT_SECRET", "valueFrom": "<gateway-jwt-secret ARN>" },357> { "name": "GATEWAY_JWT_SECRET", "valueFrom": "<gateway-jwt-secret ARN>" },

358 { "name": "OIDC_CLIENT_SECRET", "valueFrom": "<gateway-oidc-client-secret ARN>" },358> { "name": "OIDC_CLIENT_SECRET", "valueFrom": "<gateway-oidc-client-secret ARN>" },

359 { "name": "GATEWAY_POSTGRES_URL", "valueFrom": "<gateway-postgres-url ARN>" }359> { "name": "GATEWAY_POSTGRES_URL", "valueFrom": "<gateway-postgres-url ARN>" }

360 ],360> ],

361 "logConfiguration": {361> "logConfiguration": {

362 "logDriver": "awslogs",362> "logDriver": "awslogs",

363 "options": {363> "options": {

364 "awslogs-group": "/ecs/claude-gateway",364> "awslogs-group": "/ecs/claude-gateway",

365 "awslogs-region": "<region>",365> "awslogs-region": "<region>",

366 "awslogs-stream-prefix": "gateway"366> "awslogs-stream-prefix": "gateway"

367 }367> }

368 }368> }

369 }369> }

370 ]370> ]

371}371> }

372```372> ```

373 373>

374Registre-a:374> Registre-a:

375 375>

376```bash theme={null}376> ```bash theme={null}

377aws ecs register-task-definition --cli-input-json file://claude-gateway-task.json377> aws ecs register-task-definition --cli-input-json file://claude-gateway-task.json

378```378> ```

379 379>

380Coloque um ALB interno na frente com um grupo de destino que verifica a saúde do gateway. `--ip-address-type ipv4` importa: um ALB dual-stack interno publica registros AAAA de intervalo público, que a verificação de rede privada `/login` rejeita:380> Coloque um ALB interno na frente com um grupo de destino que verifica a saúde do gateway. `--ip-address-type ipv4` importa: um ALB dual-stack interno publica registros AAAA de intervalo público, que a verificação de rede privada `/login` rejeita:

381 381>

382```bash theme={null}382> ```bash theme={null}

383ALB_ARN="$(aws elbv2 create-load-balancer --name claude-gateway \383> ALB_ARN="$(aws elbv2 create-load-balancer --name claude-gateway \

384 --scheme internal --type application --ip-address-type ipv4 \384> --scheme internal --type application --ip-address-type ipv4 \

385 --subnets $PRIVATE_SUBNETS --security-groups "$ALB_SG" \385> --subnets $PRIVATE_SUBNETS --security-groups "$ALB_SG" \

386 --query 'LoadBalancers[0].LoadBalancerArn' --output text)"386> --query 'LoadBalancers[0].LoadBalancerArn' --output text)"

387 387>

388TG_ARN="$(aws elbv2 create-target-group --name claude-gateway \388> TG_ARN="$(aws elbv2 create-target-group --name claude-gateway \

389 --protocol HTTP --port 8080 --vpc-id "$VPC_ID" --target-type ip \389> --protocol HTTP --port 8080 --vpc-id "$VPC_ID" --target-type ip \

390 --health-check-path /readyz \390> --health-check-path /readyz \

391 --query 'TargetGroups[0].TargetGroupArn' --output text)"391> --query 'TargetGroups[0].TargetGroupArn' --output text)"

392```392> ```

393 393>

394Adicione o listener HTTPS. `--ssl-policy` fixa um piso TLS moderno, pois omiti-lo volta para o padrão legado `ELBSecurityPolicy-2016-08`, que ainda aceita TLS 1.0/1.1.394> Adicione o listener HTTPS. `--ssl-policy` fixa um piso TLS moderno, pois omiti-lo volta para o padrão legado `ELBSecurityPolicy-2016-08`, que ainda aceita TLS 1.0/1.1.

395 395>

396O ALB fecha uma conexão após 60 segundos sem dados por padrão. Os pings de keepalive do gateway mantêm streams dentro desse padrão, portanto aumentar o tempo limite adiciona margem acima da cadência de ping; a linha [Troubleshooting](#troubleshooting) em streams descartados cobre o mecanismo e gateways mais antigos. Os comandos abaixo adicionam o listener e aumentam o tempo limite:396> O ALB fecha uma conexão após 60 segundos sem dados por padrão. Os pings de keepalive do gateway mantêm streams dentro desse padrão, portanto aumentar o tempo limite adiciona margem acima da cadência de ping; a linha [Troubleshooting](#troubleshooting) em streams descartados cobre o mecanismo e gateways mais antigos. Os comandos abaixo adicionam o listener e aumentam o tempo limite:

397 397>

398```bash theme={null}398> ```bash theme={null}

399aws elbv2 create-listener --load-balancer-arn "$ALB_ARN" \399> aws elbv2 create-listener --load-balancer-arn "$ALB_ARN" \

400 --protocol HTTPS --port 443 \400> --protocol HTTPS --port 443 \

401 --ssl-policy ELBSecurityPolicy-TLS13-1-2-2021-06 \401> --ssl-policy ELBSecurityPolicy-TLS13-1-2-2021-06 \

402 --certificates CertificateArn=<your-acm-certificate-arn> \402> --certificates CertificateArn=<your-acm-certificate-arn> \

403 --default-actions Type=forward,TargetGroupArn="$TG_ARN"403> --default-actions Type=forward,TargetGroupArn="$TG_ARN"

404 404>

405aws elbv2 modify-load-balancer-attributes --load-balancer-arn "$ALB_ARN" \405> aws elbv2 modify-load-balancer-attributes --load-balancer-arn "$ALB_ARN" \

406 --attributes Key=idle_timeout.timeout_seconds,Value=3600406> --attributes Key=idle_timeout.timeout_seconds,Value=3600

407```407> ```

408 408>

409Crie o serviço. O disjuntor de implantação reverte uma implantação cujas tarefas continuam falhando, de uma imagem ruim ou uma configuração não inicializável, para o último estado estável em vez de relançar tarefas falhando para sempre:409> Crie o serviço. O disjuntor de implantação reverte uma implantação cujas tarefas continuam falhando, de uma imagem ruim ou uma configuração não inicializável, para o último estado estável em vez de relançar tarefas falhando para sempre:

410 410>

411```bash theme={null}411> ```bash theme={null}

412aws ecs create-service --cluster claude-gateway --service-name claude-gateway \412> aws ecs create-service --cluster claude-gateway --service-name claude-gateway \

413 --task-definition claude-gateway --desired-count 1 --launch-type FARGATE \413> --task-definition claude-gateway --desired-count 1 --launch-type FARGATE \

414 --deployment-configuration "deploymentCircuitBreaker={enable=true,rollback=true}" \414> --deployment-configuration "deploymentCircuitBreaker={enable=true,rollback=true}" \

415 --health-check-grace-period-seconds 60 \415> --health-check-grace-period-seconds 60 \

416 --network-configuration "awsvpcConfiguration={subnets=[$(echo $PRIVATE_SUBNETS | tr ' ' ',')],securityGroups=[$GW_SG],assignPublicIp=DISABLED}" \416> --network-configuration "awsvpcConfiguration={subnets=[$(echo $PRIVATE_SUBNETS | tr ' ' ',')],securityGroups=[$GW_SG],assignPublicIp=DISABLED}" \

417 --load-balancers "targetGroupArn=$TG_ARN,containerName=gateway,containerPort=8080"417> --load-balancers "targetGroupArn=$TG_ARN,containerName=gateway,containerPort=8080"

418```418> ```

419 419>

420O período de graça de 60 segundos dá a uma tarefa fria tempo para extrair a imagem, conectar ao store e responder sua primeira verificação de saúde antes de ECS começar a contar falhas contra a implantação.420> O período de graça de 60 segundos dá a uma tarefa fria tempo para extrair a imagem, conectar ao store e responder sua primeira verificação de saúde antes de ECS começar a contar falhas contra a implantação.

421 421>

422A verificação de saúde do grupo de destino em `GET /readyz` verifica se o store é acessível, portanto uma tarefa que não consegue alcançar Postgres nunca entra em rotação. Para manter tarefas passando a verificação através de uma interrupção curta do banco de dados, como um failover RDS, defina `store.readiness_grace_seconds` conforme descrito em [Comportamento de interrupção](https://code.claude.com/docs/pt/claude-apps-gateway-deploy.md#outage-behavior), que também cobre a alternativa `/healthz`.422> A verificação de saúde do grupo de destino em `GET /readyz` verifica se o store é acessível, portanto uma tarefa que não consegue alcançar Postgres nunca entra em rotação. Para manter tarefas passando a verificação através de uma interrupção curta do banco de dados, como um failover RDS, defina `store.readiness_grace_seconds` conforme descrito em [Comportamento de interrupção](https://code.claude.com/docs/pt/claude-apps-gateway-deploy.md#outage-behavior), que também cobre a alternativa `/healthz`.

423 423>

424As tarefas são executadas em subnets privadas sem IP público, portanto toda saída (para Bedrock, seu IdP, Secrets Manager, ECR e CloudWatch Logs) passa pelo gateway NAT. Para manter o tráfego Bedrock fora do caminho público, crie um endpoint VPC de interface `bedrock-runtime` e aponte o `base_url` do upstream para ele, conforme mostrado na [referência de upstream Bedrock](https://code.claude.com/docs/pt/claude-apps-gateway-config.md#amazon-bedrock); o IdP ainda precisa de saída de internet.424> As tarefas são executadas em subnets privadas sem IP público, portanto toda saída (para Bedrock, seu IdP, Secrets Manager, ECR e CloudWatch Logs) passa pelo gateway NAT. Para manter o tráfego Bedrock fora do caminho público, crie um endpoint VPC de interface `bedrock-runtime` e aponte o `base_url` do upstream para ele, conforme mostrado na [referência de upstream Bedrock](https://code.claude.com/docs/pt/claude-apps-gateway-config.md#amazon-bedrock); o IdP ainda precisa de saída de internet.

425 425>

426Termine dando aos desenvolvedores um nome de host privadamente resolvível: em uma zona hospedada privada Route 53, alias o nome DNS interno do gateway para o ALB e defina `listen.public_url` para esse nome de host. O próprio nome `*.elb.amazonaws.com` do ALB resolve para endereços privados em um ALB interno, mas não pode carregar seu certificado ACM, portanto use seu próprio nome.426> Termine dando aos desenvolvedores um nome de host privadamente resolvível: em uma zona hospedada privada Route 53, alias o nome DNS interno do gateway para o ALB e defina `listen.public_url` para esse nome de host. O próprio nome `*.elb.amazonaws.com` do ALB resolve para endereços privados em um ALB interno, mas não pode carregar seu certificado ACM, portanto use seu próprio nome.

427 427>

428Atualize o URI de redirecionamento autorizado do cliente OAuth para `<public_url>/oauth/callback` antes do primeiro login. Após alterar `public_url`, reconstrua e envie a imagem sob uma nova tag, registre uma nova revisão de definição de tarefa e reimplante. No ECS a configuração vive no `gateway.yaml` incorporado da imagem, e o gateway constrói sua origem pública apenas a partir dessa configuração, ignorando `X-Forwarded-Host` e `X-Forwarded-Proto`. `X-Forwarded-For` é honrado para IPs de cliente apenas quando `listen.trusted_proxies` é definido.428> Atualize o URI de redirecionamento autorizado do cliente OAuth para `<public_url>/oauth/callback` antes do primeiro login. Após alterar `public_url`, reconstrua e envie a imagem sob uma nova tag, registre uma nova revisão de definição de tarefa e reimplante. No ECS a configuração vive no `gateway.yaml` incorporado da imagem, e o gateway constrói sua origem pública apenas a partir dessa configuração, ignorando `X-Forwarded-Host` e `X-Forwarded-Proto`. `X-Forwarded-For` é honrado para IPs de cliente apenas quando `listen.trusted_proxies` é definido.

429 

430**EKS**

431 

432Esta trilha precisa de `kubectl` e `eksctl` instalados localmente, e um cluster EKS existente com um provedor OIDC IAM e o AWS Load Balancer Controller instalado. O cluster deve estar em `$VPC_ID` para que os pods possam alcançar o endpoint privado RDS, e o grupo de segurança `claude-gateway-db` deve admitir o grupo de segurança do pod ou nó do cluster no lugar de `$GW_SG`.

433 

434No EKS o gateway obtém suas credenciais Bedrock através de IRSA em vez das funções ECS. A política de confiança `ecs-tasks.amazonaws.com` da etapa IAM não se aplica aqui; IRSA precisa de uma função cuja política de confiança federe no provedor OIDC do cluster, escopo para `system:serviceaccount:claude-gateway:gateway`. `eksctl create iamserviceaccount` cria essa função, anexa as políticas e anota a conta de serviço Kubernetes com o ARN da função em uma etapa. Transforme os dois documentos de política da etapa IAM em políticas gerenciadas que ele pode anexar:

435 

436```bash theme={null}

437BEDROCK_POLICY_ARN="$(aws iam create-policy --policy-name claude-gateway-bedrock-invoke \

438 --policy-document file://bedrock-invoke.json --query Policy.Arn --output text)"

439SECRETS_POLICY_ARN="$(aws iam create-policy --policy-name claude-gateway-secrets-read \

440 --policy-document file://secrets-read.json --query Policy.Arn --output text)"

441 

442kubectl create namespace claude-gateway

443eksctl create iamserviceaccount --cluster <your-cluster> --region "$AWS_REGION" \

444 --namespace claude-gateway --name gateway --role-name claude-gateway \

445 --attach-policy-arn "$BEDROCK_POLICY_ARN" \

446 --attach-policy-arn "$SECRETS_POLICY_ARN" \

447 --approve

448```

449 

450A política de segredos é necessária apenas quando os pods leem o Secrets Manager eles mesmos, como o provedor AWS do driver CSI Secrets Store faz usando a conta de serviço do pod de montagem; remova-a se você criar os Kubernetes Secrets de outra forma. O provedor precisa de ambas as ações da política: ele chama `DescribeSecret` quando reconcilia segredos rotacionados, portanto uma concessão somente `GetSecretValue` monta na primeira implantação mas para de pegar rotações.

451 

452Implante o gateway como um Deployment padrão mais um Service e um Ingress, conforme descrito em [Implantação Kubernetes](https://code.claude.com/docs/pt/claude-apps-gateway-deploy.md#kubernetes), com:

453 

454* `serviceAccountName: gateway`

455* `gateway.yaml` montado de um ConfigMap e os segredos montados em `/secrets`

456* a sonda de prontidão apontada para `GET /readyz`

457 

458Para o front-end, um Ingress gerenciado pelo AWS Load Balancer Controller provisiona o ALB interno. Anote-o com:

459 

460* `alb.ingress.kubernetes.io/scheme: internal` e `alb.ingress.kubernetes.io/target-type: ip`

461* `alb.ingress.kubernetes.io/ip-address-type: ipv4`, para que nenhum registro AAAA de intervalo público seja publicado para a verificação de rede privada `/login` [rejeitar](https://code.claude.com/docs/pt/claude-apps-gateway#prerequisites)

462* `alb.ingress.kubernetes.io/inbound-cidrs: <your-corporate-cidr>`, para que o grupo de segurança frontend gerenciado pelo controlador admita apenas sua rede corporativa no lugar de seu padrão `0.0.0.0/0`

463* `alb.ingress.kubernetes.io/certificate-arn` com o certificado ACM

464* `alb.ingress.kubernetes.io/ssl-policy: ELBSecurityPolicy-TLS13-1-2-2021-06`, para que o listener não volte para a política padrão legada que aceita TLS 1.0 e 1.1

465* `alb.ingress.kubernetes.io/load-balancer-attributes: idle_timeout.timeout_seconds=3600`, uma margem acima do keepalive de streaming do gateway; consulte [Troubleshooting](#troubleshooting)

466 429 

467Com IRSA, o AWS SDK lê um token de conta de serviço projetado e o troca com AWS STS, portanto o pod nunca precisa do serviço de metadados da instância EC2; uma NetworkPolicy de saída pode bloquear `169.254.169.254` para pods do gateway. O problema de limite de hop do nó em [Troubleshooting](#troubleshooting) abaixo se aplica apenas a clusters que pulam IRSA e dependem de funções de instância de nó.430> [tab] EKS

431>

432> Esta trilha precisa de `kubectl` e `eksctl` instalados localmente, e um cluster EKS existente com um provedor OIDC IAM e o AWS Load Balancer Controller instalado. O cluster deve estar em `$VPC_ID` para que os pods possam alcançar o endpoint privado RDS, e o grupo de segurança `claude-gateway-db` deve admitir o grupo de segurança do pod ou nó do cluster no lugar de `$GW_SG`.

433>

434> No EKS o gateway obtém suas credenciais Bedrock através de IRSA em vez das funções ECS. A política de confiança `ecs-tasks.amazonaws.com` da etapa IAM não se aplica aqui; IRSA precisa de uma função cuja política de confiança federe no provedor OIDC do cluster, escopo para `system:serviceaccount:claude-gateway:gateway`. `eksctl create iamserviceaccount` cria essa função, anexa as políticas e anota a conta de serviço Kubernetes com o ARN da função em uma etapa. Transforme os dois documentos de política da etapa IAM em políticas gerenciadas que ele pode anexar:

435>

436> ```bash theme={null}

437> BEDROCK_POLICY_ARN="$(aws iam create-policy --policy-name claude-gateway-bedrock-invoke \

438> --policy-document file://bedrock-invoke.json --query Policy.Arn --output text)"

439> SECRETS_POLICY_ARN="$(aws iam create-policy --policy-name claude-gateway-secrets-read \

440> --policy-document file://secrets-read.json --query Policy.Arn --output text)"

441>

442> kubectl create namespace claude-gateway

443> eksctl create iamserviceaccount --cluster <your-cluster> --region "$AWS_REGION" \

444> --namespace claude-gateway --name gateway --role-name claude-gateway \

445> --attach-policy-arn "$BEDROCK_POLICY_ARN" \

446> --attach-policy-arn "$SECRETS_POLICY_ARN" \

447> --approve

448> ```

449>

450> A política de segredos é necessária apenas quando os pods leem o Secrets Manager eles mesmos, como o provedor AWS do driver CSI Secrets Store faz usando a conta de serviço do pod de montagem; remova-a se você criar os Kubernetes Secrets de outra forma. O provedor precisa de ambas as ações da política: ele chama `DescribeSecret` quando reconcilia segredos rotacionados, portanto uma concessão somente `GetSecretValue` monta na primeira implantação mas para de pegar rotações.

451>

452> Implante o gateway como um Deployment padrão mais um Service e um Ingress, conforme descrito em [Implantação Kubernetes](https://code.claude.com/docs/pt/claude-apps-gateway-deploy.md#kubernetes), com:

453>

454> * `serviceAccountName: gateway`

455> * `gateway.yaml` montado de um ConfigMap e os segredos montados em `/secrets`

456> * a sonda de prontidão apontada para `GET /readyz`

457>

458> Para o front-end, um Ingress gerenciado pelo AWS Load Balancer Controller provisiona o ALB interno. Anote-o com:

459>

460> * `alb.ingress.kubernetes.io/scheme: internal` e `alb.ingress.kubernetes.io/target-type: ip`

461> * `alb.ingress.kubernetes.io/ip-address-type: ipv4`, para que nenhum registro AAAA de intervalo público seja publicado para a verificação de rede privada `/login` [rejeitar](https://code.claude.com/docs/pt/claude-apps-gateway#prerequisites)

462> * `alb.ingress.kubernetes.io/inbound-cidrs: <your-corporate-cidr>`, para que o grupo de segurança frontend gerenciado pelo controlador admita apenas sua rede corporativa no lugar de seu padrão `0.0.0.0/0`

463> * `alb.ingress.kubernetes.io/certificate-arn` com o certificado ACM

464> * `alb.ingress.kubernetes.io/ssl-policy: ELBSecurityPolicy-TLS13-1-2-2021-06`, para que o listener não volte para a política padrão legada que aceita TLS 1.0 e 1.1

465> * `alb.ingress.kubernetes.io/load-balancer-attributes: idle_timeout.timeout_seconds=3600`, uma margem acima do keepalive de streaming do gateway; consulte [Troubleshooting](#troubleshooting)

466>

467> Com IRSA, o AWS SDK lê um token de conta de serviço projetado e o troca com AWS STS, portanto o pod nunca precisa do serviço de metadados da instância EC2; uma NetworkPolicy de saída pode bloquear `169.254.169.254` para pods do gateway. O problema de limite de hop do nó em [Troubleshooting](#troubleshooting) abaixo se aplica apenas a clusters que pulam IRSA e dependem de funções de instância de nó.

468 468 

469**8. Envie a URL do gateway para máquinas de desenvolvedores**469**8. Envie a URL do gateway para máquinas de desenvolvedores**

470 470 

Details

203 203 

204**7. Implantar**204**7. Implantar**

205 205 

206**Cloud Run**206> [tab] Cloud Run

207 

208O comando abaixo implanta para produção atrás de um balanceador de carga interno.

209 

210```bash theme={null}

211gcloud run deploy claude-gateway \

212 --image="${REGION}-docker.pkg.dev/${PROJECT_ID}/claude-gateway/gateway:<version>" \

213 --region="$REGION" \

214 --service-account="claude-gateway@${PROJECT_ID}.iam.gserviceaccount.com" \

215 --min-instances=1 \

216 --max-instances=8 \

217 --timeout=3600 \

218 --ingress=internal \

219 --network="$VPC" --subnet=cc-gateway-subnet --vpc-egress=private-ranges-only \

220 --set-secrets=/etc/claude/gateway.yaml=gateway-config:latest,GATEWAY_JWT_SECRET=gateway-jwt-secret:latest,OIDC_CLIENT_SECRET=gateway-oidc-client-secret:latest,GATEWAY_POSTGRES_URL=gateway-postgres-url:latest \

221 --no-invoker-iam-check

222```

223 

224Egresso VPC direto, via `--network`, `--subnet` e `--vpc-egress=private-ranges-only`, permite que o serviço alcance o IP privado do Cloud SQL diretamente. Egresso público para os endpoints do Agent Platform do Google Cloud e `accounts.google.com` vai diretamente para a internet em vez de através do VPC, portanto nenhum Cloud NAT é necessário.

225 

226> [!NOTE]

227>207>

228> Cada instância mantém até [`store.max_connections`](https://code.claude.com/docs/pt/claude-apps-gateway-config#store) conexões Postgres, cinco por padrão. Use [Dimensionar o pool de conexões](https://code.claude.com/docs/pt/claude-apps-gateway-deploy.md#size-the-connection-pool) para comparar `--max-instances=8` com as conexões que seu banco de dados ainda tem disponíveis para o gateway, e inclua as instâncias extras que uma atualização gradual inicia.208> O comando abaixo implanta para produção atrás de um balanceador de carga interno.

229 209>

230A verificação de IAM do invoker deve estar aberta ou desabilitada. O gateway executa seu próprio OIDC e seus clientes não carregam nenhum token GCP, portanto a verificação de invoker do Cloud Run tem que admitir solicitações não autenticadas. A autenticação OIDC do gateway autentica a solicitação uma vez que ela alcança o contêiner, com `allowed_email_domains` controlando quais domínios podem fazer login.210> ```bash theme={null}

231 211> gcloud run deploy claude-gateway \

232Dois sinalizadores admitem solicitações não autenticadas:212> --image="${REGION}-docker.pkg.dev/${PROJECT_ID}/claude-gateway/gateway:<version>" \

233 213> --region="$REGION" \

234* `--no-invoker-iam-check`: desabilita a verificação sem nenhuma vinculação `allUsers` para gerenciar, e funciona sob Domain Restricted Sharing214> --service-account="claude-gateway@${PROJECT_ID}.iam.gserviceaccount.com" \

235* `--allow-unauthenticated`: concede ao `allUsers` a função `run.invoker`; use-o se sua organização não permitir `--no-invoker-iam-check`215> --min-instances=1 \

236 216> --max-instances=8 \

237Restrição de ingresso via `--ingress` é uma camada separada e independente da verificação de invoker; mantenha-a definida para limitar o serviço à sua rede corporativa.217> --timeout=3600 \

238 218> --ingress=internal \

239Por padrão, a URL `*.run.app` do Cloud Run resolve para um endereço público, que a verificação [rede privada](https://code.claude.com/docs/pt/claude-apps-gateway#prerequisites) do `/login` rejeita. Duas topologias fornecem aos desenvolvedores um nome de host resolvível privadamente, e o Cloud Run não provisiona nenhuma para você:219> --network="$VPC" --subnet=cc-gateway-subnet --vpc-egress=private-ranges-only \

240 220> --set-secrets=/etc/claude/gateway.yaml=gateway-config:latest,GATEWAY_JWT_SECRET=gateway-jwt-secret:latest,OIDC_CLIENT_SECRET=gateway-oidc-client-secret:latest,GATEWAY_POSTGRES_URL=gateway-postgres-url:latest \

241* **Internal Application Load Balancer**, a topologia que o `gateway.yaml` desta página assume: provisione um Internal Application Load Balancer na frente do serviço com um nome DNS interno e certificado, e defina `listen.public_url` para esse nome de host. A configuração de ingresso `internal` já admite tráfego de Internal Application Load Balancers; `internal-and-cloud-load-balancing` admite adicionalmente External Application Load Balancers, cujos endereços públicos a verificação de rede privada do `/login` rejeita, portanto nenhuma topologia desta página precisa dela.221> --no-invoker-iam-check

242* **Ingresso somente interno sem balanceador de carga**: mantenha o comando de implantação como está e deixe `listen.public_url` como a URL `*.run.app`, o padrão nos [ativos de referência](#terraform-reference) abaixo. Para `*.run.app` resolver privadamente, sua equipe de rede deve já operar um endpoint Private Service Connect para APIs do Google, uma zona privada Cloud DNS resolvendo `*.run.app` para ele, e roteamento no local para esse endpoint.222> ```

243 223>

244O [guia de rede privada do Google para Cloud Run](https://cloud.google.com/run/docs/securing/private-networking) cobre a infraestrutura que ambas as opções precisam. Verifique o login uma vez que o gateway esteja servindo em um nome de host privado; até então, confirme que o contêiner inicializou a partir de seus logs no Cloud Run.224> Egresso VPC direto, via `--network`, `--subnet` e `--vpc-egress=private-ranges-only`, permite que o serviço alcance o IP privado do Cloud SQL diretamente. Egresso público para os endpoints do Agent Platform do Google Cloud e `accounts.google.com` vai diretamente para a internet em vez de através do VPC, portanto nenhum Cloud NAT é necessário.

245 225>

246Atualize o URI de redirecionamento autorizado do cliente OAuth para `<public_url>/oauth/callback` antes do primeiro login. Reimplante após alterar `public_url`, porque o gateway constrói sua origem pública apenas a partir dessa configuração e ignora `X-Forwarded-Host` e `X-Forwarded-Proto`. `X-Forwarded-For` é honrado para IPs de cliente apenas quando `listen.trusted_proxies` está definido.226> > [!NOTE]

247 227> >

248**GKE**228> > Cada instância mantém até [`store.max_connections`](https://code.claude.com/docs/pt/claude-apps-gateway-config#store) conexões Postgres, cinco por padrão. Use [Dimensionar o pool de conexões](https://code.claude.com/docs/pt/claude-apps-gateway-deploy.md#size-the-connection-pool) para comparar `--max-instances=8` com as conexões que seu banco de dados ainda tem disponíveis para o gateway, e inclua as instâncias extras que uma atualização gradual inicia.

249 229>

250O cluster deve estar no `$VPC` criado no passo Cloud SQL para que os pods possam alcançar o IP privado do banco de dados; peering de VPC sozinho não funciona, porque o IP privado do Cloud SQL é em si uma rede peered e peering é não-transitivo. Para criar um novo cluster nesse VPC, passe `--network="$VPC" --subnetwork=cc-gateway-subnet` para `gcloud container clusters create`.230> A verificação de IAM do invoker deve estar aberta ou desabilitada. O gateway executa seu próprio OIDC e seus clientes não carregam nenhum token GCP, portanto a verificação de invoker do Cloud Run tem que admitir solicitações não autenticadas. A autenticação OIDC do gateway autentica a solicitação uma vez que ela alcança o contêiner, com `allowed_email_domains` controlando quais domínios podem fazer login.

251 231>

252Habilite Workload Identity no cluster e seus node pools, depois vincule a conta de serviço do Google à conta de serviço do Kubernetes para que os pods herdem suas credenciais:232> Dois sinalizadores admitem solicitações não autenticadas:

253 233>

254```bash theme={null}234> * `--no-invoker-iam-check`: desabilita a verificação sem nenhuma vinculação `allUsers` para gerenciar, e funciona sob Domain Restricted Sharing

255gcloud container clusters update <cluster> --region="$REGION" \235> * `--allow-unauthenticated`: concede ao `allUsers` a função `run.invoker`; use-o se sua organização não permitir `--no-invoker-iam-check`

256 --workload-pool="${PROJECT_ID}.svc.id.goog"236>

257# On a Standard cluster, existing node pools also need GKE_METADATA;237> Restrição de ingresso via `--ingress` é uma camada separada e independente da verificação de invoker; mantenha-a definida para limitar o serviço à sua rede corporativa.

258# Autopilot enables this by default.238>

259gcloud container node-pools update <pool> --cluster=<cluster> \239> Por padrão, a URL `*.run.app` do Cloud Run resolve para um endereço público, que a verificação [rede privada](https://code.claude.com/docs/pt/claude-apps-gateway#prerequisites) do `/login` rejeita. Duas topologias fornecem aos desenvolvedores um nome de host resolvível privadamente, e o Cloud Run não provisiona nenhuma para você:

260 --region="$REGION" --workload-metadata=GKE_METADATA240>

261 241> * **Internal Application Load Balancer**, a topologia que o `gateway.yaml` desta página assume: provisione um Internal Application Load Balancer na frente do serviço com um nome DNS interno e certificado, e defina `listen.public_url` para esse nome de host. A configuração de ingresso `internal` já admite tráfego de Internal Application Load Balancers; `internal-and-cloud-load-balancing` admite adicionalmente External Application Load Balancers, cujos endereços públicos a verificação de rede privada do `/login` rejeita, portanto nenhuma topologia desta página precisa dela.

262kubectl create namespace claude-gateway242> * **Ingresso somente interno sem balanceador de carga**: mantenha o comando de implantação como está e deixe `listen.public_url` como a URL `*.run.app`, o padrão nos [ativos de referência](#terraform-reference) abaixo. Para `*.run.app` resolver privadamente, sua equipe de rede deve já operar um endpoint Private Service Connect para APIs do Google, uma zona privada Cloud DNS resolvendo `*.run.app` para ele, e roteamento no local para esse endpoint.

263kubectl create serviceaccount gateway -n claude-gateway243>

264 244> O [guia de rede privada do Google para Cloud Run](https://cloud.google.com/run/docs/securing/private-networking) cobre a infraestrutura que ambas as opções precisam. Verifique o login uma vez que o gateway esteja servindo em um nome de host privado; até então, confirme que o contêiner inicializou a partir de seus logs no Cloud Run.

265gcloud iam service-accounts add-iam-policy-binding \245>

266 "claude-gateway@${PROJECT_ID}.iam.gserviceaccount.com" \246> Atualize o URI de redirecionamento autorizado do cliente OAuth para `<public_url>/oauth/callback` antes do primeiro login. Reimplante após alterar `public_url`, porque o gateway constrói sua origem pública apenas a partir dessa configuração e ignora `X-Forwarded-Host` e `X-Forwarded-Proto`. `X-Forwarded-For` é honrado para IPs de cliente apenas quando `listen.trusted_proxies` está definido.

267 --role roles/iam.workloadIdentityUser \

268 --member "serviceAccount:${PROJECT_ID}.svc.id.goog[claude-gateway/gateway]"

269 

270kubectl annotate serviceaccount gateway -n claude-gateway \

271 iam.gke.io/gcp-service-account="claude-gateway@${PROJECT_ID}.iam.gserviceaccount.com"

272```

273 

274Implante o gateway como um Deployment padrão mais um Service e um Ingress interno, classe `gce-internal`, conforme descrito em [Implantação Kubernetes](https://code.claude.com/docs/pt/claude-apps-gateway-deploy.md#kubernetes), com:

275 

276* `serviceAccountName: gateway`

277* o driver CSI do Secret Manager montando segredos em `/secrets`

278* a sonda de prontidão apontada para `GET /readyz`

279 

280Anexe um BackendConfig com um `timeoutSec` elevado ao Service do gateway: o serviço backend do balanceador de carga atrás do GKE Ingress padrão para um tempo limite de 30 segundos, que corta respostas de streaming longas.

281 

282Não aplique uma NetworkPolicy de egresso que bloqueie `169.254.169.254` em um cluster Workload Identity; o pod deve alcançar o servidor de metadados para credenciais. A [proteção SSRF](https://code.claude.com/docs/pt/claude-apps-gateway-deploy.md#threat-model-summary) integrada do gateway é a defesa lá.

283 247 

284O gateway registra um aviso de inicialização que o endpoint de metadados é alcançável e sugere aplicar uma NetworkPolicy de egresso. Sob Workload Identity esse aviso é esperado, porque o pod precisa do endpoint.248> [tab] GKE

249>

250> O cluster deve estar no `$VPC` criado no passo Cloud SQL para que os pods possam alcançar o IP privado do banco de dados; peering de VPC sozinho não funciona, porque o IP privado do Cloud SQL é em si uma rede peered e peering é não-transitivo. Para criar um novo cluster nesse VPC, passe `--network="$VPC" --subnetwork=cc-gateway-subnet` para `gcloud container clusters create`.

251>

252> Habilite Workload Identity no cluster e seus node pools, depois vincule a conta de serviço do Google à conta de serviço do Kubernetes para que os pods herdem suas credenciais:

253>

254> ```bash theme={null}

255> gcloud container clusters update <cluster> --region="$REGION" \

256> --workload-pool="${PROJECT_ID}.svc.id.goog"

257> # On a Standard cluster, existing node pools also need GKE_METADATA;

258> # Autopilot enables this by default.

259> gcloud container node-pools update <pool> --cluster=<cluster> \

260> --region="$REGION" --workload-metadata=GKE_METADATA

261>

262> kubectl create namespace claude-gateway

263> kubectl create serviceaccount gateway -n claude-gateway

264>

265> gcloud iam service-accounts add-iam-policy-binding \

266> "claude-gateway@${PROJECT_ID}.iam.gserviceaccount.com" \

267> --role roles/iam.workloadIdentityUser \

268> --member "serviceAccount:${PROJECT_ID}.svc.id.goog[claude-gateway/gateway]"

269>

270> kubectl annotate serviceaccount gateway -n claude-gateway \

271> iam.gke.io/gcp-service-account="claude-gateway@${PROJECT_ID}.iam.gserviceaccount.com"

272> ```

273>

274> Implante o gateway como um Deployment padrão mais um Service e um Ingress interno, classe `gce-internal`, conforme descrito em [Implantação Kubernetes](https://code.claude.com/docs/pt/claude-apps-gateway-deploy.md#kubernetes), com:

275>

276> * `serviceAccountName: gateway`

277> * o driver CSI do Secret Manager montando segredos em `/secrets`

278> * a sonda de prontidão apontada para `GET /readyz`

279>

280> Anexe um BackendConfig com um `timeoutSec` elevado ao Service do gateway: o serviço backend do balanceador de carga atrás do GKE Ingress padrão para um tempo limite de 30 segundos, que corta respostas de streaming longas.

281>

282> Não aplique uma NetworkPolicy de egresso que bloqueie `169.254.169.254` em um cluster Workload Identity; o pod deve alcançar o servidor de metadados para credenciais. A [proteção SSRF](https://code.claude.com/docs/pt/claude-apps-gateway-deploy.md#threat-model-summary) integrada do gateway é a defesa lá.

283>

284> O gateway registra um aviso de inicialização que o endpoint de metadados é alcançável e sugere aplicar uma NetworkPolicy de egresso. Sob Workload Identity esse aviso é esperado, porque o pod precisa do endpoint.

285 285 

286**8. Enviar a URL do gateway para máquinas de desenvolvedores**286**8. Enviar a URL do gateway para máquinas de desenvolvedores**

287 287 

Details

8 8 

9> [!NOTE]9> [!NOTE]

10>10>

11> As sessões na nuvem estão disponíveis nos planos Pro, Max e Team, e para usuários Enterprise com assentos premium ou assentos Chat + Claude Code. Se [funções personalizadas](https://support.claude.com/en/articles/13930452) regem seu acesso, você também precisa de uma função com a permissão de sessões na nuvem para iniciar sessões na infraestrutura da Anthropic a partir do navegador, dos aplicativos ou do terminal. Peça a um Owner para adicioná-la a uma de suas funções em [**Organization settings > Roles**](https://claude.ai/admin-settings/roles).11> As sessões na nuvem estão disponíveis nos planos Pro, Max, Ultra e Team, e para usuários Enterprise com assentos premium ou assentos Chat + Claude Code. Se [funções personalizadas](https://support.claude.com/en/articles/13930452) regem seu acesso, você também precisa de uma função com a permissão de sessões na nuvem para iniciar sessões na infraestrutura da Anthropic a partir do navegador, dos aplicativos ou do terminal. Peça a um Owner para adicioná-la a uma de suas funções em [**Organization settings > Roles**](https://claude.ai/admin-settings/roles).

12 12 

13Uma sessão na nuvem é uma sessão Claude Code que é executada em infraestrutura em nuvem em vez de em sua máquina. Por padrão, ela é executada em infraestrutura que a Anthropic gerencia, ou no [ambiente auto-hospedado](https://code.claude.com/docs/pt/self-hosted-environments) da sua organização quando roteada para lá. A sessão continua em execução depois que você fecha seu laptop, e você pode verificá-la ou direcioná-la a partir de qualquer dispositivo. Ela conta para os limites de uso do seu plano junto com o restante do seu uso do Claude e do Claude Code, e não há cobrança separada pela VM na nuvem.13Uma sessão na nuvem é uma sessão Claude Code que é executada em infraestrutura em nuvem em vez de em sua máquina. Por padrão, ela é executada em infraestrutura que a Anthropic gerencia, ou no [ambiente auto-hospedado](https://code.claude.com/docs/pt/self-hosted-environments) da sua organização quando roteada para lá. A sessão continua em execução depois que você fecha seu laptop, e você pode verificá-la ou direcioná-la a partir de qualquer dispositivo. Ela conta para os limites de uso do seu plano junto com o restante do seu uso do Claude e do Claude Code, e não há cobrança separada pela VM na nuvem.

14 14 


342* **Seu nome**: o nome de exibição de sua conta é visível para todos os destinatários com acesso342* **Seu nome**: o nome de exibição de sua conta é visível para todos os destinatários com acesso

343* **Sessões do Slack**: as sessões do [Claude no Slack](https://code.claude.com/docs/pt/slack.md) são compartilhadas automaticamente com visibilidade de Team343* **Sessões do Slack**: as sessões do [Claude no Slack](https://code.claude.com/docs/pt/slack.md) são compartilhadas automaticamente com visibilidade de Team

344 344 

345#### Compartilhar de uma conta Max ou Pro345#### Compartilhar de uma conta Max, Ultra ou Pro

346 

347O compartilhamento funciona da seguinte forma para contas Max e Pro:

348 346 

349* **Opções de visibilidade**: **Private** e **Public**. A visibilidade Public torna a sessão visível para qualquer usuário conectado a claude.ai347* **Opções de visibilidade**: **Private** e **Public**. A visibilidade Public torna a sessão visível para qualquer usuário conectado a claude.ai

350* **Acesso ao repositório**: a verificação não está habilitada por padrão348* **Acesso ao repositório**: a verificação não está habilitada por padrão

Details

8 8 

9> [!NOTE]9> [!NOTE]

10>10>

11> Projects estão em beta público nos planos Pro e Max e estão sendo implementados gradualmente. A implementação começou com contas que usaram [sessões na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) e não têm projetos existentes no chat claude.ai ou Cowork. Projects ainda não são oferecidos nos planos Team ou Enterprise.11> Projects estão em beta público nos planos Pro, Max e Ultra e estão sendo implementados gradualmente. A implementação começou com contas que usaram [sessões na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) e não têm projetos existentes no chat claude.ai ou Cowork. Projects ainda não são oferecidos nos planos Team ou Enterprise.

12>12>

13> Se **Projects** não aparecer na barra lateral em [claude.ai/code](https://claude.ai/code) ou na aba Code do [aplicativo desktop](https://code.claude.com/docs/pt/desktop.md), verifique em **More** nesse mesmo local. Se também não estiver lá, a implementação ainda não chegou à sua conta. Você pode [entrar na lista de espera](https://claude.com/form/projects) e consultar [Executar agentes em paralelo](https://code.claude.com/docs/pt/agents.md) para ver o que você pode usar enquanto isso.13> Se **Projects** não aparecer na barra lateral em [claude.ai/code](https://claude.ai/code) ou na aba Code do [aplicativo desktop](https://code.claude.com/docs/pt/desktop.md), verifique em **More** nesse mesmo local. Se também não estiver lá, a implementação ainda não chegou à sua conta. Você pode [entrar na lista de espera](https://claude.com/form/projects) e consultar [Executar agentes em paralelo](https://code.claude.com/docs/pt/agents.md) para ver o que você pode usar enquanto isso.

14 14 


78 78 

79Antes de criar um projeto, verifique seu plano, sua configuração do GitHub e o que o trabalho precisa alcançar:79Antes de criar um projeto, verifique seu plano, sua configuração do GitHub e o que o trabalho precisa alcançar:

80 80 

81* **Plano**: você está no Pro ou Max e **Projects** aparece na sua barra lateral, diretamente ou em **More**. Selecione **Projects** e verifique se oferece **New project** ou **Get started**.81* **Plano**: você está no Pro, Max ou Ultra e **Projects** aparece na sua barra lateral, diretamente ou em **More**. Selecione **Projects** e verifique se oferece **New project** ou **Get started**.

82* **GitHub, se o projeto funcionará em código**: seu código está em github.com em vez de GitHub Enterprise Server, GitLab ou Bitbucket, sua conta GitHub conectada tem acesso push a ele, e o Claude GitHub App está instalado nele. Se você conectou GitHub com [`/web-setup`](https://code.claude.com/docs/pt/web-quickstart#connect-from-your-terminal), esse token permite que suas outras sessões em nuvem alcancem um repositório, mas não é suficiente para threads de projeto, que precisam do Claude GitHub App. [Configurar acesso ao GitHub](#set-up-github-access) tem os passos.82* **GitHub, se o projeto funcionará em código**: seu código está em github.com em vez de GitHub Enterprise Server, GitLab ou Bitbucket, sua conta GitHub conectada tem acesso push a ele, e o Claude GitHub App está instalado nele. Se você conectou GitHub com [`/web-setup`](https://code.claude.com/docs/pt/web-quickstart#connect-from-your-terminal), esse token permite que suas outras sessões em nuvem alcancem um repositório, mas não é suficiente para threads de projeto, que precisam do Claude GitHub App. [Configurar acesso ao GitHub](#set-up-github-access) tem os passos.

83* **Acesso à rede, segredos e ferramentas**: para threads na nuvem, estes vêm do [ambiente na nuvem](#choose-an-environment-for-threads) do projeto. O ambiente padrão já alcança [registros de pacotes comuns](https://code.claude.com/docs/pt/cloud-environments.md#default-allowed-domains), então verifique isso apenas se o trabalho precisar de outros domínios, um segredo ou uma ferramenta que não está pré-instalada. Se o trabalho precisa de um servidor MCP, verifique se ele aparece como conectado em seus [conectores do claude.ai](https://claude.ai/customize/connectors).83* **Acesso à rede, segredos e ferramentas**: para threads na nuvem, estes vêm do [ambiente na nuvem](#choose-an-environment-for-threads) do projeto. O ambiente padrão já alcança [registros de pacotes comuns](https://code.claude.com/docs/pt/cloud-environments.md#default-allowed-domains), então verifique isso apenas se o trabalho precisar de outros domínios, um segredo ou uma ferramenta que não está pré-instalada. Se o trabalho precisa de um servidor MCP, verifique se ele aparece como conectado em seus [conectores do claude.ai](https://claude.ai/customize/connectors).

84 84 


421 421 

422Abra **Usage** em **Project settings** para ver o uso de token por thread e por modelo, e quanto foi para a conversa do projeto. Para reduzi-lo:422Abra **Usage** em **Project settings** para ver o uso de token por thread e por modelo, e quanto foi para a conversa do projeto. Para reduzi-lo:

423 423 

424* Um acompanhamento roteado para uma thread que está ociosa há mais tempo que o [tempo de vida do cache](https://code.claude.com/docs/pt/prompt-caching.md#cache-lifetime), uma hora em Pro e Max dentro dos limites do seu plano, relê toda a conversa dessa thread antes de fazer qualquer coisa. Para novo trabalho, pedir a Claude para iniciar uma thread fresca pode usar menos que reviver uma grande antiga.424* Em Pro, Max e Ultra dentro dos limites do seu plano, o [tempo de vida do cache](https://code.claude.com/docs/pt/prompt-caching.md#cache-lifetime) é de uma hora. Uma thread que está ociosa há mais tempo que isso relê toda a sua conversa antes de fazer qualquer coisa quando um acompanhamento chega a ela. Para novo trabalho, peça a Claude para iniciar uma thread nova, o que pode usar menos que reviver uma grande antiga.

425* Para trabalho que não precisa do maior modelo, [escolha um modelo menor ou um nível de esforço mais baixo](#choose-models-and-let-claude-manage-context) para threads, a conversa ou ambos.425* Para trabalho que não precisa do maior modelo, [escolha um modelo menor ou um nível de esforço mais baixo](#choose-models-and-let-claude-manage-context) para threads, a conversa ou ambos.

426* Peça a Claude na conversa do projeto para executar menos threads de uma vez, ou para responder pequenas perguntas ela mesma em vez de iniciar uma thread.426* Peça a Claude na conversa do projeto para executar menos threads de uma vez, ou para responder pequenas perguntas ela mesma em vez de iniciar uma thread.

427 427 


429 429 

430Vários recursos Claude Code permitem que mais de uma sessão funcione ao mesmo tempo, então executar trabalho em paralelo não é por si só para que um projeto serve. Em um projeto, Claude inicia e rastreia as sessões em vez de você, e cada uma começa a partir das mesmas instruções. É assim que cada recurso vizinho se conecta a um projeto:430Vários recursos Claude Code permitem que mais de uma sessão funcione ao mesmo tempo, então executar trabalho em paralelo não é por si só para que um projeto serve. Em um projeto, Claude inicia e rastreia as sessões em vez de você, e cada uma começa a partir das mesmas instruções. É assim que cada recurso vizinho se conecta a um projeto:

431 431 

432* **Claude Tag**: [Claude Tag](https://claude.com/docs/claude-tag/overview) é Claude nos canais Slack da sua equipe, em planos Team e Enterprise. Qualquer pessoa em um canal pode dar trabalho a ele, todos no canal veem e o direcionam, e usa conexões que um admin configurou para esse canal. Um projeto é seu: você é o único que envia trabalho a ele ou vê suas threads, usa seu próprio acesso GitHub e connectors, e está em Pro e Max. [Como Claude Tag difere de Cowork e Claude Code](https://claude.com/docs/claude-tag/concepts/how-it-works#how-claude-tag-differs-from-cowork-and-claude-code) tem o lado a lado.432* **Claude Tag**: [Claude Tag](https://claude.com/docs/claude-tag/overview) é Claude nos canais Slack da sua equipe, em planos Team e Enterprise. Qualquer pessoa em um canal pode dar trabalho a ele, todos no canal veem e o direcionam, e ele usa conexões que um administrador configurou para esse canal.

433 

434 Projetos estão disponíveis nos planos Pro, Max e Ultra. Um projeto é só seu: você é o único que envia trabalho a ele ou vê suas threads, e ele usa seu próprio acesso GitHub e seus conectores. [Como Claude Tag difere de Cowork e Claude Code](https://claude.com/docs/claude-tag/concepts/how-it-works#how-claude-tag-differs-from-cowork-and-claude-code) tem o lado a lado.

433* **Sessões na nuvem**: cada thread é uma [sessão na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md), a menos que você peça a Claude para executá-la na sua máquina. De qualquer forma, Claude inicia e rastreia em vez de você. Você também pode trazer o trabalho de uma sessão na nuvem que você mesmo iniciou para um projeto: escolha [**Continue in project**](#start-from-an-existing-cloud-session) no menu da barra lateral dessa sessão.435* **Sessões na nuvem**: cada thread é uma [sessão na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md), a menos que você peça a Claude para executá-la na sua máquina. De qualquer forma, Claude inicia e rastreia em vez de você. Você também pode trazer o trabalho de uma sessão na nuvem que você mesmo iniciou para um projeto: escolha [**Continue in project**](#start-from-an-existing-cloud-session) no menu da barra lateral dessa sessão.

434* **Tarefas agendadas**: quando você pede trabalho agendado em um projeto, Claude cria uma [tarefa agendada na nuvem](https://code.claude.com/docs/pt/routines.md) que é executada como threads nesse projeto e aparece em sua aba **Scheduled tasks**. Tarefas agendadas que você cria fora de um projeto continuam funcionando por conta própria.436* **Tarefas agendadas**: quando você pede trabalho agendado em um projeto, Claude cria uma [tarefa agendada na nuvem](https://code.claude.com/docs/pt/routines.md) que é executada como threads nesse projeto e aparece em sua aba **Scheduled tasks**. Tarefas agendadas que você cria fora de um projeto continuam funcionando por conta própria.

435* **Remote Control**: [Remote Control](https://code.claude.com/docs/pt/remote-control.md) conecta claude.ai a uma sessão Claude Code em execução na sua máquina. Quando você pede a Claude em um projeto para executar uma thread no seu computador, o projeto [usa Remote Control para fazer isso](#run-a-thread-on-your-own-computer).437* **Remote Control**: [Remote Control](https://code.claude.com/docs/pt/remote-control.md) conecta claude.ai a uma sessão Claude Code em execução na sua máquina. Quando você pede a Claude em um projeto para executar uma thread no seu computador, o projeto [usa Remote Control para fazer isso](#run-a-thread-on-your-own-computer).

Details

8 8 

9> [!NOTE]9> [!NOTE]

10>10>

11> Ambientes na nuvem se aplicam a [sessões na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md), que estão disponíveis em planos Pro, Max e Team, e para usuários Enterprise com [assentos premium ou assentos Chat + Claude Code](https://support.claude.com/en/articles/11845131-use-claude-code-with-your-team-or-enterprise-plan).11> Ambientes na nuvem se aplicam a [sessões na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md), que estão disponíveis em planos Pro, Max, Ultra e Team, e para usuários Enterprise com [assentos premium ou assentos Chat + Claude Code](https://support.claude.com/en/articles/11845131-use-claude-code-with-your-team-or-enterprise-plan).

12 12 

13Cada [sessão na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) é executada em um ambiente na nuvem. Você pode configurar um ambiente para permitir ou negar [acesso à rede](#access-levels), [definir variáveis de ambiente](#set-environment-variables) para a sessão, armazenar [segredos de rede](#add-network-secrets) que as sessões usam sem vê-los, e executar um [script de configuração](#setup-scripts) antes de Claude começar a trabalhar.13Cada [sessão na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) é executada em um ambiente na nuvem. Você pode configurar um ambiente para permitir ou negar [acesso à rede](#access-levels), [definir variáveis de ambiente](#set-environment-variables) para a sessão, armazenar [segredos de rede](#add-network-secrets) que as sessões usam sem vê-los, e executar um [script de configuração](#setup-scripts) antes de Claude começar a trabalhar.

14 14 


32Se você ainda não tem um ambiente, a integração configura o ambiente **Default** para você. Como depende de onde você se integra:32Se você ainda não tem um ambiente, a integração configura o ambiente **Default** para você. Como depende de onde você se integra:

33 33 

34* **Fluxos CLI como `/web-setup`**: criam **Default** para você34* **Fluxos CLI como `/web-setup`**: criam **Default** para você

35* **Integração web em Pro e Max**: cria **Default** para você35* **Integração web em Pro, Max e Ultra**: você recebe **Default** automaticamente

36* **Integração web em Team e Enterprise**: mostra um formulário **Criar seu primeiro ambiente na nuvem** a menos que um Proprietário tenha ativado a [Configuração rápida](https://code.claude.com/docs/pt/claude-code-on-the-web.md#quick-setup-for-team-and-enterprise); mantenha os padrões do formulário e clique em **Criar e concluir** para obter o mesmo ambiente **Default**36* **Integração web em Team e Enterprise**: mostra um formulário **Criar seu primeiro ambiente na nuvem** a menos que um Proprietário tenha ativado a [Configuração rápida](https://code.claude.com/docs/pt/claude-code-on-the-web.md#quick-setup-for-team-and-enterprise); mantenha os padrões do formulário e clique em **Criar e concluir** para obter o mesmo ambiente **Default**

37 37 

38**Default** não carrega nenhuma configuração própria:38**Default** não carrega nenhuma configuração própria:


93 93 

94Um segredo de rede é uma chave de API ou token que você armazena em um ambiente na nuvem para que Claude possa chamar essa API de qualquer sessão no ambiente sem ver a chave. O proxy do agente da Anthropic adiciona a chave às requisições para os hosts que você lista, depois que cada requisição sai da VM da sessão, de modo que a própria chave permanece fora da VM.94Um segredo de rede é uma chave de API ou token que você armazena em um ambiente na nuvem para que Claude possa chamar essa API de qualquer sessão no ambiente sem ver a chave. O proxy do agente da Anthropic adiciona a chave às requisições para os hosts que você lista, depois que cada requisição sai da VM da sessão, de modo que a própria chave permanece fora da VM.

95 95 

96Os segredos de rede estão disponíveis em planos Pro, Max, Team e Enterprise. Para verificar se você mesmo pode adicionar um, veja [Requisitos](#requirements).96Os segredos de rede estão disponíveis em planos Pro, Max, Ultra, Team e Enterprise. Para verificar se você mesmo pode adicionar um, veja [Requisitos](#requirements).

97 97 

98#### Requisitos98#### Requisitos

99 99 


552 552 

553Com acesso à rede **Trusted**, as sessões podem alcançar os seguintes domínios por padrão. Os domínios marcados com `*` indicam correspondência de subdomínio curinga, portanto `*.gcr.io` permite qualquer subdomínio de `gcr.io`.553Com acesso à rede **Trusted**, as sessões podem alcançar os seguintes domínios por padrão. Os domínios marcados com `*` indicam correspondência de subdomínio curinga, portanto `*.gcr.io` permite qualquer subdomínio de `gcr.io`.

554 554 

555> **Serviços Anthropic**555> [accordion] Serviços Anthropic

556>556>

557> * api.anthropic.com557> * api.anthropic.com

558> * docs.claude.com558> * docs.claude.com


564> * anthropic.com564> * anthropic.com

565> * [www.anthropic.com](http://www.anthropic.com)565> * [www.anthropic.com](http://www.anthropic.com)

566 566 

567> **Controle de versão**567> [accordion] Controle de versão

568>568>

569> * github.com569> * github.com

570> * [www.github.com](http://www.github.com)570> * [www.github.com](http://www.github.com)


585> * [www.bitbucket.org](http://www.bitbucket.org)585> * [www.bitbucket.org](http://www.bitbucket.org)

586> * api.bitbucket.org586> * api.bitbucket.org

587 587 

588> **Registros de contêiner**588> [accordion] Registros de contêiner

589>589>

590> * registry-1.docker.io590> * registry-1.docker.io

591> * auth.docker.io591> * auth.docker.io


602> * \*.data.mcr.microsoft.com602> * \*.data.mcr.microsoft.com

603> * public.ecr.aws603> * public.ecr.aws

604 604 

605> **Plataformas na nuvem**605> [accordion] Plataformas na nuvem

606>606>

607> * cloud.google.com607> * cloud.google.com

608> * accounts.google.com608> * accounts.google.com


633> * yum.oracle.com633> * yum.oracle.com

634> * \*.r2.cloudflarestorage.com634> * \*.r2.cloudflarestorage.com

635 635 

636> **Gerenciadores de pacotes JavaScript e Node**636> [accordion] Gerenciadores de pacotes JavaScript e Node

637>637>

638> * registry.npmjs.org638> * registry.npmjs.org

639> * [www.npmjs.com](http://www.npmjs.com)639> * [www.npmjs.com](http://www.npmjs.com)


645> * jsr.io645> * jsr.io

646> * npm.jsr.io646> * npm.jsr.io

647 647 

648> **Gerenciadores de pacotes Python**648> [accordion] Gerenciadores de pacotes Python

649>649>

650> * pypi.org650> * pypi.org

651> * [www.pypi.org](http://www.pypi.org)651> * [www.pypi.org](http://www.pypi.org)


656> * pypa.io656> * pypa.io

657> * [www.pypa.io](http://www.pypa.io)657> * [www.pypa.io](http://www.pypa.io)

658 658 

659> **Gerenciadores de pacotes Ruby**659> [accordion] Gerenciadores de pacotes Ruby

660>660>

661> * rubygems.org661> * rubygems.org

662> * [www.rubygems.org](http://www.rubygems.org)662> * [www.rubygems.org](http://www.rubygems.org)


671> * rvm.io671> * rvm.io

672> * get.rvm.io672> * get.rvm.io

673 673 

674> **Gerenciadores de pacotes Rust**674> [accordion] Gerenciadores de pacotes Rust

675>675>

676> * crates.io676> * crates.io

677> * [www.crates.io](http://www.crates.io)677> * [www.crates.io](http://www.crates.io)


681> * static.rust-lang.org681> * static.rust-lang.org

682> * [www.rust-lang.org](http://www.rust-lang.org)682> * [www.rust-lang.org](http://www.rust-lang.org)

683 683 

684> **Gerenciadores de pacotes Go**684> [accordion] Gerenciadores de pacotes Go

685>685>

686> * proxy.golang.org686> * proxy.golang.org

687> * sum.golang.org687> * sum.golang.org


691> * goproxy.io691> * goproxy.io

692> * pkg.go.dev692> * pkg.go.dev

693 693 

694> **Gerenciadores de pacotes JVM**694> [accordion] Gerenciadores de pacotes JVM

695>695>

696> * maven.org696> * maven.org

697> * repo.maven.org697> * repo.maven.org


710> * spring.io710> * spring.io

711> * repo.spring.io711> * repo.spring.io

712 712 

713> **Outros gerenciadores de pacotes**713> [accordion] Outros gerenciadores de pacotes

714>714>

715> * packagist.org (PHP Composer)715> * packagist.org (PHP Composer)

716> * [www.packagist.org](http://www.packagist.org)716> * [www.packagist.org](http://www.packagist.org)


736> * swift.org736> * swift.org

737> * [www.swift.org](http://www.swift.org)737> * [www.swift.org](http://www.swift.org)

738 738 

739> **Distribuições Linux**739> [accordion] Distribuições Linux

740>740>

741> * archive.ubuntu.com741> * archive.ubuntu.com

742> * security.ubuntu.com742> * security.ubuntu.com


748> * [www.launchpad.net](http://www.launchpad.net)748> * [www.launchpad.net](http://www.launchpad.net)

749> * \*.nixos.org749> * \*.nixos.org

750 750 

751> **Ferramentas de desenvolvimento e plataformas**751> [accordion] Ferramentas de desenvolvimento e plataformas

752>752>

753> * dl.k8s.io (Kubernetes)753> * dl.k8s.io (Kubernetes)

754> * pkgs.k8s.io754> * pkgs.k8s.io


780> * pkg.stainless.com780> * pkg.stainless.com

781> * binaries.prisma.sh781> * binaries.prisma.sh

782 782 

783> **Serviços na nuvem e monitoramento**783> [accordion] Serviços na nuvem e monitoramento

784>784>

785> * http-intake.logs.datadoghq.com785> * http-intake.logs.datadoghq.com

786> * \*.datadoghq.com786> * \*.datadoghq.com

787> * \*.datadoghq.eu787> * \*.datadoghq.eu

788> * api.honeycomb.io788> * api.honeycomb.io

789 789 

790> **Entrega de conteúdo e espelhos**790> [accordion] Entrega de conteúdo e espelhos

791>791>

792> * sourceforge.net792> * sourceforge.net

793> * \*.sourceforge.net793> * \*.sourceforge.net


796> * fonts.googleapis.com796> * fonts.googleapis.com

797> * fonts.gstatic.com797> * fonts.gstatic.com

798 798 

799> **Schema e configuração**799> [accordion] Schema e configuração

800>800>

801> * json-schema.org801> * json-schema.org

802> * [www.json-schema.org](http://www.json-schema.org)802> * [www.json-schema.org](http://www.json-schema.org)

803> * json.schemastore.org803> * json.schemastore.org

804> * [www.schemastore.org](http://www.schemastore.org)804> * [www.schemastore.org](http://www.schemastore.org)

805 805 

806> **Model Context Protocol**806> [accordion] Model Context Protocol

807>807>

808> * \*.modelcontextprotocol.io808> * \*.modelcontextprotocol.io

809 809 

code-review.md +5 −5

Details

32 32 

33Escolha a página para o que você precisa fazer:33Escolha a página para o que você precisa fazer:

34 34 

35> **[Configurar Code Review](https://code.claude.com/docs/pt/code-review-setup.md)**35> [card] [Configurar Code Review](https://code.claude.com/docs/pt/code-review-setup.md)

36>36>

37> Verifique os requisitos, instale o Claude GitHub App e escolha os repositórios, um nível de revisão e quando as revisões são executadas37> Verifique os requisitos, instale o Claude GitHub App e escolha os repositórios, um nível de revisão e quando as revisões são executadas

38 38 

39> **[Personalizar Code Review](https://code.claude.com/docs/pt/code-review-customize.md)**39> [card] [Personalizar Code Review](https://code.claude.com/docs/pt/code-review-customize.md)

40>40>

41> Ajuste o que é sinalizado com arquivos `REVIEW.md` e `CLAUDE.md` em seu repositório41> Ajuste o que é sinalizado com arquivos `REVIEW.md` e `CLAUDE.md` em seu repositório

42 42 

43> **[Ler e solicitar revisões em um pull request](https://code.claude.com/docs/pt/code-review-pull-requests.md)**43> [card] [Ler e solicitar revisões em um pull request](https://code.claude.com/docs/pt/code-review-pull-requests.md)

44>44>

45> Leia as descobertas e suas severidades, e solicite outra revisão com um comentário45> Leia as descobertas e suas severidades, e solicite outra revisão com um comentário

46 46 

47> **[Solução de problemas do Code Review](https://code.claude.com/docs/pt/code-review-troubleshooting.md)**47> [card] [Solução de problemas do Code Review](https://code.claude.com/docs/pt/code-review-troubleshooting.md)

48>48>

49> Corrija uma revisão que não iniciou, falhou ou foi ignorada por orçamento49> Corrija uma revisão que não iniciou, falhou ou foi ignorada por orçamento

50 50 

51> **[Custos e uso do Code Review](https://code.claude.com/docs/pt/code-review-costs.md)**51> [card] [Custos e uso do Code Review](https://code.claude.com/docs/pt/code-review-costs.md)

52>52>

53> Veja como as revisões são faturadas, estime gastos, defina o limite de gasto mensal e acompanhe a atividade de revisão53> Veja como as revisões são faturadas, estime gastos, defina o limite de gasto mensal e acompanhe a atividade de revisão

54 54 

commands.md +5 −5

Details

55| `/artifact-capabilities` | **[Skill](https://code.claude.com/docs/pt/skills.md#bundled-skills).** Carregue a referência para os recursos de tempo de execução que um [artefato](https://code.claude.com/docs/pt/artifacts.md) publicado pode usar, como [chamar seus conectores](https://code.claude.com/docs/pt/artifacts.md#pull-live-data-with-mcp-connectors) ou [oferecer um download de arquivo](https://code.claude.com/docs/pt/artifacts.md#offer-a-file-download), incluindo quais você tem. Claude normalmente o carrega por conta própria antes de construir uma página que usa um. Disponível onde [artefatos](https://code.claude.com/docs/pt/artifacts.md#availability) estão |55| `/artifact-capabilities` | **[Skill](https://code.claude.com/docs/pt/skills.md#bundled-skills).** Carregue a referência para os recursos de tempo de execução que um [artefato](https://code.claude.com/docs/pt/artifacts.md) publicado pode usar, como [chamar seus conectores](https://code.claude.com/docs/pt/artifacts.md#pull-live-data-with-mcp-connectors) ou [oferecer um download de arquivo](https://code.claude.com/docs/pt/artifacts.md#offer-a-file-download), incluindo quais você tem. Claude normalmente o carrega por conta própria antes de construir uma página que usa um. Disponível onde [artefatos](https://code.claude.com/docs/pt/artifacts.md#availability) estão |

56| `/artifact-diagramming` | **[Skill](https://code.claude.com/docs/pt/skills.md#bundled-skills).** Carregue orientação de diagramação para Claude seguir em [artefatos](https://code.claude.com/docs/pt/artifacts.md): quando um diagrama ajuda, o que desenhar e como escrever SVG inline que permanece legível em temas claros e escuros. Requer Claude Code v2.1.221 ou posterior |56| `/artifact-diagramming` | **[Skill](https://code.claude.com/docs/pt/skills.md#bundled-skills).** Carregue orientação de diagramação para Claude seguir em [artefatos](https://code.claude.com/docs/pt/artifacts.md): quando um diagrama ajuda, o que desenhar e como escrever SVG inline que permanece legível em temas claros e escuros. Requer Claude Code v2.1.221 ou posterior |

57| `/artifacts` | Liste os [artefatos](https://code.claude.com/docs/pt/artifacts.md#find-an-artifact-again) que você possui ou que são compartilhados com você, depois anexe um à sessão, abra-o no seu navegador ou copie seu link. Disponível onde [artefatos](https://code.claude.com/docs/pt/artifacts.md#availability) estão |57| `/artifacts` | Liste os [artefatos](https://code.claude.com/docs/pt/artifacts.md#find-an-artifact-again) que você possui ou que são compartilhados com você, depois anexe um à sessão, abra-o no seu navegador ou copie seu link. Disponível onde [artefatos](https://code.claude.com/docs/pt/artifacts.md#availability) estão |

58| `/auto-mode-setup` | [Rascunhe entradas `autoMode.environment`](https://code.claude.com/docs/pt/auto-mode-config#generate-environment-entries) do seu projeto e sessões recentes, depois revise o rascunho e salve-o nas suas configurações de usuário. Em um plano Pro, Max ou Team, requer Claude Code v2.1.228 ou posterior, ou v2.1.233 ou posterior no Windows nativo. Em um plano Enterprise ou com uma chave de API do Claude Console, requer v2.1.283 ou posterior. Se o comando estiver ausente, consulte [`/auto-mode-setup` retorna "Unknown command"](https://code.claude.com/docs/pt/auto-mode-config#auto-mode-setup-returns-unknown-command) |58| `/auto-mode-setup` | [Rascunhe entradas `autoMode.environment`](https://code.claude.com/docs/pt/auto-mode-config#generate-environment-entries) do seu projeto e sessões recentes, depois revise o rascunho e salve-o nas suas configurações de usuário. Em um plano Pro, Max, Ultra ou Team, requer Claude Code v2.1.228 ou posterior, ou v2.1.233 ou posterior no Windows nativo. Em um plano Enterprise ou com uma chave de API do Claude Console, requer v2.1.283 ou posterior. Se o comando estiver ausente, consulte [`/auto-mode-setup` retorna "Unknown command"](https://code.claude.com/docs/pt/auto-mode-config#auto-mode-setup-returns-unknown-command) |

59| `/autocompact [auto\|<tokens>]` | Defina a janela de compactação automática: o quão cheia fica a janela de contexto antes de Claude Code compactar automaticamente. Passe um tamanho como `500k`, ou `auto` para retornar à janela ajustada para seu modelo. Claude Code salva o valor nas configurações de usuário e o aplica à sessão atual. Consulte [Defina a janela de compactação automática](https://code.claude.com/docs/pt/model-config.md#set-the-auto-compact-window) para valores aceitos e o que a sobrescreve. Sem um argumento, abre um diálogo que mostra a janela atual. Requer Claude Code v2.1.221 ou posterior |59| `/autocompact [auto\|<tokens>]` | Defina a janela de compactação automática: o quão cheia fica a janela de contexto antes de Claude Code compactar automaticamente. Passe um tamanho como `500k`, ou `auto` para retornar à janela ajustada para seu modelo. Claude Code salva o valor nas configurações de usuário e o aplica à sessão atual. Consulte [Defina a janela de compactação automática](https://code.claude.com/docs/pt/model-config.md#set-the-auto-compact-window) para valores aceitos e o que a sobrescreve. Sem um argumento, abre um diálogo que mostra a janela atual. Requer Claude Code v2.1.221 ou posterior |

60| `/autofix-pr [prompt]` | Inicie uma [sessão na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md#auto-fix-pull-requests) que monitora o PR do branch atual e envia correções quando o CI falha ou revisores deixam comentários. Detecta o PR aberto do seu branch em checkout com `gh pr view`; para monitorar um PR diferente, primeiro faça checkout do branch dele. Por padrão, a sessão na nuvem é instruída a corrigir todas as falhas de CI e comentários de revisão; passe um prompt para dar instruções diferentes, por exemplo `/autofix-pr only fix lint and type errors`. Requer a CLI `gh` e acesso a [sessões na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) |60| `/autofix-pr [prompt]` | Inicie uma [sessão na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md#auto-fix-pull-requests) que monitora o PR do branch atual e envia correções quando o CI falha ou revisores deixam comentários. Detecta o PR aberto do seu branch em checkout com `gh pr view`; para monitorar um PR diferente, primeiro faça checkout do branch dele. Por padrão, a sessão na nuvem é instruída a corrigir todas as falhas de CI e comentários de revisão; passe um prompt para dar instruções diferentes, por exemplo `/autofix-pr only fix lint and type errors`. Requer a CLI `gh` e acesso a [sessões na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) |

61| `/background [prompt]` | Desanexe a sessão atual para ser executada como um [agente em segundo plano](https://code.claude.com/docs/pt/agent-view.md) e libere este terminal. Passe um prompt para enviar uma instrução adicional antes de desanexar. Monitore a sessão com `claude agents`. Para copiar a conversa em uma nova sessão em segundo plano enquanto esta continua em execução, use `/fork`. Alias: `/bg` |61| `/background [prompt]` | Desanexe a sessão atual para ser executada como um [agente em segundo plano](https://code.claude.com/docs/pt/agent-view.md) e libere este terminal. Passe um prompt para enviar uma instrução adicional antes de desanexar. Monitore a sessão com `claude agents`. Para copiar a conversa em uma nova sessão em segundo plano enquanto esta continua em execução, use `/fork`. Alias: `/bg` |


120| `/plugin-authoring` | Carregue a referência que Claude usa para [escrever um mod](https://code.claude.com/docs/pt/plugins/mods/create.md#ask-claude-for-a-mod). Claude pode carregá-la por conta própria quando você pede um mod. Esta é uma skill de um [plugin integrado](https://code.claude.com/docs/pt/plugins/mods/overview.md#mods-built-into-claude-code), que você pode desativar em `/plugin`. Requer Claude Code v2.1.287 ou posterior |120| `/plugin-authoring` | Carregue a referência que Claude usa para [escrever um mod](https://code.claude.com/docs/pt/plugins/mods/create.md#ask-claude-for-a-mod). Claude pode carregá-la por conta própria quando você pede um mod. Esta é uma skill de um [plugin integrado](https://code.claude.com/docs/pt/plugins/mods/overview.md#mods-built-into-claude-code), que você pode desativar em `/plugin`. Requer Claude Code v2.1.287 ou posterior |

121| `/powerup` | Descubra recursos do Claude Code através de lições interativas rápidas com demos animadas |121| `/powerup` | Descubra recursos do Claude Code através de lições interativas rápidas com demos animadas |

122| `/pr-comments [PR]` | Removido na v2.1.91. Peça ao Claude diretamente para visualizar comentários de pull request. Em versões anteriores, buscava e exibia comentários de um pull request GitHub; detecta automaticamente o PR para o branch atual, ou passe uma URL ou número de PR. Requer a CLI `gh` |122| `/pr-comments [PR]` | Removido na v2.1.91. Peça ao Claude diretamente para visualizar comentários de pull request. Em versões anteriores, buscava e exibia comentários de um pull request GitHub; detecta automaticamente o PR para o branch atual, ou passe uma URL ou número de PR. Requer a CLI `gh` |

123| `/privacy-settings` | Veja e atualize suas configurações de privacidade. Disponível apenas para assinantes de planos Pro e Max |123| `/privacy-settings` | Veja e atualize suas configurações de privacidade. Disponível apenas para assinantes de planos Pro, Max e Ultra |

124| `/radio` | Abra Claude FM lo-fi radio no seu navegador. Imprime a URL do stream quando nenhum navegador está disponível |124| `/radio` | Abra Claude FM lo-fi radio no seu navegador. Imprime a URL do stream quando nenhum navegador está disponível |

125| `/rate-limit-options` | Mostre maneiras de continuar trabalhando quando um limite de uso claude.ai bloqueia uma requisição: aguarde e [continue automaticamente quando o limite for redefinido](https://code.claude.com/docs/pt/interactive-mode.md#wait-for-a-usage-limit-to-reset), adicione [créditos de uso](https://code.claude.com/docs/pt/costs.md#add-usage-credits-to-your-subscription) ou atualize seu plano. Claude Code também pode abrir este menu por conta própria quando você atinge um limite no seu próprio terminal. Consulte [Desative a continuação automática](https://code.claude.com/docs/pt/interactive-mode.md#turn-automatic-continue-off). Requer uma assinatura claude.ai. As linhas de espera e continuação requerem Claude Code v2.1.234 ou posterior |125| `/rate-limit-options` | Mostre maneiras de continuar trabalhando quando um limite de uso claude.ai bloqueia uma requisição: aguarde e [continue automaticamente quando o limite for redefinido](https://code.claude.com/docs/pt/interactive-mode.md#wait-for-a-usage-limit-to-reset), adicione [créditos de uso](https://code.claude.com/docs/pt/costs.md#add-usage-credits-to-your-subscription) ou atualize seu plano. Claude Code também pode abrir este menu por conta própria quando você atinge um limite no seu próprio terminal. Consulte [Desative a continuação automática](https://code.claude.com/docs/pt/interactive-mode.md#turn-automatic-continue-off). Requer uma assinatura claude.ai. As linhas de espera e continuação requerem Claude Code v2.1.234 ou posterior |

126| `/recap` | Gere um resumo de uma linha da sessão atual sob demanda. Consulte [Recapitulação de sessão](https://code.claude.com/docs/pt/interactive-mode.md#session-recap) para a recapitulação automática que aparece depois que você esteve ausente |126| `/recap` | Gere um resumo de uma linha da sessão atual sob demanda. Consulte [Recapitulação de sessão](https://code.claude.com/docs/pt/interactive-mode.md#session-recap) para a recapitulação automática que aparece depois que você esteve ausente |


130| `/remote-control` | Disponibilize esta sessão para [Remote Control](https://code.claude.com/docs/pt/remote-control.md) de claude.ai. Executá-lo enquanto desconectado imprime que Remote Control requer uma assinatura claude.ai e diz como conectar. Alias: `/rc` |130| `/remote-control` | Disponibilize esta sessão para [Remote Control](https://code.claude.com/docs/pt/remote-control.md) de claude.ai. Executá-lo enquanto desconectado imprime que Remote Control requer uma assinatura claude.ai e diz como conectar. Alias: `/rc` |

131| `/remote-env` | Escolha o [ambiente na nuvem](https://code.claude.com/docs/pt/cloud-environments.md#select-an-environment-from-the-cli) padrão para sessões na nuvem que você inicia a partir da CLI |131| `/remote-env` | Escolha o [ambiente na nuvem](https://code.claude.com/docs/pt/cloud-environments.md#select-an-environment-from-the-cli) padrão para sessões na nuvem que você inicia a partir da CLI |

132| `/rename [name]` | Renomeie a sessão atual e mostre o nome na barra de prompt. Sem um nome, auto-gera um a partir do histórico de conversa. Também disponível em modo não interativo (`-p`). De cada superfície de renomeação, incluindo claude.ai e o aplicativo de desktop, Claude Code substitui caracteres de controle e invisíveis no novo nome com espaços e limita o nome a 200 caracteres. Se o nome estiver vazio uma vez que caracteres invisíveis são removidos, Claude Code o rejeita e mostra `That name is empty once invisible characters are removed. Usage: /rename <name>`. A substituição de caracteres e limite de comprimento requerem Claude Code v2.1.221 ou posterior |132| `/rename [name]` | Renomeie a sessão atual e mostre o nome na barra de prompt. Sem um nome, auto-gera um a partir do histórico de conversa. Também disponível em modo não interativo (`-p`). De cada superfície de renomeação, incluindo claude.ai e o aplicativo de desktop, Claude Code substitui caracteres de controle e invisíveis no novo nome com espaços e limita o nome a 200 caracteres. Se o nome estiver vazio uma vez que caracteres invisíveis são removidos, Claude Code o rejeita e mostra `That name is empty once invisible characters are removed. Usage: /rename <name>`. A substituição de caracteres e limite de comprimento requerem Claude Code v2.1.221 ou posterior |

133| `/restart` | Reinicie o Claude Code e retome esta sessão, o que aplica uma atualização instalada. Execute-o quando o rodapé oferecê-lo após a instalação de uma atualização. Requer um plano Pro ou Max e uma instalação nativa no macOS ou Linux, não WSL. Requer Claude Code v2.1.288 ou posterior. Alias: `/update` |133| `/restart` | Reinicie o Claude Code e retome esta sessão, o que aplica uma atualização instalada. Execute-o quando o rodapé oferecê-lo após a instalação de uma atualização. Requer um plano Pro, Max ou Ultra e uma instalação nativa no macOS ou Linux, não WSL. Requer Claude Code v2.1.288 ou posterior. Alias: `/update` |

134| `/resume [session]` | Retome uma conversa por ID ou nome, ou abra o seletor de sessão. [Sessões em segundo plano](https://code.claude.com/docs/pt/agent-view.md) aparecem no seletor marcadas com `bg`. Retomar uma que ainda está em execução, do seletor ou por ID ou nome, [abre essa sessão](https://code.claude.com/docs/pt/sessions.md#resume-a-running-background-session): sua conversa atual vai para segundo plano e este terminal se anexa à em execução. Pressione `←` em um prompt vazio para retornar à visualização de agente, que também lista a conversa que você deixou. Antes da v2.1.285, Claude Code recusava e dizia para abrir a sessão com `claude attach` ou pará-la primeiro. Alias: `/continue` |134| `/resume [session]` | Retome uma conversa por ID ou nome, ou abra o seletor de sessão. [Sessões em segundo plano](https://code.claude.com/docs/pt/agent-view.md) aparecem no seletor marcadas com `bg`. Retomar uma que ainda está em execução, do seletor ou por ID ou nome, [abre essa sessão](https://code.claude.com/docs/pt/sessions.md#resume-a-running-background-session): sua conversa atual vai para segundo plano e este terminal se anexa à em execução. Pressione `←` em um prompt vazio para retornar à visualização de agente, que também lista a conversa que você deixou. Antes da v2.1.285, Claude Code recusava e dizia para abrir a sessão com `claude attach` ou pará-la primeiro. Alias: `/continue` |

135| `/review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [--max-findings n\|all\|default] [pr#\|branch\|path]` | Alias de [`/code-review`](https://code.claude.com/docs/pt/code-review-local): revisa o diff atual, ou um número de PR, branch ou caminho que você passa, como `/review 1234`, e aceita os mesmos níveis de esforço e flags. Sem um nível dado, a revisão reutiliza o último nível `low` através `max` que você digitou; consulte [Revise localmente com `/code-review`](https://code.claude.com/docs/pt/code-review-local) para as regras exatas. Para uma revisão na nuvem profunda, use [`/code-review ultra`](https://code.claude.com/docs/pt/ultrareview). Antes da v2.1.223, `/review` era um comando separado que executava uma revisão de uma única passagem, somente leitura de um pull request GitHub por número, listando PRs abertos para escolher quando executado sem argumento; de v2.1.186 através v2.1.201, executava o mesmo mecanismo multi-agente que `/code-review medium` |135| `/review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [--max-findings n\|all\|default] [pr#\|branch\|path]` | Alias de [`/code-review`](https://code.claude.com/docs/pt/code-review-local): revisa o diff atual, ou um número de PR, branch ou caminho que você passa, como `/review 1234`, e aceita os mesmos níveis de esforço e flags. Sem um nível dado, a revisão reutiliza o último nível `low` através `max` que você digitou; consulte [Revise localmente com `/code-review`](https://code.claude.com/docs/pt/code-review-local) para as regras exatas. Para uma revisão na nuvem profunda, use [`/code-review ultra`](https://code.claude.com/docs/pt/ultrareview). Antes da v2.1.223, `/review` era um comando separado que executava uma revisão de uma única passagem, somente leitura de um pull request GitHub por número, listando PRs abertos para escolher quando executado sem argumento; de v2.1.186 através v2.1.201, executava o mesmo mecanismo multi-agente que `/code-review medium` |

136| `/rewind` | Retroceda a conversa e/ou código para um ponto anterior, ou resuma a partir de uma mensagem selecionada. Consulte [checkpointing](https://code.claude.com/docs/pt/checkpointing.md). Aliases: `/checkpoint`, `/undo` |136| `/rewind` | Retroceda a conversa e/ou código para um ponto anterior, ou resuma a partir de uma mensagem selecionada. Consulte [checkpointing](https://code.claude.com/docs/pt/checkpointing.md). Aliases: `/checkpoint`, `/undo` |


159| `/theme` | Altere o tema de cor. Inclui uma opção `auto` que corresponde ao fundo claro ou escuro do seu terminal, variantes claras e escuras, temas acessíveis para daltonismo (daltonizados), temas ANSI que usam a paleta de cores do seu terminal e qualquer [tema personalizado](https://code.claude.com/docs/pt/terminal-config.md#create-a-custom-theme) de `~/.claude/themes/` ou plugins. Selecione **New custom theme…** para criar um |159| `/theme` | Altere o tema de cor. Inclui uma opção `auto` que corresponde ao fundo claro ou escuro do seu terminal, variantes claras e escuras, temas acessíveis para daltonismo (daltonizados), temas ANSI que usam a paleta de cores do seu terminal e qualquer [tema personalizado](https://code.claude.com/docs/pt/terminal-config.md#create-a-custom-theme) de `~/.claude/themes/` ou plugins. Selecione **New custom theme…** para criar um |

160| `/tui [default\|fullscreen]` | Defina o renderizador de UI de terminal e reinicie nele com sua conversa intacta. `fullscreen` ativa o [renderizador alt-screen sem cintilação](https://code.claude.com/docs/pt/fullscreen.md). Sem argumento, imprime o renderizador ativo |160| `/tui [default\|fullscreen]` | Defina o renderizador de UI de terminal e reinicie nele com sua conversa intacta. `fullscreen` ativa o [renderizador alt-screen sem cintilação](https://code.claude.com/docs/pt/fullscreen.md). Sem argumento, imprime o renderizador ativo |

161| `/ultraplan <prompt>` | Removido. Use o [modo de planejamento](https://code.claude.com/docs/pt/permission-modes.md#analyze-before-you-edit-with-plan-mode). Anteriormente enviava uma tarefa de planejamento para uma [sessão na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) para revisão no seu navegador |161| `/ultraplan <prompt>` | Removido. Use o [modo de planejamento](https://code.claude.com/docs/pt/permission-modes.md#analyze-before-you-edit-with-plan-mode). Anteriormente enviava uma tarefa de planejamento para uma [sessão na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) para revisão no seu navegador |

162| `/ultrareview [PR or branch]` | Execute uma revisão de código profunda e multi-agente em um sandbox na nuvem com [ultrareview](https://code.claude.com/docs/pt/ultrareview.md). Passe uma referência de PR para revisar esse pull request, ou um branch base ou commit para alterar a base de comparação. A invocação preferida é `/code-review ultra`, e `/ultrareview` é um alias. Inclui 3 execuções gratuitas em Pro e Max, depois requer [créditos de uso](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |162| `/ultrareview [PR or branch]` | Execute uma revisão de código profunda e multi-agente em um sandbox na nuvem com [ultrareview](https://code.claude.com/docs/pt/ultrareview.md). Passe uma referência de PR para revisar esse pull request, ou um branch base ou commit para alterar a base de comparação. A invocação preferida é `/code-review ultra`, e `/ultrareview` é um alias. Inclui 3 execuções gratuitas em Pro, Max e Ultra, depois requer [créditos de uso](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |

163| `/update-config [request]` | **[Skill](https://code.claude.com/docs/pt/skills.md#bundled-skills).** Descreva uma mudança de configurações, como permitir um comando, definir uma variável de ambiente ou adicionar um [hook](https://code.claude.com/docs/pt/hooks.md), e Claude edita o arquivo [`settings.json`](https://code.claude.com/docs/pt/settings) correspondente. Para opções como tema e modelo, use `/config` |163| `/update-config [request]` | **[Skill](https://code.claude.com/docs/pt/skills.md#bundled-skills).** Descreva uma mudança de configurações, como permitir um comando, definir uma variável de ambiente ou adicionar um [hook](https://code.claude.com/docs/pt/hooks.md), e Claude edita o arquivo [`settings.json`](https://code.claude.com/docs/pt/settings) correspondente. Para opções como tema e modelo, use `/config` |

164| `/upgrade` | Abra a página de atualização no seu navegador para mudar para um nível de plano superior. Quando o navegador falha em abrir, o comando mostra um prompt de login sem imprimir a URL |164| `/upgrade` | Abra a página de atualização no seu navegador para mudar para um nível de plano superior. Quando o navegador falha em abrir, o comando mostra um prompt de login sem imprimir a URL |

165| `/usage` | Mostre custo de sessão, limites de uso do plano e estatísticas de atividade. Em um plano Pro, Max, Team ou Enterprise, inclui um [detalhamento do que conta contra seus limites de plano](https://code.claude.com/docs/pt/costs.md#plan-usage-breakdown). `/cost` e `/stats` são aliases |165| `/usage` | Mostre custo de sessão, limites de uso do plano e estatísticas de atividade. Em um plano Pro, Max, Ultra, Team ou Enterprise, inclui um [detalhamento do que conta contra seus limites de plano](https://code.claude.com/docs/pt/costs.md#plan-usage-breakdown). `/cost` e `/stats` são aliases |

166| `/usage-credits` | Configure créditos de uso, ou solicite-os do seu administrador, quando você atinge um limite. Abre suas [configurações de faturamento de créditos de uso](https://code.claude.com/docs/pt/costs.md#add-usage-credits-to-your-subscription) no navegador, exceto que membros de Team e Enterprise sem acesso de faturamento enviam uma solicitação de créditos de uso para seu administrador a partir da CLI, após confirmar em um diálogo que a solicitação notifica seus administradores. Quando nenhum navegador pode abrir a página de faturamento, por exemplo sobre SSH, o comando imprime a URL para visitar; isso requer Claude Code v2.1.205 ou posterior, e versões anteriores não mostravam nada nesse caso. Anteriormente `/extra-usage` |166| `/usage-credits` | Configure créditos de uso, ou solicite-os do seu administrador, quando você atinge um limite. Abre suas [configurações de faturamento de créditos de uso](https://code.claude.com/docs/pt/costs.md#add-usage-credits-to-your-subscription) no navegador, exceto que membros de Team e Enterprise sem acesso de faturamento enviam uma solicitação de créditos de uso para seu administrador a partir da CLI, após confirmar em um diálogo que a solicitação notifica seus administradores. Quando nenhum navegador pode abrir a página de faturamento, por exemplo sobre SSH, o comando imprime a URL para visitar; isso requer Claude Code v2.1.205 ou posterior, e versões anteriores não mostravam nada nesse caso. Anteriormente `/extra-usage` |

167| `/verify` | **[Skill](https://code.claude.com/docs/pt/skills.md#bundled-skills).** Confirme que uma mudança de código faz o que deveria fazendo o build do aplicativo do seu projeto, executando-o e observando o resultado, em vez de confiar em testes ou verificações de tipo. Consulte [Execute e verifique seu aplicativo](https://code.claude.com/docs/pt/skills.md#run-and-verify-your-app) |167| `/verify` | **[Skill](https://code.claude.com/docs/pt/skills.md#bundled-skills).** Confirme que uma mudança de código faz o que deveria fazendo o build do aplicativo do seu projeto, executando-o e observando o resultado, em vez de confiar em testes ou verificações de tipo. Consulte [Execute e verifique seu aplicativo](https://code.claude.com/docs/pt/skills.md#run-and-verify-your-app) |

168| `/vim` | Removido na v2.1.92. Para alternar entre modos de edição Vim e Normal, use `/config` → Editor mode |168| `/vim` | Removido na v2.1.92. Para alternar entre modos de edição Vim e Normal, use `/config` → Editor mode |

Details

500 500 

501## Próximos passos501## Próximos passos

502 502 

503> **[Melhores práticas](https://code.claude.com/docs/pt/best-practices.md)**503> [card] [Melhores práticas](https://code.claude.com/docs/pt/best-practices.md)

504>504>

505> Padrões para aproveitar ao máximo Claude Code505> Padrões para aproveitar ao máximo Claude Code

506 506 

507> **[Gerenciar sessões](https://code.claude.com/docs/pt/sessions.md)**507> [card] [Gerenciar sessões](https://code.claude.com/docs/pt/sessions.md)

508>508>

509> Retomar, nomear e ramificar conversas509> Retomar, nomear e ramificar conversas

510 510 

511> **[Worktrees](https://code.claude.com/docs/pt/worktrees.md)**511> [card] [Worktrees](https://code.claude.com/docs/pt/worktrees.md)

512>512>

513> Executar sessões paralelas isoladas513> Executar sessões paralelas isoladas

514 514 

515> **[Estender Claude Code](https://code.claude.com/docs/pt/features-overview.md)**515> [card] [Estender Claude Code](https://code.claude.com/docs/pt/features-overview.md)

516>516>

517> Adicionar skills, hooks, MCP, subagents e plugins517> Adicionar skills, hooks, MCP, subagents e plugins

communications-kit.md +105 −105

Details

33 33 

34Use isto como sua mensagem padrão de lançamento em toda a organização. Ele cobre o que é Claude Code, fornece um caminho de instalação de dois minutos, oferece aos leitores uma tarefa concreta para tentar e responde "para onde vai meu código?" antes que alguém tenha que perguntar.34Use isto como sua mensagem padrão de lançamento em toda a organização. Ele cobre o que é Claude Code, fornece um caminho de instalação de dois minutos, oferece aos leitores uma tarefa concreta para tentar e responde "para onde vai meu código?" antes que alguém tenha que perguntar.

35 35 

36**Email**36> [tab] Email

37 37>

38```text theme={null}38> ```text theme={null}

39Assunto: Claude Code está ativo para [Engenharia / seu time]39> Assunto: Claude Code está ativo para [Engenharia / seu time]

40 40>

41Time,41> Time,

42 42>

43A partir de hoje você tem acesso a Claude Code, um agente de codificação de IA que funciona em43> A partir de hoje você tem acesso a Claude Code, um agente de codificação de IA que funciona em

44seu terminal, lê sua base de código real, e trabalha através de tarefas reais de ponta44> seu terminal, lê sua base de código real, e trabalha através de tarefas reais de ponta

45a ponta: depuração, refatorações, testes, PRs. Não é autocompletar e não é45> a ponta: depuração, refatorações, testes, PRs. Não é autocompletar e não é

46uma janela de chat. Ele edita arquivos e executa seus comandos.46> uma janela de chat. Ele edita arquivos e executa seus comandos.

47 47>

48Comece em dois minutos:48> Comece em dois minutos:

49 49>

50 curl -fsSL https://claude.ai/install.sh | bash50> curl -fsSL https://claude.ai/install.sh | bash

51 cd <seu-repositório>51> cd <seu-repositório>

52 claude52> claude

53 53>

54Depois execute /init uma vez. Claude lê seu projeto e escreve um CLAUDE.md com54> Depois execute /init uma vez. Claude lê seu projeto e escreve um CLAUDE.md com

55seus comandos de build e convenções, para que você pare de re-explicar o básico.55> seus comandos de build e convenções, para que você pare de re-explicar o básico.

56 56>

57Depois tente um destes no repositório em que você já está:57> Depois tente um destes no repositório em que você já está:

58 58>

59 - "O teste em [arquivo] é instável. Descubra por que e corrija"59> - "O teste em [arquivo] é instável. Descubra por que e corrija"

60 - "Me mostre como [módulo] lida com [X]"60> - "Me mostre como [módulo] lida com [X]"

61 - "Olhe meu diff de trabalho e me diga o que é arriscado antes de eu fazer push"61> - "Olhe meu diff de trabalho e me diga o que é arriscado antes de eu fazer push"

62 62>

63Para onde seu código vai: Claude Code funciona em seu terminal e fala diretamente63> Para onde seu código vai: Claude Code funciona em seu terminal e fala diretamente

64com a API da Anthropic. Sob nosso plano Team ou Enterprise, Anthropic não usa64> com a API da Anthropic. Sob nosso plano Team ou Enterprise, Anthropic não usa

65seu código ou prompts para treinar seus modelos.65> seu código ou prompts para treinar seus modelos.

66Detalhes: https://code.claude.com/docs/pt/data-usage66> Detalhes: https://code.claude.com/docs/pt/data-usage

67 https://code.claude.com/docs/pt/security67> https://code.claude.com/docs/pt/security

68 68>

69Para onde ir com perguntas: #claude-code. [Nome do proprietário] está observando69> Para onde ir com perguntas: #claude-code. [Nome do proprietário] está observando

70esta semana.70> esta semana.

71 71>

72- [Nome]72> - [Nome]

73 73>

74P.S. Prefere seu editor? Há uma extensão VS Code e um74> P.S. Prefere seu editor? Há uma extensão VS Code e um

75plugin JetBrains. Mesmo agente, sem terminal necessário.75> plugin JetBrains. Mesmo agente, sem terminal necessário.

76```76> ```

77 

78**Slack ou Teams**

79 

80```markdown theme={null}

81🚀 *Claude Code está ativo para [time]*

82 

83Agente de codificação de IA, funciona em seu terminal, lê seu repositório, faz trabalho real:

84bugs, refatorações, testes, PRs.

85 

86`curl -fsSL https://claude.ai/install.sh | bash` → `cd seu-repositório` → `claude`

87 

88*Primeira coisa para tentar* → execute `/init`, depois: "o teste em [arquivo] é instável,

89descubra por que e corrija".

90 

91🔒 Funciona em seu terminal, fala diretamente com a API da Anthropic. Sob nosso

92plano Team ou Enterprise seu código e prompts não são usados para treinar modelos.

93Uso de dados → https://code.claude.com/docs/pt/data-usage

94 

95📚 Guia de início rápido · VS Code · Curso gratuito de 1 hora

96 https://code.claude.com/docs/pt/quickstart

97 https://code.claude.com/docs/pt/vs-code

98 https://academy.claude.com/courses/claude-code-in-action

99 77 

100Perguntas → esta thread. [Proprietário] está na ponta.78> [tab] Slack ou Teams

101```79>

80> ```markdown theme={null}

81> 🚀 *Claude Code está ativo para [time]*

82>

83> Agente de codificação de IA, funciona em seu terminal, lê seu repositório, faz trabalho real:

84> bugs, refatorações, testes, PRs.

85>

86> `curl -fsSL https://claude.ai/install.sh | bash` → `cd seu-repositório` → `claude`

87>

88> *Primeira coisa para tentar* → execute `/init`, depois: "o teste em [arquivo] é instável,

89> descubra por que e corrija".

90>

91> 🔒 Funciona em seu terminal, fala diretamente com a API da Anthropic. Sob nosso

92> plano Team ou Enterprise seu código e prompts não são usados para treinar modelos.

93> Uso de dados → https://code.claude.com/docs/pt/data-usage

94>

95> 📚 Guia de início rápido · VS Code · Curso gratuito de 1 hora

96> https://code.claude.com/docs/pt/quickstart

97> https://code.claude.com/docs/pt/vs-code

98> https://academy.claude.com/courses/claude-code-in-action

99>

100> Perguntas → esta thread. [Proprietário] está na ponta.

101> ```

102 102 

103### Variante de patrocinador executivo103### Variante de patrocinador executivo

104 104 


106 106 

107Esta versão é deliberadamente reduzida a um pedido: instale e execute em uma tarefa real. O trabalho do executivo é fazer o pedido chegar; o anúncio padrão e `#claude-code` lidam com o como.107Esta versão é deliberadamente reduzida a um pedido: instale e execute em uma tarefa real. O trabalho do executivo é fazer o pedido chegar; o anúncio padrão e `#claude-code` lidam com o como.

108 108 

109**Email**109> [tab] Email

110 110>

111```text theme={null}111> ```text theme={null}

112Assunto: Uma coisa que gostaria que cada engenheiro tentasse esta semana112> Assunto: Uma coisa que gostaria que cada engenheiro tentasse esta semana

113 113>

114Time,114> Time,

115 115>

116Ativamos Claude Code para toda a engenharia. É um agente de IA116> Ativamos Claude Code para toda a engenharia. É um agente de IA

117que funciona diretamente em seu terminal, em seu código real, e os117> que funciona diretamente em seu terminal, em seu código real, e os

118resultados iniciais de times que já o usam são fortes o suficiente para que eu queira118> resultados iniciais de times que já o usam são fortes o suficiente para que eu queira

119que todos o usem esta semana.119> que todos o usem esta semana.

120 120>

121Estou pedindo dez minutos:121> Estou pedindo dez minutos:

122 122>

123 curl -fsSL https://claude.ai/install.sh | bash123> curl -fsSL https://claude.ai/install.sh | bash

124 cd <seu-repositório>124> cd <seu-repositório>

125 claude125> claude

126 126>

127Depois dê a ele uma tarefa real: o bug que você vem adiando, ou "me mostre127> Depois dê a ele uma tarefa real: o bug que você vem adiando, ou "me mostre

128como [módulo] funciona".128> como [módulo] funciona".

129 129>

130Esse é o pedido inteiro. [Nome do proprietário] e time estão em #claude-code para130> Esse é o pedido inteiro. [Nome do proprietário] e time estão em #claude-code para

131qualquer coisa que você encontre pelo caminho.131> qualquer coisa que você encontre pelo caminho.

132 132>

133- [Nome do Executivo]133> - [Nome do Executivo]

134 [Título]134> [Título]

135```135> ```

136 

137**Slack ou Teams**

138 

139```markdown theme={null}

140📣 *De [Nome do Executivo]: uma coisa para tentar esta semana*

141 

142Ativamos *Claude Code* para toda a engenharia. Resultados iniciais são

143fortes o suficiente para que eu peça a todos que dediquem dez minutos a trabalho real esta semana.

144 

145`curl -fsSL https://claude.ai/install.sh | bash` → `cd seu-repositório` →

146`claude` → dê a ele uma tarefa real.

147 136 

148Isso é tudo. Perguntas → #claude-code.137> [tab] Slack ou Teams

149```138>

139> ```markdown theme={null}

140> 📣 *De [Nome do Executivo]: uma coisa para tentar esta semana*

141>

142> Ativamos *Claude Code* para toda a engenharia. Resultados iniciais são

143> fortes o suficiente para que eu peça a todos que dediquem dez minutos a trabalho real esta semana.

144>

145> `curl -fsSL https://claude.ai/install.sh | bash` → `cd seu-repositório` →

146> `claude` → dê a ele uma tarefa real.

147>

148> Isso é tudo. Perguntas → #claude-code.

149> ```

150 150 

151### Variante de grupo piloto151### Variante de grupo piloto

152 152 

computer-use.md +2 −2

Details

8 8 

9> [!NOTE]9> [!NOTE]

10>10>

11> Computer use é uma visualização de pesquisa no macOS que requer um plano Pro ou Max. Não está disponível em planos Team ou Enterprise. Requer uma sessão interativa, portanto não está disponível em modo não interativo com a flag `-p`.11> Computer use é uma prévia de pesquisa no macOS que requer um plano Pro, Max ou Ultra. Não está disponível em planos Team ou Enterprise. Requer uma sessão interativa, portanto não está disponível em modo não interativo com a flag `-p`.

12 12 

13Computer use permite que Claude abra aplicativos, controle sua tela e trabalhe em sua máquina da forma como você faria. A partir da CLI, Claude pode compilar um aplicativo Swift, iniciá-lo, clicar em cada botão e capturar uma tela do resultado, tudo na mesma conversa em que escreveu o código.13Computer use permite que Claude abra aplicativos, controle sua tela e trabalhe em sua máquina da forma como você faria. A partir da CLI, Claude pode compilar um aplicativo Swift, iniciá-lo, clicar em cada botão e capturar uma tela do resultado, tudo na mesma conversa em que escreveu o código.

14 14 


198O servidor só aparece em configurações elegíveis. Verifique se:198O servidor só aparece em configurações elegíveis. Verifique se:

199 199 

200* Você está no macOS. Computer use na CLI não está disponível no Linux ou Windows. No Windows, use [computer use em Desktop](https://code.claude.com/docs/pt/desktop.md#let-claude-use-your-computer) em vez disso.200* Você está no macOS. Computer use na CLI não está disponível no Linux ou Windows. No Windows, use [computer use em Desktop](https://code.claude.com/docs/pt/desktop.md#let-claude-use-your-computer) em vez disso.

201* Você está em um plano Pro ou Max. Execute `/status` para confirmar sua assinatura.201* Você está em um plano Pro, Max ou Ultra. Execute `/status` para confirmar sua assinatura.

202* Você está autenticado através de claude.ai. Computer use não está disponível com provedores de terceiros como Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry. Se você acessar Claude exclusivamente através de um provedor de terceiros, você precisa de uma conta claude.ai separada para usar este recurso.202* Você está autenticado através de claude.ai. Computer use não está disponível com provedores de terceiros como Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry. Se você acessar Claude exclusivamente através de um provedor de terceiros, você precisa de uma conta claude.ai separada para usar este recurso.

203* Você está em uma sessão interativa. Computer use não está disponível em modo não interativo com a flag `-p`.203* Você está em uma sessão interativa. Computer use não está disponível em modo não interativo com a flag `-p`.

204 204 

costs.md +50 −50

Details

6 6 

7> Rastreie o uso de tokens, defina limites de gastos da equipe e reduza os custos do Claude Code com gerenciamento de contexto, seleção de modelo, configurações de pensamento estendido e hooks de pré-processamento.7> Rastreie o uso de tokens, defina limites de gastos da equipe e reduza os custos do Claude Code com gerenciamento de contexto, seleção de modelo, configurações de pensamento estendido e hooks de pré-processamento.

8 8 

9Claude Code cobra pelo consumo de tokens da API. Para preços do plano de assinatura (Pro, Max, Team, Enterprise), consulte [claude.com/pricing](https://claude.com/pricing). Os custos por desenvolvedor variam amplamente com base na seleção de modelo, tamanho da base de código e padrões de uso, como executar múltiplas instâncias ou automação.9Claude Code cobra pelo consumo de tokens da API. Para preços do plano de assinatura (Pro, Max, Ultra, Team, Enterprise), consulte [claude.com/pricing](https://claude.com/pricing). Os custos por desenvolvedor variam amplamente com base na seleção de modelo, tamanho da base de código e padrões de uso, como executar múltiplas instâncias ou automação.

10 10 

11Em implantações empresariais, o custo médio é de cerca de \$13 por desenvolvedor por dia ativo e \$150-250 por desenvolvedor por mês, com custos permanecendo abaixo de \$30 por dia ativo para 90% dos usuários. Para estimar gastos para sua própria equipe, comece com um pequeno grupo piloto e use as ferramentas de rastreamento abaixo para estabelecer uma linha de base antes de um lançamento mais amplo.11Em implantações empresariais, o custo médio é de cerca de \$13 por desenvolvedor por dia ativo e \$150-250 por desenvolvedor por mês, com custos permanecendo abaixo de \$30 por dia ativo para 90% dos usuários. Para estimar gastos para sua própria equipe, comece com um pequeno grupo piloto e use as ferramentas de rastreamento abaixo para estabelecer uma linha de base antes de um lançamento mais amplo.

12 12 


18 18 

19> [!NOTE]19> [!NOTE]

20>20>

21> O bloco Session em `/usage` mostra o uso de tokens da API e é destinado a usuários de API. Assinantes do Claude Max e Pro têm uso incluído em sua assinatura, portanto, a figura de custo da sessão não é relevante para fins de faturamento. Os assinantes veem barras de uso do plano, estatísticas de atividade e um detalhamento de uso na mesma tela.21> O bloco Session em `/usage` mostra o uso de tokens da API e é destinado a usuários de API. Assinantes do Claude Pro, Max e Ultra têm uso incluído em sua assinatura, portanto, a figura de custo da sessão não é relevante para fins de faturamento. Os assinantes veem barras de uso do plano, estatísticas de atividade e um detalhamento de uso na mesma tela.

22 22 

23O bloco Session no topo de `/usage` mostra estatísticas detalhadas de uso de tokens para sua sessão atual. Claude Code calcula a figura em dólares localmente a partir de contagens de tokens ao preço de tabela, a menos que uma tabela [`modelPricing`](https://code.claude.com/docs/pt/settings-reference#modelpricing) esteja em vigor. Um administrador define uma nas configurações gerenciadas de sua organização para que a figura use suas taxas contratadas, e enquanto uma tabela está em vigor, a linha `Total cost` carrega a nota `at your organization's configured rates`. A figura é uma estimativa, portanto, para faturamento autorizado, consulte a página de Uso no [Claude Console](https://platform.claude.com/usage).23O bloco Session no topo de `/usage` mostra estatísticas detalhadas de uso de tokens para sua sessão atual. Claude Code calcula a figura em dólares localmente a partir de contagens de tokens ao preço de tabela, a menos que uma tabela [`modelPricing`](https://code.claude.com/docs/pt/settings-reference#modelpricing) esteja em vigor. Um administrador define uma nas configurações gerenciadas de sua organização para que a figura use suas taxas contratadas, e enquanto uma tabela está em vigor, a linha `Total cost` carrega a nota `at your organization's configured rates`. A figura é uma estimativa, portanto, para faturamento autorizado, consulte a página de Uso no [Claude Console](https://platform.claude.com/usage).

24 24 


55 55 

56#### Detalhamento de uso do plano56#### Detalhamento de uso do plano

57 57 

58Em um plano Pro, Max, Team ou Enterprise, `/usage` também mostra um detalhamento do que conta contra seus limites de plano, com recomendações:58Em um plano Pro, Max, Ultra, Team ou Enterprise, `/usage` também mostra um detalhamento do que conta contra seus limites de plano, com recomendações:

59 59 

60* **Attribution**: uso recente atribuído a skills, subagents, plugins e servidores MCP individuais, cada um mostrado como uma porcentagem do total. A participação de um servidor MCP conta apenas as solicitações que consumiram um de seus resultados de ferramenta. Antes da v2.1.222, após uma chamada para um servidor MCP, Claude Code atribuía cada solicitação subsequente a esse servidor, superestimando sua participação.60* **Attribution**: uso recente atribuído a skills, subagents, plugins e servidores MCP individuais, cada um mostrado como uma porcentagem do total. A participação de um servidor MCP conta apenas as solicitações que consumiram um de seus resultados de ferramenta. Antes da v2.1.222, após uma chamada para um servidor MCP, Claude Code atribuía cada solicitação subsequente a esse servidor, superestimando sua participação.

61* **Recommendations**: mudanças sugeridas, uma por linha. Cada linha começa com uma proporção do seu uso recente, de pelo menos 10%, como em `25% Trim ~/code/api/CLAUDE.md · 49k tokens per request`.61* **Recommendations**: mudanças sugeridas, uma por linha. Cada linha começa com uma proporção do seu uso recente, de pelo menos 10%, como em `25% Trim ~/code/api/CLAUDE.md · 49k tokens per request`.


92 92 

93`/usage` também mostra uma linha de créditos de uso enquanto [créditos de uso](#add-usage-credits-to-your-subscription) estão ativados. O que a linha mostra depende do seu plano:93`/usage` também mostra uma linha de créditos de uso enquanto [créditos de uso](#add-usage-credits-to-your-subscription) estão ativados. O que a linha mostra depende do seu plano:

94 94 

95* **Pro e Max**: seu gasto para o mês atual, medido contra seu limite de gasto mensal quando você definiu um. Quando você não definiu um limite, a linha mostra `Unlimited` e nenhuma figura de gasto.95* **Pro, Max e Ultra**: seu gasto para o mês atual, medido contra seu limite de gasto mensal quando você definiu um. Quando você não definiu um limite, a linha mostra `Unlimited` e nenhuma figura de gasto.

96* **Team e Enterprise**: seu próprio gasto para o mês atual, medido contra qualquer [limite que sua organização definiu](#claude-for-teams-and-enterprise) que se aplique a você. Um limite que cobre toda a organização não aparece na linha. Quando você não tem limite próprio, a linha mostra seu gasto sem limite ao lado. Enquanto créditos de uso estão desativados para você, `/usage` não mostra uma linha de créditos de uso.96* **Team e Enterprise**: seu próprio gasto para o mês atual, medido contra qualquer [limite que sua organização definiu](#claude-for-teams-and-enterprise) que se aplique a você. Um limite que cobre toda a organização não aparece na linha. Quando você não tem limite próprio, a linha mostra seu gasto sem limite ao lado. Enquanto créditos de uso estão desativados para você, `/usage` não mostra uma linha de créditos de uso.

97 97 

98Quando você tem um limite de gasto, a linha aparece assim que créditos de uso estão ativados e mostra 0% até você gastar créditos de uso pela primeira vez. Antes da v2.1.236, `/usage` mostrava a linha apenas em planos Pro e Max, e uma linha com um limite de gasto permanecia oculta até você ter gasto algo.98Quando você tem um limite de gasto, a linha aparece assim que créditos de uso estão ativados e mostra 0% até você gastar créditos de uso pela primeira vez. Antes da v2.1.236, `/usage` mostrava a linha apenas em planos Pro, Max e Ultra, e uma linha com um limite de gasto permanecia oculta até você ter gasto algo.

99 99 

100#### Quando a solicitação de uso falha100#### Quando a solicitação de uso falha

101 101 


130 130 

131| Sua função | O que `/usage-credits` faz |131| Sua função | O que `/usage-credits` faz |

132| :- | :- |132| :- | :- |

133| Assinante Pro ou Max | Abre [**Settings > Usage**](https://claude.ai/settings/usage) em claude.ai no navegador. Em sua seção **Usage credits** você pode ativar ou desativar créditos de uso e verificar seu saldo de crédito, gasto deste mês e seu limite de gasto mensal |133| Assinante Pro, Max ou Ultra | Abre [**Settings > Usage**](https://claude.ai/settings/usage) em claude.ai no navegador. Em sua seção **Usage credits** você pode ativar ou desativar créditos de uso e verificar seu saldo de crédito, gasto deste mês e seu limite de gasto mensal |

134| Membro de Team ou Enterprise com acesso de faturamento | Abre as configurações de uso de sua organização, [**Organization settings > Usage**](https://claude.ai/admin-settings/usage), no navegador |134| Membro de Team ou Enterprise com acesso de faturamento | Abre as configurações de uso de sua organização, [**Organization settings > Usage**](https://claude.ai/admin-settings/usage), no navegador |

135| Membro de Team ou Enterprise sem acesso de faturamento | Pede que você confirme, então envia uma solicitação aos administradores de sua organização. Antes da v2.1.211, Claude Code enviava a solicitação sem uma etapa de confirmação |135| Membro de Team ou Enterprise sem acesso de faturamento | Pede que você confirme, então envia uma solicitação aos administradores de sua organização. Antes da v2.1.211, Claude Code enviava a solicitação sem uma etapa de confirmação |

136 136 


144 144 

145Quais controles você tem depende de como sua organização acessa Claude Code: um plano Claude for Teams ou Enterprise, o Claude Console, ou um provedor de nuvem. Nos planos Teams e Enterprise, o uso é extraído da cota de cada membro. No Console e em provedores de nuvem, o uso é faturado por token para sua organização. Se sua organização mistura métodos de login, cada desenvolvedor é medido de acordo com aquele com o qual se autenticou.145Quais controles você tem depende de como sua organização acessa Claude Code: um plano Claude for Teams ou Enterprise, o Claude Console, ou um provedor de nuvem. Nos planos Teams e Enterprise, o uso é extraído da cota de cada membro. No Console e em provedores de nuvem, o uso é faturado por token para sua organização. Se sua organização mistura métodos de login, cada desenvolvedor é medido de acordo com aquele com o qual se autenticou.

146 146 

147A tabela mapeia cada configuração para onde você vê gastos, onde você os limita e como você extrai números por usuário. Em um plano individual Pro ou Max, você não tem organização para gerenciar, então rastreie seu próprio gasto de créditos de uso, incluindo [modo rápido](https://code.claude.com/docs/pt/fast-mode.md#see-where-fast-mode-spend-appears), em [Adicionar créditos de uso à sua assinatura](#add-usage-credits-to-your-subscription).147A tabela mapeia cada configuração para onde você vê gastos, onde você os limita e como você extrai números por usuário. Em um plano individual Pro, Max ou Ultra, você não tem organização para gerenciar, então rastreie seu próprio gasto de créditos de uso, incluindo [modo rápido](https://code.claude.com/docs/pt/fast-mode.md#see-where-fast-mode-spend-appears), em [Adicionar créditos de uso à sua assinatura](#add-usage-credits-to-your-subscription).

148 148 

149| Sua configuração | Ver gastos | Limitar gastos | Relatório por usuário |149| Sua configuração | Ver gastos | Limitar gastos | Relatório por usuário |

150| :- | :- | :- | :- |150| :- | :- | :- | :- |


294 294 

295Por exemplo, este hook PreToolUse filtra a saída de teste para mostrar apenas falhas:295Por exemplo, este hook PreToolUse filtra a saída de teste para mostrar apenas falhas:

296 296 

297**settings.json**297> [tab] settings.json

298 298>

299Adicione isto ao seu [settings.json](https://code.claude.com/docs/pt/settings.md#where-settings-live) para executar o hook antes de cada comando Bash:299> Adicione isto ao seu [settings.json](https://code.claude.com/docs/pt/settings.md#where-settings-live) para executar o hook antes de cada comando Bash:

300 300>

301```json theme={null}301> ```json theme={null}

302{302> {

303 "hooks": {303> "hooks": {

304 "PreToolUse": [304> "PreToolUse": [

305 {305> {

306 "matcher": "Bash",306> "matcher": "Bash",

307 "hooks": [307> "hooks": [

308 {308> {

309 "type": "command",309> "type": "command",

310 "command": "~/.claude/hooks/filter-test-output.sh"310> "command": "~/.claude/hooks/filter-test-output.sh"

311 }311> }

312 ]312> ]

313 }313> }

314 ]314> ]

315 }315> }

316}316> }

317```317> ```

318 318 

319**filter-test-output.sh**319> [tab] filter-test-output.sh

320 320>

321O hook chama este script. Crie a pasta com `mkdir -p ~/.claude/hooks`, salve o script abaixo como `~/.claude/hooks/filter-test-output.sh` e torne-o executável com `chmod +x ~/.claude/hooks/filter-test-output.sh`. Ele verifica se o comando é um executor de teste e o modifica para mostrar apenas falhas:321> O hook chama este script. Crie a pasta com `mkdir -p ~/.claude/hooks`, salve o script abaixo como `~/.claude/hooks/filter-test-output.sh` e torne-o executável com `chmod +x ~/.claude/hooks/filter-test-output.sh`. Ele verifica se o comando é um executor de teste e o modifica para mostrar apenas falhas:

322 322>

323```bash theme={null}323> ```bash theme={null}

324#!/bin/bash324> #!/bin/bash

325input=$(cat)325> input=$(cat)

326cmd=$(echo "$input" | jq -r '.tool_input.command')326> cmd=$(echo "$input" | jq -r '.tool_input.command')

327 327>

328# If running tests, filter to show only failures328> # If running tests, filter to show only failures

329pattern='^(npm test|pytest|go test)( [^;&|<>`$#\\[:cntrl:]]*)?$'329> pattern='^(npm test|pytest|go test)( [^;&|<>`$#\\[:cntrl:]]*)?$'

330if [[ "$cmd" =~ $pattern ]]; then330> if [[ "$cmd" =~ $pattern ]]; then

331 filtered_cmd="$cmd 2>&1 | grep -A 5 -E '(FAIL|ERROR|error:)' | head -100"331> filtered_cmd="$cmd 2>&1 | grep -A 5 -E '(FAIL|ERROR|error:)' | head -100"

332 echo "$input" | jq --arg filtered "$filtered_cmd" \332> echo "$input" | jq --arg filtered "$filtered_cmd" \

333 '{hookSpecificOutput: {hookEventName: "PreToolUse", updatedInput: (.tool_input + {command: $filtered})}}'333> '{hookSpecificOutput: {hookEventName: "PreToolUse", updatedInput: (.tool_input + {command: $filtered})}}'

334else334> else

335 echo "{}"335> echo "{}"

336fi336> fi

337```337> ```

338 338 

339Para verificar a configuração, execute `/hooks` e verifique se o hook aparece sob PreToolUse. Você também pode iniciar Claude Code com `claude --debug-file ./claude-debug.txt` e pedir a Claude para executar `npm test`. Quando o hook reescreve o comando, esse arquivo de log contém uma linha `modified tool input keys` listando `command` e os outros campos de entrada Bash.339Para verificar a configuração, execute `/hooks` e verifique se o hook aparece sob PreToolUse. Você também pode iniciar Claude Code com `claude --debug-file ./claude-debug.txt` e pedir a Claude para executar `npm test`. Quando o hook reescreve o comando, esse arquivo de log contém uma linha `modified tool input keys` listando `command` e os outros campos de entrada Bash.

340 340 


392* **Colegas de equipe agentes**: cada [colega de equipe](#agent-team-token-costs) ativo continua consumindo tokens até sair392* **Colegas de equipe agentes**: cada [colega de equipe](#agent-team-token-costs) ativo continua consumindo tokens até sair

393* **Compactação**: `/compact` lê a conversa que resume, então [compactar um contexto grande](https://code.claude.com/docs/pt/prompt-caching.md#compacting-the-conversation) é em si uma solicitação grande. Quando você quer um novo começo em vez de continuidade, `/clear` não custa nada393* **Compactação**: `/compact` lê a conversa que resume, então [compactar um contexto grande](https://code.claude.com/docs/pt/prompt-caching.md#compacting-the-conversation) é em si uma solicitação grande. Quando você quer um novo começo em vez de continuidade, `/clear` não custa nada

394 394 

395Em um plano Pro, Max, Team ou Enterprise, a [divisão do `/usage`](#plan-usage-breakdown) recomenda uma mudança para comportamentos que representam 10% ou mais do seu uso recente, como contexto longo ou cache misses.395Para ver o que mudar em um plano Pro, Max, Ultra, Team ou Enterprise, execute [`/usage`](#plan-usage-breakdown) no prompt do Claude Code. Sua divisão recomenda uma mudança para comportamentos que representam 10% ou mais do seu uso recente. Esses comportamentos incluem contexto longo e cache misses.

396 396 

397## Compreendendo mudanças no comportamento do Claude Code397## Compreendendo mudanças no comportamento do Claude Code

398 398 


400 400 

401Para dúvidas sobre faturamento da sua conta específica, entre em contato com o suporte da Anthropic através do mensageiro integrado no produto:401Para dúvidas sobre faturamento da sua conta específica, entre em contato com o suporte da Anthropic através do mensageiro integrado no produto:

402 402 

403* **Planos de assinatura** (Pro, Max, Team, Enterprise): faça login em [claude.ai](https://claude.ai), clique em suas iniciais no canto inferior esquerdo e selecione **Obter ajuda**403* **Planos de assinatura** (Pro, Max, Ultra, Team, Enterprise): faça login em [claude.ai](https://claude.ai), clique em suas iniciais no canto inferior esquerdo e selecione **Obter ajuda**

404* **Faturamento do Console (API)**: faça login em [platform.claude.com](https://platform.claude.com), clique em suas iniciais e selecione **Obter ajuda**404* **Faturamento do Console (API)**: faça login em [platform.claude.com](https://platform.claude.com), clique em suas iniciais e selecione **Obter ajuda**

405 405 

406Consulte [Como obter suporte](https://support.claude.com/en/articles/9015913-how-to-get-support) para o fluxo completo, incluindo quem pode alcançar um agente humano em cada plano.406Consulte [Como obter suporte](https://support.claude.com/en/articles/9015913-how-to-get-support) para o fluxo completo, incluindo quem pode alcançar um agente humano em cada plano.

data-usage.md +27 −27

Details

8 8 

9## Políticas de dados9## Políticas de dados

10 10 

11### Política de treinamento de dados11### Política de treinamento com dados

12 12 

13**Usuários consumidores (planos Free, Pro e Max)**:13**Usuários consumidores (planos Free, Pro, Max e Ultra)**:

14Oferecemos a você a opção de permitir que seus dados sejam usados para melhorar futuros modelos Claude. Treinaremos novos modelos usando dados de contas Free, Pro e Max quando essa configuração estiver ativada (inclusive quando você usa Claude Code dessas contas).14Damos a você a opção de permitir que seus dados sejam usados para melhorar futuros modelos Claude. Treinaremos novos modelos usando dados de contas Free, Pro, Max e Ultra quando essa configuração estiver ativada (inclusive quando você usa o Claude Code a partir dessas contas).

15 15 

16**Usuários comerciais**: (planos Team e Enterprise, API, plataformas de terceiros e Claude Gov) mantêm as políticas existentes: a Anthropic não treina modelos generativos usando código ou prompts enviados para Claude Code sob termos comerciais, a menos que o cliente tenha optado por fornecer seus dados para melhorias de modelo (por exemplo, o [Development Partner Program](https://support.claude.com/pt/articles/11174108-about-the-development-partner-program)).16**Usuários comerciais**: (planos Team e Enterprise, API, plataformas de terceiros e Claude Gov) mantêm as políticas existentes: a Anthropic não treina modelos generativos usando código ou prompts enviados ao Claude Code sob termos comerciais, a menos que o cliente tenha optado por nos fornecer seus dados para melhoria de modelos (por exemplo, o [Developer Partner Program](https://support.claude.com/en/articles/11174108-about-the-development-partner-program)).

17 17 

18### Development Partner Program18### Development Partner Program

19 19 

20Se você optar explicitamente por métodos para nos fornecer materiais para treinar, como através do [Development Partner Program](https://support.claude.com/pt/articles/11174108-about-the-development-partner-program), podemos usar esses materiais fornecidos para treinar nossos modelos. Um administrador da organização pode optar explicitamente pelo Development Partner Program para sua organização. Observe que este programa está disponível apenas para API de primeira parte da Anthropic, e não para usuários de Amazon Bedrock ou Google Cloud's Agent Platform.20Se você optar explicitamente por métodos para nos fornecer materiais para treinamento, como por meio do [Development Partner Program](https://support.claude.com/en/articles/11174108-about-the-development-partner-program), poderemos usar os materiais fornecidos para treinar nossos modelos. Um administrador da organização pode optar expressamente pelo Development Partner Program para sua organização. Observe que este programa está disponível apenas para a API first-party da Anthropic, e não para usuários do Amazon Bedrock ou do Agent Platform do Google Cloud.

21 21 

22### Feedback usando o comando `/feedback`22### Feedback usando o comando `/feedback`

23 23 

24Se você optar por nos enviar feedback sobre Claude Code usando o comando `/feedback`, podemos usar seu feedback para melhorar nossos produtos e serviços. As transcrições compartilhadas via `/feedback`, ou via `/bug` e `/share`, que são reportadas através do mesmo caminho, são retidas por 5 anos.24Se você optar por nos enviar feedback sobre o Claude Code usando o comando `/feedback`, poderemos usar seu feedback para melhorar nossos produtos e serviços. As transcrições compartilhadas via `/feedback`, ou via `/bug` e `/share`, que reportam pelo mesmo caminho, são retidas por 5 anos.

25 25 

26Com [feedback redigido por Claude](https://code.claude.com/docs/pt/tools-reference.md#sendfeedback-tool-behavior), Claude também pode redigir um relatório de feedback e enfileirá-lo em sua máquina para você revisar. Claude Code não envia nada até que você escolha enviar o rascunho, e um rascunho enviado passa pelo mesmo caminho de envio e retenção que outros relatórios `/feedback`.26Com o [feedback redigido pelo Claude](https://code.claude.com/docs/pt/tools-reference.md#sendfeedback-tool-behavior), o Claude também pode redigir um relatório de feedback e colocá-lo na fila em sua máquina para que você o revise. O Claude Code não envia nada até que você escolha enviar o rascunho, e um rascunho enviado passa pelo mesmo caminho de envio e pela mesma retenção que os outros relatórios de `/feedback`.

27 27 

28### Pesquisas de qualidade de sessão28### Pesquisas de qualidade da sessão

29 29 

30Quando você vê o prompt "How is Claude doing this session?" em Claude Code, responder a esta pesquisa, inclusive selecionando "Dismiss", registra apenas sua classificação. Não coletamos ou armazenamos nenhuma transcrição de conversa, entradas, saídas ou outros dados de sessão como parte da pesquisa de classificação em si. Diferentemente do feedback com polegar para cima/para baixo ou relatórios `/feedback`, esta pesquisa de qualidade de sessão é uma métrica simples de satisfação do produto.30Quando você vê o prompt "How is Claude doing this session?" no Claude Code, responder a essa pesquisa, incluindo selecionar "Dismiss", registra apenas sua avaliação. Não coletamos nem armazenamos transcrições de conversas, entradas, saídas ou outros dados da sessão como parte do próprio prompt de avaliação. Ao contrário do feedback de polegar para cima/para baixo ou dos relatórios de `/feedback`, esta pesquisa de qualidade da sessão é uma métrica simples de satisfação com o produto.

31 31 

32Após a pesquisa de classificação, você pode ver uma pergunta de acompanhamento separada perguntando "Can Anthropic look at your session transcript to help us improve Claude Code?" (Pode a Anthropic examinar sua transcrição de sessão para nos ajudar a melhorar Claude Code?). Esta é uma segunda etapa opcional distinta da classificação:32Após o prompt de avaliação, você pode ver uma pergunta de acompanhamento separada: "Can Anthropic look at your session transcript to help us improve Claude Code?". Esta é uma segunda etapa opcional, distinta da avaliação:

33 33 

34* **Yes**: carrega sua transcrição de conversa, qualquer transcrição de subagentos e o arquivo de log de sessão bruto do disco para a Anthropic. Padrões conhecidos de chave de API e token são redatados antes do carregamento. Código-fonte, conteúdo de arquivo e outro conteúdo de conversa são carregados como estão. As transcrições compartilhadas são retidas por até 6 meses. No Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry e sessões do [gateway de aplicativos Claude](https://code.claude.com/docs/pt/claude-apps-gateway) conectadas, Yes escreve o mesmo payload em um arquivo local em `~/.claude/feedback-bundles/` em vez de fazer upload; nada sai de sua máquina até que você encaminhe esse arquivo.34* **Yes**: envia para a Anthropic a transcrição da sua conversa, quaisquer transcrições de subagentes e o arquivo de log bruto da sessão a partir do disco. Padrões conhecidos de chaves de API e tokens são ocultados antes do envio. Código-fonte, conteúdo de arquivos e outros conteúdos da conversa são enviados como estão. As transcrições compartilhadas são retidas por até 6 meses. No Amazon Bedrock, no Agent Platform do Google Cloud, no Microsoft Foundry e em sessões conectadas do [gateway de aplicativos Claude](https://code.claude.com/docs/pt/claude-apps-gateway), Yes grava o mesmo payload em um arquivo local em `~/.claude/feedback-bundles/` em vez de enviá-lo; nada sai da sua máquina até que você encaminhe esse arquivo.

35* **No** (Não): recusa sem enviar nada35* **No**: recusa sem enviar nada

36* **Don't ask again** (Não perguntar novamente): recusa e impede que este acompanhamento apareça em futuras sessões36* **Don't ask again**: recusa e impede que essa pergunta de acompanhamento apareça em sessões futuras

37 37 

38Nada é carregado a menos que você selecione explicitamente **Yes**. Organizações com [zero data retention](https://code.claude.com/docs/pt/zero-data-retention.md), ou onde o feedback de produto é desabilitado pela política da organização, ou onde `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` está definido, nunca veem este acompanhamento. Suas respostas a esta pesquisa, inclusive transcrições de sessão enviadas após a pesquisa de classificação, não afetam suas preferências de treinamento de dados e não podem ser usadas para treinar nossos modelos de IA.38Nada é enviado a menos que você selecione explicitamente **Yes**. Organizações com [retenção zero de dados](https://code.claude.com/docs/pt/zero-data-retention.md), ou onde o feedback de produto está desativado pela política da organização, ou onde `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` está definida, nunca veem essa pergunta de acompanhamento. Suas respostas a esta pesquisa, incluindo transcrições de sessões enviadas após o prompt de avaliação, não afetam suas preferências de treinamento com dados e não podem ser usadas para treinar nossos modelos de IA.

39 39 

40Para desabilitar essas pesquisas, defina `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1`. A pesquisa também é desabilitada quando `DISABLE_TELEMETRY`, `DO_NOT_TRACK`, ou `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` está definido. Organizações que bloqueiam tráfego não essencial, mas capturam respostas de pesquisa através de seu próprio [coletor OpenTelemetry](https://code.claude.com/docs/pt/monitoring-usage.md) podem optar pela pesquisa novamente definindo `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL=1`. A pesquisa então registra classificações apenas no coletor configurado. O acompanhamento de compartilhamento de transcrição e todo o outro tráfego de feedback vinculado à Anthropic permanecem desabilitados. Para controlar a frequência em vez de desabilitar, defina [`feedbackSurveyRate`](https://code.claude.com/docs/pt/settings-reference#feedbacksurveyrate) em seu arquivo de configurações para uma probabilidade entre `0` e `1`.40Para desativar essas pesquisas, defina `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1`. A pesquisa também é desativada quando `DISABLE_TELEMETRY`, `DO_NOT_TRACK` ou `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` está definida. Organizações que bloqueiam tráfego não essencial, mas capturam respostas da pesquisa por meio de seu próprio [coletor OpenTelemetry](https://code.claude.com/docs/pt/monitoring-usage.md), podem reativar a pesquisa definindo `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL=1`. A pesquisa então registra as avaliações apenas no coletor configurado. A pergunta de acompanhamento para compartilhar a transcrição e todo o outro tráfego de feedback destinado à Anthropic permanecem desativados. Para controlar a frequência em vez de desativar, defina [`feedbackSurveyRate`](https://code.claude.com/docs/pt/settings-reference#feedbacksurveyrate) no seu arquivo de configurações com uma probabilidade entre `0` e `1`.

41 41 

42### Retenção de dados42### Retenção de dados

43 43 

44A Anthropic retém dados de Claude Code com base no tipo de conta e preferências.44A Anthropic retém os dados do Claude Code com base no tipo de conta e nas suas preferências.

45 45 

46**Usuários consumidores (planos Free, Pro e Max)**:46**Usuários consumidores (planos Free, Pro, Max e Ultra)**:

47 47 

48* Usuários que permitem o uso de dados para melhorias de modelo: período de retenção de 5 anos para suportar desenvolvimento de modelo e melhorias de segurança48* Usuários que permitem o uso de dados para melhoria de modelos: período de retenção de 5 anos para apoiar o desenvolvimento de modelos e melhorias de segurança

49* Usuários que não permitem o uso de dados para melhorias de modelo: período de retenção de 30 dias49* Usuários que não permitem o uso de dados para melhoria de modelos: período de retenção de 30 dias

50* As configurações de privacidade podem ser alteradas a qualquer momento em [claude.ai/settings/data-privacy-controls](https://claude.ai/settings/data-privacy-controls).50* As configurações de privacidade podem ser alteradas a qualquer momento em [claude.ai/settings/data-privacy-controls](https://claude.ai/settings/data-privacy-controls).

51 51 

52**Usuários comerciais (Team, Enterprise e API)**:52**Usuários comerciais (Team, Enterprise e API)**:

53 53 

54* Padrão: período de retenção de 30 dias54* Padrão: período de retenção de 30 dias

55* [Zero data retention](https://code.claude.com/docs/pt/zero-data-retention.md): disponível para Claude Code no Claude for Enterprise. ZDR não está incluído no plano Enterprise padrão; é habilitado por organização após sua equipe de conta confirmar a elegibilidade55* [Retenção zero de dados](https://code.claude.com/docs/pt/zero-data-retention.md): disponível para contas qualificadas para o Claude Code no Claude for Enterprise. O ZDR não está incluído no plano Enterprise padrão; ele é ativado por organização pela sua equipe de conta após a confirmação da elegibilidade

56* Cache local: os clientes de Claude Code armazenam transcrições de sessão localmente em texto simples em `~/.claude/projects/` por 30 dias por padrão para permitir retomada de sessão. Ajuste o período com `cleanupPeriodDays`. Consulte [dados da aplicação](https://code.claude.com/docs/pt/claude-directory.md#application-data) para saber o que é armazenado e como limpá-lo.56* Cache local: os clientes do Claude Code armazenam transcrições de sessões localmente em texto simples em `~/.claude/projects/` por 30 dias por padrão, para permitir a retomada de sessões. Ajuste o período com `cleanupPeriodDays`. Consulte [dados do aplicativo](https://code.claude.com/docs/pt/claude-directory.md#application-data) para saber o que é armazenado e como limpá-lo.

57 57 

58 As transcrições de sessões iniciadas ou continuadas mais recentemente em Claude Desktop ou Cowork estão [isentas desse limite por padrão](https://code.claude.com/docs/pt/claude-directory.md#cleaned-up-automatically).58 As transcrições de sessões iniciadas ou continuadas mais recentemente no Claude Desktop ou no Cowork estão [isentas desse limite por padrão](https://code.claude.com/docs/pt/claude-directory.md#cleaned-up-automatically).

59 59 

60Você pode excluir sessões individuais de Claude Code na web a qualquer momento. Excluir uma sessão remove permanentemente os dados de evento da sessão. Para instruções sobre como excluir sessões, consulte [Excluir sessões](https://code.claude.com/docs/pt/claude-code-on-the-web.md#delete-sessions).60Você pode excluir sessões na nuvem individuais a qualquer momento. Excluir uma sessão remove permanentemente os dados de eventos da sessão. Para instruções sobre como excluir sessões, consulte [Excluir sessões](https://code.claude.com/docs/pt/claude-code-on-the-web.md#delete-sessions).

61 61 

62Saiba mais sobre práticas de retenção de dados em nosso [Privacy Center](https://privacy.anthropic.com/).62Saiba mais sobre as práticas de retenção de dados em nossa [Central de Privacidade](https://privacy.anthropic.com/).

63 63 

64Para detalhes completos, consulte nossos [Commercial Terms of Service](https://www.anthropic.com/legal/commercial-terms) (para usuários de Team, Enterprise e API) ou [Consumer Terms](https://www.anthropic.com/legal/consumer-terms) (para usuários de Free, Pro e Max) e [Privacy Policy](https://www.anthropic.com/legal/privacy).64Para detalhes completos, consulte nossos [Termos de Serviço Comerciais](https://www.anthropic.com/legal/commercial-terms) (para usuários Team, Enterprise e API) ou [Termos do Consumidor](https://www.anthropic.com/legal/consumer-terms) (para usuários Free, Pro, Max e Ultra) e a [Política de Privacidade](https://www.anthropic.com/legal/privacy).

65 65 

66## Acesso a dados66## Acesso a dados

67 67 


107 107 

108O relatório de erro está ativado apenas quando todos estes se aplicam:108O relatório de erro está ativado apenas quando todos estes se aplicam:

109 109 

110* você faz login com uma assinatura Claude Pro ou Max110* você faz login com uma assinatura Claude Pro, Max ou Ultra

111* você está executando Claude Code v2.1.198 ou posterior111* você está executando Claude Code v2.1.198 ou posterior

112* você está se conectando diretamente à API Claude112* você está se conectando diretamente à API Claude

113* sua organização não tem um acordo de retenção zero de dados ou HIPAA113* sua organização não tem um acordo de retenção zero de dados ou HIPAA


123| Serviço | Claude API | Google Cloud's Agent Platform API | Amazon Bedrock API | Microsoft Foundry API | Claude Platform on AWS |123| Serviço | Claude API | Google Cloud's Agent Platform API | Amazon Bedrock API | Microsoft Foundry API | Claude Platform on AWS |

124| - | - | - | - | - | - |124| - | - | - | - | - | - |

125| **Métricas** | Padrão ativado. `DISABLE_TELEMETRY=1` para desabilitar. | Padrão desativado. `CLAUDE_CODE_USE_VERTEX` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_BEDROCK` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_FOUNDRY` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_ANTHROPIC_AWS` deve ser 1. |125| **Métricas** | Padrão ativado. `DISABLE_TELEMETRY=1` para desabilitar. | Padrão desativado. `CLAUDE_CODE_USE_VERTEX` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_BEDROCK` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_FOUNDRY` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_ANTHROPIC_AWS` deve ser 1. |

126| **Relatórios de erro** | Ativado para inscrições Pro e Max em v2.1.198+, caso contrário desativado. `DISABLE_ERROR_REPORTING=1` para desabilitar. | Padrão desativado. `CLAUDE_CODE_USE_VERTEX` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_BEDROCK` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_FOUNDRY` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_ANTHROPIC_AWS` deve ser 1. |126| **Relatórios de erro** | Ativado para inscrições Pro, Max e Ultra em v2.1.198+, caso contrário desativado. `DISABLE_ERROR_REPORTING=1` para desabilitar. | Padrão desativado. `CLAUDE_CODE_USE_VERTEX` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_BEDROCK` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_FOUNDRY` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_ANTHROPIC_AWS` deve ser 1. |

127| **Claude API (relatórios `/feedback`)** | Padrão ativado. `DISABLE_FEEDBACK_COMMAND=1` para desabilitar. | Padrão desativado. `CLAUDE_CODE_USE_VERTEX` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_BEDROCK` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_FOUNDRY` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_ANTHROPIC_AWS` deve ser 1. |127| **Claude API (relatórios `/feedback`)** | Padrão ativado. `DISABLE_FEEDBACK_COMMAND=1` para desabilitar. | Padrão desativado. `CLAUDE_CODE_USE_VERTEX` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_BEDROCK` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_FOUNDRY` deve ser 1. | Padrão desativado. `CLAUDE_CODE_USE_ANTHROPIC_AWS` deve ser 1. |

128| **Pesquisas de qualidade de sessão** | Padrão ativado. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` para desabilitar. | Padrão ativado. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` para desabilitar. | Padrão ativado. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` para desabilitar. | Padrão ativado. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` para desabilitar. | Padrão ativado. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` para desabilitar. |128| **Pesquisas de qualidade de sessão** | Padrão ativado. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` para desabilitar. | Padrão ativado. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` para desabilitar. | Padrão ativado. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` para desabilitar. | Padrão ativado. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` para desabilitar. | Padrão ativado. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1` para desabilitar. |

129| **Verificação de segurança de domínio WebFetch** | Padrão ativado. `skipWebFetchPreflight: true` em [settings](https://code.claude.com/docs/pt/settings.md) para desabilitar. | Padrão ativado. `skipWebFetchPreflight: true` em [settings](https://code.claude.com/docs/pt/settings.md) para desabilitar. | Padrão ativado. `skipWebFetchPreflight: true` em [settings](https://code.claude.com/docs/pt/settings.md) para desabilitar. | Padrão ativado. `skipWebFetchPreflight: true` em [settings](https://code.claude.com/docs/pt/settings.md) para desabilitar. | Padrão ativado. `skipWebFetchPreflight: true` em [settings](https://code.claude.com/docs/pt/settings.md) para desabilitar. |129| **Verificação de segurança de domínio WebFetch** | Padrão ativado. `skipWebFetchPreflight: true` em [settings](https://code.claude.com/docs/pt/settings.md) para desabilitar. | Padrão ativado. `skipWebFetchPreflight: true` em [settings](https://code.claude.com/docs/pt/settings.md) para desabilitar. | Padrão ativado. `skipWebFetchPreflight: true` em [settings](https://code.claude.com/docs/pt/settings.md) para desabilitar. | Padrão ativado. `skipWebFetchPreflight: true` em [settings](https://code.claude.com/docs/pt/settings.md) para desabilitar. | Padrão ativado. `skipWebFetchPreflight: true` em [settings](https://code.claude.com/docs/pt/settings.md) para desabilitar. |

Details

95 95 

96No seu shell, sem nenhuma sessão do Claude Code em execução, crie o diretório e entre nele:96No seu shell, sem nenhuma sessão do Claude Code em execução, crie o diretório e entre nele:

97 97 

98**Bash ou Zsh**98> [tab] Bash ou Zsh

99 99>

100```bash theme={null}100> ```bash theme={null}

101mkdir -p ~/claude-clean/empty && cd ~/claude-clean/empty101> mkdir -p ~/claude-clean/empty && cd ~/claude-clean/empty

102```102> ```

103 

104**PowerShell**

105 103 

106```powershell theme={null}104> [tab] PowerShell

107New-Item -ItemType Directory -Force "$HOME/claude-clean/empty" | Out-Null105>

108Set-Location "$HOME/claude-clean/empty"106> ```powershell theme={null}

109```107> New-Item -ItemType Directory -Force "$HOME/claude-clean/empty" | Out-Null

108> Set-Location "$HOME/claude-clean/empty"

109> ```

110 110 

111**2. Inicie o Claude Code com um diretório de configuração limpo**111**2. Inicie o Claude Code com um diretório de configuração limpo**

112 112 

113No mesmo shell, defina [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/pt/env-vars) como um diretório novo no lugar de `~/.claude` e passe [`--setting-sources user`](https://code.claude.com/docs/pt/cli-reference#cli-flags) para desativar a configuração do projeto, como `.claude/settings.json`, `CLAUDE.md` e `.mcp.json`:113No mesmo shell, defina [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/pt/env-vars) como um diretório novo no lugar de `~/.claude` e passe [`--setting-sources user`](https://code.claude.com/docs/pt/cli-reference#cli-flags) para desativar a configuração do projeto, como `.claude/settings.json`, `CLAUDE.md` e `.mcp.json`:

114 114 

115**Bash ou Zsh**115> [tab] Bash ou Zsh

116 116>

117A variável se aplica apenas a este lançamento.117> A variável se aplica apenas a este lançamento.

118 118>

119```bash theme={null}119> ```bash theme={null}

120CLAUDE_CONFIG_DIR=~/claude-clean/config claude --setting-sources user120> CLAUDE_CONFIG_DIR=~/claude-clean/config claude --setting-sources user

121```121> ```

122 

123**PowerShell**

124 

125A variável permanece definida pelo restante desta sessão do PowerShell, portanto lançamentos posteriores de `claude` na mesma janela continuam usando o diretório limpo. Para voltar ao seu diretório habitual, execute `Remove-Item Env:CLAUDE_CONFIG_DIR` antes do próximo lançamento.

126 122 

127```powershell theme={null}123> [tab] PowerShell

128$env:CLAUDE_CONFIG_DIR = "$HOME/claude-clean/config"124>

129claude --setting-sources user125> A variável permanece definida pelo restante desta sessão do PowerShell, portanto lançamentos posteriores de `claude` na mesma janela continuam usando o diretório limpo. Para voltar ao seu diretório habitual, execute `Remove-Item Env:CLAUDE_CONFIG_DIR` antes do próximo lançamento.

130```126>

127> ```powershell theme={null}

128> $env:CLAUDE_CONFIG_DIR = "$HOME/claude-clean/config"

129> claude --setting-sources user

130> ```

131 131 

132No primeiro lançamento, você passa novamente pelas telas de configuração inicial, um sinal de que o diretório de configuração limpo está em vigor. As configurações gerenciadas ainda se aplicam, e os [conectores](https://code.claude.com/docs/pt/mcp.md#use-mcp-servers-from-claude-ai) ainda são carregados se você fizer login com uma conta claude.ai.132No primeiro lançamento, você passa novamente pelas telas de configuração inicial, um sinal de que o diretório de configuração limpo está em vigor. As configurações gerenciadas ainda se aplicam, e os [conectores](https://code.claude.com/docs/pt/mcp.md#use-mcp-servers-from-claude-ai) ainda são carregados se você fizer login com uma conta claude.ai.

133 133 

desktop.md +120 −90

Details

8 8 

9No aplicativo Claude Desktop, o Claude Code é a aba **Code**. O aplicativo também tem o chat e o [Cowork](https://claude.com/product/cowork), que cuida do Dispatch e de trabalho agentic mais longo. Esta página é a referência para a aba Code.9No aplicativo Claude Desktop, o Claude Code é a aba **Code**. O aplicativo também tem o chat e o [Cowork](https://claude.com/product/cowork), que cuida do Dispatch e de trabalho agentic mais longo. Esta página é a referência para a aba Code.

10 10 

11> **[Baixar para macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs)**11> [card] [Baixar para macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs)

12>12>

13> Compilação universal para Intel e Apple Silicon13> Compilação universal para Intel e Apple Silicon

14 14 

15> **[Baixar para Windows](https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs)**15> [card] [Baixar para Windows](https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs)

16>16>

17> Para processadores x6417> Para processadores x64

18 18 

19> **[Obter Claude para Linux (beta)](https://code.claude.com/docs/pt/desktop-linux.md)**19> [card] [Obter Claude para Linux (beta)](https://code.claude.com/docs/pt/desktop-linux.md)

20>20>

21> apt ou .deb para Ubuntu e Debian21> apt ou .deb para Ubuntu e Debian

22 22 


92| **Accept edits** | `acceptEdits` | Claude aceita automaticamente edições de arquivo e comandos comuns do sistema de arquivos como `mkdir`, `touch` e `mv`, mas ainda pergunta antes de executar outros comandos de terminal. Use isso quando você confia em alterações de arquivo e quer iteração mais rápida. |92| **Accept edits** | `acceptEdits` | Claude aceita automaticamente edições de arquivo e comandos comuns do sistema de arquivos como `mkdir`, `touch` e `mv`, mas ainda pergunta antes de executar outros comandos de terminal. Use isso quando você confia em alterações de arquivo e quer iteração mais rápida. |

93| **Plan** | `plan` | Claude lê arquivos e executa comandos para explorar, depois propõe um plano sem editar seu código-fonte. Bom para tarefas complexas onde você quer revisar a abordagem primeiro. |93| **Plan** | `plan` | Claude lê arquivos e executa comandos para explorar, depois propõe um plano sem editar seu código-fonte. Bom para tarefas complexas onde você quer revisar a abordagem primeiro. |

94| **Auto** | `auto` | Claude executa sem prompts de rotina; antes de ações como comandos shell e requisições de rede serem executadas, um classificador em segundo plano verifica se elas se alinham com sua solicitação. Aparece quando [o modo auto está disponível](#auto-mode-availability); não há toggle de Configurações separado para isso. |94| **Auto** | `auto` | Claude executa sem prompts de rotina; antes de ações como comandos shell e requisições de rede serem executadas, um classificador em segundo plano verifica se elas se alinham com sua solicitação. Aparece quando [o modo auto está disponível](#auto-mode-availability); não há toggle de Configurações separado para isso. |

95| **Bypass permissions** | `bypassPermissions` | Claude é executado sem prompts de permissão, exceto para as [ações que nenhum modo aprova automaticamente](https://code.claude.com/docs/pt/permission-modes.md#actions-no-mode-auto-approves), classificadores de segurança quando Claude [atua em sites externos](#browse-external-sites), ou ações de desktop como excluir uma sessão, embora não [arquivar uma](#work-across-sessions). Equivalente a `--dangerously-skip-permissions` no CLI. Em planos Pro e Max, ative "Allow bypass permissions mode" em **Settings > Code** ou **Settings > Claude Code**. Em planos Team e Enterprise não há toggle de Configurações, e a política da organização controla isso. Use apenas em containers ou VMs sandboxed. |95| **Bypass permissions** | `bypassPermissions` | Claude é executado sem prompts de permissão, exceto para as [ações que nenhum modo aprova automaticamente](https://code.claude.com/docs/pt/permission-modes.md#actions-no-mode-auto-approves), classificadores de segurança quando Claude [atua em sites externos](#browse-external-sites), ou ações de desktop como excluir uma sessão, embora não [arquivar uma](#work-across-sessions). Equivalente a `--dangerously-skip-permissions` no CLI. Em planos Pro, Max e Ultra, ative "Allow bypass permissions mode" em **Settings > Code** ou **Settings > Claude Code**. Em planos Team e Enterprise não há toggle de Configurações, e a política da organização controla isso. Use apenas em containers ou VMs sandboxed. |

96 96 

97Versões anteriores da aba Code rotulavam esses modos como Ask permissions, Auto accept edits e Plan mode.97Versões anteriores da aba Code rotulavam esses modos como Ask permissions, Auto accept edits e Plan mode.

98 98 


320 320 

321> [!NOTE]321> [!NOTE]

322>322>

323> Computer use está em prévia de pesquisa no macOS e Windows e requer um plano Pro ou Max. Não está disponível em planos Team ou Enterprise. O aplicativo Claude Desktop deve estar em execução. No macOS, computer use requer macOS 14 ou posterior.323> Computer use está em prévia de pesquisa no macOS e Windows e requer um plano Pro, Max ou Ultra. Não está disponível em planos Team ou Enterprise. O aplicativo Claude Desktop deve estar em execução. No macOS, computer use requer macOS 14 ou posterior.

324 324 

325Computer use está desativado por padrão. [Ative-o em Configurações](#enable-computer-use) antes que Claude possa controlar sua tela. No macOS, você também precisa conceder permissões de Acessibilidade e Gravação de Tela.325Computer use está desativado por padrão. [Ative-o em Configurações](#enable-computer-use) antes que Claude possa controlar sua tela. No macOS, você também precisa conceder permissões de Acessibilidade e Gravação de Tela.

326 326 


362* **Windows**: o toggle entra em efeito imediatamente e a configuração está completa362* **Windows**: o toggle entra em efeito imediatamente e a configuração está completa

363* **macOS**: continue para o próximo passo363* **macOS**: continue para o próximo passo

364 364 

365Se você não vir o toggle, confirme que você está em macOS ou Windows com um plano Pro ou Max, depois atualize e reinicie o aplicativo.365Se você não vir o toggle, confirme que você está em macOS ou Windows com um plano Pro, Max ou Ultra, depois atualize e reinicie o aplicativo.

366 366 

367**3. Conceder permissões macOS**367**3. Conceder permissões macOS**

368 368 


562 562 

563#### Configurar o Dispatch563#### Configurar o Dispatch

564 564 

565Para configuração, emparelhamento e configurações de Dispatch, veja o [artigo de ajuda do Dispatch](https://support.claude.com/en/articles/13947068). Dispatch requer um plano Pro ou Max e não está disponível em planos Team ou Enterprise.565* **Planos**: o Dispatch requer um plano Pro, Max ou Ultra e não está disponível em planos Team ou Enterprise

566* **Configuração, emparelhamento e configurações do Dispatch**: veja o [artigo de ajuda do Dispatch](https://support.claude.com/en/articles/13947068)

566 567 

567Dispatch é uma de várias maneiras de trabalhar com Claude quando você está longe de seu terminal. Para uma comparação com as outras opções, veja [Plataformas e integrações](https://code.claude.com/docs/pt/platforms.md#work-when-you-are-away-from-your-terminal).568Dispatch é uma de várias maneiras de trabalhar com Claude quando você está longe de seu terminal. Para uma comparação com as outras opções, veja [Plataformas e integrações](https://code.claude.com/docs/pt/platforms.md#work-when-you-are-away-from-your-terminal).

568 569 


738 739 

739Essas configurações mostram setups comuns para diferentes tipos de projeto:740Essas configurações mostram setups comuns para diferentes tipos de projeto:

740 741 

741**Next.js**742> [tab] Next.js

742 743>

743Esta configuração executa um aplicativo Next.js usando Yarn na porta 3000:744> Esta configuração executa um aplicativo Next.js usando Yarn na porta 3000:

744 745>

745```json theme={null}746> ```json theme={null}

746{747> {

747 "version": "0.0.1",748> "version": "0.0.1",

748 "configurations": [749> "configurations": [

749 {750> {

750 "name": "web",751> "name": "web",

751 "runtimeExecutable": "yarn",752> "runtimeExecutable": "yarn",

752 "runtimeArgs": ["dev"],753> "runtimeArgs": ["dev"],

753 "port": 3000754> "port": 3000

754 }755> }

755 ]756> ]

756}757> }

757```758> ```

758 759 

759**Multiple servers**760> [tab] Multiple servers

760 761>

761Para um monorepo com um servidor frontend e API, defina múltiplas configurações. O frontend usa `autoPort: true` para que escolha uma porta livre se 3000 estiver ocupada, enquanto o servidor API requer a porta 8080 exatamente:762> Para um monorepo com um servidor frontend e API, defina múltiplas configurações. O frontend usa `autoPort: true` para que escolha uma porta livre se 3000 estiver ocupada, enquanto o servidor API requer a porta 8080 exatamente:

762 763>

763```json theme={null}764> ```json theme={null}

764{765> {

765 "version": "0.0.1",766> "version": "0.0.1",

766 "configurations": [767> "configurations": [

767 {768> {

768 "name": "frontend",769> "name": "frontend",

769 "runtimeExecutable": "npm",770> "runtimeExecutable": "npm",

770 "runtimeArgs": ["run", "dev"],771> "runtimeArgs": ["run", "dev"],

771 "cwd": "apps/web",772> "cwd": "apps/web",

772 "port": 3000,773> "port": 3000,

773 "autoPort": true774> "autoPort": true

774 },775> },

775 {776> {

776 "name": "api",777> "name": "api",

777 "runtimeExecutable": "npm",778> "runtimeExecutable": "npm",

778 "runtimeArgs": ["run", "start"],779> "runtimeArgs": ["run", "start"],

779 "cwd": "server",780> "cwd": "server",

780 "port": 8080,781> "port": 8080,

781 "env": { "NODE_ENV": "development" },782> "env": { "NODE_ENV": "development" },

782 "autoPort": false783> "autoPort": false

783 }784> }

784 ]785> ]

785}786> }

786```787> ```

787 788 

788**Node.js script**789> [tab] Node.js script

789 790>

790Para executar um script Node.js diretamente em vez de usar um comando do gerenciador de pacotes, use o campo `program`:791> Para executar um script Node.js diretamente em vez de usar um comando do gerenciador de pacotes, use o campo `program`:

791 792>

792```json theme={null}793> ```json theme={null}

793{794> {

794 "version": "0.0.1",795> "version": "0.0.1",

795 "configurations": [796> "configurations": [

796 {797> {

797 "name": "server",798> "name": "server",

798 "program": "server.js",799> "program": "server.js",

799 "args": ["--verbose"],800> "args": ["--verbose"],

800 "port": 4000801> "port": 4000

801 }802> }

802 ]803> ]

803}804> }

804```805> ```

805 806 

806## Configuração do ambiente807## Configuração do ambiente

807 808 


1327* **Fluxos de trabalho**: o Desktop verifica cada novo [fluxo de trabalho](https://code.claude.com/docs/pt/workflows.md) antes que ele comece, portanto, enquanto o Desktop está desconectado, um novo aguarda até 10 minutos e depois falha1328* **Fluxos de trabalho**: o Desktop verifica cada novo [fluxo de trabalho](https://code.claude.com/docs/pt/workflows.md) antes que ele comece, portanto, enquanto o Desktop está desconectado, um novo aguarda até 10 minutos e depois falha

1328* **Servidores MCP**: servidores MCP que o Claude Code inicia na máquina remota não passam pelo Desktop, portanto Claude ainda pode chamar as ferramentas deles. Servidores de `claude_desktop_config.json` estão entre eles apenas se o Desktop não usar seu [cliente SSH integrado](#worktree-edits-while-disconnected). Caso contrário, e em [algumas máquinas remotas Windows](#windows-remote-machines), Claude não consegue chamar as ferramentas deles enquanto o Desktop está desconectado.1329* **Servidores MCP**: servidores MCP que o Claude Code inicia na máquina remota não passam pelo Desktop, portanto Claude ainda pode chamar as ferramentas deles. Servidores de `claude_desktop_config.json` estão entre eles apenas se o Desktop não usar seu [cliente SSH integrado](#worktree-edits-while-disconnected). Caso contrário, e em [algumas máquinas remotas Windows](#windows-remote-machines), Claude não consegue chamar as ferramentas deles enquanto o Desktop está desconectado.

1329 1330 

1330> **Quando as edições em um worktree continuam funcionando**1331> [accordion] Quando as edições em um worktree continuam funcionando

1331>1332>

1332> Em uma máquina remota Linux ou macOS, a verificação não passa pelo Desktop, portanto as edições dentro do worktree continuam funcionando enquanto o Desktop está desconectado. Antes do Claude Desktop v2.37337.0, isso vale apenas para uma máquina remota Linux.1333> Em uma máquina remota Linux ou macOS, a verificação não passa pelo Desktop, portanto as edições dentro do worktree continuam funcionando enquanto o Desktop está desconectado. Antes do Claude Desktop v2.37337.0, isso vale apenas para uma máquina remota Linux.

1333>1334>


1368* **Senha memorizada**: uma senha que você permite que o Desktop memorize também funciona sem prompt, mas, para uma ausência longa, prefira uma chave mantida pelo seu agente SSH. Se os logins com essa senha forem interrompidos ou travarem, o Desktop pode parar de se reconectar e aguardar por você.1369* **Senha memorizada**: uma senha que você permite que o Desktop memorize também funciona sem prompt, mas, para uma ausência longa, prefira uma chave mantida pelo seu agente SSH. Se os logins com essa senha forem interrompidos ou travarem, o Desktop pode parar de se reconectar e aguardar por você.

1369* **Qualquer outro prompt**: se a máquina remota solicitar qualquer outra coisa, como um código de uso único, você pode receber uma notificação no seu computador. Clique na notificação, ou envie uma mensagem na sessão, e o Desktop mostra o prompt.1370* **Qualquer outro prompt**: se a máquina remota solicitar qualquer outra coisa, como um código de uso único, você pode receber uma notificação no seu computador. Clique na notificação, ou envie uma mensagem na sessão, e o Desktop mostra o prompt.

1370 1371 

1371> **Se um jump host pede um login, a interrupção é longa, falta saída ou o processo desapareceu**1372> [accordion] Se um jump host pede um login, a interrupção é longa, falta saída ou o processo desapareceu

1372>1373>

1373> * **Jump host, os pushes param enquanto você está ausente**: isso pode acontecer com o Desktop no macOS ou no Linux quando ninguém responde ao login de um jump host, por exemplo um push para um telefone. O Desktop então para de se reconectar enquanto não há ninguém no seu computador. Quando você desbloqueia ou usa o computador, pode receber outro push, porque o Desktop pode tentar novamente. Após três tentativas sem resposta, ele aguarda até que você tente novamente ou envie uma mensagem.1374> * **Jump host, os pushes param enquanto você está ausente**: isso pode acontecer com o Desktop no macOS ou no Linux quando ninguém responde ao login de um jump host, por exemplo um push para um telefone. O Desktop então para de se reconectar enquanto não há ninguém no seu computador. Quando você desbloqueia ou usa o computador, pode receber outro push, porque o Desktop pode tentar novamente. Após três tentativas sem resposta, ele aguarda até que você tente novamente ou envie uma mensagem.

1374> * **Jump host, os pushes continuam chegando**: onde o Desktop não consegue perceber que ninguém responde, como com o Desktop no Windows, ele continua tentando enquanto tiver um processo ao qual se reconectar, esteja esse processo ainda em execução ou não. Você pode receber outro push a cada tentativa. Para encerrar as tentativas, saia do Desktop, o que [pode custar a tarefa em execução](#reopen-a-session-after-you-quit-desktop).1375> * **Jump host, os pushes continuam chegando**: onde o Desktop não consegue perceber que ninguém responde, como com o Desktop no Windows, ele continua tentando enquanto tiver um processo ao qual se reconectar, esteja esse processo ainda em execução ou não. Você pode receber outro push a cada tentativa. Para encerrar as tentativas, saia do Desktop, o que [pode custar a tarefa em execução](#reopen-a-session-after-you-quit-desktop).


1592>1593>

1593> Conexões a partir de um comando exigem o Claude Desktop v3.6556.0 ou posterior no macOS ou Linux, conectado com uma conta Claude. Os administradores podem [distribuir comandos para uma equipe](#distribute-commands-to-your-team).1594> Conexões a partir de um comando exigem o Claude Desktop v3.6556.0 ou posterior no macOS ou Linux, conectado com uma conta Claude. Os administradores podem [distribuir comandos para uma equipe](#distribute-commands-to-your-team).

1594 1595 

1595Cada entrada é uma conexão, com um host por vez. O Desktop executa o comando apenas quando você cria a conexão ou [substitui seu host](#replace-the-host), não a cada vez que você se conecta. Para manter duas máquinas ao mesmo tempo, adicione uma segunda entrada.1596O Desktop executa o comando apenas quando você cria a conexão ou [cria outra máquina](#create-another-machine), e não a cada vez que você se conecta. Cada entrada é uma conexão, que aponta para o host que o Desktop salvou por último a partir do comando da entrada.

1596 1597 

1597> [!WARNING]1598> [!WARNING]

1598>1599>

1599> O Desktop não para nem exclui máquinas. Cada uma destas continua em execução, e pode continuar gerando custos, até que você a exclua com sua ferramenta:1600> O Desktop não para nem exclui máquinas. Cada uma destas continua em execução, e pode continuar gerando custos, até que você a exclua com sua ferramenta:

1600>1601>

1601> * Um host que você substituiu1602> * Uma máquina para a qual uma entrada apontava antes de você [criar outra](#create-another-machine)

1602> * O host de uma entrada que você removeu do arquivo, ou cujo `id` você alterou1603> * As máquinas de uma entrada que você removeu do arquivo, ou cujo `id` você alterou

1603> * Uma máquina que seu comando criou sem que o Desktop salvasse seu host, por exemplo nestes casos:1604> * Uma máquina que seu comando criou sem que o Desktop salvasse o host dela, por exemplo nestes casos:

1604> * O comando falha ou excede o tempo limite1605> * O comando falha ou excede o tempo limite

1605> * O Desktop não consegue usar o host impresso, outra conexão já o usa, ou sua organização não o permite1606> * O Desktop não consegue usar o host impresso, outra conexão já o usa, ou sua organização não o permite

1606> * Enquanto o comando é executado, você o cancela, remove sua entrada, altera seu `command` ou `id`, ou encerra o Desktop1607> * Enquanto o comando é executado, você o cancela, remove a entrada dele, altera seu `command` ou `id`, ou sai do Desktop

1607 1608 

1608O exemplo a seguir adiciona uma conexão chamada Dev box. Se o arquivo não existir, crie-o. Se ele já contiver configurações, adicione a chave ao lado delas. O comando `acme-dev create` representa sua própria ferramenta, e `~/project` é a pasta que o Desktop seleciona em cada máquina que seu comando cria:1609O exemplo a seguir adiciona uma conexão chamada Dev box. Se o arquivo não existir, crie-o. Se ele já contiver configurações, adicione a chave ao lado delas. O comando `acme-dev create` representa sua própria ferramenta, e `~/project` é a pasta que o Desktop seleciona em cada máquina que seu comando cria:

1609 1610 


1624 1625 

1625| Campo | Valor |1626| Campo | Valor |

1626| :- | :- |1627| :- | :- |

1627| `id` | Até 64 letras ASCII, dígitos, `.`, `_` e `-`, começando com uma letra ou dígito. Use um `id` que nenhuma outra entrada em `sshHostCommands` ou [`sshConfigs`](#pre-configure-ssh-connections-for-your-team) tenha. O Desktop mantém o host da conexão associado a ele, então, se você alterá-lo, a conexão recomeça sem host e a máquina antiga continua em execução. |1628| `id` | Até 64 letras ASCII, dígitos, `.`, `_` e `-`, começando com uma letra ou dígito. Use um `id` que nenhuma outra entrada em `sshHostCommands` ou [`sshConfigs`](#pre-configure-ssh-connections-for-your-team) tenha. O Desktop guarda o host da conexão sob ele, então, se você o alterar, a conexão recomeça sem host, suas máquinas continuam em execução e o Desktop pode [ainda se conectar a elas](#remove-an-entry). |

1628| `name` | O nome da conexão no seletor de ambiente, com até 200 caracteres em uma linha |1629| `name` | O nome da conexão no seletor de ambiente, com até 200 caracteres em uma linha |

1629| `command` | Um programa e seus argumentos, conforme descrito em [Escrever o comando](#write-the-command) |1630| `command` | Um programa e seus argumentos, conforme descrito em [Escrever o comando](#write-the-command) |

1630| `sshIdentityFile` | Caminho para sua chave privada, como `~/.ssh/id_ed25519`. Omita-o para usar sua configuração SSH ou seu agente SSH. |1631| `sshIdentityFile` | Caminho para sua chave privada, como `~/.ssh/id_ed25519`. Omita-o para usar sua configuração SSH ou seu agente SSH. |


1677 1678 

1678Mantenha a verificação de chave de host ativada para esses hosts e mantenha um arquivo `known_hosts` para eles. Se `StrictHostKeyChecking` for `no` ou `accept-new` e `UserKnownHostsFile` também for `/dev/null` ou `none`, nada registra a chave. Quando sua ferramenta reutiliza um nome, você pode se conectar a uma máquina diferente sem aviso.1679Mantenha a verificação de chave de host ativada para esses hosts e mantenha um arquivo `known_hosts` para eles. Se `StrictHostKeyChecking` for `no` ou `accept-new` e `UserKnownHostsFile` também for `/dev/null` ou `none`, nada registra a chave. Quando sua ferramenta reutiliza um nome, você pode se conectar a uma máquina diferente sem aviso.

1679 1680 

1680##### Substituir o host1681Um nome reutilizado também importa sem ninguém no computador, porque o Desktop se conecta a esses hosts por conta própria. Por exemplo, ele entrega uma mensagem que você enviou enquanto o host estava inacessível, assim que o host responde. Mesmo com a verificação de chave de host ativada, a mensagem pode chegar à nova máquina com esse nome nestes casos, então [pare de usar uma máquina](#stop-using-a-machine) antes que ela seja excluída:

1682 

1683* Você, seu comando ou outro programa adicionou a nova chave ao `known_hosts` ou removeu a linha da chave antiga, como faz seu comando se ele adiciona chaves de host

1684* As máquinas da sua ferramenta compartilham uma chave de host

1685* As máquinas da sua ferramenta compartilham uma autoridade certificadora em que o `known_hosts` confia

1686* Você ou seu administrador definiram `KnownHostsCommand` ou `VerifyHostKeyDNS yes`, então o SSH aceita chaves de fora do `known_hosts`

1687 

1688##### Criar outra máquina

1689 

1690Suas sessões em máquinas anteriores continuam funcionando depois que você seleciona **Create another Dev box**, e novas sessões usam a nova máquina. Selecione o item no seletor de ambiente para criar uma máquina nova ou para substituir uma que não existe mais. Na página de nova sessão, a mensagem que diz que o Desktop não consegue alcançar o host também oferece essa opção.

1681 1691 

1682Quando Dev box tiver um host, o seletor lista Dev box entre suas conexões SSH, e **Create Dev box** se torna **Replace Dev box's host**. Se esse item não estiver na lista, procure em **More**.1692* **Sessões em máquinas anteriores**: continue-as a partir da barra lateral, porque o seletor lista a máquina atual do Dev box e não as anteriores. O Desktop pode se conectar às máquinas delas por conta própria, por exemplo quando o Desktop é iniciado, então [pare de usar uma máquina](#stop-using-a-machine) quando terminar de usá-la.

1693* **Um host substituído antes do Claude Desktop v4.4212.0**: essas versões mostram **Replace Dev box's host** e param de se conectar ao host substituído. Para continuar uma sessão nesse host, abra a sessão, selecione **Add SSH connection** e salve a conexão que o Desktop preenche. Atualize o Desktop antes de substituir outro host.

1694* **Novas sessões em duas máquinas**: adicione uma segunda entrada a [`sshHostCommands`](#create-an-ssh-connection-from-a-command)

1695* **Um novo host que ainda não responde**: deixe a página de nova sessão aberta por até 10 minutos enquanto ela continua tentando se conectar. Se o host ainda não responder, selecione **Create another Dev box** na mensagem da página.

1696* **Outra máquina logo em seguida**: depois de várias execuções do comando em uma hora, confirme cada execução adicional no diálogo que o Desktop abre, que mostra o comando

1683 1697 

1684Selecione-o quando a máquina não existir mais ou quando você quiser uma nova. Na página de nova sessão, a mensagem que diz que o Desktop não consegue alcançar o host também o oferece. O Desktop executa o comando novamente, e as novas sessões usam o novo host.1698##### Parar de usar uma máquina

1685 1699 

1686* **Um novo host**: o item fica cinza por 10 minutos depois que o Desktop salva um host, porque uma nova máquina pode demorar para iniciar. Enquanto um novo host não responde, a página de nova sessão continua tentando se conectar durante esses 10 minutos.1700Para impedir que o Desktop se conecte por conta própria a uma máquina que um comando criou, arquive todas as sessões na máquina:

1687* **Sessões no host antigo**: elas permanecem nele, e o Desktop não se conecta a esse host a menos que você o adicione de volta. Para continuar uma delas, abra a sessão e selecione **Add SSH connection**. O Desktop preenche o host antigo. Salve-o como uma conexão própria.1701 

17021. Encontre as sessões da máquina na barra lateral. O [painel de detalhes](#see-session-details) de uma sessão mostra o host em que ela é executada.

17032. [Arquive cada sessão](#archive-a-session) e deixe-a arquivada.

17043. Se você não criou outra máquina a partir da mesma entrada de `sshHostCommands` desde que criou esta, [crie uma](#create-another-machine) ou [remova a entrada](#remove-an-entry) também. Até lá, a máquina é a conexão salva da entrada, e o Desktop pode se conectar a ela quando você abre a página de nova sessão com essa conexão selecionada.

17054. Exclua qualquer outra conexão SSH com a máquina no aplicativo, ou remova a entrada dela em [`sshConfigs`](#pre-configure-ssh-connections-for-your-team).

17065. Saia do Desktop e abra-o novamente, o que fecha a conexão dele com a máquina e encerra suas tentativas de alcançá-la.

17076. Exclua a máquina com sua ferramenta.

1708 

1709##### Remover uma entrada

1710 

1711Depois que você remove uma entrada do arquivo de configurações ou altera seu `id`, as sessões nas máquinas dela permanecem, então o Desktop ainda pode se conectar a essas máquinas. Ele pode fazer isso sem ninguém no computador, por exemplo para voltar a se conectar ao processo em execução de uma sessão ou para entregar uma mensagem que estava aguardando envio. Para impedir isso, arquive as sessões, conforme descrito em [Parar de usar uma máquina](#stop-using-a-machine).

1712 

1713Se você é administrador e removeu uma entrada gerenciada, as sessões dos seus usuários também permanecem, e cada usuário precisa arquivar as suas. Para bloquear você mesmo as máquinas da entrada, defina uma [`sshHostAllowlist`](#restrict-which-ssh-hosts-users-can-connect-to) que corresponda aos hosts de que seus usuários ainda precisam e não aos nomes de host das máquinas. Você só pode fazer isso quando um padrão distingue os dois.

1688 1714 

1689##### Distribuir comandos para sua equipe1715##### Distribuir comandos para sua equipe

1690 1716 


1711* **O `id`**: se a entrada `sshHostCommands` de um usuário tiver o seu `id`, apenas a sua funciona. Se qualquer outra conexão SSH o tiver, como uma no `sshConfigs` de um usuário, sua entrada fica cinza. Escolha um `id` que os usuários dificilmente escolheriam.1737* **O `id`**: se a entrada `sshHostCommands` de um usuário tiver o seu `id`, apenas a sua funciona. Se qualquer outra conexão SSH o tiver, como uma no `sshConfigs` de um usuário, sua entrada fica cinza. Escolha um `id` que os usuários dificilmente escolheriam.

1712* **O programa**: informe seu caminho completo, porque o Desktop procura um nome simples no `PATH` de cada usuário. O programa é executado como o usuário, com as variáveis que o shell de login dele exporta.1738* **O programa**: informe seu caminho completo, porque o Desktop procura um nome simples no `PATH` de cada usuário. O programa é executado como o usuário, com as variáveis que o shell de login dele exporta.

1713* **Entradas próprias dos usuários**: o Desktop trata a entrada de um usuário como um [hook](https://code.claude.com/docs/pt/hooks.md), porque ambos executam um programa no computador. Para permitir apenas as suas entradas, defina [`strictPluginOnlyCustomization`](https://code.claude.com/docs/pt/settings-reference#strictpluginonlycustomization) como `["hooks"]`, ou adicione `"hooks"` à lista dela. Você também bloqueia os hooks do Claude Code das configurações de usuário, de projeto e locais, sem forma de mantê-los. Se, em vez disso, você definir essa chave ou [`allowManagedHooksOnly`](https://code.claude.com/docs/pt/settings-reference#allowmanagedhooksonly) como `true`, você bloqueia mais, conforme a entrada de cada chave descreve.1739* **Entradas próprias dos usuários**: o Desktop trata a entrada de um usuário como um [hook](https://code.claude.com/docs/pt/hooks.md), porque ambos executam um programa no computador. Para permitir apenas as suas entradas, defina [`strictPluginOnlyCustomization`](https://code.claude.com/docs/pt/settings-reference#strictpluginonlycustomization) como `["hooks"]`, ou adicione `"hooks"` à lista dela. Você também bloqueia os hooks do Claude Code das configurações de usuário, de projeto e locais, sem forma de mantê-los. Se, em vez disso, você definir essa chave ou [`allowManagedHooksOnly`](https://code.claude.com/docs/pt/settings-reference#allowmanagedhooksonly) como `true`, você bloqueia mais, conforme a entrada de cada chave descreve.

1714* **Todas as entradas**: para desativar também as suas entradas, defina [`disableAllHooks`](https://code.claude.com/docs/pt/settings-reference#disableallhooks) nas configurações gerenciadas. Se você definir [`disableDesktopLocalSessions`](https://code.claude.com/docs/pt/settings-reference#disabledesktoplocalsessions), ou uma `sshHostAllowlist` que não permita nenhum host, o seletor não lista nenhum item **Create** ou **Replace**.1740* **Todas as entradas**: para desativar também suas entradas, defina [`disableAllHooks`](https://code.claude.com/docs/pt/settings-reference#disableallhooks) nas configurações gerenciadas. Se você definir [`disableDesktopLocalSessions`](https://code.claude.com/docs/pt/settings-reference#disabledesktoplocalsessions), ou uma `sshHostAllowlist` que não permite nenhum host, o seletor não lista nenhum item **Create** ou **Create another**.

1715* **Onde os bloqueios contam**: para essas entradas, o Desktop lê `allowManagedHooksOnly`, `strictPluginOnlyCustomization` e `disableAllHooks` das configurações gerenciadas pelo servidor e do arquivo ou política do próprio computador, e aplica o resultado mais restritivo. Todas as entradas ficam cinza até que o Desktop tenha verificado as configurações gerenciadas pelo servidor no claude.ai, mesmo que sua organização não tenha nenhuma.1741* **Onde os bloqueios contam**: para essas entradas, o Desktop lê `allowManagedHooksOnly`, `strictPluginOnlyCustomization` e `disableAllHooks` das configurações gerenciadas pelo servidor e do arquivo ou política do próprio computador, e aplica o resultado mais restritivo. Todas as entradas ficam cinza até que o Desktop tenha verificado as configurações gerenciadas pelo servidor no claude.ai, mesmo que sua organização não tenha nenhuma.

1716* **Hosts permitidos**: se você definir [`sshHostAllowlist`](#restrict-which-ssh-hosts-users-can-connect-to), certifique-se de que um padrão corresponda a cada nome de host que sua ferramenta imprime, e deixe `user@` fora do padrão. O Desktop verifica o nome impresso somente depois que o comando foi executado, então uma máquina que a lista recusa já existe, e o usuário precisa excluí-la com sua ferramenta. A cada conexão, o `HostName` resolvido também precisa corresponder.1742* **Hosts permitidos**: se você definir [`sshHostAllowlist`](#restrict-which-ssh-hosts-users-can-connect-to), certifique-se de que um padrão corresponda a cada nome de host que sua ferramenta imprime, e deixe `user@` fora do padrão. O Desktop verifica o nome impresso somente depois que o comando foi executado, então uma máquina que a lista recusa já existe, e o usuário precisa excluí-la com sua ferramenta. A cada conexão, o `HostName` resolvido também precisa corresponder.

1717 1743 


1719 1745 

1720##### Se um comando estiver ausente ou cinza1746##### Se um comando estiver ausente ou cinza

1721 1747 

1722O seletor de ambiente não lista nenhum item **Create** ou **Replace** nestes casos:1748O seletor de ambiente não lista nenhum item **Create** ou **Create another** nestes casos:

1723 1749 

1724* **O arquivo**: `~/.claude/settings.json` tem [JSON inválido ou um valor que o esquema rejeita](https://code.claude.com/docs/pt/settings.md#fix-a-broken-settings-file), você digitou a chave incorretamente, ou a colocou nas configurações de um projeto. Corrija o arquivo.1750* **O arquivo**: `~/.claude/settings.json` tem [JSON inválido ou um valor que o esquema rejeita](https://code.claude.com/docs/pt/settings.md#fix-a-broken-settings-file), você digitou a chave incorretamente, ou a colocou nas configurações de um projeto. Corrija o arquivo.

1725* **Plataforma e conta**: você usa Windows, ou um [provedor terceirizado](https://code.claude.com/docs/pt/third-party-integrations.md) em vez de uma conta Claude. Adicione cada host como uma [conexão SSH](#ssh-sessions) você mesmo.1751* **Plataforma e conta**: você usa Windows, ou um [provedor terceirizado](https://code.claude.com/docs/pt/third-party-integrations.md) em vez de uma conta Claude. Adicione cada host como uma [conexão SSH](#ssh-sessions) você mesmo.


1730 1756 

1731* **Um erro na entrada**: corrija o campo ou o comando que a mensagem nomeia. Se o `id` estiver em uso, dê outro à entrada.1757* **Um erro na entrada**: corrija o campo ou o comando que a mensagem nomeia. Se o `id` estiver em uso, dê outro à entrada.

1732* **Um arquivo de configurações corrompido**: enquanto seu próprio arquivo de configurações estiver corrompido, as entradas do seu administrador podem ficar cinza, com uma mensagem que nomeia o arquivo. [Corrija o arquivo](https://code.claude.com/docs/pt/settings.md#fix-a-broken-settings-file).1758* **Um arquivo de configurações corrompido**: enquanto seu próprio arquivo de configurações estiver corrompido, as entradas do seu administrador podem ficar cinza, com uma mensagem que nomeia o arquivo. [Corrija o arquivo](https://code.claude.com/docs/pt/settings.md#fix-a-broken-settings-file).

1733* **Um novo host**: você pode [substituir um host](#replace-the-host) quando ele tiver 10 minutos.1759* **Um novo host**: [**Create another**](#create-another-machine) fica cinza por um minuto depois que o Desktop salva um host. Selecione-o após esse minuto. Antes do Claude Desktop v4.4212.0, **Replace Dev box's host** fica cinza por 10 minutos.

1734* **Os hooks estão desativados ou restritos**: suas próprias entradas funcionam apenas onde seus próprios hooks podem ser executados. Remova `disableAllHooks` das suas configurações ou pergunte ao seu administrador.1760* **Os hooks estão desativados ou restritos**: suas próprias entradas funcionam apenas onde seus próprios hooks podem ser executados. Remova `disableAllHooks` das suas configurações ou pergunte ao seu administrador.

1735* **As configurações ainda estão carregando**: todas as entradas ficam cinza até que o Desktop tenha carregado as [configurações gerenciadas pelo servidor](https://code.claude.com/docs/pt/server-managed-settings.md) da sua organização, geralmente alguns segundos após a inicialização. Se as entradas continuarem cinza, verifique sua conexão com o claude.ai.1761* **As configurações ainda estão carregando**: todas as entradas ficam cinza até que o Desktop tenha carregado as [configurações gerenciadas pelo servidor](https://code.claude.com/docs/pt/server-managed-settings.md) da sua organização, geralmente alguns segundos após a inicialização. Se as entradas continuarem cinza, verifique sua conexão com o claude.ai.

1736 1762 


1946 1972 

1947Substitua o valor de exemplo pelo ID da sua organização claude.ai, mostrado nas [configurações de administração do claude.ai](https://claude.ai/admin-settings/organization). É o mesmo ID que a configuração [`forceLoginOrgUUID`](https://code.claude.com/docs/pt/settings-reference#forceloginorguuid) de Claude Code recebe. Para exemplos de macOS e Windows que definem essa chave, veja [Deploy the Claude Desktop policy](https://claude.com/docs/cowork/hipaa-setup#deploy-the-claude-desktop-policy) no guia do Cowork para organizações preparadas para HIPAA.1973Substitua o valor de exemplo pelo ID da sua organização claude.ai, mostrado nas [configurações de administração do claude.ai](https://claude.ai/admin-settings/organization). É o mesmo ID que a configuração [`forceLoginOrgUUID`](https://code.claude.com/docs/pt/settings-reference#forceloginorguuid) de Claude Code recebe. Para exemplos de macOS e Windows que definem essa chave, veja [Deploy the Claude Desktop policy](https://claude.com/docs/cowork/hipaa-setup#deploy-the-claude-desktop-policy) no guia do Cowork para organizações preparadas para HIPAA.

1948 1974 

1975> [!WARNING]

1976>

1977> Verifique o valor de `forceLoginOrgUUID` antes de implantá-lo. Se o ID não for o da sua organização, as pessoas da sua organização não poderão usar o Claude Desktop, a menos que também pertençam a uma organização com esse ID. Para recuperar o acesso, implante o ID correto e peça que reiniciem o Claude Desktop.

1978 

1949Se você definir `forceLoginMethod` e `forceLoginOrgUUID` nas [configurações gerenciadas](https://code.claude.com/docs/pt/managed-settings.md) de Claude Code, a tela de login do Claude Desktop não muda.1979Se você definir `forceLoginMethod` e `forceLoginOrgUUID` nas [configurações gerenciadas](https://code.claude.com/docs/pt/managed-settings.md) de Claude Code, a tela de login do Claude Desktop não muda.

1950 1980 

1951### Requisitos de acesso à rede1981### Requisitos de acesso à rede


2055| `--model sonnet` | Seletor de modelo na linha abaixo da caixa de prompt |2085| `--model sonnet` | Seletor de modelo na linha abaixo da caixa de prompt |

2056| `--resume`, `--continue` | Clique em uma sessão na barra lateral, ou digite `/resume` na caixa de prompt para retomar uma sessão que você iniciou a partir do CLI |2086| `--resume`, `--continue` | Clique em uma sessão na barra lateral, ou digite `/resume` na caixa de prompt para retomar uma sessão que você iniciou a partir do CLI |

2057| `--permission-mode` | Seletor de modo na linha abaixo da caixa de prompt |2087| `--permission-mode` | Seletor de modo na linha abaixo da caixa de prompt |

2058| `--dangerously-skip-permissions` | Modo Bypass permissions. Em planos Pro e Max, ative "Allow bypass permissions mode" em **Configurações > Code** ou **Configurações > Claude Code**; em planos Team e Enterprise, a política organizacional controla |2088| `--dangerously-skip-permissions` | Modo Bypass permissions. Em planos Pro, Max e Ultra, ative "Allow bypass permissions mode" em **Configurações > Code** ou **Configurações > Claude Code**; em planos Team e Enterprise, a política organizacional controla |

2059| `--add-dir` | [Adicione pastas a uma sessão](#add-folders-to-a-session) em sessões locais e SSH, ou selecione [vários repositórios](#run-long-running-tasks-in-the-cloud) em uma sessão na nuvem |2089| `--add-dir` | [Adicione pastas a uma sessão](#add-folders-to-a-session) em sessões locais e SSH, ou selecione [vários repositórios](#run-long-running-tasks-in-the-cloud) em uma sessão na nuvem |

2060| `--allowedTools`, `--disallowedTools` | Nenhum equivalente por sessão. Regras de permissão em [arquivos de configuração](https://code.claude.com/docs/pt/settings.md) ainda se aplicam. |2090| `--allowedTools`, `--disallowedTools` | Nenhum equivalente por sessão. Regras de permissão em [arquivos de configuração](https://code.claude.com/docs/pt/settings.md) ainda se aplicam. |

2061| `--verbose` | [Modo de visualização Verbose](#switch-view-modes) |2091| `--verbose` | [Modo de visualização Verbose](#switch-view-modes) |


2091 2121 

2092| Recurso | CLI | Desktop |2122| Recurso | CLI | Desktop |

2093| - | - | - |2123| - | - | - |

2094| Modos de permissão | Todos os modos incluindo `dontAsk` | Manual, Aceitar edições, Plan e Auto. Bypass permissions aparece no seletor de modo uma vez habilitado: através do toggle Configurações em planos Pro e Max, ou através da política organizacional em planos Team e Enterprise |2124| Modos de permissão | Todos os modos incluindo `dontAsk` | Manual, Aceitar edições, Plan e Auto. Bypass permissions aparece no seletor de modo uma vez habilitado: através do toggle Configurações em planos Pro, Max e Ultra, ou através da política organizacional em planos Team e Enterprise |

2095| [Provedores de terceiros](https://code.claude.com/docs/pt/third-party-integrations.md) | Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry | API da Anthropic por padrão. Para roteamento de gateway, veja [conectar o aplicativo desktop a um gateway](https://code.claude.com/docs/pt/llm-gateway-connect.md#desktop-app). Para executar a aba Code em Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry ou um gateway LLM auto-hospedado, veja [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview). |2125| [Provedores de terceiros](https://code.claude.com/docs/pt/third-party-integrations.md) | Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry | API da Anthropic por padrão. Para roteamento de gateway, veja [conectar o aplicativo desktop a um gateway](https://code.claude.com/docs/pt/llm-gateway-connect.md#desktop-app). Para executar a aba Code em Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry ou um gateway LLM auto-hospedado, veja [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview). |

2096| [MCP servers](https://code.claude.com/docs/pt/mcp.md) | Configure em arquivos de configuração | UI de Connectors para sessões locais e SSH, ou arquivos de configuração |2126| [MCP servers](https://code.claude.com/docs/pt/mcp.md) | Configure em arquivos de configuração | UI de Connectors para sessões locais e SSH, ou arquivos de configuração |

2097| [Plugins](https://code.claude.com/docs/pt/plugins/overview.md) | Comando `/plugin` | UI do gerenciador de plugins |2127| [Plugins](https://code.claude.com/docs/pt/plugins/overview.md) | Comando `/plugin` | UI do gerenciador de plugins |


2153Se você vê `Error 403: Forbidden` ou outras falhas de autenticação ao usar a aba Code:2183Se você vê `Error 403: Forbidden` ou outras falhas de autenticação ao usar a aba Code:

2154 2184 

21551. Saia e entre novamente no menu do aplicativo. Esta é a correção mais comum.21851. Saia e entre novamente no menu do aplicativo. Esta é a correção mais comum.

21562. Verifique se você tem uma assinatura paga ativa: Pro, Max, Team ou Enterprise.21862. Verifique se você tem uma assinatura paga ativa: Pro, Max, Ultra, Team ou Enterprise.

21573. Se o CLI funciona mas Desktop não, saia completamente do aplicativo desktop, não apenas feche a janela, depois reabra e entre novamente.21873. Se o CLI funciona mas Desktop não, saia completamente do aplicativo desktop, não apenas feche a janela, depois reabra e entre novamente.

21584. Verifique sua conexão de internet e configurações de proxy.21884. Verifique sua conexão de internet e configurações de proxy.

2159 2189 

Details

8 8 

9> [!NOTE]9> [!NOTE]

10>10>

11> O painel iOS Simulator está em beta pública no Claude Code Desktop no macOS. Está disponível nos planos Pro, Max, Team e Enterprise, exceto em organizações Enterprise que têm uma configuração HIPAA ativada.11> O painel iOS Simulator está em beta público no Claude Code Desktop no macOS. Está disponível nos planos Pro, Max, Ultra, Team e Enterprise, exceto em organizações Enterprise que têm uma configuração HIPAA ativada.

12 12 

13O painel iOS Simulator mostra seu aplicativo em execução no iOS Simulator da Apple ao lado de sua conversa no Claude Code Desktop. Quando Claude constrói, instala, inicia ou verifica seu aplicativo em um simulador, o painel abre automaticamente e transmite a tela do dispositivo ao vivo. Use-o para assistir Claude executar e testar seu aplicativo, ou toque no aplicativo você mesmo enquanto Claude continua trabalhando.13O painel iOS Simulator mostra seu aplicativo em execução no iOS Simulator da Apple ao lado de sua conversa no Claude Code Desktop. Quando Claude constrói, instala, inicia ou verifica seu aplicativo em um simulador, o painel abre automaticamente e transmite a tela do dispositivo ao vivo. Use-o para assistir Claude executar e testar seu aplicativo, ou toque no aplicativo você mesmo enquanto Claude continua trabalhando.

14 14 

Details

6 6 

7> Instale o aplicativo Claude de desktop, abra a aba Code e inicie sua primeira sessão de Claude Code em uma pasta de projeto no seu computador.7> Instale o aplicativo Claude de desktop, abra a aba Code e inicie sua primeira sessão de Claude Code em uma pasta de projeto no seu computador.

8 8 

9O aplicativo de desktop oferece Claude Code com uma interface gráfica. Você pode pedir ao Claude para trabalhar no código em uma pasta no seu computador e revisar suas alterações sem usar um terminal.9O aplicativo de desktop oferece Claude Code com uma interface gráfica. Você pode pedir ao Claude para trabalhar no código em uma pasta no seu computador e depois revisar as alterações você mesmo, sem usar um terminal.

10 10 

11Claude Code está na aba **Code** no topo da barra lateral do aplicativo. Esta página orienta você na instalação do aplicativo e no início de sua primeira sessão nela. Claude Code requer uma [assinatura Pro, Max, Team ou Enterprise](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=desktop_quickstart_pricing).11Claude Code está na aba **Code** no topo da barra lateral do aplicativo. Esta página orienta você na instalação do aplicativo e no início de sua primeira sessão nela. Claude Code requer uma [assinatura Pro, Max, Ultra, Team ou Enterprise](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=desktop_quickstart_pricing).

12 12 

13> **[Baixar para macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs)**13> [card] [Baixar para macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs)

14>14>

15> Compilação universal para Intel e Apple Silicon15> Compilação universal para Intel e Apple Silicon

16 16 

17> **[Baixar para Windows](https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs)**17> [card] [Baixar para Windows](https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs)

18>18>

19> Para processadores x6419> Para processadores x64

20 20 

21> **[Obter Claude para Linux (beta)](https://code.claude.com/docs/pt/desktop-linux.md)**21> [card] [Obter Claude para Linux (beta)](https://code.claude.com/docs/pt/desktop-linux.md)

22>22>

23> apt ou .deb para Ubuntu e Debian23> apt ou .deb para Ubuntu e Debian

24 24 

devcontainer.md +1 −1

Details

17> Use dev containers apenas ao desenvolver com repositórios confiáveis e monitore as atividades do Claude.17> Use dev containers apenas ao desenvolver com repositórios confiáveis e monitore as atividades do Claude.

18> Evite montar segredos do host como `~/.ssh` ou arquivos de credenciais de nuvem no contêiner; prefira tokens com escopo de repositório ou de curta duração.18> Evite montar segredos do host como `~/.ssh` ou arquivos de credenciais de nuvem no contêiner; prefira tokens com escopo de repositório ou de curta duração.

19 19 

20> **Como dev containers funcionam com seu editor**20> [accordion] Como dev containers funcionam com seu editor

21>21>

22> ![Diagrama mostrando um editor no host conectando a um contêiner dev Docker. Claude Code, o terminal e ferramentas de compilação executam dentro do contêiner. O repositório do host é bind-mounted no contêiner como o workspace.](https://mintcdn.com/claude-code/YvJyjZfd9yMihr0i/images/devcontainer-architecture.svg?fit=max\&auto=format\&n=YvJyjZfd9yMihr0i\&q=85\&s=9017b1d16a446c6cc37ba562f35b9aae)22> ![Diagrama mostrando um editor no host conectando a um contêiner dev Docker. Claude Code, o terminal e ferramentas de compilação executam dentro do contêiner. O repositório do host é bind-mounted no contêiner como o workspace.](https://mintcdn.com/claude-code/YvJyjZfd9yMihr0i/images/devcontainer-architecture.svg?fit=max\&auto=format\&n=YvJyjZfd9yMihr0i\&q=85\&s=9017b1d16a446c6cc37ba562f35b9aae)

23>23>

env-vars.md +41 −41

Details

23 23 

24Defina a variável antes de iniciar `claude`:24Defina a variável antes de iniciar `claude`:

25 25 

26**macOS, Linux, WSL**26> [tab] macOS, Linux, WSL

27 27>

28```bash theme={null}28> ```bash theme={null}

29export API_TIMEOUT_MS="1200000"29> export API_TIMEOUT_MS="1200000"

30claude30> claude

31```31> ```

32 32>

33Para defini-la para cada sessão, adicione a linha `export` a `~/.bashrc`, `~/.zshrc`, ou ao arquivo de perfil do seu shell.33> Para defini-la para cada sessão, adicione a linha `export` a `~/.bashrc`, `~/.zshrc`, ou ao arquivo de perfil do seu shell.

34 

35**Windows PowerShell**

36 

37```powershell theme={null}

38$env:API_TIMEOUT_MS = "1200000"

39claude

40```

41 

42Para defini-la para cada sessão, execute `[Environment]::SetEnvironmentVariable("API_TIMEOUT_MS", "1200000", "User")` e abra um novo terminal.

43 

44**Windows CMD**

45 34 

46```batch theme={null}35> [tab] Windows PowerShell

47set API_TIMEOUT_MS=120000036>

48claude37> ```powershell theme={null}

49```38> $env:API_TIMEOUT_MS = "1200000"

39> claude

40> ```

41>

42> Para defini-la para cada sessão, execute `[Environment]::SetEnvironmentVariable("API_TIMEOUT_MS", "1200000", "User")` e abra um novo terminal.

50 43 

51Para defini-la para cada sessão, execute `setx API_TIMEOUT_MS "1200000"` e abra um novo terminal.44> [tab] Windows CMD

45>

46> ```batch theme={null}

47> set API_TIMEOUT_MS=1200000

48> claude

49> ```

50>

51> Para defini-la para cada sessão, execute `setx API_TIMEOUT_MS "1200000"` e abra um novo terminal.

52 52 

53A linha de atribuição não imprime nada em caso de sucesso. Para confirmar que a variável está definida, imprima-a no mesmo shell:53A linha de atribuição não imprime nada em caso de sucesso. Para confirmar que a variável está definida, imprima-a no mesmo shell:

54 54 

55**macOS, Linux, WSL**55> [tab] macOS, Linux, WSL

56 56>

57```bash theme={null}57> ```bash theme={null}

58echo $API_TIMEOUT_MS58> echo $API_TIMEOUT_MS

59```59> ```

60 

61**Windows PowerShell**

62 

63```powershell theme={null}

64echo $env:API_TIMEOUT_MS

65```

66 60 

67**Windows CMD**61> [tab] Windows PowerShell

62>

63> ```powershell theme={null}

64> echo $env:API_TIMEOUT_MS

65> ```

68 66 

69```batch theme={null}67> [tab] Windows CMD

70echo %API_TIMEOUT_MS%68>

71```69> ```batch theme={null}

70> echo %API_TIMEOUT_MS%

71> ```

72 72 

73### Definir variáveis em arquivos de configurações73### Definir variáveis em arquivos de configurações

74 74 


130 130 

131| Variável | Finalidade |131| Variável | Finalidade |

132| :- | :- |132| :- | :- |

133| `ANTHROPIC_API_KEY` | Chave de API enviada como cabeçalho `X-Api-Key`. Quando definida, essa chave é usada em vez da sua assinatura Claude Pro, Max, Team ou Enterprise, mesmo que você tenha feito login. No modo não interativo (`-p`), a chave é sempre usada quando presente. No modo interativo, você é solicitado a aprovar a chave uma vez antes que ela sobrescreva sua assinatura. Para usar sua assinatura em vez disso, execute `unset ANTHROPIC_API_KEY` |133| `ANTHROPIC_API_KEY` | Chave de API enviada como cabeçalho `X-Api-Key`. Quando definida, essa chave é usada em vez da sua assinatura Claude Pro, Max, Ultra, Team ou Enterprise, mesmo que você esteja logado. No modo não interativo (`-p`), a chave é sempre usada quando presente. No modo interativo, você é solicitado a aprovar a chave uma vez antes que ela sobrescreva sua assinatura. Para usar sua assinatura em vez disso, execute `unset ANTHROPIC_API_KEY` |

134| `ANTHROPIC_AUTH_TOKEN` | Valor personalizado para o cabeçalho `Authorization` (o valor que você definir aqui será prefixado com `Bearer `) |134| `ANTHROPIC_AUTH_TOKEN` | Valor personalizado para o cabeçalho `Authorization` (o valor que você definir aqui será prefixado com `Bearer `) |

135| `ANTHROPIC_AWS_API_KEY` | Chave de API de workspace para o [Claude Platform on AWS](https://code.claude.com/docs/pt/claude-platform-on-aws.md), gerada no AWS Console. Enviada como `x-api-key` e tem precedência sobre o AWS SigV4 |135| `ANTHROPIC_AWS_API_KEY` | Chave de API de workspace para o [Claude Platform on AWS](https://code.claude.com/docs/pt/claude-platform-on-aws.md), gerada no AWS Console. Enviada como `x-api-key` e tem precedência sobre o AWS SigV4 |

136| `ANTHROPIC_AWS_BASE_URL` | Sobrescreve a URL do endpoint do [Claude Platform on AWS](https://code.claude.com/docs/pt/claude-platform-on-aws.md). Use para regiões personalizadas ou ao rotear por meio de um [gateway de LLM](https://code.claude.com/docs/pt/llm-gateway). O padrão é `https://aws-external-anthropic.{region}.api.aws`. O Claude Code resolve a região com a [mesma precedência usada no Amazon Bedrock](https://code.claude.com/docs/pt/amazon-bedrock.md#3-configure-claude-code) |136| `ANTHROPIC_AWS_BASE_URL` | Sobrescreve a URL do endpoint do [Claude Platform on AWS](https://code.claude.com/docs/pt/claude-platform-on-aws.md). Use para regiões personalizadas ou ao rotear por meio de um [gateway de LLM](https://code.claude.com/docs/pt/llm-gateway). O padrão é `https://aws-external-anthropic.{region}.api.aws`. O Claude Code resolve a região com a [mesma precedência usada no Amazon Bedrock](https://code.claude.com/docs/pt/amazon-bedrock.md#3-configure-claude-code) |


575* [Enviar mensagens para sessões além desta máquina](https://code.claude.com/docs/pt/cross-session-messaging.md#message-sessions-on-other-machines) quando o [Remote Control](https://code.claude.com/docs/pt/remote-control.md#requirements) não estiver disponível. O envio de mensagens entre sessões nesta máquina funciona com a busca desativada575* [Enviar mensagens para sessões além desta máquina](https://code.claude.com/docs/pt/cross-session-messaging.md#message-sessions-on-other-machines) quando o [Remote Control](https://code.claude.com/docs/pt/remote-control.md#requirements) não estiver disponível. O envio de mensagens entre sessões nesta máquina funciona com a busca desativada

576* Executar [`claude import` ou o comando `/import`](https://code.claude.com/docs/pt/cli-reference#cli-commands)576* Executar [`claude import` ou o comando `/import`](https://code.claude.com/docs/pt/cli-reference#cli-commands)

577* Executar [`/skill-doctor`](https://code.claude.com/docs/pt/skills#find-unused-skills) ou abrir o relatório dele na aba **Stats** do `/plugin`577* Executar [`/skill-doctor`](https://code.claude.com/docs/pt/skills#find-unused-skills) ou abrir o relatório dele na aba **Stats** do `/plugin`

578* Executar [`/restart`](https://code.claude.com/docs/pt/commands) nos planos Pro e Max578* Executar [`/restart`](https://code.claude.com/docs/pt/commands) nos planos Pro, Max e Ultra

579* Sincronizar as [skills](https://code.claude.com/docs/pt/skills.md#where-synced-skills-load) e os [plugins](https://code.claude.com/docs/pt/plugins/loading.md#synced-plugins) habilitados para sua conta do claude.ai nas suas sessões de terminal579* Sincronizar as [skills](https://code.claude.com/docs/pt/skills.md#where-synced-skills-load) e os [plugins](https://code.claude.com/docs/pt/plugins/loading.md#synced-plugins) habilitados para sua conta do claude.ai nas suas sessões de terminal

580* Ativar o [mod You should know](https://code.claude.com/docs/pt/interactive-mode.md#you-should-know-suggestions)580* Ativar o [mod You should know](https://code.claude.com/docs/pt/interactive-mode.md#you-should-know-suggestions)

581* Usar [a ferramenta advisor](https://code.claude.com/docs/pt/advisor.md#requirements)581* Usar [a ferramenta advisor](https://code.claude.com/docs/pt/advisor.md#requirements)

errors.md +5 −5

Details

830* Na aba Code do [Desktop app](https://code.claude.com/docs/pt/desktop.md), o cartão de limite de sessão oferece uma caixa de seleção **Auto-continue when limits reset**. O cartão de limite semanal não oferece. Quando marcada, o Desktop app tenta novamente o turno interrompido após o reset e mostra o horário da tentativa no cartão. A caixa de seleção do Desktop e a configuração **Continue automatically at usage limit** da CLI em `/config` são separadas, portanto, desative cada uma por conta própria.830* Na aba Code do [Desktop app](https://code.claude.com/docs/pt/desktop.md), o cartão de limite de sessão oferece uma caixa de seleção **Auto-continue when limits reset**. O cartão de limite semanal não oferece. Quando marcada, o Desktop app tenta novamente o turno interrompido após o reset e mostra o horário da tentativa no cartão. A caixa de seleção do Desktop e a configuração **Continue automatically at usage limit** da CLI em `/config` são separadas, portanto, desative cada uma por conta própria.

831* Para o limite de Opus ou Sonnet, execute `/model` e mude para um modelo fora dessa família para continuar trabalhando. Cada modelo tem seu próprio cache de prompt, portanto, a próxima requisição relê toda a conversa sem acertos de cache; veja [Switching models](https://code.claude.com/docs/pt/prompt-caching.md#switching-models)831* Para o limite de Opus ou Sonnet, execute `/model` e mude para um modelo fora dessa família para continuar trabalhando. Cada modelo tem seu próprio cache de prompt, portanto, a próxima requisição relê toda a conversa sem acertos de cache; veja [Switching models](https://code.claude.com/docs/pt/prompt-caching.md#switching-models)

832* Execute `/usage` para ver seus limites de plano e quando eles são resetados832* Execute `/usage` para ver seus limites de plano e quando eles são resetados

833* Execute `/usage-credits` para comprar uso adicional em Pro e Max, ou para solicitá-lo ao seu administrador em Team e Enterprise. Veja [usage credits for paid plans](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) para saber como isso é cobrado.833* Execute `/usage-credits` para comprar uso adicional em Pro, Max e Ultra, ou para solicitá-lo ao seu administrador em Team e Enterprise. Veja [usage credits for paid plans](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) para saber como isso é cobrado.

834* Para atualizar seu plano para limites base mais altos, veja [claude.com/pricing](https://claude.com/pricing)834* Para atualizar seu plano para limites base mais altos, veja [claude.com/pricing](https://claude.com/pricing)

835 835 

836Antes de uma janela se esgotar, Claude Code pode avisá-lo de que você usou a maior parte dela, com uma mensagem como `You've used 85% of your session limit · resets 3:45pm`. Para monitorar sua permissão restante continuamente, adicione os campos `rate_limits` a uma [custom status line](https://code.claude.com/docs/pt/statusline.md#rate-limit-usage), ou no Desktop app clique no [usage ring](https://code.claude.com/docs/pt/desktop.md#check-usage) ao lado do seletor de modelo.836Antes de uma janela se esgotar, Claude Code pode avisá-lo de que você usou a maior parte dela, com uma mensagem como `You've used 85% of your session limit · resets 3:45pm`. Para monitorar sua permissão restante continuamente, adicione os campos `rate_limits` a uma [custom status line](https://code.claude.com/docs/pt/statusline.md#rate-limit-usage), ou no Desktop app clique no [usage ring](https://code.claude.com/docs/pt/desktop.md#check-usage) ao lado do seletor de modelo.


852**O que fazer:**852**O que fazer:**

853 853 

854* Execute `/model` e selecione a variante sem o sufixo `[1m]` para voltar à janela de contexto padrão854* Execute `/model` e selecione a variante sem o sufixo `[1m]` para voltar à janela de contexto padrão

855* Onde a mensagem menciona `/usage-credits`, execute-a para ativar a cobrança medida para a variante 1M em Pro e Max, ou para solicitar créditos de uso ao seu administrador em Team e Enterprise. Depois que os créditos de uso estiverem ativados, reinicie Claude Code ou inicie uma nova sessão, o que a mensagem disser. Até então, a sessão permanece no limite de contexto padrão.855* Onde a mensagem menciona `/usage-credits`, execute-a para ativar a cobrança medida para a variante 1M em Pro, Max e Ultra, ou para solicitar créditos de uso ao seu administrador em Team e Enterprise. Depois que os créditos de uso estiverem ativados, reinicie Claude Code ou inicie uma nova sessão, o que a mensagem disser. Até então, a sessão permanece no limite de contexto padrão.

856* Se o erro persistir após `/model`, um ID de modelo 1M pode estar definido em outro lugar. Veja [Setting your model](https://code.claude.com/docs/pt/model-config.md#setting-your-model) para os locais de configuração a verificar em ordem de prioridade.856* Se o erro persistir após `/model`, um ID de modelo 1M pode estar definido em outro lugar. Veja [Setting your model](https://code.claude.com/docs/pt/model-config.md#setting-your-model) para os locais de configuração a verificar em ordem de prioridade.

857* Para remover variantes 1M do seletor de modelo completamente, defina [`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`](https://code.claude.com/docs/pt/env-vars)857* Para remover variantes 1M do seletor de modelo completamente, defina [`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`](https://code.claude.com/docs/pt/env-vars)

858 858 


933 933 

934**O que fazer:**934**O que fazer:**

935 935 

936* Em Pro e Max, aumente seu limite de gastos mensais em [**Settings > Usage**](https://claude.ai/settings/usage) em claude.ai, ou execute `/usage-credits`936* Em Pro, Max e Ultra, aumente seu limite de gastos mensais em [**Settings > Usage**](https://claude.ai/settings/usage) em claude.ai, ou execute `/usage-credits`

937* Em Team e Enterprise, aumente o limite em [**Organization settings > Usage**](https://claude.ai/admin-settings/usage) se você gerencia o faturamento, ou peça a um administrador. `/usage-credits` envia essa solicitação ao seu administrador para você937* Em Team e Enterprise, aumente o limite em [**Organization settings > Usage**](https://claude.ai/admin-settings/usage) se você gerencia o faturamento, ou peça a um administrador. `/usage-credits` envia essa solicitação ao seu administrador para você

938* Para o limite de um canal, peça a um proprietário da organização ou ao gerenciador do canal para aumentá-lo em claude.ai. Veja [Per-channel limits](https://claude.com/docs/claude-tag/admins/set-spend-limit#per-channel-limits) na documentação Claude Tag938* Para o limite de um canal, peça a um proprietário da organização ou ao gerenciador do canal para aumentá-lo em claude.ai. Veja [Per-channel limits](https://claude.com/docs/claude-tag/admins/set-spend-limit#per-channel-limits) na documentação Claude Tag

939* Se a mensagem nomear um horário de reset para a janela do seu plano, você pode aguardar em vez disso939* Se a mensagem nomear um horário de reset para a janela do seu plano, você pode aguardar em vez disso


966 966 

967**O que fazer:**967**O que fazer:**

968 968 

969* Se você tem um plano Pro, Max, Team ou Enterprise e vê isso, execute `/status` e verifique a linha `API key`. Um `ANTHROPIC_API_KEY` aprovado em seu ambiente roteia requisições através dessa chave em vez de sua assinatura. Desdefina-o no shell atual e remova-o do seu perfil de shell, depois relance `claude`. Execute `/login` se você ainda não se conectou com sua assinatura.969* Se você tem um plano Pro, Max, Ultra, Team ou Enterprise e vê isso, execute `/status` e verifique a linha `API key`. Um `ANTHROPIC_API_KEY` aprovado em seu ambiente roteia requisições através dessa chave em vez de sua assinatura. Desdefina-o no shell atual e remova-o do seu perfil de shell, depois relance `claude`. Execute `/login` se você ainda não se conectou com sua assinatura.

970* Adicione créditos em [platform.claude.com/settings/billing](https://platform.claude.com/settings/billing), e considere ativar o auto-reload lá para que o saldo seja recarregado antes de atingir zero970* Adicione créditos em [platform.claude.com/settings/billing](https://platform.claude.com/settings/billing), e considere ativar o auto-reload lá para que o saldo seja recarregado antes de atingir zero

971* Defina limites de gastos por workspace no Console para evitar que um único projeto drene o saldo da organização. Veja [Manage costs effectively](https://code.claude.com/docs/pt/costs.md).971* Defina limites de gastos por workspace no Console para evitar que um único projeto drene o saldo da organização. Veja [Manage costs effectively](https://code.claude.com/docs/pt/costs.md).

972 972 


1120 1120 

1121A dica após o `·` depende das suas credenciais salvas: a primeira forma aparece quando um `/login` armazenado pode assumir depois que você remove a definição da chave, e a segunda quando a chave é sua única credencial.1121A dica após o `·` depende das suas credenciais salvas: a primeira forma aparece quando um `/login` armazenado pode assumir depois que você remove a definição da chave, e a segunda quando a chave é sua única credencial.

1122 1122 

1123As variáveis de ambiente têm precedência sobre o `/login`, então uma chave exportada no perfil do seu shell ou carregada de um arquivo `.env` é usada mesmo quando você tem uma assinatura Pro ou Max funcionando. No modo não interativo (`-p`), a chave é sempre usada quando presente.1123Se você exportar uma chave no perfil do seu shell ou carregá-la de um `.env`, o Claude Code a usa em vez do `/login`, mesmo com uma assinatura Pro, Max ou Ultra funcionando. No modo não interativo (`-p`), a chave é sempre usada quando presente.

1124 1124 

1125**O que fazer:**1125**O que fazer:**

1126 1126 

fast-mode.md +5 −5

Details

20 20 

21* Use `/fast` para alternar o modo rápido no CLI do Claude Code. A [extensão VS Code](https://code.claude.com/docs/pt/vs-code.md) oferece um comando **Toggle fast mode** quando o modelo selecionado suporta modo rápido. O Claude Code salva essa alternância na sua configuração [`fastMode`](#toggle-fast-mode).21* Use `/fast` para alternar o modo rápido no CLI do Claude Code. A [extensão VS Code](https://code.claude.com/docs/pt/vs-code.md) oferece um comando **Toggle fast mode** quando o modelo selecionado suporta modo rápido. O Claude Code salva essa alternância na sua configuração [`fastMode`](#toggle-fast-mode).

22* O preço do modo rápido por MTok de entrada/saída é \$8/\$40 no Opus 5.5 e \$10/\$50 no Opus 5 e Opus 4.8.22* O preço do modo rápido por MTok de entrada/saída é \$8/\$40 no Opus 5.5 e \$10/\$50 no Opus 5 e Opus 4.8.

23* Disponível para usuários do Claude Code em planos de assinatura (Pro/Max/Team/Enterprise) e no Claude Console. Organizações Team e Enterprise precisam que um Owner o ative primeiro, e organizações Console precisam ter acesso provisionado primeiro para usá-lo com Opus 5 ou Opus 4.8. [Requisitos](#requirements) descreve ambos.23* Disponível para usuários do Claude Code em planos de assinatura (Pro/Max/Ultra/Team/Enterprise) e no Claude Console. Organizações Team e Enterprise precisam que um Owner o ative primeiro, e organizações Console precisam ter acesso provisionado primeiro para usá-lo com Opus 5 ou Opus 4.8. [Requisitos](#requirements) descreve ambos.

24* Para usuários do Claude Code em planos de assinatura (Pro/Max/Team/Enterprise), o modo rápido está disponível apenas via créditos de uso e não está incluído nos limites de taxa de assinatura.24* Para usuários do Claude Code em planos de assinatura (Pro/Max/Ultra/Team/Enterprise), o modo rápido está disponível apenas via créditos de uso e não está incluído nos rate limits da assinatura.

25 25 

26## Alternar modo rápido26## Alternar modo rápido

27 27 


86 86 

87Você vê o gasto do modo rápido em um lugar diferente dependendo de como você se conectou, portanto primeiro execute [`/status`](https://code.claude.com/docs/pt/commands) para verificar. Se mostrar uma linha `Login method` como `Claude Max account`, você se conectou com uma assinatura Claude. Se mostrar uma linha `API key` em vez disso, suas solicitações são cobradas em uma organização do Claude Console.87Você vê o gasto do modo rápido em um lugar diferente dependendo de como você se conectou, portanto primeiro execute [`/status`](https://code.claude.com/docs/pt/commands) para verificar. Se mostrar uma linha `Login method` como `Claude Max account`, você se conectou com uma assinatura Claude. Se mostrar uma linha `API key` em vez disso, suas solicitações são cobradas em uma organização do Claude Console.

88 88 

89* **Pro e Max**: você paga pelo modo rápido com seus créditos de uso. Vá para [**Settings > Usage**](https://claude.ai/settings/usage) em claude.ai, onde a seção **Usage credits** mostra quanto você gastou em créditos de uso este mês. Essa figura inclui o modo rápido, mas não o separa individualmente.89* **Pro, Max e Ultra**: você paga pelo modo rápido com seus créditos de uso. Vá para [**Settings > Usage**](https://claude.ai/settings/usage) em claude.ai, onde a seção **Usage credits** mostra quanto você gastou em créditos de uso este mês. Essa figura inclui o modo rápido, mas não o separa individualmente.

90* **Team e Enterprise**: sua organização paga pelo seu uso do modo rápido com seus créditos de uso. Para ver seu próprio gasto de créditos de uso, execute [`/usage`](https://code.claude.com/docs/pt/costs#check-your-usage-credits-spend). Para ver onde sua organização vê esse gasto, consulte [Claude for Teams and Enterprise](https://code.claude.com/docs/pt/costs.md#claude-for-teams-and-enterprise).90* **Team e Enterprise**: sua organização paga pelo seu uso do modo rápido com seus créditos de uso. Para ver seu próprio gasto de créditos de uso, execute [`/usage`](https://code.claude.com/docs/pt/costs#check-your-usage-credits-spend). Para ver onde sua organização vê esse gasto, consulte [Claude for Teams and Enterprise](https://code.claude.com/docs/pt/costs.md#claude-for-teams-and-enterprise).

91* **Claude Console**: sua organização paga pelo modo rápido junto com o resto de seu uso de API. Nas páginas [Usage](https://platform.claude.com/usage) e [Cost](https://platform.claude.com/cost) do Console, selecione **Speed (Research Preview)** no menu **Group by** para separar o modo rápido do uso em velocidade padrão. Você vê essa opção apenas quando o intervalo de datas selecionado inclui uso do modo rápido.91* **Claude Console**: sua organização paga pelo modo rápido junto com o resto de seu uso de API. Nas páginas [Usage](https://platform.claude.com/usage) e [Cost](https://platform.claude.com/cost) do Console, selecione **Speed (Research Preview)** no menu **Group by** para separar o modo rápido do uso em velocidade padrão. Você vê essa opção apenas quando o intervalo de datas selecionado inclui uso do modo rápido.

92 92 


120O modo rápido requer todos os seguintes:120O modo rápido requer todos os seguintes:

121 121 

122* **Apenas API Anthropic ou assinatura**: o modo rápido está disponível através da API do Anthropic Console e para planos de assinatura Claude usando créditos de uso. Não está disponível no Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry ou Claude Platform na AWS. As organizações do Console também devem ter [acesso ao modo rápido provisionado](#enable-fast-mode-for-your-organization) para usá-lo com Opus 5 ou Opus 4.8.122* **Apenas API Anthropic ou assinatura**: o modo rápido está disponível através da API do Anthropic Console e para planos de assinatura Claude usando créditos de uso. Não está disponível no Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry ou Claude Platform na AWS. As organizações do Console também devem ter [acesso ao modo rápido provisionado](#enable-fast-mode-for-your-organization) para usá-lo com Opus 5 ou Opus 4.8.

123* **Créditos de uso ativados para planos de assinatura**: em um plano Pro, Max, Team ou Enterprise, sua conta deve ter [créditos de uso](https://code.claude.com/docs/pt/costs.md#add-usage-credits-to-your-subscription) ativados, o que permite cobrança além do uso incluído no seu plano. Até que estejam ativados, `/fast` mostra "Fast mode requires usage credits". Como você os ativa depende do seu plano:123* **Créditos de uso ativados para planos de assinatura**: em um plano Pro, Max, Ultra, Team ou Enterprise, sua conta deve ter [créditos de uso](https://code.claude.com/docs/pt/costs.md#add-usage-credits-to-your-subscription) ativados, o que permite cobrança além do uso incluído no seu plano. Até que estejam ativados, `/fast` mostra "Fast mode requires usage credits". Para ativá-los, siga a etapa correspondente ao seu plano:

124 * Em Pro e Max, ative-os na seção **Usage credits** de [**Settings > Usage**](https://claude.ai/settings/usage) em claude.ai, ou execute `/usage-credits` para abrir essa página.124 * Em Pro, Max e Ultra, ative-os na seção **Usage credits** de [**Settings > Usage**](https://claude.ai/settings/usage) em claude.ai, ou execute `/usage-credits` para abrir essa página.

125 * Em Team e Enterprise, um membro com acesso ao faturamento os ativa para a organização em [**Organization settings > Usage**](https://claude.ai/admin-settings/usage), e um membro sem esse acesso executa `/usage-credits` para enviar uma solicitação aos administradores da organização.125 * Em Team e Enterprise, um membro com acesso ao faturamento os ativa para a organização em [**Organization settings > Usage**](https://claude.ai/admin-settings/usage), e um membro sem esse acesso executa `/usage-credits` para enviar uma solicitação aos administradores da organização.

126 126 

127> [!NOTE]127> [!NOTE]

Details

14 14 

15Como você se autentica determina quais recursos o Claude Code pode acessar. Para uma única lista do que está faltando no seu provedor, consulte as abas [resumo por provedor](#summary-by-provider). Para encontrar sua coluna nas tabelas:15Como você se autentica determina quais recursos o Claude Code pode acessar. Para uma única lista do que está faltando no seu provedor, consulte as abas [resumo por provedor](#summary-by-provider). Para encontrar sua coluna nas tabelas:

16 16 

17* **Assinatura Claude**: você faz login com uma conta claude.ai no plano Pro, Max, Team ou Enterprise17* **Assinatura Claude**: você faz login com uma conta claude.ai no plano Pro, Max, Ultra, Team ou Enterprise

18* **Anthropic Console**: você se autentica com uma chave de API Anthropic ou por [fazer login em uma conta Console sem uma](https://code.claude.com/docs/pt/authentication.md#sign-in-without-an-api-key)18* **Anthropic Console**: você se autentica com uma chave de API Anthropic ou por [fazer login em uma conta Console sem uma](https://code.claude.com/docs/pt/authentication.md#sign-in-without-an-api-key)

19* **Amazon Bedrock**: você usa modelos Claude do catálogo de modelos Bedrock e define `CLAUDE_CODE_USE_BEDROCK`. O [endpoint Mantle](https://code.claude.com/docs/pt/amazon-bedrock.md#use-the-mantle-endpoint) (`CLAUDE_CODE_USE_MANTLE`) é coberto por esta coluna19* **Amazon Bedrock**: você usa modelos Claude do catálogo de modelos Bedrock e define `CLAUDE_CODE_USE_BEDROCK`. O [endpoint Mantle](https://code.claude.com/docs/pt/amazon-bedrock.md#use-the-mantle-endpoint) (`CLAUDE_CODE_USE_MANTLE`) é coberto por esta coluna

20* **Claude Platform on AWS**: você comprou Claude através do AWS Marketplace, mas chama a API Anthropic, e define `CLAUDE_CODE_USE_ANTHROPIC_AWS`20* **Claude Platform on AWS**: você comprou Claude através do AWS Marketplace, mas chama a API Anthropic, e define `CLAUDE_CODE_USE_ANTHROPIC_AWS`


46Estes requerem login com uma conta claude.ai e não são acessíveis com uma chave de API Anthropic Console ou de um provedor terceirizado:46Estes requerem login com uma conta claude.ai e não são acessíveis com uma chave de API Anthropic Console ou de um provedor terceirizado:

47 47 

48* [Sessões na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) e Claude Code no celular48* [Sessões na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) e Claude Code no celular

49* [Claude Code no Slack](https://code.claude.com/docs/pt/slack.md): planos Pro e Max49* [Claude Code no Slack](https://code.claude.com/docs/pt/slack.md): planos Pro, Max e Ultra

50* [Claude Code Desktop](https://code.claude.com/docs/pt/desktop.md)50* [Claude Code Desktop](https://code.claude.com/docs/pt/desktop.md)

51* [Tarefas agendadas na nuvem](https://code.claude.com/docs/pt/routines.md) (`/schedule`)51* [Tarefas agendadas na nuvem](https://code.claude.com/docs/pt/routines.md) (`/schedule`)

52* [Ultrareview](https://code.claude.com/docs/pt/ultrareview.md)52* [Ultrareview](https://code.claude.com/docs/pt/ultrareview.md)

53* [Code Review](https://code.claude.com/docs/pt/code-review.md): planos Team e Enterprise53* [Code Review](https://code.claude.com/docs/pt/code-review.md): planos Team e Enterprise

54* [Remote Control](https://code.claude.com/docs/pt/remote-control.md)54* [Remote Control](https://code.claude.com/docs/pt/remote-control.md)

55* [Extensão Chrome](https://code.claude.com/docs/pt/chrome.md)55* [Extensão Chrome](https://code.claude.com/docs/pt/chrome.md)

56* [Computer use](https://code.claude.com/docs/pt/computer-use.md): planos Pro e Max56* [Computer use](https://code.claude.com/docs/pt/computer-use.md): planos Pro, Max e Ultra

57* [Artifacts](https://code.claude.com/docs/pt/artifacts.md): planos Pro, Max, Team e Enterprise57* [Artifacts](https://code.claude.com/docs/pt/artifacts.md): planos Pro, Max, Ultra, Team e Enterprise

58* [Voice dictation](https://code.claude.com/docs/pt/voice-dictation.md)58* [Voice dictation](https://code.claude.com/docs/pt/voice-dictation.md)

59 59 

60Desktop é a exceção parcial: [roteamento de gateway pode ser configurado no aplicativo ou por um administrador](https://code.claude.com/docs/pt/llm-gateway-connect.md#desktop-app). [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview) também executa a aba Code no Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry ou um gateway de LLM auto-hospedado. Ele também executa a aba Code na [Claude API](https://claude.com/docs/third-party/claude-desktop/claude-api) com uma chave de API do Anthropic Console. Para disponibilidade por plano desses recursos, consulte [Disponibilidade por plano de assinatura](#availability-by-subscription-plan).60Desktop é a exceção parcial: [roteamento de gateway pode ser configurado no aplicativo ou por um administrador](https://code.claude.com/docs/pt/llm-gateway-connect.md#desktop-app). [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview) também executa a aba Code no Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry ou um gateway de LLM auto-hospedado. Ele também executa a aba Code na [Claude API](https://claude.com/docs/third-party/claude-desktop/claude-api) com uma chave de API do Anthropic Console. Para disponibilidade por plano desses recursos, consulte [Disponibilidade por plano de assinatura](#availability-by-subscription-plan).


229 229 

230Cada aba lista o que não está disponível ou tem suporte parcial nesse provedor, com alternativas onde uma existe. Tudo não listado funciona da mesma forma que em uma assinatura Claude, além das [diferenças específicas do provedor](#features-available-on-every-provider) observadas acima. No Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry e Claude Platform on AWS, relatório de erros e telemetria para Anthropic estão desativados por padrão. Consulte [comportamentos padrão por provedor de API](https://code.claude.com/docs/pt/data-usage.md#default-behaviors-by-api-provider) para saber qual tráfego ainda chega à Anthropic e como desativar.230Cada aba lista o que não está disponível ou tem suporte parcial nesse provedor, com alternativas onde uma existe. Tudo não listado funciona da mesma forma que em uma assinatura Claude, além das [diferenças específicas do provedor](#features-available-on-every-provider) observadas acima. No Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry e Claude Platform on AWS, relatório de erros e telemetria para Anthropic estão desativados por padrão. Consulte [comportamentos padrão por provedor de API](https://code.claude.com/docs/pt/data-usage.md#default-behaviors-by-api-provider) para saber qual tráfego ainda chega à Anthropic e como desativar.

231 231 

232**Amazon Bedrock**232> [tab] Amazon Bedrock

233 233>

234**Não disponível:** todos os [recursos que requerem uma assinatura Claude](#features-that-require-a-claude-subscription), além de [web search](https://code.claude.com/docs/pt/tools-reference.md#websearch-tool-behavior), [fast mode](https://code.claude.com/docs/pt/fast-mode.md), [Advisor](https://code.claude.com/docs/pt/advisor.md), [Channels](https://code.claude.com/docs/pt/channels.md), o [dashboard de análise](https://code.claude.com/docs/pt/analytics.md), [server-managed settings](https://code.claude.com/docs/pt/server-managed-settings.md) e os [comandos `/design-sync` e `/import`](https://code.claude.com/docs/pt/commands#all-commands).234> **Não disponível:** todos os [recursos que requerem uma assinatura Claude](#features-that-require-a-claude-subscription), além de [web search](https://code.claude.com/docs/pt/tools-reference.md#websearch-tool-behavior), [fast mode](https://code.claude.com/docs/pt/fast-mode.md), [Advisor](https://code.claude.com/docs/pt/advisor.md), [Channels](https://code.claude.com/docs/pt/channels.md), o [dashboard de análise](https://code.claude.com/docs/pt/analytics.md), [server-managed settings](https://code.claude.com/docs/pt/server-managed-settings.md) e os [comandos `/design-sync` e `/import`](https://code.claude.com/docs/pt/commands#all-commands).

235 235>

236**Suporte parcial:**236> **Suporte parcial:**

237 237>

238* [Desktop](https://code.claude.com/docs/pt/desktop.md): apenas via [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview)238> * [Desktop](https://code.claude.com/docs/pt/desktop.md): apenas via [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview)

239* [Auto mode](https://code.claude.com/docs/pt/auto-mode-config.md): Sonnet 5 ou posterior, Opus 4.7 ou posterior, Haiku 5.5 e modelos Fable apenas239> * [Auto mode](https://code.claude.com/docs/pt/auto-mode-config.md): Sonnet 5 ou posterior, Opus 4.7 ou posterior, Haiku 5.5 e modelos Fable apenas

240* [Mensagens entre sessões](https://code.claude.com/docs/pt/cross-session-messaging.md): entre suas sessões nesta máquina apenas <sup>[5](#fn5)</sup>240> * [Mensagens entre sessões](https://code.claude.com/docs/pt/cross-session-messaging.md): entre suas sessões nesta máquina apenas <sup>[5](#fn5)</sup>

241* [Zero Data Retention](https://code.claude.com/docs/pt/zero-data-retention.md): sujeito ao seu acordo AWS241> * [Zero Data Retention](https://code.claude.com/docs/pt/zero-data-retention.md): sujeito ao seu acordo AWS

242 242>

243**Alternativas:** para agendamento, use [`/loop`](https://code.claude.com/docs/pt/scheduled-tasks) em vez de `/schedule`. Para sessões em nuvem, use [GitHub Actions](https://code.claude.com/docs/pt/github-actions.md) ou [GitLab CI/CD](https://code.claude.com/docs/pt/gitlab-ci-cd.md). Para pesquisas na web, use a [ferramenta WebFetch](https://code.claude.com/docs/pt/tools-reference.md#webfetch-tool-behavior) com uma URL específica.243> **Alternativas:** para agendamento, use [`/loop`](https://code.claude.com/docs/pt/scheduled-tasks) em vez de `/schedule`. Para sessões em nuvem, use [GitHub Actions](https://code.claude.com/docs/pt/github-actions.md) ou [GitLab CI/CD](https://code.claude.com/docs/pt/gitlab-ci-cd.md). Para pesquisas na web, use a [ferramenta WebFetch](https://code.claude.com/docs/pt/tools-reference.md#webfetch-tool-behavior) com uma URL específica.

244 

245**Claude Platform on AWS**

246 

247**Não disponível:** todos os [recursos que requerem uma assinatura Claude](#features-that-require-a-claude-subscription), além de [fast mode](https://code.claude.com/docs/pt/fast-mode.md), [Advisor](https://code.claude.com/docs/pt/advisor.md), [Channels](https://code.claude.com/docs/pt/channels.md), [GitHub Actions](https://code.claude.com/docs/pt/github-actions.md), o [dashboard de análise](https://code.claude.com/docs/pt/analytics.md), [server-managed settings](https://code.claude.com/docs/pt/server-managed-settings.md) e os [comandos `/design-sync` e `/import`](https://code.claude.com/docs/pt/commands#all-commands).

248 

249**Disponível onde Amazon Bedrock não é:** [web search](https://code.claude.com/docs/pt/tools-reference.md#websearch-tool-behavior).

250 

251**Suporte parcial:**

252 

253* [Mensagens entre sessões](https://code.claude.com/docs/pt/cross-session-messaging.md): entre suas sessões nesta máquina apenas <sup>[5](#fn5)</sup>

254 

255**Alternativas:** para agendamento, use [`/loop`](https://code.claude.com/docs/pt/scheduled-tasks) em vez de `/schedule`. Para sessões em nuvem, use [GitLab CI/CD](https://code.claude.com/docs/pt/gitlab-ci-cd.md).

256 

257**Google Cloud's Agent Platform**

258 

259**Não disponível:** todos os [recursos que requerem uma assinatura Claude](#features-that-require-a-claude-subscription), além de [fast mode](https://code.claude.com/docs/pt/fast-mode.md), [Advisor](https://code.claude.com/docs/pt/advisor.md), [Channels](https://code.claude.com/docs/pt/channels.md), o [dashboard de análise](https://code.claude.com/docs/pt/analytics.md), [server-managed settings](https://code.claude.com/docs/pt/server-managed-settings.md) e os [comandos `/design-sync` e `/import`](https://code.claude.com/docs/pt/commands#all-commands).

260 

261**Suporte parcial:**

262 

263* [Desktop](https://code.claude.com/docs/pt/desktop.md): via [configurações gerenciadas](https://claude.com/docs/third-party/claude-desktop/configuration) ou [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview)

264* [Web search](https://code.claude.com/docs/pt/tools-reference.md#websearch-tool-behavior): Opus 4, Sonnet 4, Haiku 4.5 e modelos posteriores

265* [Auto mode](https://code.claude.com/docs/pt/auto-mode-config.md): Sonnet 5 ou posterior, Opus 4.7 ou posterior, Haiku 5.5 e modelos Fable apenas

266* [Mensagens entre sessões](https://code.claude.com/docs/pt/cross-session-messaging.md): entre suas sessões nesta máquina apenas <sup>[5](#fn5)</sup>

267* [Zero Data Retention](https://code.claude.com/docs/pt/zero-data-retention.md): sujeito ao seu acordo Google Cloud

268 

269**Alternativas:** para agendamento, use [`/loop`](https://code.claude.com/docs/pt/scheduled-tasks) em vez de `/schedule`. Para sessões em nuvem, use [GitHub Actions](https://code.claude.com/docs/pt/github-actions.md) ou [GitLab CI/CD](https://code.claude.com/docs/pt/gitlab-ci-cd.md).

270 

271**Microsoft Foundry**

272 

273**Não disponível:** todos os [recursos que requerem uma assinatura Claude](#features-that-require-a-claude-subscription), além de [fast mode](https://code.claude.com/docs/pt/fast-mode.md), [Advisor](https://code.claude.com/docs/pt/advisor.md), [Channels](https://code.claude.com/docs/pt/channels.md), [GitLab CI/CD](https://code.claude.com/docs/pt/gitlab-ci-cd.md), o [dashboard de análise](https://code.claude.com/docs/pt/analytics.md), [server-managed settings](https://code.claude.com/docs/pt/server-managed-settings.md) e os [comandos `/design-sync` e `/import`](https://code.claude.com/docs/pt/commands#all-commands).

274 

275**Suporte parcial:**

276 

277* [Desktop](https://code.claude.com/docs/pt/desktop.md): apenas via [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview)

278* [Auto mode](https://code.claude.com/docs/pt/auto-mode-config.md): Sonnet 5 ou posterior, Opus 4.7 ou posterior, Haiku 5.5 e modelos Fable apenas

279* [Mensagens entre sessões](https://code.claude.com/docs/pt/cross-session-messaging.md): entre suas sessões nesta máquina apenas <sup>[5](#fn5)</sup>

280* [Zero Data Retention](https://code.claude.com/docs/pt/zero-data-retention.md): sujeito ao seu acordo Azure

281 

282**Alternativas:** para agendamento, use [`/loop`](https://code.claude.com/docs/pt/scheduled-tasks) em vez de `/schedule`. Para sessões em nuvem, use [GitHub Actions](https://code.claude.com/docs/pt/github-actions.md).

283 

284**Anthropic Console**

285 244 

286**Não disponível:** todos os [recursos que requerem uma assinatura Claude](#features-that-require-a-claude-subscription).245> [tab] Claude Platform on AWS

246>

247> **Não disponível:** todos os [recursos que requerem uma assinatura Claude](#features-that-require-a-claude-subscription), além de [fast mode](https://code.claude.com/docs/pt/fast-mode.md), [Advisor](https://code.claude.com/docs/pt/advisor.md), [Channels](https://code.claude.com/docs/pt/channels.md), [GitHub Actions](https://code.claude.com/docs/pt/github-actions.md), o [dashboard de análise](https://code.claude.com/docs/pt/analytics.md), [server-managed settings](https://code.claude.com/docs/pt/server-managed-settings.md) e os [comandos `/design-sync` e `/import`](https://code.claude.com/docs/pt/commands#all-commands).

248>

249> **Disponível onde Amazon Bedrock não é:** [web search](https://code.claude.com/docs/pt/tools-reference.md#websearch-tool-behavior).

250>

251> **Suporte parcial:**

252>

253> * [Mensagens entre sessões](https://code.claude.com/docs/pt/cross-session-messaging.md): entre suas sessões nesta máquina apenas <sup>[5](#fn5)</sup>

254>

255> **Alternativas:** para agendamento, use [`/loop`](https://code.claude.com/docs/pt/scheduled-tasks) em vez de `/schedule`. Para sessões em nuvem, use [GitLab CI/CD](https://code.claude.com/docs/pt/gitlab-ci-cd.md).

287 256 

288Tudo em [Recursos de CLI que variam por provedor](#cli-capabilities-that-vary-by-provider) está disponível, exceto que [fast mode](https://code.claude.com/docs/pt/fast-mode.md) com Claude Opus 5 ou Claude Opus 4.8 requer [acesso provisionado](https://code.claude.com/docs/pt/fast-mode.md#enable-fast-mode-for-your-organization). [Server-managed settings](https://code.claude.com/docs/pt/server-managed-settings.md) que você configura em uma organização Team ou Enterprise do claude.ai não chegam a uma sessão que se autentica com uma chave de API do Console. Consulte [Disponibilidade da plataforma](https://code.claude.com/docs/pt/server-managed-settings.md#platform-availability) para saber como cobrir essas sessões.257> [tab] Google Cloud's Agent Platform

258>

259> **Não disponível:** todos os [recursos que requerem uma assinatura Claude](#features-that-require-a-claude-subscription), além de [fast mode](https://code.claude.com/docs/pt/fast-mode.md), [Advisor](https://code.claude.com/docs/pt/advisor.md), [Channels](https://code.claude.com/docs/pt/channels.md), o [dashboard de análise](https://code.claude.com/docs/pt/analytics.md), [server-managed settings](https://code.claude.com/docs/pt/server-managed-settings.md) e os [comandos `/design-sync` e `/import`](https://code.claude.com/docs/pt/commands#all-commands).

260>

261> **Suporte parcial:**

262>

263> * [Desktop](https://code.claude.com/docs/pt/desktop.md): via [configurações gerenciadas](https://claude.com/docs/third-party/claude-desktop/configuration) ou [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview)

264> * [Web search](https://code.claude.com/docs/pt/tools-reference.md#websearch-tool-behavior): Opus 4, Sonnet 4, Haiku 4.5 e modelos posteriores

265> * [Auto mode](https://code.claude.com/docs/pt/auto-mode-config.md): Sonnet 5 ou posterior, Opus 4.7 ou posterior, Haiku 5.5 e modelos Fable apenas

266> * [Mensagens entre sessões](https://code.claude.com/docs/pt/cross-session-messaging.md): entre suas sessões nesta máquina apenas <sup>[5](#fn5)</sup>

267> * [Zero Data Retention](https://code.claude.com/docs/pt/zero-data-retention.md): sujeito ao seu acordo Google Cloud

268>

269> **Alternativas:** para agendamento, use [`/loop`](https://code.claude.com/docs/pt/scheduled-tasks) em vez de `/schedule`. Para sessões em nuvem, use [GitHub Actions](https://code.claude.com/docs/pt/github-actions.md) ou [GitLab CI/CD](https://code.claude.com/docs/pt/gitlab-ci-cd.md).

289 270 

290**Suporte parcial:**271> [tab] Microsoft Foundry

272>

273> **Não disponível:** todos os [recursos que requerem uma assinatura Claude](#features-that-require-a-claude-subscription), além de [fast mode](https://code.claude.com/docs/pt/fast-mode.md), [Advisor](https://code.claude.com/docs/pt/advisor.md), [Channels](https://code.claude.com/docs/pt/channels.md), [GitLab CI/CD](https://code.claude.com/docs/pt/gitlab-ci-cd.md), o [dashboard de análise](https://code.claude.com/docs/pt/analytics.md), [server-managed settings](https://code.claude.com/docs/pt/server-managed-settings.md) e os [comandos `/design-sync` e `/import`](https://code.claude.com/docs/pt/commands#all-commands).

274>

275> **Suporte parcial:**

276>

277> * [Desktop](https://code.claude.com/docs/pt/desktop.md): apenas via [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview)

278> * [Auto mode](https://code.claude.com/docs/pt/auto-mode-config.md): Sonnet 5 ou posterior, Opus 4.7 ou posterior, Haiku 5.5 e modelos Fable apenas

279> * [Mensagens entre sessões](https://code.claude.com/docs/pt/cross-session-messaging.md): entre suas sessões nesta máquina apenas <sup>[5](#fn5)</sup>

280> * [Zero Data Retention](https://code.claude.com/docs/pt/zero-data-retention.md): sujeito ao seu acordo Azure

281>

282> **Alternativas:** para agendamento, use [`/loop`](https://code.claude.com/docs/pt/scheduled-tasks) em vez de `/schedule`. Para sessões em nuvem, use [GitHub Actions](https://code.claude.com/docs/pt/github-actions.md).

291 283 

292* [Desktop](https://code.claude.com/docs/pt/desktop.md): via [Claude Desktop on 3P com a Claude API](https://claude.com/docs/third-party/claude-desktop/claude-api)284> [tab] Anthropic Console

285>

286> **Não disponível:** todos os [recursos que requerem uma assinatura Claude](#features-that-require-a-claude-subscription).

287>

288> Tudo em [Recursos de CLI que variam por provedor](#cli-capabilities-that-vary-by-provider) está disponível, exceto que [fast mode](https://code.claude.com/docs/pt/fast-mode.md) com Claude Opus 5 ou Claude Opus 4.8 requer [acesso provisionado](https://code.claude.com/docs/pt/fast-mode.md#enable-fast-mode-for-your-organization). [Server-managed settings](https://code.claude.com/docs/pt/server-managed-settings.md) que você configura em uma organização Team ou Enterprise do claude.ai não chegam a uma sessão que se autentica com uma chave de API do Console. Consulte [Disponibilidade da plataforma](https://code.claude.com/docs/pt/server-managed-settings.md#platform-availability) para saber como cobrir essas sessões.

289>

290> **Suporte parcial:**

291>

292> * [Desktop](https://code.claude.com/docs/pt/desktop.md): via [Claude Desktop on 3P com a Claude API](https://claude.com/docs/third-party/claude-desktop/claude-api)

293 293 

294## Disponibilidade por plano de assinatura294## Disponibilidade por plano de assinatura

295 295 


297 297 

298Em organizações Enterprise com a [configuração HIPAA](https://code.claude.com/docs/pt/hipaa-setup.md) aplicada, alguns recursos desta tabela são desativados.298Em organizações Enterprise com a [configuração HIPAA](https://code.claude.com/docs/pt/hipaa-setup.md) aplicada, alguns recursos desta tabela são desativados.

299 299 

300| Recurso | Pro | Max | Team | Enterprise |300| Recurso | Pro | Max | Ultra | Team | Enterprise |

301| :- | :- | :- | :- | :- |301| :- | :- | :- | :- | :- | :- |

302| [Cloud sessions](https://code.claude.com/docs/pt/claude-code-on-the-web.md) | ✓ | ✓ | ✓ | ✓ <sup>[6](#fn6)</sup> |302| [Cloud sessions](https://code.claude.com/docs/pt/claude-code-on-the-web.md) | ✓ | ✓ | ✓ | ✓ | ✓ <sup>[6](#fn6)</sup> |

303| [Tarefas agendadas na nuvem](https://code.claude.com/docs/pt/routines.md) | ✓ | ✓ | ✓ | ✓ |303| [Tarefas agendadas na nuvem](https://code.claude.com/docs/pt/routines.md) | ✓ | ✓ | ✓ | ✓ | ✓ |

304| [Remote Control](https://code.claude.com/docs/pt/remote-control.md) | ✓ | ✓ | Admin-enabled | Admin-enabled |304| [Remote Control](https://code.claude.com/docs/pt/remote-control.md) | ✓ | ✓ | ✓ | Admin-enabled | Admin-enabled |

305| [Channels](https://code.claude.com/docs/pt/channels.md) | ✓ | ✓ | Admin-enabled | Admin-enabled |305| [Channels](https://code.claude.com/docs/pt/channels.md) | ✓ | ✓ | ✓ | Admin-enabled | Admin-enabled |

306| [Computer use](https://code.claude.com/docs/pt/computer-use.md) | ✓ | ✓ | ✗ | ✗ |306| [Computer use](https://code.claude.com/docs/pt/computer-use.md) | ✓ | ✓ | ✓ | ✗ | ✗ |

307| Dispatch ([Desktop](https://code.claude.com/docs/pt/desktop.md#sessions-from-dispatch)) | ✓ | ✓ | ✗ | ✗ |307| Dispatch ([Desktop](https://code.claude.com/docs/pt/desktop.md#sessions-from-dispatch)) | ✓ | ✓ | ✓ | ✗ | ✗ |

308| [Code Review](https://code.claude.com/docs/pt/code-review.md) | ✗ | ✗ | ✓ | ✓ |308| [Code Review](https://code.claude.com/docs/pt/code-review.md) | ✗ | ✗ | ✗ | ✓ | ✓ |

309| [Artifacts](https://code.claude.com/docs/pt/artifacts.md) | ✓ | ✓ | ✓ | ✓ |309| [Artifacts](https://code.claude.com/docs/pt/artifacts.md) | ✓ | ✓ | ✓ | ✓ | ✓ |

310| [Dashboard de análises e métricas de contribuição](https://code.claude.com/docs/pt/analytics.md) | ✗ | ✗ | ✓ | ✓ |310| [Dashboard de análises e métricas de contribuição](https://code.claude.com/docs/pt/analytics.md) | ✗ | ✗ | ✗ | ✓ | ✓ |

311| [API Enterprise Analytics](https://code.claude.com/docs/pt/analytics.md#access-data-programmatically) | ✗ | ✗ | ✗ | ✓ |311| [API Enterprise Analytics](https://code.claude.com/docs/pt/analytics.md#access-data-programmatically) | ✗ | ✗ | ✗ | ✗ | ✓ |

312| [Server-managed settings](https://code.claude.com/docs/pt/server-managed-settings.md) | ✗ | ✗ | ✓ | ✓ |312| [Server-managed settings](https://code.claude.com/docs/pt/server-managed-settings.md) | ✗ | ✗ | ✗ | ✓ | ✓ |

313| [SSO](https://support.claude.com/en/articles/9266767-what-is-the-team-plan) | ✗ | ✗ | ✓ | ✓ |313| [SSO](https://support.claude.com/en/articles/9266767-what-is-the-team-plan) | ✗ | ✗ | ✗ | ✓ | ✓ |

314| SCIM | ✗ | ✗ | ✗ | ✓ |314| SCIM | ✗ | ✗ | ✗ | ✗ | ✓ |

315| [Compliance API](https://platform.claude.com/docs/en/api/compliance) | ✗ | ✗ | ✗ | ✓ |315| [Compliance API](https://platform.claude.com/docs/en/api/compliance) | ✗ | ✗ | ✗ | ✗ | ✓ |

316| [Zero Data Retention](https://code.claude.com/docs/pt/zero-data-retention.md) | ✗ | ✗ | ✗ | ✓ <sup>[7](#fn7)</sup> |316| [Zero Data Retention](https://code.claude.com/docs/pt/zero-data-retention.md) | ✗ | ✗ | ✗ | ✗ | ✓ <sup>[7](#fn7)</sup> |

317 317 

318<sup>6</sup> No Enterprise, requer um assento premium ou um assento Chat + Claude Code. Consulte [Use Claude Code in the cloud](https://code.claude.com/docs/pt/claude-code-on-the-web.md).\318<sup>6</sup> No Enterprise, requer um assento premium ou um assento Chat + Claude Code. Consulte [Use Claude Code in the cloud](https://code.claude.com/docs/pt/claude-code-on-the-web.md).\

319 319 


321 321 

322Para preços e a comparação completa de planos, consulte [Planos Team](https://support.claude.com/en/articles/9266767-what-is-the-team-plan) e [Planos Enterprise](https://support.claude.com/en/articles/9797531-what-is-the-enterprise-plan).322Para preços e a comparação completa de planos, consulte [Planos Team](https://support.claude.com/en/articles/9266767-what-is-the-team-plan) e [Planos Enterprise](https://support.claude.com/en/articles/9797531-what-is-the-enterprise-plan).

323 323 

324### Plano Ultra

325 

326Ultra é o novo nome do plano Max 20x, e Max é o novo nome do Max 5x. Para verificar em qual plano você está, consulte sua assinatura no claude.ai.

327 

328No Claude Code, Max e Ultra têm os mesmos recursos, listados nas colunas Max e Ultra da [tabela de disponibilidade](#availability-by-subscription-plan). Para limites de uso e preços, consulte a [página de preços do Claude](https://claude.com/pricing).

329 

324## Disponibilidade de modelo330## Disponibilidade de modelo

325 331 

326Para saber quais modelos Claude e tamanhos de janela de contexto estão disponíveis por provedor e região, consulte [Configuração de modelo](https://code.claude.com/docs/pt/model-config.md) e a [visão geral de modelos](https://platform.claude.com/docs/en/about-claude/models/overview). Vision, entrada de PDF e pensamento estendido são capacidades de modelo em vez de recursos do Claude Code e funcionam em todos os provedores que oferecem o modelo. [Prompt caching](https://code.claude.com/docs/pt/prompt-caching.md) funciona da mesma forma na maioria dos provedores; no Amazon Bedrock, o suporte varia por modelo.332Para saber quais modelos Claude e tamanhos de janela de contexto estão disponíveis por provedor e região, consulte [Configuração de modelo](https://code.claude.com/docs/pt/model-config.md) e a [visão geral de modelos](https://platform.claude.com/docs/en/about-claude/models/overview). Vision, entrada de PDF e pensamento estendido são capacidades de modelo em vez de recursos do Claude Code e funcionam em todos os provedores que oferecem o modelo. [Prompt caching](https://code.claude.com/docs/pt/prompt-caching.md) funciona da mesma forma na maioria dos provedores; no Amazon Bedrock, o suporte varia por modelo.

features-overview.md +193 −193

Details

72 72 

73Alguns recursos podem parecer similares. Para uma análise mais profunda sobre como escolher entre eles, consulte [Steering Claude Code: when to use CLAUDE.md, skills, hooks, and subagents](https://claude.com/blog/steering-claude-code-skills-hooks-rules-subagents-and-more) no blog. Aqui está como diferenciá-los.73Alguns recursos podem parecer similares. Para uma análise mais profunda sobre como escolher entre eles, consulte [Steering Claude Code: when to use CLAUDE.md, skills, hooks, and subagents](https://claude.com/blog/steering-claude-code-skills-hooks-rules-subagents-and-more) no blog. Aqui está como diferenciá-los.

74 74 

75**Skill vs Subagent**75> [tab] Skill vs Subagent

76 76>

77Skills e subagents resolvem problemas diferentes:77> Skills e subagents resolvem problemas diferentes:

78 78>

79* **Skills** são conteúdo reutilizável que você pode carregar em qualquer contexto79> * **Skills** são conteúdo reutilizável que você pode carregar em qualquer contexto

80* **Subagents** são trabalhadores isolados que são executados separadamente de sua conversa principal80> * **Subagents** são trabalhadores isolados que são executados separadamente de sua conversa principal

81 81>

82| Aspecto | Skill | Subagent |82> | Aspecto | Skill | Subagent |

83| - | - | - |83> | - | - | - |

84| **O que é** | Instruções, conhecimento ou fluxos de trabalho reutilizáveis | Trabalhador isolado com seu próprio contexto |84> | **O que é** | Instruções, conhecimento ou fluxos de trabalho reutilizáveis | Trabalhador isolado com seu próprio contexto |

85| **Benefício principal** | Compartilhar conteúdo entre contextos | Isolamento de contexto. O trabalho acontece separadamente, apenas o resumo retorna |85> | **Benefício principal** | Compartilhar conteúdo entre contextos | Isolamento de contexto. O trabalho acontece separadamente, apenas o resumo retorna |

86| **Impacto da [janela de contexto](https://code.claude.com/docs/pt/context-window.md)** | Adiciona à sua janela principal | Usa uma janela separada com seus próprios tokens de entrada e saída |86> | **Impacto da [janela de contexto](https://code.claude.com/docs/pt/context-window.md)** | Adiciona à sua janela principal | Usa uma janela separada com seus próprios tokens de entrada e saída |

87| **Melhor para** | Material de referência, fluxos de trabalho invocáveis | Tarefas que leem muitos arquivos, trabalho paralelo, trabalhadores especializados |87> | **Melhor para** | Material de referência, fluxos de trabalho invocáveis | Tarefas que leem muitos arquivos, trabalho paralelo, trabalhadores especializados |

88 88>

89**Skills podem ser referência ou ação.** Skills de referência fornecem conhecimento que Claude usa ao longo de sua sessão (como seu guia de estilo de API). Skills de ação dizem a Claude para fazer algo específico (como `/deploy` que executa seu fluxo de trabalho de implantação).89> **Skills podem ser referência ou ação.** Skills de referência fornecem conhecimento que Claude usa ao longo de sua sessão (como seu guia de estilo de API). Skills de ação dizem a Claude para fazer algo específico (como `/deploy` que executa seu fluxo de trabalho de implantação).

90 90>

91**Use um subagent** quando você precisar de isolamento de contexto ou quando sua janela de contexto estiver ficando cheia. O subagent pode ler dezenas de arquivos ou executar buscas extensas, mas sua conversa principal recebe apenas um resumo. Como o trabalho do subagent não consome seu contexto principal, isso também é útil quando você não precisa que o trabalho intermediário permaneça visível. Subagents personalizados podem ter suas próprias instruções e podem pré-carregar skills.91> **Use um subagent** quando você precisar de isolamento de contexto ou quando sua janela de contexto estiver ficando cheia. O subagent pode ler dezenas de arquivos ou executar buscas extensas, mas sua conversa principal recebe apenas um resumo. Como o trabalho do subagent não consome seu contexto principal, isso também é útil quando você não precisa que o trabalho intermediário permaneça visível. Subagents personalizados podem ter suas próprias instruções e podem pré-carregar skills.

92 92>

93**Eles podem se combinar.** Um subagent pode pré-carregar skills específicas (campo `skills:`). Uma skill pode ser executada em contexto isolado usando `context: fork`. Consulte [Skills](https://code.claude.com/docs/pt/skills.md) para detalhes.93> **Eles podem se combinar.** Um subagent pode pré-carregar skills específicas (campo `skills:`). Uma skill pode ser executada em contexto isolado usando `context: fork`. Consulte [Skills](https://code.claude.com/docs/pt/skills.md) para detalhes.

94 

95**CLAUDE.md vs Skill**

96 

97Ambos armazenam instruções, mas carregam de forma diferente e servem a propósitos diferentes.

98 

99| Aspecto | CLAUDE.md | Skill |

100| - | - | - |

101| **Carrega** | A cada sessão, automaticamente | Sob demanda |

102| **Pode incluir arquivos** | Sim, com importações `@path` | Sim, com importações `@path` |

103| **Pode disparar fluxos de trabalho** | Não | Sim, com `/<name>` |

104| **Melhor para** | Regras "sempre faça X" | Material de referência, fluxos de trabalho invocáveis |

105 

106**Coloque em CLAUDE.md** se Claude sempre deve saber: convenções de codificação, comandos de compilação, estrutura do projeto, regras "nunca faça X".

107 

108**Coloque em uma skill** se for material de referência que Claude precisa às vezes (documentação de API, guias de estilo) ou um fluxo de trabalho que você dispara com `/<name>` (deploy, review, release).

109 

110**Regra prática:** Mantenha CLAUDE.md com menos de 200 linhas. Se estiver crescendo, mova conteúdo de referência para skills ou divida em arquivos [`.claude/rules/`](https://code.claude.com/docs/pt/memory#organize-rules-with-claude/rules/).

111 

112**CLAUDE.md vs Output style**

113 

114Ambos dão a Claude instruções permanentes. CLAUDE.md carrega o que Claude deve saber, e um output style define como Claude responde.

115 

116| Aspecto | CLAUDE.md | Output style |

117| - | - | - |

118| **Contém** | Fatos e regras sobre seu projeto | Um papel, tom e formato de resposta |

119| **Alternância** | Sempre carregado | Um ativo por vez; [alterne estilos](https://code.claude.com/docs/pt/output-styles.md#change-your-output-style) sempre que quiser |

120| **Melhor para** | Comandos de compilação, convenções, regras "nunca faça X" | Respostas mais curtas, explicações junto com código, um papel não-engenharia |

121 

122**Coloque em CLAUDE.md** se for verdade do projeto em qualquer estilo que você esteja: convenções de codificação, comandos de compilação, estrutura do projeto.

123 

124**Use um output style** se for sobre a resposta em si e você pode querer desativá-lo novamente: comprimento, formato, quanto Claude explica, ou um papel diferente como um assistente de escrita. Claude Code inclui [estilos integrados](https://code.claude.com/docs/pt/output-styles.md#built-in-output-styles), e você pode escrever os seus próprios.

125 

126**Eles se combinam.** CLAUDE.md permanece carregado qualquer estilo que você escolha. Claude segue ambos como instruções, então nenhum é imposto. Para qualquer coisa que deve acontecer toda vez, use um [hook](https://code.claude.com/docs/pt/hooks-guide.md).

127 

128**CLAUDE.md vs Rules vs Skills**

129 

130Todos os três armazenam instruções, mas carregam de forma diferente:

131 

132| Aspecto | CLAUDE.md | `.claude/rules/` | Skill |

133| - | - | - | - |

134| **Carrega** | A cada sessão | A cada sessão, ou quando arquivos correspondentes são abertos | Sob demanda, quando invocado ou relevante |

135| **Escopo** | Projeto inteiro | Pode ser limitado a caminhos de arquivo | Específico da tarefa |

136| **Melhor para** | Convenções principais e comandos de compilação | Diretrizes específicas de linguagem ou diretório | Material de referência, fluxos de trabalho repetíveis |

137 

138**Use CLAUDE.md** para instruções que cada sessão precisa: comandos de compilação, convenções de teste, arquitetura do projeto.

139 

140**Use rules** para manter CLAUDE.md focado. Rules com [frontmatter `paths`](https://code.claude.com/docs/pt/memory#path-specific-rules) carregam apenas quando Claude trabalha com arquivos correspondentes, economizando contexto.

141 

142**Use skills** para conteúdo que Claude só precisa às vezes, como documentação de API ou uma lista de verificação de implantação que você dispara com `/<name>`.

143 

144**Subagent vs Dynamic workflow**

145 

146Ambos fazem trabalho fora de sua conversa principal. Com subagents, Claude decide a cada turno o que é executado a seguir. Em um workflow, o script decide:

147 

148* **Subagents** são trabalhadores que Claude gera, cada um retornando um resumo para a conversa que o gerou

149* **[Dynamic workflows](https://code.claude.com/docs/pt/workflows.md)** são scripts que Claude escreve que executam muitos subagents em segundo plano e retornam um resultado

150 

151**Use um subagente** quando você precisar de um trabalhador rápido e focado: pesquisar uma pergunta, verificar uma afirmação, revisar um arquivo. O subagente faz o trabalho e retorna um resumo, então sua conversa principal fica limpa. Subagentes que Claude [nomeou](https://code.claude.com/docs/pt/sub-agents.md#subagent-names) quando os gerou também podem [enviar mensagens uns aos outros](https://code.claude.com/docs/pt/sub-agents.md#what-loads-at-startup).

152 

153**Use um dynamic workflow** quando um trabalho [cresce além de um punhado de subagents](https://code.claude.com/docs/pt/workflows.md#when-to-use-a-workflow), ou quando você quer que as descobertas sejam verificadas antes de você vê-las, como uma auditoria em toda a base de código, uma grande migração ou um plano elaborado de vários ângulos. Para iniciar um, [peça um workflow em seu prompt](https://code.claude.com/docs/pt/workflows.md#ask-for-a-workflow-in-your-prompt).

154 

155**Para passar uma descoberta de uma de suas sessões para outra**, peça ao Claude da primeira sessão para enviá-la. Claude a entrega com [cross-session messaging](https://code.claude.com/docs/pt/cross-session-messaging.md). [Executar agentes em paralelo](https://code.claude.com/docs/pt/agents.md) compara as outras formas de executar mais de um Claude de uma vez, incluindo sessões que você entrega e verifica depois.

156 

157**MCP vs Skill**

158 

159MCP conecta Claude a serviços externos. Skills estendem o que Claude sabe, incluindo como usar esses serviços efetivamente.

160 

161| Aspecto | MCP | Skill |

162| - | - | - |

163| **O que é** | Protocolo para conectar a serviços externos | Conhecimento, fluxos de trabalho e material de referência |

164| **Fornece** | Ferramentas e acesso a dados | Conhecimento, fluxos de trabalho, material de referência |

165| **Exemplos** | Integração Slack, consultas de banco de dados, controle de navegador | Lista de verificação de revisão de código, fluxo de trabalho de implantação, guia de estilo de API |

166 

167Esses resolvem problemas diferentes e funcionam bem juntos:

168 

169**MCP** dá a Claude ferramentas específicas para um sistema externo, com a conexão e autenticação tratadas pelo servidor.

170 

171**Skills** dão a Claude conhecimento sobre como usar essas ferramentas efetivamente, além de fluxos de trabalho que você pode disparar com `/<name>`. Uma skill pode incluir o esquema do banco de dados da sua equipe e padrões de consulta, ou um fluxo de trabalho `/post-to-slack` com as regras de formatação de mensagem da sua equipe.

172 

173**Hook vs Skill**

174 94 

175Claude Code executa um hook em um evento de ciclo de vida; carrega uma skill em contexto para Claude aplicar.95> [tab] CLAUDE.md vs Skill

96>

97> Ambos armazenam instruções, mas carregam de forma diferente e servem a propósitos diferentes.

98>

99> | Aspecto | CLAUDE.md | Skill |

100> | - | - | - |

101> | **Carrega** | A cada sessão, automaticamente | Sob demanda |

102> | **Pode incluir arquivos** | Sim, com importações `@path` | Sim, com importações `@path` |

103> | **Pode disparar fluxos de trabalho** | Não | Sim, com `/<name>` |

104> | **Melhor para** | Regras "sempre faça X" | Material de referência, fluxos de trabalho invocáveis |

105>

106> **Coloque em CLAUDE.md** se Claude sempre deve saber: convenções de codificação, comandos de compilação, estrutura do projeto, regras "nunca faça X".

107>

108> **Coloque em uma skill** se for material de referência que Claude precisa às vezes (documentação de API, guias de estilo) ou um fluxo de trabalho que você dispara com `/<name>` (deploy, review, release).

109>

110> **Regra prática:** Mantenha CLAUDE.md com menos de 200 linhas. Se estiver crescendo, mova conteúdo de referência para skills ou divida em arquivos [`.claude/rules/`](https://code.claude.com/docs/pt/memory#organize-rules-with-claude/rules/).

176 111 

177| Aspecto | Hook | Skill |112> [tab] CLAUDE.md vs Output style

178| - | - | - |113>

179| **Executa** | Um comando shell, solicitação HTTP, chamada de ferramenta MCP, prompt LLM ou subagent | Instruções que Claude lê e segue |114> Ambos dão a Claude instruções permanentes. CLAUDE.md carrega o que Claude deve saber, e um output style define como Claude responde.

180| **Disparado por** | [Eventos de ciclo de vida](https://code.claude.com/docs/pt/hooks.md#hook-events) como `PostToolUse` ou `SessionStart` | Você digitando `/<name>`, ou Claude correspondendo a descrição à sua tarefa |115>

181| **Determinismo** | Dispara em seu evento sem que Claude decida | Claude interpreta as instruções; o resultado pode variar |116> | Aspecto | CLAUDE.md | Output style |

182| **Custo de contexto** | Zero a menos que o hook retorne saída | Descrição carrega a cada sessão; conteúdo completo carrega quando usado |117> | - | - | - |

183| **Melhor para** | Linting após edições, bloqueio de comandos inseguros, logging, notificações | Fluxos de trabalho que precisam de raciocínio, material de referência, tarefas de múltiplas etapas |118> | **Contém** | Fatos e regras sobre seu projeto | Um papel, tom e formato de resposta |

119> | **Alternância** | Sempre carregado | Um ativo por vez; [alterne estilos](https://code.claude.com/docs/pt/output-styles.md#change-your-output-style) sempre que quiser |

120> | **Melhor para** | Comandos de compilação, convenções, regras "nunca faça X" | Respostas mais curtas, explicações junto com código, um papel não-engenharia |

121>

122> **Coloque em CLAUDE.md** se for verdade do projeto em qualquer estilo que você esteja: convenções de codificação, comandos de compilação, estrutura do projeto.

123>

124> **Use um output style** se for sobre a resposta em si e você pode querer desativá-lo novamente: comprimento, formato, quanto Claude explica, ou um papel diferente como um assistente de escrita. Claude Code inclui [estilos integrados](https://code.claude.com/docs/pt/output-styles.md#built-in-output-styles), e você pode escrever os seus próprios.

125>

126> **Eles se combinam.** CLAUDE.md permanece carregado qualquer estilo que você escolha. Claude segue ambos como instruções, então nenhum é imposto. Para qualquer coisa que deve acontecer toda vez, use um [hook](https://code.claude.com/docs/pt/hooks-guide.md).

184 127 

185**Use um hook** quando a ação deve acontecer da mesma forma toda vez e não precisa Claude pensar. Por exemplo: formatar ao salvar, rejeitar `rm -rf /`, postar uma mensagem Slack quando uma sessão termina.128> [tab] CLAUDE.md vs Rules vs Skills

129>

130> Todos os três armazenam instruções, mas carregam de forma diferente:

131>

132> | Aspecto | CLAUDE.md | `.claude/rules/` | Skill |

133> | - | - | - | - |

134> | **Carrega** | A cada sessão | A cada sessão, ou quando arquivos correspondentes são abertos | Sob demanda, quando invocado ou relevante |

135> | **Escopo** | Projeto inteiro | Pode ser limitado a caminhos de arquivo | Específico da tarefa |

136> | **Melhor para** | Convenções principais e comandos de compilação | Diretrizes específicas de linguagem ou diretório | Material de referência, fluxos de trabalho repetíveis |

137>

138> **Use CLAUDE.md** para instruções que cada sessão precisa: comandos de compilação, convenções de teste, arquitetura do projeto.

139>

140> **Use rules** para manter CLAUDE.md focado. Rules com [frontmatter `paths`](https://code.claude.com/docs/pt/memory#path-specific-rules) carregam apenas quando Claude trabalha com arquivos correspondentes, economizando contexto.

141>

142> **Use skills** para conteúdo que Claude só precisa às vezes, como documentação de API ou uma lista de verificação de implantação que você dispara com `/<name>`.

186 143 

187**Use uma skill** quando Claude deve decidir como aplicar os passos, ou quando o conteúdo é conhecimento em vez de um script. Por exemplo: uma lista de verificação `/release`, seu guia de estilo de API, um playbook de depuração.144> [tab] Subagent vs Dynamic workflow

145>

146> Ambos fazem trabalho fora de sua conversa principal. Com subagents, Claude decide a cada turno o que é executado a seguir. Em um workflow, o script decide:

147>

148> * **Subagents** são trabalhadores que Claude gera, cada um retornando um resumo para a conversa que o gerou

149> * **[Dynamic workflows](https://code.claude.com/docs/pt/workflows.md)** são scripts que Claude escreve que executam muitos subagents em segundo plano e retornam um resultado

150>

151> **Use um subagente** quando você precisar de um trabalhador rápido e focado: pesquisar uma pergunta, verificar uma afirmação, revisar um arquivo. O subagente faz o trabalho e retorna um resumo, então sua conversa principal fica limpa. Subagentes que Claude [nomeou](https://code.claude.com/docs/pt/sub-agents.md#subagent-names) quando os gerou também podem [enviar mensagens uns aos outros](https://code.claude.com/docs/pt/sub-agents.md#what-loads-at-startup).

152>

153> **Use um dynamic workflow** quando um trabalho [cresce além de um punhado de subagents](https://code.claude.com/docs/pt/workflows.md#when-to-use-a-workflow), ou quando você quer que as descobertas sejam verificadas antes de você vê-las, como uma auditoria em toda a base de código, uma grande migração ou um plano elaborado de vários ângulos. Para iniciar um, [peça um workflow em seu prompt](https://code.claude.com/docs/pt/workflows.md#ask-for-a-workflow-in-your-prompt).

154>

155> **Para passar uma descoberta de uma de suas sessões para outra**, peça ao Claude da primeira sessão para enviá-la. Claude a entrega com [cross-session messaging](https://code.claude.com/docs/pt/cross-session-messaging.md). [Executar agentes em paralelo](https://code.claude.com/docs/pt/agents.md) compara as outras formas de executar mais de um Claude de uma vez, incluindo sessões que você entrega e verifica depois.

188 156 

189**Coloque guardrails em hooks.** Uma instrução como "nunca edite `.env`" em CLAUDE.md ou uma skill é um pedido, não uma garantia. Um hook `PreToolUse` que bloqueia a edição é execução. Se uma regra deve valer toda vez, faça um hook em vez de uma instrução de prompt.157> [tab] MCP vs Skill

158>

159> MCP conecta Claude a serviços externos. Skills estendem o que Claude sabe, incluindo como usar esses serviços efetivamente.

160>

161> | Aspecto | MCP | Skill |

162> | - | - | - |

163> | **O que é** | Protocolo para conectar a serviços externos | Conhecimento, fluxos de trabalho e material de referência |

164> | **Fornece** | Ferramentas e acesso a dados | Conhecimento, fluxos de trabalho, material de referência |

165> | **Exemplos** | Integração Slack, consultas de banco de dados, controle de navegador | Lista de verificação de revisão de código, fluxo de trabalho de implantação, guia de estilo de API |

166>

167> Esses resolvem problemas diferentes e funcionam bem juntos:

168>

169> **MCP** dá a Claude ferramentas específicas para um sistema externo, com a conexão e autenticação tratadas pelo servidor.

170>

171> **Skills** dão a Claude conhecimento sobre como usar essas ferramentas efetivamente, além de fluxos de trabalho que você pode disparar com `/<name>`. Uma skill pode incluir o esquema do banco de dados da sua equipe e padrões de consulta, ou um fluxo de trabalho `/post-to-slack` com as regras de formatação de mensagem da sua equipe.

190 172 

191**Saída de hook entra em contexto.** Um hook `PostToolUse` que executa seu linter alimenta resultados de volta como texto que Claude lê; uma skill `/fix-lint` diz a Claude como resolvê-los.173> [tab] Hook vs Skill

174>

175> Claude Code executa um hook em um evento de ciclo de vida; carrega uma skill em contexto para Claude aplicar.

176>

177> | Aspecto | Hook | Skill |

178> | - | - | - |

179> | **Executa** | Um comando shell, solicitação HTTP, chamada de ferramenta MCP, prompt LLM ou subagent | Instruções que Claude lê e segue |

180> | **Disparado por** | [Eventos de ciclo de vida](https://code.claude.com/docs/pt/hooks.md#hook-events) como `PostToolUse` ou `SessionStart` | Você digitando `/<name>`, ou Claude correspondendo a descrição à sua tarefa |

181> | **Determinismo** | Dispara em seu evento sem que Claude decida | Claude interpreta as instruções; o resultado pode variar |

182> | **Custo de contexto** | Zero a menos que o hook retorne saída | Descrição carrega a cada sessão; conteúdo completo carrega quando usado |

183> | **Melhor para** | Linting após edições, bloqueio de comandos inseguros, logging, notificações | Fluxos de trabalho que precisam de raciocínio, material de referência, tarefas de múltiplas etapas |

184>

185> **Use um hook** quando a ação deve acontecer da mesma forma toda vez e não precisa Claude pensar. Por exemplo: formatar ao salvar, rejeitar `rm -rf /`, postar uma mensagem Slack quando uma sessão termina.

186>

187> **Use uma skill** quando Claude deve decidir como aplicar os passos, ou quando o conteúdo é conhecimento em vez de um script. Por exemplo: uma lista de verificação `/release`, seu guia de estilo de API, um playbook de depuração.

188>

189> **Coloque guardrails em hooks.** Uma instrução como "nunca edite `.env`" em CLAUDE.md ou uma skill é um pedido, não uma garantia. Um hook `PreToolUse` que bloqueia a edição é execução. Se uma regra deve valer toda vez, faça um hook em vez de uma instrução de prompt.

190>

191> **Saída de hook entra em contexto.** Um hook `PostToolUse` que executa seu linter alimenta resultados de volta como texto que Claude lê; uma skill `/fix-lint` diz a Claude como resolvê-los.

192 192 

193### Entender como os recursos se sobrepõem193### Entender como os recursos se sobrepõem

194 194 


238 238 

239![Carregamento de contexto: CLAUDE.md carrega no início da sessão e permanece em cada requisição. Nomes de ferramentas MCP carregam no início com esquemas completos adiados até o uso. Skills carregam descrições no início, conteúdo completo na invocação. Subagents obtêm contexto isolado. Hooks são executados externamente.](https://mintcdn.com/claude-code/ikqp3_70mqIahteV/images/context-loading.svg?fit=max\&auto=format\&n=ikqp3_70mqIahteV\&q=85\&s=aab139e750494a237ae2e0c8f9139b0a)239![Carregamento de contexto: CLAUDE.md carrega no início da sessão e permanece em cada requisição. Nomes de ferramentas MCP carregam no início com esquemas completos adiados até o uso. Skills carregam descrições no início, conteúdo completo na invocação. Subagents obtêm contexto isolado. Hooks são executados externamente.](https://mintcdn.com/claude-code/ikqp3_70mqIahteV/images/context-loading.svg?fit=max\&auto=format\&n=ikqp3_70mqIahteV\&q=85\&s=aab139e750494a237ae2e0c8f9139b0a)

240 240 

241**CLAUDE.md**241> [tab] CLAUDE.md

242 

243**Quando:** Início da sessão

244 

245**O que carrega:** Conteúdo completo de cada arquivo CLAUDE.md que carrega no início da sessão (níveis gerenciado, usuário e projeto).

246 

247**Herança:** Claude lê arquivos CLAUDE.md do seu diretório de trabalho até a raiz e descobre aninhados em subdiretórios conforme acessa esses arquivos. Consulte [Como arquivos CLAUDE.md carregam](https://code.claude.com/docs/pt/memory.md#how-claude-md-files-load) para detalhes. Se um CLAUDE.md aninhado ultrapassar seu [limite de tamanho por arquivo](https://code.claude.com/docs/pt/memory.md#claude-ignores-the-end-of-my-subdirectory-claude-md), Claude recebe apenas o início do arquivo.

248 

249> [!TIP]

250>242>

251> Mantenha CLAUDE.md com menos de 200 linhas. Mova material de referência para skills, que carregam sob demanda. Para obter [propostas de corte para um CLAUDE.md versionado](https://code.claude.com/docs/pt/memory.md#my-claude-md-is-too-large), execute `/doctor`.243> **Quando:** Início da sessão

252 

253**Skills**

254 

255Skills são capacidades extras no kit de ferramentas de Claude. Podem ser material de referência (como um guia de estilo de API) ou fluxos de trabalho invocáveis que você dispara com `/<name>` (como `/deploy`). Claude Code inclui [skills agrupadas](https://code.claude.com/docs/pt/commands.md) como `/code-review`, `/batch` e `/debug` que funcionam imediatamente. Você também pode criar as suas próprias.

256 

257**Quando:** Depende da configuração da skill. Por padrão, descrições carregam no início da sessão e conteúdo completo carrega quando usado. Para skills apenas de usuário (`disable-model-invocation: true`), nada carrega até que você as invoque.

258 

259**O que carrega:** Para skills invocáveis por modelo, Claude vê nomes e descrições em cada requisição. Quando você invoca uma skill com `/<name>` ou Claude a carrega automaticamente, o conteúdo completo carrega em sua conversa.

260 

261**Como Claude escolhe skills:** Claude corresponde sua tarefa contra descrições de skill para decidir quais são relevantes. Se descrições forem vagas ou se sobrepuserem, Claude pode carregar a skill errada ou perder uma que ajudaria. Para dizer a Claude para usar uma skill específica, invoque-a com `/<name>`.

262 

263**Custo de contexto:** Baixo até ser usado. Skills apenas de usuário têm custo zero até invocação.

264 

265**Em subagents:** O conteúdo completo das skills listadas no campo `skills` de um subagent [carrega em seu contexto no lançamento](https://code.claude.com/docs/pt/sub-agents.md#preload-skills-into-subagents), em vez de sob demanda. Subagents ainda podem descobrir e invocar skills de projeto, usuário e plugin não listadas através da ferramenta Skill.

266 

267> [!TIP]

268>244>

269> Use `disable-model-invocation: true` para skills com efeitos colaterais. Isso economiza contexto e garante que sejam executadas apenas quando você as nomear.245> **O que carrega:** Conteúdo completo de cada arquivo CLAUDE.md que carrega no início da sessão (níveis gerenciado, usuário e projeto).

270 

271**Servidores MCP**

272 

273**Quando:** Início da sessão.

274 

275**O que carrega:** Nomes de ferramentas e instruções de servidor de servidores conectados. Esquemas JSON completos permanecem adiados até Claude precisar de uma ferramenta específica.

276 

277**Custo de contexto:** [Busca de ferramentas](https://code.claude.com/docs/pt/mcp.md#scale-with-mcp-tool-search) está ativada por padrão, então ferramentas MCP ociosas consomem contexto mínimo.

278 

279> [!TIP]

280>246>

281> Execute `/mcp` para ver status de conexão de cada servidor. Execute `/context all` para ver quantos tokens cada ferramenta MCP carregada usa. Claude Code [reconecta a servidores remotos automaticamente](https://code.claude.com/docs/pt/mcp.md#automatic-reconnection) se eles caírem, e você pode desconectar servidores que você não está usando ativamente.247> **Herança:** Claude lê arquivos CLAUDE.md do seu diretório de trabalho até a raiz e descobre aninhados em subdiretórios conforme acessa esses arquivos. Consulte [Como arquivos CLAUDE.md carregam](https://code.claude.com/docs/pt/memory.md#how-claude-md-files-load) para detalhes. Se um CLAUDE.md aninhado ultrapassar seu [limite de tamanho por arquivo](https://code.claude.com/docs/pt/memory.md#claude-ignores-the-end-of-my-subdirectory-claude-md), Claude recebe apenas o início do arquivo.

282 

283**Code intelligence**

284 

285**Quando:** Após edições de arquivo, e sob demanda quando Claude navega pelo código.

286 

287**O que carrega:** Erros de tipo e avisos após cada edição de arquivo. Informações de definição, referência e tipo quando Claude procura um símbolo.

288 

289**Custo de contexto:** Baixo. Consultas de símbolos frequentemente substituem leituras amplas de arquivo, então o uso de contexto líquido pode diminuir.

290 

291> [!TIP]

292>248>

293> A ferramenta LSP fica inativa até que você instale um [plugin de code intelligence](https://code.claude.com/docs/pt/plugins/code-intelligence.md) para sua linguagem.249> > [!TIP]

294 250> >

295**Subagents**251> > Mantenha CLAUDE.md com menos de 200 linhas. Mova material de referência para skills, que carregam sob demanda. Para obter [propostas de corte para um CLAUDE.md versionado](https://code.claude.com/docs/pt/memory.md#my-claude-md-is-too-large), execute `/doctor`.

296 

297**Quando:** Sob demanda, quando você ou Claude gera um para uma tarefa.

298 

299**O que carrega:** Contexto fresco e isolado contendo:

300 

301* O system prompt do próprio agente, não o system prompt de Claude Code

302* Conteúdo completo de skills listadas no campo `skills:` do agente

303* CLAUDE.md e status git. Os agentes Explore e Plan integrados [não iniciam com nenhum dos dois](https://code.claude.com/docs/pt/sub-agents.md#what-loads-at-startup), e um agente cuja definição define [`omitClaudeMd`](https://code.claude.com/docs/pt/sub-agents#supported-frontmatter-fields) inicia sem os arquivos CLAUDE.md de usuário, projeto e local.

304* Qualquer contexto que o agente principal passa no prompt

305 

306Para um [fork](https://code.claude.com/docs/pt/sub-agents.md#fork-the-current-conversation), Claude Code carrega a conversa pai até agora, prompt do sistema e ferramentas em vez disso.

307 

308**Custo de contexto:** Isolado da sessão principal.

309 252 

310> [!TIP]253> [tab] Skills

311>254>

312> Use subagents para trabalho que não precisa de seu contexto de conversa completo. Seu isolamento previne inchar sua sessão principal.255> Skills são capacidades extras no kit de ferramentas de Claude. Podem ser material de referência (como um guia de estilo de API) ou fluxos de trabalho invocáveis que você dispara com `/<name>` (como `/deploy`). Claude Code inclui [skills agrupadas](https://code.claude.com/docs/pt/commands.md) como `/code-review`, `/batch` e `/debug` que funcionam imediatamente. Você também pode criar as suas próprias.

313 256>

314**Hooks**257> **Quando:** Depende da configuração da skill. Por padrão, descrições carregam no início da sessão e conteúdo completo carrega quando usado. Para skills apenas de usuário (`disable-model-invocation: true`), nada carrega até que você as invoque.

258>

259> **O que carrega:** Para skills invocáveis por modelo, Claude vê nomes e descrições em cada requisição. Quando você invoca uma skill com `/<name>` ou Claude a carrega automaticamente, o conteúdo completo carrega em sua conversa.

260>

261> **Como Claude escolhe skills:** Claude corresponde sua tarefa contra descrições de skill para decidir quais são relevantes. Se descrições forem vagas ou se sobrepuserem, Claude pode carregar a skill errada ou perder uma que ajudaria. Para dizer a Claude para usar uma skill específica, invoque-a com `/<name>`.

262>

263> **Custo de contexto:** Baixo até ser usado. Skills apenas de usuário têm custo zero até invocação.

264>

265> **Em subagents:** O conteúdo completo das skills listadas no campo `skills` de um subagent [carrega em seu contexto no lançamento](https://code.claude.com/docs/pt/sub-agents.md#preload-skills-into-subagents), em vez de sob demanda. Subagents ainda podem descobrir e invocar skills de projeto, usuário e plugin não listadas através da ferramenta Skill.

266>

267> > [!TIP]

268> >

269> > Use `disable-model-invocation: true` para skills com efeitos colaterais. Isso economiza contexto e garante que sejam executadas apenas quando você as nomear.

315 270 

316**Quando:** No disparo. Claude Code executa hooks em eventos de ciclo de vida específicos como execução de ferramenta, limites de sessão, envio de prompt, solicitações de permissão e compactação. Consulte [Hooks](https://code.claude.com/docs/pt/hooks.md) para a lista completa.271> [tab] Servidores MCP

272>

273> **Quando:** Início da sessão.

274>

275> **O que carrega:** Nomes de ferramentas e instruções de servidor de servidores conectados. Esquemas JSON completos permanecem adiados até Claude precisar de uma ferramenta específica.

276>

277> **Custo de contexto:** [Busca de ferramentas](https://code.claude.com/docs/pt/mcp.md#scale-with-mcp-tool-search) está ativada por padrão, então ferramentas MCP ociosas consomem contexto mínimo.

278>

279> > [!TIP]

280> >

281> > Execute `/mcp` para ver status de conexão de cada servidor. Execute `/context all` para ver quantos tokens cada ferramenta MCP carregada usa. Claude Code [reconecta a servidores remotos automaticamente](https://code.claude.com/docs/pt/mcp.md#automatic-reconnection) se eles caírem, e você pode desconectar servidores que você não está usando ativamente.

317 282 

318**O que carrega:** Nada por padrão. Hooks são executados fora da conversa principal.283> [tab] Code intelligence

284>

285> **Quando:** Após edições de arquivo, e sob demanda quando Claude navega pelo código.

286>

287> **O que carrega:** Erros de tipo e avisos após cada edição de arquivo. Informações de definição, referência e tipo quando Claude procura um símbolo.

288>

289> **Custo de contexto:** Baixo. Consultas de símbolos frequentemente substituem leituras amplas de arquivo, então o uso de contexto líquido pode diminuir.

290>

291> > [!TIP]

292> >

293> > A ferramenta LSP fica inativa até que você instale um [plugin de code intelligence](https://code.claude.com/docs/pt/plugins/code-intelligence.md) para sua linguagem.

319 294 

320**Custo de contexto:** Zero, a menos que o hook retorne saída que seja adicionada como mensagens à sua conversa.295> [tab] Subagents

296>

297> **Quando:** Sob demanda, quando você ou Claude gera um para uma tarefa.

298>

299> **O que carrega:** Contexto fresco e isolado contendo:

300>

301> * O system prompt do próprio agente, não o system prompt de Claude Code

302> * Conteúdo completo de skills listadas no campo `skills:` do agente

303> * CLAUDE.md e status git. Os agentes Explore e Plan integrados [não iniciam com nenhum dos dois](https://code.claude.com/docs/pt/sub-agents.md#what-loads-at-startup), e um agente cuja definição define [`omitClaudeMd`](https://code.claude.com/docs/pt/sub-agents#supported-frontmatter-fields) inicia sem os arquivos CLAUDE.md de usuário, projeto e local.

304> * Qualquer contexto que o agente principal passa no prompt

305>

306> Para um [fork](https://code.claude.com/docs/pt/sub-agents.md#fork-the-current-conversation), Claude Code carrega a conversa pai até agora, prompt do sistema e ferramentas em vez disso.

307>

308> **Custo de contexto:** Isolado da sessão principal.

309>

310> > [!TIP]

311> >

312> > Use subagents para trabalho que não precisa de seu contexto de conversa completo. Seu isolamento previne inchar sua sessão principal.

321 313 

322> [!TIP]314> [tab] Hooks

315>

316> **Quando:** No disparo. Claude Code executa hooks em eventos de ciclo de vida específicos como execução de ferramenta, limites de sessão, envio de prompt, solicitações de permissão e compactação. Consulte [Hooks](https://code.claude.com/docs/pt/hooks.md) para a lista completa.

317>

318> **O que carrega:** Nada por padrão. Hooks são executados fora da conversa principal.

319>

320> **Custo de contexto:** Zero, a menos que o hook retorne saída que seja adicionada como mensagens à sua conversa.

323>321>

324> Hooks são ideais para efeitos colaterais (linting, logging) que não precisam afetar o contexto de Claude.322> > [!TIP]

323> >

324> > Hooks são ideais para efeitos colaterais (linting, logging) que não precisam afetar o contexto de Claude.

325 325 

326## Saiba mais326## Saiba mais

327 327 

328Cada recurso tem seu próprio guia com instruções de configuração, exemplos e opções de configuração.328Cada recurso tem seu próprio guia com instruções de configuração, exemplos e opções de configuração.

329 329 

330> **[CLAUDE.md](https://code.claude.com/docs/pt/memory.md)**330> [card] [CLAUDE.md](https://code.claude.com/docs/pt/memory.md)

331>331>

332> Armazenar contexto de projeto, convenções e instruções332> Armazenar contexto de projeto, convenções e instruções

333 333 

334> **[Skills](https://code.claude.com/docs/pt/skills.md)**334> [card] [Skills](https://code.claude.com/docs/pt/skills.md)

335>335>

336> Dar a Claude expertise de domínio e fluxos de trabalho reutilizáveis336> Dar a Claude expertise de domínio e fluxos de trabalho reutilizáveis

337 337 

338> **[Subagents](https://code.claude.com/docs/pt/sub-agents.md)**338> [card] [Subagents](https://code.claude.com/docs/pt/sub-agents.md)

339>339>

340> Descarregar trabalho para contexto isolado340> Descarregar trabalho para contexto isolado

341 341 

342> **[Dynamic workflows](https://code.claude.com/docs/pt/workflows.md)**342> [card] [Dynamic workflows](https://code.claude.com/docs/pt/workflows.md)

343>343>

344> Executar muitos subagents a partir de um script344> Executar muitos subagents a partir de um script

345 345 

346> **[Cross-session messaging](https://code.claude.com/docs/pt/cross-session-messaging.md)**346> [card] [Cross-session messaging](https://code.claude.com/docs/pt/cross-session-messaging.md)

347>347>

348> Permitir que Claude envie mensagens para suas outras sessões348> Permitir que Claude envie mensagens para suas outras sessões

349 349 

350> **[MCP](https://code.claude.com/docs/pt/mcp.md)**350> [card] [MCP](https://code.claude.com/docs/pt/mcp.md)

351>351>

352> Conectar Claude a serviços externos352> Conectar Claude a serviços externos

353 353 

354> **[Hooks](https://code.claude.com/docs/pt/hooks-guide.md)**354> [card] [Hooks](https://code.claude.com/docs/pt/hooks-guide.md)

355>355>

356> Automatizar ações com hooks356> Automatizar ações com hooks

357 357 

358> **[Plugins](https://code.claude.com/docs/pt/plugins/overview.md)**358> [card] [Plugins](https://code.claude.com/docs/pt/plugins/overview.md)

359>359>

360> Empacotar e compartilhar conjuntos de recursos360> Empacotar e compartilhar conjuntos de recursos

361 361 

362> **[Marketplaces](https://code.claude.com/docs/pt/plugins/create-marketplace.md)**362> [card] [Marketplaces](https://code.claude.com/docs/pt/plugins/create-marketplace.md)

363>363>

364> Hospedar e distribuir coleções de plugins364> Hospedar e distribuir coleções de plugins

Details

74Adicione um dos seguintes secrets ao seu repositório, dependendo de como você se autentica. Consulte o guia do GitHub sobre [usando secrets no GitHub Actions](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions).74Adicione um dos seguintes secrets ao seu repositório, dependendo de como você se autentica. Consulte o guia do GitHub sobre [usando secrets no GitHub Actions](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions).

75 75 

76* `ANTHROPIC_API_KEY`: uma chave de API Claude do [Claude Console](https://platform.claude.com)76* `ANTHROPIC_API_KEY`: uma chave de API Claude do [Claude Console](https://platform.claude.com)

77* `CLAUDE_CODE_OAUTH_TOKEN`: um token OAuth que se autentica com sua assinatura Claude, disponível em planos Pro, Max, Team e Enterprise. Gere um executando `claude setup-token` localmente. Consulte [Gerar um token de longa duração](https://code.claude.com/docs/pt/authentication.md#generate-a-long-lived-token)77* `CLAUDE_CODE_OAUTH_TOKEN`: um token OAuth que se autentica com sua assinatura Claude, disponível em planos Pro, Max, Ultra, Team e Enterprise. Gere um executando `claude setup-token` localmente. Consulte [Gerar um token de longa duração](https://code.claude.com/docs/pt/authentication.md#generate-a-long-lived-token)

78 78 

79Em arquivos de fluxo de trabalho, passe o secret para a entrada correspondente: `anthropic_api_key` para uma chave de API ou `claude_code_oauth_token` para um token OAuth.79Em arquivos de fluxo de trabalho, passe o secret para a entrada correspondente: `anthropic_api_key` para uma chave de API ou `claude_code_oauth_token` para um token OAuth.

80 80 

Details

59 59 

60Configure sua nuvem para confiar no token OIDC que o GitHub emite para o fluxo de trabalho, para que cada execução de fluxo de trabalho obtenha credenciais de nuvem de curta duração. Os pontos em cada aba resumem o que criar, e cada aba vincula o guia do próprio fornecedor de nuvem para as etapas no nível do console.60Configure sua nuvem para confiar no token OIDC que o GitHub emite para o fluxo de trabalho, para que cada execução de fluxo de trabalho obtenha credenciais de nuvem de curta duração. Os pontos em cada aba resumem o que criar, e cada aba vincula o guia do próprio fornecedor de nuvem para as etapas no nível do console.

61 61 

62**Amazon Bedrock**62> [tab] Amazon Bedrock

63 63>

64Crie a configuração de confiança em sua conta AWS, seguindo o [guia AWS para criar provedores de identidade OIDC](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_oidc.html):64> Crie a configuração de confiança em sua conta AWS, seguindo o [guia AWS para criar provedores de identidade OIDC](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_oidc.html):

65 65>

66* Adicione um provedor de identidade OIDC do GitHub com URL do provedor `https://token.actions.githubusercontent.com` e público `sts.amazonaws.com`66> * Adicione um provedor de identidade OIDC do GitHub com URL do provedor `https://token.actions.githubusercontent.com` e público `sts.amazonaws.com`

67* Crie uma função IAM confiável por esse provedor como uma identidade web, e anexe a política de invocação com escopo de [Configuração IAM](https://code.claude.com/docs/pt/amazon-bedrock.md#iam-configuration), que concede `bedrock:InvokeModel`, `bedrock:InvokeModelWithResponseStream`, `bedrock:ListInferenceProfiles` e `bedrock:GetInferenceProfile`, junto com duas ações de assinatura `aws-marketplace`67> * Crie uma função IAM confiável por esse provedor como uma identidade web, e anexe a política de invocação com escopo de [Configuração IAM](https://code.claude.com/docs/pt/amazon-bedrock.md#iam-configuration), que concede `bedrock:InvokeModel`, `bedrock:InvokeModelWithResponseStream`, `bedrock:ListInferenceProfiles` e `bedrock:GetInferenceProfile`, junto com duas ações de assinatura `aws-marketplace`

68* Limite a política de confiança da função ao seu repositório com uma condição de assunto como `repo:your-org/your-repo:*`. Veja o [guia de endurecimento OIDC do GitHub](https://docs.github.com/en/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect) para o formato de reclamação68> * Limite a política de confiança da função ao seu repositório com uma condição de assunto como `repo:your-org/your-repo:*`. Veja o [guia de endurecimento OIDC do GitHub](https://docs.github.com/en/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect) para o formato de reclamação

69 69>

70Anote o ARN da função. Você o adiciona como um segredo na próxima etapa.70> Anote o ARN da função. Você o adiciona como um segredo na próxima etapa.

71 

72**Google Cloud's Agent Platform**

73 

74Crie os recursos de federação em seu projeto Google Cloud, seguindo a [documentação de Workload Identity Federation](https://cloud.google.com/iam/docs/workload-identity-federation):

75 

76* Ative três APIs: IAM Credentials, Security Token Service (STS) e a API Agent Platform, cujo nome de serviço é `aiplatform.googleapis.com`

77* Crie um Workload Identity Pool com um provedor OIDC do GitHub cujo emissor é `https://token.actions.githubusercontent.com`, e adicione uma condição de atributo que limite o pool ao seu repositório

78* Crie uma conta de serviço dedicada com apenas a função `Vertex AI User`, que é `roles/aiplatform.user`, e permita que o pool a represente

79 

80Anote o nome completo do recurso do provedor e o endereço de email da conta de serviço. Você os adiciona como segredos na próxima etapa.

81 

82**Microsoft Foundry**

83 

84Crie um aplicativo Microsoft Entra com uma credencial federada para seu repositório, seguindo o [guia da Microsoft para autenticação do GitHub Actions](https://learn.microsoft.com/en-us/azure/developer/github/connect-from-azure-openid-connect):

85 71 

86* Registre um aplicativo Microsoft Entra e adicione uma credencial de identidade federada que confie em tokens que o GitHub emite para seu repositório. Uma identidade gerenciada atribuída pelo usuário funciona no lugar de um aplicativo. Ambos têm o ID do cliente que você anota abaixo72> [tab] Google Cloud's Agent Platform

87* Atribua ao aplicativo a função `Azure AI User` em seu recurso Foundry. Veja [Configuração RBAC do Azure](https://code.claude.com/docs/pt/microsoft-foundry.md#azure-rbac-configuration) para uma função personalizada mais estreita73>

74> Crie os recursos de federação em seu projeto Google Cloud, seguindo a [documentação de Workload Identity Federation](https://cloud.google.com/iam/docs/workload-identity-federation):

75>

76> * Ative três APIs: IAM Credentials, Security Token Service (STS) e a API Agent Platform, cujo nome de serviço é `aiplatform.googleapis.com`

77> * Crie um Workload Identity Pool com um provedor OIDC do GitHub cujo emissor é `https://token.actions.githubusercontent.com`, e adicione uma condição de atributo que limite o pool ao seu repositório

78> * Crie uma conta de serviço dedicada com apenas a função `Vertex AI User`, que é `roles/aiplatform.user`, e permita que o pool a represente

79>

80> Anote o nome completo do recurso do provedor e o endereço de email da conta de serviço. Você os adiciona como segredos na próxima etapa.

88 81 

89Anote o ID do cliente do aplicativo, seu ID de locatário e seu ID de assinatura. Você os adiciona como segredos na próxima etapa.82> [tab] Microsoft Foundry

83>

84> Crie um aplicativo Microsoft Entra com uma credencial federada para seu repositório, seguindo o [guia da Microsoft para autenticação do GitHub Actions](https://learn.microsoft.com/en-us/azure/developer/github/connect-from-azure-openid-connect):

85>

86> * Registre um aplicativo Microsoft Entra e adicione uma credencial de identidade federada que confie em tokens que o GitHub emite para seu repositório. Uma identidade gerenciada atribuída pelo usuário funciona no lugar de um aplicativo. Ambos têm o ID do cliente que você anota abaixo

87> * Atribua ao aplicativo a função `Azure AI User` em seu recurso Foundry. Veja [Configuração RBAC do Azure](https://code.claude.com/docs/pt/microsoft-foundry.md#azure-rbac-configuration) para uma função personalizada mais estreita

88>

89> Anote o ID do cliente do aplicativo, seu ID de locatário e seu ID de assinatura. Você os adiciona como segredos na próxima etapa.

90 90 

91**3. Adicionar segredos do repositório**91**3. Adicionar segredos do repositório**

92 92 


116>116>

117> Em repositórios públicos, um comentário contendo a frase de gatilho de qualquer usuário inicia este fluxo de trabalho. As etapas de credencial são executadas antes da Claude Code GitHub Action verificar o acesso de escrita do comentarista, portanto a ação rejeita usuários não autorizados apenas após o fluxo de trabalho ter gerado um token de App e se conectado ao seu provedor de nuvem, o que deixa entradas de log de auditoria e consome minutos de Actions. Para evitar essas execuções, adicione uma etapa que verifique o acesso de escrita do comentarista antes das etapas de credencial.117> Em repositórios públicos, um comentário contendo a frase de gatilho de qualquer usuário inicia este fluxo de trabalho. As etapas de credencial são executadas antes da Claude Code GitHub Action verificar o acesso de escrita do comentarista, portanto a ação rejeita usuários não autorizados apenas após o fluxo de trabalho ter gerado um token de App e se conectado ao seu provedor de nuvem, o que deixa entradas de log de auditoria e consome minutos de Actions. Para evitar essas execuções, adicione uma etapa que verifique o acesso de escrita do comentarista antes das etapas de credencial.

118 118 

119**Amazon Bedrock**119> [tab] Amazon Bedrock

120 120>

121Substitua o valor `aws-region` pelo seu próprio. A etapa de credenciais o exporta como `AWS_REGION` para o resto do trabalho.121> Substitua o valor `aws-region` pelo seu próprio. A etapa de credenciais o exporta como `AWS_REGION` para o resto do trabalho.

122 122>

123```yaml theme={null}123> ```yaml theme={null}

124name: Claude PR Action124> name: Claude PR Action

125 125>

126permissions:126> permissions:

127 contents: write127> contents: write

128 pull-requests: write128> pull-requests: write

129 issues: write129> issues: write

130 id-token: write130> id-token: write

131 131>

132on:132> on:

133 issue_comment:133> issue_comment:

134 types: [created]134> types: [created]

135 pull_request_review_comment:135> pull_request_review_comment:

136 types: [created]136> types: [created]

137 issues:137> issues:

138 types: [opened]138> types: [opened]

139 139>

140jobs:140> jobs:

141 claude-pr:141> claude-pr:

142 if: |142> if: |

143 (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||143> (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||

144 (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||144> (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||

145 (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))145> (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))

146 runs-on: ubuntu-latest146> runs-on: ubuntu-latest

147 steps:147> steps:

148 - name: Checkout repository148> - name: Checkout repository

149 uses: actions/checkout@v6149> uses: actions/checkout@v6

150 150>

151 - name: Generate GitHub App token151> - name: Generate GitHub App token

152 id: app-token152> id: app-token

153 uses: actions/create-github-app-token@v2153> uses: actions/create-github-app-token@v2

154 with:154> with:

155 app-id: ${{ secrets.APP_ID }}155> app-id: ${{ secrets.APP_ID }}

156 private-key: ${{ secrets.APP_PRIVATE_KEY }}156> private-key: ${{ secrets.APP_PRIVATE_KEY }}

157 157>

158 - name: Configure AWS Credentials (OIDC)158> - name: Configure AWS Credentials (OIDC)

159 uses: aws-actions/configure-aws-credentials@v4159> uses: aws-actions/configure-aws-credentials@v4

160 with:160> with:

161 role-to-assume: ${{ secrets.AWS_ROLE_TO_ASSUME }}161> role-to-assume: ${{ secrets.AWS_ROLE_TO_ASSUME }}

162 aws-region: us-west-2162> aws-region: us-west-2

163 163>

164 - uses: anthropics/claude-code-action@v1164> - uses: anthropics/claude-code-action@v1

165 with:165> with:

166 github_token: ${{ steps.app-token.outputs.token }}166> github_token: ${{ steps.app-token.outputs.token }}

167 use_bedrock: "true"167> use_bedrock: "true"

168 claude_args: '--model us.anthropic.claude-sonnet-4-6'168> claude_args: '--model us.anthropic.claude-sonnet-4-6'

169```169> ```

170 170>

171> [!TIP]171> > [!TIP]

172>172> >

173> Os IDs de modelo Bedrock incluem um prefixo de perfil de inferência entre regiões como `us.`. Use o prefixo para o grupo de regiões onde você concedeu acesso ao modelo.173> > Os IDs de modelo Bedrock incluem um prefixo de perfil de inferência entre regiões como `us.`. Use o prefixo para o grupo de regiões onde você concedeu acesso ao modelo.

174 174 

175**Google Cloud's Agent Platform**175> [tab] Google Cloud's Agent Platform

176 176>

177Substitua o valor `CLOUD_ML_REGION` pelo seu próprio. Você não precisa codificar o ID do projeto, porque o fluxo de trabalho o lê da saída da etapa `auth`.177> Substitua o valor `CLOUD_ML_REGION` pelo seu próprio. Você não precisa codificar o ID do projeto, porque o fluxo de trabalho o lê da saída da etapa `auth`.

178 178>

179```yaml theme={null}179> ```yaml theme={null}

180name: Claude PR Action180> name: Claude PR Action

181 181>

182permissions:182> permissions:

183 contents: write183> contents: write

184 pull-requests: write184> pull-requests: write

185 issues: write185> issues: write

186 id-token: write186> id-token: write

187 187>

188on:188> on:

189 issue_comment:189> issue_comment:

190 types: [created]190> types: [created]

191 pull_request_review_comment:191> pull_request_review_comment:

192 types: [created]192> types: [created]

193 issues:193> issues:

194 types: [opened]194> types: [opened]

195 195>

196jobs:196> jobs:

197 claude-pr:197> claude-pr:

198 if: |198> if: |

199 (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||199> (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||

200 (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||200> (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||

201 (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))201> (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))

202 runs-on: ubuntu-latest202> runs-on: ubuntu-latest

203 steps:203> steps:

204 - name: Checkout repository204> - name: Checkout repository

205 uses: actions/checkout@v6205> uses: actions/checkout@v6

206 206>

207 - name: Generate GitHub App token207> - name: Generate GitHub App token

208 id: app-token208> id: app-token

209 uses: actions/create-github-app-token@v2209> uses: actions/create-github-app-token@v2

210 with:210> with:

211 app-id: ${{ secrets.APP_ID }}211> app-id: ${{ secrets.APP_ID }}

212 private-key: ${{ secrets.APP_PRIVATE_KEY }}212> private-key: ${{ secrets.APP_PRIVATE_KEY }}

213 213>

214 - name: Authenticate to Google Cloud214> - name: Authenticate to Google Cloud

215 id: auth215> id: auth

216 uses: google-github-actions/auth@v2216> uses: google-github-actions/auth@v2

217 with:217> with:

218 workload_identity_provider: ${{ secrets.GCP_WORKLOAD_IDENTITY_PROVIDER }}218> workload_identity_provider: ${{ secrets.GCP_WORKLOAD_IDENTITY_PROVIDER }}

219 service_account: ${{ secrets.GCP_SERVICE_ACCOUNT }}219> service_account: ${{ secrets.GCP_SERVICE_ACCOUNT }}

220 220>

221 - uses: anthropics/claude-code-action@v1221> - uses: anthropics/claude-code-action@v1

222 with:222> with:

223 github_token: ${{ steps.app-token.outputs.token }}223> github_token: ${{ steps.app-token.outputs.token }}

224 use_vertex: "true"224> use_vertex: "true"

225 claude_args: '--model claude-sonnet-5'225> claude_args: '--model claude-sonnet-5'

226 env:226> env:

227 ANTHROPIC_VERTEX_PROJECT_ID: ${{ steps.auth.outputs.project_id }}227> ANTHROPIC_VERTEX_PROJECT_ID: ${{ steps.auth.outputs.project_id }}

228 CLOUD_ML_REGION: us-east5228> CLOUD_ML_REGION: us-east5

229```229> ```

230 230 

231**Microsoft Foundry**231> [tab] Microsoft Foundry

232 232>

233Substitua `your-resource-name` pelo nome do seu recurso Foundry. Claude Code constrói a URL do endpoint a partir dele. A etapa `azure/login` se conecta com o token OIDC do fluxo de trabalho, e Claude Code pega as credenciais através da [cadeia de credencial padrão](https://learn.microsoft.com/en-us/azure/developer/javascript/sdk/authentication/credential-chains#defaultazurecredential-overview) do Azure.233> Substitua `your-resource-name` pelo nome do seu recurso Foundry. Claude Code constrói a URL do endpoint a partir dele. A etapa `azure/login` se conecta com o token OIDC do fluxo de trabalho, e Claude Code pega as credenciais através da [cadeia de credencial padrão](https://learn.microsoft.com/en-us/azure/developer/javascript/sdk/authentication/credential-chains#defaultazurecredential-overview) do Azure.

234 234>

235```yaml theme={null}235> ```yaml theme={null}

236name: Claude PR Action236> name: Claude PR Action

237 237>

238permissions:238> permissions:

239 contents: write239> contents: write

240 pull-requests: write240> pull-requests: write

241 issues: write241> issues: write

242 id-token: write242> id-token: write

243 243>

244on:244> on:

245 issue_comment:245> issue_comment:

246 types: [created]246> types: [created]

247 pull_request_review_comment:247> pull_request_review_comment:

248 types: [created]248> types: [created]

249 issues:249> issues:

250 types: [opened]250> types: [opened]

251 251>

252jobs:252> jobs:

253 claude-pr:253> claude-pr:

254 if: |254> if: |

255 (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||255> (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||

256 (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||256> (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||

257 (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))257> (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))

258 runs-on: ubuntu-latest258> runs-on: ubuntu-latest

259 steps:259> steps:

260 - name: Checkout repository260> - name: Checkout repository

261 uses: actions/checkout@v6261> uses: actions/checkout@v6

262 262>

263 - name: Generate GitHub App token263> - name: Generate GitHub App token

264 id: app-token264> id: app-token

265 uses: actions/create-github-app-token@v2265> uses: actions/create-github-app-token@v2

266 with:266> with:

267 app-id: ${{ secrets.APP_ID }}267> app-id: ${{ secrets.APP_ID }}

268 private-key: ${{ secrets.APP_PRIVATE_KEY }}268> private-key: ${{ secrets.APP_PRIVATE_KEY }}

269 269>

270 - name: Authenticate to Azure270> - name: Authenticate to Azure

271 uses: azure/login@v2271> uses: azure/login@v2

272 with:272> with:

273 client-id: ${{ secrets.AZURE_CLIENT_ID }}273> client-id: ${{ secrets.AZURE_CLIENT_ID }}

274 tenant-id: ${{ secrets.AZURE_TENANT_ID }}274> tenant-id: ${{ secrets.AZURE_TENANT_ID }}

275 subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}275> subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}

276 276>

277 - uses: anthropics/claude-code-action@v1277> - uses: anthropics/claude-code-action@v1

278 with:278> with:

279 github_token: ${{ steps.app-token.outputs.token }}279> github_token: ${{ steps.app-token.outputs.token }}

280 use_foundry: "true"280> use_foundry: "true"

281 claude_args: '--model claude-sonnet-5'281> claude_args: '--model claude-sonnet-5'

282 env:282> env:

283 ANTHROPIC_FOUNDRY_RESOURCE: your-resource-name283> ANTHROPIC_FOUNDRY_RESOURCE: your-resource-name

284```284> ```

285 285>

286> [!TIP]286> > [!TIP]

287>287> >

288> Use um ID de modelo que corresponda a uma implantação Claude em seu recurso Foundry. Veja [Claude Code no Microsoft Foundry](https://code.claude.com/docs/pt/microsoft-foundry.md) para configuração de modelo e fixação de versão.288> > Use um ID de modelo que corresponda a uma implantação Claude em seu recurso Foundry. Veja [Claude Code no Microsoft Foundry](https://code.claude.com/docs/pt/microsoft-foundry.md) para configuração de modelo e fixação de versão.

289 289 

290Com qualquer provedor, você pode limitar o tempo de execução e o custo adicionando `--max-turns` a `claude_args`. Veja [Gerenciar custos](https://code.claude.com/docs/pt/github-actions.md#manage-costs).290Com qualquer provedor, você pode limitar o tempo de execução e o custo adicionando `--max-turns` a `claude_args`. Veja [Gerenciar custos](https://code.claude.com/docs/pt/github-actions.md#manage-costs).

291 291 

gitlab-ci-cd.md +52 −52

Details

158 158 

159Para ambientes empresariais, você pode executar Claude Code inteiramente em sua infraestrutura de nuvem com a mesma experiência de desenvolvedor.159Para ambientes empresariais, você pode executar Claude Code inteiramente em sua infraestrutura de nuvem com a mesma experiência de desenvolvedor.

160 160 

161**Amazon Bedrock**161> [tab] Amazon Bedrock

162 162>

163### Pré-requisitos163> ### Pré-requisitos

164 164>

165Antes de configurar Claude Code com Amazon Bedrock, você precisa de:165> Antes de configurar Claude Code com Amazon Bedrock, você precisa de:

166 166>

1671. Uma conta AWS com acesso ao Amazon Bedrock para os modelos Claude desejados167> 1. Uma conta AWS com acesso ao Amazon Bedrock para os modelos Claude desejados

1682. GitLab configurado como um provedor de identidade OIDC no AWS IAM168> 2. GitLab configurado como um provedor de identidade OIDC no AWS IAM

1693. Uma função IAM com permissões do Amazon Bedrock e uma política de confiança restrita ao seu projeto/refs do GitLab169> 3. Uma função IAM com permissões do Amazon Bedrock e uma política de confiança restrita ao seu projeto/refs do GitLab

1704. Variáveis do GitLab CI/CD para assunção de função:170> 4. Variáveis do GitLab CI/CD para assunção de função:

171 * `AWS_ROLE_TO_ASSUME` (ARN da função)171> * `AWS_ROLE_TO_ASSUME` (ARN da função)

172 * `AWS_REGION` (região do Amazon Bedrock)172> * `AWS_REGION` (região do Amazon Bedrock)

173 173>

174### Instruções de configuração174> ### Instruções de configuração

175 175>

176Configure AWS para permitir que trabalhos do GitLab CI assumam uma função IAM via OIDC (sem chaves estáticas).176> Configure AWS para permitir que trabalhos do GitLab CI assumam uma função IAM via OIDC (sem chaves estáticas).

177 177>

178**Configuração obrigatória:**178> **Configuração obrigatória:**

179 179>

1801. Ative o Amazon Bedrock e solicite acesso aos seus modelos Claude de destino180> 1. Ative o Amazon Bedrock e solicite acesso aos seus modelos Claude de destino

1812. Crie um provedor OIDC do IAM para GitLab se ainda não estiver presente181> 2. Crie um provedor OIDC do IAM para GitLab se ainda não estiver presente

1823. Crie uma função IAM confiável pelo provedor OIDC do GitLab, restrita ao seu projeto e refs protegidas182> 3. Crie uma função IAM confiável pelo provedor OIDC do GitLab, restrita ao seu projeto e refs protegidas

1834. Anexe permissões de menor privilégio para APIs de invocação do Amazon Bedrock183> 4. Anexe permissões de menor privilégio para APIs de invocação do Amazon Bedrock

184 184>

185Use o [exemplo de trabalho do Amazon Bedrock](#configuration-examples) para trocar o token OIDC do trabalho por credenciais AWS temporárias em tempo de execução.185> Use o [exemplo de trabalho do Amazon Bedrock](#configuration-examples) para trocar o token OIDC do trabalho por credenciais AWS temporárias em tempo de execução.

186 

187**Google Cloud's Agent Platform**

188 

189### Pré-requisitos

190 

191Antes de configurar Claude Code com Google Cloud's Agent Platform, você precisa de:

192 

1931. Um projeto Google Cloud com:

194 * API do Google Cloud's Agent Platform ativada

195 * Workload Identity Federation configurada para confiar no OIDC do GitLab

1962. Uma conta de serviço dedicada com apenas as funções necessárias do Google Cloud's Agent Platform

1973. Variáveis do GitLab CI/CD:

198 * `GCP_WORKLOAD_IDENTITY_PROVIDER` (nome do recurso do provedor sem o prefixo `//iam.googleapis.com/`, como `projects/123456789/locations/global/workloadIdentityPools/my-pool/providers/my-provider`)

199 * `GCP_SERVICE_ACCOUNT` (email da conta de serviço)

200 * `GCP_PROJECT_ID` (ID do projeto Google Cloud)

201 

202### Instruções de configuração

203 

204Configure Google Cloud para permitir que trabalhos do GitLab CI representem uma conta de serviço via Workload Identity Federation.

205 

206**Configuração obrigatória:**

207 

2081. Ative a API de Credenciais do IAM, API STS e API do Google Cloud's Agent Platform

2092. Crie um Workload Identity Pool e provedor para OIDC do GitLab

2103. Crie uma conta de serviço dedicada com funções do Google Cloud's Agent Platform

2114. Conceda ao principal do WIF permissão para representar a conta de serviço

212 186 

213Use o [exemplo de trabalho do Agent Platform](#configuration-examples) para autenticar sem armazenar chaves.187> [tab] Google Cloud's Agent Platform

188>

189> ### Pré-requisitos

190>

191> Antes de configurar Claude Code com Google Cloud's Agent Platform, você precisa de:

192>

193> 1. Um projeto Google Cloud com:

194> * API do Google Cloud's Agent Platform ativada

195> * Workload Identity Federation configurada para confiar no OIDC do GitLab

196> 2. Uma conta de serviço dedicada com apenas as funções necessárias do Google Cloud's Agent Platform

197> 3. Variáveis do GitLab CI/CD:

198> * `GCP_WORKLOAD_IDENTITY_PROVIDER` (nome do recurso do provedor sem o prefixo `//iam.googleapis.com/`, como `projects/123456789/locations/global/workloadIdentityPools/my-pool/providers/my-provider`)

199> * `GCP_SERVICE_ACCOUNT` (email da conta de serviço)

200> * `GCP_PROJECT_ID` (ID do projeto Google Cloud)

201>

202> ### Instruções de configuração

203>

204> Configure Google Cloud para permitir que trabalhos do GitLab CI representem uma conta de serviço via Workload Identity Federation.

205>

206> **Configuração obrigatória:**

207>

208> 1. Ative a API de Credenciais do IAM, API STS e API do Google Cloud's Agent Platform

209> 2. Crie um Workload Identity Pool e provedor para OIDC do GitLab

210> 3. Crie uma conta de serviço dedicada com funções do Google Cloud's Agent Platform

211> 4. Conceda ao principal do WIF permissão para representar a conta de serviço

212>

213> Use o [exemplo de trabalho do Agent Platform](#configuration-examples) para autenticar sem armazenar chaves.

214 214 

215## Exemplos de configuração215## Exemplos de configuração

216 216 

glossary.md +5 −2

Details

54 54 

55### Auto mode55### Auto mode

56 56 

57Um [permission mode](#permission-mode) onde um modelo classificador separado revisa ações em vez de você, para que Claude Code execute a maioria delas sem solicitar você. Claude Code ainda solicita você antes de ações que suas regras de solicitação explícita correspondem. Com Claude Code v2.1.283 ou posterior, auto mode é o [built-in starting permission mode](https://code.claude.com/docs/pt/permission-modes.md#which-mode-a-session-starts-in) para sessões interativas de terminal e VS Code, e em versões anteriores apenas em planos Pro, Max e Team. O classificador bloqueia escalação de escopo, infraestrutura não confiável e [prompt injection](#prompt-injection). Os resultados de tool são removidos do que ele vê, para que conteúdo hostil em um arquivo ou página web não possa manipulá-lo diretamente.57Um [permission mode](#permission-mode) onde um modelo classificador separado revisa ações em vez de você, para que Claude Code execute a maioria delas sem solicitar você. Claude Code ainda solicita você antes de ações que suas regras de solicitação explícita correspondem. O classificador bloqueia escalação de escopo, infraestrutura não confiável e [prompt injection](#prompt-injection). Os resultados de tool são removidos do que ele vê, para que conteúdo hostil em um arquivo ou página web não possa manipulá-lo diretamente.

58 

59* **Claude Code v2.1.283 ou posterior**: auto mode é o [built-in starting permission mode](https://code.claude.com/docs/pt/permission-modes.md#which-mode-a-session-starts-in) para sessões interativas de terminal e VS Code

60* **Versões anteriores**: auto mode é o modo de permissão inicial integrado apenas nos planos Pro, Max, Ultra e Team

58 61 

59Saiba mais: [Eliminate prompts with auto mode](https://code.claude.com/docs/pt/permission-modes.md#eliminate-prompts-with-auto-mode)62Saiba mais: [Eliminate prompts with auto mode](https://code.claude.com/docs/pt/permission-modes.md#eliminate-prompts-with-auto-mode)

60 63 


140 143 

141### Dispatch144### Dispatch

142 145 

143Um roteador de tarefas iniciado por telefone que gera uma sessão do Claude Code no aplicativo Desktop quando você envia uma tarefa de codificação do aplicativo móvel Claude. Seu prompt é roteado para a ferramenta certa automaticamente. Disponível em planos Pro e Max.146Um roteador de tarefas iniciado por telefone que gera uma sessão do Claude Code no aplicativo Desktop quando você envia uma tarefa de codificação do aplicativo móvel Claude. Seu prompt é roteado para a ferramenta certa automaticamente. Disponível em planos Pro, Max e Ultra.

144 147 

145Saiba mais: [Sessions from Dispatch](https://code.claude.com/docs/pt/desktop.md#sessions-from-dispatch)148Saiba mais: [Sessions from Dispatch](https://code.claude.com/docs/pt/desktop.md#sessions-from-dispatch)

146 149 

hooks.md +411 −411

Details

68 68 

69Para ver como o evento, o matcher e o manipulador se encaixam, considere este hook `PreToolUse` que bloqueia comandos shell destrutivos.69Para ver como o evento, o matcher e o manipulador se encaixam, considere este hook `PreToolUse` que bloqueia comandos shell destrutivos.

70 70 

71**macOS/Linux**71> [tab] macOS/Linux

72 72>

73O `matcher` se restringe a chamadas de ferramenta Bash e a condição `if` se restringe ainda mais a subcomandos Bash correspondendo a `rm *`, então `block-rm.sh` apenas é gerado quando ambos os filtros correspondem:73> O `matcher` se restringe a chamadas de ferramenta Bash e a condição `if` se restringe ainda mais a subcomandos Bash correspondendo a `rm *`, então `block-rm.sh` apenas é gerado quando ambos os filtros correspondem:

74 74>

75```json theme={null}75> ```json theme={null}

76{76> {

77 "hooks": {77> "hooks": {

78 "PreToolUse": [78> "PreToolUse": [

79 {79> {

80 "matcher": "Bash",80> "matcher": "Bash",

81 "hooks": [81> "hooks": [

82 {82> {

83 "type": "command",83> "type": "command",

84 "if": "Bash(rm *)",84> "if": "Bash(rm *)",

85 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh",85> "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh",

86 "args": []86> "args": []

87 }87> }

88 ]88> ]

89 }89> }

90 ]90> ]

91 }91> }

92}92> }

93```93> ```

94 94>

95O script lê a entrada JSON de stdin, extrai o comando e retorna uma `permissionDecision` de `"deny"` se contiver `rm -rf`. Salve-o em `.claude/hooks/block-rm.sh` em seu projeto e torne-o executável com `chmod +x .claude/hooks/block-rm.sh` para que Claude Code possa executá-lo:95> O script lê a entrada JSON de stdin, extrai o comando e retorna uma `permissionDecision` de `"deny"` se contiver `rm -rf`. Salve-o em `.claude/hooks/block-rm.sh` em seu projeto e torne-o executável com `chmod +x .claude/hooks/block-rm.sh` para que Claude Code possa executá-lo:

96 96>

97```bash theme={null}97> ```bash theme={null}

98#!/bin/bash98> #!/bin/bash

99# .claude/hooks/block-rm.sh99> # .claude/hooks/block-rm.sh

100COMMAND=$(jq -r '.tool_input.command')100> COMMAND=$(jq -r '.tool_input.command')

101 101>

102if echo "$COMMAND" | grep -q 'rm -rf'; then102> if echo "$COMMAND" | grep -q 'rm -rf'; then

103 jq -n '{103> jq -n '{

104 hookSpecificOutput: {104> hookSpecificOutput: {

105 hookEventName: "PreToolUse",105> hookEventName: "PreToolUse",

106 permissionDecision: "deny",106> permissionDecision: "deny",

107 permissionDecisionReason: "Destructive command blocked by hook"107> permissionDecisionReason: "Destructive command blocked by hook"

108 }108> }

109 }'109> }'

110else110> else

111 exit 0 # no decision; normal permission flow applies111> exit 0 # no decision; normal permission flow applies

112fi112> fi

113```113> ```

114 114>

115Este script, como os outros exemplos Bash nesta página que analisam entrada JSON, usa `jq`, então instale `jq` e certifique-se de que está em seu `PATH` antes de tentar executá-los.115> Este script, como os outros exemplos Bash nesta página que analisam entrada JSON, usa `jq`, então instale `jq` e certifique-se de que está em seu `PATH` antes de tentar executá-los.

116 

117**Windows (PowerShell)**

118 

119O matcher `Bash|PowerShell` cobre a [ferramenta PowerShell](#powershell) bem como Bash. Uma única regra `if` corresponde apenas às chamadas de uma ferramenta, então cada ferramenta obtém seu próprio manipulador: o primeiro se restringe a subcomandos Bash correspondendo a `rm *`, o segundo a comandos PowerShell correspondendo a `Remove-Item *`. Ambos executam o mesmo script através de `powershell.exe`:

120 

121```json theme={null}

122{

123 "hooks": {

124 "PreToolUse": [

125 {

126 "matcher": "Bash|PowerShell",

127 "hooks": [

128 {

129 "type": "command",

130 "if": "Bash(rm *)",

131 "command": "powershell.exe",

132 "args": [

133 "-NoProfile",

134 "-ExecutionPolicy",

135 "Bypass",

136 "-File",

137 "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.ps1"

138 ]

139 },

140 {

141 "type": "command",

142 "if": "PowerShell(Remove-Item *)",

143 "command": "powershell.exe",

144 "args": [

145 "-NoProfile",

146 "-ExecutionPolicy",

147 "Bypass",

148 "-File",

149 "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.ps1"

150 ]

151 }

152 ]

153 }

154 ]

155 }

156}

157```

158 

159A flag `-NoProfile` pula o carregamento de seu perfil PowerShell para que o hook inicie rapidamente, e `-ExecutionPolicy Bypass` permite que PowerShell execute o arquivo de script local.

160 

161O script lê a entrada JSON de stdin, extrai o comando e retorna uma `permissionDecision` de `"deny"` se contiver `rm -rf` ou `Remove-Item` seguido por `-Recurse`. Salve-o em `.claude/hooks/block-rm.ps1` em seu projeto:

162 

163```powershell theme={null}

164# .claude/hooks/block-rm.ps1

165$callInput = [Console]::In.ReadToEnd() | ConvertFrom-Json

166$command = $callInput.tool_input.command

167 116 

168if ($command -match 'rm -rf|Remove-Item.*-Recurse') {117> [tab] Windows (PowerShell)

169 @{118>

170 hookSpecificOutput = @{119> O matcher `Bash|PowerShell` cobre a [ferramenta PowerShell](#powershell) bem como Bash. Uma única regra `if` corresponde apenas às chamadas de uma ferramenta, então cada ferramenta obtém seu próprio manipulador: o primeiro se restringe a subcomandos Bash correspondendo a `rm *`, o segundo a comandos PowerShell correspondendo a `Remove-Item *`. Ambos executam o mesmo script através de `powershell.exe`:

171 hookEventName = "PreToolUse"120>

172 permissionDecision = "deny"121> ```json theme={null}

173 permissionDecisionReason = "Destructive command blocked by hook"122> {

174 }123> "hooks": {

175 } | ConvertTo-Json124> "PreToolUse": [

176} else {125> {

177 exit 0 # no decision; normal permission flow applies126> "matcher": "Bash|PowerShell",

178}127> "hooks": [

179```128> {

129> "type": "command",

130> "if": "Bash(rm *)",

131> "command": "powershell.exe",

132> "args": [

133> "-NoProfile",

134> "-ExecutionPolicy",

135> "Bypass",

136> "-File",

137> "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.ps1"

138> ]

139> },

140> {

141> "type": "command",

142> "if": "PowerShell(Remove-Item *)",

143> "command": "powershell.exe",

144> "args": [

145> "-NoProfile",

146> "-ExecutionPolicy",

147> "Bypass",

148> "-File",

149> "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.ps1"

150> ]

151> }

152> ]

153> }

154> ]

155> }

156> }

157> ```

158>

159> A flag `-NoProfile` pula o carregamento de seu perfil PowerShell para que o hook inicie rapidamente, e `-ExecutionPolicy Bypass` permite que PowerShell execute o arquivo de script local.

160>

161> O script lê a entrada JSON de stdin, extrai o comando e retorna uma `permissionDecision` de `"deny"` se contiver `rm -rf` ou `Remove-Item` seguido por `-Recurse`. Salve-o em `.claude/hooks/block-rm.ps1` em seu projeto:

162>

163> ```powershell theme={null}

164> # .claude/hooks/block-rm.ps1

165> $callInput = [Console]::In.ReadToEnd() | ConvertFrom-Json

166> $command = $callInput.tool_input.command

167>

168> if ($command -match 'rm -rf|Remove-Item.*-Recurse') {

169> @{

170> hookSpecificOutput = @{

171> hookEventName = "PreToolUse"

172> permissionDecision = "deny"

173> permissionDecisionReason = "Destructive command blocked by hook"

174> }

175> } | ConvertTo-Json

176> } else {

177> exit 0 # no decision; normal permission flow applies

178> }

179> ```

180 180 

181Agora suponha que Claude Code decida executar `Bash "rm -rf /tmp/build"` contra a configuração macOS/Linux. Aqui está o que acontece:181Agora suponha que Claude Code decida executar `Bash "rm -rf /tmp/build"` contra a configuração macOS/Linux. Aqui está o que acontece:

182 182 


601 601 

602Prefira [forma exec](#exec-form-and-shell-form) para qualquer hook que referencie um placeholder de caminho. Em forma shell, envolva cada placeholder em aspas duplas.602Prefira [forma exec](#exec-form-and-shell-form) para qualquer hook que referencie um placeholder de caminho. Em forma shell, envolva cada placeholder em aspas duplas.

603 603 

604**Scripts de projeto**604> [tab] Scripts de projeto

605 605>

606Este exemplo usa `${CLAUDE_PROJECT_DIR}` para executar um verificador de estilo do diretório `.claude/hooks/` do projeto após qualquer chamada de ferramenta `Write` ou `Edit`:606> Este exemplo usa `${CLAUDE_PROJECT_DIR}` para executar um verificador de estilo do diretório `.claude/hooks/` do projeto após qualquer chamada de ferramenta `Write` ou `Edit`:

607 607>

608```json theme={null}608> ```json theme={null}

609{609> {

610 "hooks": {610> "hooks": {

611 "PostToolUse": [611> "PostToolUse": [

612 {612> {

613 "matcher": "Write|Edit",613> "matcher": "Write|Edit",

614 "hooks": [614> "hooks": [

615 {615> {

616 "type": "command",616> "type": "command",

617 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/check-style.sh",617> "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/check-style.sh",

618 "args": []618> "args": []

619 }619> }

620 ]620> ]

621 }621> }

622 ]622> ]

623 }623> }

624}624> }

625```625> ```

626 626 

627**Scripts de plugin**627> [tab] Scripts de plugin

628 628>

629Defina hooks de plugin em `hooks/hooks.json` com um campo `description` opcional de nível superior. Quando um plugin está ativado, seus hooks se mesclam com seus hooks de usuário e projeto.629> Defina hooks de plugin em `hooks/hooks.json` com um campo `description` opcional de nível superior. Quando um plugin está ativado, seus hooks se mesclam com seus hooks de usuário e projeto.

630 630>

631Este exemplo executa um script de formatação agrupado com o plugin:631> Este exemplo executa um script de formatação agrupado com o plugin:

632 632>

633```json theme={null}633> ```json theme={null}

634{634> {

635 "description": "Automatic code formatting",635> "description": "Automatic code formatting",

636 "hooks": {636> "hooks": {

637 "PostToolUse": [637> "PostToolUse": [

638 {638> {

639 "matcher": "Write|Edit",639> "matcher": "Write|Edit",

640 "hooks": [640> "hooks": [

641 {641> {

642 "type": "command",642> "type": "command",

643 "command": "${CLAUDE_PLUGIN_ROOT}/scripts/format.sh",643> "command": "${CLAUDE_PLUGIN_ROOT}/scripts/format.sh",

644 "args": [],644> "args": [],

645 "timeout": 30645> "timeout": 30

646 }646> }

647 ]647> ]

648 }648> }

649 ]649> ]

650 }650> }

651}651> }

652```652> ```

653 653>

654Consulte a [referência de componentes de plugin](https://code.claude.com/docs/pt/plugins/components.md#hooks) para detalhes sobre como criar hooks de plugin.654> Consulte a [referência de componentes de plugin](https://code.claude.com/docs/pt/plugins/components.md#hooks) para detalhes sobre como criar hooks de plugin.

655 655 

656### Hooks em skills e agentes656### Hooks em skills e agentes

657 657 


1180 1180 

1181Aqui estão exemplos de cada padrão em ação:1181Aqui estão exemplos de cada padrão em ação:

1182 1182 

1183**Decisão de nível superior**1183> [tab] Decisão de nível superior

1184 1184>

1185O único valor para `decision` é `"block"`. Para permitir que a ação prossiga, omita `decision` do seu JSON, ou saia 0 sem qualquer JSON:1185> O único valor para `decision` é `"block"`. Para permitir que a ação prossiga, omita `decision` do seu JSON, ou saia 0 sem qualquer JSON:

1186 1186>

1187```json theme={null}1187> ```json theme={null}

1188{1188> {

1189 "decision": "block",1189> "decision": "block",

1190 "reason": "Test suite must pass before proceeding"1190> "reason": "Test suite must pass before proceeding"

1191}1191> }

1192```1192> ```

1193 1193 

1194**PreToolUse**1194> [tab] PreToolUse

1195 1195>

1196Usa `hookSpecificOutput` para controle mais rico: permitir, negar ou escalar para o usuário. Você também pode modificar a entrada da ferramenta antes de executar ou injetar contexto adicional para Claude. Consulte [Controle de decisão PreToolUse](#pretooluse-decision-control) para o conjunto completo de opções.1196> Usa `hookSpecificOutput` para controle mais rico: permitir, negar ou escalar para o usuário. Você também pode modificar a entrada da ferramenta antes de executar ou injetar contexto adicional para Claude. Consulte [Controle de decisão PreToolUse](#pretooluse-decision-control) para o conjunto completo de opções.

1197 1197>

1198```json theme={null}1198> ```json theme={null}

1199{1199> {

1200 "hookSpecificOutput": {1200> "hookSpecificOutput": {

1201 "hookEventName": "PreToolUse",1201> "hookEventName": "PreToolUse",

1202 "permissionDecision": "deny",1202> "permissionDecision": "deny",

1203 "permissionDecisionReason": "Database writes are not allowed"1203> "permissionDecisionReason": "Database writes are not allowed"

1204 }1204> }

1205}1205> }

1206```1206> ```

1207 1207 

1208**PermissionRequest**1208> [tab] PermissionRequest

1209 1209>

1210Usa `hookSpecificOutput` para permitir ou negar uma solicitação de permissão em nome do usuário. Ao permitir, você também pode modificar a entrada da ferramenta ou aplicar regras de permissão para que o usuário não seja solicitado novamente. Consulte [Controle de decisão PermissionRequest](#permissionrequest-decision-control) para o conjunto completo de opções.1210> Usa `hookSpecificOutput` para permitir ou negar uma solicitação de permissão em nome do usuário. Ao permitir, você também pode modificar a entrada da ferramenta ou aplicar regras de permissão para que o usuário não seja solicitado novamente. Consulte [Controle de decisão PermissionRequest](#permissionrequest-decision-control) para o conjunto completo de opções.

1211 1211>

1212```json theme={null}1212> ```json theme={null}

1213{1213> {

1214 "hookSpecificOutput": {1214> "hookSpecificOutput": {

1215 "hookEventName": "PermissionRequest",1215> "hookEventName": "PermissionRequest",

1216 "decision": {1216> "decision": {

1217 "behavior": "allow",1217> "behavior": "allow",

1218 "updatedInput": {1218> "updatedInput": {

1219 "command": "npm run lint"1219> "command": "npm run lint"

1220 }1220> }

1221 }1221> }

1222 }1222> }

1223}1223> }

1224```1224> ```

1225 1225 

1226Para exemplos estendidos incluindo validação de comando Bash, filtragem de prompt e scripts de aprovação automática, consulte [O que você pode automatizar](https://code.claude.com/docs/pt/hooks-guide.md#what-you-can-automate) no guia e a [implementação de referência do validador de comando Bash](https://github.com/anthropics/claude-code/blob/main/examples/hooks/bash_command_validator_example.py).1226Para exemplos estendidos incluindo validação de comando Bash, filtragem de prompt e scripts de aprovação automática, consulte [O que você pode automatizar](https://code.claude.com/docs/pt/hooks-guide.md#what-you-can-automate) no guia e a [implementação de referência do validador de comando Bash](https://github.com/anthropics/claude-code/blob/main/examples/hooks/bash_command_validator_example.py).

1227 1227 


1656 1656 

1657Este exemplo remove a formatação markdown das respostas do Claude para uma exibição em texto simples. O script lê cada lote do stdin, remove os marcadores de negrito e os acentos graves de código inline de `delta` e retorna o resultado como `displayContent`.1657Este exemplo remove a formatação markdown das respostas do Claude para uma exibição em texto simples. O script lê cada lote do stdin, remove os marcadores de negrito e os acentos graves de código inline de `delta` e retorna o resultado como `displayContent`.

1658 1658 

1659**macOS/Linux**1659> [tab] macOS/Linux

1660 1660>

1661Registre um hook de comando para o evento no seu arquivo de configurações:1661> Registre um hook de comando para o evento no seu arquivo de configurações:

1662 1662>

1663```json theme={null}1663> ```json theme={null}

1664{1664> {

1665 "hooks": {1665> "hooks": {

1666 "MessageDisplay": [1666> "MessageDisplay": [

1667 {1667> {

1668 "hooks": [1668> "hooks": [

1669 {1669> {

1670 "type": "command",1670> "type": "command",

1671 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/plain-display.sh",1671> "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/plain-display.sh",

1672 "args": []1672> "args": []

1673 }1673> }

1674 ]1674> ]

1675 }1675> }

1676 ]1676> ]

1677 }1677> }

1678}1678> }

1679```1679> ```

1680 1680>

1681Salve este script em `.claude/hooks/plain-display.sh` no seu projeto e torne-o executável com `chmod +x`:1681> Salve este script em `.claude/hooks/plain-display.sh` no seu projeto e torne-o executável com `chmod +x`:

1682 1682>

1683```bash theme={null}1683> ```bash theme={null}

1684#!/bin/bash1684> #!/bin/bash

1685jq '{hookSpecificOutput: {hookEventName: "MessageDisplay", displayContent: (.delta | gsub("\\*\\*"; "") | gsub("`"; ""))}}'1685> jq '{hookSpecificOutput: {hookEventName: "MessageDisplay", displayContent: (.delta | gsub("\\*\\*"; "") | gsub("`"; ""))}}'

1686```1686> ```

1687 

1688**Windows (PowerShell)**

1689 

1690Registre um hook de comando que executa o script por meio do PowerShell:

1691 

1692```json theme={null}

1693{

1694 "hooks": {

1695 "MessageDisplay": [

1696 {

1697 "hooks": [

1698 {

1699 "type": "command",

1700 "command": "powershell.exe",

1701 "args": [

1702 "-NoProfile",

1703 "-ExecutionPolicy",

1704 "Bypass",

1705 "-File",

1706 "${CLAUDE_PROJECT_DIR}/.claude/hooks/plain-display.ps1"

1707 ]

1708 }

1709 ]

1710 }

1711 ]

1712 }

1713}

1714```

1715 

1716A flag `-NoProfile` evita o carregamento do seu perfil do PowerShell para que o hook inicie rapidamente, e `-ExecutionPolicy Bypass` permite que o PowerShell execute o arquivo de script local.

1717 

1718Salve este script em `.claude/hooks/plain-display.ps1` no seu projeto:

1719 1687 

1720```powershell theme={null}1688> [tab] Windows (PowerShell)

1721$batch = [Console]::In.ReadToEnd() | ConvertFrom-Json1689>

1722$text = $batch.delta -replace '\*\*', '' -replace '`', ''1690> Registre um hook de comando que executa o script por meio do PowerShell:

1723@{1691>

1724 hookSpecificOutput = @{1692> ```json theme={null}

1725 hookEventName = "MessageDisplay"1693> {

1726 displayContent = $text1694> "hooks": {

1727 }1695> "MessageDisplay": [

1728} | ConvertTo-Json1696> {

1729```1697> "hooks": [

1698> {

1699> "type": "command",

1700> "command": "powershell.exe",

1701> "args": [

1702> "-NoProfile",

1703> "-ExecutionPolicy",

1704> "Bypass",

1705> "-File",

1706> "${CLAUDE_PROJECT_DIR}/.claude/hooks/plain-display.ps1"

1707> ]

1708> }

1709> ]

1710> }

1711> ]

1712> }

1713> }

1714> ```

1715>

1716> A flag `-NoProfile` evita o carregamento do seu perfil do PowerShell para que o hook inicie rapidamente, e `-ExecutionPolicy Bypass` permite que o PowerShell execute o arquivo de script local.

1717>

1718> Salve este script em `.claude/hooks/plain-display.ps1` no seu projeto:

1719>

1720> ```powershell theme={null}

1721> $batch = [Console]::In.ReadToEnd() | ConvertFrom-Json

1722> $text = $batch.delta -replace '\*\*', '' -replace '`', ''

1723> @{

1724> hookSpecificOutput = @{

1725> hookEventName = "MessageDisplay"

1726> displayContent = $text

1727> }

1728> } | ConvertTo-Json

1729> ```

1730 1730 

1731Lotes sem markdown passam sem alteração. Se o script falhar, por exemplo porque o `jq` não está instalado, o Claude Code exibe o texto original e registra a falha apenas na [saída de depuração](#debug-hooks), não na sessão.1731Lotes sem markdown passam sem alteração. Se o script falhar, por exemplo porque o `jq` não está instalado, o Claude Code exibe o texto original e registra a falha apenas na [saída de depuração](#debug-hooks), não na sessão.

1732 1732 


3357 3357 

3358Escreva o matcher como um nome exato, uma lista separada por `|` como `claude-opus-4-6|claude-opus-5`, ou uma expressão regular como `.*opus.*`. Este exemplo usa um matcher de nome exato e também verifica `to_model` na entrada do hook, então recusa uma troca para o Opus 4.6 terminando com código 2 e deixa passar qualquer outro destino:3358Escreva o matcher como um nome exato, uma lista separada por `|` como `claude-opus-4-6|claude-opus-5`, ou uma expressão regular como `.*opus.*`. Este exemplo usa um matcher de nome exato e também verifica `to_model` na entrada do hook, então recusa uma troca para o Opus 4.6 terminando com código 2 e deixa passar qualquer outro destino:

3359 3359 

3360**macOS/Linux**3360> [tab] macOS/Linux

3361 3361>

3362O comando verifica `to_model` com `jq`:3362> O comando verifica `to_model` com `jq`:

3363 3363>

3364```json theme={null}3364> ```json theme={null}

3365{3365> {

3366 "hooks": {3366> "hooks": {

3367 "PreModelSwitch": [3367> "PreModelSwitch": [

3368 {3368> {

3369 "matcher": "claude-opus-4-6",3369> "matcher": "claude-opus-4-6",

3370 "hooks": [3370> "hooks": [

3371 {3371> {

3372 "type": "command",3372> "type": "command",

3373 "command": "jq -e '.to_model | test(\"opus-4-6\")' > /dev/null && { echo 'Opus 4.6 is retired for this project. Use a newer model.' >&2; exit 2; }; exit 0"3373> "command": "jq -e '.to_model | test(\"opus-4-6\")' > /dev/null && { echo 'Opus 4.6 is retired for this project. Use a newer model.' >&2; exit 2; }; exit 0"

3374 }3374> }

3375 ]3375> ]

3376 }3376> }

3377 ]3377> ]

3378 }3378> }

3379}3379> }

3380```3380> ```

3381 3381 

3382**Windows (PowerShell)**3382> [tab] Windows (PowerShell)

3383 3383>

3384Registre um hook de comando que executa um script por meio do PowerShell:3384> Registre um hook de comando que executa um script por meio do PowerShell:

3385 3385>

3386```json theme={null}3386> ```json theme={null}

3387{3387> {

3388 "hooks": {3388> "hooks": {

3389 "PreModelSwitch": [3389> "PreModelSwitch": [

3390 {3390> {

3391 "matcher": "claude-opus-4-6",3391> "matcher": "claude-opus-4-6",

3392 "hooks": [3392> "hooks": [

3393 {3393> {

3394 "type": "command",3394> "type": "command",

3395 "command": "powershell.exe",3395> "command": "powershell.exe",

3396 "args": [3396> "args": [

3397 "-NoProfile",3397> "-NoProfile",

3398 "-ExecutionPolicy",3398> "-ExecutionPolicy",

3399 "Bypass",3399> "Bypass",

3400 "-File",3400> "-File",

3401 "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-opus-46.ps1"3401> "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-opus-46.ps1"

3402 ]3402> ]

3403 }3403> }

3404 ]3404> ]

3405 }3405> }

3406 ]3406> ]

3407 }3407> }

3408}3408> }

3409```3409> ```

3410 3410>

3411Salve este script em `.claude/hooks/block-opus-46.ps1` no seu projeto:3411> Salve este script em `.claude/hooks/block-opus-46.ps1` no seu projeto:

3412 3412>

3413```powershell theme={null}3413> ```powershell theme={null}

3414$hookInput = [Console]::In.ReadToEnd() | ConvertFrom-Json3414> $hookInput = [Console]::In.ReadToEnd() | ConvertFrom-Json

3415if ($hookInput.to_model -match 'opus-4-6') {3415> if ($hookInput.to_model -match 'opus-4-6') {

3416 [Console]::Error.WriteLine('Opus 4.6 is retired for this project. Use a newer model.')3416> [Console]::Error.WriteLine('Opus 4.6 is retired for this project. Use a newer model.')

3417 exit 23417> exit 2

3418}3418> }

3419exit 03419> exit 0

3420```3420> ```

3421 3421 

3422Para confirmar que o hook funciona, execute `/model claude-opus-4-6` a partir de uma sessão que esteja executando um modelo diferente. O Claude Code mantém o modelo atual e informa que um hook PreModelSwitch bloqueou a troca, com a sua mensagem como motivo.3422Para confirmar que o hook funciona, execute `/model claude-opus-4-6` a partir de uma sessão que esteja executando um modelo diferente. O Claude Code mantém o modelo atual e informa que um hook PreModelSwitch bloqueou a troca, com a sua mensagem como motivo.

3423 3423 


3705 3705 

3706Este exemplo responde a uma pergunta recorrente pelo usuário. Um servidor MCP chamado `issue-tracker` pede uma chave de projeto em um formulário, e o hook preenche `DOCS`. O script aceita quando `project_key` é o único campo do formulário. Para qualquer outra solicitação, ele não imprime nada, então o diálogo aparece.3706Este exemplo responde a uma pergunta recorrente pelo usuário. Um servidor MCP chamado `issue-tracker` pede uma chave de projeto em um formulário, e o hook preenche `DOCS`. O script aceita quando `project_key` é o único campo do formulário. Para qualquer outra solicitação, ele não imprime nada, então o diálogo aparece.

3707 3707 

3708**macOS/Linux**3708> [tab] macOS/Linux

3709 3709>

3710Registre um hook de comando para o evento no seu arquivo de configurações, com o nome do servidor como matcher:3710> Registre um hook de comando para o evento no seu arquivo de configurações, com o nome do servidor como matcher:

3711 3711>

3712```json theme={null}3712> ```json theme={null}

3713{3713> {

3714 "hooks": {3714> "hooks": {

3715 "Elicitation": [3715> "Elicitation": [

3716 {3716> {

3717 "matcher": "issue-tracker",3717> "matcher": "issue-tracker",

3718 "hooks": [3718> "hooks": [

3719 {3719> {

3720 "type": "command",3720> "type": "command",

3721 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/answer-project-key.sh",3721> "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/answer-project-key.sh",

3722 "args": []3722> "args": []

3723 }3723> }

3724 ]3724> ]

3725 }3725> }

3726 ]3726> ]

3727 }3727> }

3728}3728> }

3729```3729> ```

3730 3730>

3731Salve este script em `.claude/hooks/answer-project-key.sh` no seu projeto e torne-o executável com `chmod +x`:3731> Salve este script em `.claude/hooks/answer-project-key.sh` no seu projeto e torne-o executável com `chmod +x`:

3732 3732>

3733```bash theme={null}3733> ```bash theme={null}

3734#!/bin/bash3734> #!/bin/bash

3735input=$(cat)3735> input=$(cat)

3736fields=$(jq -c '.requested_schema.properties // {} | keys' <<<"$input")3736> fields=$(jq -c '.requested_schema.properties // {} | keys' <<<"$input")

3737 3737>

3738if [ "$fields" = '["project_key"]' ]; then3738> if [ "$fields" = '["project_key"]' ]; then

3739 jq -n '{hookSpecificOutput: {hookEventName: "Elicitation", action: "accept", content: {project_key: "DOCS"}}}'3739> jq -n '{hookSpecificOutput: {hookEventName: "Elicitation", action: "accept", content: {project_key: "DOCS"}}}'

3740fi3740> fi

3741```3741> ```

3742 

3743**Windows (PowerShell)**

3744 

3745Registre um hook de comando que executa o script por meio do PowerShell, com o nome do servidor como matcher:

3746 

3747```json theme={null}

3748{

3749 "hooks": {

3750 "Elicitation": [

3751 {

3752 "matcher": "issue-tracker",

3753 "hooks": [

3754 {

3755 "type": "command",

3756 "command": "powershell.exe",

3757 "args": [

3758 "-NoProfile",

3759 "-ExecutionPolicy",

3760 "Bypass",

3761 "-File",

3762 "${CLAUDE_PROJECT_DIR}/.claude/hooks/answer-project-key.ps1"

3763 ]

3764 }

3765 ]

3766 }

3767 ]

3768 }

3769}

3770```

3771 

3772Salve este script em `.claude/hooks/answer-project-key.ps1` no seu projeto:

3773 

3774```powershell theme={null}

3775$request = [Console]::In.ReadToEnd() | ConvertFrom-Json

3776$fields = @($request.requested_schema.properties.PSObject.Properties.Name)

3777 3742 

3778if ($fields.Count -eq 1 -and $fields[0] -eq 'project_key') {3743> [tab] Windows (PowerShell)

3779 @{3744>

3780 hookSpecificOutput = @{3745> Registre um hook de comando que executa o script por meio do PowerShell, com o nome do servidor como matcher:

3781 hookEventName = "Elicitation"3746>

3782 action = "accept"3747> ```json theme={null}

3783 content = @{ project_key = "DOCS" }3748> {

3784 }3749> "hooks": {

3785 } | ConvertTo-Json -Depth 33750> "Elicitation": [

3786}3751> {

3787```3752> "matcher": "issue-tracker",

3753> "hooks": [

3754> {

3755> "type": "command",

3756> "command": "powershell.exe",

3757> "args": [

3758> "-NoProfile",

3759> "-ExecutionPolicy",

3760> "Bypass",

3761> "-File",

3762> "${CLAUDE_PROJECT_DIR}/.claude/hooks/answer-project-key.ps1"

3763> ]

3764> }

3765> ]

3766> }

3767> ]

3768> }

3769> }

3770> ```

3771>

3772> Salve este script em `.claude/hooks/answer-project-key.ps1` no seu projeto:

3773>

3774> ```powershell theme={null}

3775> $request = [Console]::In.ReadToEnd() | ConvertFrom-Json

3776> $fields = @($request.requested_schema.properties.PSObject.Properties.Name)

3777>

3778> if ($fields.Count -eq 1 -and $fields[0] -eq 'project_key') {

3779> @{

3780> hookSpecificOutput = @{

3781> hookEventName = "Elicitation"

3782> action = "accept"

3783> content = @{ project_key = "DOCS" }

3784> }

3785> } | ConvertTo-Json -Depth 3

3786> }

3787> ```

3788 3788 

3789Para confirmar que o hook funciona, inicie o Claude Code com `claude --debug` e dê ao Claude uma tarefa que faça o servidor pedir a chave do projeto. Nenhum diálogo aparece, e o [log de depuração](#debug-hooks) tem uma linha que termina com `Elicitation resolved by hook: {"action":"accept","content":{"project_key":"DOCS"}}`.3789Para confirmar que o hook funciona, inicie o Claude Code com `claude --debug` e dê ao Claude uma tarefa que faça o servidor pedir a chave do projeto. Nenhum diálogo aparece, e o [log de depuração](#debug-hooks) tem uma linha que termina com `Elicitation resolved by hook: {"action":"accept","content":{"project_key":"DOCS"}}`.

3790 3790 

hooks-guide.md +144 −144

Details

89 89 

90Cada aba abaixo usa o comando de notificação nativo da plataforma. Adicione isto a `~/.claude/settings.json`:90Cada aba abaixo usa o comando de notificação nativo da plataforma. Adicione isto a `~/.claude/settings.json`:

91 91 

92**macOS**92> [tab] macOS

93 

94```json theme={null}

95{

96 "hooks": {

97 "Notification": [

98 {

99 "matcher": "",

100 "hooks": [

101 {

102 "type": "command",

103 "command": "osascript -e 'display notification \"Claude Code needs your attention\" with title \"Claude Code\"'"

104 }

105 ]

106 }

107 ]

108 }

109}

110```

111 

112> **Se nenhuma notificação aparecer**

113>

114> `osascript` roteia notificações através do aplicativo Script Editor integrado. Se o Script Editor não tiver permissão de notificação, o comando falha silenciosamente e macOS não solicitará que você o conceda.

115>93>

116> Execute isto no Terminal uma vez para fazer o Script Editor aparecer em suas configurações de notificação:94> ```json theme={null}

117>95> {

118> ```bash theme={null}96> "hooks": {

119> osascript -e 'display notification "test"'97> "Notification": [

98> {

99> "matcher": "",

100> "hooks": [

101> {

102> "type": "command",

103> "command": "osascript -e 'display notification \"Claude Code needs your attention\" with title \"Claude Code\"'"

104> }

105> ]

106> }

107> ]

108> }

109> }

120> ```110> ```

121>111>

122> Nada aparecerá ainda. Abra **System Settings > Notifications**, encontre **Script Editor** na lista e ative **Allow Notifications**. Execute o comando novamente para confirmar que a notificação de teste aparece.112> > [accordion] Se nenhuma notificação aparecer

123 113> >

124**Linux**114> > `osascript` roteia notificações através do aplicativo Script Editor integrado. Se o Script Editor não tiver permissão de notificação, o comando falha silenciosamente e macOS não solicitará que você o conceda.

125 115> >

126```json theme={null}116> > Execute isto no Terminal uma vez para fazer o Script Editor aparecer em suas configurações de notificação:

127{117> >

128 "hooks": {118> > ```bash theme={null}

129 "Notification": [119> > osascript -e 'display notification "test"'

130 {120> > ```

131 "matcher": "",121> >

132 "hooks": [122> > Nada aparecerá ainda. Abra **System Settings > Notifications**, encontre **Script Editor** na lista e ative **Allow Notifications**. Execute o comando novamente para confirmar que a notificação de teste aparece.

133 {123 

134 "type": "command",124> [tab] Linux

135 "command": "notify-send 'Claude Code' 'Claude Code needs your attention'"

136 }

137 ]

138 }

139 ]

140 }

141}

142```

143 

144> **Se nenhuma notificação aparecer**

145>

146> `notify-send` precisa de um daemon de notificação de desktop, que servidores headless, sessões SSH e a maioria dos containers não possuem. Teste o comando diretamente primeiro:

147>125>

148> ```bash theme={null}126> ```json theme={null}

149> notify-send 'Claude Code' 'test'127> {

128> "hooks": {

129> "Notification": [

130> {

131> "matcher": "",

132> "hooks": [

133> {

134> "type": "command",

135> "command": "notify-send 'Claude Code' 'Claude Code needs your attention'"

136> }

137> ]

138> }

139> ]

140> }

141> }

150> ```142> ```

151>143>

152> Se o comando não for encontrado, instale o pacote `libnotify-bin` no Debian e Ubuntu, ou o equivalente da sua distribuição.144> > [accordion] Se nenhuma notificação aparecer

153 145> >

154**Windows (PowerShell)**146> > `notify-send` precisa de um daemon de notificação de desktop, que servidores headless, sessões SSH e a maioria dos containers não possuem. Teste o comando diretamente primeiro:

155 147> >

156```json theme={null}148> > ```bash theme={null}

157{149> > notify-send 'Claude Code' 'test'

158 "hooks": {150> > ```

159 "Notification": [151> >

160 {152> > Se o comando não for encontrado, instale o pacote `libnotify-bin` no Debian e Ubuntu, ou o equivalente da sua distribuição.

161 "matcher": "",153 

162 "hooks": [154> [tab] Windows (PowerShell)

163 {

164 "type": "command",

165 "command": "powershell.exe -Command \"[System.Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms'); [System.Windows.Forms.MessageBox]::Show('Claude Code needs your attention', 'Claude Code')\""

166 }

167 ]

168 }

169 ]

170 }

171}

172```

173 

174> **Se nenhuma caixa de diálogo aparecer**

175>155>

176> Este comando abre uma caixa de diálogo em vez de uma notificação no canto da tela, portanto a caixa de diálogo pode abrir atrás da janela do seu terminal. Teste o comando diretamente no PowerShell primeiro.156> ```json theme={null}

157> {

158> "hooks": {

159> "Notification": [

160> {

161> "matcher": "",

162> "hooks": [

163> {

164> "type": "command",

165> "command": "powershell.exe -Command \"[System.Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms'); [System.Windows.Forms.MessageBox]::Show('Claude Code needs your attention', 'Claude Code')\""

166> }

167> ]

168> }

169> ]

170> }

171> }

172> ```

177>173>

178> Se você executar Claude Code dentro do WSL, `powershell.exe` deve estar disponível no seu `PATH` através da interoperabilidade do Windows.174> > [accordion] Se nenhuma caixa de diálogo aparecer

175> >

176> > Este comando abre uma caixa de diálogo em vez de uma notificação no canto da tela, portanto a caixa de diálogo pode abrir atrás da janela do seu terminal. Teste o comando diretamente no PowerShell primeiro.

177> >

178> > Se você executar Claude Code dentro do WSL, `powershell.exe` deve estar disponível no seu `PATH` através da interoperabilidade do Windows.

179 179 

180O `matcher` vazio dispara em todos os tipos de notificação. Para disparar apenas em eventos específicos, defina-o como um destes valores:180O `matcher` vazio dispara em todos os tipos de notificação. Para disparar apenas em eventos específicos, defina-o como um destes valores:

181 181 


705 705 

706As abas abaixo mostram alguns matchers adicionais em diferentes tipos de evento.706As abas abaixo mostram alguns matchers adicionais em diferentes tipos de evento.

707 707 

708**Registrar cada comando Bash**708> [tab] Registrar cada comando Bash

709 709>

710Corresponda apenas chamadas de ferramenta `Bash` e registre cada comando em um arquivo. O evento `PostToolUse` dispara após o comando ser concluído, então `tool_input.command` contém o que foi executado. O hook recebe os dados do evento como JSON em stdin, e `jq -r '.tool_input.command'` extrai apenas a string de comando, que `>>` anexa ao arquivo de log:710> Corresponda apenas chamadas de ferramenta `Bash` e registre cada comando em um arquivo. O evento `PostToolUse` dispara após o comando ser concluído, então `tool_input.command` contém o que foi executado. O hook recebe os dados do evento como JSON em stdin, e `jq -r '.tool_input.command'` extrai apenas a string de comando, que `>>` anexa ao arquivo de log:

711 711>

712```json theme={null}712> ```json theme={null}

713{713> {

714 "hooks": {714> "hooks": {

715 "PostToolUse": [715> "PostToolUse": [

716 {716> {

717 "matcher": "Bash",717> "matcher": "Bash",

718 "hooks": [718> "hooks": [

719 {719> {

720 "type": "command",720> "type": "command",

721 "command": "jq -r '.tool_input.command' >> ~/.claude/command-log.txt"721> "command": "jq -r '.tool_input.command' >> ~/.claude/command-log.txt"

722 }722> }

723 ]723> ]

724 }724> }

725 ]725> ]

726 }726> }

727}727> }

728```728> ```

729 

730**Corresponder ferramentas MCP**

731 

732Ferramentas MCP usam uma convenção de nomenclatura diferente das ferramentas integradas: `mcp__<server>__<tool>`, onde `<server>` é o nome do servidor MCP e `<tool>` é a ferramenta que fornece. Por exemplo, `mcp__github__search_repositories` ou `mcp__filesystem__read_file`. Ferramentas de um [servidor MCP fornecido por plugin](https://code.claude.com/docs/pt/mcp.md#plugin-provided-mcp-servers) usam um segmento de servidor com escopo em vez disso, como `mcp__plugin_my-plugin_db__query`. Use um matcher regex para direcionar todas as ferramentas de um servidor específico, ou corresponder entre servidores com um padrão como `mcp__.*__write.*`. Consulte [Corresponder ferramentas MCP](https://code.claude.com/docs/pt/hooks.md#match-mcp-tools) na referência para a lista completa de exemplos.

733 

734O comando abaixo extrai o nome da ferramenta da entrada JSON do hook com `jq` e o escreve para stderr. Escrever para stderr mantém stdout limpo para saída JSON e envia a mensagem para o [log de debug](https://code.claude.com/docs/pt/hooks.md#debug-hooks):

735 

736```json theme={null}

737{

738 "hooks": {

739 "PreToolUse": [

740 {

741 "matcher": "mcp__github__.*",

742 "hooks": [

743 {

744 "type": "command",

745 "command": "echo \"GitHub tool called: $(jq -r '.tool_name')\" >&2"

746 }

747 ]

748 }

749 ]

750 }

751}

752```

753 

754**Limpar ao final da sessão**

755 729 

756O evento `SessionEnd` suporta matchers na razão pela qual a sessão terminou. Este hook dispara apenas em `clear` (quando você executa `/clear`), não em saídas normais:730> [tab] Corresponder ferramentas MCP

731>

732> Ferramentas MCP usam uma convenção de nomenclatura diferente das ferramentas integradas: `mcp__<server>__<tool>`, onde `<server>` é o nome do servidor MCP e `<tool>` é a ferramenta que fornece. Por exemplo, `mcp__github__search_repositories` ou `mcp__filesystem__read_file`. Ferramentas de um [servidor MCP fornecido por plugin](https://code.claude.com/docs/pt/mcp.md#plugin-provided-mcp-servers) usam um segmento de servidor com escopo em vez disso, como `mcp__plugin_my-plugin_db__query`. Use um matcher regex para direcionar todas as ferramentas de um servidor específico, ou corresponder entre servidores com um padrão como `mcp__.*__write.*`. Consulte [Corresponder ferramentas MCP](https://code.claude.com/docs/pt/hooks.md#match-mcp-tools) na referência para a lista completa de exemplos.

733>

734> O comando abaixo extrai o nome da ferramenta da entrada JSON do hook com `jq` e o escreve para stderr. Escrever para stderr mantém stdout limpo para saída JSON e envia a mensagem para o [log de debug](https://code.claude.com/docs/pt/hooks.md#debug-hooks):

735>

736> ```json theme={null}

737> {

738> "hooks": {

739> "PreToolUse": [

740> {

741> "matcher": "mcp__github__.*",

742> "hooks": [

743> {

744> "type": "command",

745> "command": "echo \"GitHub tool called: $(jq -r '.tool_name')\" >&2"

746> }

747> ]

748> }

749> ]

750> }

751> }

752> ```

757 753 

758```json theme={null}754> [tab] Limpar ao final da sessão

759{755>

760 "hooks": {756> O evento `SessionEnd` suporta matchers na razão pela qual a sessão terminou. Este hook dispara apenas em `clear` (quando você executa `/clear`), não em saídas normais:

761 "SessionEnd": [757>

762 {758> ```json theme={null}

763 "matcher": "clear",759> {

764 "hooks": [760> "hooks": {

765 {761> "SessionEnd": [

766 "type": "command",762> {

767 "command": "rm -f /tmp/claude-scratch-*.txt"763> "matcher": "clear",

768 }764> "hooks": [

769 ]765> {

770 }766> "type": "command",

771 ]767> "command": "rm -f /tmp/claude-scratch-*.txt"

772 }768> }

773}769> ]

774```770> }

771> ]

772> }

773> }

774> ```

775 775 

776#### Filtrar por nome de ferramenta e argumentos com o campo `if`776#### Filtrar por nome de ferramenta e argumentos com o campo `if`

777 777 

Details

163 163 

164Escolha um modo de permissão para definir o que Claude pode fazer sem perguntar a você. Pressione `Shift+Tab` para percorrer os modos de permissão:164Escolha um modo de permissão para definir o que Claude pode fazer sem perguntar a você. Pressione `Shift+Tab` para percorrer os modos de permissão:

165 165 

166* **Auto**: um classificador revisa a maioria das ações em segundo plano e bloqueia as arriscadas em vez de perguntar a você. Com Claude Code v2.1.283 ou posterior, é o [modo de permissão inicial integrado](https://code.claude.com/docs/pt/permission-modes.md#which-mode-a-session-starts-in) para sessões interativas de terminal e VS Code, e em versões anteriores apenas em planos Pro, Max e Team166* **Auto**: um classificador revisa a maioria das ações em segundo plano e bloqueia as arriscadas em vez de perguntar a você. Com Claude Code v2.1.283 ou posterior, é o [modo de permissão inicial integrado](https://code.claude.com/docs/pt/permission-modes.md#which-mode-a-session-starts-in) para sessões interativas de terminal e VS Code. Em versões anteriores, é o modo de permissão inicial integrado apenas nos planos Pro, Max, Ultra e Team.

167* **Manual**: Claude pergunta antes de edições de arquivo e comandos shell167* **Manual**: Claude pergunta antes de edições de arquivo e comandos shell

168* **Accept edits**: Claude edita arquivos e executa comandos comuns do sistema de arquivos como `mkdir` e `mv` sem perguntar, ainda pergunta por outros comandos168* **Accept edits**: Claude edita arquivos e executa comandos comuns do sistema de arquivos como `mkdir` e `mv` sem perguntar, ainda pergunta por outros comandos

169* **Plan**: Claude explora e propõe um plano sem editar seus arquivos de origem169* **Plan**: Claude explora e propõe um plano sem editar seus arquivos de origem


223 223 

224## O que vem a seguir224## O que vem a seguir

225 225 

226> **[Estender com recursos](https://code.claude.com/docs/pt/features-overview.md)**226> [card] [Estender com recursos](https://code.claude.com/docs/pt/features-overview.md)

227>227>

228> Adicione skills e conexões MCP228> Adicione skills e conexões MCP

229 229 

230> **[Fluxos de trabalho comuns](https://code.claude.com/docs/pt/common-workflows.md)**230> [card] [Fluxos de trabalho comuns](https://code.claude.com/docs/pt/common-workflows.md)

231>231>

232> Guias passo a passo para tarefas típicas232> Guias passo a passo para tarefas típicas

Details

537 537 

538Claude Code lê a configuração [`spellcheck`](https://code.claude.com/docs/pt/settings-reference#spellcheck) de três lugares e a ignora no `.claude/settings.json` e `.claude/settings.local.json` de um projeto. Ative-a em qualquer um que você use:538Claude Code lê a configuração [`spellcheck`](https://code.claude.com/docs/pt/settings-reference#spellcheck) de três lugares e a ignora no `.claude/settings.json` e `.claude/settings.local.json` de um projeto. Ative-a em qualquer um que você use:

539 539 

540**Configurações do usuário**540> [tab] Configurações do usuário

541 541>

542Adicione `spellcheck` a `~/.claude/settings.json`. Ela se aplica em todos os projetos que você abre, como o resto de suas [configurações do usuário](https://code.claude.com/docs/pt/settings.md#where-settings-live):542> Adicione `spellcheck` a `~/.claude/settings.json`. Ela se aplica em todos os projetos que você abre, como o resto de suas [configurações do usuário](https://code.claude.com/docs/pt/settings.md#where-settings-live):

543 543>

544```json theme={null}544> ```json theme={null}

545{545> {

546 "spellcheck": { "enabled": true }546> "spellcheck": { "enabled": true }

547}547> }

548```548> ```

549 

550**Linha de comando**

551 

552Salve `spellcheck` em um arquivo JSON, como `spellcheck.json`:

553 

554```json theme={null}

555{

556 "spellcheck": { "enabled": true }

557}

558```

559 

560Em seguida, passe o arquivo para `--settings`. Ela se aplica apenas a essa sessão:

561 

562```bash theme={null}

563claude --settings spellcheck.json

564```

565 

566**Configurações gerenciadas**

567 549 

568Adicione `spellcheck` a uma das [fontes de configurações gerenciadas](https://code.claude.com/docs/pt/permissions.md#managed-settings) de sua organização. Ela se aplica a todos os usuários que recebem essas configurações, e eles não podem desativá-la:550> [tab] Linha de comando

551>

552> Salve `spellcheck` em um arquivo JSON, como `spellcheck.json`:

553>

554> ```json theme={null}

555> {

556> "spellcheck": { "enabled": true }

557> }

558> ```

559>

560> Em seguida, passe o arquivo para `--settings`. Ela se aplica apenas a essa sessão:

561>

562> ```bash theme={null}

563> claude --settings spellcheck.json

564> ```

569 565 

570```json theme={null}566> [tab] Configurações gerenciadas

571{567>

572 "spellcheck": { "enabled": true }568> Adicione `spellcheck` a uma das [fontes de configurações gerenciadas](https://code.claude.com/docs/pt/permissions.md#managed-settings) de sua organização. Ela se aplica a todos os usuários que recebem essas configurações, e eles não podem desativá-la:

573}569>

574```570> ```json theme={null}

571> {

572> "spellcheck": { "enabled": true }

573> }

574> ```

575 575 

576Para verificar se a verificação de ortografia está ativada, digite uma palavra com erro de ortografia e um espaço. Claude Code sublinha a palavra. Se não fizer isso, consulte [Quando Claude Code não sublinha nada](#when-claude-code-underlines-nothing). Para desativar a verificação de ortografia novamente, defina `enabled` como `false` no mesmo lugar ou remova `spellcheck`.576Para verificar se a verificação de ortografia está ativada, digite uma palavra com erro de ortografia e um espaço. Claude Code sublinha a palavra. Se não fizer isso, consulte [Quando Claude Code não sublinha nada](#when-claude-code-underlines-nothing). Para desativar a verificação de ortografia novamente, defina `enabled` como `false` no mesmo lugar ou remova `spellcheck`.

577 577 

jetbrains.md +1 −1

Details

41 41 

42Se `claude` estiver instalado em algum lugar que seu IDE não consiga encontrar, defina o caminho completo na [configuração do comando Claude](#general-settings) do plugin.42Se `claude` estiver instalado em algum lugar que seu IDE não consiga encontrar, defina o caminho completo na [configuração do comando Claude](#general-settings) do plugin.

43 43 

44Claude Code funciona com qualquer assinatura Claude paga (Pro, Max, Team ou Enterprise) ou uma conta Claude Console, e nenhuma chave de API é necessária. Você será solicitado a [fazer login](https://code.claude.com/docs/pt/authentication.md#log-in-to-claude-code) na primeira vez que executar `claude`.44Claude Code funciona com qualquer assinatura Claude paga (Pro, Max, Ultra, Team ou Enterprise) ou uma conta Claude Console, e nenhuma chave de API é necessária. Você será solicitado a [fazer login](https://code.claude.com/docs/pt/authentication.md#log-in-to-claude-code) na primeira vez que executar `claude`.

45 45 

46## Uso46## Uso

47 47 

Details

73 73 

74Substitua os valores pelos que sua equipe de gateway forneceu:74Substitua os valores pelos que sua equipe de gateway forneceu:

75 75 

76**Bash ou Zsh**76> [tab] Bash ou Zsh

77 77>

78```bash theme={null}78> ```bash theme={null}

79export ANTHROPIC_BASE_URL=https://llm-gateway.example.com79> export ANTHROPIC_BASE_URL=https://llm-gateway.example.com

80export ANTHROPIC_AUTH_TOKEN=sk-gateway-key80> export ANTHROPIC_AUTH_TOKEN=sk-gateway-key

81```81> ```

82 

83**PowerShell**

84 82 

85```powershell theme={null}83> [tab] PowerShell

86$env:ANTHROPIC_BASE_URL = "https://llm-gateway.example.com"84>

87$env:ANTHROPIC_AUTH_TOKEN = "sk-gateway-key"85> ```powershell theme={null}

88```86> $env:ANTHROPIC_BASE_URL = "https://llm-gateway.example.com"

87> $env:ANTHROPIC_AUTH_TOKEN = "sk-gateway-key"

88> ```

89 89 

90As exportações de shell se aplicam apenas a essa sessão de terminal e aos programas iniciados a partir dela. Um editor iniciado do dock ou menu Iniciar não as verá. Para torná-las persistentes em novos terminais, adicione as mesmas linhas ao seu perfil de shell, como `~/.zshrc`, `~/.bashrc` ou seu `$PROFILE` do PowerShell.90As exportações de shell se aplicam apenas a essa sessão de terminal e aos programas iniciados a partir dela. Um editor iniciado do dock ou menu Iniciar não as verá. Para torná-las persistentes em novos terminais, adicione as mesmas linhas ao seu perfil de shell, como `~/.zshrc`, `~/.bashrc` ou seu `$PROFILE` do PowerShell.

91 91 


119 119 

120Com as variáveis exportadas em seu shell, envie uma solicitação de um token para o gateway diretamente. Isso confirma que a URL e a credencial funcionam antes de você abrir Claude Code, para que uma falha aponte para o gateway em vez de sua configuração. Os comandos abaixo leem as variáveis do shell, então eles precisam das [exportações de shell](#set-as-shell-environment-variables) mesmo se você também colocar os valores em um arquivo de configurações.120Com as variáveis exportadas em seu shell, envie uma solicitação de um token para o gateway diretamente. Isso confirma que a URL e a credencial funcionam antes de você abrir Claude Code, para que uma falha aponte para o gateway em vez de sua configuração. Os comandos abaixo leem as variáveis do shell, então eles precisam das [exportações de shell](#set-as-shell-environment-variables) mesmo se você também colocar os valores em um arquivo de configurações.

121 121 

122**Bash ou Zsh**122> [tab] Bash ou Zsh

123 123>

124```bash theme={null}124> ```bash theme={null}

125curl -sS -w '\n%{http_code}\n' -X POST "$ANTHROPIC_BASE_URL/v1/messages" \125> curl -sS -w '\n%{http_code}\n' -X POST "$ANTHROPIC_BASE_URL/v1/messages" \

126 -H "Authorization: Bearer $ANTHROPIC_AUTH_TOKEN" \126> -H "Authorization: Bearer $ANTHROPIC_AUTH_TOKEN" \

127 -H "anthropic-version: 2023-06-01" \127> -H "anthropic-version: 2023-06-01" \

128 -H "content-type: application/json" \128> -H "content-type: application/json" \

129 -d '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'129> -d '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'

130```130> ```

131 131 

132**PowerShell**132> [tab] PowerShell

133 133>

134```powershell theme={null}134> ```powershell theme={null}

135Invoke-RestMethod -Method Post -Uri "$env:ANTHROPIC_BASE_URL/v1/messages" `135> Invoke-RestMethod -Method Post -Uri "$env:ANTHROPIC_BASE_URL/v1/messages" `

136 -Headers @{ "Authorization" = "Bearer $env:ANTHROPIC_AUTH_TOKEN"; "anthropic-version" = "2023-06-01" } `136> -Headers @{ "Authorization" = "Bearer $env:ANTHROPIC_AUTH_TOKEN"; "anthropic-version" = "2023-06-01" } `

137 -ContentType "application/json" `137> -ContentType "application/json" `

138 -Body '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'138> -Body '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'

139```139> ```

140 140 

141Se seu gateway espera chaves no cabeçalho `x-api-key`, substitua o cabeçalho `Authorization` por `x-api-key: $ANTHROPIC_API_KEY` no comando Bash, ou a entrada da tabela hash `"Authorization"` por `"x-api-key" = "$env:ANTHROPIC_API_KEY"` no comando PowerShell.141Se seu gateway espera chaves no cabeçalho `x-api-key`, substitua o cabeçalho `Authorization` por `x-api-key: $ANTHROPIC_API_KEY` no comando Bash, ou a entrada da tabela hash `"Authorization"` por `"x-api-key" = "$env:ANTHROPIC_API_KEY"` no comando PowerShell.

142 142 


274 274 

275Alguns gateways roteiam ou marcam solicitações usando um cabeçalho personalizado além da credencial, por exemplo um identificador de locatário ou uma chave de roteamento. Para enviar um, defina [`ANTHROPIC_CUSTOM_HEADERS`](https://code.claude.com/docs/pt/env-vars) com um par `Name: Value` por linha. O exemplo abaixo adiciona um cabeçalho de roteamento nomeado `X-Org-Route`:275Alguns gateways roteiam ou marcam solicitações usando um cabeçalho personalizado além da credencial, por exemplo um identificador de locatário ou uma chave de roteamento. Para enviar um, defina [`ANTHROPIC_CUSTOM_HEADERS`](https://code.claude.com/docs/pt/env-vars) com um par `Name: Value` por linha. O exemplo abaixo adiciona um cabeçalho de roteamento nomeado `X-Org-Route`:

276 276 

277**Bash ou Zsh**277> [tab] Bash ou Zsh

278 278>

279```bash theme={null}279> ```bash theme={null}

280export ANTHROPIC_CUSTOM_HEADERS="X-Org-Route: prod"280> export ANTHROPIC_CUSTOM_HEADERS="X-Org-Route: prod"

281```281> ```

282 

283**PowerShell**

284 282 

285```powershell theme={null}283> [tab] PowerShell

286$env:ANTHROPIC_CUSTOM_HEADERS = "X-Org-Route: prod"284>

287```285> ```powershell theme={null}

286> $env:ANTHROPIC_CUSTOM_HEADERS = "X-Org-Route: prod"

287> ```

288 288 

289Você também pode definir `ANTHROPIC_CUSTOM_HEADERS` no bloco `env` de um arquivo de configurações. Use `\n` entre pares lá, já que strings JSON não podem abranger várias linhas:289Você também pode definir `ANTHROPIC_CUSTOM_HEADERS` no bloco `env` de um arquivo de configurações. Use `\n` entre pares lá, já que strings JSON não podem abranger várias linhas:

290 290 


318 318 

319O auxiliar é qualquer comando de shell que imprime a credencial atual para stdout. Claude Code o executa através do seu shell do sistema, então no Windows pode ser um executável ou uma invocação do PowerShell. Faça o comando imprimir nada além da credencial. No Claude Code v2.1.227 ou posterior, um banner ou uma linha de log impressa junto com a chave faz o [auxiliar falhar](https://code.claude.com/docs/pt/errors.md#your-apikeyhelper-script-is-failing). Escreva o script, torne-o executável e referencie-o de `apiKeyHelper` em seu [arquivo de configurações](https://code.claude.com/docs/pt/settings.md):319O auxiliar é qualquer comando de shell que imprime a credencial atual para stdout. Claude Code o executa através do seu shell do sistema, então no Windows pode ser um executável ou uma invocação do PowerShell. Faça o comando imprimir nada além da credencial. No Claude Code v2.1.227 ou posterior, um banner ou uma linha de log impressa junto com a chave faz o [auxiliar falhar](https://code.claude.com/docs/pt/errors.md#your-apikeyhelper-script-is-failing). Escreva o script, torne-o executável e referencie-o de `apiKeyHelper` em seu [arquivo de configurações](https://code.claude.com/docs/pt/settings.md):

320 320 

321**Bash ou Zsh**321> [tab] Bash ou Zsh

322 322>

323Por exemplo, um script que lê de um vault:323> Por exemplo, um script que lê de um vault:

324 324>

325```bash theme={null}325> ```bash theme={null}

326#!/bin/bash326> #!/bin/bash

327vault kv get -field=api_key secret/llm-gateway/claude-code327> vault kv get -field=api_key secret/llm-gateway/claude-code

328```328> ```

329 329>

330Referencie seu caminho em `~/.claude/settings.json`:330> Referencie seu caminho em `~/.claude/settings.json`:

331 331>

332```json theme={null}332> ```json theme={null}

333{333> {

334 "apiKeyHelper": "~/bin/get-gateway-key.sh"334> "apiKeyHelper": "~/bin/get-gateway-key.sh"

335}335> }

336```336> ```

337 

338**PowerShell**

339 

340Por exemplo, um script que lê de um vault:

341 

342```powershell theme={null}

343vault kv get -field=api_key secret/llm-gateway/claude-code

344```

345 

346Referencie a invocação do PowerShell em `%USERPROFILE%\.claude\settings.json`, escapando as barras invertidas na string JSON:

347 337 

348```json theme={null}338> [tab] PowerShell

349{339>

350 "apiKeyHelper": "powershell -NoProfile -File C:\\scripts\\get-gateway-key.ps1"340> Por exemplo, um script que lê de um vault:

351}341>

352```342> ```powershell theme={null}

343> vault kv get -field=api_key secret/llm-gateway/claude-code

344> ```

345>

346> Referencie a invocação do PowerShell em `%USERPROFILE%\.claude\settings.json`, escapando as barras invertidas na string JSON:

347>

348> ```json theme={null}

349> {

350> "apiKeyHelper": "powershell -NoProfile -File C:\\scripts\\get-gateway-key.ps1"

351> }

352> ```

353 353 

354Claude Code armazena em cache a saída do auxiliar por cinco minutos por padrão e re-executa o auxiliar após o tempo de vida do cache expirar. Para alterar o tempo de vida, defina `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` em milissegundos, por exemplo `CLAUDE_CODE_API_KEY_HELPER_TTL_MS=900000` para 15 minutos.354Claude Code armazena em cache a saída do auxiliar por cinco minutos por padrão e re-executa o auxiliar após o tempo de vida do cache expirar. Para alterar o tempo de vida, defina `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` em milissegundos, por exemplo `CLAUDE_CODE_API_KEY_HELPER_TTL_MS=900000` para 15 minutos.

355 355 


363 363 

364Para desativar esse tráfego, defina `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1` junto com as variáveis de gateway, no mesmo bloco de exportações de shell ou `env` do arquivo de configurações:364Para desativar esse tráfego, defina `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1` junto com as variáveis de gateway, no mesmo bloco de exportações de shell ou `env` do arquivo de configurações:

365 365 

366**Bash ou Zsh**366> [tab] Bash ou Zsh

367 367>

368```bash theme={null}368> ```bash theme={null}

369export CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1369> export CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1

370```370> ```

371 

372**PowerShell**

373 371 

374```powershell theme={null}372> [tab] PowerShell

375$env:CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC = "1"373>

376```374> ```powershell theme={null}

375> $env:CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC = "1"

376> ```

377 377 

378Definir a variável tem esses efeitos e limitações:378Definir a variável tem esses efeitos e limitações:

379 379 


398 398 

399Deixe `AWS_BEARER_TOKEN_BEDROCK` indefinido quando o gateway emite sua própria credencial. Se você o definir, Claude Code envia essa [chave de API Amazon Bedrock](https://code.claude.com/docs/pt/amazon-bedrock.md#2-configure-aws-credentials) como o cabeçalho `Authorization` em vez de seu token de gateway, mesmo com `CLAUDE_CODE_SKIP_BEDROCK_AUTH` definido.399Deixe `AWS_BEARER_TOKEN_BEDROCK` indefinido quando o gateway emite sua própria credencial. Se você o definir, Claude Code envia essa [chave de API Amazon Bedrock](https://code.claude.com/docs/pt/amazon-bedrock.md#2-configure-aws-credentials) como o cabeçalho `Authorization` em vez de seu token de gateway, mesmo com `CLAUDE_CODE_SKIP_BEDROCK_AUTH` definido.

400 400 

401**Bash ou Zsh**401> [tab] Bash ou Zsh

402 402>

403```bash theme={null}403> ```bash theme={null}

404export ANTHROPIC_BEDROCK_BASE_URL=https://llm-gateway.example.com/bedrock404> export ANTHROPIC_BEDROCK_BASE_URL=https://llm-gateway.example.com/bedrock

405export CLAUDE_CODE_SKIP_BEDROCK_AUTH=1405> export CLAUDE_CODE_SKIP_BEDROCK_AUTH=1

406export CLAUDE_CODE_USE_BEDROCK=1406> export CLAUDE_CODE_USE_BEDROCK=1

407```407> ```

408 

409**PowerShell**

410 408 

411```powershell theme={null}409> [tab] PowerShell

412$env:ANTHROPIC_BEDROCK_BASE_URL = "https://llm-gateway.example.com/bedrock"410>

413$env:CLAUDE_CODE_SKIP_BEDROCK_AUTH = "1"411> ```powershell theme={null}

414$env:CLAUDE_CODE_USE_BEDROCK = "1"412> $env:ANTHROPIC_BEDROCK_BASE_URL = "https://llm-gateway.example.com/bedrock"

415```413> $env:CLAUDE_CODE_SKIP_BEDROCK_AUTH = "1"

414> $env:CLAUDE_CODE_USE_BEDROCK = "1"

415> ```

416 416 

417#### Google Cloud's Agent Platform417#### Google Cloud's Agent Platform

418 418 

419Substitua o ID do projeto e a região pelos seus próprios valores. Claude Code inclui ambos no caminho de cada solicitação que envia para o gateway:419Substitua o ID do projeto e a região pelos seus próprios valores. Claude Code inclui ambos no caminho de cada solicitação que envia para o gateway:

420 420 

421**Bash ou Zsh**421> [tab] Bash ou Zsh

422 422>

423```bash theme={null}423> ```bash theme={null}

424export ANTHROPIC_VERTEX_BASE_URL=https://llm-gateway.example.com/vertex424> export ANTHROPIC_VERTEX_BASE_URL=https://llm-gateway.example.com/vertex

425export ANTHROPIC_VERTEX_PROJECT_ID=your-gcp-project-id425> export ANTHROPIC_VERTEX_PROJECT_ID=your-gcp-project-id

426export CLAUDE_CODE_SKIP_VERTEX_AUTH=1426> export CLAUDE_CODE_SKIP_VERTEX_AUTH=1

427export CLAUDE_CODE_USE_VERTEX=1427> export CLAUDE_CODE_USE_VERTEX=1

428export CLOUD_ML_REGION=us-east5428> export CLOUD_ML_REGION=us-east5

429```429> ```

430 430 

431**PowerShell**431> [tab] PowerShell

432 432>

433```powershell theme={null}433> ```powershell theme={null}

434$env:ANTHROPIC_VERTEX_BASE_URL = "https://llm-gateway.example.com/vertex"434> $env:ANTHROPIC_VERTEX_BASE_URL = "https://llm-gateway.example.com/vertex"

435$env:ANTHROPIC_VERTEX_PROJECT_ID = "your-gcp-project-id"435> $env:ANTHROPIC_VERTEX_PROJECT_ID = "your-gcp-project-id"

436$env:CLAUDE_CODE_SKIP_VERTEX_AUTH = "1"436> $env:CLAUDE_CODE_SKIP_VERTEX_AUTH = "1"

437$env:CLAUDE_CODE_USE_VERTEX = "1"437> $env:CLAUDE_CODE_USE_VERTEX = "1"

438$env:CLOUD_ML_REGION = "us-east5"438> $env:CLOUD_ML_REGION = "us-east5"

439```439> ```

440 440 

441O bloco cobre roteamento e autenticação. As substituições de região e pins de modelo da [configuração do Agent Platform](https://code.claude.com/docs/pt/google-vertex-ai.md#4-configure-claude-code) se aplicam através de um gateway também:441O bloco cobre roteamento e autenticação. As substituições de região e pins de modelo da [configuração do Agent Platform](https://code.claude.com/docs/pt/google-vertex-ai.md#4-configure-claude-code) se aplicam através de um gateway também:

442 442 


450 450 

451Para um gateway que injeta seu próprio cabeçalho `Authorization`, defina `CLAUDE_CODE_SKIP_FOUNDRY_AUTH=1` e deixe ambas as variáveis de credencial indefinidas. Claude Code então envia requisições sem uma credencial do Azure e preserva o cabeçalho `Authorization` que você fornece, por exemplo através de `ANTHROPIC_CUSTOM_HEADERS`.451Para um gateway que injeta seu próprio cabeçalho `Authorization`, defina `CLAUDE_CODE_SKIP_FOUNDRY_AUTH=1` e deixe ambas as variáveis de credencial indefinidas. Claude Code então envia requisições sem uma credencial do Azure e preserva o cabeçalho `Authorization` que você fornece, por exemplo através de `ANTHROPIC_CUSTOM_HEADERS`.

452 452 

453**Bash ou Zsh**453> [tab] Bash ou Zsh

454 454>

455```bash theme={null}455> ```bash theme={null}

456export ANTHROPIC_FOUNDRY_BASE_URL=https://llm-gateway.example.com/foundry456> export ANTHROPIC_FOUNDRY_BASE_URL=https://llm-gateway.example.com/foundry

457export ANTHROPIC_FOUNDRY_API_KEY=sk-gateway-key457> export ANTHROPIC_FOUNDRY_API_KEY=sk-gateway-key

458export CLAUDE_CODE_USE_FOUNDRY=1458> export CLAUDE_CODE_USE_FOUNDRY=1

459```459> ```

460 

461**PowerShell**

462 460 

463```powershell theme={null}461> [tab] PowerShell

464$env:ANTHROPIC_FOUNDRY_BASE_URL = "https://llm-gateway.example.com/foundry"462>

465$env:ANTHROPIC_FOUNDRY_API_KEY = "sk-gateway-key"463> ```powershell theme={null}

466$env:CLAUDE_CODE_USE_FOUNDRY = "1"464> $env:ANTHROPIC_FOUNDRY_BASE_URL = "https://llm-gateway.example.com/foundry"

467```465> $env:ANTHROPIC_FOUNDRY_API_KEY = "sk-gateway-key"

466> $env:CLAUDE_CODE_USE_FOUNDRY = "1"

467> ```

468 468 

469#### Claude Platform on AWS469#### Claude Platform on AWS

470 470 

471Consulte [Claude Platform on AWS](https://code.claude.com/docs/pt/claude-platform-on-aws.md) para o ID do workspace.471Consulte [Claude Platform on AWS](https://code.claude.com/docs/pt/claude-platform-on-aws.md) para o ID do workspace.

472 472 

473**Bash ou Zsh**473> [tab] Bash ou Zsh

474 474>

475```bash theme={null}475> ```bash theme={null}

476export ANTHROPIC_AWS_BASE_URL=https://llm-gateway.example.com/anthropic-aws476> export ANTHROPIC_AWS_BASE_URL=https://llm-gateway.example.com/anthropic-aws

477export ANTHROPIC_AWS_WORKSPACE_ID=wrkspc_01ABCDEFGHIJKLMN477> export ANTHROPIC_AWS_WORKSPACE_ID=wrkspc_01ABCDEFGHIJKLMN

478export CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH=1478> export CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH=1

479export CLAUDE_CODE_USE_ANTHROPIC_AWS=1479> export CLAUDE_CODE_USE_ANTHROPIC_AWS=1

480```480> ```

481 481 

482**PowerShell**482> [tab] PowerShell

483 483>

484```powershell theme={null}484> ```powershell theme={null}

485$env:ANTHROPIC_AWS_BASE_URL = "https://llm-gateway.example.com/anthropic-aws"485> $env:ANTHROPIC_AWS_BASE_URL = "https://llm-gateway.example.com/anthropic-aws"

486$env:ANTHROPIC_AWS_WORKSPACE_ID = "wrkspc_01ABCDEFGHIJKLMN"486> $env:ANTHROPIC_AWS_WORKSPACE_ID = "wrkspc_01ABCDEFGHIJKLMN"

487$env:CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH = "1"487> $env:CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH = "1"

488$env:CLAUDE_CODE_USE_ANTHROPIC_AWS = "1"488> $env:CLAUDE_CODE_USE_ANTHROPIC_AWS = "1"

489```489> ```

490 490 

491#### Confirmar a rota do provedor491#### Confirmar a rota do provedor

492 492 

Details

62* `<gateway-key>` é qualquer credencial que permite chamar o gateway agora: uma chave administrativa, uma chave de teste ou sua própria chave de desenvolvedor se você já tiver emitido uma. Nem todo produto de gateway possui uma credencial de administrador separada; se o seu não tiver, emita uma chave de desenvolvedor para você mesmo em [Emita credenciais de desenvolvedor](#issue-developer-credentials) primeiro62* `<gateway-key>` é qualquer credencial que permite chamar o gateway agora: uma chave administrativa, uma chave de teste ou sua própria chave de desenvolvedor se você já tiver emitido uma. Nem todo produto de gateway possui uma credencial de administrador separada; se o seu não tiver, emita uma chave de desenvolvedor para você mesmo em [Emita credenciais de desenvolvedor](#issue-developer-credentials) primeiro

63* `model` é um nome de modelo Claude que seu gateway está configurado para rotear. O exemplo usa `claude-sonnet-4-6`; substitua por um nome que você configurou63* `model` é um nome de modelo Claude que seu gateway está configurado para rotear. O exemplo usa `claude-sonnet-4-6`; substitua por um nome que você configurou

64 64 

65**Bash ou Zsh**65> [tab] Bash ou Zsh

66 66>

67```bash theme={null}67> ```bash theme={null}

68curl -X POST "https://llm-gateway.example.com/v1/messages" \68> curl -X POST "https://llm-gateway.example.com/v1/messages" \

69 -H "Authorization: Bearer <gateway-key>" \69> -H "Authorization: Bearer <gateway-key>" \

70 -H "anthropic-version: 2023-06-01" \70> -H "anthropic-version: 2023-06-01" \

71 -H "content-type: application/json" \71> -H "content-type: application/json" \

72 -d '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'72> -d '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'

73```73> ```

74 74 

75**PowerShell**75> [tab] PowerShell

76 76>

77```powershell theme={null}77> ```powershell theme={null}

78Invoke-RestMethod -Method Post -Uri "https://llm-gateway.example.com/v1/messages" `78> Invoke-RestMethod -Method Post -Uri "https://llm-gateway.example.com/v1/messages" `

79 -Headers @{ "Authorization" = "Bearer <gateway-key>"; "anthropic-version" = "2023-06-01" } `79> -Headers @{ "Authorization" = "Bearer <gateway-key>"; "anthropic-version" = "2023-06-01" } `

80 -ContentType "application/json" `80> -ContentType "application/json" `

81 -Body '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'81> -Body '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'

82```82> ```

83 83 

84**Checkpoint**: um `200` com um campo `content` significa que o gateway alcançou o provedor com esse nome de modelo. Um `404` significa que esse nome não é roteado no gateway; um `401` do provedor significa que a credencial do provedor do gateway está incorreta.84**Checkpoint**: um `200` com um campo `content` significa que o gateway alcançou o provedor com esse nome de modelo. Um `404` significa que esse nome não é roteado no gateway; um `401` do provedor significa que a credencial do provedor do gateway está incorreta.

85 85 


95 95 

96Confirme que uma chave recém-emitida funciona contra o gateway com a mesma solicitação de [Confirme se o gateway roteia seus modelos](#confirm-the-gateway-routes-your-models), substituindo `<gateway-key>` pela nova `<developer-key>`:96Confirme que uma chave recém-emitida funciona contra o gateway com a mesma solicitação de [Confirme se o gateway roteia seus modelos](#confirm-the-gateway-routes-your-models), substituindo `<gateway-key>` pela nova `<developer-key>`:

97 97 

98**Bash ou Zsh**98> [tab] Bash ou Zsh

99 99>

100```bash theme={null}100> ```bash theme={null}

101curl -X POST "https://llm-gateway.example.com/v1/messages" \101> curl -X POST "https://llm-gateway.example.com/v1/messages" \

102 -H "Authorization: Bearer <developer-key>" \102> -H "Authorization: Bearer <developer-key>" \

103 -H "anthropic-version: 2023-06-01" \103> -H "anthropic-version: 2023-06-01" \

104 -H "content-type: application/json" \104> -H "content-type: application/json" \

105 -d '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'105> -d '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'

106```106> ```

107 107 

108**PowerShell**108> [tab] PowerShell

109 109>

110```powershell theme={null}110> ```powershell theme={null}

111Invoke-RestMethod -Method Post -Uri "https://llm-gateway.example.com/v1/messages" `111> Invoke-RestMethod -Method Post -Uri "https://llm-gateway.example.com/v1/messages" `

112 -Headers @{ "Authorization" = "Bearer <developer-key>"; "anthropic-version" = "2023-06-01" } `112> -Headers @{ "Authorization" = "Bearer <developer-key>"; "anthropic-version" = "2023-06-01" } `

113 -ContentType "application/json" `113> -ContentType "application/json" `

114 -Body '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'114> -Body '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'

115```115> ```

116 116 

117**Checkpoint**: um `200` com um campo `content` significa que a chave do desenvolvedor alcança o gateway e o gateway a encaminha. Um `401` aqui, quando [a etapa anterior](#confirm-the-gateway-routes-your-models) foi bem-sucedida, significa que a chave do desenvolvedor está incorreta ou ainda não entrou em vigor no gateway.117**Checkpoint**: um `200` com um campo `content` significa que a chave do desenvolvedor alcança o gateway e o gateway a encaminha. Um `401` aqui, quando [a etapa anterior](#confirm-the-gateway-routes-your-models) foi bem-sucedida, significa que a chave do desenvolvedor está incorreta ou ainda não entrou em vigor no gateway.

118 118 


122 122 

123Execute Claude Code através do gateway você mesmo antes de distribuir qualquer coisa, usando a mesma configuração que a implantação entregará em toda a frota. Digite-os diretamente em um terminal, não em um arquivo `.env` ou arquivo de configurações; eles duram apenas para esta sessão de terminal, então fechá-la retorna sua máquina à sua configuração normal. Use `ANTHROPIC_API_KEY` em vez de `ANTHROPIC_AUTH_TOKEN` se seu gateway lê o cabeçalho `x-api-key`:123Execute Claude Code através do gateway você mesmo antes de distribuir qualquer coisa, usando a mesma configuração que a implantação entregará em toda a frota. Digite-os diretamente em um terminal, não em um arquivo `.env` ou arquivo de configurações; eles duram apenas para esta sessão de terminal, então fechá-la retorna sua máquina à sua configuração normal. Use `ANTHROPIC_API_KEY` em vez de `ANTHROPIC_AUTH_TOKEN` se seu gateway lê o cabeçalho `x-api-key`:

124 124 

125**Bash ou Zsh**125> [tab] Bash ou Zsh

126 126>

127```bash theme={null}127> ```bash theme={null}

128export ANTHROPIC_BASE_URL=https://llm-gateway.example.com128> export ANTHROPIC_BASE_URL=https://llm-gateway.example.com

129export ANTHROPIC_AUTH_TOKEN="<developer-key>"129> export ANTHROPIC_AUTH_TOKEN="<developer-key>"

130```130> ```

131 

132**PowerShell**

133 131 

134```powershell theme={null}132> [tab] PowerShell

135$env:ANTHROPIC_BASE_URL = "https://llm-gateway.example.com"133>

136$env:ANTHROPIC_AUTH_TOKEN = "<developer-key>"134> ```powershell theme={null}

137```135> $env:ANTHROPIC_BASE_URL = "https://llm-gateway.example.com"

136> $env:ANTHROPIC_AUTH_TOKEN = "<developer-key>"

137> ```

138 138 

139Em seguida, envie um prompt único através do gateway:139Em seguida, envie um prompt único através do gateway:

140 140 


224 224 

225Confirme que tudo funciona a partir de uma máquina de desenvolvedor, não do host do gateway, para que o teste cubra o caminho de rede que os desenvolvedores usam. Envie uma solicitação de streaming, que verifica o endpoint, passagem de streaming e roteamento de modelo de uma vez:225Confirme que tudo funciona a partir de uma máquina de desenvolvedor, não do host do gateway, para que o teste cubra o caminho de rede que os desenvolvedores usam. Envie uma solicitação de streaming, que verifica o endpoint, passagem de streaming e roteamento de modelo de uma vez:

226 226 

227**Bash ou Zsh**227> [tab] Bash ou Zsh

228 228>

229```bash theme={null}229> ```bash theme={null}

230curl -N -X POST "https://llm-gateway.example.com/v1/messages" \230> curl -N -X POST "https://llm-gateway.example.com/v1/messages" \

231 -H "Authorization: Bearer <developer-key>" \231> -H "Authorization: Bearer <developer-key>" \

232 -H "anthropic-version: 2023-06-01" \232> -H "anthropic-version: 2023-06-01" \

233 -H "content-type: application/json" \233> -H "content-type: application/json" \

234 -d '{"model": "claude-sonnet-4-6", "max_tokens": 16, "stream": true, "messages": [{"role": "user", "content": "count to 3"}]}'234> -d '{"model": "claude-sonnet-4-6", "max_tokens": 16, "stream": true, "messages": [{"role": "user", "content": "count to 3"}]}'

235```235> ```

236 236 

237**PowerShell**237> [tab] PowerShell

238 238>

239```powershell theme={null}239> ```powershell theme={null}

240$body = '{"model": "claude-sonnet-4-6", "max_tokens": 16, "stream": true, "messages": [{"role": "user", "content": "count to 3"}]}'240> $body = '{"model": "claude-sonnet-4-6", "max_tokens": 16, "stream": true, "messages": [{"role": "user", "content": "count to 3"}]}'

241$body | curl.exe -N -X POST "https://llm-gateway.example.com/v1/messages" `241> $body | curl.exe -N -X POST "https://llm-gateway.example.com/v1/messages" `

242 -H "Authorization: Bearer <developer-key>" `242> -H "Authorization: Bearer <developer-key>" `

243 -H "anthropic-version: 2023-06-01" `243> -H "anthropic-version: 2023-06-01" `

244 -H "content-type: application/json" `244> -H "content-type: application/json" `

245 --data-binary '@-'245> --data-binary '@-'

246```246> ```

247 247 

248Você deve ver linhas `data:` chegarem incrementalmente. A resposta inteira chegando de uma vez após uma pausa significa que o gateway está armazenando em buffer, o que paralisa Claude Code; um `404` significa que o nome do modelo não é roteado. Repita por nome de modelo.248Você deve ver linhas `data:` chegarem incrementalmente. A resposta inteira chegando de uma vez após uma pausa significa que o gateway está armazenando em buffer, o que paralisa Claude Code; um `404` significa que o nome do modelo não é roteado. Repita por nome de modelo.

249 249 

managed-mcp.md +5 −5

Details

403 403 

404Os acordeões abaixo percorrem como um servidor é avaliado contra outras combinações de lista de permissão e bloqueio.404Os acordeões abaixo percorrem como um servidor é avaliado contra outras combinações de lista de permissão e bloqueio.

405 405 

406> **Lista de permissão apenas de URL**406> [accordion] Lista de permissão apenas de URL

407>407>

408> ```json theme={null}408> ```json theme={null}

409> {409> {


421> | Servidor HTTP em `https://external.example.com/mcp` | Bloqueado: não corresponde a nenhum padrão de URL |421> | Servidor HTTP em `https://external.example.com/mcp` | Bloqueado: não corresponde a nenhum padrão de URL |

422> | Servidor stdio com qualquer comando | Bloqueado: sem entradas de nome ou comando para corresponder |422> | Servidor stdio com qualquer comando | Bloqueado: sem entradas de nome ou comando para corresponder |

423 423 

424> **Lista de permissão apenas de comando**424> [accordion] Lista de permissão apenas de comando

425>425>

426> ```json theme={null}426> ```json theme={null}

427> {427> {


437> | Servidor stdio com `["node", "server.js"]` | Bloqueado: não corresponde ao comando |437> | Servidor stdio com `["node", "server.js"]` | Bloqueado: não corresponde ao comando |

438> | Servidor HTTP nomeado `my-api` | Bloqueado: sem entradas de nome para corresponder |438> | Servidor HTTP nomeado `my-api` | Bloqueado: sem entradas de nome para corresponder |

439 439 

440> **Lista de permissão mista de nome e comando**440> [accordion] Lista de permissão mista de nome e comando

441>441>

442> ```json theme={null}442> ```json theme={null}

443> {443> {


456> | Servidor HTTP nomeado `github` | Permitido: corresponde ao nome |456> | Servidor HTTP nomeado `github` | Permitido: corresponde ao nome |

457> | Servidor HTTP nomeado `other-api` | Bloqueado: nome não corresponde |457> | Servidor HTTP nomeado `other-api` | Bloqueado: nome não corresponde |

458 458 

459> **Lista de permissão apenas de nome**459> [accordion] Lista de permissão apenas de nome

460>460>

461> ```json theme={null}461> ```json theme={null}

462> {462> {


474> | Servidor HTTP nomeado `github` | Permitido: corresponde ao nome |474> | Servidor HTTP nomeado `github` | Permitido: corresponde ao nome |

475> | Qualquer servidor nomeado `other` | Bloqueado: nome não corresponde |475> | Qualquer servidor nomeado `other` | Bloqueado: nome não corresponde |

476 476 

477> **Lista de permissão com substituição de lista de bloqueio**477> [accordion] Lista de permissão com substituição de lista de bloqueio

478>478>

479> ```json theme={null}479> ```json theme={null}

480> {480> {

mcp.md +35 −35

Details

1039 1039 

1040As abas cobrem os dois comandos: `claude mcp add` recebe seu client ID e a porta de callback como flags, e `claude mcp add-json` os recebe em um objeto `oauth`. Se você registrou um URI de redirecionamento, defina a porta de callback como a porta desse URI.1040As abas cobrem os dois comandos: `claude mcp add` recebe seu client ID e a porta de callback como flags, e `claude mcp add-json` os recebe em um objeto `oauth`. Se você registrou um URI de redirecionamento, defina a porta de callback como a porta desse URI.

1041 1041 

1042**claude mcp add**1042> [tab] claude mcp add

1043 1043>

1044Use `--client-id` para passar o client ID do seu app. A flag `--client-secret` solicita o secret com entrada mascarada:1044> Use `--client-id` para passar o client ID do seu app. A flag `--client-secret` solicita o secret com entrada mascarada:

1045 1045>

1046```bash theme={null}1046> ```bash theme={null}

1047claude mcp add --transport http \1047> claude mcp add --transport http \

1048 --client-id your-client-id --client-secret --callback-port 8080 \1048> --client-id your-client-id --client-secret --callback-port 8080 \

1049 my-server https://mcp.example.com/mcp1049> my-server https://mcp.example.com/mcp

1050```1050> ```

1051 

1052**claude mcp add-json**

1053 

1054Inclua o objeto `oauth` na configuração JSON e passe `--client-secret` como uma flag separada:

1055 

1056```bash theme={null}

1057claude mcp add-json my-server \

1058 '{"type":"http","url":"https://mcp.example.com/mcp","oauth":{"clientId":"your-client-id","callbackPort":8080}}' \

1059 --client-secret

1060```

1061 

1062**claude mcp add-json (somente porta de callback)**

1063 

1064Para fixar apenas a porta de callback e deixar o Claude Code registrar o cliente automaticamente, defina `callbackPort` sozinho:

1065 

1066```bash theme={null}

1067claude mcp add-json my-server \

1068 '{"type":"http","url":"https://mcp.example.com/mcp","oauth":{"callbackPort":8080}}'

1069```

1070 1051 

1071**CI / variável de ambiente**1052> [tab] claude mcp add-json

1053>

1054> Inclua o objeto `oauth` na configuração JSON e passe `--client-secret` como uma flag separada:

1055>

1056> ```bash theme={null}

1057> claude mcp add-json my-server \

1058> '{"type":"http","url":"https://mcp.example.com/mcp","oauth":{"clientId":"your-client-id","callbackPort":8080}}' \

1059> --client-secret

1060> ```

1072 1061 

1073Defina o secret por meio de uma variável de ambiente para pular o prompt interativo:1062> [tab] claude mcp add-json (somente porta de callback)

1063>

1064> Para fixar apenas a porta de callback e deixar o Claude Code registrar o cliente automaticamente, defina `callbackPort` sozinho:

1065>

1066> ```bash theme={null}

1067> claude mcp add-json my-server \

1068> '{"type":"http","url":"https://mcp.example.com/mcp","oauth":{"callbackPort":8080}}'

1069> ```

1074 1070 

1075```bash theme={null}1071> [tab] CI / variável de ambiente

1076MCP_CLIENT_SECRET=your-secret claude mcp add --transport http \1072>

1077 --client-id your-client-id --client-secret --callback-port 8080 \1073> Defina o secret por meio de uma variável de ambiente para pular o prompt interativo:

1078 my-server https://mcp.example.com/mcp1074>

1079```1075> ```bash theme={null}

1076> MCP_CLIENT_SECRET=your-secret claude mcp add --transport http \

1077> --client-id your-client-id --client-secret --callback-port 8080 \

1078> my-server https://mcp.example.com/mcp

1079> ```

1080 1080 

1081**3. Autentique no Claude Code**1081**3. Autentique no Claude Code**

1082 1082 

Details

286 286 

287Se um servidor não se conectar, verifique seu status com `/mcp` dentro de uma sessão ou `claude mcp list` do seu shell, depois combine o sintoma abaixo. O painel `/mcp` também permite que você se reconecte ou autentique sem sair da sessão.287Se um servidor não se conectar, verifique seu status com `/mcp` dentro de uma sessão ou `claude mcp list` do seu shell, depois combine o sintoma abaixo. O painel `/mcp` também permite que você se reconecte ou autentique sem sair da sessão.

288 288 

289> **/mcp shows No MCP servers configured**289> [accordion] /mcp shows No MCP servers configured

290>290>

291> O Claude Code não encontrou nenhum servidor para o diretório atual. As causas mais comuns:291> O Claude Code não encontrou nenhum servidor para o diretório atual. As causas mais comuns:

292>292>


294> * Você editou um arquivo de configuração no caminho errado. Os arquivos corretos são `~/.claude.json` e `<project>/.mcp.json`. O Claude Code não lê caminhos como `~/.claude/.mcp.json`, `~/.claude/config/mcp.json`, `~/.claude/mcp.json`, ou `%APPDATA%\Claude\mcp.json`. Para servidores com escopo de usuário, execute `claude mcp add --scope user`, que escreve na chave `mcpServers` em `~/.claude.json`; para servidores com escopo de projeto, edite `.mcp.json` na raiz do projeto.294> * Você editou um arquivo de configuração no caminho errado. Os arquivos corretos são `~/.claude.json` e `<project>/.mcp.json`. O Claude Code não lê caminhos como `~/.claude/.mcp.json`, `~/.claude/config/mcp.json`, `~/.claude/mcp.json`, ou `%APPDATA%\Claude\mcp.json`. Para servidores com escopo de usuário, execute `claude mcp add --scope user`, que escreve na chave `mcpServers` em `~/.claude.json`; para servidores com escopo de projeto, edite `.mcp.json` na raiz do projeto.

295> * Você escreveu uma entrada malformada em `.mcp.json`. O Claude Code pula essa entrada e ainda carrega as outras. Execute `claude mcp list` do seu shell e procure pelo aviso de análise, que nomeia o campo ofensivo.295> * Você escreveu uma entrada malformada em `.mcp.json`. O Claude Code pula essa entrada e ainda carrega as outras. Execute `claude mcp list` do seu shell e procure pelo aviso de análise, que nomeia o campo ofensivo.

296 296 

297> **Status shows Failed to connect or Connection error**297> [accordion] Status shows Failed to connect or Connection error

298>298>

299> Ambos os status significam que o servidor não iniciou ou a URL não respondeu. Eles também podem aparecer para servidores HTTP que rejeitam o token que você configurou em `headers.Authorization`; um servidor que quer um token que você não configurou mostra `! Needs authentication` em vez disso, coberto em [Conectar um servidor que requer login](#connect-a-server-that-requires-sign-in).299> Ambos os status significam que o servidor não iniciou ou a URL não respondeu. Eles também podem aparecer para servidores HTTP que rejeitam o token que você configurou em `headers.Authorization`; um servidor que quer um token que você não configurou mostra `! Needs authentication` em vez disso, coberto em [Conectar um servidor que requer login](#connect-a-server-that-requires-sign-in).

300>300>


334> Execute `claude mcp get <name>` e confirme que o comando mostrado lá corresponde ao que você acabou de executar. Se o comando mostrado diferir do que você digitou, você provavelmente omitiu o separador `--` antes do comando do servidor. Remova o servidor e readicione-o com `--` no lugar. Se você escreveu `.mcp.json` à mão, verifique sua sintaxe e localização. Antes da v2.1.285, `claude mcp get` não imprimia nenhuma linha `Command` para uma entrada stdio salva sem um campo `type`, como uma entrada `.mcp.json` escrita à mão. Nessas versões, execute `claude mcp list` em vez disso, que imprime a linha de comando de qualquer forma.334> Execute `claude mcp get <name>` e confirme que o comando mostrado lá corresponde ao que você acabou de executar. Se o comando mostrado diferir do que você digitou, você provavelmente omitiu o separador `--` antes do comando do servidor. Remova o servidor e readicione-o com `--` no lugar. Se você escreveu `.mcp.json` à mão, verifique sua sintaxe e localização. Antes da v2.1.285, `claude mcp get` não imprimia nenhuma linha `Command` para uma entrada stdio salva sem um campo `type`, como uma entrada `.mcp.json` escrita à mão. Nessas versões, execute `claude mcp list` em vez disso, que imprime a linha de comando de qualquer forma.

335> * O comando erros: a mensagem nomeia o que está faltando, como Node.js ou um navegador.335> * O comando erros: a mensagem nomeia o que está faltando, como Node.js ou um navegador.

336 336 

337> **Connection timed out at startup**337> [accordion] Connection timed out at startup

338>338>

339> O servidor levou mais tempo que o timeout de inicialização padrão de 30 segundos. A primeira execução de um servidor stdio pode ser lenta enquanto `npx` baixa o pacote. Aumente o limite com a variável de ambiente [`MCP_TIMEOUT`](https://code.claude.com/docs/pt/env-vars), em milissegundos:339> O servidor levou mais tempo que o timeout de inicialização padrão de 30 segundos. A primeira execução de um servidor stdio pode ser lenta enquanto `npx` baixa o pacote. Aumente o limite com a variável de ambiente [`MCP_TIMEOUT`](https://code.claude.com/docs/pt/env-vars), em milissegundos:

340>340>


350>350>

351> Antes da v2.1.299, algumas conexões com servidores HTTP que estavam ativos atingiam o timeout na inicialização independentemente de `MCP_TIMEOUT`. Se você usa uma dessas versões e um servidor HTTP que está ativo ainda atinge o timeout depois que você aumenta o limite, [atualize o Claude Code](https://code.claude.com/docs/pt/setup.md#update-claude-code).351> Antes da v2.1.299, algumas conexões com servidores HTTP que estavam ativos atingiam o timeout na inicialização independentemente de `MCP_TIMEOUT`. Se você usa uma dessas versões e um servidor HTTP que está ativo ainda atinge o timeout depois que você aumenta o limite, [atualize o Claude Code](https://code.claude.com/docs/pt/setup.md#update-claude-code).

352 352 

353> **Server already exists**353> [accordion] Server already exists

354>354>

355> Você já adicionou um servidor com esse nome no mesmo escopo. Remova a entrada existente primeiro ou escolha um nome diferente:355> Você já adicionou um servidor com esse nome no mesmo escopo. Remova a entrada existente primeiro ou escolha um nome diferente:

356>356>


360>360>

361> Se o nome existe em mais de um escopo, `remove` relata `exists in multiple scopes`. Passe `--scope` para escolher qual cópia deletar, por exemplo `claude mcp remove claude-code-docs --scope local`.361> Se o nome existe em mais de um escopo, `remove` relata `exists in multiple scopes`. Passe `--scope` para escolher qual cópia deletar, por exemplo `claude mcp remove claude-code-docs --scope local`.

362 362 

363> **Server connects but no tools appear**363> [accordion] Server connects but no tools appear

364>364>

365> Execute `/mcp` dentro de uma sessão e selecione o servidor para ver sua lista de ferramentas. Se a lista estiver vazia, o servidor iniciou mas não registrou nenhuma ferramenta, o que geralmente significa que está faltando uma variável de ambiente necessária como uma chave de API.365> Execute `/mcp` dentro de uma sessão e selecione o servidor para ver sua lista de ferramentas. Se a lista estiver vazia, o servidor iniciou mas não registrou nenhuma ferramenta, o que geralmente significa que está faltando uma variável de ambiente necessária como uma chave de API.

366>366>


368>368>

369> Antes da v2.1.302, `/mcp` mostrava o status `tools fetch failed` para um servidor usando a [revisão de protocolo 2026-07-28](https://code.claude.com/docs/pt/mcp.md#mcp-client-runtimes) que omitia `resultType`, `ttlMs` ou `cacheScope` de suas respostas. Se você usa uma dessas versões e um servidor mostra esse status, [atualize o Claude Code](https://code.claude.com/docs/pt/setup.md#update-claude-code).369> Antes da v2.1.302, `/mcp` mostrava o status `tools fetch failed` para um servidor usando a [revisão de protocolo 2026-07-28](https://code.claude.com/docs/pt/mcp.md#mcp-client-runtimes) que omitia `resultType`, `ttlMs` ou `cacheScope` de suas respostas. Se você usa uma dessas versões e um servidor mostra esse status, [atualize o Claude Code](https://code.claude.com/docs/pt/setup.md#update-claude-code).

370 370 

371> **Changes to .mcp.json don't take effect**371> [accordion] Changes to .mcp.json don't take effect

372>372>

373> O Claude Code lê `.mcp.json` na inicialização da sessão. Saia e reinicie a sessão após editar o arquivo.373> O Claude Code lê `.mcp.json` na inicialização da sessão. Saia e reinicie a sessão após editar o arquivo.

374>374>


380> claude mcp reset-project-choices380> claude mcp reset-project-choices

381> ```381> ```

382 382 

383> **OAuth sign-in fails or browser doesn't open**383> [accordion] OAuth sign-in fails or browser doesn't open

384>384>

385> Execute `/mcp`, selecione o servidor e escolha `Authenticate` novamente. Se o navegador não abrir automaticamente, copie a URL mostrada no terminal e abra-a manualmente. Consulte [Autenticar com servidores MCP remotos](https://code.claude.com/docs/pt/mcp.md#authenticate-with-remote-mcp-servers) para portas de callback fixas e credenciais pré-configuradas.385> Execute `/mcp`, selecione o servidor e escolha `Authenticate` novamente. Se o navegador não abrir automaticamente, copie a URL mostrada no terminal e abra-a manualmente. Consulte [Autenticar com servidores MCP remotos](https://code.claude.com/docs/pt/mcp.md#authenticate-with-remote-mcp-servers) para portas de callback fixas e credenciais pré-configuradas.

386 386 

mobile.md +2 −2

Details

39| [Cloud sessions](https://code.claude.com/docs/pt/claude-code-on-the-web.md) | Uma sessão na infraestrutura de nuvem, gerenciada pela Anthropic por padrão | Seu repositório está no GitHub e a tarefa deve continuar em execução depois que você guardar seu telefone. Consulte o [guia de início rápido da nuvem](https://code.claude.com/docs/pt/web-quickstart.md) para configurar. |39| [Cloud sessions](https://code.claude.com/docs/pt/claude-code-on-the-web.md) | Uma sessão na infraestrutura de nuvem, gerenciada pela Anthropic por padrão | Seu repositório está no GitHub e a tarefa deve continuar em execução depois que você guardar seu telefone. Consulte o [guia de início rápido da nuvem](https://code.claude.com/docs/pt/web-quickstart.md) para configurar. |

40| [Projects](https://code.claude.com/docs/pt/claude-projects.md) | Uma conversa onde Claude coordena threads paralelos de trabalho e relata de volta | Você tem um fluxo de trabalho relacionado em vez de uma tarefa e quer ver quais threads terminaram ou precisam de você. |40| [Projects](https://code.claude.com/docs/pt/claude-projects.md) | Uma conversa onde Claude coordena threads paralelos de trabalho e relata de volta | Você tem um fluxo de trabalho relacionado em vez de uma tarefa e quer ver quais threads terminaram ou precisam de você. |

41| [Remote Control](https://code.claude.com/docs/pt/remote-control.md) | Uma sessão do Claude Code em execução no seu computador | O trabalho precisa do seu sistema de arquivos local, ferramentas ou servidores MCP. |41| [Remote Control](https://code.claude.com/docs/pt/remote-control.md) | Uma sessão do Claude Code em execução no seu computador | O trabalho precisa do seu sistema de arquivos local, ferramentas ou servidores MCP. |

42| [Dispatch](https://code.claude.com/docs/pt/desktop.md#sessions-from-dispatch) | O aplicativo Desktop no seu computador | Você quer enviar uma tarefa e deixar o Dispatch decidir como executá-la. Requer um plano Pro ou Max. |42| [Dispatch](https://code.claude.com/docs/pt/desktop.md#sessions-from-dispatch) | O aplicativo Desktop no seu computador | Você quer enviar uma tarefa e deixar o Dispatch decidir como executá-la. Requer um plano Pro, Max ou Ultra. |

43 43 

44Se seu computador estiver desligado, use cloud sessions ou um projeto, que são executados na nuvem e continuam com seu laptop fechado. Remote Control e Dispatch dirigem sua própria máquina, portanto ela precisa permanecer ligada com Claude Code ou o aplicativo Desktop em execução. Se sua máquina hibernar durante uma sessão Remote Control, Claude Code se reconecta quando a máquina volta a ficar online.44Se seu computador estiver desligado, use cloud sessions ou um projeto, que são executados na nuvem e continuam com seu laptop fechado. Remote Control e Dispatch dirigem sua própria máquina, portanto ela precisa permanecer ligada com Claude Code ou o aplicativo Desktop em execução. Se sua máquina hibernar durante uma sessão Remote Control, Claude Code se reconecta quando a máquina volta a ficar online.

45 45 


76 76 

77* **Comandos somente locais**: comandos que só são executados na interface do terminal, como `/plugin` e `/resume`, não funcionam do aplicativo. As [limitações do Remote Control](https://code.claude.com/docs/pt/remote-control.md#limitations) listam os comandos que funcionam do celular e como seu comportamento difere.77* **Comandos somente locais**: comandos que só são executados na interface do terminal, como `/plugin` e `/resume`, não funcionam do aplicativo. As [limitações do Remote Control](https://code.claude.com/docs/pt/remote-control.md#limitations) listam os comandos que funcionam do celular e como seu comportamento difere.

78* **Modos de permissão**: sessões na nuvem oferecem Accept edits, Plan e Auto, e sessões Remote Control oferecem Manual, Accept edits, Plan e Auto. Você não pode selecionar Bypass permissions do aplicativo em nenhum dos casos. Consulte [alternar modos de permissão](https://code.claude.com/docs/pt/permission-modes.md#switch-permission-modes) para saber quando Auto está disponível.78* **Modos de permissão**: sessões na nuvem oferecem Accept edits, Plan e Auto, e sessões Remote Control oferecem Manual, Accept edits, Plan e Auto. Você não pode selecionar Bypass permissions do aplicativo em nenhum dos casos. Consulte [alternar modos de permissão](https://code.claude.com/docs/pt/permission-modes.md#switch-permission-modes) para saber quando Auto está disponível.

79* **Planos do Dispatch**: Dispatch requer um plano Pro ou Max e não está disponível em Team ou Enterprise.79* **Planos do Dispatch**: Dispatch requer um plano Pro, Max ou Ultra e não está disponível em Team ou Enterprise.

80 80 

81## Recursos relacionados81## Recursos relacionados

82 82 

model-config.md +4 −4

Details

455 455 

456O comportamento de `default` depende do tipo de sua conta:456O comportamento de `default` depende do tipo de sua conta:

457 457 

458* **Pro, Max, Team, Enterprise e Anthropic API**: padrão para Opus 5.5458* **Pro, Max, Ultra, Team, Enterprise e Anthropic API**: padrão para Opus 5.5

459* **Claude Platform on AWS, Amazon Bedrock e Google Cloud's Agent Platform**: padrão para Opus 5.5459* **Claude Platform on AWS, Amazon Bedrock e Google Cloud's Agent Platform**: padrão para Opus 5.5

460* **Microsoft Foundry**: padrão para Sonnet 4.5460* **Microsoft Foundry**: padrão para Sonnet 4.5

461 461 

462Antes da v2.1.280, `default` era resolvido para Sonnet 5 em Pro e Team Standard, e para Opus 5 em Max, Team Premium, Enterprise, Anthropic API, Claude Platform on AWS, Amazon Bedrock e Google Cloud's Agent Platform a partir de v2.1.219. Antes da v2.1.219, `default` era resolvido para Opus 4.8 na Anthropic API, Max, Team Premium e Enterprise com pagamento conforme o uso a partir de v2.1.154, e na Claude Platform on AWS, Amazon Bedrock e Google Cloud's Agent Platform a partir de v2.1.207. Antes da v2.1.207, `default` era resolvido para Opus 4.7 na Claude Platform on AWS e para Sonnet 4.5 no Amazon Bedrock e Google Cloud's Agent Platform.462Antes da v2.1.280, `default` era resolvido para Sonnet 5 em Pro e Team Standard, e para Opus 5 em Max, Ultra, Team Premium, Enterprise, Anthropic API, Claude Platform on AWS, Amazon Bedrock e Google Cloud's Agent Platform a partir de v2.1.219. Antes da v2.1.219, `default` era resolvido para Opus 4.8 na Anthropic API, Max, Ultra, Team Premium e Enterprise com pagamento conforme o uso a partir de v2.1.154, e na Claude Platform on AWS, Amazon Bedrock e Google Cloud's Agent Platform a partir de v2.1.207. Antes da v2.1.207, `default` era resolvido para Opus 4.7 na Claude Platform on AWS e para Sonnet 4.5 no Amazon Bedrock e Google Cloud's Agent Platform.

463 463 

464Quando um administrador definiu um [modelo padrão da organização](#organization-default-model), `default` é resolvido para esse modelo em vez do padrão do tipo de conta acima. Requer Claude Code v2.1.196 ou posterior. `default` também pode ser resolvido para o modelo que você definiu com [`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions), sob as condições listadas em sua seção, ou para o modelo [registrado em sua conta](#setting-your-model).464Quando um administrador definiu um [modelo padrão da organização](#organization-default-model), `default` é resolvido para esse modelo em vez do padrão do tipo de conta acima. Requer Claude Code v2.1.196 ou posterior. `default` também pode ser resolvido para o modelo que você definiu com [`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions), sob as condições listadas em sua seção, ou para o modelo [registrado em sua conta](#setting-your-model).

465 465 


758 758 

759Fable 5.1, Fable 5, Sonnet 5 e posterior, Haiku 5.5, e Opus 4.7 e posterior são executados com a janela de 1M por padrão, sem necessidade do sufixo `[1m]`. Isso inclui sessões no Amazon Bedrock, Google Cloud's Agent Platform e Microsoft Foundry, e sessões do [Claude apps gateway](https://code.claude.com/docs/pt/claude-apps-gateway). Para executá-los com uma janela de 200K em vez disso, consulte [Desativar o contexto de 1M](#turn-off-1m-context).759Fable 5.1, Fable 5, Sonnet 5 e posterior, Haiku 5.5, e Opus 4.7 e posterior são executados com a janela de 1M por padrão, sem necessidade do sufixo `[1m]`. Isso inclui sessões no Amazon Bedrock, Google Cloud's Agent Platform e Microsoft Foundry, e sessões do [Claude apps gateway](https://code.claude.com/docs/pt/claude-apps-gateway). Para executá-los com uma janela de 200K em vez disso, consulte [Desativar o contexto de 1M](#turn-off-1m-context).

760 760 

761Opus 4.6 e Sonnet 4.6 alcançam 1M apenas através de sua variante `[1m]`, e o acesso a essa variante depende do seu plano. Nos planos Max, Team e Enterprise, incluindo assentos Team Standard e Team Premium, Opus 4.6 com contexto de 1M está incluído em sua assinatura. Sonnet 4.6 com contexto de 1M requer [créditos de uso](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) em cada plano de assinatura, incluindo Max.761Opus 4.6 e Sonnet 4.6 alcançam 1M apenas através de sua variante `[1m]`, e o acesso a essa variante depende do seu plano. Nos planos Max, Ultra, Team e Enterprise, incluindo assentos Team Standard e Team Premium, Opus 4.6 com contexto de 1M está incluído em sua assinatura. Sonnet 4.6 com contexto de 1M requer [créditos de uso](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) em cada plano de assinatura, incluindo Max e Ultra.

762 762 

763| Plano | Opus 4.6 com contexto de 1M | Sonnet 4.6 com contexto de 1M |763| Plano | Opus 4.6 com contexto de 1M | Sonnet 4.6 com contexto de 1M |

764| - | - | - |764| - | - | - |

765| Max, Team e Enterprise | Incluído na assinatura | Requer [créditos de uso](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |765| Max, Ultra, Team e Enterprise | Incluído na assinatura | Requer [créditos de uso](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |

766| Pro | Requer [créditos de uso](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) | Requer [créditos de uso](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |766| Pro | Requer [créditos de uso](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) | Requer [créditos de uso](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |

767| API e pagamento conforme o uso | Acesso completo | Acesso completo |767| API e pagamento conforme o uso | Acesso completo | Acesso completo |

768 768 

overview.md +119 −119

Details

12 12 

13Claude Code é executado em várias superfícies: o terminal, extensões de IDE, um aplicativo de desktop e a web. Escolha uma das abas abaixo para começar. A maioria das superfícies requer uma [assinatura Claude](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=overview_pricing) ou uma conta do [Anthropic Console](https://platform.claude.com/). O Terminal CLI, VS Code e JetBrains também suportam [provedores de terceiros](https://code.claude.com/docs/pt/third-party-integrations.md).13Claude Code é executado em várias superfícies: o terminal, extensões de IDE, um aplicativo de desktop e a web. Escolha uma das abas abaixo para começar. A maioria das superfícies requer uma [assinatura Claude](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=overview_pricing) ou uma conta do [Anthropic Console](https://platform.claude.com/). O Terminal CLI, VS Code e JetBrains também suportam [provedores de terceiros](https://code.claude.com/docs/pt/third-party-integrations.md).

14 14 

15**Terminal**15> [tab] Terminal

16 16>

17O CLI completo para trabalhar com Claude Code diretamente em seu terminal. Edite arquivos, execute comandos e gerencie todo o seu projeto a partir da linha de comando.17> O CLI completo para trabalhar com Claude Code diretamente em seu terminal. Edite arquivos, execute comandos e gerencie todo o seu projeto a partir da linha de comando.

18 18>

19Para instalar Claude Code, abra um terminal e execute o comando para seu sistema. Se você nunca usou um terminal antes, o [guia de terminal](https://code.claude.com/docs/pt/terminal-guide) mostra como abrir um e colar o comando.19> Para instalar Claude Code, abra um terminal e execute o comando para seu sistema. Se você nunca usou um terminal antes, o [guia de terminal](https://code.claude.com/docs/pt/terminal-guide) mostra como abrir um e colar o comando.

20 20>

21**Instalação Nativa (Recomendado)**21> > [tab] Instalação Nativa (Recomendado)

22 22> >

23**macOS, Linux, WSL:**23> > **macOS, Linux, WSL:**

24 24> >

25```bash theme={null}25> > ```bash theme={null}

26curl -fsSL https://claude.ai/install.sh | bash26> > curl -fsSL https://claude.ai/install.sh | bash

27```27> > ```

28 28> >

29No Windows, seu prompt mostra `PS C:\` quando você está no PowerShell e `C:\` sem o `PS` quando você está no CMD.29> > No Windows, seu prompt mostra `PS C:\` quando você está no PowerShell e `C:\` sem o `PS` quando você está no CMD.

30 30> >

31**Windows PowerShell:**31> > **Windows PowerShell:**

32 32> >

33```powershell theme={null}33> > ```powershell theme={null}

34irm https://claude.ai/install.ps1 | iex34> > irm https://claude.ai/install.ps1 | iex

35```35> > ```

36 36> >

37**Windows CMD:**37> > **Windows CMD:**

38 38> >

39```batch theme={null}39> > ```batch theme={null}

40curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd40> > curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

41```41> > ```

42 42> >

43O comando de instalação não mostra nenhum progresso enquanto baixa o Claude Code. Quando o instalador terminar, abra uma nova janela de terminal e execute `claude --version`. Uma instalação funcionando imprime um número de versão. Se seu shell disser que `claude` não foi encontrado ou não é reconhecido, o diretório de instalação ainda não está em seu PATH: consulte [Corrija seu PATH](https://code.claude.com/docs/pt/troubleshoot-install.md#command-not-found-claude-after-installation).43> > O comando de instalação não mostra nenhum progresso enquanto baixa o Claude Code. Quando o instalador terminar, abra uma nova janela de terminal e execute `claude --version`. Uma instalação funcionando imprime um número de versão. Se seu shell disser que `claude` não foi encontrado ou não é reconhecido, o diretório de instalação ainda não está em seu PATH: consulte [Corrija seu PATH](https://code.claude.com/docs/pt/troubleshoot-install.md#command-not-found-claude-after-installation).

44 44> >

45Se você vir `The token '&&' is not a valid statement separator`, você está no PowerShell, não no CMD. Se você vir `'irm' is not recognized as an internal or external command`, você está no CMD, não no PowerShell.45> > Se você vir `The token '&&' is not a valid statement separator`, você está no PowerShell, não no CMD. Se você vir `'irm' is not recognized as an internal or external command`, você está no CMD, não no PowerShell.

46 46> >

47Se o comando de instalação falhar com `syntax error near unexpected token '<'`, um `403`, ou qualquer outro erro, consulte [Solucionar problemas de instalação](https://code.claude.com/docs/pt/troubleshoot-install.md#find-your-error) para corresponder o erro a uma correção e para métodos alternativos de instalação.47> > Se o comando de instalação falhar com `syntax error near unexpected token '<'`, um `403`, ou qualquer outro erro, consulte [Solucionar problemas de instalação](https://code.claude.com/docs/pt/troubleshoot-install.md#find-your-error) para corresponder o erro a uma correção e para métodos alternativos de instalação.

48 48> >

49[Git for Windows](https://git-scm.com/downloads/win) é recomendado no Windows nativo para que Claude Code possa usar a ferramenta Bash. Se Git for Windows não estiver instalado, Claude Code usa PowerShell como ferramenta de shell. Configurações WSL não precisam de Git for Windows.49> > [Git for Windows](https://git-scm.com/downloads/win) é recomendado no Windows nativo para que Claude Code possa usar a ferramenta Bash. Se Git for Windows não estiver instalado, Claude Code usa PowerShell como ferramenta de shell. Configurações WSL não precisam de Git for Windows.

50 50> >

51> [!NOTE]51> > > [!NOTE]

52> > >

53> > > As instalações nativas são atualizadas automaticamente em segundo plano para mantê-lo na versão mais recente.

54>

55> > [tab] Homebrew

56> >

57> > ```bash theme={null}

58> > brew install --cask claude-code

59> > ```

60> >

61> > Homebrew oferece dois casks. `claude-code` rastreia o canal de versão estável, que normalmente fica cerca de uma semana atrás e pula versões com regressões importantes. `claude-code@latest` rastreia o canal mais recente e recebe novas versões assim que são lançadas.

62> >

63> > > [!NOTE]

64> > >

65> > > As instalações do Homebrew não são atualizadas automaticamente. Execute `brew upgrade claude-code` ou `brew upgrade claude-code@latest`, dependendo de qual cask você instalou, para obter os recursos mais recentes e correções de segurança.

66>

67> > [tab] WinGet

68> >

69> > ```powershell theme={null}

70> > winget install Anthropic.ClaudeCode

71> > ```

72> >

73> > > [!NOTE]

74> > >

75> > > As instalações do WinGet não são atualizadas automaticamente. Execute `winget upgrade Anthropic.ClaudeCode` periodicamente para obter os recursos mais recentes e correções de segurança.

76>

77> Você também pode instalar com [apt, dnf, ou apk](https://code.claude.com/docs/pt/setup.md#install-with-linux-package-managers) no Debian, Fedora, RHEL e Alpine.

78>

79> Em seguida, inicie Claude Code em qualquer projeto. Substitua `your-project` pelo caminho para um diretório de projeto em sua máquina:

52>80>

53> As instalações nativas são atualizadas automaticamente em segundo plano para mantê-lo na versão mais recente.81> ```bash theme={null}

54 82> cd your-project

55**Homebrew**83> claude

56 84> ```

57```bash theme={null}

58brew install --cask claude-code

59```

60 

61Homebrew oferece dois casks. `claude-code` rastreia o canal de versão estável, que normalmente fica cerca de uma semana atrás e pula versões com regressões importantes. `claude-code@latest` rastreia o canal mais recente e recebe novas versões assim que são lançadas.

62 

63> [!NOTE]

64>85>

65> As instalações do Homebrew não são atualizadas automaticamente. Execute `brew upgrade claude-code` ou `brew upgrade claude-code@latest`, dependendo de qual cask você instalou, para obter os recursos mais recentes e correções de segurança.86> Claude Code solicita que você faça login no primeiro uso. Se você tiver definido a variável de ambiente `ANTHROPIC_API_KEY` e aprovar a chave quando Claude Code perguntar se deve usá-la, Claude Code ignora o prompt de login. [Continue com o guia de início rápido →](https://code.claude.com/docs/pt/quickstart.md)

66 

67**WinGet**

68 

69```powershell theme={null}

70winget install Anthropic.ClaudeCode

71```

72 

73> [!NOTE]

74>87>

75> As instalações do WinGet não são atualizadas automaticamente. Execute `winget upgrade Anthropic.ClaudeCode` periodicamente para obter os recursos mais recentes e correções de segurança.88> > [!TIP]

76 89> >

77Você também pode instalar com [apt, dnf, ou apk](https://code.claude.com/docs/pt/setup.md#install-with-linux-package-managers) no Debian, Fedora, RHEL e Alpine.90> > Veja [configuração avançada](https://code.claude.com/docs/pt/setup.md) para opções de instalação, atualizações manuais ou instruções de desinstalação. Visite [troubleshooting de instalação](https://code.claude.com/docs/pt/troubleshoot-install.md) se você encontrar problemas.

78 

79Em seguida, inicie Claude Code em qualquer projeto. Substitua `your-project` pelo caminho para um diretório de projeto em sua máquina:

80 91 

81```bash theme={null}92> [tab] VS Code

82cd your-project

83claude

84```

85 

86Claude Code solicita que você faça login no primeiro uso. Se você tiver definido a variável de ambiente `ANTHROPIC_API_KEY` e aprovar a chave quando Claude Code perguntar se deve usá-la, Claude Code ignora o prompt de login. [Continue com o guia de início rápido →](https://code.claude.com/docs/pt/quickstart.md)

87 

88> [!TIP]

89>93>

90> Veja [configuração avançada](https://code.claude.com/docs/pt/setup.md) para opções de instalação, atualizações manuais ou instruções de desinstalação. Visite [troubleshooting de instalação](https://code.claude.com/docs/pt/troubleshoot-install.md) se você encontrar problemas.94> A extensão VS Code fornece diffs inline, @-mentions, revisão de plano e histórico de conversa diretamente em seu editor.

91 95>

92**VS Code**96> * [Instalar para VS Code](vscode:extension/anthropic.claude-code)

93 97> * [Instalar para Cursor](cursor:extension/anthropic.claude-code)

94A extensão VS Code fornece diffs inline, @-mentions, revisão de plano e histórico de conversa diretamente em seu editor.98>

95 99> Ou procure por "Claude Code" na visualização de Extensões (`Cmd+Shift+X` no Mac, `Ctrl+Shift+X` no Windows/Linux). Após instalar, abra a Paleta de Comandos (`Cmd+Shift+P` / `Ctrl+Shift+P`), digite "Claude Code" e selecione **Abrir em Nova Aba**.

96* [Instalar para VS Code](vscode:extension/anthropic.claude-code)100>

97* [Instalar para Cursor](cursor:extension/anthropic.claude-code)101> [Comece com VS Code →](https://code.claude.com/docs/pt/vs-code.md#get-started)

98 

99Ou procure por "Claude Code" na visualização de Extensões (`Cmd+Shift+X` no Mac, `Ctrl+Shift+X` no Windows/Linux). Após instalar, abra a Paleta de Comandos (`Cmd+Shift+P` / `Ctrl+Shift+P`), digite "Claude Code" e selecione **Abrir em Nova Aba**.

100 

101[Comece com VS Code →](https://code.claude.com/docs/pt/vs-code.md#get-started)

102 

103**Aplicativo de desktop**

104 

105Um aplicativo independente para executar Claude Code fora de seu IDE ou terminal. Revise diffs visualmente, execute várias sessões lado a lado, agende tarefas recorrentes e inicie sessões na nuvem.

106 

107Baixe e instale:

108 

109* [macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs) (Intel e Apple Silicon)

110* [Windows](https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs) (x64)

111* [Windows ARM64](https://claude.ai/api/desktop/win32/arm64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs)

112* No Ubuntu ou Debian, onde o aplicativo está em beta, instale-o com apt seguindo as [instruções de instalação do Linux](https://code.claude.com/docs/pt/desktop-linux.md)

113 

114Após instalar, inicie Claude, faça login e clique na aba **Code** para começar a codificar. O aplicativo inclui Claude Code, portanto você não precisa instalar o CLI separadamente. Uma [assinatura paga](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=overview_desktop_pricing) é necessária.

115 

116[Saiba mais sobre o aplicativo de desktop →](https://code.claude.com/docs/pt/desktop-quickstart.md)

117 

118**Web**

119 

120Execute Claude Code em seu navegador sem configuração local. Inicie tarefas de longa duração e volte quando estiverem prontas, trabalhe em repositórios que você não tem localmente ou execute várias tarefas em paralelo. Para um corpo maior de trabalho, crie um [projeto](https://code.claude.com/docs/pt/claude-projects.md) e deixe Claude coordenar as sessões paralelas para você. Disponível em navegadores de desktop e [no aplicativo Claude para iOS e Android](https://code.claude.com/docs/pt/mobile.md).

121 

122Comece a codificar em [claude.ai/code](https://claude.ai/code).

123 

124[Comece →](https://code.claude.com/docs/pt/web-quickstart.md)

125 

126**JetBrains**

127 102 

128Um plugin para IntelliJ IDEA, PyCharm, WebStorm e outras IDEs JetBrains com visualização de diff interativa e compartilhamento de contexto de seleção.103> [tab] Aplicativo de desktop

104>

105> Um aplicativo independente para executar Claude Code fora de seu IDE ou terminal. Revise diffs visualmente, execute várias sessões lado a lado, agende tarefas recorrentes e inicie sessões na nuvem.

106>

107> Baixe e instale:

108>

109> * [macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs) (Intel e Apple Silicon)

110> * [Windows](https://claude.ai/api/desktop/win32/x64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs) (x64)

111> * [Windows ARM64](https://claude.ai/api/desktop/win32/arm64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs)

112> * No Ubuntu ou Debian, onde o aplicativo está em beta, instale-o com apt seguindo as [instruções de instalação do Linux](https://code.claude.com/docs/pt/desktop-linux.md)

113>

114> Após instalar, inicie Claude, faça login e clique na aba **Code** para começar a codificar. O aplicativo inclui Claude Code, portanto você não precisa instalar o CLI separadamente. Uma [assinatura paga](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=overview_desktop_pricing) é necessária.

115>

116> [Saiba mais sobre o aplicativo de desktop →](https://code.claude.com/docs/pt/desktop-quickstart.md)

129 117 

130Instale o [plugin Claude Code](https://plugins.jetbrains.com/plugin/27310-claude-code-beta-) do JetBrains Marketplace e reinicie sua IDE. O plugin requer o Claude Code CLI, instalado separadamente; veja as [etapas de configuração do JetBrains](https://code.claude.com/docs/pt/jetbrains.md#installation).118> [tab] Web

119>

120> Execute Claude Code em seu navegador sem configuração local. Inicie tarefas de longa duração e volte quando estiverem prontas, trabalhe em repositórios que você não tem localmente ou execute várias tarefas em paralelo. Para um corpo maior de trabalho, crie um [projeto](https://code.claude.com/docs/pt/claude-projects.md) e deixe Claude coordenar as sessões paralelas para você. Disponível em navegadores de desktop e [no aplicativo Claude para iOS e Android](https://code.claude.com/docs/pt/mobile.md).

121>

122> Comece a codificar em [claude.ai/code](https://claude.ai/code).

123>

124> [Comece →](https://code.claude.com/docs/pt/web-quickstart.md)

131 125 

132[Comece com JetBrains →](https://code.claude.com/docs/pt/jetbrains.md)126> [tab] JetBrains

127>

128> Um plugin para IntelliJ IDEA, PyCharm, WebStorm e outras IDEs JetBrains com visualização de diff interativa e compartilhamento de contexto de seleção.

129>

130> Instale o [plugin Claude Code](https://plugins.jetbrains.com/plugin/27310-claude-code-beta-) do JetBrains Marketplace e reinicie sua IDE. O plugin requer o Claude Code CLI, instalado separadamente; veja as [etapas de configuração do JetBrains](https://code.claude.com/docs/pt/jetbrains.md#installation).

131>

132> [Comece com JetBrains →](https://code.claude.com/docs/pt/jetbrains.md)

133 133 

134## O que você pode fazer134## O que você pode fazer

135 135 

136Aqui estão algumas das maneiras como você pode usar Claude Code:136Aqui estão algumas das maneiras como você pode usar Claude Code:

137 137 

138> **Automatize o trabalho que você continua adiando**138> [accordion] Automatize o trabalho que você continua adiando

139>139>

140> Claude Code lida com as tarefas tediosas que consomem seu dia: escrever testes para código não testado, corrigir erros de lint em um projeto, resolver conflitos de mesclagem, atualizar dependências e escrever notas de lançamento.140> Claude Code lida com as tarefas tediosas que consomem seu dia: escrever testes para código não testado, corrigir erros de lint em um projeto, resolver conflitos de mesclagem, atualizar dependências e escrever notas de lançamento.

141>141>


143> claude "write tests for the auth module, run them, and fix any failures"143> claude "write tests for the auth module, run them, and fix any failures"

144> ```144> ```

145 145 

146> **Construa recursos e corrija bugs**146> [accordion] Construa recursos e corrija bugs

147>147>

148> Descreva o que você quer em linguagem simples. Claude Code planeja a abordagem, escreve o código em vários arquivos e verifica se funciona.148> Descreva o que você quer em linguagem simples. Claude Code planeja a abordagem, escreve o código em vários arquivos e verifica se funciona.

149>149>

150> Para bugs, cole uma mensagem de erro ou descreva o sintoma. Claude Code rastreia o problema em sua base de código, identifica a causa raiz e implementa uma correção. Veja [fluxos de trabalho comuns](https://code.claude.com/docs/pt/common-workflows.md) para mais exemplos.150> Para bugs, cole uma mensagem de erro ou descreva o sintoma. Claude Code rastreia o problema em sua base de código, identifica a causa raiz e implementa uma correção. Veja [fluxos de trabalho comuns](https://code.claude.com/docs/pt/common-workflows.md) para mais exemplos.

151 151 

152> **Crie commits e pull requests**152> [accordion] Crie commits e pull requests

153>153>

154> Claude Code funciona diretamente com git. Ele prepara alterações, escreve mensagens de commit, cria branches e abre pull requests.154> Claude Code funciona diretamente com git. Ele prepara alterações, escreve mensagens de commit, cria branches e abre pull requests.

155>155>


159>159>

160> Em CI, você pode automatizar revisão de código e triagem de problemas com [GitHub Actions](https://code.claude.com/docs/pt/github-actions.md) ou [GitLab CI/CD](https://code.claude.com/docs/pt/gitlab-ci-cd.md).160> Em CI, você pode automatizar revisão de código e triagem de problemas com [GitHub Actions](https://code.claude.com/docs/pt/github-actions.md) ou [GitLab CI/CD](https://code.claude.com/docs/pt/gitlab-ci-cd.md).

161 161 

162> **Conecte suas ferramentas com MCP**162> [accordion] Conecte suas ferramentas com MCP

163>163>

164> O [Model Context Protocol (MCP)](https://code.claude.com/docs/pt/mcp.md) é um padrão aberto para conectar ferramentas de IA a fontes de dados externas. Com MCP, Claude Code pode ler seus documentos de design no Google Drive, atualizar tickets no Jira, extrair dados do Slack ou usar suas próprias ferramentas personalizadas. O [guia de início rápido do MCP](https://code.claude.com/docs/pt/mcp-quickstart.md) conecta seu primeiro servidor de ponta a ponta.164> O [Model Context Protocol (MCP)](https://code.claude.com/docs/pt/mcp.md) é um padrão aberto para conectar ferramentas de IA a fontes de dados externas. Com MCP, Claude Code pode ler seus documentos de design no Google Drive, atualizar tickets no Jira, extrair dados do Slack ou usar suas próprias ferramentas personalizadas. O [guia de início rápido do MCP](https://code.claude.com/docs/pt/mcp-quickstart.md) conecta seu primeiro servidor de ponta a ponta.

165 165 

166> **Personalize com instruções, skills e hooks**166> [accordion] Personalize com instruções, skills e hooks

167>167>

168> [`CLAUDE.md`](https://code.claude.com/docs/pt/memory) é um arquivo markdown que você adiciona à raiz do seu projeto que Claude Code lê no início de cada sessão. Use-o para definir padrões de codificação, decisões de arquitetura, bibliotecas preferidas e listas de verificação de revisão. Se seu repositório já tiver um `AGENTS.md` para outros agentes de codificação, Claude Code [pode ler isso](https://code.claude.com/docs/pt/memory.md#agents-md) no lugar de um `CLAUDE.md`. Claude também constrói [memória automática](https://code.claude.com/docs/pt/memory.md#auto-memory) conforme funciona, salvando aprendizados em sessões sem você escrever nada.168> [`CLAUDE.md`](https://code.claude.com/docs/pt/memory) é um arquivo markdown que você adiciona à raiz do seu projeto que Claude Code lê no início de cada sessão. Use-o para definir padrões de codificação, decisões de arquitetura, bibliotecas preferidas e listas de verificação de revisão. Se seu repositório já tiver um `AGENTS.md` para outros agentes de codificação, Claude Code [pode ler isso](https://code.claude.com/docs/pt/memory.md#agents-md) no lugar de um `CLAUDE.md`. Claude também constrói [memória automática](https://code.claude.com/docs/pt/memory.md#auto-memory) conforme funciona, salvando aprendizados em sessões sem você escrever nada.

169>169>


171>171>

172> [Hooks](https://code.claude.com/docs/pt/hooks.md) permitem que você execute comandos shell antes ou depois de ações do Claude Code, como formatação automática após cada edição de arquivo ou execução de lint antes de um commit.172> [Hooks](https://code.claude.com/docs/pt/hooks.md) permitem que você execute comandos shell antes ou depois de ações do Claude Code, como formatação automática após cada edição de arquivo ou execução de lint antes de um commit.

173 173 

174> **Execute agentes em paralelo e construa agentes personalizados**174> [accordion] Execute agentes em paralelo e construa agentes personalizados

175>175>

176> Gere [múltiplos agentes Claude Code](https://code.claude.com/docs/pt/sub-agents.md) que trabalham em diferentes partes de uma tarefa simultaneamente. Um agente líder coordena o trabalho, atribui subtarefas e mescla resultados.176> Gere [múltiplos agentes Claude Code](https://code.claude.com/docs/pt/sub-agents.md) que trabalham em diferentes partes de uma tarefa simultaneamente. Um agente líder coordena o trabalho, atribui subtarefas e mescla resultados.

177>177>

178> Para executar várias sessões completas em paralelo e observá-las de uma tela, use [agentes em segundo plano](https://code.claude.com/docs/pt/agent-view.md). Para fluxos de trabalho totalmente personalizados, o [Agent SDK](https://code.claude.com/docs/pt/agent-sdk/overview.md) permite que você construa seus próprios agentes alimentados pelas ferramentas e capacidades do Claude Code, com controle total sobre orquestração, acesso a ferramentas e permissões.178> Para executar várias sessões completas em paralelo e observá-las de uma tela, use [agentes em segundo plano](https://code.claude.com/docs/pt/agent-view.md). Para fluxos de trabalho totalmente personalizados, o [Agent SDK](https://code.claude.com/docs/pt/agent-sdk/overview.md) permite que você construa seus próprios agentes alimentados pelas ferramentas e capacidades do Claude Code, com controle total sobre orquestração, acesso a ferramentas e permissões.

179 179 

180> **Pipe, script e automatize com o CLI**180> [accordion] Pipe, script e automatize com o CLI

181>181>

182> Claude Code é composável e segue a filosofia Unix. Pipe logs nele, execute-o em CI ou encadeie-o com outras ferramentas:182> Claude Code é composável e segue a filosofia Unix. Pipe logs nele, execute-o em CI ou encadeie-o com outras ferramentas:

183>183>


194>194>

195> Veja a [referência CLI](https://code.claude.com/docs/pt/cli-reference.md) para o conjunto completo de comandos e flags.195> Veja a [referência CLI](https://code.claude.com/docs/pt/cli-reference.md) para o conjunto completo de comandos e flags.

196 196 

197> **Agende tarefas recorrentes**197> [accordion] Agende tarefas recorrentes

198>198>

199> Execute Claude em um cronograma para automatizar trabalho que se repete: revisões de PR matinais, análise de falhas de CI durante a noite, auditorias de dependência semanais ou sincronização de documentos após PRs serem mesclados.199> Execute Claude em um cronograma para automatizar trabalho que se repete: revisões de PR matinais, análise de falhas de CI durante a noite, auditorias de dependência semanais ou sincronização de documentos após PRs serem mesclados.

200>200>


202> * [Tarefas agendadas do Desktop](https://code.claude.com/docs/pt/desktop-scheduled-tasks.md) são executadas em sua máquina, com acesso direto aos seus arquivos e ferramentas locais202> * [Tarefas agendadas do Desktop](https://code.claude.com/docs/pt/desktop-scheduled-tasks.md) são executadas em sua máquina, com acesso direto aos seus arquivos e ferramentas locais

203> * [`/loop`](https://code.claude.com/docs/pt/scheduled-tasks) repete um prompt dentro de uma sessão CLI para polling rápido203> * [`/loop`](https://code.claude.com/docs/pt/scheduled-tasks) repete um prompt dentro de uma sessão CLI para polling rápido

204 204 

205> **Trabalhe de qualquer lugar**205> [accordion] Trabalhe de qualquer lugar

206>206>

207> As sessões não estão vinculadas a uma única superfície. Mova o trabalho entre elas conforme seu contexto muda:207> As sessões não estão vinculadas a uma única superfície. Mova o trabalho entre elas conforme seu contexto muda:

208>208>

permission-modes.md +140 −135

Details

8 8 

9Um modo de permissão define quais ações Claude pode executar em uma sessão sem pedir sua permissão primeiro. No modo Manual, Claude Code para e pede sua permissão antes da maioria das ações que editam arquivos, executam comandos shell ou acessam a rede. No [modo automático](#eliminate-prompts-with-auto-mode), um segundo modelo, o classificador, revisa as ações em vez de você; [como o classificador avalia ações](#how-the-classifier-evaluates-actions) lista quais ações ele revisa e quais o ignora.9Um modo de permissão define quais ações Claude pode executar em uma sessão sem pedir sua permissão primeiro. No modo Manual, Claude Code para e pede sua permissão antes da maioria das ações que editam arquivos, executam comandos shell ou acessam a rede. No [modo automático](#eliminate-prompts-with-auto-mode), um segundo modelo, o classificador, revisa as ações em vez de você; [como o classificador avalia ações](#how-the-classifier-evaluates-actions) lista quais ações ele revisa e quais o ignora.

10 10 

11Com Claude Code v2.1.283 ou posterior, o modo automático é o modo de permissão inicial integrado para sessões de terminal interativo e VS Code. Em versões anteriores, é o modo de permissão inicial integrado apenas nos planos Pro, Max e Team. [Qual modo uma sessão inicia](#which-mode-a-session-starts-in) cobre as superfícies e configurações que alteram o modo de permissão inicial. Você também pode alterar o modo de permissão de uma sessão em execução a qualquer momento.11Com Claude Code v2.1.283 ou posterior, o modo auto é o modo de permissão inicial integrado para sessões de terminal interativo e VS Code. Em versões anteriores, é o modo de permissão inicial integrado apenas nos planos Pro, Max, Ultra e Team. [Qual modo uma sessão inicia](#which-mode-a-session-starts-in) cobre as superfícies e configurações que alteram o modo de permissão inicial. Você também pode alterar o modo de permissão de uma sessão em execução a qualquer momento.

12 12 

13## Modos disponíveis13## Modos disponíveis

14 14 


80| Qualquer arquivo de configurações define `disableAutoMode` como `"disable"` | `default` |80| Qualquer arquivo de configurações define `disableAutoMode` como `"disable"` | `default` |

81| `claude -p` ou o [Agent SDK](https://code.claude.com/docs/pt/agent-sdk/permissions.md#permission-modes) | `default` |81| `claude -p` ou o [Agent SDK](https://code.claude.com/docs/pt/agent-sdk/permissions.md#permission-modes) | `default` |

82| Sua organização tem a [configuração HIPAA](#hipaa-configuration) aplicada e a sessão é [elegível para ela](https://code.claude.com/docs/pt/hipaa-setup.md#check-how-developers-sign-in-and-connect) | `default` com Claude Code v2.1.285 ou posterior; o modo auto continua disponível para alternar |82| Sua organização tem a [configuração HIPAA](#hipaa-configuration) aplicada e a sessão é [elegível para ela](https://code.claude.com/docs/pt/hipaa-setup.md#check-how-developers-sign-in-and-connect) | `default` com Claude Code v2.1.285 ou posterior; o modo auto continua disponível para alternar |

83| Em um terminal ou através da [extensão VS Code](https://code.claude.com/docs/pt/vs-code.md) | `auto` com Claude Code v2.1.283 ou posterior; em versões anteriores, `auto` em planos Pro, Max ou Team em sessões que [buscam sinalizadores de recurso](https://code.claude.com/docs/pt/env-vars.md#features-that-need-feature-flag-fetching), e `default` caso contrário |83| Em um terminal ou através da [extensão VS Code](https://code.claude.com/docs/pt/vs-code.md) | `auto` com Claude Code v2.1.283 ou posterior; em versões anteriores, `auto` em planos Pro, Max, Ultra ou Team em sessões que [buscam sinalizadores de recurso](https://code.claude.com/docs/pt/env-vars.md#features-that-need-feature-flag-fetching), e `default` caso contrário |

84 84 

85Quando a flag, um arquivo de configurações ou o padrão integrado seleciona `auto` mas o modo auto não está disponível para a sessão, Claude Code inicia a sessão no modo Manual em vez disso. O modo auto não está disponível quando a sessão não atende aos [requisitos de disponibilidade](#eliminate-prompts-with-auto-mode), como um arquivo de configurações desativando-o ou um modelo que não o suporta, ou quando Anthropic o desativou temporariamente no lado do servidor.85Quando a flag, um arquivo de configurações ou o padrão integrado seleciona `auto` mas o modo auto não está disponível para a sessão, Claude Code inicia a sessão no modo Manual em vez disso. O modo auto não está disponível quando a sessão não atende aos [requisitos de disponibilidade](#eliminate-prompts-with-auto-mode), como um arquivo de configurações desativando-o ou um modelo que não o suporta, ou quando Anthropic o desativou temporariamente no lado do servidor.

86 86 


89* Em um terminal, uma vez, no topo da sessão89* Em um terminal, uma vez, no topo da sessão

90* Na extensão VS Code, como um cartão na tela de nova conversa que permanece até você descartá-lo90* Na extensão VS Code, como um cartão na tela de nova conversa que permanece até você descartá-lo

91 91 

92Se seu `~/.claude/settings.json` define um `defaultMode` diferente de `auto` e nenhum outro arquivo de configurações define um, suas sessões continuam iniciando nesse modo. Nos planos Pro, Max e Team, e em sessões que [não buscam sinalizadores de recurso](https://code.claude.com/docs/pt/env-vars.md#features-that-need-feature-flag-fetching), Claude Code pergunta uma vez, no terminal ou na extensão VS Code, se você quer alterar a configuração para modo auto. Se você recusar, sua configuração permanece como está.92Se seu `~/.claude/settings.json` define um `defaultMode` diferente de `auto` e nenhum outro arquivo de configurações define um, suas sessões continuam iniciando nesse modo.

93 

94Nos planos Pro, Max, Ultra e Team, e em sessões que [não buscam sinalizadores de recurso](https://code.claude.com/docs/pt/env-vars.md#features-that-need-feature-flag-fetching), Claude Code pergunta uma vez se você quer alterar a configuração para modo auto. A pergunta aparece no terminal ou na extensão VS Code e, se você recusar, sua configuração permanece como está.

93 95 

94### Chamadas de ferramenta negadas em execuções de `claude -p` e do Agent SDK96### Chamadas de ferramenta negadas em execuções de `claude -p` e do Agent SDK

95 97 


102 104 

103Estes exemplos mostram a forma do modo auto para a CLI e cada SDK:105Estes exemplos mostram a forma do modo auto para a CLI e cada SDK:

104 106 

105**CLI**107> [tab] CLI

106 108>

107```bash theme={null}109> ```bash theme={null}

108claude -p "Run the test suite and fix any failures" --permission-mode auto110> claude -p "Run the test suite and fix any failures" --permission-mode auto

109```111> ```

110 

111**TypeScript**

112 

113```typescript theme={null}

114const options = {

115 permissionMode: "auto"

116};

117```

118 

119**Python**

120 112 

121```python theme={null}113> [tab] TypeScript

122from claude_agent_sdk import ClaudeAgentOptions114>

115> ```typescript theme={null}

116> const options = {

117> permissionMode: "auto"

118> };

119> ```

123 120 

124options = ClaudeAgentOptions(permission_mode="auto")121> [tab] Python

125```122>

123> ```python theme={null}

124> from claude_agent_sdk import ClaudeAgentOptions

125>

126> options = ClaudeAgentOptions(permission_mode="auto")

127> ```

126 128 

127Antes da v2.1.302, essas execuções podiam iniciar no modo auto se não [buscassem sinalizadores de recurso](https://code.claude.com/docs/pt/env-vars.md#features-that-need-feature-flag-fetching), por exemplo em um [provedor de terceiros](https://code.claude.com/docs/pt/third-party-integrations.md) ou com `DISABLE_TELEMETRY`.129Antes da v2.1.302, essas execuções podiam iniciar no modo auto se não [buscassem sinalizadores de recurso](https://code.claude.com/docs/pt/env-vars.md#features-that-need-feature-flag-fetching), por exemplo em um [provedor de terceiros](https://code.claude.com/docs/pt/third-party-integrations.md) ou com `DISABLE_TELEMETRY`.

128 130 


166 168 

167Cada interface tem seu próprio controle para alternar modos de permissão durante uma sessão e sua própria forma de escolher o modo de permissão que novas sessões iniciam. Selecione sua interface para ver seus controles.169Cada interface tem seu próprio controle para alternar modos de permissão durante uma sessão e sua própria forma de escolher o modo de permissão que novas sessões iniciam. Selecione sua interface para ver seus controles.

168 170 

169**CLI**171> [tab] CLI

170 172>

171**Durante uma sessão**: pressione `Shift+Tab` para alternar modos de permissão. De `auto`, o primeiro pressionamento alterna para `default`, e o ciclo então executa `default` → `acceptEdits` → `plan`. Modos opcionais se encaixam após `plan`. A barra de status mostra o modo ativo como um `⏸ manual mode on` cinza para `default`, ou como `⏵⏵ accept edits on`, `⏸ plan mode on`, `⏵⏵ auto mode on`, `⏵⏵ don't ask on` ou `⏵⏵ bypass permissions on`.173> **Durante uma sessão**: pressione `Shift+Tab` para alternar modos de permissão. De `auto`, o primeiro pressionamento alterna para `default`, e o ciclo então executa `default` → `acceptEdits` → `plan`. Modos opcionais se encaixam após `plan`. A barra de status mostra o modo ativo como um `⏸ manual mode on` cinza para `default`, ou como `⏵⏵ accept edits on`, `⏸ plan mode on`, `⏵⏵ auto mode on`, `⏵⏵ don't ask on` ou `⏵⏵ bypass permissions on`.

172 174>

173Observe a barra de status neste clipe de uma sessão que começou no modo auto. Cada vez que você pressiona `Shift+Tab`, ela muda de `auto mode on` para `manual mode on`, `accept edits on`, `plan mode on` e de volta para `auto mode on`.175> Observe a barra de status neste clipe de uma sessão que começou no modo auto. Cada vez que você pressiona `Shift+Tab`, ela muda de `auto mode on` para `manual mode on`, `accept edits on`, `plan mode on` e de volta para `auto mode on`.

174 176>

175<video autoPlay muted loop playsInline src="https://mintcdn.com/claude-code/tA-x-5L2YsYSVdee/images/permission-modes-cycle-light.mp4?fit=max&auto=format&n=tA-x-5L2YsYSVdee&q=85&s=3927dd62d59b01efd81b3578f2a6f971" aria-label="A barra de status abaixo do prompt do Claude Code muda a cada pressionamento de Shift+Tab: auto mode on, manual mode on, accept edits on, plan mode on e, em seguida, auto mode on novamente." />177> <video autoPlay muted loop playsInline src="https://mintcdn.com/claude-code/tA-x-5L2YsYSVdee/images/permission-modes-cycle-light.mp4?fit=max&auto=format&n=tA-x-5L2YsYSVdee&q=85&s=3927dd62d59b01efd81b3578f2a6f971" aria-label="A barra de status abaixo do prompt do Claude Code muda a cada pressionamento de Shift+Tab: auto mode on, manual mode on, accept edits on, plan mode on e, em seguida, auto mode on novamente." />

176 178>

177Nem todo modo está no ciclo padrão:179> Nem todo modo está no ciclo padrão:

178 180>

179* `auto`: aparece quando [modo automático está disponível](#eliminate-prompts-with-auto-mode); alternar para ele alterna modos de permissão sem um prompt de confirmação181> * `auto`: aparece quando [modo automático está disponível](#eliminate-prompts-with-auto-mode); alternar para ele alterna modos de permissão sem um prompt de confirmação

180* `bypassPermissions`: aparece depois que você inicia com `--permission-mode bypassPermissions`, `--dangerously-skip-permissions`, `--allow-dangerously-skip-permissions` ou `permissions.defaultMode: "bypassPermissions"` em [configurações de usuário, `--settings` ou gerenciadas](https://code.claude.com/docs/pt/settings-reference#permissions-defaultmode). A variante `--allow-` adiciona o modo de permissão ao ciclo sem ativá-lo182> * `bypassPermissions`: aparece depois que você inicia com `--permission-mode bypassPermissions`, `--dangerously-skip-permissions`, `--allow-dangerously-skip-permissions` ou `permissions.defaultMode: "bypassPermissions"` em [configurações de usuário, `--settings` ou gerenciadas](https://code.claude.com/docs/pt/settings-reference#permissions-defaultmode). A variante `--allow-` adiciona o modo de permissão ao ciclo sem ativá-lo

181* `dontAsk`: nunca aparece no ciclo; defina-o com `--permission-mode dontAsk`183> * `dontAsk`: nunca aparece no ciclo; defina-o com `--permission-mode dontAsk`

182 184>

183Modos opcionais habilitados se encaixam após `plan`, com `bypassPermissions` primeiro e `auto` por último. Se você tiver ambos habilitados, você alternará através de `bypassPermissions` a caminho de `auto`.185> Modos opcionais habilitados se encaixam após `plan`, com `bypassPermissions` primeiro e `auto` por último. Se você tiver ambos habilitados, você alternará através de `bypassPermissions` a caminho de `auto`.

184 186>

185**De um prompt de permissão Bash**: nos modos de permissão Manual e `acceptEdits`, quando [modo automático](#eliminate-prompts-with-auto-mode) está disponível, Claude Code adiciona **Sim, e alternar para modo automático** ao prompt de permissão de um comando Bash. Selecione-o para aprovar o comando e alternar a sessão para modo automático. Prompts da [ferramenta PowerShell](https://code.claude.com/docs/pt/tools-reference.md#powershell-tool) não oferecem a opção. Requer Claude Code v2.1.247 ou posterior.187> **De um prompt de permissão Bash**: nos modos de permissão Manual e `acceptEdits`, quando [modo automático](#eliminate-prompts-with-auto-mode) está disponível, Claude Code adiciona **Sim, e alternar para modo automático** ao prompt de permissão de um comando Bash. Selecione-o para aprovar o comando e alternar a sessão para modo automático. Prompts da [ferramenta PowerShell](https://code.claude.com/docs/pt/tools-reference.md#powershell-tool) não oferecem a opção. Requer Claude Code v2.1.247 ou posterior.

186 188>

187Claude Code não adiciona a opção a prompts forçados por uma de suas [regras `ask`](https://code.claude.com/docs/pt/permissions#manage-permissions) ou por um [hook](https://code.claude.com/docs/pt/hooks.md#pretooluse-decision-control), porque o modo automático ainda mostra esses prompts, então alternar não os removeria.189> Claude Code não adiciona a opção a prompts forçados por uma de suas [regras `ask`](https://code.claude.com/docs/pt/permissions#manage-permissions) ou por um [hook](https://code.claude.com/docs/pt/hooks.md#pretooluse-decision-control), porque o modo automático ainda mostra esses prompts, então alternar não os removeria.

188 190>

189**Na inicialização**: passe o modo de permissão como uma flag.191> **Na inicialização**: passe o modo de permissão como uma flag.

190 192>

191```bash theme={null}193> ```bash theme={null}

192claude --permission-mode plan194> claude --permission-mode plan

193```195> ```

194 196>

195**Como padrão**: defina `permissions.defaultMode` no escopo que você quer, conforme descrito em [Inicie em um modo de permissão diferente](#start-in-a-different-mode).197> **Como padrão**: defina `permissions.defaultMode` no escopo que você quer, conforme descrito em [Inicie em um modo de permissão diferente](#start-in-a-different-mode).

196 198>

197A mesma flag `--permission-mode` funciona com `-p` para [execuções não-interativas](https://code.claude.com/docs/pt/headless.md).199> A mesma flag `--permission-mode` funciona com `-p` para [execuções não-interativas](https://code.claude.com/docs/pt/headless.md).

198 

199**VS Code**

200 

201**Durante uma sessão**: clique no indicador de modo na parte inferior da caixa de prompt. Ele usa estes rótulos para os modos nesta página:

202 

203| Rótulo da UI | Modo |

204| :- | :- |

205| Manual | `default` |

206| Editar automaticamente | `acceptEdits` |

207| Plan | `plan` |

208| Auto | `auto` |

209| Bypass permissions | `bypassPermissions` |

210 

211**Como padrão**: para fixar o modo de permissão que conversas iniciam, defina `claudeCode.initialPermissionMode` nas configurações de usuário do VS Code como `default`, `manual`, `acceptEdits`, `plan` ou `bypassPermissions`. A configuração não aceita `auto`; para iniciar em Auto, deixe-a indefinida e escolha **Auto** no indicador de modo uma vez, como o item 2 abaixo descreve. A extensão inicia cada nova conversa no primeiro destes que se aplica:

212 

2131. `claudeCode.initialPermissionMode`

2142. O modo que você escolheu por último no indicador de modo, se foi Manual, Editar automaticamente ou Auto. Escolher Plan ou Bypass permissions se aplica apenas a essa conversa

2153. `permissions.defaultMode` de [configurações gerenciadas](https://code.claude.com/docs/pt/managed-settings.md) ou `~/.claude/settings.json`

2164. O [padrão integrado](#which-mode-a-session-starts-in) para seu plano, provedor e configurações de organização

217 

218A extensão nunca lê `.claude/settings.json` ou `.claude/settings.local.json` de um projeto para o modo de permissão inicial. Quando `claudeCode.claudeProcessWrapper` está definido, os itens 3 e 4 não se aplicam: essas conversas iniciam em Manual a menos que o item 1 ou item 2 defina um modo de permissão.

219 

220Antes de v2.1.283, o item 3 se aplicava apenas em planos Pro, Max e Team em sessões que [buscam sinalizadores de recurso](https://code.claude.com/docs/pt/env-vars.md#features-that-need-feature-flag-fetching).

221 

222Auto aparece no indicador de modo quando [modo automático está disponível](#eliminate-prompts-with-auto-mode).

223 

224Bypass permissions requer o toggle **Allow dangerously skip permissions** nas configurações da extensão. Sem ele, o modo de permissão não aparece no indicador, e um valor `bypassPermissions` do item 1 ou item 3 inicia a conversa em Manual em vez disso. Auto de qualquer item também inicia a conversa em Manual quando o modo automático não está disponível.

225 

226Veja o [guia do VS Code](https://code.claude.com/docs/pt/vs-code.md) para detalhes específicos da extensão.

227 

228**JetBrains**

229 

230O plugin JetBrains executa Claude Code no terminal do IDE, então alternar modos de permissão funciona da mesma forma que na CLI: pressione `Shift+Tab` para alternar, ou passe `--permission-mode` ao iniciar.

231 

232**Desktop**

233 

234**Durante uma sessão**: na aba Code, use o seletor de modo na linha abaixo da caixa de prompt. Nem todo modo aparece no seletor:

235 

236* **Auto**: aparece quando [modo automático está disponível](#eliminate-prompts-with-auto-mode)

237* **Bypass permissions**: requer o toggle **Allow bypass permissions mode** nas configurações do Desktop em planos Pro e Max; em planos Team e Enterprise, a política da organização controla isso

238 

239O Cowork não usa estes modos. Ele tem seus próprios modos de permissão, habilitados separadamente, e não mostra nenhum seletor de modo até que um modo além de seu padrão seja habilitado para sua conta. Veja a [documentação do Cowork](https://claude.com/docs/cowork/overview).

240 

241Para detalhes específicos do desktop, veja [Escolha um modo de permissão](https://code.claude.com/docs/pt/desktop.md#choose-a-permission-mode) no guia do Desktop.

242 

243**Como padrão**: defina `defaultMode` em [configurações](https://code.claude.com/docs/pt/settings.md#where-settings-live). O aplicativo de desktop lê os mesmos arquivos de configurações que a CLI e aplica o modo de permissão a novas sessões locais.

244 

245Um modo que você escolhe no seletor de modo é lembrado por pasta e tem precedência sobre `defaultMode` para essa pasta. Plan é a exceção: escolhê-lo se aplica apenas à sessão atual.

246 

247Para onde `defaultMode` vai em um arquivo de configurações, veja o exemplo em [Inicie em um modo de permissão diferente](#start-in-a-different-mode).

248 

249**Web and mobile**

250 200 

251Em [claude.ai/code](https://claude.ai/code), use o dropdown de modo na linha abaixo da caixa de prompt. No aplicativo móvel, toque no botão **+** na caixa de prompt e depois em **Permission**. Sessões na nuvem e sessões de Remote Control oferecem modos de permissão diferentes:201> [tab] VS Code

202>

203> **Durante uma sessão**: clique no indicador de modo na parte inferior da caixa de prompt. Ele usa estes rótulos para os modos nesta página:

204>

205> | Rótulo da UI | Modo |

206> | :- | :- |

207> | Manual | `default` |

208> | Editar automaticamente | `acceptEdits` |

209> | Plan | `plan` |

210> | Auto | `auto` |

211> | Bypass permissions | `bypassPermissions` |

212>

213> **Como padrão**: para fixar o modo de permissão que conversas iniciam, defina `claudeCode.initialPermissionMode` nas configurações de usuário do VS Code como `default`, `manual`, `acceptEdits`, `plan` ou `bypassPermissions`. A configuração não aceita `auto`; para iniciar em Auto, deixe-a indefinida e escolha **Auto** no indicador de modo uma vez, como o item 2 abaixo descreve. A extensão inicia cada nova conversa no primeiro destes que se aplica:

214>

215> 1. `claudeCode.initialPermissionMode`

216> 2. O modo que você escolheu por último no indicador de modo, se foi Manual, Editar automaticamente ou Auto. Escolher Plan ou Bypass permissions se aplica apenas a essa conversa

217> 3. `permissions.defaultMode` de [configurações gerenciadas](https://code.claude.com/docs/pt/managed-settings.md) ou `~/.claude/settings.json`

218> 4. O [padrão integrado](#which-mode-a-session-starts-in) para seu plano, provedor e configurações de organização

219>

220> A extensão nunca lê `.claude/settings.json` ou `.claude/settings.local.json` de um projeto para o modo de permissão inicial. Quando `claudeCode.claudeProcessWrapper` está definido, os itens 3 e 4 não se aplicam: essas conversas iniciam em Manual a menos que o item 1 ou item 2 defina um modo de permissão.

221>

222> Antes de v2.1.283, o item 3 se aplicava apenas em planos Pro, Max, Ultra e Team em sessões que [buscam sinalizadores de recurso](https://code.claude.com/docs/pt/env-vars.md#features-that-need-feature-flag-fetching).

223>

224> Auto aparece no indicador de modo quando [modo automático está disponível](#eliminate-prompts-with-auto-mode).

225>

226> Bypass permissions requer o toggle **Allow dangerously skip permissions** nas configurações da extensão. Sem ele, o modo de permissão não aparece no indicador, e um valor `bypassPermissions` do item 1 ou item 3 inicia a conversa em Manual em vez disso. Auto de qualquer item também inicia a conversa em Manual quando o modo automático não está disponível.

227>

228> Veja o [guia do VS Code](https://code.claude.com/docs/pt/vs-code.md) para detalhes específicos da extensão.

252 229 

253* **[Sessões na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md)**: Accept edits, Plan e Auto. Accept edits corresponde ao modo `default`: sessões na nuvem pré-aprovam edições de arquivo independentemente do modo, então o dropdown mostra Accept edits em vez de Manual. Sessões na nuvem ainda honram `defaultMode: "acceptEdits"` de configurações. O modo Auto aparece apenas quando sua organização o permite e o modelo selecionado o suporta. Bypass permissions não está disponível.230> [tab] JetBrains

254* **[Sessões de Remote Control](https://code.claude.com/docs/pt/remote-control.md)** em sua máquina local: Manual, Accept edits, Plan e Auto para uma sessão que você mesmo iniciou, e você não pode selecionar Bypass permissions do aplicativo. Para usar Auto, a sessão precisa atender aos [requisitos de disponibilidade](#eliminate-prompts-with-auto-mode) do modo auto. Para um thread de projeto executado em seu computador, veja [Execute um thread em seu próprio computador](https://code.claude.com/docs/pt/claude-projects.md#run-a-thread-on-your-own-computer).231>

255 * Exceto por Bypass permissions, o dropdown mostra o modo de permissão em que a sessão local está, incluindo um definido do terminal. Ele atualiza quando o modo de permissão muda no aplicativo ou no terminal.232> O plugin JetBrains executa Claude Code no terminal do IDE, então alternar modos de permissão funciona da mesma forma que na CLI: pressione `Shift+Tab` para alternar, ou passe `--permission-mode` ao iniciar.

256 * Sessões hospedadas pelo [aplicativo de desktop](https://code.claude.com/docs/pt/desktop.md) ou pela [extensão VS Code](https://code.claude.com/docs/pt/vs-code.md) relatam mudanças de modo de permissão ao claude.ai conforme acontecem, da mesma forma que sessões hospedadas em um terminal.

257 233 

258Para Remote Control, a máquina local executando a sessão deve estar conectada com sua conta claude.ai; chaves de API não são suportadas. Você também pode definir o modo de permissão inicial ao iniciar essa sessão local:234> [tab] Desktop

235>

236> **Durante uma sessão**: na aba Code, use o seletor de modo na linha abaixo da caixa de prompt. Nem todo modo aparece no seletor:

237>

238> * **Auto**: aparece quando [modo automático está disponível](#eliminate-prompts-with-auto-mode)

239> * **Bypass permissions**: requer o toggle **Allow bypass permissions mode** nas configurações do Desktop em planos Pro, Max e Ultra; em planos Team e Enterprise, a política da organização controla isso

240>

241> O Cowork não usa estes modos. Ele tem seus próprios modos de permissão, habilitados separadamente, e não mostra nenhum seletor de modo até que um modo além de seu padrão seja habilitado para sua conta. Veja a [documentação do Cowork](https://claude.com/docs/cowork/overview).

242>

243> Para detalhes específicos do desktop, veja [Escolha um modo de permissão](https://code.claude.com/docs/pt/desktop.md#choose-a-permission-mode) no guia do Desktop.

244>

245> **Como padrão**: defina `defaultMode` em [configurações](https://code.claude.com/docs/pt/settings.md#where-settings-live). O aplicativo de desktop lê os mesmos arquivos de configurações que a CLI e aplica o modo de permissão a novas sessões locais.

246>

247> Um modo que você escolhe no seletor de modo é lembrado por pasta e tem precedência sobre `defaultMode` para essa pasta. Plan é a exceção: escolhê-lo se aplica apenas à sessão atual.

248>

249> Para onde `defaultMode` vai em um arquivo de configurações, veja o exemplo em [Inicie em um modo de permissão diferente](#start-in-a-different-mode).

259 250 

260```bash theme={null}251> [tab] Web and mobile

261claude remote-control --permission-mode acceptEdits252>

262```253> Em [claude.ai/code](https://claude.ai/code), use o dropdown de modo na linha abaixo da caixa de prompt. No aplicativo móvel, toque no botão **+** na caixa de prompt e depois em **Permission**. Sessões na nuvem e sessões de Remote Control oferecem modos de permissão diferentes:

254>

255> * **[Sessões na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md)**: Accept edits, Plan e Auto. Accept edits corresponde ao modo `default`: sessões na nuvem pré-aprovam edições de arquivo independentemente do modo, então o dropdown mostra Accept edits em vez de Manual. Sessões na nuvem ainda honram `defaultMode: "acceptEdits"` de configurações. O modo Auto aparece apenas quando sua organização o permite e o modelo selecionado o suporta. Bypass permissions não está disponível.

256> * **[Sessões de Remote Control](https://code.claude.com/docs/pt/remote-control.md)** em sua máquina local: Manual, Accept edits, Plan e Auto para uma sessão que você mesmo iniciou, e você não pode selecionar Bypass permissions do aplicativo. Para usar Auto, a sessão precisa atender aos [requisitos de disponibilidade](#eliminate-prompts-with-auto-mode) do modo auto. Para um thread de projeto executado em seu computador, veja [Execute um thread em seu próprio computador](https://code.claude.com/docs/pt/claude-projects.md#run-a-thread-on-your-own-computer).

257> * Exceto por Bypass permissions, o dropdown mostra o modo de permissão em que a sessão local está, incluindo um definido do terminal. Ele atualiza quando o modo de permissão muda no aplicativo ou no terminal.

258> * Sessões hospedadas pelo [aplicativo de desktop](https://code.claude.com/docs/pt/desktop.md) ou pela [extensão VS Code](https://code.claude.com/docs/pt/vs-code.md) relatam mudanças de modo de permissão ao claude.ai conforme acontecem, da mesma forma que sessões hospedadas em um terminal.

259>

260> Para Remote Control, a máquina local executando a sessão deve estar conectada com sua conta claude.ai; chaves de API não são suportadas. Você também pode definir o modo de permissão inicial ao iniciar essa sessão local:

261>

262> ```bash theme={null}

263> claude remote-control --permission-mode acceptEdits

264> ```

263 265 

264## Auto-aprovar edições de arquivo com modo acceptEdits266## Auto-aprovar edições de arquivo com modo acceptEdits

265 267 


327 329 

328O modo auto permite que Claude execute sem prompts de permissão rotineiros. Um modelo classificador separado revisa as ações antes de serem executadas, bloqueando qualquer coisa que escale além da sua solicitação, tenha como alvo infraestrutura não reconhecida ou pareça impulsionada por conteúdo hostil que Claude leu. [Regras de solicitação](https://code.claude.com/docs/pt/permissions.md#manage-permissions) explícitas ainda forçam um prompt.330O modo auto permite que Claude execute sem prompts de permissão rotineiros. Um modelo classificador separado revisa as ações antes de serem executadas, bloqueando qualquer coisa que escale além da sua solicitação, tenha como alvo infraestrutura não reconhecida ou pareça impulsionada por conteúdo hostil que Claude leu. [Regras de solicitação](https://code.claude.com/docs/pt/permissions.md#manage-permissions) explícitas ainda forçam um prompt.

329 331 

330Com Claude Code v2.1.283 ou posterior, o modo auto é o [modo de permissão inicial integrado](#which-mode-a-session-starts-in) para sessões de terminal interativo e VS Code em todos os planos e provedores. Em versões anteriores, é o modo de permissão inicial integrado apenas nos planos Pro, Max e Team.332Com Claude Code v2.1.283 ou posterior, o modo auto é o [modo de permissão inicial integrado](#which-mode-a-session-starts-in) para sessões de terminal interativo e VS Code em todos os planos e provedores. Em versões anteriores, é o modo de permissão inicial integrado apenas nos planos Pro, Max, Ultra e Team.

331 333 

332O classificador também revisa cada mensagem que Claude envia para outro agente com [`SendMessage`](https://code.claude.com/docs/pt/tools-reference), seja texto simples ou uma mensagem estruturada de [equipe de agentes](https://code.claude.com/docs/pt/agent-teams.md), antes que Claude Code a entregue, tanto no modo auto quanto no [modo de planejamento enquanto o classificador revisa comandos](#analyze-before-you-edit-with-plan-mode); a revisão de envio requer Claude Code v2.1.222 ou posterior.334O classificador também revisa cada mensagem que Claude envia para outro agente com [`SendMessage`](https://code.claude.com/docs/pt/tools-reference), seja texto simples ou uma mensagem estruturada de [equipe de agentes](https://code.claude.com/docs/pt/agent-teams.md), antes que Claude Code a entregue, tanto no modo auto quanto no [modo de planejamento enquanto o classificador revisa comandos](#analyze-before-you-edit-with-plan-mode); a revisão de envio requer Claude Code v2.1.222 ou posterior.

333 335 


367 369 

368No modo auto, Claude Code pode pedir ao servidor para verificar as ações que [a ordem de decisão](#how-the-classifier-evaluates-actions) envia para revisão, como parte das requisições ao modelo da sessão, em vez de enviar suas próprias requisições do classificador. Estas sessões pedem:370No modo auto, Claude Code pode pedir ao servidor para verificar as ações que [a ordem de decisão](#how-the-classifier-evaluates-actions) envia para revisão, como parte das requisições ao modelo da sessão, em vez de enviar suas próprias requisições do classificador. Estas sessões pedem:

369 371 

370* **Uma conexão direta com a API Anthropic**: em sessões de terminal interativo e em sessões `-p`, Agent SDK, [extensão VS Code](https://code.claude.com/docs/pt/vs-code.md) e [aplicativo desktop](https://code.claude.com/docs/pt/desktop.md), qualquer que seja seu plano ou tipo de conta, conforme a Anthropic disponibiliza o recurso. Em sessões de terminal interativo, isso requer Claude Code v2.1.271 ou posterior nos planos Pro, Max e Team, e v2.1.278 ou posterior nos planos Enterprise e contas da API Claude. Em sessões `-p`, Agent SDK, extensão VS Code e aplicativo desktop, isso requer Claude Code v2.1.281 ou posterior. A partir da v2.1.282, uma sessão que [não busca feature flags](https://code.claude.com/docs/pt/env-vars.md#features-that-need-feature-flag-fetching), por exemplo porque você desativou a telemetria, pede ao servidor por padrão em qualquer tipo de sessão.372* **Uma conexão direta com a API Anthropic**: em sessões de terminal interativo e em sessões `-p`, Agent SDK, [extensão VS Code](https://code.claude.com/docs/pt/vs-code.md) e [aplicativo desktop](https://code.claude.com/docs/pt/desktop.md), qualquer que seja seu plano ou tipo de conta, conforme a Anthropic disponibiliza o recurso. Verifique seu tipo de sessão segundo estas versões mínimas de Claude Code:

373 * Em sessões de terminal interativo, pedir ao servidor requer Claude Code v2.1.271 ou posterior nos planos Pro, Max, Ultra e Team. Nos planos Enterprise e contas da API Claude, essas sessões requerem v2.1.278 ou posterior.

374 * Em sessões `-p`, Agent SDK, extensão VS Code e aplicativo desktop, pedir ao servidor requer Claude Code v2.1.281 ou posterior

375 * A partir da v2.1.282, uma sessão que [não busca feature flags](https://code.claude.com/docs/pt/env-vars.md#features-that-need-feature-flag-fetching), por exemplo porque você desativou a telemetria, pede ao servidor por padrão em qualquer tipo de sessão

371* **Um provedor de nuvem, ou um gateway de LLM ou proxy**: em [Claude Platform on AWS](https://code.claude.com/docs/pt/claude-platform-on-aws.md), Amazon Bedrock, Agent Platform do Google Cloud e Microsoft Foundry, e sempre que você aponta `ANTHROPIC_BASE_URL` para um [gateway de LLM ou proxy](https://code.claude.com/docs/pt/llm-gateway), qualquer que seja seu plano. Pedir por padrão requer Claude Code v2.1.278 ou posterior.376* **Um provedor de nuvem, ou um gateway de LLM ou proxy**: em [Claude Platform on AWS](https://code.claude.com/docs/pt/claude-platform-on-aws.md), Amazon Bedrock, Agent Platform do Google Cloud e Microsoft Foundry, e sempre que você aponta `ANTHROPIC_BASE_URL` para um [gateway de LLM ou proxy](https://code.claude.com/docs/pt/llm-gateway), qualquer que seja seu plano. Pedir por padrão requer Claude Code v2.1.278 ou posterior.

372* **Uma sessão [gateway de aplicativos Claude](https://code.claude.com/docs/pt/claude-apps-gateway) conectada**: requer Claude Code v2.1.280 ou posterior377* **Uma sessão [gateway de aplicativos Claude](https://code.claude.com/docs/pt/claude-apps-gateway) conectada**: requer Claude Code v2.1.280 ou posterior

373* **Uma [sessão na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) em um ambiente hospedado pela Anthropic**: qualquer que seja seu plano, quando você a inicia pela web, pelo aplicativo móvel ou pelo aplicativo desktop com **Cloud** selecionado. Sessões iniciadas por uma [tarefa agendada na nuvem](https://code.claude.com/docs/pt/routines.md) pedem ao servidor conforme a Anthropic disponibiliza o recurso.378* **Uma [sessão na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) em um ambiente hospedado pela Anthropic**: qualquer que seja seu plano, quando você a inicia pela web, pelo aplicativo móvel ou pelo aplicativo desktop com **Cloud** selecionado. Sessões iniciadas por uma [tarefa agendada na nuvem](https://code.claude.com/docs/pt/routines.md) pedem ao servidor conforme a Anthropic disponibiliza o recurso.


566 571 

567As seções a seguir cobrem a ordem em que Claude Code avalia uma ação, como o classificador revisa o trabalho de subagentes e o que as chamadas do classificador adicionam em custo e latência.572As seções a seguir cobrem a ordem em que Claude Code avalia uma ação, como o classificador revisa o trabalho de subagentes e o que as chamadas do classificador adicionam em custo e latência.

568 573 

569> **Como o classificador avalia ações**574> [accordion] Como o classificador avalia ações

570>575>

571> Cada ação passa por uma ordem de decisão fixa. O primeiro passo correspondente prevalece:576> Cada ação passa por uma ordem de decisão fixa. O primeiro passo correspondente prevalece:

572>577>


608>613>

609> Uma sonda separada no servidor examina resultados de ferramenta recebidos e sinaliza conteúdo suspeito antes que Claude o leia. Para saber mais sobre como essas camadas funcionam juntas, consulte o [anúncio do modo auto](https://claude.com/blog/auto-mode) e o [aprofundamento de engenharia](https://www.anthropic.com/engineering/claude-code-auto-mode).614> Uma sonda separada no servidor examina resultados de ferramenta recebidos e sinaliza conteúdo suspeito antes que Claude o leia. Para saber mais sobre como essas camadas funcionam juntas, consulte o [anúncio do modo auto](https://claude.com/blog/auto-mode) e o [aprofundamento de engenharia](https://www.anthropic.com/engineering/claude-code-auto-mode).

610 615 

611> **Como o modo auto lida com subagentes**616> [accordion] Como o modo auto lida com subagentes

612>617>

613> O classificador verifica o trabalho de [subagentes](https://code.claude.com/docs/pt/sub-agents.md) em três pontos:618> O classificador verifica o trabalho de [subagentes](https://code.claude.com/docs/pt/sub-agents.md) em três pontos:

614>619>


616> 2. Enquanto o subagente executa, cada uma de suas ações passa pela mesma [ordem de decisão](#how-the-classifier-evaluates-actions) que na sessão pai, com as mesmas regras de bloqueio e permissão. Qualquer `permissionMode` no frontmatter do subagente é ignorado.621> 2. Enquanto o subagente executa, cada uma de suas ações passa pela mesma [ordem de decisão](#how-the-classifier-evaluates-actions) que na sessão pai, com as mesmas regras de bloqueio e permissão. Qualquer `permissionMode` no frontmatter do subagente é ignorado.

617> 3. Quando o subagente termina, o classificador revisa seu trabalho e seu relatório final antes que o pai leia o relatório. Quando o classificador sinaliza o trabalho ou o relatório do subagente, ou uma verificação de segurança de API separada recusa a revisão, o relatório ainda é entregue, precedido por um aviso de segurança. Quando o classificador não está disponível para a revisão, o relatório chega com uma nota para verificar o trabalho do subagente antes de agir com base nele.622> 3. Quando o subagente termina, o classificador revisa seu trabalho e seu relatório final antes que o pai leia o relatório. Quando o classificador sinaliza o trabalho ou o relatório do subagente, ou uma verificação de segurança de API separada recusa a revisão, o relatório ainda é entregue, precedido por um aviso de segurança. Quando o classificador não está disponível para a revisão, o relatório chega com uma nota para verificar o trabalho do subagente antes de agir com base nele.

618 623 

619> **Custo e latência**624> [accordion] Custo e latência

620>625>

621> As requisições do classificador de Claude Code podem executar em um modelo diferente da sua seleção de `/model`. Consulte [em qual modelo elas executam](#default-classifier-model).626> As requisições do classificador de Claude Code podem executar em um modelo diferente da sua seleção de `/model`. Consulte [em qual modelo elas executam](#default-classifier-model).

622>627>


964 969 

965Para executar comandos Bash `rm` e `rmdir` que têm como alvo [caminhos críticos](#critical-paths) sem prompt no modo `bypassPermissions`, inicie Claude Code com [`CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS=1`](https://code.claude.com/docs/pt/env-vars#variables) em seu ambiente. Isso requer Claude Code v2.1.311 ou posterior. Claude Code lê a variável apenas do ambiente de inicialização e [a ignora no bloco `env` de um arquivo de configurações](https://code.claude.com/docs/pt/settings-reference#variables-claude-code-ignores-in-env). Por exemplo, defina-a no [seu shell](https://code.claude.com/docs/pt/env-vars.md#set-variables-in-your-shell) e inicie `claude` a partir dele:970Para executar comandos Bash `rm` e `rmdir` que têm como alvo [caminhos críticos](#critical-paths) sem prompt no modo `bypassPermissions`, inicie Claude Code com [`CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS=1`](https://code.claude.com/docs/pt/env-vars#variables) em seu ambiente. Isso requer Claude Code v2.1.311 ou posterior. Claude Code lê a variável apenas do ambiente de inicialização e [a ignora no bloco `env` de um arquivo de configurações](https://code.claude.com/docs/pt/settings-reference#variables-claude-code-ignores-in-env). Por exemplo, defina-a no [seu shell](https://code.claude.com/docs/pt/env-vars.md#set-variables-in-your-shell) e inicie `claude` a partir dele:

966 971 

967**macOS, Linux, WSL**972> [tab] macOS, Linux, WSL

968 973>

969```bash theme={null}974> ```bash theme={null}

970export CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS=1975> export CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS=1

971claude --permission-mode bypassPermissions976> claude --permission-mode bypassPermissions

972```977> ```

973 

974**Windows PowerShell**

975 

976```powershell theme={null}

977$env:CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS = "1"

978claude --permission-mode bypassPermissions

979```

980 978 

981**Windows CMD**979> [tab] Windows PowerShell

980>

981> ```powershell theme={null}

982> $env:CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS = "1"

983> claude --permission-mode bypassPermissions

984> ```

982 985 

983```batch theme={null}986> [tab] Windows CMD

984set CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS=1987>

985claude --permission-mode bypassPermissions988> ```batch theme={null}

986```989> set CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS=1

990> claude --permission-mode bypassPermissions

991> ```

987 992 

988> [!WARNING]993> [!WARNING]

989>994>

platforms.md +6 −6

Details

14 14 

15| Plataforma | Melhor para | O que você obtém |15| Plataforma | Melhor para | O que você obtém |

16| :- | :- | :- |16| :- | :- | :- |

17| [CLI](https://code.claude.com/docs/pt/quickstart.md) | Fluxos de trabalho de terminal, scripts, servidores remotos | Conjunto completo de recursos, [Agent SDK](https://code.claude.com/docs/pt/headless.md), [computer use](https://code.claude.com/docs/pt/computer-use.md) em macOS (Pro e Max), provedores de terceiros |17| [CLI](https://code.claude.com/docs/pt/quickstart.md) | Fluxos de trabalho de terminal, scripts, servidores remotos | Conjunto completo de recursos, [Agent SDK](https://code.claude.com/docs/pt/headless.md), [computer use](https://code.claude.com/docs/pt/computer-use.md) em macOS (Pro, Max e Ultra), provedores de terceiros |

18| [Desktop](https://code.claude.com/docs/pt/desktop.md) | Revisão visual, sessões paralelas, configuração gerenciada | Visualizador de diff, visualização de aplicativo, [computer use](https://code.claude.com/docs/pt/desktop.md#let-claude-use-your-computer) e [Dispatch](https://code.claude.com/docs/pt/desktop.md#sessions-from-dispatch) em Pro e Max |18| [Desktop](https://code.claude.com/docs/pt/desktop.md) | Revisão visual, sessões paralelas, configuração gerenciada | Visualizador de diff, visualização de aplicativo, [computer use](https://code.claude.com/docs/pt/desktop.md#let-claude-use-your-computer) e [Dispatch](https://code.claude.com/docs/pt/desktop.md#sessions-from-dispatch) em Pro, Max e Ultra |

19| [VS Code](https://code.claude.com/docs/pt/vs-code.md) | Trabalhar dentro do VS Code sem mudar para um terminal | Diffs inline, terminal integrado, contexto de arquivo |19| [VS Code](https://code.claude.com/docs/pt/vs-code.md) | Trabalhar dentro do VS Code sem mudar para um terminal | Diffs inline, terminal integrado, contexto de arquivo |

20| [JetBrains](https://code.claude.com/docs/pt/jetbrains.md) | Trabalhar dentro do IntelliJ, PyCharm, WebStorm ou outros IDEs JetBrains | Visualizador de diff, compartilhamento de seleção, sessão de terminal |20| [JetBrains](https://code.claude.com/docs/pt/jetbrains.md) | Trabalhar dentro do IntelliJ, PyCharm, WebStorm ou outros IDEs JetBrains | Visualizador de diff, compartilhamento de seleção, sessão de terminal |

21| [Web](https://code.claude.com/docs/pt/claude-code-on-the-web.md) | Tarefas de longa duração que não precisam de muito direcionamento, ou trabalho que deve continuar quando você estiver offline | Nuvem, gerenciada pela Anthropic por padrão; continua após você se desconectar |21| [Web](https://code.claude.com/docs/pt/claude-code-on-the-web.md) | Tarefas de longa duração que não precisam de muito direcionamento, ou trabalho que deve continuar quando você estiver offline | Nuvem, gerenciada pela Anthropic por padrão; continua após você se desconectar |

22| [Mobile](https://code.claude.com/docs/pt/mobile.md) | Iniciar e monitorar tarefas enquanto estiver longe de seu computador | Sessões em nuvem do aplicativo Claude para iOS e Android, [Remote Control](https://code.claude.com/docs/pt/remote-control.md) para sessões locais, [Dispatch](https://code.claude.com/docs/pt/desktop.md#sessions-from-dispatch) para Desktop em Pro e Max |22| [Mobile](https://code.claude.com/docs/pt/mobile.md) | Iniciar e monitorar tarefas enquanto estiver longe de seu computador | Sessões na nuvem do aplicativo Claude para iOS e Android, [Remote Control](https://code.claude.com/docs/pt/remote-control.md) para sessões locais, [Dispatch](https://code.claude.com/docs/pt/desktop.md#sessions-from-dispatch) para Desktop em Pro, Max e Ultra |

23 23 

24A CLI é a superfície mais completa para trabalho nativo de terminal: scripts e o Agent SDK são apenas CLI. Provedores de terceiros também funcionam em [VS Code](https://code.claude.com/docs/pt/vs-code.md#use-third-party-providers) e em [JetBrains](https://code.claude.com/docs/pt/feature-availability.md#features-available-on-every-provider), que executa a CLI no terminal do seu IDE. Implantações [Desktop](https://code.claude.com/docs/pt/desktop.md) corporativas suportam Google Cloud's Agent Platform, e Desktop suporta [provedores de gateway](https://code.claude.com/docs/pt/llm-gateway-connect.md#desktop-app); para Amazon Bedrock ou Microsoft Foundry, use a CLI ou uma extensão IDE, ou [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview), que executa a aba Code nesses provedores. Desktop e as extensões IDE trocam alguns recursos apenas CLI por revisão visual e integração mais estreita do editor. A web é executada na nuvem, portanto as tarefas continuam após você se desconectar. Mobile é um cliente fino nessas mesmas sessões em nuvem ou em uma sessão local via Remote Control, e pode enviar tarefas para Desktop com Dispatch.24A CLI é a superfície mais completa para trabalho nativo de terminal: scripts e o Agent SDK são apenas CLI. Provedores de terceiros também funcionam em [VS Code](https://code.claude.com/docs/pt/vs-code.md#use-third-party-providers) e em [JetBrains](https://code.claude.com/docs/pt/feature-availability.md#features-available-on-every-provider), que executa a CLI no terminal do seu IDE. Implantações [Desktop](https://code.claude.com/docs/pt/desktop.md) corporativas suportam Google Cloud's Agent Platform, e Desktop suporta [provedores de gateway](https://code.claude.com/docs/pt/llm-gateway-connect.md#desktop-app); para Amazon Bedrock ou Microsoft Foundry, use a CLI ou uma extensão IDE, ou [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview), que executa a aba Code nesses provedores. Desktop e as extensões IDE trocam alguns recursos apenas CLI por revisão visual e integração mais estreita do editor. A web é executada na nuvem, portanto as tarefas continuam após você se desconectar. Mobile é um cliente fino nessas mesmas sessões em nuvem ou em uma sessão local via Remote Control, e pode enviar tarefas para Desktop com Dispatch.

25 25 


35| [GitHub Actions](https://code.claude.com/docs/pt/github-actions.md) | Executa Claude em seu pipeline CI | Revisões automatizadas de PR, triagem de problemas, manutenção agendada |35| [GitHub Actions](https://code.claude.com/docs/pt/github-actions.md) | Executa Claude em seu pipeline CI | Revisões automatizadas de PR, triagem de problemas, manutenção agendada |

36| [GitLab CI/CD](https://code.claude.com/docs/pt/gitlab-ci-cd.md) | O mesmo que GitHub Actions para GitLab | Automação orientada por CI no GitLab |36| [GitLab CI/CD](https://code.claude.com/docs/pt/gitlab-ci-cd.md) | O mesmo que GitHub Actions para GitLab | Automação orientada por CI no GitLab |

37| [Code Review](https://code.claude.com/docs/pt/code-review.md) | Revisa cada PR automaticamente | Capturando bugs antes da revisão humana |37| [Code Review](https://code.claude.com/docs/pt/code-review.md) | Revisa cada PR automaticamente | Capturando bugs antes da revisão humana |

38| [Slack](https://code.claude.com/docs/pt/slack.md) | Responde a menções `@Claude` em seus canais, com sua própria conta | Transformando relatórios de bugs em pull requests do chat da equipe nos planos Pro e Max |38| [Slack](https://code.claude.com/docs/pt/slack.md) | Responde a menções `@Claude` em seus canais, com sua própria conta | Transformando relatórios de bugs em pull requests do chat da equipe nos planos Pro, Max e Ultra |

39| [Claude Tag](https://claude.com/docs/claude-tag) | Executa `@Claude` como a identidade compartilhada de sua organização com acesso configurado pelo administrador | Acesso compartilhado da equipe em planos Team e Enterprise, em vez de sessões Slack por usuário |39| [Claude Tag](https://claude.com/docs/claude-tag) | Executa `@Claude` como a identidade compartilhada de sua organização com acesso configurado pelo administrador | Acesso compartilhado da equipe em planos Team e Enterprise, em vez de sessões Slack por usuário |

40 40 

41Para integrações não listadas aqui, [servidores MCP](https://code.claude.com/docs/pt/mcp.md) e [conectores](https://code.claude.com/docs/pt/desktop.md#connect-external-tools) permitem que você conecte quase qualquer coisa: Linear, Notion, Google Drive ou suas próprias APIs internas.41Para integrações não listadas aqui, [servidores MCP](https://code.claude.com/docs/pt/mcp.md) e [conectores](https://code.claude.com/docs/pt/desktop.md#connect-external-tools) permitem que você conecte quase qualquer coisa: Linear, Notion, Google Drive ou suas próprias APIs internas.


49| [Dispatch](https://code.claude.com/docs/pt/desktop.md#sessions-from-dispatch) | Envie uma tarefa a partir do aplicativo móvel Claude | Sua máquina (Desktop) | [Emparelhe o aplicativo móvel com Desktop](https://support.claude.com/en/articles/13947068) | Delegar trabalho enquanto você está ausente, configuração mínima |49| [Dispatch](https://code.claude.com/docs/pt/desktop.md#sessions-from-dispatch) | Envie uma tarefa a partir do aplicativo móvel Claude | Sua máquina (Desktop) | [Emparelhe o aplicativo móvel com Desktop](https://support.claude.com/en/articles/13947068) | Delegar trabalho enquanto você está ausente, configuração mínima |

50| [Remote Control](https://code.claude.com/docs/pt/remote-control.md) | Dirija uma sessão em execução a partir de [claude.ai/code](https://claude.ai/code) ou do aplicativo móvel Claude | Sua máquina (CLI, Desktop ou VS Code) | Execute [`claude remote-control` ou `/remote-control`](https://code.claude.com/docs/pt/remote-control#start-a-remote-control-session) | Orientar trabalho em andamento de outro dispositivo |50| [Remote Control](https://code.claude.com/docs/pt/remote-control.md) | Dirija uma sessão em execução a partir de [claude.ai/code](https://claude.ai/code) ou do aplicativo móvel Claude | Sua máquina (CLI, Desktop ou VS Code) | Execute [`claude remote-control` ou `/remote-control`](https://code.claude.com/docs/pt/remote-control#start-a-remote-control-session) | Orientar trabalho em andamento de outro dispositivo |

51| [Channels](https://code.claude.com/docs/pt/channels.md) | Envie eventos de um aplicativo de chat como Telegram ou Discord, ou seu próprio servidor | Sua máquina (CLI) | [Instale um plugin de canal](https://code.claude.com/docs/pt/channels.md#quickstart) ou [crie o seu próprio](https://code.claude.com/docs/pt/channels-reference.md) | Reagir a eventos externos como falhas de CI ou mensagens de chat |51| [Channels](https://code.claude.com/docs/pt/channels.md) | Envie eventos de um aplicativo de chat como Telegram ou Discord, ou seu próprio servidor | Sua máquina (CLI) | [Instale um plugin de canal](https://code.claude.com/docs/pt/channels.md#quickstart) ou [crie o seu próprio](https://code.claude.com/docs/pt/channels-reference.md) | Reagir a eventos externos como falhas de CI ou mensagens de chat |

52| [Slack](https://code.claude.com/docs/pt/slack.md) | Mencione `@Claude` em um canal de equipe | Nuvem Anthropic | [Instale o aplicativo Slack](https://code.claude.com/docs/pt/slack.md#setting-up-claude-code-in-slack) com [Claude Code na web](https://code.claude.com/docs/pt/claude-code-on-the-web.md) ativado, em planos Pro e Max | PRs e revisões do chat da equipe |52| [Slack](https://code.claude.com/docs/pt/slack.md) | Mencione `@Claude` em um canal de equipe | Nuvem Anthropic | [Instale o aplicativo Slack](https://code.claude.com/docs/pt/slack.md#setting-up-claude-code-in-slack) com [Claude Code na web](https://code.claude.com/docs/pt/claude-code-on-the-web.md) ativado, em planos Pro, Max e Ultra | PRs e revisões do chat da equipe |

53| [Self-hosted environments](https://code.claude.com/docs/pt/self-hosted-environments) | Inicie uma [sessão na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) e escolha o ambiente da sua organização | Infraestrutura da sua organização | [Implante runners](https://code.claude.com/docs/pt/self-hosted-environments-quickstart.md), em planos Team e Enterprise | Sessões na nuvem que devem ser executadas dentro da sua rede |53| [Self-hosted environments](https://code.claude.com/docs/pt/self-hosted-environments) | Inicie uma [sessão na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) e escolha o ambiente da sua organização | Infraestrutura da sua organização | [Implante runners](https://code.claude.com/docs/pt/self-hosted-environments-quickstart.md), em planos Team e Enterprise | Sessões na nuvem que devem ser executadas dentro da sua rede |

54| [Scheduled tasks](https://code.claude.com/docs/pt/scheduled-tasks.md) | Defina um cronograma | [CLI](https://code.claude.com/docs/pt/scheduled-tasks.md), [Desktop](https://code.claude.com/docs/pt/desktop-scheduled-tasks.md), ou [nuvem](https://code.claude.com/docs/pt/routines.md) | Escolha uma frequência | Automação recorrente como revisões diárias |54| [Scheduled tasks](https://code.claude.com/docs/pt/scheduled-tasks.md) | Defina um cronograma | [CLI](https://code.claude.com/docs/pt/scheduled-tasks.md), [Desktop](https://code.claude.com/docs/pt/desktop-scheduled-tasks.md), ou [nuvem](https://code.claude.com/docs/pt/routines.md) | Escolha uma frequência | Automação recorrente como revisões diárias |

55 55 


74* [GitHub Actions](https://code.claude.com/docs/pt/github-actions.md): execute Claude em seu pipeline CI74* [GitHub Actions](https://code.claude.com/docs/pt/github-actions.md): execute Claude em seu pipeline CI

75* [GitLab CI/CD](https://code.claude.com/docs/pt/gitlab-ci-cd.md): o mesmo para GitLab75* [GitLab CI/CD](https://code.claude.com/docs/pt/gitlab-ci-cd.md): o mesmo para GitLab

76* [Code Review](https://code.claude.com/docs/pt/code-review.md): revisão automática em cada pull request76* [Code Review](https://code.claude.com/docs/pt/code-review.md): revisão automática em cada pull request

77* [Slack](https://code.claude.com/docs/pt/slack.md): envie tarefas do chat da equipe e obtenha PRs de volta, nos planos Pro e Max77* [Slack](https://code.claude.com/docs/pt/slack.md): envie tarefas do chat da equipe e obtenha PRs de volta, nos planos Pro, Max e Ultra

78* [Claude Tag](https://claude.com/docs/claude-tag): execute `@Claude` como a identidade compartilhada de sua organização em planos Team e Enterprise78* [Claude Tag](https://claude.com/docs/claude-tag): execute `@Claude` como a identidade compartilhada de sua organização em planos Team e Enterprise

79 79 

80### Acesso remoto80### Acesso remoto

plugins/install.md +96 −96

Details

27 27 

28Escolha a aba para onde você executa o Claude Code.28Escolha a aba para onde você executa o Claude Code.

29 29 

30**Terminal**30> [tab] Terminal

31 31>

32Inicie o Claude Code com `claude` no seu projeto e depois:32> Inicie o Claude Code com `claude` no seu projeto e depois:

33 33>

34**1. Abra os detalhes do plugin com o comando de instalação**34> **1. Abra os detalhes do plugin com o comando de instalação**

35 35>

36Execute `/plugin install` com o nome do plugin e do marketplace. Em uma sessão, este comando não instala imediatamente: ele abre o painel `/plugin` nos detalhes desse plugin para que você possa revisá-lo e escolher um escopo primeiro.36> Execute `/plugin install` com o nome do plugin e do marketplace. Em uma sessão, este comando não instala imediatamente: ele abre o painel `/plugin` nos detalhes desse plugin para que você possa revisá-lo e escolher um escopo primeiro.

37 37>

38```text theme={null}38> ```text theme={null}

39/plugin install commit-commands@claude-plugins-official39> /plugin install commit-commands@claude-plugins-official

40```40> ```

41 41>

42Para navegar, execute `/plugin` sem nome de plugin: o painel abre na aba **Discover**, que lista plugins de seus marketplaces, e você pode digitar para pesquisar, depois pressionar **Enter** em um plugin para abrir seus detalhes.42> Para navegar, execute `/plugin` sem nome de plugin: o painel abre na aba **Discover**, que lista plugins de seus marketplaces, e você pode digitar para pesquisar, depois pressionar **Enter** em um plugin para abrir seus detalhes.

43 43>

44**2. Revise o que o plugin adiciona**44> **2. Revise o que o plugin adiciona**

45 45>

46O painel de detalhes mostra a descrição do plugin. Ele também pode mostrar:46> O painel de detalhes mostra a descrição do plugin. Ele também pode mostrar:

47 47>

48* **Will install**: os comandos, agents, skills, hooks e servidores MCP e LSP que o plugin adiciona.48> * **Will install**: os comandos, agents, skills, hooks e servidores MCP e LSP que o plugin adiciona.

49* **Last updated**: mostrado para um plugin no marketplace oficial da Anthropic.49> * **Last updated**: mostrado para um plugin no marketplace oficial da Anthropic.

50* **Context cost**: para um plugin no marketplace oficial da Anthropic, duas estimativas de tokens. **Every turn** é o que o plugin adiciona a cada mensagem que você envia, e **When invoked** é o que suas skills e agents adicionam uma vez que o Claude os carrega. As estimativas aparecem quando você abre o plugin nomeando seu marketplace, como o comando da etapa 1 faz, ou na aba **Marketplaces**. O painel de detalhes que você alcança na lista **Discover** não as mostra.50> * **Context cost**: para um plugin no marketplace oficial da Anthropic, duas estimativas de tokens. **Every turn** é o que o plugin adiciona a cada mensagem que você envia, e **When invoked** é o que suas skills e agents adicionam uma vez que o Claude os carrega. As estimativas aparecem quando você abre o plugin nomeando seu marketplace, como o comando da etapa 1 faz, ou na aba **Marketplaces**. O painel de detalhes que você alcança na lista **Discover** não as mostra.

51 51>

52Plugins de um marketplace local ou personalizado podem mostrar `Components will be discovered at installation` em vez disso.52> Plugins de um marketplace local ou personalizado podem mostrar `Components will be discovered at installation` em vez disso.

53 53>

54Um plugin pode executar hooks e servidores MCP, então leia o painel antes de instalar. Veja [Segurança e confiança de plugins](https://code.claude.com/docs/pt/plugins/security.md).54> Um plugin pode executar hooks e servidores MCP, então leia o painel antes de instalar. Veja [Segurança e confiança de plugins](https://code.claude.com/docs/pt/plugins/security.md).

55 55>

56**3. Escolha um escopo**56> **3. Escolha um escopo**

57 57>

58Selecione uma das três opções de instalação:58> Selecione uma das três opções de instalação:

59 59>

60* **Install for you (user scope)**: você obtém o plugin em cada projeto nesta máquina60> * **Install for you (user scope)**: você obtém o plugin em cada projeto nesta máquina

61* **Install for all collaborators on this repository (project scope)**: ele é habilitado para todos que trabalham neste repositório61> * **Install for all collaborators on this repository (project scope)**: ele é habilitado para todos que trabalham neste repositório

62* **Install for you, in this repo only (local scope)**: você o obtém apenas neste repositório62> * **Install for you, in this repo only (local scope)**: você o obtém apenas neste repositório

63 63>

64[Escolha um escopo de instalação](#choose-an-install-scope) diz qual arquivo de configurações cada um escreve e qual se aplica quando o mesmo plugin é definido em mais de um.64> [Escolha um escopo de instalação](#choose-an-install-scope) diz qual arquivo de configurações cada um escreve e qual se aplica quando o mesmo plugin é definido em mais de um.

65 65>

66Depois de selecionar um escopo, o Claude Code instala o plugin junto com qualquer dependência que ele declara e imprime um resumo de instalação.66> Depois de selecionar um escopo, o Claude Code instala o plugin junto com qualquer dependência que ele declara e imprime um resumo de instalação.

67 67>

68**4. Leia o resumo de instalação**68> **4. Leia o resumo de instalação**

69 69>

70A última frase do resumo diz se o plugin é utilizável nesta sessão:70> A última frase do resumo diz se o plugin é utilizável nesta sessão:

71 71>

72* **Active now**: `Plugin is now active.` Nenhuma recarga é necessária.72> * **Active now**: `Plugin is now active.` Nenhuma recarga é necessária.

73* **Active, but a server needs setup**: `Plugin is now active.` é seguido por `Its bundled MCP server needs configuration before it can start`. O [servidor MCP empacotado](https://code.claude.com/docs/pt/plugins/components.md#include-a-packaged-mcpb-server) do plugin não pode iniciar até que você defina suas opções. Selecione o plugin na aba **Installed** em `/plugin` e escolha **Configure** para definir as opções do servidor.73> * **Active, but a server needs setup**: `Plugin is now active.` é seguido por `Its bundled MCP server needs configuration before it can start`. O [servidor MCP empacotado](https://code.claude.com/docs/pt/plugins/components.md#include-a-packaged-mcpb-server) do plugin não pode iniciar até que você defina suas opções. Selecione o plugin na aba **Installed** em `/plugin` e escolha **Configure** para definir as opções do servidor.

74* **Reload needed**: `Run /reload-plugins to apply.` O painel fecha e o Claude Code executa essa recarga para você. Se a recarga [invalidasse o cache de prompt](https://code.claude.com/docs/pt/prompt-caching.md#enabling-or-disabling-a-plugin), ela avisa e deixa o plugin pendente. Execute `/reload-plugins --force` para ativá-lo mesmo assim, o que custa uma requisição sem cache.74> * **Reload needed**: `Run /reload-plugins to apply.` O painel fecha e o Claude Code executa essa recarga para você. Se a recarga [invalidasse o cache de prompt](https://code.claude.com/docs/pt/prompt-caching.md#enabling-or-disabling-a-plugin), ela avisa e deixa o plugin pendente. Execute `/reload-plugins --force` para ativá-lo mesmo assim, o que custa uma requisição sem cache.

75* **Load failed**: `The plugin couldn't be loaded`. Abra a aba **Errors** em `/plugin` para saber o motivo e depois veja [Após instalação: plugin não funcionando](https://code.claude.com/docs/pt/plugins/troubleshooting.md#plugin-installed-but-not-working).75> * **Load failed**: `The plugin couldn't be loaded`. Abra a aba **Errors** em `/plugin` para saber o motivo e depois veja [Após instalação: plugin não funcionando](https://code.claude.com/docs/pt/plugins/troubleshooting.md#plugin-installed-but-not-working).

76 76>

77**5. Confirme que o plugin funciona**77> **5. Confirme que o plugin funciona**

78 78>

79Digite `/` e procure as skills do plugin sob seu nome, na forma `/<plugin>:<skill>`. Para `commit-commands`, `/commit-commands:commit` aparece. Dois outros lugares listam o plugin também:79> Digite `/` e procure as skills do plugin sob seu nome, na forma `/<plugin>:<skill>`. Para `commit-commands`, `/commit-commands:commit` aparece. Dois outros lugares listam o plugin também:

80 80>

81* Abra a aba **Installed** em `/plugin`, que lista o plugin com seu escopo.81> * Abra a aba **Installed** em `/plugin`, que lista o plugin com seu escopo.

82* No seu shell, execute `claude plugin list`, que imprime a mesma lista com linhas `Version`, `Scope` e `Status`.82> * No seu shell, execute `claude plugin list`, que imprime a mesma lista com linhas `Version`, `Scope` e `Status`.

83 83>

84Se `/commit-commands:commit` não aparecer, veja [Após instalação: plugin não funcionando](https://code.claude.com/docs/pt/plugins/troubleshooting.md#plugin-installed-but-not-working).84> Se `/commit-commands:commit` não aparecer, veja [Após instalação: plugin não funcionando](https://code.claude.com/docs/pt/plugins/troubleshooting.md#plugin-installed-but-not-working).

85 85>

86Instalar de qualquer outro marketplace requer uma etapa extra primeiro: [adicione o marketplace](#add-a-marketplace). O Claude Code adiciona o marketplace oficial da Anthropic para você na primeira vez que você inicia uma sessão de terminal interativa, é por isso que o exemplo pula essa etapa. Se você encontrou um plugin em [claude.com/marketplace](https://claude.com/marketplace), seu botão **Claude Code** copia o comando de instalação em sua [forma de shell](#install-from-your-shell), `claude plugin install <name>@claude-plugins-official`.86> Instalar de qualquer outro marketplace requer uma etapa extra primeiro: [adicione o marketplace](#add-a-marketplace). O Claude Code adiciona o marketplace oficial da Anthropic para você na primeira vez que você inicia uma sessão de terminal interativa, é por isso que o exemplo pula essa etapa. Se você encontrou um plugin em [claude.com/marketplace](https://claude.com/marketplace), seu botão **Claude Code** copia o comando de instalação em sua [forma de shell](#install-from-your-shell), `claude plugin install <name>@claude-plugins-official`.

87 

88**Desktop app**

89 

90Em uma sessão local ou SSH na aba **Code** do aplicativo desktop:

91 

92**1. Abra o navegador de plugins**

93 

94Clique no botão **+** ao lado da caixa de prompt e selecione **Add plugins**. Se o menu **+** mostrar **Plugins** em vez de **Add plugins**, selecione **Plugins** e depois **Browse plugins**. O navegador de plugins abre com os plugins de seus marketplaces.

95 

96**2. Selecione o plugin**

97 

98Encontre `commit-commands` e selecione-o.

99 

100**3. Escolha um escopo**

101 

102Escolha um [escopo](#choose-an-install-scope): sua conta de usuário, este projeto ou apenas local.

103 

104Para habilitar, desabilitar ou desinstalar um plugin depois, veja [Instalar plugins no aplicativo desktop](https://code.claude.com/docs/pt/desktop.md#install-plugins).

105 

106**VS Code**

107 

108No painel do Claude Code no VS Code:

109 

110**1. Abra Manage plugins**

111 

112Digite `/plugins` na caixa de prompt para abrir **Manage plugins**.

113 

114**2. Instale o plugin**

115 

116Na aba **Plugins**, procure por `commit-commands` e clique em **Install**. Se a aba não listar plugins, adicione `anthropics/claude-plugins-official` na aba **Marketplaces** primeiro.

117 

118**3. Escolha um escopo**

119 

120Escolha um [escopo](#choose-an-install-scope): **Install for you**, **Install for this project** ou **Install locally**.

121 

122Suas alterações se aplicam a sessões abertas sem reinicialização. Veja [Gerenciar plugins no VS Code](https://code.claude.com/docs/pt/vs-code.md#manage-plugins).

123 87 

124**Cloud session**88> [tab] Desktop app

89>

90> Em uma sessão local ou SSH na aba **Code** do aplicativo desktop:

91>

92> **1. Abra o navegador de plugins**

93>

94> Clique no botão **+** ao lado da caixa de prompt e selecione **Add plugins**. Se o menu **+** mostrar **Plugins** em vez de **Add plugins**, selecione **Plugins** e depois **Browse plugins**. O navegador de plugins abre com os plugins de seus marketplaces.

95>

96> **2. Selecione o plugin**

97>

98> Encontre `commit-commands` e selecione-o.

99>

100> **3. Escolha um escopo**

101>

102> Escolha um [escopo](#choose-an-install-scope): sua conta de usuário, este projeto ou apenas local.

103>

104> Para habilitar, desabilitar ou desinstalar um plugin depois, veja [Instalar plugins no aplicativo desktop](https://code.claude.com/docs/pt/desktop.md#install-plugins).

125 105 

126Uma [sessão na nuvem](https://code.claude.com/docs/pt/cloud-environments.md), incluindo [o navegador em claude.ai/code](https://code.claude.com/docs/pt/claude-code-on-the-web.md), não tem navegador de plugins e não carrega os plugins que você instalou em sua própria máquina ou os que o `.claude/settings.json` do seu repositório ativa. Para plugins que sua organização distribui através de configurações gerenciadas, veja [Gerenciar plugins para sua organização](https://code.claude.com/docs/pt/plugins/org.md).106> [tab] VS Code

107>

108> No painel do Claude Code no VS Code:

109>

110> **1. Abra Manage plugins**

111>

112> Digite `/plugins` na caixa de prompt para abrir **Manage plugins**.

113>

114> **2. Instale o plugin**

115>

116> Na aba **Plugins**, procure por `commit-commands` e clique em **Install**. Se a aba não listar plugins, adicione `anthropics/claude-plugins-official` na aba **Marketplaces** primeiro.

117>

118> **3. Escolha um escopo**

119>

120> Escolha um [escopo](#choose-an-install-scope): **Install for you**, **Install for this project** ou **Install locally**.

121>

122> Suas alterações se aplicam a sessões abertas sem reinicialização. Veja [Gerenciar plugins no VS Code](https://code.claude.com/docs/pt/vs-code.md#manage-plugins).

127 123 

128Veja [quais partes de sua configuração também estão disponíveis em uma sessão na nuvem](https://code.claude.com/docs/pt/cloud-environments.md#what-carries-over-from-your-setup) para o resto de sua configuração.124> [tab] Cloud session

125>

126> Uma [sessão na nuvem](https://code.claude.com/docs/pt/cloud-environments.md), incluindo [o navegador em claude.ai/code](https://code.claude.com/docs/pt/claude-code-on-the-web.md), não tem navegador de plugins e não carrega os plugins que você instalou em sua própria máquina ou os que o `.claude/settings.json` do seu repositório ativa. Para plugins que sua organização distribui através de configurações gerenciadas, veja [Gerenciar plugins para sua organização](https://code.claude.com/docs/pt/plugins/org.md).

127>

128> Veja [quais partes de sua configuração também estão disponíveis em uma sessão na nuvem](https://code.claude.com/docs/pt/cloud-environments.md#what-carries-over-from-your-setup) para o resto de sua configuração.

129 129 

130### Escolha um escopo de instalação130### Escolha um escopo de instalação

131 131 

Details

116 116 

117### Compartilhamento de uso em `/usage`117### Compartilhamento de uso em `/usage`

118 118 

119Em um plano Pro, Max, Team ou Enterprise, o detalhamento `/usage` atribui o uso recente a skills, subagentes, plugins e servidores MCP como uma parte do total. Veja [Usando o comando `/usage`](https://code.claude.com/docs/pt/costs#using-the-/usage-command).119Em um plano Pro, Max, Ultra, Team ou Enterprise, o detalhamento `/usage` atribui o uso recente a skills, subagentes, plugins e servidores MCP como uma parte do total. Veja [Usando o comando `/usage`](https://code.claude.com/docs/pt/costs#using-the-/usage-command).

120 120 

121## Medir em toda a frota121## Medir em toda a frota

122 122 

Details

92 92 

93Crie os dois diretórios que contêm os arquivos:93Crie os dois diretórios que contêm os arquivos:

94 94 

95**Bash ou Zsh**95> [tab] Bash ou Zsh

96 96>

97```bash theme={null}97> ```bash theme={null}

98mkdir -p first-mod/.claude-plugin first-mod/hooks98> mkdir -p first-mod/.claude-plugin first-mod/hooks

99```99> ```

100 

101**PowerShell**

102 100 

103```powershell theme={null}101> [tab] PowerShell

104New-Item -ItemType Directory -Force first-mod\.claude-plugin, first-mod\hooks102>

105```103> ```powershell theme={null}

104> New-Item -ItemType Directory -Force first-mod\.claude-plugin, first-mod\hooks

105> ```

106 106 

107**2. Escreva o manifest**107**2. Escreva o manifest**

108 108 

Details

181 181 

182O painel e a faixa ficam vazios até um mod preenchê-los. Selecione uma aba para ver o que cada um é e como desenhar nele:182O painel e a faixa ficam vazios até um mod preenchê-los. Selecione uma aba para ver o que cada um é e como desenhar nele:

183 183 

184**Pane**184> [tab] Pane

185 185>

186Um painel é uma barra lateral ao lado da transcrição em um terminal fullscreen amplo, ou uma região enquadrada acima do prompt caso contrário. Com vários painéis abertos, cada um recebe uma aba que mostra seu título.186> Um painel é uma barra lateral ao lado da transcrição em um terminal fullscreen amplo, ou uma região enquadrada acima do prompt caso contrário. Com vários painéis abertos, cada um recebe uma aba que mostra seu título.

187 187>

188Um painel aparece quando seu mod chama `$.ui.open` com um `id` que você escolhe, como em `$.ui.open({ id: 'hello-tabs' })`. [Abrir um painel no momento certo](#open-a-pane-at-the-right-time) cobre os outros campos e quando um painel espera por um terminal mais amplo.188> Um painel aparece quando seu mod chama `$.ui.open` com um `id` que você escolhe, como em `$.ui.open({ id: 'hello-tabs' })`. [Abrir um painel no momento certo](#open-a-pane-at-the-right-time) cobre os outros campos e quando um painel espera por um terminal mais amplo.

189 189>

190Para desenhar em seu painel, filtre em `{ component: 'Pane' }` e verifique se `e.requestId` é seu `id`.190> Para desenhar em seu painel, filtre em `{ component: 'Pane' }` e verifique se `e.requestId` é seu `id`.

191 

192**Band above the prompt**

193 

194A faixa é uma tira diretamente acima da entrada do prompt. Ela está sempre lá, e cada mod a compartilha.

195 

196Seu hook retorna uma árvore para mostrar algo na faixa, ou `next(e)` para não mostrar nada. Uma árvore substitui o que os mods [depois do seu](https://code.claude.com/docs/pt/plugins/mods/events.md#the-order-mods-run-in) desenham lá. Para manter o deles, coloque o resultado de `await next(e)` entre os filhos de uma [`Box`](#build-a-tree-from-elements) em sua árvore.

197 191 

198Para desenhar na faixa, filtre em `{ component: 'AbovePrompt' }`.192> [tab] Band above the prompt

193>

194> A faixa é uma tira diretamente acima da entrada do prompt. Ela está sempre lá, e cada mod a compartilha.

195>

196> Seu hook retorna uma árvore para mostrar algo na faixa, ou `next(e)` para não mostrar nada. Uma árvore substitui o que os mods [depois do seu](https://code.claude.com/docs/pt/plugins/mods/events.md#the-order-mods-run-in) desenham lá. Para manter o deles, coloque o resultado de `await next(e)` entre os filhos de uma [`Box`](#build-a-tree-from-elements) em sua árvore.

197>

198> Para desenhar na faixa, filtre em `{ component: 'AbovePrompt' }`.

199 199 

200### Alterar o que o Claude Code já desenha200### Alterar o que o Claude Code já desenha

201 201 


214 214 

215Em um site que o Claude Code já desenha, seu hook pode alterar um detalhe, substituir o desenho ou deixá-lo em paz. Selecione uma aba para ver cada um aplicado ao spinner. Os exemplos leem uma variável `calls` que outro hook conta, como no [mod do tutorial](https://code.claude.com/docs/pt/plugins/mods/create.md#write-a-mod-yourself).215Em um site que o Claude Code já desenha, seu hook pode alterar um detalhe, substituir o desenho ou deixá-lo em paz. Selecione uma aba para ver cada um aplicado ao spinner. Os exemplos leem uma variável `calls` que outro hook conta, como no [mod do tutorial](https://code.claude.com/docs/pt/plugins/mods/create.md#write-a-mod-yourself).

216 216 

217**Change a detail**217> [tab] Change a detail

218 218>

219Para manter o desenho do Claude Code e alterar uma parte dele, passe para `next` uma cópia do evento com `props` alteradas. Este hook altera o texto após a palavra do spinner:219> Para manter o desenho do Claude Code e alterar uma parte dele, passe para `next` uma cópia do evento com `props` alteradas. Este hook altera o texto após a palavra do spinner:

220 220>

221```javascript theme={null}221> ```javascript theme={null}

222on('ui.render', { component: 'Spinner' }, async ($, e, next) => {222> on('ui.render', { component: 'Spinner' }, async ($, e, next) => {

223 // Keep Claude Code's spinner, and change the text after its word223> // Keep Claude Code's spinner, and change the text after its word

224 return next({ ...e, props: { ...e.props, suffix: ' · tool calls: ' + calls + '…' } })224> return next({ ...e, props: { ...e.props, suffix: ' · tool calls: ' + calls + '…' } })

225})225> })

226```226> ```

227 227>

228O spinner mantém sua animação e sua palavra, e seu texto segue a palavra:228> O spinner mantém sua animação e sua palavra, e seu texto segue a palavra:

229 229>

230```text theme={null}230> ```text theme={null}

231Thinking · tool calls: 2…231> Thinking · tool calls: 2…

232```232> ```

233 

234**Replace the drawing**

235 

236Para desenhar algo do seu próprio no lugar do site, retorne uma árvore e não chame `next`. Este hook desenha uma linha de texto onde o spinner seria:

237 

238```javascript theme={null}

239on('ui.render', { component: 'Spinner' }, async ($, e) => {

240 const { Text } = $.ui.resolve(e)

241 // No call to next, so this line is drawn in the spinner's place

242 return Text({ children: ['Claude has made ' + calls + ' tool calls'] })

243})

244```

245 

246Enquanto o Claude trabalha, sua linha mostra e o spinner do Claude Code não:

247 

248```text theme={null}

249Claude has made 2 tool calls

250```

251 

252**Leave it alone**

253 

254Para deixar o site como o Claude Code o desenha, retorne `next(e)`. Um hook frequentemente faz isso para alguns eventos e não para outros. Este hook deixa o spinner em paz até haver uma chamada para contar:

255 

256```javascript theme={null}

257on('ui.render', { component: 'Spinner' }, async ($, e, next) => {

258 // Nothing to show yet, so pass the event on unchanged

259 if (calls === 0) return next(e)

260 return next({ ...e, props: { ...e.props, suffix: ' · tool calls: ' + calls + '…' } })

261})

262```

263 233 

264Antes da primeira chamada de ferramenta, o spinner se parece com a forma como é sem o mod:234> [tab] Replace the drawing

235>

236> Para desenhar algo do seu próprio no lugar do site, retorne uma árvore e não chame `next`. Este hook desenha uma linha de texto onde o spinner seria:

237>

238> ```javascript theme={null}

239> on('ui.render', { component: 'Spinner' }, async ($, e) => {

240> const { Text } = $.ui.resolve(e)

241> // No call to next, so this line is drawn in the spinner's place

242> return Text({ children: ['Claude has made ' + calls + ' tool calls'] })

243> })

244> ```

245>

246> Enquanto o Claude trabalha, sua linha mostra e o spinner do Claude Code não:

247>

248> ```text theme={null}

249> Claude has made 2 tool calls

250> ```

265 251 

266```text theme={null}252> [tab] Leave it alone

267Thinking…253>

268```254> Para deixar o site como o Claude Code o desenha, retorne `next(e)`. Um hook frequentemente faz isso para alguns eventos e não para outros. Este hook deixa o spinner em paz até haver uma chamada para contar:

255>

256> ```javascript theme={null}

257> on('ui.render', { component: 'Spinner' }, async ($, e, next) => {

258> // Nothing to show yet, so pass the event on unchanged

259> if (calls === 0) return next(e)

260> return next({ ...e, props: { ...e.props, suffix: ' · tool calls: ' + calls + '…' } })

261> })

262> ```

263>

264> Antes da primeira chamada de ferramenta, o spinner se parece com a forma como é sem o mod:

265>

266> ```text theme={null}

267> Thinking…

268> ```

269 269 

270Nesses sites, `next(e)` retorna uma referência ao desenho do Claude Code, `{ type: 'engine', ref }`, a menos que um mod executado depois do seu tenha retornado uma árvore própria. Para alterar o que está nesse desenho, passe para `next` uma cópia do evento com props diferentes, como faz a aba **Change a detail**. Você pode retornar a referência como está, ou colocá-la em uma `Box` ao lado de elementos seus:270Nesses sites, `next(e)` retorna uma referência ao desenho do Claude Code, `{ type: 'engine', ref }`, a menos que um mod executado depois do seu tenha retornado uma árvore própria. Para alterar o que está nesse desenho, passe para `next` uma cópia do evento com props diferentes, como faz a aba **Change a detail**. Você pode retornar a referência como está, ou colocá-la em uma `Box` ao lado de elementos seus:

271 271 


357 357 

358Selecione uma aba para ver cada um dos elementos mais comuns e como o terminal o desenha:358Selecione uma aba para ver cada um dos elementos mais comuns e como o terminal o desenha:

359 359 

360**Text**360> [tab] Text

361 361>

362`Text` desenha uma string, com estilo opcional como `bold` e `color`:362> `Text` desenha uma string, com estilo opcional como `bold` e `color`:

363 363>

364```javascript theme={null}364> ```javascript theme={null}

365Text({ children: ['This is the first tab.'] })365> Text({ children: ['This is the first tab.'] })

366```366> ```

367 367>

368```text theme={null}368> ```text theme={null}

369This is the first tab.369> This is the first tab.

370```370> ```

371 

372**Box**

373 

374`Box` organiza o que está dentro dela, em uma linha ou uma coluna. Esta coloca um botão e uma linha de texto lado a lado, duas colunas separadas:

375 

376```javascript theme={null}

377Box({

378 flexDirection: 'row',

379 columnGap: 2,

380 children: [

381 Button({ key: 'more', label: 'Add one', onPress: addOne }),

382 Text({ children: ['Count: 0'] }),

383 ],

384})

385```

386 

387```text theme={null}

388[ Add one ] Count: 0

389```

390 

391**Button**

392 

393`Button` é um controle que o usuário pode pressionar. Ele executa seu callback `onPress`. Com `plain: true` não tem colchetes e mostra seu atalho de teclado:

394 

395```javascript theme={null}

396Button({ key: 'more', label: 'Add one', onPress: addOne })

397Button({ key: 'tab-one', label: 'One', hotkey: '1', plain: true, onPress: showTabOne })

398```

399 

400```text theme={null}

401[ Add one ]

4021: One

403```

404 

405**Input**

406 

407`Input` é um campo de texto. Ele executa seu callback `onSubmit` com o texto quando o usuário pressiona Enter:

408 371 

409```javascript theme={null}372> [tab] Box

410Input({373>

411 key: 'new-note',374> `Box` organiza o que está dentro dela, em uma linha ou uma coluna. Esta coloca um botão e uma linha de texto lado a lado, duas colunas separadas:

412 label: 'Note',375>

413 placeholder: 'Type a note and press Enter',376> ```javascript theme={null}

414 value: '',377> Box({

415 submitLabel: 'add',378> flexDirection: 'row',

416 onSubmit: addNote,379> columnGap: 2,

417})380> children: [

418```381> Button({ key: 'more', label: 'Add one', onPress: addOne }),

382> Text({ children: ['Count: 0'] }),

383> ],

384> })

385> ```

386>

387> ```text theme={null}

388> [ Add one ] Count: 0

389> ```

419 390 

420```text theme={null}391> [tab] Button

421Note: Type a note and press Enter392>

422```393> `Button` é um controle que o usuário pode pressionar. Ele executa seu callback `onPress`. Com `plain: true` não tem colchetes e mostra seu atalho de teclado:

394>

395> ```javascript theme={null}

396> Button({ key: 'more', label: 'Add one', onPress: addOne })

397> Button({ key: 'tab-one', label: 'One', hotkey: '1', plain: true, onPress: showTabOne })

398> ```

399>

400> ```text theme={null}

401> [ Add one ]

402> 1: One

403> ```

423 404 

424Defina `rows` como 2 ou mais para [um campo que contém várias linhas](https://code.claude.com/docs/pt/plugins/mods/gallery.md#input).405> [tab] Input

406>

407> `Input` é um campo de texto. Ele executa seu callback `onSubmit` com o texto quando o usuário pressiona Enter:

408>

409> ```javascript theme={null}

410> Input({

411> key: 'new-note',

412> label: 'Note',

413> placeholder: 'Type a note and press Enter',

414> value: '',

415> submitLabel: 'add',

416> onSubmit: addNote,

417> })

418> ```

419>

420> ```text theme={null}

421> Note: Type a note and press Enter

422> ```

423>

424> Defina `rows` como 2 ou mais para [um campo que contém várias linhas](https://code.claude.com/docs/pt/plugins/mods/gallery.md#input).

425 425 

426A [galeria de interface](https://code.claude.com/docs/pt/plugins/mods/gallery.md) tem exemplos e capturas de tela da maioria dos elementos. Esta tabela lista cada elemento:426A [galeria de interface](https://code.claude.com/docs/pt/plugins/mods/gallery.md) tem exemplos e capturas de tela da maioria dos elementos. Esta tabela lista cada elemento:

427 427 

Details

132 132 

133**1. Confirme que você pode enviar**133**1. Confirme que você pode enviar**

134 134 

135O envio requer um plano pago do claude.ai. No Pro e Max você envia da sua própria conta. No Team e Enterprise, um Owner pode enviar, e no Enterprise um Owner também pode conceder a permissão **Directory** para outros membros através de uma função personalizada em **Organization settings > Roles**. Veja [Confirm you can submit to the directory](https://claude.com/docs/directory/publish#confirm-you-can-submit-to-the-directory).135O envio requer um plano pago do claude.ai. No Pro, Max e Ultra você envia da sua própria conta. No Team e Enterprise, um Owner pode enviar, e no Enterprise um Owner também pode conceder a permissão **Directory** para outros membros através de uma função personalizada em **Organization settings > Roles**. Veja [Confirm you can submit to the directory](https://claude.com/docs/directory/publish#confirm-you-can-submit-to-the-directory).

136 136 

137**2. Valide o plugin localmente**137**2. Valide o plugin localmente**

138 138 

Details

302 302 

303Clonar um marketplace, e re-clonar um para atualizá-lo, recebe 120 segundos por padrão. Para um repositório grande ou uma conexão lenta, aumente o limite. O valor está em milissegundos:303Clonar um marketplace, e re-clonar um para atualizá-lo, recebe 120 segundos por padrão. Para um repositório grande ou uma conexão lenta, aumente o limite. O valor está em milissegundos:

304 304 

305**Bash or Zsh**305> [tab] Bash or Zsh

306 306>

307```bash theme={null}307> ```bash theme={null}

308export CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS=300000308> export CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS=300000

309```309> ```

310 

311**PowerShell**

312 310 

313```powershell theme={null}311> [tab] PowerShell

314$env:CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS = "300000"312>

315```313> ```powershell theme={null}

314> $env:CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS = "300000"

315> ```

316 316 

317Depois tente novamente no mesmo shell.317Depois tente novamente no mesmo shell.

318 318 


328 328 

329Defina esta variável para pular a tentativa de re-clone e continuar usando o checkout existente quando a verificação não conseguir alcançar o host:329Defina esta variável para pular a tentativa de re-clone e continuar usando o checkout existente quando a verificação não conseguir alcançar o host:

330 330 

331**Bash or Zsh**331> [tab] Bash or Zsh

332 332>

333```bash theme={null}333> ```bash theme={null}

334export CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE=1334> export CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE=1

335```335> ```

336 

337**PowerShell**

338 336 

339```powershell theme={null}337> [tab] PowerShell

340$env:CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE = "1"338>

341```339> ```powershell theme={null}

340> $env:CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE = "1"

341> ```

342 342 

343Com a variável definida, Claude Code pula o re-clone apenas para um checkout que já contém `.claude-plugin/marketplace.json`. Um marketplace que nunca foi clonado ou cujo clone parou no meio ainda recebe a tentativa de clone, então adicione-o uma vez enquanto online.343Com a variável definida, Claude Code pula o re-clone apenas para um checkout que já contém `.claude-plugin/marketplace.json`. Um marketplace que nunca foi clonado ou cujo clone parou no meio ainda recebe a tentativa de clone, então adicione-o uma vez enquanto online.

344 344 

quickstart.md +56 −56

Details

14 14 

15* Um terminal ou prompt de comando aberto15* Um terminal ou prompt de comando aberto

16* Um projeto de código para trabalhar16* Um projeto de código para trabalhar

17* Uma [assinatura Claude](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_prereq) (Pro, Max, Team ou Enterprise), conta do [Claude Console](https://platform.claude.com/), ou acesso através de um [provedor de nuvem suportado](https://code.claude.com/docs/pt/third-party-integrations.md)17* Uma [assinatura Claude](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_prereq) (Pro, Max, Ultra, Team ou Enterprise), conta do [Claude Console](https://platform.claude.com/), ou acesso através de um [provedor de nuvem suportado](https://code.claude.com/docs/pt/third-party-integrations.md)

18 18 

19> [!NOTE]19> [!NOTE]

20>20>


27 27 

28Para instalar Claude Code, abra um terminal e execute o comando para seu sistema. Se você nunca usou um terminal antes, o [guia de terminal](https://code.claude.com/docs/pt/terminal-guide) mostra como abrir um e colar o comando.28Para instalar Claude Code, abra um terminal e execute o comando para seu sistema. Se você nunca usou um terminal antes, o [guia de terminal](https://code.claude.com/docs/pt/terminal-guide) mostra como abrir um e colar o comando.

29 29 

30**Instalação Nativa (Recomendado)**30> [tab] Instalação Nativa (Recomendado)

31 

32**macOS, Linux, WSL:**

33 

34```bash theme={null}

35curl -fsSL https://claude.ai/install.sh | bash

36```

37 

38No Windows, seu prompt mostra `PS C:\` quando você está no PowerShell e `C:\` sem o `PS` quando você está no CMD.

39 

40**Windows PowerShell:**

41 

42```powershell theme={null}

43irm https://claude.ai/install.ps1 | iex

44```

45 

46**Windows CMD:**

47 

48```batch theme={null}

49curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

50```

51 

52O comando de instalação não mostra nenhum progresso enquanto baixa o Claude Code. Quando o instalador terminar, abra uma nova janela de terminal e execute `claude --version`. Uma instalação funcionando imprime um número de versão. Se seu shell disser que `claude` não foi encontrado ou não é reconhecido, o diretório de instalação ainda não está em seu PATH: consulte [Corrija seu PATH](https://code.claude.com/docs/pt/troubleshoot-install.md#command-not-found-claude-after-installation).

53 

54Se você vir `The token '&&' is not a valid statement separator`, você está no PowerShell, não no CMD. Se você vir `'irm' is not recognized as an internal or external command`, você está no CMD, não no PowerShell.

55 

56Se o comando de instalação falhar com `syntax error near unexpected token '<'`, um `403`, ou qualquer outro erro, consulte [Solucionar problemas de instalação](https://code.claude.com/docs/pt/troubleshoot-install.md#find-your-error) para corresponder o erro a uma correção e para métodos alternativos de instalação.

57 

58[Git for Windows](https://git-scm.com/downloads/win) é recomendado no Windows nativo para que Claude Code possa usar a ferramenta Bash. Se Git for Windows não estiver instalado, Claude Code usa PowerShell como ferramenta de shell. Configurações WSL não precisam de Git for Windows.

59 

60> [!NOTE]

61>31>

62> As instalações nativas são atualizadas automaticamente em segundo plano para mantê-lo na versão mais recente.32> **macOS, Linux, WSL:**

63 

64**Homebrew**

65 

66```bash theme={null}

67brew install --cask claude-code

68```

69 

70Homebrew oferece dois casks. `claude-code` rastreia o canal de versão estável, que normalmente fica cerca de uma semana atrás e pula versões com regressões importantes. `claude-code@latest` rastreia o canal mais recente e recebe novas versões assim que são lançadas.

71 

72> [!NOTE]

73>33>

74> As instalações do Homebrew não são atualizadas automaticamente. Execute `brew upgrade claude-code` ou `brew upgrade claude-code@latest`, dependendo de qual cask você instalou, para obter os recursos mais recentes e correções de segurança.34> ```bash theme={null}

75 35> curl -fsSL https://claude.ai/install.sh | bash

76**WinGet**36> ```

37>

38> No Windows, seu prompt mostra `PS C:\` quando você está no PowerShell e `C:\` sem o `PS` quando você está no CMD.

39>

40> **Windows PowerShell:**

41>

42> ```powershell theme={null}

43> irm https://claude.ai/install.ps1 | iex

44> ```

45>

46> **Windows CMD:**

47>

48> ```batch theme={null}

49> curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

50> ```

51>

52> O comando de instalação não mostra nenhum progresso enquanto baixa o Claude Code. Quando o instalador terminar, abra uma nova janela de terminal e execute `claude --version`. Uma instalação funcionando imprime um número de versão. Se seu shell disser que `claude` não foi encontrado ou não é reconhecido, o diretório de instalação ainda não está em seu PATH: consulte [Corrija seu PATH](https://code.claude.com/docs/pt/troubleshoot-install.md#command-not-found-claude-after-installation).

53>

54> Se você vir `The token '&&' is not a valid statement separator`, você está no PowerShell, não no CMD. Se você vir `'irm' is not recognized as an internal or external command`, você está no CMD, não no PowerShell.

55>

56> Se o comando de instalação falhar com `syntax error near unexpected token '<'`, um `403`, ou qualquer outro erro, consulte [Solucionar problemas de instalação](https://code.claude.com/docs/pt/troubleshoot-install.md#find-your-error) para corresponder o erro a uma correção e para métodos alternativos de instalação.

57>

58> [Git for Windows](https://git-scm.com/downloads/win) é recomendado no Windows nativo para que Claude Code possa usar a ferramenta Bash. Se Git for Windows não estiver instalado, Claude Code usa PowerShell como ferramenta de shell. Configurações WSL não precisam de Git for Windows.

59>

60> > [!NOTE]

61> >

62> > As instalações nativas são atualizadas automaticamente em segundo plano para mantê-lo na versão mais recente.

77 63 

78```powershell theme={null}64> [tab] Homebrew

79winget install Anthropic.ClaudeCode65>

80```66> ```bash theme={null}

67> brew install --cask claude-code

68> ```

69>

70> Homebrew oferece dois casks. `claude-code` rastreia o canal de versão estável, que normalmente fica cerca de uma semana atrás e pula versões com regressões importantes. `claude-code@latest` rastreia o canal mais recente e recebe novas versões assim que são lançadas.

71>

72> > [!NOTE]

73> >

74> > As instalações do Homebrew não são atualizadas automaticamente. Execute `brew upgrade claude-code` ou `brew upgrade claude-code@latest`, dependendo de qual cask você instalou, para obter os recursos mais recentes e correções de segurança.

81 75 

82> [!NOTE]76> [tab] WinGet

77>

78> ```powershell theme={null}

79> winget install Anthropic.ClaudeCode

80> ```

83>81>

84> As instalações do WinGet não são atualizadas automaticamente. Execute `winget upgrade Anthropic.ClaudeCode` periodicamente para obter os recursos mais recentes e correções de segurança.82> > [!NOTE]

83> >

84> > As instalações do WinGet não são atualizadas automaticamente. Execute `winget upgrade Anthropic.ClaudeCode` periodicamente para obter os recursos mais recentes e correções de segurança.

85 85 

86Você também pode instalar com [apt, dnf, ou apk](https://code.claude.com/docs/pt/setup.md#install-with-linux-package-managers) no Debian, Fedora, RHEL e Alpine.86Você também pode instalar com [apt, dnf, ou apk](https://code.claude.com/docs/pt/setup.md#install-with-linux-package-managers) no Debian, Fedora, RHEL e Alpine.

87 87 


108 108 

109Você pode fazer login usando qualquer um destes tipos de conta:109Você pode fazer login usando qualquer um destes tipos de conta:

110 110 

111* [Claude Pro, Max, Team ou Enterprise](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_login) (recomendado)111* [Claude Pro, Max, Ultra, Team ou Enterprise](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_login) (recomendado)

112* [Claude Console](https://platform.claude.com/) (acesso à API com créditos pré-pagos). No primeiro login, um workspace "Claude Code" é criado automaticamente no Console para rastreamento centralizado de custos.112* [Claude Console](https://platform.claude.com/) (acesso à API com créditos pré-pagos). No primeiro login, um workspace "Claude Code" é criado automaticamente no Console para rastreamento centralizado de custos.

113* [Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry](https://code.claude.com/docs/pt/third-party-integrations.md) (provedores de nuvem empresariais)113* [Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry](https://code.claude.com/docs/pt/third-party-integrations.md) (provedores de nuvem empresariais)

114* Um [gateway de apps do Claude](https://code.claude.com/docs/pt/claude-apps-gateway) auto-hospedado, se sua organização executar um: seu administrador pré-configura a URL do gateway, e `/login` abre diretamente na tela **Cloud gateway** para que você entre com o SSO corporativo114* Um [gateway de apps do Claude](https://code.claude.com/docs/pt/claude-apps-gateway) auto-hospedado, se sua organização executar um: seu administrador pré-configura a URL do gateway, e `/login` abre diretamente na tela **Cloud gateway** para que você entre com o SSO corporativo


267 267 

268Para mais, veja [melhores práticas](https://code.claude.com/docs/pt/best-practices.md) e [fluxos de trabalho comuns](https://code.claude.com/docs/pt/common-workflows.md).268Para mais, veja [melhores práticas](https://code.claude.com/docs/pt/best-practices.md) e [fluxos de trabalho comuns](https://code.claude.com/docs/pt/common-workflows.md).

269 269 

270> **Seja específico com seus pedidos**270> [accordion] Seja específico com seus pedidos

271>271>

272> Em vez de: "corrigir o bug"272> Em vez de: "corrigir o bug"

273>273>

274> Tente: "corrigir o bug de login onde os usuários veem uma tela em branco após inserir credenciais incorretas"274> Tente: "corrigir o bug de login onde os usuários veem uma tela em branco após inserir credenciais incorretas"

275 275 

276> **Use instruções passo a passo**276> [accordion] Use instruções passo a passo

277>277>

278> Divida tarefas complexas em etapas:278> Divida tarefas complexas em etapas:

279>279>


283> 3. construir uma página da web que permite aos usuários ver e editar suas informações283> 3. construir uma página da web que permite aos usuários ver e editar suas informações

284> ```284> ```

285 285 

286> **Deixe Claude explorar primeiro**286> [accordion] Deixe Claude explorar primeiro

287>287>

288> Antes de fazer alterações, deixe Claude entender seu código:288> Antes de fazer alterações, deixe Claude entender seu código:

289>289>


295> construir um painel mostrando produtos que são devolvidos com mais frequência por nossos clientes do Reino Unido295> construir um painel mostrando produtos que são devolvidos com mais frequência por nossos clientes do Reino Unido

296> ```296> ```

297 297 

298> **Economize tempo com atalhos**298> [accordion] Economize tempo com atalhos

299>299>

300> * Digite `/` para ver todos os comandos e skills disponíveis para você300> * Digite `/` para ver todos os comandos e skills disponíveis para você

301> * Use Tab para conclusão de comando301> * Use Tab para conclusão de comando

remote-control.md +97 −97

Details

25 25 

26Antes de usar Remote Control, confirme que seu ambiente atende a estas condições:26Antes de usar Remote Control, confirme que seu ambiente atende a estas condições:

27 27 

28* **Assinatura**: disponível nos planos Pro, Max, Team e Enterprise. Chaves de API não são suportadas. Em Team e Enterprise, um Owner deve primeiro ativar o toggle Remote Control nas [configurações de administrador do Claude Code](https://claude.ai/admin-settings/claude-code).28* **Assinatura**: disponível nos planos Pro, Max, Ultra, Team e Enterprise. Chaves de API não são suportadas. Em Team e Enterprise, um Owner deve primeiro ativar o toggle Remote Control nas [configurações de administrador do Claude Code](https://claude.ai/admin-settings/claude-code).

29* **Funções personalizadas**: se sua organização Enterprise gerencia seu acesso com [funções personalizadas](https://support.claude.com/en/articles/13930452), suas funções devem conceder a você tanto a permissão de sessões na nuvem quanto a permissão **Claude Code remote control**. Se alguma delas estiver faltando, iniciar Remote Control mostra [`Remote Control is disabled by your organization's policy`](#remote-control-is-disabled-by-your-organizations-policy). Peça a um Owner para verificar suas funções e adicionar o que estiver faltando em [**Organization settings > Roles**](https://claude.ai/admin-settings/roles).29* **Funções personalizadas**: se sua organização Enterprise gerencia seu acesso com [funções personalizadas](https://support.claude.com/en/articles/13930452), suas funções devem conceder a você tanto a permissão de sessões na nuvem quanto a permissão **Claude Code remote control**. Se alguma delas estiver faltando, iniciar Remote Control mostra [`Remote Control is disabled by your organization's policy`](#remote-control-is-disabled-by-your-organizations-policy). Peça a um Owner para verificar suas funções e adicionar o que estiver faltando em [**Organization settings > Roles**](https://claude.ai/admin-settings/roles).

30* **Autenticação**: execute `claude` e use `/login` para fazer login através de claude.ai se você ainda não fez isso. Sem um login elegível, `claude remote-control` sai com um erro, enquanto `claude --remote-control` ainda inicia uma sessão interativa e mostra uma notificação de falha de Remote Control logo após o lançamento.30* **Autenticação**: execute `claude` e use `/login` para fazer login através de claude.ai se você ainda não fez isso. Sem um login elegível, `claude remote-control` sai com um erro, enquanto `claude --remote-control` ainda inicia uma sessão interativa e mostra uma notificação de falha de Remote Control logo após o lançamento.

31* **Endpoint de API**: não disponível em nenhuma destas configurações:31* **Endpoint de API**: não disponível em nenhuma destas configurações:


41 41 

42Você pode iniciar uma sessão de Remote Control a partir da CLI, do [aplicativo Claude Desktop](https://code.claude.com/docs/pt/desktop.md), ou da extensão VS Code. A CLI oferece três modos de invocação; o aplicativo Desktop e VS Code usam o comando `/remote-control`.42Você pode iniciar uma sessão de Remote Control a partir da CLI, do [aplicativo Claude Desktop](https://code.claude.com/docs/pt/desktop.md), ou da extensão VS Code. A CLI oferece três modos de invocação; o aplicativo Desktop e VS Code usam o comando `/remote-control`.

43 43 

44**Modo servidor**44> [tab] Modo servidor

45 45>

46No diretório do seu projeto, execute:46> No diretório do seu projeto, execute:

47 47>

48```bash theme={null}48> ```bash theme={null}

49claude remote-control49> claude remote-control

50```50> ```

51 51>

52Até que você aceite a confirmação única do Remote Control, `claude remote-control` explica o que faz e pergunta `Enable Remote Control? (y/n)` antes de iniciar o servidor. Responda `y` para aceitar e iniciar o servidor. Se você recusar, Claude Code sai sem iniciar o servidor e pergunta novamente na próxima vez que você executar o comando.52> Até que você aceite a confirmação única do Remote Control, `claude remote-control` explica o que faz e pergunta `Enable Remote Control? (y/n)` antes de iniciar o servidor. Responda `y` para aceitar e iniciar o servidor. Se você recusar, Claude Code sai sem iniciar o servidor e pergunta novamente na próxima vez que você executar o comando.

53 53>

54O processo continua em execução no seu terminal em modo servidor, aguardando conexões remotas. Ele exibe uma URL de sessão que você pode usar para [conectar de outro dispositivo](#connect-from-another-device), e você pode pressionar a barra de espaço para mostrar um código QR para acesso rápido do seu telefone. Enquanto uma sessão remota está ativa, o terminal mostra o status da conexão e a atividade da ferramenta.54> O processo continua em execução no seu terminal em modo servidor, aguardando conexões remotas. Ele exibe uma URL de sessão que você pode usar para [conectar de outro dispositivo](#connect-from-another-device), e você pode pressionar a barra de espaço para mostrar um código QR para acesso rápido do seu telefone. Enquanto uma sessão remota está ativa, o terminal mostra o status da conexão e a atividade da ferramenta.

55 55>

56Passe qualquer um destes sinalizadores após `remote-control`:56> Passe qualquer um destes sinalizadores após `remote-control`:

57 57>

58| Sinalizador | Descrição |58> | Sinalizador | Descrição |

59| - | - |59> | - | - |

60| `--name "My Project"` | Define um título de sessão personalizado visível na lista de sessões em claude.ai/code. |60> | `--name "My Project"` | Define um título de sessão personalizado visível na lista de sessões em claude.ai/code. |

61| `--remote-control-session-name-prefix <prefix>` | Prefixo para nomes de sessão gerados automaticamente quando nenhum nome explícito é definido. O padrão é o nome do host da sua máquina, produzindo nomes como `myhost-graceful-unicorn`. Defina `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` para o mesmo efeito. |61> | `--remote-control-session-name-prefix <prefix>` | Prefixo para nomes de sessão gerados automaticamente quando nenhum nome explícito é definido. O padrão é o nome do host da sua máquina, produzindo nomes como `myhost-graceful-unicorn`. Defina `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` para o mesmo efeito. |

62| `-c`, `--continue` | Recupere a sessão que o último servidor neste diretório iniciou, em vez de criar uma nova. Consulte [Retomar sessões após parar o servidor](#resume-sessions-after-stopping-the-server). Não pode ser combinado com `--session-id`, `--spawn`, `--capacity` ou `--create-session-in-dir`. Requer Claude Code v2.1.200 ou posterior. |62> | `-c`, `--continue` | Recupere a sessão que o último servidor neste diretório iniciou, em vez de criar uma nova. Consulte [Retomar sessões após parar o servidor](#resume-sessions-after-stopping-the-server). Não pode ser combinado com `--session-id`, `--spawn`, `--capacity` ou `--create-session-in-dir`. Requer Claude Code v2.1.200 ou posterior. |

63| `--session-id <id>` | Recupere uma sessão por seu ID. Consulte [Retomar sessões após parar o servidor](#resume-sessions-after-stopping-the-server). Não pode ser combinado com `--continue`, `--spawn`, `--capacity` ou `--create-session-in-dir`. Requer Claude Code v2.1.200 ou posterior. |63> | `--session-id <id>` | Recupere uma sessão por seu ID. Consulte [Retomar sessões após parar o servidor](#resume-sessions-after-stopping-the-server). Não pode ser combinado com `--continue`, `--spawn`, `--capacity` ou `--create-session-in-dir`. Requer Claude Code v2.1.200 ou posterior. |

64| `--spawn <mode>` | Como o servidor cria sessões. • `same-dir` (padrão quando nenhum modo está salvo): todas as sessões compartilham o diretório de trabalho atual, portanto podem entrar em conflito se editarem os mesmos arquivos. • `worktree`: cada sessão sob demanda obtém seu próprio [git worktree](https://code.claude.com/docs/pt/worktrees.md). Requer um repositório git ou um [hook `WorktreeCreate`](https://code.claude.com/docs/pt/hooks#worktreecreate). • `session`: modo de sessão única. Serve exatamente uma sessão e rejeita conexões adicionais. Defina apenas na inicialização. Pressione `w` em tempo de execução para alternar entre `same-dir` e `worktree`. O modo para o qual você alternar se torna o [padrão para este projeto](#set-the-default-spawn-mode-for-a-project). |64> | `--spawn <mode>` | Como o servidor cria sessões. • `same-dir` (padrão quando nenhum modo está salvo): todas as sessões compartilham o diretório de trabalho atual, portanto podem entrar em conflito se editarem os mesmos arquivos. • `worktree`: cada sessão sob demanda obtém seu próprio [git worktree](https://code.claude.com/docs/pt/worktrees.md). Requer um repositório git ou um [hook `WorktreeCreate`](https://code.claude.com/docs/pt/hooks#worktreecreate). • `session`: modo de sessão única. Serve exatamente uma sessão e rejeita conexões adicionais. Defina apenas na inicialização. Pressione `w` em tempo de execução para alternar entre `same-dir` e `worktree`. O modo para o qual você alternar se torna o [padrão para este projeto](#set-the-default-spawn-mode-for-a-project). |

65| `--capacity <N>` | Número máximo de sessões simultâneas. O padrão é 32. Não pode ser usado com `--spawn=session`. |65> | `--capacity <N>` | Número máximo de sessões simultâneas. O padrão é 32. Não pode ser usado com `--spawn=session`. |

66| `--[no-]create-session-in-dir` | Pré-crie uma sessão no diretório atual quando o servidor inicia, para que você tenha um lugar para digitar imediatamente. Em modo `worktree`, essa sessão permanece no diretório atual enquanto as sessões sob demanda obtêm worktrees isoladas. Ativado por padrão. Se você passar `--no-create-session-in-dir` para iniciar sem nenhuma, Claude Code arquiva as sessões do servidor quando você o para, portanto não há nada para [retomar](#resume-sessions-after-stopping-the-server). |66> | `--[no-]create-session-in-dir` | Pré-crie uma sessão no diretório atual quando o servidor inicia, para que você tenha um lugar para digitar imediatamente. Em modo `worktree`, essa sessão permanece no diretório atual enquanto as sessões sob demanda obtêm worktrees isoladas. Ativado por padrão. Se você passar `--no-create-session-in-dir` para iniciar sem nenhuma, Claude Code arquiva as sessões do servidor quando você o para, portanto não há nada para [retomar](#resume-sessions-after-stopping-the-server). |

67| `--permission-mode <mode>` | Define o [modo de permissão](https://code.claude.com/docs/pt/permission-modes.md) inicial para as sessões do servidor, como `acceptEdits`. Aceita `manual` como um alias para `default`; um modo não reconhecido para o servidor na inicialização e lista os modos válidos. |67> | `--permission-mode <mode>` | Define o [modo de permissão](https://code.claude.com/docs/pt/permission-modes.md) inicial para as sessões do servidor, como `acceptEdits`. Aceita `manual` como um alias para `default`; um modo não reconhecido para o servidor na inicialização e lista os modos válidos. |

68| `--chrome` / `--no-chrome` | Ative ou desative a [integração Chrome](https://code.claude.com/docs/pt/chrome.md) nas sessões que o servidor cria, para que Claude possa usar Chrome na sua máquina enquanto você trabalha de outro dispositivo. Sem nenhuma das duas opções, a sessão que o servidor pré-cria e qualquer sessão que você inicia você mesmo a partir de claude.ai/code ou do aplicativo Claude começam com Chrome desativado, mesmo que você tenha [ativado Chrome por padrão](https://code.claude.com/docs/pt/chrome.md#enable-chrome-by-default). Uma sessão que o servidor inicia para um de seus threads de [projeto](https://code.claude.com/docs/pt/claude-projects.md) segue essa configuração em vez disso, exceto em modo `bypassPermissions`. Requer Claude Code v2.1.273 ou posterior. |68> | `--chrome` / `--no-chrome` | Ative ou desative a [integração Chrome](https://code.claude.com/docs/pt/chrome.md) nas sessões que o servidor cria, para que Claude possa usar Chrome na sua máquina enquanto você trabalha de outro dispositivo. Sem nenhuma das duas opções, a sessão que o servidor pré-cria e qualquer sessão que você inicia você mesmo a partir de claude.ai/code ou do aplicativo Claude começam com Chrome desativado, mesmo que você tenha [ativado Chrome por padrão](https://code.claude.com/docs/pt/chrome.md#enable-chrome-by-default). Uma sessão que o servidor inicia para um de seus threads de [projeto](https://code.claude.com/docs/pt/claude-projects.md) segue essa configuração em vez disso, exceto em modo `bypassPermissions`. Requer Claude Code v2.1.273 ou posterior. |

69| `-d`, `--debug[=<filter>]` | Ative o registro de depuração para o servidor, opcionalmente filtrado por categoria. Passe um filtro apenas na forma `=`, como `--debug=api,hooks`. Requer Claude Code v2.1.282 ou posterior. |69> | `-d`, `--debug[=<filter>]` | Ative o registro de depuração para o servidor, opcionalmente filtrado por categoria. Passe um filtro apenas na forma `=`, como `--debug=api,hooks`. Requer Claude Code v2.1.282 ou posterior. |

70| `--debug-file <path>` | Escreva logs de depuração no arquivo fornecido. |70> | `--debug-file <path>` | Escreva logs de depuração no arquivo fornecido. |

71| `--verbose` | Mostre logs detalhados de conexão e sessão. |71> | `--verbose` | Mostre logs detalhados de conexão e sessão. |

72| `--sandbox`, `--no-sandbox` | Removido na v2.1.300. Se você passar qualquer um desses sinalizadores, o servidor [sai com um erro](https://code.claude.com/docs/pt/errors.md#sandbox-is-not-supported-by-claude-remote-control) em vez de iniciar. |72> | `--sandbox`, `--no-sandbox` | Removido na v2.1.300. Se você passar qualquer um desses sinalizadores, o servidor [sai com um erro](https://code.claude.com/docs/pt/errors.md#sandbox-is-not-supported-by-claude-remote-control) em vez de iniciar. |

73 73>

74Se você passar um sinalizador global `claude` antes de `remote-control`, ou um script wrapper adicionar um, Claude Code não leva o sinalizador para as sessões que o servidor cria. Claude Code deixa o sinalizador passar apenas quando soltá-lo é conhecido por não alterar o que essas sessões podem fazer, como `--verbose` ou `--model`. Para qualquer outro sinalizador, como `--settings`, Claude Code [recusa iniciar](https://code.claude.com/docs/pt/errors.md#not-carried-over-to-the-sessions-remote-control-starts) e nomeia o sinalizador a remover.74> Se você passar um sinalizador global `claude` antes de `remote-control`, ou um script wrapper adicionar um, Claude Code não leva o sinalizador para as sessões que o servidor cria. Claude Code deixa o sinalizador passar apenas quando soltá-lo é conhecido por não alterar o que essas sessões podem fazer, como `--verbose` ou `--model`. Para qualquer outro sinalizador, como `--settings`, Claude Code [recusa iniciar](https://code.claude.com/docs/pt/errors.md#not-carried-over-to-the-sessions-remote-control-starts) e nomeia o sinalizador a remover.

75 75>

76Para fazer sandbox das sessões que o servidor inicia, ative [sandboxing](https://code.claude.com/docs/pt/sandboxing.md) em um arquivo de configurações.76> Para fazer sandbox das sessões que o servidor inicia, ative [sandboxing](https://code.claude.com/docs/pt/sandboxing.md) em um arquivo de configurações.

77 77>

78Para imprimir as flags de `remote-control` no seu terminal, execute `claude remote-control --help`. Antes da v2.1.302, sem um login elegível, o comando retornava um dos erros listados em [Solução de problemas](#troubleshooting) em vez disso.78> Para imprimir as flags de `remote-control` no seu terminal, execute `claude remote-control --help`. Antes da v2.1.302, sem um login elegível, o comando retornava um dos erros listados em [Solução de problemas](#troubleshooting) em vez disso.

79 

80**Sessão interativa**

81 

82Para iniciar uma sessão normal interativa de Claude Code com Remote Control ativado, use a flag `--remote-control` (ou `--rc`):

83 

84```bash theme={null}

85claude --remote-control

86```

87 

88Opcionalmente, passe um nome para a sessão:

89 

90```bash theme={null}

91claude --remote-control "My Project"

92```

93 

94Isso oferece uma sessão interativa completa no seu terminal que você também pode controlar a partir de claude.ai ou do aplicativo Claude. Diferentemente de `claude remote-control` (modo servidor), você pode digitar mensagens localmente enquanto a sessão também está disponível remotamente.

95 

96**De uma sessão existente**

97 

98Se você já está em uma sessão de Claude Code e deseja continuá-la remotamente, use o comando `/remote-control` (ou `/rc`):

99 

100```text theme={null}

101/remote-control

102```

103 

104Passe um nome como argumento para definir um título de sessão personalizado:

105 

106```text theme={null}

107/remote-control My Project

108```

109 

110Isso inicia uma sessão de Remote Control que carrega seu histórico de conversa atual.

111 

112Até que você aceite a confirmação única do Remote Control, um diálogo aparece antes de `/remote-control` conectar. Selecione **Enable Remote Control** para aceitar e conectar. Se você selecionar **Never mind** ou pressionar Esc, Claude Code não conecta e pergunta novamente na próxima vez que você executar `/remote-control`.

113 

114O sinalizador `--verbose` não está disponível com este comando.

115 

116**VS Code**

117 

118Na [extensão Claude Code VS Code](https://code.claude.com/docs/pt/vs-code.md), digite `/remote-control` ou `/rc` na caixa de prompt.

119 

120```text theme={null}

121/remote-control

122```

123 

124Enquanto Remote Control está ativado, Claude Code mostra um indicador **Remote Control** no rodapé da caixa de prompt. Depois que a sessão se conecta, clique no indicador para ir diretamente à sessão, ou encontre-a na lista de sessões em [claude.ai/code](https://claude.ai/code). Claude Code também publica a URL da sessão na conversa. Para desconectar, execute `/remote-control` novamente.

125 

126Diferentemente da CLI, o comando VS Code não aceita um argumento de nome ou exibe um código QR. O título da sessão é derivado do seu histórico de conversa ou do primeiro prompt.

127 

128**Aplicativo Desktop**

129 79 

130Em uma sessão local na [aba Code do aplicativo Claude Desktop](https://code.claude.com/docs/pt/desktop.md), digite `/remote-control` ou `/rc` na caixa de prompt.80> [tab] Sessão interativa

81>

82> Para iniciar uma sessão normal interativa de Claude Code com Remote Control ativado, use a flag `--remote-control` (ou `--rc`):

83>

84> ```bash theme={null}

85> claude --remote-control

86> ```

87>

88> Opcionalmente, passe um nome para a sessão:

89>

90> ```bash theme={null}

91> claude --remote-control "My Project"

92> ```

93>

94> Isso oferece uma sessão interativa completa no seu terminal que você também pode controlar a partir de claude.ai ou do aplicativo Claude. Diferentemente de `claude remote-control` (modo servidor), você pode digitar mensagens localmente enquanto a sessão também está disponível remotamente.

131 95 

132```text theme={null}96> [tab] De uma sessão existente

133/remote-control97>

134```98> Se você já está em uma sessão de Claude Code e deseja continuá-la remotamente, use o comando `/remote-control` (ou `/rc`):

99>

100> ```text theme={null}

101> /remote-control

102> ```

103>

104> Passe um nome como argumento para definir um título de sessão personalizado:

105>

106> ```text theme={null}

107> /remote-control My Project

108> ```

109>

110> Isso inicia uma sessão de Remote Control que carrega seu histórico de conversa atual.

111>

112> Até que você aceite a confirmação única do Remote Control, um diálogo aparece antes de `/remote-control` conectar. Selecione **Enable Remote Control** para aceitar e conectar. Se você selecionar **Never mind** ou pressionar Esc, Claude Code não conecta e pergunta novamente na próxima vez que você executar `/remote-control`.

113>

114> O sinalizador `--verbose` não está disponível com este comando.

135 115 

136Depois que a sessão se conecta, encontre-a na lista de sessões em [claude.ai/code](https://claude.ai/code). Para desconectar, execute `/remote-control` novamente.116> [tab] VS Code

117>

118> Na [extensão Claude Code VS Code](https://code.claude.com/docs/pt/vs-code.md), digite `/remote-control` ou `/rc` na caixa de prompt.

119>

120> ```text theme={null}

121> /remote-control

122> ```

123>

124> Enquanto Remote Control está ativado, Claude Code mostra um indicador **Remote Control** no rodapé da caixa de prompt. Depois que a sessão se conecta, clique no indicador para ir diretamente à sessão, ou encontre-a na lista de sessões em [claude.ai/code](https://claude.ai/code). Claude Code também publica a URL da sessão na conversa. Para desconectar, execute `/remote-control` novamente.

125>

126> Diferentemente da CLI, o comando VS Code não aceita um argumento de nome ou exibe um código QR. O título da sessão é derivado do seu histórico de conversa ou do primeiro prompt.

137 127 

138Para ativar Remote Control para cada sessão por padrão, consulte [Ativar Remote Control para todas as sessões](#enable-remote-control-for-all-sessions).128> [tab] Aplicativo Desktop

129>

130> Em uma sessão local na [aba Code do aplicativo Claude Desktop](https://code.claude.com/docs/pt/desktop.md), digite `/remote-control` ou `/rc` na caixa de prompt.

131>

132> ```text theme={null}

133> /remote-control

134> ```

135>

136> Depois que a sessão se conecta, encontre-a na lista de sessões em [claude.ai/code](https://claude.ai/code). Para desconectar, execute `/remote-control` novamente.

137>

138> Para ativar Remote Control para cada sessão por padrão, consulte [Ativar Remote Control para todas as sessões](#enable-remote-control-for-all-sessions).

139 139 

140### Verificar status da conexão140### Verificar status da conexão

141 141 


250>250>

251> Dispositivos Confiáveis está atualmente em beta. Recursos e funcionalidades podem evoluir conforme a experiência é refinada.251> Dispositivos Confiáveis está atualmente em beta. Recursos e funcionalidades podem evoluir conforme a experiência é refinada.

252>252>

253> Dispositivos Confiáveis está disponível nos planos Pro, Max, Team e Enterprise e fica desativado por padrão. Nos planos Team e Enterprise, um Owner o ativa para a organização. Nos planos Pro e Max, você ativa **Require trusted devices** você mesmo nas suas configurações, na página Cowork ou Account.253> Dispositivos Confiáveis está disponível nos planos Pro, Max, Ultra, Team e Enterprise e fica desativado por padrão. Nos planos Team e Enterprise, um Owner o ativa para a organização. Nos planos Pro, Max e Ultra, você ativa **Require trusted devices** você mesmo nas suas configurações, na página Cowork ou Account.

254 254 

255Dispositivos Confiáveis requer que cada membro da sua organização, ou você sozinho em um plano Pro ou Max, verifique seu dispositivo antes de poder visualizar ou controlar sessões de Remote Control a partir de claude.ai, dos aplicativos Claude para dispositivos móveis ou Claude Desktop. Ele vincula o acesso ao Remote Control a um dispositivo conhecido e uma autenticação recente, não apenas a uma conta conectada.255Dispositivos Confiáveis requer um dispositivo verificado antes que você possa visualizar ou controlar sessões de Remote Control a partir de claude.ai, dos aplicativos Claude para dispositivos móveis ou do Claude Desktop. O requisito se aplica a cada membro da sua organização, ou somente a você em um plano Pro, Max ou Ultra. Ele vincula o acesso ao Remote Control a um dispositivo conhecido e uma autenticação recente, não apenas a uma conta conectada.

256 256 

257Quando a configuração está ativada, interagir com uma sessão de Remote Control requer ambos os seguintes:257Quando a configuração está ativada, interagir com uma sessão de Remote Control requer ambos os seguintes:

258 258 


310| [Dispatch](https://code.claude.com/docs/pt/desktop.md#sessions-from-dispatch) | Envie uma tarefa a partir do aplicativo móvel Claude | Sua máquina (Desktop) | [Emparelhe o aplicativo móvel com Desktop](https://support.claude.com/en/articles/13947068) | Delegar trabalho enquanto você está ausente, configuração mínima |310| [Dispatch](https://code.claude.com/docs/pt/desktop.md#sessions-from-dispatch) | Envie uma tarefa a partir do aplicativo móvel Claude | Sua máquina (Desktop) | [Emparelhe o aplicativo móvel com Desktop](https://support.claude.com/en/articles/13947068) | Delegar trabalho enquanto você está ausente, configuração mínima |

311| [Remote Control](https://code.claude.com/docs/pt/remote-control.md) | Dirija uma sessão em execução a partir de [claude.ai/code](https://claude.ai/code) ou do aplicativo móvel Claude | Sua máquina (CLI, Desktop ou VS Code) | Execute [`claude remote-control` ou `/remote-control`](https://code.claude.com/docs/pt/remote-control#start-a-remote-control-session) | Orientar trabalho em andamento de outro dispositivo |311| [Remote Control](https://code.claude.com/docs/pt/remote-control.md) | Dirija uma sessão em execução a partir de [claude.ai/code](https://claude.ai/code) ou do aplicativo móvel Claude | Sua máquina (CLI, Desktop ou VS Code) | Execute [`claude remote-control` ou `/remote-control`](https://code.claude.com/docs/pt/remote-control#start-a-remote-control-session) | Orientar trabalho em andamento de outro dispositivo |

312| [Channels](https://code.claude.com/docs/pt/channels.md) | Envie eventos de um aplicativo de chat como Telegram ou Discord, ou seu próprio servidor | Sua máquina (CLI) | [Instale um plugin de canal](https://code.claude.com/docs/pt/channels.md#quickstart) ou [crie o seu próprio](https://code.claude.com/docs/pt/channels-reference.md) | Reagir a eventos externos como falhas de CI ou mensagens de chat |312| [Channels](https://code.claude.com/docs/pt/channels.md) | Envie eventos de um aplicativo de chat como Telegram ou Discord, ou seu próprio servidor | Sua máquina (CLI) | [Instale um plugin de canal](https://code.claude.com/docs/pt/channels.md#quickstart) ou [crie o seu próprio](https://code.claude.com/docs/pt/channels-reference.md) | Reagir a eventos externos como falhas de CI ou mensagens de chat |

313| [Slack](https://code.claude.com/docs/pt/slack.md) | Mencione `@Claude` em um canal de equipe | Nuvem Anthropic | [Instale o aplicativo Slack](https://code.claude.com/docs/pt/slack.md#setting-up-claude-code-in-slack) com [Claude Code na web](https://code.claude.com/docs/pt/claude-code-on-the-web.md) ativado, em planos Pro e Max | PRs e revisões do chat da equipe |313| [Slack](https://code.claude.com/docs/pt/slack.md) | Mencione `@Claude` em um canal de equipe | Nuvem Anthropic | [Instale o aplicativo Slack](https://code.claude.com/docs/pt/slack.md#setting-up-claude-code-in-slack) com [Claude Code na web](https://code.claude.com/docs/pt/claude-code-on-the-web.md) ativado, em planos Pro, Max e Ultra | PRs e revisões do chat da equipe |

314| [Self-hosted environments](https://code.claude.com/docs/pt/self-hosted-environments) | Inicie uma [sessão na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) e escolha o ambiente da sua organização | Infraestrutura da sua organização | [Implante runners](https://code.claude.com/docs/pt/self-hosted-environments-quickstart.md), em planos Team e Enterprise | Sessões na nuvem que devem ser executadas dentro da sua rede |314| [Self-hosted environments](https://code.claude.com/docs/pt/self-hosted-environments) | Inicie uma [sessão na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) e escolha o ambiente da sua organização | Infraestrutura da sua organização | [Implante runners](https://code.claude.com/docs/pt/self-hosted-environments-quickstart.md), em planos Team e Enterprise | Sessões na nuvem que devem ser executadas dentro da sua rede |

315| [Scheduled tasks](https://code.claude.com/docs/pt/scheduled-tasks.md) | Defina um cronograma | [CLI](https://code.claude.com/docs/pt/scheduled-tasks.md), [Desktop](https://code.claude.com/docs/pt/desktop-scheduled-tasks.md), ou [nuvem](https://code.claude.com/docs/pt/routines.md) | Escolha uma frequência | Automação recorrente como revisões diárias |315| [Scheduled tasks](https://code.claude.com/docs/pt/scheduled-tasks.md) | Defina um cronograma | [CLI](https://code.claude.com/docs/pt/scheduled-tasks.md), [Desktop](https://code.claude.com/docs/pt/desktop-scheduled-tasks.md), ou [nuvem](https://code.claude.com/docs/pt/routines.md) | Escolha uma frequência | Automação recorrente como revisões diárias |

316 316 


444Uma [variável de ambiente](https://code.claude.com/docs/pt/env-vars.md#features-that-need-feature-flag-fetching) que desativa a avaliação de feature flags está definida, e a mensagem completa nomeia a variável que o Claude Code encontrou. Em versões anteriores à 2.1.154, a mesma configuração produz "Remote Control is not yet enabled for your account" em vez disso. O que fazer depende da variável que a mensagem nomeia:444Uma [variável de ambiente](https://code.claude.com/docs/pt/env-vars.md#features-that-need-feature-flag-fetching) que desativa a avaliação de feature flags está definida, e a mensagem completa nomeia a variável que o Claude Code encontrou. Em versões anteriores à 2.1.154, a mesma configuração produz "Remote Control is not yet enabled for your account" em vez disso. O que fazer depende da variável que a mensagem nomeia:

445 445 

446* **`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` ou `DISABLE_GROWTHBOOK`**: remova a definição da variável onde quer que ela esteja definida, no ambiente do seu shell ou no bloco `env` de um [arquivo `settings.json`](https://code.claude.com/docs/pt/settings-reference#all-settings).446* **`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` ou `DISABLE_GROWTHBOOK`**: remova a definição da variável onde quer que ela esteja definida, no ambiente do seu shell ou no bloco `env` de um [arquivo `settings.json`](https://code.claude.com/docs/pt/settings-reference#all-settings).

447* **`DISABLE_TELEMETRY` ou `DO_NOT_TRACK`**: em um plano Pro, Max, Team ou Enterprise com `DISABLE_GROWTHBOOK` não definida, essas variáveis mantêm o Remote Control disponível, a menos que sua organização exija [Trusted Devices](#trusted-devices). Se exigir, remova a definição da variável onde quer que ela esteja definida para usar o Remote Control. Da v2.1.154 até a v2.1.282, você vê esta mensagem com qualquer uma dessas variáveis definida, então atualize o Claude Code para uma versão que atenda ao [requisito para essas variáveis](#requirements).447* **`DISABLE_TELEMETRY` ou `DO_NOT_TRACK`**: em um plano Pro, Max, Ultra, Team ou Enterprise com `DISABLE_GROWTHBOOK` não definida, o Remote Control continua disponível com essas variáveis definidas, a menos que sua organização exija [Trusted Devices](#trusted-devices). Se exigir, remova a definição da variável onde quer que ela esteja definida para usar o Remote Control. Da v2.1.154 até a v2.1.282, você vê esta mensagem com qualquer uma dessas variáveis definida, então atualize o Claude Code para uma versão que atenda ao [requisito para essas variáveis](#requirements).

448 448 

449### "Remote Control is only available when using Claude via api.anthropic.com"449### "Remote Control is only available when using Claude via api.anthropic.com"

450 450 


457Uma política bloqueia o Remote Control. Verifique estas causas na ordem:457Uma política bloqueia o Remote Control. Verifique estas causas na ordem:

458 458 

459* **O erro menciona `disableRemoteControl`**: seu administrador de TI desativou o Remote Control neste dispositivo por meio de [configurações gerenciadas](https://code.claude.com/docs/pt/managed-settings.md), independentemente da opção para toda a organização e de como você está conectado.459* **O erro menciona `disableRemoteControl`**: seu administrador de TI desativou o Remote Control neste dispositivo por meio de [configurações gerenciadas](https://code.claude.com/docs/pt/managed-settings.md), independentemente da opção para toda a organização e de como você está conectado.

460* **Seu plano claude.ai é Pro ou Max**: o Claude Code ainda está conectado sob uma organização Team ou Enterprise de um login anterior, então verifica a política de Remote Control dessa organização. Execute `/status` para ver qual plano e organização seu login usa. Execute `claude auth logout` e depois `claude auth login` para fazer login novamente sob seu plano atual.460* **Seu plano claude.ai é Pro, Max ou Ultra**: o Claude Code ainda está conectado sob uma organização Team ou Enterprise de um login anterior, então verifica a política de Remote Control dessa organização. Execute `/status` para ver qual plano e organização seu login usa. Execute `claude auth logout` e depois `claude auth login` para fazer login novamente sob seu plano atual.

461* **A mensagem não diz para entrar em contato com o administrador da sua organização**: sua organização tem a [configuração HIPAA](https://code.claude.com/docs/pt/hipaa-setup.md) aplicada, que desativa o Remote Control. Para confirmar, execute `/status` e procure `HIPAA` na linha `Organization configuration`. Um Owner vê a opção **Remote Control** acinzentada nas [configurações de administrador](https://claude.ai/admin-settings/claude-code) e não consegue ativá-la. Se você tiver dúvidas sobre a configuração, pergunte a um Owner, que pode entrar em contato com a equipe de conta da Anthropic da sua organização. Antes da v2.1.267, este caso mostrava "Remote Control isn't available for your organization due to its compliance policy" em vez disso.461* **A mensagem não diz para entrar em contato com o administrador da sua organização**: sua organização tem a [configuração HIPAA](https://code.claude.com/docs/pt/hipaa-setup.md) aplicada, que desativa o Remote Control. Para confirmar, execute `/status` e procure `HIPAA` na linha `Organization configuration`. Um Owner vê a opção **Remote Control** acinzentada nas [configurações de administrador](https://claude.ai/admin-settings/claude-code) e não consegue ativá-la. Se você tiver dúvidas sobre a configuração, pergunte a um Owner, que pode entrar em contato com a equipe de conta da Anthropic da sua organização. Antes da v2.1.267, este caso mostrava "Remote Control isn't available for your organization due to its compliance policy" em vez disso.

462* **O Remote Control funciona para outras pessoas da sua organização, mas não para você**: se sua organização Enterprise gerencia seu acesso com [funções personalizadas](https://support.claude.com/en/articles/13930452), suas funções podem ser a causa. O Remote Control precisa tanto da permissão de sessões na nuvem quanto da permissão **Claude Code remote control**. Peça a um Owner para verificar se suas funções incluem ambas e adicionar o que estiver faltando em [**Organization settings > Roles**](https://claude.ai/admin-settings/roles).462* **O Remote Control funciona para outras pessoas da sua organização, mas não para você**: se sua organização Enterprise gerencia seu acesso com [funções personalizadas](https://support.claude.com/en/articles/13930452), suas funções podem ser a causa. O Remote Control precisa tanto da permissão de sessões na nuvem quanto da permissão **Claude Code remote control**. Peça a um Owner para verificar se suas funções incluem ambas e adicionar o que estiver faltando em [**Organization settings > Roles**](https://claude.ai/admin-settings/roles).

463* **Caso contrário, um Owner não o habilitou para sua organização**: o Remote Control fica desativado por padrão nos planos Team e Enterprise. Um Owner pode habilitá-lo em [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) ativando a opção **Remote Control**. Essa opção é uma configuração da organização no lado do servidor.463* **Caso contrário, um Owner não o habilitou para sua organização**: o Remote Control fica desativado por padrão nos planos Team e Enterprise. Um Owner pode habilitá-lo em [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) ativando a opção **Remote Control**. Essa opção é uma configuração da organização no lado do servidor.

routines.md +11 −11

Details

25* Uma tarefa com apenas um acionador de API é executada quando você chama seu endpoint.25* Uma tarefa com apenas um acionador de API é executada quando você chama seu endpoint.

26* Uma tarefa com apenas um acionador do GitHub é executada quando ocorre um evento de repositório correspondente.26* Uma tarefa com apenas um acionador do GitHub é executada quando ocorre um evento de repositório correspondente.

27 27 

28As tarefas agendadas estão disponíveis nos planos Pro, Max, Team e Enterprise. Crie e gerencie-as em [claude.ai/code/routines](https://claude.ai/code/routines), ou a partir da CLI com `/schedule`. O nome anterior, rotinas, [ainda aparece](#where-the-name-routines-still-appears).28As tarefas agendadas estão disponíveis nos planos Pro, Max, Ultra, Team e Enterprise. Crie e gerencie-as em [claude.ai/code/routines](https://claude.ai/code/routines), ou a partir da CLI com `/schedule`. O nome anterior, rotinas, [ainda aparece](#where-the-name-routines-still-appears).

29 29 

30> [!NOTE]30> [!NOTE]

31>31>


85 85 

86Na linha **Trigger**, escolha como a tarefa é iniciada. Para combinar vários acionadores, clique em **+** no final da linha.86Na linha **Trigger**, escolha como a tarefa é iniciada. Para combinar vários acionadores, clique em **+** no final da linha.

87 87 

88**Schedule**88> [tab] Schedule

89 89>

90Escolha uma frequência predefinida para uma execução recorrente. Consulte [Adicionar um acionador de cronograma](#add-a-schedule-trigger) para tratamento de fuso horário, inícios atrasados, intervalos cron personalizados e execuções únicas.90> Escolha uma frequência predefinida para uma execução recorrente. Consulte [Adicionar um acionador de cronograma](#add-a-schedule-trigger) para tratamento de fuso horário, inícios atrasados, intervalos cron personalizados e execuções únicas.

91 

92**GitHub event**

93 

94Selecione o repositório, o evento ao qual reagir e filtros opcionais. Consulte [Adicionar um acionador do GitHub](#add-a-github-trigger) para a lista completa de eventos suportados e campos de filtro.

95 91 

96**API**92> [tab] GitHub event

93>

94> Selecione o repositório, o evento ao qual reagir e filtros opcionais. Consulte [Adicionar um acionador do GitHub](#add-a-github-trigger) para a lista completa de eventos suportados e campos de filtro.

97 95 

98Selecione **API** aqui. Quando você clica em **Create**, a caixa de diálogo **API token** mostra o token uma única vez, portanto copie-o antes de fechar a caixa de diálogo. Consulte [Adicionar um acionador de API](#add-an-api-trigger) para copiar a URL ou gerar um novo token.96> [tab] API

97>

98> Selecione **API** aqui. Quando você clica em **Create**, a caixa de diálogo **API token** mostra o token uma única vez, portanto copie-o antes de fechar a caixa de diálogo. Consulte [Adicionar um acionador de API](#add-an-api-trigger) para copiar a URL ou gerar um novo token.

99 99 

100**4. Selecionar repositórios**100**4. Selecionar repositórios**

101 101 


502* Um Owner [desativou as tarefas agendadas](#routines-are-disabled-by-your-organizations-policy) para sua organização Team ou Enterprise. Antes da v2.1.227, o comando ainda aparecia nesse caso, e o claude.ai rejeitava a tarefa quando Claude tentava criá-la ou executá-la502* Um Owner [desativou as tarefas agendadas](#routines-are-disabled-by-your-organizations-policy) para sua organização Team ou Enterprise. Antes da v2.1.227, o comando ainda aparecia nesse caso, e o claude.ai rejeitava a tarefa quando Claude tentava criá-la ou executá-la

503* Sua organização Enterprise gerencia seu acesso com [funções personalizadas](https://support.claude.com/en/articles/13930452), e nenhuma de suas funções inclui a permissão de tarefas agendadas em **Remote sessions**. Peça a um Owner que a adicione a uma de suas funções503* Sua organização Enterprise gerencia seu acesso com [funções personalizadas](https://support.claude.com/en/articles/13930452), e nenhuma de suas funções inclui a permissão de tarefas agendadas em **Remote sessions**. Peça a um Owner que a adicione a uma de suas funções

504 504 

505Se a causa for o seu login na CLI ou o fato de estar dentro de uma sessão na nuvem, você ainda pode criar e gerenciar tarefas agendadas em [claude.ai/code/routines](https://claude.ai/code/routines). Você precisa de uma conta Pro, Max, Team ou Enterprise lá. Se as tarefas agendadas ou as sessões na nuvem estiverem desativadas para sua organização ou ausentes das suas funções, você também não poderá criá-las na web.505Se a causa for o seu login na CLI ou o fato de estar dentro de uma sessão na nuvem, você ainda pode criar e gerenciar tarefas agendadas em [claude.ai/code/routines](https://claude.ai/code/routines). Você precisa de uma conta Pro, Max, Ultra, Team ou Enterprise lá. Se as tarefas agendadas ou as sessões na nuvem estiverem desativadas para sua organização ou ausentes das suas funções, você também não poderá criá-las na web.

506 506 

507### "Routines are disabled by your organization's policy"507### "Routines are disabled by your organization's policy"

508 508 

sandboxing.md +12 −12

Details

119 119 

120Instale-os com o gerenciador de pacotes da sua distribuição:120Instale-os com o gerenciador de pacotes da sua distribuição:

121 121 

122**Ubuntu/Debian**122> [tab] Ubuntu/Debian

123 123>

124```bash theme={null}124> ```bash theme={null}

125sudo apt-get install bubblewrap socat125> sudo apt-get install bubblewrap socat

126```126> ```

127 

128**Fedora**

129 127 

130```bash theme={null}128> [tab] Fedora

131sudo dnf install bubblewrap socat129>

132```130> ```bash theme={null}

131> sudo dnf install bubblewrap socat

132> ```

133 133 

134Quando uma dependência está ausente, a aba Dependencies em `/sandbox` lista quais dentre `ripgrep`, `bubblewrap`, `socat` e o filtro seccomp estão faltando na sua plataforma. Se você não vir a aba após instalar e reiniciar o Claude Code, todas as dependências estão presentes.134Quando uma dependência está ausente, a aba Dependencies em `/sandbox` lista quais dentre `ripgrep`, `bubblewrap`, `socat` e o filtro seccomp estão faltando na sua plataforma. Se você não vir a aba após instalar e reiniciar o Claude Code, todas as dependências estão presentes.

135 135 


137 137 

138Quando uma dependência obrigatória está ausente, a aba Dependencies é a única exibida até que você a instale. Quando apenas o filtro seccomp opcional está ausente, a aba Dependencies aparece junto com as outras abas. A verificação de dependências é executada na inicialização, então reinicie o Claude Code após instalar pacotes para que `/sandbox` os detecte.138Quando uma dependência obrigatória está ausente, a aba Dependencies é a única exibida até que você a instale. Quando apenas o filtro seccomp opcional está ausente, a aba Dependencies aparece junto com as outras abas. A verificação de dependências é executada na inicialização, então reinicie o Claude Code após instalar pacotes para que `/sandbox` os detecte.

139 139 

140> **Ubuntu 24.04 e posteriores: permitir que o bubblewrap crie user namespaces**140> [accordion] Ubuntu 24.04 e posteriores: permitir que o bubblewrap crie user namespaces

141>141>

142> No Ubuntu 24.04 e posteriores, a política padrão do AppArmor impede que o bubblewrap crie os user namespaces de que precisa para o isolamento.142> No Ubuntu 24.04 e posteriores, a política padrão do AppArmor impede que o bubblewrap crie os user namespaces de que precisa para o isolamento.

143>143>


161> sudo systemctl reload apparmor161> sudo systemctl reload apparmor

162> ```162> ```

163 163 

164> **Observações sobre o WSL2**164> [accordion] Observações sobre o WSL2

165>165>

166> Verifique sua versão do WSL com `wsl -l -v` no PowerShell. Se você vir `Sandboxing requires WSL2`, sua distribuição está executando o WSL1. Atualize-a para o WSL2 ou execute o Claude Code sem sandboxing.166> Verifique sua versão do WSL com `wsl -l -v` no PowerShell. Se você vir `Sandboxing requires WSL2`, sua distribuição está executando o WSL1. Atualize-a para o WSL2 ou execute o Claude Code sem sandboxing.

167>167>

security.md +1 −1

Details

53* Acesso restrito aos dados de sessão do usuário53* Acesso restrito aos dados de sessão do usuário

54* Controle do usuário sobre preferências de treinamento de dados. Usuários consumidores podem alterar suas [configurações de privacidade](https://claude.ai/settings/privacy) a qualquer momento.54* Controle do usuário sobre preferências de treinamento de dados. Usuários consumidores podem alterar suas [configurações de privacidade](https://claude.ai/settings/privacy) a qualquer momento.

55 55 

56Para detalhes completos, consulte nossos [Termos de Serviço Comerciais](https://www.anthropic.com/legal/commercial-terms) (para usuários de Team, Enterprise e API) ou [Termos de Consumidor](https://www.anthropic.com/legal/consumer-terms) (para usuários de Free, Pro e Max) e [Política de Privacidade](https://www.anthropic.com/legal/privacy).56Para detalhes completos, consulte nossos [Termos de Serviço Comerciais](https://www.anthropic.com/legal/commercial-terms) (para usuários de Team, Enterprise e API) ou [Termos de Consumidor](https://www.anthropic.com/legal/consumer-terms) (para usuários de Free, Pro, Max e Ultra) e [Política de Privacidade](https://www.anthropic.com/legal/privacy).

57 57 

58### Proteções adicionais58### Proteções adicionais

59 59 

Details

14 14 

15Em um ambiente auto-hospedado, essas mesmas sessões são executadas dentro de sua rede. A experiência do desenvolvedor é, de resto, a mesma, exceto pelas diferenças em [Disponibilidade e limitações](#availability-and-limitations) e os [problemas conhecidos](https://code.claude.com/docs/pt/self-hosted-environments-deploy.md#known-issues-and-limitations) da página de implantação.15Em um ambiente auto-hospedado, essas mesmas sessões são executadas dentro de sua rede. A experiência do desenvolvedor é, de resto, a mesma, exceto pelas diferenças em [Disponibilidade e limitações](#availability-and-limitations) e os [problemas conhecidos](https://code.claude.com/docs/pt/self-hosted-environments-deploy.md#known-issues-and-limitations) da página de implantação.

16 16 

17Se sua equipe não usa sessões na nuvem, não há nada para configurar aqui: sessões em um terminal ou IDE sempre são executadas na máquina do próprio desenvolvedor. Se você deseja executar Claude Code em sua própria máquina sempre ativa e controlá-la a partir de outros dispositivos, use [Controle Remoto](https://code.claude.com/docs/pt/remote-control.md), que também está disponível nos planos Pro e Max. Quando estiver pronto para configurar, vá direto para o [guia de início rápido](https://code.claude.com/docs/pt/self-hosted-environments-quickstart.md); para revisar a postura de segurança primeiro, comece com [Implantar em produção](https://code.claude.com/docs/pt/self-hosted-environments-deploy.md). O resto desta página explica como funciona a auto-hospedagem e quando escolhê-la.17* Se sua equipe não usa sessões na nuvem, não há nada para configurar aqui: sessões em um terminal ou IDE sempre são executadas na máquina do próprio desenvolvedor

18* Para executar Claude Code em sua própria máquina sempre ativa e controlá-la a partir de outros dispositivos, use [Remote Control](https://code.claude.com/docs/pt/remote-control.md), que também está disponível nos planos Pro, Max e Ultra

19* Quando estiver pronto para configurar, vá direto para o [guia de início rápido](https://code.claude.com/docs/pt/self-hosted-environments-quickstart.md); para revisar a postura de segurança primeiro, comece com [Implantar em produção](https://code.claude.com/docs/pt/self-hosted-environments-deploy.md)

20 

21Para saber como funciona a auto-hospedagem e quando escolhê-la, leia [Como funcionam os ambientes auto-hospedados](#how-self-hosted-environments-work) e [Por que auto-hospedar](#why-self-host).

18 22 

19## Como funcionam os ambientes auto-hospedados23## Como funcionam os ambientes auto-hospedados

20 24 

Details

531 531 

532Inicie esses runners com [`--confine-repo-settings enforce`](https://code.claude.com/docs/pt/self-hosted-environments-deploy#harden-your-deployment). Ele recusa sessões em repositórios cujas configurações commitadas ele sinaliza, então execute primeiro no modo padrão `warn` e resolva o que ele registrar em log.532Inicie esses runners com [`--confine-repo-settings enforce`](https://code.claude.com/docs/pt/self-hosted-environments-deploy#harden-your-deployment). Ele recusa sessões em repositórios cujas configurações commitadas ele sinaliza, então execute primeiro no modo padrão `warn` e resolva o que ele registrar em log.

533 533 

534**Amazon Bedrock**534> [tab] Amazon Bedrock

535 535>

536Substitua a região pela sua:536> Substitua a região pela sua:

537 537>

538```bash theme={null}538> ```bash theme={null}

539export CLAUDE_CODE_USE_BEDROCK=1539> export CLAUDE_CODE_USE_BEDROCK=1

540export AWS_REGION=us-east-1540> export AWS_REGION=us-east-1

541```541> ```

542 542>

543Para saber como o Claude Code resolve a região, consulte [Configurar o Claude Code](https://code.claude.com/docs/pt/amazon-bedrock.md#3-configure-claude-code). Para saber qual prefixo de perfil de inferência o Claude Code usa para a sua região, consulte [Prefixos de perfil de inferência entre regiões](https://code.claude.com/docs/pt/amazon-bedrock.md#cross-region-inference-profile-prefixes).543> Para saber como o Claude Code resolve a região, consulte [Configurar o Claude Code](https://code.claude.com/docs/pt/amazon-bedrock.md#3-configure-claude-code). Para saber qual prefixo de perfil de inferência o Claude Code usa para a sua região, consulte [Prefixos de perfil de inferência entre regiões](https://code.claude.com/docs/pt/amazon-bedrock.md#cross-region-inference-profile-prefixes).

544 

545**Agent Platform do Google Cloud**

546 

547Substitua a região e o ID do projeto pelos seus:

548 

549```bash theme={null}

550export CLAUDE_CODE_USE_VERTEX=1

551export CLOUD_ML_REGION=global

552export ANTHROPIC_VERTEX_PROJECT_ID=YOUR-PROJECT-ID

553```

554 544 

555Para escolher uma região, consulte [Configuração de região](https://code.claude.com/docs/pt/google-vertex-ai.md#region-configuration).545> [tab] Agent Platform do Google Cloud

546>

547> Substitua a região e o ID do projeto pelos seus:

548>

549> ```bash theme={null}

550> export CLAUDE_CODE_USE_VERTEX=1

551> export CLOUD_ML_REGION=global

552> export ANTHROPIC_VERTEX_PROJECT_ID=YOUR-PROJECT-ID

553> ```

554>

555> Para escolher uma região, consulte [Configuração de região](https://code.claude.com/docs/pt/google-vertex-ai.md#region-configuration).

556 556 

557**4. Verifique se as variáveis chegaram a uma sessão**557**4. Verifique se as variáveis chegaram a uma sessão**

558 558 

Details

90 90 

91As verificações mapeiam diretamente para bibliotecas JWT padrão. Os exemplos abaixo implementam a sequência completa em Node.js com [`jose`](https://www.npmjs.com/package/jose), que lida com busca de JWKS, armazenamento em cache e seleção de `kid`, e em Python com [`PyJWT`](https://pyjwt.readthedocs.io/) e seu cliente JWKS integrado.91As verificações mapeiam diretamente para bibliotecas JWT padrão. Os exemplos abaixo implementam a sequência completa em Node.js com [`jose`](https://www.npmjs.com/package/jose), que lida com busca de JWKS, armazenamento em cache e seleção de `kid`, e em Python com [`PyJWT`](https://pyjwt.readthedocs.io/) e seu cliente JWKS integrado.

92 92 

93**Node.js (jose)**93> [tab] Node.js (jose)

94 94>

95```typescript theme={null}95> ```typescript theme={null}

96import { createRemoteJWKSet, jwtVerify } from "jose";96> import { createRemoteJWKSet, jwtVerify } from "jose";

97 97>

98const JWKS = createRemoteJWKSet(98> const JWKS = createRemoteJWKSet(

99 new URL("https://api.anthropic.com/v1/code/.well-known/jwks.json")99> new URL("https://api.anthropic.com/v1/code/.well-known/jwks.json")

100);100> );

101 101>

102const PREFIX = "sk-ant-cc-";102> const PREFIX = "sk-ant-cc-";

103const EXPECTED_POOL_ID = "ccpool_...";103> const EXPECTED_POOL_ID = "ccpool_...";

104 104>

105export async function verifySessionToken(raw: string) {105> export async function verifySessionToken(raw: string) {

106 if (!raw.startsWith(PREFIX)) {106> if (!raw.startsWith(PREFIX)) {

107 throw new Error("not a self-hosted runner session token");107> throw new Error("not a self-hosted runner session token");

108 }108> }

109 const jwt = raw.slice(PREFIX.length);109> const jwt = raw.slice(PREFIX.length);

110 110>

111 const { payload } = await jwtVerify(jwt, JWKS, {111> const { payload } = await jwtVerify(jwt, JWKS, {

112 issuer: "ccr",112> issuer: "ccr",

113 audience: EXPECTED_POOL_ID,113> audience: EXPECTED_POOL_ID,

114 algorithms: ["ES256"],114> algorithms: ["ES256"],

115 });115> });

116 116>

117 if (payload["ccr:role"] !== "session_worker") {117> if (payload["ccr:role"] !== "session_worker") {

118 throw new Error("token is not a session_worker token");118> throw new Error("token is not a session_worker token");

119 }119> }

120 120>

121 const act = payload.act as { email?: string; sub?: string };121> const act = payload.act as { email?: string; sub?: string };

122 return {122> return {

123 sessionId: payload["ccr:session_id"] as string,123> sessionId: payload["ccr:session_id"] as string,

124 poolId: payload["ccr:pool_id"] as string,124> poolId: payload["ccr:pool_id"] as string,

125 orgId: payload["ccr:org_id"] as string,125> orgId: payload["ccr:org_id"] as string,

126 creatorEmail: act?.email,126> creatorEmail: act?.email,

127 creatorSub: act?.sub,127> creatorSub: act?.sub,

128 };128> };

129}129> }

130```130> ```

131 131 

132**Python (PyJWT)**132> [tab] Python (PyJWT)

133 133>

134```python theme={null}134> ```python theme={null}

135import jwt135> import jwt

136from jwt import PyJWKClient136> from jwt import PyJWKClient

137 137>

138JWKS_URL = "https://api.anthropic.com/v1/code/.well-known/jwks.json"138> JWKS_URL = "https://api.anthropic.com/v1/code/.well-known/jwks.json"

139PREFIX = "sk-ant-cc-"139> PREFIX = "sk-ant-cc-"

140EXPECTED_POOL_ID = "ccpool_..."140> EXPECTED_POOL_ID = "ccpool_..."

141 141>

142jwks = PyJWKClient(JWKS_URL)142> jwks = PyJWKClient(JWKS_URL)

143 143>

144 144>

145def verify_session_token(raw: str) -> dict:145> def verify_session_token(raw: str) -> dict:

146 if not raw.startswith(PREFIX):146> if not raw.startswith(PREFIX):

147 raise ValueError("not a self-hosted runner session token")147> raise ValueError("not a self-hosted runner session token")

148 token = raw.removeprefix(PREFIX)148> token = raw.removeprefix(PREFIX)

149 149>

150 signing_key = jwks.get_signing_key_from_jwt(token)150> signing_key = jwks.get_signing_key_from_jwt(token)

151 payload = jwt.decode(151> payload = jwt.decode(

152 token,152> token,

153 signing_key.key,153> signing_key.key,

154 algorithms=["ES256"],154> algorithms=["ES256"],

155 issuer="ccr",155> issuer="ccr",

156 audience=EXPECTED_POOL_ID,156> audience=EXPECTED_POOL_ID,

157 )157> )

158 158>

159 if payload.get("ccr:role") != "session_worker":159> if payload.get("ccr:role") != "session_worker":

160 raise ValueError("token is not a session_worker token")160> raise ValueError("token is not a session_worker token")

161 161>

162 act = payload.get("act") or {}162> act = payload.get("act") or {}

163 return {163> return {

164 "session_id": payload["ccr:session_id"],164> "session_id": payload["ccr:session_id"],

165 "pool_id": payload["ccr:pool_id"],165> "pool_id": payload["ccr:pool_id"],

166 "org_id": payload["ccr:org_id"],166> "org_id": payload["ccr:org_id"],

167 "creator_email": act.get("email"),167> "creator_email": act.get("email"),

168 "creator_sub": act.get("sub"),168> "creator_sub": act.get("sub"),

169 }169> }

170```170> ```

171 171 

172### Verificar o token dentro da sessão172### Verificar o token dentro da sessão

173 173 

sessions.md +1 −1

Details

95 95 

96Se você vir a caixa de diálogo "Resume this conversation?" ao retomar uma sessão, sua estimativa é a parcela do seu limite de uso de 5 horas que a conversa salva sozinha usaria. A estimativa não conta o que você já usou.96Se você vir a caixa de diálogo "Resume this conversation?" ao retomar uma sessão, sua estimativa é a parcela do seu limite de uso de 5 horas que a conversa salva sozinha usaria. A estimativa não conta o que você já usou.

97 97 

98Nos planos Pro e Max, a caixa de diálogo pode aparecer quando você retoma uma conversa longa [após uma longa pausa](https://code.claude.com/docs/pt/prompt-caching.md#resuming-a-session) ou em um modelo diferente. O uso estimado ocorre quando você envia sua primeira mensagem após **Resume**, não quando você seleciona essa opção. Escolha conforme sua próxima tarefa ainda precise ou não da conversa salva:98Nos planos Pro, Max e Ultra, a caixa de diálogo pode aparecer quando você retoma uma conversa longa [após uma longa pausa](https://code.claude.com/docs/pt/prompt-caching.md#resuming-a-session) ou em um modelo diferente. O uso estimado ocorre quando você envia sua primeira mensagem após **Resume**, não quando você seleciona essa opção. Escolha conforme sua próxima tarefa ainda precise ou não da conversa salva:

99 99 

100* **Resume**: continue trabalhando na conversa salva.100* **Resume**: continue trabalhando na conversa salva.

101* **Start a new conversation**: mude para um trabalho que não precisa da conversa salva. Para reabri-la mais tarde, execute [`/resume`](#use-the-session-picker) no prompt. A estimativa não se aplica à sua primeira mensagem na nova conversa. Se a opção disser que Claude pode consultar esta conversa, você ainda pode fazer referência a trabalhos anteriores na nova conversa.101* **Start a new conversation**: mude para um trabalho que não precisa da conversa salva. Para reabri-la mais tarde, execute [`/resume`](#use-the-session-picker) no prompt. A estimativa não se aplica à sua primeira mensagem na nova conversa. Se a opção disser que Claude pode consultar esta conversa, você ainda pode fazer referência a trabalhos anteriores na nova conversa.

settings-example.md +325 −325

Details

20 20 

21As configurações pessoais de um desenvolvedor. Ele escolhe um modelo e esforço, ajusta o terminal e pré-aprova um comando somente leitura e uma leitura de arquivo. Tudo não listado mantém seu padrão. Um arquivo como este vai em `~/.claude/settings.json`, onde se aplica a cada projeto que você abre.21As configurações pessoais de um desenvolvedor. Ele escolhe um modelo e esforço, ajusta o terminal e pré-aprova um comando somente leitura e uma leitura de arquivo. Tudo não listado mantém seu padrão. Um arquivo como este vai em `~/.claude/settings.json`, onde se aplica a cada projeto que você abre.

22 22 

23**Copyable settings file**23> [tab] Copyable settings file

24 24>

25Salve isto como `~/.claude/settings.json`. É JSON válido sem comentários, então você pode colar como está e deletar as chaves que não deseja.25> Salve isto como `~/.claude/settings.json`. É JSON válido sem comentários, então você pode colar como está e deletar as chaves que não deseja.

26 26>

27```json ~/.claude/settings.json theme={null}27> ```json ~/.claude/settings.json theme={null}

28{28> {

29 "model": "claude-sonnet-5",29> "model": "claude-sonnet-5",

30 "modelSettings": {30> "modelSettings": {

31 "claude-sonnet-5": { "effortLevel": "xhigh" }31> "claude-sonnet-5": { "effortLevel": "xhigh" }

32 },32> },

33 "editorMode": "vim",33> "editorMode": "vim",

34 "theme": "light-daltonized",34> "theme": "light-daltonized",

35 "statusLine": {35> "statusLine": {

36 "type": "command",36> "type": "command",

37 "command": "jq -r '\"[\\(.model.display_name)] \\(.context_window.used_percentage // 0)% context\"'",37> "command": "jq -r '\"[\\(.model.display_name)] \\(.context_window.used_percentage // 0)% context\"'",

38 "padding": 238> "padding": 2

39 },39> },

40 "spinnerTipsEnabled": false,40> "spinnerTipsEnabled": false,

41 "preferredNotifChannel": "terminal_bell",41> "preferredNotifChannel": "terminal_bell",

42 "permissions": {42> "permissions": {

43 "allow": [43> "allow": [

44 "Bash(git diff *)",44> "Bash(git diff *)",

45 "Read(~/.zshrc)"45> "Read(~/.zshrc)"

46 ]46> ]

47 },47> },

48 "autoUpdatesChannel": "stable",48> "autoUpdatesChannel": "stable",

49 "cleanupPeriodDays": 2049> "cleanupPeriodDays": 20

50}50> }

51```51> ```

52 52 

53**What each key does**53> [tab] What each key does

54 54>

55O mesmo arquivo com um comentário acima de cada chave. Leia aqui; copie da outra aba, porque Claude Code não aceita comentários em um arquivo de configurações.55> O mesmo arquivo com um comentário acima de cada chave. Leia aqui; copie da outra aba, porque Claude Code não aceita comentários em um arquivo de configurações.

56 56>

57```jsonc ~/.claude/settings.json theme={null}57> ```jsonc ~/.claude/settings.json theme={null}

58{58> {

59 // Inicie cada sessão no Sonnet 559> // Inicie cada sessão no Sonnet 5

60 "model": "claude-sonnet-5",60> "model": "claude-sonnet-5",

61 // Execute Sonnet 5 acima de seu nível alto padrão; /effort salva um nível por modelo, e --effort define um para uma única sessão61> // Execute Sonnet 5 acima de seu nível alto padrão; /effort salva um nível por modelo, e --effort define um para uma única sessão

62 "modelSettings": {62> "modelSettings": {

63 "claude-sonnet-5": { "effortLevel": "xhigh" }63> "claude-sonnet-5": { "effortLevel": "xhigh" }

64 },64> },

65 // Atalhos de teclado Vim no prompt65> // Atalhos de teclado Vim no prompt

66 "editorMode": "vim",66> "editorMode": "vim",

67 // O tema claro amigável para daltônicos67> // O tema claro amigável para daltônicos

68 "theme": "light-daltonized",68> "theme": "light-daltonized",

69 // Uma linha de status abaixo do prompt: nome do modelo e contexto usado69> // Uma linha de status abaixo do prompt: nome do modelo e contexto usado

70 "statusLine": {70> "statusLine": {

71 "type": "command",71> "type": "command",

72 "command": "jq -r '\"[\\(.model.display_name)] \\(.context_window.used_percentage // 0)% context\"'",72> "command": "jq -r '\"[\\(.model.display_name)] \\(.context_window.used_percentage // 0)% context\"'",

73 "padding": 273> "padding": 2

74 },74> },

75 // Oculte as dicas que giram sob o spinner75> // Oculte as dicas que giram sob o spinner

76 "spinnerTipsEnabled": false,76> "spinnerTipsEnabled": false,

77 // Toque o sino do terminal para notificações, como uma tarefa concluída ou um prompt de permissão aguardando77> // Toque o sino do terminal para notificações, como uma tarefa concluída ou um prompt de permissão aguardando

78 "preferredNotifChannel": "terminal_bell",78> "preferredNotifChannel": "terminal_bell",

79 // Deixe Claude Code executar git diff e ler seu .zshrc sem perguntar79> // Deixe Claude Code executar git diff e ler seu .zshrc sem perguntar

80 "permissions": {80> "permissions": {

81 "allow": [81> "allow": [

82 "Bash(git diff *)",82> "Bash(git diff *)",

83 "Read(~/.zshrc)"83> "Read(~/.zshrc)"

84 ]84> ]

85 },85> },

86 // Pegue atualizações do canal estável86> // Pegue atualizações do canal estável

87 "autoUpdatesChannel": "stable",87> "autoUpdatesChannel": "stable",

88 // Exclua transcrições de sessão e outros dados de sessão local com mais de 20 dias88> // Exclua transcrições de sessão e outros dados de sessão local com mais de 20 dias

89 "cleanupPeriodDays": 2089> "cleanupPeriodDays": 20

90}90> }

91```91> ```

92 92 

93## As configurações compartilhadas de uma equipe93## As configurações compartilhadas de uma equipe

94 94 


100* **O hook é um script no repositório.** O hook deste arquivo executa `.claude/hooks/block-rm.sh`; [Como um hook é resolvido](https://code.claude.com/docs/pt/hooks.md#how-a-hook-resolves) explica como escrevê-lo.100* **O hook é um script no repositório.** O hook deste arquivo executa `.claude/hooks/block-rm.sh`; [Como um hook é resolvido](https://code.claude.com/docs/pt/hooks.md#how-a-hook-resolves) explica como escrevê-lo.

101* **As regras correspondem ao comando e ao caminho conforme escritos.** `Bash(git push *)` não corresponde a [`git -C . push`](https://code.claude.com/docs/pt/permissions#bash-rule-limits). `Read(./.env)` sozinho bloqueia as ferramentas de arquivo e os comandos que nomeiam o arquivo, como `cat .env`, mas não [`grep -r` executado sobre o diretório](https://code.claude.com/docs/pt/permissions#read-and-edit); o bloco `sandbox` neste arquivo fecha essa lacuna, porque o sandbox [adiciona seus caminhos de deny de `Read`](https://code.claude.com/docs/pt/settings-reference#sandbox-filesystem-denyread) ao que nenhum comando em sandbox pode ler.101* **As regras correspondem ao comando e ao caminho conforme escritos.** `Bash(git push *)` não corresponde a [`git -C . push`](https://code.claude.com/docs/pt/permissions#bash-rule-limits). `Read(./.env)` sozinho bloqueia as ferramentas de arquivo e os comandos que nomeiam o arquivo, como `cat .env`, mas não [`grep -r` executado sobre o diretório](https://code.claude.com/docs/pt/permissions#read-and-edit); o bloco `sandbox` neste arquivo fecha essa lacuna, porque o sandbox [adiciona seus caminhos de deny de `Read`](https://code.claude.com/docs/pt/settings-reference#sandbox-filesystem-denyread) ao que nenhum comando em sandbox pode ler.

102 102 

103**Arquivo de configurações para copiar**103> [tab] Arquivo de configurações para copiar

104 104>

105Salve isto como `.claude/settings.json` na raiz do repositório e faça o commit. É um JSON válido sem comentários, então você pode colá-lo como está e excluir as chaves que não quiser.105> Salve isto como `.claude/settings.json` na raiz do repositório e faça o commit. É um JSON válido sem comentários, então você pode colá-lo como está e excluir as chaves que não quiser.

106 106>

107```json .claude/settings.json theme={null}107> ```json .claude/settings.json theme={null}

108{108> {

109 "permissions": {109> "permissions": {

110 "allow": [110> "allow": [

111 "Bash(npm run *)"111> "Bash(npm run *)"

112 ],112> ],

113 "ask": [113> "ask": [

114 "Bash(git push *)"114> "Bash(git push *)"

115 ],115> ],

116 "deny": [116> "deny": [

117 "Read(./.env)",117> "Read(./.env)",

118 "Read(./.env.*)",118> "Read(./.env.*)",

119 "Read(./secrets/**)"119> "Read(./secrets/**)"

120 ]120> ]

121 },121> },

122 "hooks": {122> "hooks": {

123 "PreToolUse": [123> "PreToolUse": [

124 {124> {

125 "matcher": "Bash",125> "matcher": "Bash",

126 "hooks": [126> "hooks": [

127 {127> {

128 "type": "command",128> "type": "command",

129 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh"129> "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh"

130 }130> }

131 ]131> ]

132 }132> }

133 ]133> ]

134 },134> },

135 "extraKnownMarketplaces": {135> "extraKnownMarketplaces": {

136 "acme-tools": {136> "acme-tools": {

137 "source": {137> "source": {

138 "source": "github",138> "source": "github",

139 "repo": "acme-corp/claude-plugins"139> "repo": "acme-corp/claude-plugins"

140 }140> }

141 }141> }

142 },142> },

143 "enabledPlugins": {143> "enabledPlugins": {

144 "code-formatter@acme-tools": true144> "code-formatter@acme-tools": true

145 },145> },

146 "sandbox": {146> "sandbox": {

147 "enabled": true,147> "enabled": true,

148 "filesystem": {148> "filesystem": {

149 "allowWrite": [149> "allowWrite": [

150 "/tmp/build"150> "/tmp/build"

151 ]151> ]

152 },152> },

153 "network": {153> "network": {

154 "allowedDomains": [154> "allowedDomains": [

155 "registry.npmjs.org",155> "registry.npmjs.org",

156 "*.example.com"156> "*.example.com"

157 ]157> ]

158 }158> }

159 },159> },

160 "plansDirectory": "./plans"160> "plansDirectory": "./plans"

161}161> }

162```162> ```

163 163 

164**O que cada chave faz**164> [tab] O que cada chave faz

165 165>

166O mesmo arquivo com um comentário acima de cada chave. Leia-o aqui; copie da outra aba, porque o Claude Code não aceita comentários em um arquivo de configurações.166> O mesmo arquivo com um comentário acima de cada chave. Leia-o aqui; copie da outra aba, porque o Claude Code não aceita comentários em um arquivo de configurações.

167 167>

168```jsonc .claude/settings.json theme={null}168> ```jsonc .claude/settings.json theme={null}

169{169> {

170 "permissions": {170> "permissions": {

171 // Run npm scripts without asking171> // Run npm scripts without asking

172 "allow": [172> "allow": [

173 "Bash(npm run *)"173> "Bash(npm run *)"

174 ],174> ],

175 // Confirm before git push commands175> // Confirm before git push commands

176 "ask": [176> "ask": [

177 "Bash(git push *)"177> "Bash(git push *)"

178 ],178> ],

179 // Deny reads of env files and the secrets folder by the file tools and file-reading commands179> // Deny reads of env files and the secrets folder by the file tools and file-reading commands

180 "deny": [180> "deny": [

181 "Read(./.env)",181> "Read(./.env)",

182 "Read(./.env.*)",182> "Read(./.env.*)",

183 "Read(./secrets/**)"183> "Read(./secrets/**)"

184 ]184> ]

185 },185> },

186 // Before every Bash command, run a script in the repo that can block it186> // Before every Bash command, run a script in the repo that can block it

187 "hooks": {187> "hooks": {

188 "PreToolUse": [188> "PreToolUse": [

189 {189> {

190 "matcher": "Bash",190> "matcher": "Bash",

191 "hooks": [191> "hooks": [

192 {192> {

193 "type": "command",193> "type": "command",

194 "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh"194> "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh"

195 }195> }

196 ]196> ]

197 }197> }

198 ]198> ]

199 },199> },

200 // Register the team's plugin marketplace on every clone200> // Register the team's plugin marketplace on every clone

201 "extraKnownMarketplaces": {201> "extraKnownMarketplaces": {

202 "acme-tools": {202> "acme-tools": {

203 "source": {203> "source": {

204 "source": "github",204> "source": "github",

205 "repo": "acme-corp/claude-plugins"205> "repo": "acme-corp/claude-plugins"

206 }206> }

207 }207> }

208 },208> },

209 // Enable one plugin from that marketplace; a plugin from an external source such as a GitHub repository still needs each person to install it once209> // Enable one plugin from that marketplace; a plugin from an external source such as a GitHub repository still needs each person to install it once

210 "enabledPlugins": {210> "enabledPlugins": {

211 "code-formatter@acme-tools": true211> "code-formatter@acme-tools": true

212 },212> },

213 // Sandbox commands: writable build dir; npm and example.com pre-allowed213> // Sandbox commands: writable build dir; npm and example.com pre-allowed

214 "sandbox": {214> "sandbox": {

215 "enabled": true,215> "enabled": true,

216 "filesystem": {216> "filesystem": {

217 "allowWrite": [217> "allowWrite": [

218 "/tmp/build"218> "/tmp/build"

219 ]219> ]

220 },220> },

221 "network": {221> "network": {

222 "allowedDomains": [222> "allowedDomains": [

223 "registry.npmjs.org",223> "registry.npmjs.org",

224 "*.example.com"224> "*.example.com"

225 ]225> ]

226 }226> }

227 },227> },

228 // Keep plan files inside the repo228> // Keep plan files inside the repo

229 "plansDirectory": "./plans"229> "plansDirectory": "./plans"

230}230> }

231```231> ```

232 232 

233## Configurações gerenciadas de uma organização233## Configurações gerenciadas de uma organização

234 234 


247 247 

248Os administradores implantam um arquivo como este como `managed-settings.json`, ou o mesmo JSON através de MDM ou [configurações gerenciadas pelo servidor](https://code.claude.com/docs/pt/server-managed-settings.md). Um arquivo implantado se aplica a cada máquina ou conta que alcança. Para dar a um grupo valores diferentes, implante um arquivo ou perfil diferente para esse grupo, já que [as configurações gerenciadas pelo servidor não suportam política por grupo ainda](https://code.claude.com/docs/pt/server-managed-settings.md#current-limitations).248Os administradores implantam um arquivo como este como `managed-settings.json`, ou o mesmo JSON através de MDM ou [configurações gerenciadas pelo servidor](https://code.claude.com/docs/pt/server-managed-settings.md). Um arquivo implantado se aplica a cada máquina ou conta que alcança. Para dar a um grupo valores diferentes, implante um arquivo ou perfil diferente para esse grupo, já que [as configurações gerenciadas pelo servidor não suportam política por grupo ainda](https://code.claude.com/docs/pt/server-managed-settings.md#current-limitations).

249 249 

250**Arquivo de configurações copiável**250> [tab] Arquivo de configurações copiável

251 251>

252Implante isto como `managed-settings.json`, ou o mesmo JSON através de MDM ou do console claude.ai. É JSON válido sem comentários; substitua o UUID da organização de exemplo, URL do servidor e marketplace pelos seus próprios e delete as chaves que não deseja.252> Implante isto como `managed-settings.json`, ou o mesmo JSON através de MDM ou do console claude.ai. É JSON válido sem comentários; substitua o UUID da organização de exemplo, URL do servidor e marketplace pelos seus próprios e delete as chaves que não deseja.

253 253>

254```json managed-settings.json theme={null}254> ```json managed-settings.json theme={null}

255{255> {

256 "forceLoginMethod": "claudeai",256> "forceLoginMethod": "claudeai",

257 "forceLoginOrgUUID": [257> "forceLoginOrgUUID": [

258 "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"258> "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

259 ],259> ],

260 "availableModels": [260> "availableModels": [

261 "opus",261> "opus",

262 "sonnet"262> "sonnet"

263 ],263> ],

264 "enforceAvailableModels": true,264> "enforceAvailableModels": true,

265 "permissions": {265> "permissions": {

266 "deny": [266> "deny": [

267 "Bash(curl *)",267> "Bash(curl *)",

268 "Read(./.env)",268> "Read(./.env)",

269 "Read(./secrets/**)"269> "Read(./secrets/**)"

270 ],270> ],

271 "disableBypassPermissionsMode": "disable"271> "disableBypassPermissionsMode": "disable"

272 },272> },

273 "allowManagedPermissionRulesOnly": true,273> "allowManagedPermissionRulesOnly": true,

274 "allowedMcpServers": [274> "allowedMcpServers": [

275 {275> {

276 "serverUrl": "https://api.githubcopilot.com/*"276> "serverUrl": "https://api.githubcopilot.com/*"

277 }277> }

278 ],278> ],

279 "allowManagedMcpServersOnly": true,279> "allowManagedMcpServersOnly": true,

280 "strictKnownMarketplaces": [280> "strictKnownMarketplaces": [

281 {281> {

282 "source": "github",282> "source": "github",

283 "repo": "acme-corp/approved-plugins"283> "repo": "acme-corp/approved-plugins"

284 }284> }

285 ],285> ],

286 "sandbox": {286> "sandbox": {

287 "enabled": true,287> "enabled": true,

288 "failIfUnavailable": true,288> "failIfUnavailable": true,

289 "allowUnsandboxedCommands": false,289> "allowUnsandboxedCommands": false,

290 "network": {290> "network": {

291 "allowedDomains": [291> "allowedDomains": [

292 "registry.npmjs.org",292> "registry.npmjs.org",

293 "github.com"293> "github.com"

294 ],294> ],

295 "allowManagedDomainsOnly": true295> "allowManagedDomainsOnly": true

296 }296> }

297 },297> },

298 "requiredMinimumVersion": "2.1.150",298> "requiredMinimumVersion": "2.1.150",

299 "cleanupPeriodDays": 7,299> "cleanupPeriodDays": 7,

300 "companyAnnouncements": [300> "companyAnnouncements": [

301 "Welcome to Acme Corp! Review our code guidelines at docs.example.com"301> "Welcome to Acme Corp! Review our code guidelines at docs.example.com"

302 ]302> ]

303}303> }

304```304> ```

305 305 

306**O que cada chave faz**306> [tab] O que cada chave faz

307 307>

308O mesmo arquivo com um comentário acima de cada chave. Leia aqui; copie da outra aba, porque Claude Code não aceita comentários em um arquivo de configurações.308> O mesmo arquivo com um comentário acima de cada chave. Leia aqui; copie da outra aba, porque Claude Code não aceita comentários em um arquivo de configurações.

309 309>

310```jsonc managed-settings.json theme={null}310> ```jsonc managed-settings.json theme={null}

311{311> {

312 // Apenas logins claude.ai, e apenas nesta organização312> // Apenas logins claude.ai, e apenas nesta organização

313 "forceLoginMethod": "claudeai",313> "forceLoginMethod": "claudeai",

314 "forceLoginOrgUUID": [314> "forceLoginOrgUUID": [

315 "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"315> "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

316 ],316> ],

317 // Apenas modelos Opus e Sonnet; com enforceAvailableModels, a opção Padrão obedece à lista também317> // Apenas modelos Opus e Sonnet; com enforceAvailableModels, a opção Padrão obedece à lista também

318 "availableModels": [318> "availableModels": [

319 "opus",319> "opus",

320 "sonnet"320> "sonnet"

321 ],321> ],

322 "enforceAvailableModels": true,322> "enforceAvailableModels": true,

323 "permissions": {323> "permissions": {

324 // Bloqueie curl, o arquivo .env do projeto e sua pasta de segredos em cada máquina324> // Bloqueie curl, o arquivo .env do projeto e sua pasta de segredos em cada máquina

325 "deny": [325> "deny": [

326 "Bash(curl *)",326> "Bash(curl *)",

327 "Read(./.env)",327> "Read(./.env)",

328 "Read(./secrets/**)"328> "Read(./secrets/**)"

329 ],329> ],

330 // Remova o modo de bypass de permissões de cada sessão330> // Remova o modo de bypass de permissões de cada sessão

331 "disableBypassPermissionsMode": "disable"331> "disableBypassPermissionsMode": "disable"

332 },332> },

333 // Ignore regras de permissão de configurações de usuário, projeto e local333> // Ignore regras de permissão de configurações de usuário, projeto e local

334 "allowManagedPermissionRulesOnly": true,334> "allowManagedPermissionRulesOnly": true,

335 // Apenas o servidor MCP do GitHub, correspondido pela URL em vez de por nome, já que um usuário pode335> // Apenas o servidor MCP do GitHub, correspondido pela URL em vez de por nome, já que um usuário pode

336 // nomear qualquer servidor "github". Servidores adicionados pelo usuário que não correspondem não carregam, incluindo336> // nomear qualquer servidor "github". Servidores adicionados pelo usuário que não correspondem não carregam, incluindo

337 // cada servidor stdio quando a lista tem apenas entradas de URL. A chave allowManagedMcpServersOnly337> // cada servidor stdio quando a lista tem apenas entradas de URL. A chave allowManagedMcpServersOnly

338 // abaixo faz desta lista gerenciada a única lista de permissão que se aplica338> // abaixo faz desta lista gerenciada a única lista de permissão que se aplica

339 "allowedMcpServers": [339> "allowedMcpServers": [

340 {340> {

341 "serverUrl": "https://api.githubcopilot.com/*"341> "serverUrl": "https://api.githubcopilot.com/*"

342 }342> }

343 ],343> ],

344 "allowManagedMcpServersOnly": true,344> "allowManagedMcpServersOnly": true,

345 // Plugins podem vir apenas deste marketplace345> // Plugins podem vir apenas deste marketplace

346 "strictKnownMarketplaces": [346> "strictKnownMarketplaces": [

347 {347> {

348 "source": "github",348> "source": "github",

349 "repo": "acme-corp/approved-plugins"349> "repo": "acme-corp/approved-plugins"

350 }350> }

351 ],351> ],

352 // Coloque cada comando que Claude executa em sandbox, recuse iniciar se o sandbox não puder ser352> // Coloque cada comando que Claude executa em sandbox, recuse iniciar se o sandbox não puder ser

353 // configurado, e nunca deixe um comando bloqueado tentar novamente fora do sandbox; rede353> // configurado, e nunca deixe um comando bloqueado tentar novamente fora do sandbox; rede

354 // limitada a npm e GitHub, e usuários não podem adicionar domínios354> // limitada a npm e GitHub, e usuários não podem adicionar domínios

355 "sandbox": {355> "sandbox": {

356 "enabled": true,356> "enabled": true,

357 "failIfUnavailable": true,357> "failIfUnavailable": true,

358 "allowUnsandboxedCommands": false,358> "allowUnsandboxedCommands": false,

359 "network": {359> "network": {

360 "allowedDomains": [360> "allowedDomains": [

361 "registry.npmjs.org",361> "registry.npmjs.org",

362 "github.com"362> "github.com"

363 ],363> ],

364 "allowManagedDomainsOnly": true364> "allowManagedDomainsOnly": true

365 }365> }

366 },366> },

367 // Recuse iniciar em versões mais antigas que 2.1.150367> // Recuse iniciar em versões mais antigas que 2.1.150

368 "requiredMinimumVersion": "2.1.150",368> "requiredMinimumVersion": "2.1.150",

369 // Exclua transcrições de sessão e outros dados de sessão local após 7 dias369> // Exclua transcrições de sessão e outros dados de sessão local após 7 dias

370 "cleanupPeriodDays": 7,370> "cleanupPeriodDays": 7,

371 // Uma mensagem que cada usuário vê na inicialização371> // Uma mensagem que cada usuário vê na inicialização

372 "companyAnnouncements": [372> "companyAnnouncements": [

373 "Welcome to Acme Corp! Review our code guidelines at docs.example.com"373> "Welcome to Acme Corp! Review our code guidelines at docs.example.com"

374 ]374> ]

375}375> }

376```376> ```

Details

3865* **Type**: Boolean3865* **Type**: Boolean

3866 * `true`: Claude Code permite channels para sua organização3866 * `true`: Claude Code permite channels para sua organização

3867 * `false`: o mesmo que não definido; se channels são bloqueados depende de seu plano, como o Default diz3867 * `false`: o mesmo que não definido; se channels são bloqueados depende de seu plano, como o Default diz

3868* **Default**: não definido; channels são bloqueados em planos Team e Enterprise e em contas Console com configurações gerenciadas, e permitidos em planos Pro e Max e em contas Console sem configurações gerenciadas3868* **Default**: não definido; channels são bloqueados em planos Team e Enterprise e em contas Console com configurações gerenciadas, e permitidos em planos Pro, Max e Ultra e em contas Console sem configurações gerenciadas

3869 3869 

3870```json managed-settings.json theme={null}3870```json managed-settings.json theme={null}

3871{3871{

setup.md +251 −251

Details

35 35 

36Para instalar Claude Code, abra um terminal e execute o comando para seu sistema. Se você nunca usou um terminal antes, o [guia de terminal](https://code.claude.com/docs/pt/terminal-guide) mostra como abrir um e colar o comando.36Para instalar Claude Code, abra um terminal e execute o comando para seu sistema. Se você nunca usou um terminal antes, o [guia de terminal](https://code.claude.com/docs/pt/terminal-guide) mostra como abrir um e colar o comando.

37 37 

38**Instalação Nativa (Recomendado)**38> [tab] Instalação Nativa (Recomendado)

39 

40**macOS, Linux, WSL:**

41 

42```bash theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

43curl -fsSL https://claude.ai/install.sh | bash

44```

45 

46No Windows, seu prompt mostra `PS C:\` quando você está no PowerShell e `C:\` sem o `PS` quando você está no CMD.

47 

48**Windows PowerShell:**

49 

50```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

51irm https://claude.ai/install.ps1 | iex

52```

53 

54**Windows CMD:**

55 

56```batch theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

57curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

58```

59 

60O comando de instalação não mostra nenhum progresso enquanto baixa o Claude Code. Quando o instalador terminar, abra uma nova janela de terminal e execute `claude --version`. Uma instalação funcionando imprime um número de versão. Se seu shell disser que `claude` não foi encontrado ou não é reconhecido, o diretório de instalação ainda não está em seu PATH: consulte [Corrija seu PATH](https://code.claude.com/docs/pt/troubleshoot-install.md#command-not-found-claude-after-installation).

61 

62Se você vir `The token '&&' is not a valid statement separator`, você está no PowerShell, não no CMD. Se você vir `'irm' is not recognized as an internal or external command`, você está no CMD, não no PowerShell.

63 

64Se o comando de instalação falhar com `syntax error near unexpected token '<'`, um `403`, ou qualquer outro erro, consulte [Solucionar problemas de instalação](https://code.claude.com/docs/pt/troubleshoot-install.md#find-your-error) para corresponder o erro a uma correção e para métodos alternativos de instalação.

65 

66[Git for Windows](https://git-scm.com/downloads/win) é recomendado no Windows nativo para que Claude Code possa usar a ferramenta Bash. Se Git for Windows não estiver instalado, Claude Code usa PowerShell como ferramenta de shell. Configurações WSL não precisam de Git for Windows.

67 

68> [!NOTE]

69>39>

70> As instalações nativas são atualizadas automaticamente em segundo plano para mantê-lo na versão mais recente.40> **macOS, Linux, WSL:**

71 

72**Homebrew**

73 

74```bash theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

75brew install --cask claude-code

76```

77 

78Homebrew oferece dois casks. `claude-code` rastreia o canal de versão estável, que normalmente fica cerca de uma semana atrás e pula versões com regressões importantes. `claude-code@latest` rastreia o canal mais recente e recebe novas versões assim que são lançadas.

79 

80> [!NOTE]

81>41>

82> As instalações do Homebrew não são atualizadas automaticamente. Execute `brew upgrade claude-code` ou `brew upgrade claude-code@latest`, dependendo de qual cask você instalou, para obter os recursos mais recentes e correções de segurança.42> ```bash theme={null}

83 43> curl -fsSL https://claude.ai/install.sh | bash

84**WinGet**44> ```

45>

46> No Windows, seu prompt mostra `PS C:\` quando você está no PowerShell e `C:\` sem o `PS` quando você está no CMD.

47>

48> **Windows PowerShell:**

49>

50> ```powershell theme={null}

51> irm https://claude.ai/install.ps1 | iex

52> ```

53>

54> **Windows CMD:**

55>

56> ```batch theme={null}

57> curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

58> ```

59>

60> O comando de instalação não mostra nenhum progresso enquanto baixa o Claude Code. Quando o instalador terminar, abra uma nova janela de terminal e execute `claude --version`. Uma instalação funcionando imprime um número de versão. Se seu shell disser que `claude` não foi encontrado ou não é reconhecido, o diretório de instalação ainda não está em seu PATH: consulte [Corrija seu PATH](https://code.claude.com/docs/pt/troubleshoot-install.md#command-not-found-claude-after-installation).

61>

62> Se você vir `The token '&&' is not a valid statement separator`, você está no PowerShell, não no CMD. Se você vir `'irm' is not recognized as an internal or external command`, você está no CMD, não no PowerShell.

63>

64> Se o comando de instalação falhar com `syntax error near unexpected token '<'`, um `403`, ou qualquer outro erro, consulte [Solucionar problemas de instalação](https://code.claude.com/docs/pt/troubleshoot-install.md#find-your-error) para corresponder o erro a uma correção e para métodos alternativos de instalação.

65>

66> [Git for Windows](https://git-scm.com/downloads/win) é recomendado no Windows nativo para que Claude Code possa usar a ferramenta Bash. Se Git for Windows não estiver instalado, Claude Code usa PowerShell como ferramenta de shell. Configurações WSL não precisam de Git for Windows.

67>

68> > [!NOTE]

69> >

70> > As instalações nativas são atualizadas automaticamente em segundo plano para mantê-lo na versão mais recente.

85 71 

86```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}72> [tab] Homebrew

87winget install Anthropic.ClaudeCode73>

88```74> ```bash theme={null}

75> brew install --cask claude-code

76> ```

77>

78> Homebrew oferece dois casks. `claude-code` rastreia o canal de versão estável, que normalmente fica cerca de uma semana atrás e pula versões com regressões importantes. `claude-code@latest` rastreia o canal mais recente e recebe novas versões assim que são lançadas.

79>

80> > [!NOTE]

81> >

82> > As instalações do Homebrew não são atualizadas automaticamente. Execute `brew upgrade claude-code` ou `brew upgrade claude-code@latest`, dependendo de qual cask você instalou, para obter os recursos mais recentes e correções de segurança.

89 83 

90> [!NOTE]84> [tab] WinGet

85>

86> ```powershell theme={null}

87> winget install Anthropic.ClaudeCode

88> ```

91>89>

92> As instalações do WinGet não são atualizadas automaticamente. Execute `winget upgrade Anthropic.ClaudeCode` periodicamente para obter os recursos mais recentes e correções de segurança.90> > [!NOTE]

91> >

92> > As instalações do WinGet não são atualizadas automaticamente. Execute `winget upgrade Anthropic.ClaudeCode` periodicamente para obter os recursos mais recentes e correções de segurança.

93 93 

94Você também pode instalar com [apt, dnf, ou apk](https://code.claude.com/docs/pt/setup.md#install-with-linux-package-managers) no Debian, Fedora, RHEL e Alpine.94Você também pode instalar com [apt, dnf, ou apk](https://code.claude.com/docs/pt/setup.md#install-with-linux-package-managers) no Debian, Fedora, RHEL e Alpine.

95 95 


188 188 

189## Autenticar189## Autenticar

190 190 

191Claude Code requer uma conta Pro, Max, Team, Enterprise ou Console. O plano gratuito do Claude.ai não inclui acesso ao Claude Code. Você também pode usar Claude Code com um provedor de API de terceiros como [Amazon Bedrock](https://code.claude.com/docs/pt/amazon-bedrock.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/pt/google-vertex-ai.md) ou [Microsoft Foundry](https://code.claude.com/docs/pt/microsoft-foundry.md).191Claude Code requer uma conta Pro, Max, Ultra, Team, Enterprise ou Console. O plano gratuito do claude.ai não inclui acesso ao Claude Code. Você também pode usar Claude Code com um provedor de API de terceiros como [Amazon Bedrock](https://code.claude.com/docs/pt/amazon-bedrock.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/pt/google-vertex-ai.md) ou [Microsoft Foundry](https://code.claude.com/docs/pt/microsoft-foundry.md).

192 192 

193Após a instalação, faça login executando `claude` e seguindo os prompts do navegador. Se você definiu a variável de ambiente `ANTHROPIC_API_KEY` e aprova a chave quando Claude Code pergunta se deve usá-la, Claude Code ignora o prompt de login. Consulte [Autenticação](https://code.claude.com/docs/pt/authentication.md) para todos os tipos de conta e opções de configuração de equipe.193Após a instalação, faça login executando `claude` e seguindo os prompts do navegador. Se você definiu a variável de ambiente `ANTHROPIC_API_KEY` e aprova a chave quando Claude Code pergunta se deve usá-la, Claude Code ignora o prompt de login. Consulte [Autenticação](https://code.claude.com/docs/pt/authentication.md) para todos os tipos de conta e opções de configuração de equipe.

194 194 


300 300 

301Para instalar a versão mais recente (padrão):301Para instalar a versão mais recente (padrão):

302 302 

303**macOS, Linux, WSL**303> [tab] macOS, Linux, WSL

304 304>

305```bash theme={null}305> ```bash theme={null}

306curl -fsSL https://claude.ai/install.sh | bash306> curl -fsSL https://claude.ai/install.sh | bash

307```307> ```

308 

309**Windows PowerShell**

310 

311```powershell theme={null}

312irm https://claude.ai/install.ps1 | iex

313```

314 308 

315**Windows CMD**309> [tab] Windows PowerShell

310>

311> ```powershell theme={null}

312> irm https://claude.ai/install.ps1 | iex

313> ```

316 314 

317```batch theme={null}315> [tab] Windows CMD

318curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd316>

319```317> ```batch theme={null}

318> curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

319> ```

320 320 

321Para instalar a versão estável:321Para instalar a versão estável:

322 322 

323**macOS, Linux, WSL**323> [tab] macOS, Linux, WSL

324 324>

325```bash theme={null}325> ```bash theme={null}

326curl -fsSL https://claude.ai/install.sh | bash -s stable326> curl -fsSL https://claude.ai/install.sh | bash -s stable

327```327> ```

328 

329**Windows PowerShell**

330 

331```powershell theme={null}

332& ([scriptblock]::Create((irm https://claude.ai/install.ps1))) stable

333```

334 328 

335**Windows CMD**329> [tab] Windows PowerShell

330>

331> ```powershell theme={null}

332> & ([scriptblock]::Create((irm https://claude.ai/install.ps1))) stable

333> ```

336 334 

337```batch theme={null}335> [tab] Windows CMD

338curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd stable && del install.cmd336>

339```337> ```batch theme={null}

338> curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd stable && del install.cmd

339> ```

340 340 

341Para instalar um número de versão específico:341Para instalar um número de versão específico:

342 342 

343**macOS, Linux, WSL**343> [tab] macOS, Linux, WSL

344 344>

345```bash theme={null}345> ```bash theme={null}

346curl -fsSL https://claude.ai/install.sh | bash -s 2.1.89346> curl -fsSL https://claude.ai/install.sh | bash -s 2.1.89

347```347> ```

348 

349**Windows PowerShell**

350 

351```powershell theme={null}

352& ([scriptblock]::Create((irm https://claude.ai/install.ps1))) 2.1.89

353```

354 348 

355**Windows CMD**349> [tab] Windows PowerShell

350>

351> ```powershell theme={null}

352> & ([scriptblock]::Create((irm https://claude.ai/install.ps1))) 2.1.89

353> ```

356 354 

357```batch theme={null}355> [tab] Windows CMD

358curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd 2.1.89 && del install.cmd356>

359```357> ```batch theme={null}

358> curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd 2.1.89 && del install.cmd

359> ```

360 360 

361Para confirmar qual versão foi instalada, execute `claude --version`: o comando imprime a versão exata que você passou, como `2.1.89 (Claude Code)`.361Para confirmar qual versão foi instalada, execute `claude --version`: o comando imprime a versão exata que você passou, como `2.1.89 (Claude Code)`.

362 362 


366 366 

367Todos os repositórios são assinados com a [chave de assinatura de lançamento do Claude Code](#binary-integrity-and-code-signing). Antes de confiar na chave, verifique-a conforme descrito em cada aba.367Todos os repositórios são assinados com a [chave de assinatura de lançamento do Claude Code](#binary-integrity-and-code-signing). Antes de confiar na chave, verifique-a conforme descrito em cada aba.

368 368 

369**apt**369> [tab] apt

370 370>

371Para Debian e Ubuntu. Os comandos de instalação abaixo baixam a chave de assinatura com `curl` e a verificam com `gpg`, que instalações recentes de Debian e Ubuntu podem não incluir. Se algum comando relatar `command not found`, instale ambos primeiro:371> Para Debian e Ubuntu. Os comandos de instalação abaixo baixam a chave de assinatura com `curl` e a verificam com `gpg`, que instalações recentes de Debian e Ubuntu podem não incluir. Se algum comando relatar `command not found`, instale ambos primeiro:

372 372>

373```bash theme={null}373> ```bash theme={null}

374sudo apt install curl gnupg374> sudo apt install curl gnupg

375```375> ```

376 376>

377Baixe a chave de assinatura:377> Baixe a chave de assinatura:

378 378>

379```bash theme={null}379> ```bash theme={null}

380sudo install -d -m 0755 /etc/apt/keyrings380> sudo install -d -m 0755 /etc/apt/keyrings

381sudo curl -fsSL https://downloads.claude.ai/keys/claude-code.asc \381> sudo curl -fsSL https://downloads.claude.ai/keys/claude-code.asc \

382 -o /etc/apt/keyrings/claude-code.asc382> -o /etc/apt/keyrings/claude-code.asc

383```383> ```

384 384>

385Se este download falhar, `apt update` mais tarde falhará com `NO_PUBKEY BAA929FF1A7ECACE`. Confirme que a chave foi baixada e pertence à Anthropic antes de continuar:385> Se este download falhar, `apt update` mais tarde falhará com `NO_PUBKEY BAA929FF1A7ECACE`. Confirme que a chave foi baixada e pertence à Anthropic antes de continuar:

386 386>

387```bash theme={null}387> ```bash theme={null}

388gpg --show-keys /etc/apt/keyrings/claude-code.asc388> gpg --show-keys /etc/apt/keyrings/claude-code.asc

389```389> ```

390 390>

391A impressão digital que gpg imprime deve ser `31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE`. Se gpg relatar que o arquivo não pode ser aberto ou não contém dados OpenPGP válidos, o download falhou ou retornou o conteúdo errado: confirme que sua rede pode alcançar `downloads.claude.ai`, depois execute novamente o comando de download.391> A impressão digital que gpg imprime deve ser `31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE`. Se gpg relatar que o arquivo não pode ser aberto ou não contém dados OpenPGP válidos, o download falhou ou retornou o conteúdo errado: confirme que sua rede pode alcançar `downloads.claude.ai`, depois execute novamente o comando de download.

392 392>

393Registre o repositório no canal `stable` e instale:393> Registre o repositório no canal `stable` e instale:

394 394>

395```bash theme={null}395> ```bash theme={null}

396echo "deb [signed-by=/etc/apt/keyrings/claude-code.asc] https://downloads.claude.ai/claude-code/apt/stable stable main" \396> echo "deb [signed-by=/etc/apt/keyrings/claude-code.asc] https://downloads.claude.ai/claude-code/apt/stable stable main" \

397 | sudo tee /etc/apt/sources.list.d/claude-code.list397> | sudo tee /etc/apt/sources.list.d/claude-code.list

398sudo apt update398> sudo apt update

399sudo apt install claude-code399> sudo apt install claude-code

400```400> ```

401 401>

402Para usar o canal `latest` em vez disso, tanto o caminho da URL quanto o nome do suite mudam. Use esta linha `deb`:402> Para usar o canal `latest` em vez disso, tanto o caminho da URL quanto o nome do suite mudam. Use esta linha `deb`:

403 403>

404```bash theme={null}404> ```bash theme={null}

405echo "deb [signed-by=/etc/apt/keyrings/claude-code.asc] https://downloads.claude.ai/claude-code/apt/latest latest main" \405> echo "deb [signed-by=/etc/apt/keyrings/claude-code.asc] https://downloads.claude.ai/claude-code/apt/latest latest main" \

406 | sudo tee /etc/apt/sources.list.d/claude-code.list406> | sudo tee /etc/apt/sources.list.d/claude-code.list

407```407> ```

408 408>

409Para atualizar mais tarde, execute `sudo apt update && sudo apt upgrade claude-code`.409> Para atualizar mais tarde, execute `sudo apt update && sudo apt upgrade claude-code`.

410 

411**dnf**

412 

413Para Fedora e RHEL. Os comandos a seguir configuram o canal `stable`:

414 

415```bash theme={null}

416sudo tee /etc/yum.repos.d/claude-code.repo <<'EOF'

417[claude-code]

418name=Claude Code

419baseurl=https://downloads.claude.ai/claude-code/rpm/stable

420enabled=1

421gpgcheck=1

422gpgkey=https://downloads.claude.ai/keys/claude-code.asc

423EOF

424sudo dnf install claude-code

425```

426 

427Para usar o canal `latest` em vez disso, defina `baseurl` para o repositório `latest`:

428 

429```ini theme={null}

430baseurl=https://downloads.claude.ai/claude-code/rpm/latest

431```

432 

433dnf baixa a chave na primeira instalação e solicita que você confirme a impressão digital. Verifique se ela corresponde a `31DD DE24 DDFA B679 F42D 7BD2 BAA9 29FF 1A7E CACE` antes de aceitar.

434 

435Para atualizar mais tarde, execute `sudo dnf upgrade claude-code`.

436 

437**apk**

438 

439Para Alpine Linux. Os comandos a seguir configuram o canal `stable`:

440 

441```sh theme={null}

442wget -O /etc/apk/keys/claude-code.rsa.pub \

443 https://downloads.claude.ai/keys/claude-code.rsa.pub

444echo "https://downloads.claude.ai/claude-code/apk/stable" >> /etc/apk/repositories

445apk add claude-code

446```

447 

448Para mudar para o canal `latest`, remova a linha do repositório `stable` e adicione o repositório `latest`:

449 

450```sh theme={null}

451sed -i '\|downloads.claude.ai/claude-code/apk/stable|d' /etc/apk/repositories

452echo "https://downloads.claude.ai/claude-code/apk/latest" >> /etc/apk/repositories

453```

454 410 

455Verifique a chave baixada com `sha256sum /etc/apk/keys/claude-code.rsa.pub`, que deve relatar `395759c1f7449ef4cdef305a42e820f3c766d6090d142634ebdb049f113168b6`.411> [tab] dnf

412>

413> Para Fedora e RHEL. Os comandos a seguir configuram o canal `stable`:

414>

415> ```bash theme={null}

416> sudo tee /etc/yum.repos.d/claude-code.repo <<'EOF'

417> [claude-code]

418> name=Claude Code

419> baseurl=https://downloads.claude.ai/claude-code/rpm/stable

420> enabled=1

421> gpgcheck=1

422> gpgkey=https://downloads.claude.ai/keys/claude-code.asc

423> EOF

424> sudo dnf install claude-code

425> ```

426>

427> Para usar o canal `latest` em vez disso, defina `baseurl` para o repositório `latest`:

428>

429> ```ini theme={null}

430> baseurl=https://downloads.claude.ai/claude-code/rpm/latest

431> ```

432>

433> dnf baixa a chave na primeira instalação e solicita que você confirme a impressão digital. Verifique se ela corresponde a `31DD DE24 DDFA B679 F42D 7BD2 BAA9 29FF 1A7E CACE` antes de aceitar.

434>

435> Para atualizar mais tarde, execute `sudo dnf upgrade claude-code`.

456 436 

457Para atualizar mais tarde, execute `apk update && apk upgrade claude-code`.437> [tab] apk

438>

439> Para Alpine Linux. Os comandos a seguir configuram o canal `stable`:

440>

441> ```sh theme={null}

442> wget -O /etc/apk/keys/claude-code.rsa.pub \

443> https://downloads.claude.ai/keys/claude-code.rsa.pub

444> echo "https://downloads.claude.ai/claude-code/apk/stable" >> /etc/apk/repositories

445> apk add claude-code

446> ```

447>

448> Para mudar para o canal `latest`, remova a linha do repositório `stable` e adicione o repositório `latest`:

449>

450> ```sh theme={null}

451> sed -i '\|downloads.claude.ai/claude-code/apk/stable|d' /etc/apk/repositories

452> echo "https://downloads.claude.ai/claude-code/apk/latest" >> /etc/apk/repositories

453> ```

454>

455> Verifique a chave baixada com `sha256sum /etc/apk/keys/claude-code.rsa.pub`, que deve relatar `395759c1f7449ef4cdef305a42e820f3c766d6090d142634ebdb049f113168b6`.

456>

457> Para atualizar mais tarde, execute `apk update && apk upgrade claude-code`.

458 458 

459### Instalar com npm459### Instalar com npm

460 460 


546 546 

547Compare o checksum SHA256 do binário com o valor listado em `platforms.<platform>.checksum` em `manifest.json`. Os comandos abaixo assumem um binário `claude` no diretório atual. Para verificar um binário nativo instalado em vez disso, execute o comando contra `~/.local/share/claude/versions/VERSION`, substituindo VERSION pelo lançamento que você definiu na Etapa 2.547Compare o checksum SHA256 do binário com o valor listado em `platforms.<platform>.checksum` em `manifest.json`. Os comandos abaixo assumem um binário `claude` no diretório atual. Para verificar um binário nativo instalado em vez disso, execute o comando contra `~/.local/share/claude/versions/VERSION`, substituindo VERSION pelo lançamento que você definiu na Etapa 2.

548 548 

549**Linux**549> [tab] Linux

550 550>

551```bash theme={null}551> ```bash theme={null}

552sha256sum claude552> sha256sum claude

553```553> ```

554 

555**macOS**

556 

557```bash theme={null}

558shasum -a 256 claude

559```

560 554 

561**Windows PowerShell**555> [tab] macOS

556>

557> ```bash theme={null}

558> shasum -a 256 claude

559> ```

562 560 

563```powershell theme={null}561> [tab] Windows PowerShell

564(Get-FileHash claude.exe -Algorithm SHA256).Hash.ToLower()562>

565```563> ```powershell theme={null}

564> (Get-FileHash claude.exe -Algorithm SHA256).Hash.ToLower()

565> ```

566 566 

567> [!NOTE]567> [!NOTE]

568>568>


584 584 

585Remova o binário Claude Code e os arquivos de versão:585Remova o binário Claude Code e os arquivos de versão:

586 586 

587**macOS, Linux, WSL**587> [tab] macOS, Linux, WSL

588 588>

589```bash theme={null}589> ```bash theme={null}

590rm -f ~/.local/bin/claude590> rm -f ~/.local/bin/claude

591rm -rf ~/.local/share/claude591> rm -rf ~/.local/share/claude

592```592> ```

593 

594**Windows PowerShell**

595 593 

596```powershell theme={null}594> [tab] Windows PowerShell

597Remove-Item -Path "$env:USERPROFILE\.local\bin\claude.exe" -Force595>

598Remove-Item -Path "$env:USERPROFILE\.local\share\claude" -Recurse -Force596> ```powershell theme={null}

599```597> Remove-Item -Path "$env:USERPROFILE\.local\bin\claude.exe" -Force

598> Remove-Item -Path "$env:USERPROFILE\.local\share\claude" -Recurse -Force

599> ```

600 600 

601### Desinstalar com Homebrew601### Desinstalar com Homebrew

602 602 


624 624 

625Remova o pacote e a configuração do repositório:625Remova o pacote e a configuração do repositório:

626 626 

627**apt**627> [tab] apt

628 628>

629```bash theme={null}629> ```bash theme={null}

630sudo apt remove claude-code630> sudo apt remove claude-code

631sudo rm /etc/apt/sources.list.d/claude-code.list /etc/apt/keyrings/claude-code.asc631> sudo rm /etc/apt/sources.list.d/claude-code.list /etc/apt/keyrings/claude-code.asc

632```632> ```

633 

634**dnf**

635 

636```bash theme={null}

637sudo dnf remove claude-code

638sudo rm /etc/yum.repos.d/claude-code.repo

639```

640 633 

641**apk**634> [tab] dnf

635>

636> ```bash theme={null}

637> sudo dnf remove claude-code

638> sudo rm /etc/yum.repos.d/claude-code.repo

639> ```

642 640 

643```sh theme={null}641> [tab] apk

644apk del claude-code642>

645sed -i '\|downloads.claude.ai/claude-code/apk|d' /etc/apk/repositories643> ```sh theme={null}

646rm /etc/apk/keys/claude-code.rsa.pub644> apk del claude-code

647```645> sed -i '\|downloads.claude.ai/claude-code/apk|d' /etc/apk/repositories

646> rm /etc/apk/keys/claude-code.rsa.pub

647> ```

648 648 

649### Desinstalar com npm649### Desinstalar com npm

650 650 


664 664 

665Para remover as configurações e dados em cache do Claude Code:665Para remover as configurações e dados em cache do Claude Code:

666 666 

667**macOS, Linux, WSL**667> [tab] macOS, Linux, WSL

668 668>

669```bash theme={null}669> ```bash theme={null}

670# Remover configurações de usuário e estado670> # Remover configurações de usuário e estado

671rm -rf ~/.claude671> rm -rf ~/.claude

672rm ~/.claude.json672> rm ~/.claude.json

673 673>

674# Remover configurações específicas do projeto (execute a partir do diretório do seu projeto)674> # Remover configurações específicas do projeto (execute a partir do diretório do seu projeto)

675rm -rf .claude675> rm -rf .claude

676rm -f .mcp.json676> rm -f .mcp.json

677```677> ```

678 

679**Windows PowerShell**

680 

681```powershell theme={null}

682# Remover configurações de usuário e estado

683Remove-Item -Path "$env:USERPROFILE\.claude" -Recurse -Force

684Remove-Item -Path "$env:USERPROFILE\.claude.json" -Force

685 678 

686# Remover configurações específicas do projeto (execute a partir do diretório do seu projeto)679> [tab] Windows PowerShell

687Remove-Item -Path ".claude" -Recurse -Force680>

688Remove-Item -Path ".mcp.json" -Force681> ```powershell theme={null}

689```682> # Remover configurações de usuário e estado

683> Remove-Item -Path "$env:USERPROFILE\.claude" -Recurse -Force

684> Remove-Item -Path "$env:USERPROFILE\.claude.json" -Force

685>

686> # Remover configurações específicas do projeto (execute a partir do diretório do seu projeto)

687> Remove-Item -Path ".claude" -Recurse -Force

688> Remove-Item -Path ".mcp.json" -Force

689> ```

skills.md +1 −1

Details

42* **Extensões**: skills, servidores MCP e plugins não utilizados comparados com seu custo de contexto, e [hooks](https://code.claude.com/docs/pt/hooks.md) lentos42* **Extensões**: skills, servidores MCP e plugins não utilizados comparados com seu custo de contexto, e [hooks](https://code.claude.com/docs/pt/hooks.md) lentos

43* **Arquivos `CLAUDE.md`**: arquivos `CLAUDE.md` locais que duplicam arquivos versionados, [conteúdo de `CLAUDE.md` versionado que Claude poderia derivar da base de código](https://code.claude.com/docs/pt/memory#my-claude-md-is-too-large) e as orientações sempre carregadas restantes, que Claude oferece migrar para skills e arquivos `CLAUDE.md` aninhados que são carregados sob demanda43* **Arquivos `CLAUDE.md`**: arquivos `CLAUDE.md` locais que duplicam arquivos versionados, [conteúdo de `CLAUDE.md` versionado que Claude poderia derivar da base de código](https://code.claude.com/docs/pt/memory#my-claude-md-is-too-large) e as orientações sempre carregadas restantes, que Claude oferece migrar para skills e arquivos `CLAUDE.md` aninhados que são carregados sob demanda

44* **Permissões**: uma oferta para tornar o [modo auto](https://code.claude.com/docs/pt/permissions.md#permission-modes) seu modo de permissão padrão e para [pré-aprovar](https://code.claude.com/docs/pt/permissions.md) comandos somente leitura que você nega com frequência44* **Permissões**: uma oferta para tornar o [modo auto](https://code.claude.com/docs/pt/permissions.md#permission-modes) seu modo de permissão padrão e para [pré-aprovar](https://code.claude.com/docs/pt/permissions.md) comandos somente leitura que você nega com frequência

45* **Uso**: em um plano Pro, Max, Team ou Enterprise, as [alterações que `/usage` recomenda](https://code.claude.com/docs/pt/costs#plan-usage-breakdown) para reduzir o uso do seu plano, medidas nos últimos 7 dias. Claude propõe as alterações que pode fazer por conta própria e relata o restante como recomendações, como um comando para você executar. A verificação de uso requer Claude Code v2.1.305 ou posterior, e `/doctor` a omite enquanto o [Remote Control](https://code.claude.com/docs/pt/remote-control.md) está conectado.45* **Uso**: em um plano Pro, Max, Ultra, Team ou Enterprise, as [alterações que `/usage` recomenda](https://code.claude.com/docs/pt/costs#plan-usage-breakdown) para reduzir o uso do seu plano, medidas nos últimos 7 dias. Claude propõe as alterações que pode fazer por conta própria e relata o restante como recomendações, como um comando para você executar. A verificação de uso requer Claude Code v2.1.305 ou posterior, e `/doctor` a omite enquanto o [Remote Control](https://code.claude.com/docs/pt/remote-control.md) está conectado.

46 46 

47Para diagnósticos de instalação somente leitura sem iniciar uma sessão, execute `claude doctor` no seu terminal.47Para diagnósticos de instalação somente leitura sem iniciar uma sessão, execute `claude doctor` no seu terminal.

48 48 

slack.md +11 −11

Details

4 4 

5# Claude Code no Slack5# Claude Code no Slack

6 6 

7> Delegue tarefas de codificação a partir do Slack. Esta versão anterior responde a menções em canais apenas de contas Pro e Max em workspaces não conectados ao Claude Tag.7> Delegue tarefas de codificação a partir do Slack. Esta versão anterior responde a menções apenas de contas Pro, Max e Ultra em workspaces não conectados ao Claude Tag.

8 8 

9> [!WARNING]9> [!WARNING]

10>10>

11> Esta página documenta a versão anterior do Claude Code no Slack, que executa cada sessão sob a conta de um usuário individual. Ela responde a @menções em canais apenas de contas Pro e Max, e somente em um workspace do Slack que nenhuma organização conectou ao [Claude Tag](https://claude.com/product/tag). O Claude Tag executa @Claude como a identidade compartilhada da sua organização com acesso configurado pelo administrador.11> Esta versão anterior do Claude Code no Slack responde a @menções em canais apenas de contas Pro, Max e Ultra, e somente em um workspace do Slack que nenhuma organização conectou ao [Claude Tag](https://claude.com/product/tag). Cada sessão é executada sob a conta de um usuário individual. O Claude Tag executa @Claude como a identidade compartilhada da sua organização com acesso configurado pelo administrador.

12>12>

13> * **Planos Pro e Max:** o Claude Tag não está disponível em planos individuais, portanto esta página permanece como o caminho de configuração em um workspace que não está conectado ao Claude Tag.13> * **Planos Pro, Max e Ultra:** o Claude Tag não está disponível em planos individuais, portanto [configure esta versão](#setting-up-claude-code-in-slack) em um workspace que não está conectado ao Claude Tag.

14> * **Planos Team e Enterprise:** seu aplicativo Slack existente e o identificador @Claude permanecem. [Configure o Claude Tag](https://claude.com/docs/claude-tag/overview) para um novo workspace; para mover um que já usa esta versão, consulte [Migrar do Claude anterior no Slack](https://claude.com/docs/claude-tag/admins/migrate-from-earlier).14> * **Planos Team e Enterprise:** seu aplicativo Slack existente e o identificador @Claude permanecem. [Configure o Claude Tag](https://claude.com/docs/claude-tag/overview) para um novo workspace; para mover um que já usa esta versão, consulte [Migrar do Claude anterior no Slack](https://claude.com/docs/claude-tag/admins/migrate-from-earlier).

15> * **Aviso em vez de uma resposta:** consulte o [aviso de configuração](#this-workspace-isnt-set-up-for-claude-tag-yet) ou o [aviso de descontinuação](#the-legacy-claude-in-slack-bot-is-retired) com que o @Claude respondeu.15> * **Aviso em vez de uma resposta:** consulte o [aviso de configuração](#this-workspace-isnt-set-up-for-claude-tag-yet) ou o [aviso de descontinuação](#the-legacy-claude-in-slack-bot-is-retired) com que o @Claude respondeu.

16 16 


31 31 

32| Requisito | Detalhes |32| Requisito | Detalhes |

33| :- | :- |33| :- | :- |

34| Plano Claude | Pro ou Max |34| Plano Claude | Pro, Max ou Ultra |

35| Workspace do Slack | Não conectado ao [Claude Tag](https://claude.com/docs/claude-tag/overview) por nenhuma organização. Se @Claude responder com o [aviso de descontinuação](#the-legacy-claude-in-slack-bot-is-retired), o workspace está conectado |35| Workspace do Slack | Não conectado ao [Claude Tag](https://claude.com/docs/claude-tag/overview) por nenhuma organização. Se @Claude responder com o [aviso de descontinuação](#the-legacy-claude-in-slack-bot-is-retired), o workspace está conectado |

36| Sessões na nuvem | [Sessões na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) estão habilitadas para sua conta |36| Sessões na nuvem | [Sessões na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) estão habilitadas para sua conta |

37| Conta GitHub | Conectada em [claude.ai/code](https://claude.ai/code) com pelo menos um repositório autenticado |37| Conta GitHub | Conectada em [claude.ai/code](https://claude.ai/code) com pelo menos um repositório autenticado |


178@Claude responde no thread com este aviso em vez de uma resposta quando ambas as condições a seguir são verdadeiras:178@Claude responde no thread com este aviso em vez de uma resposta quando ambas as condições a seguir são verdadeiras:

179 179 

180* Nenhuma organização conectou seu workspace do Slack ao [Claude Tag](https://claude.com/docs/claude-tag/overview).180* Nenhuma organização conectou seu workspace do Slack ao [Claude Tag](https://claude.com/docs/claude-tag/overview).

181* A conta Claude que você vinculou no Slack não está em um plano Pro ou Max.181* A conta Claude que você vinculou no Slack não está em um plano Pro, Max ou Ultra.

182 182 

183Claude Tag está disponível nos planos Team e Enterprise. Para conectar o workspace, comece com o comando `@Claude connect` indicado no aviso e, em seguida, siga [Configurar o Claude Tag](https://claude.com/docs/claude-tag/overview).183Claude Tag está disponível nos planos Team e Enterprise. Para conectar o workspace, comece com o comando `@Claude connect` indicado no aviso e, em seguida, siga [Configurar o Claude Tag](https://claude.com/docs/claude-tag/overview).

184 184 

185### "The legacy Claude in Slack bot is retired"185### "The legacy Claude in Slack bot is retired"

186 186 

187O aviso começa com `The legacy Claude in Slack bot is retired effective October 5, 2026 and no longer responds in channels.` Seu workspace do Slack está conectado a uma organização Claude, e a versão anterior ainda está selecionada para o canal, o workspace ou o padrão da organização nas configurações do Claude Tag dessa organização. O aviso não depende do seu próprio plano, portanto contas Pro e Max também o recebem.187O aviso começa com `The legacy Claude in Slack bot is retired effective October 5, 2026 and no longer responds in channels.` Seu workspace do Slack está conectado a uma organização Claude. A versão anterior ainda está selecionada para o canal, o workspace ou o padrão da organização nas configurações do Claude Tag dessa organização. O aviso não depende do seu próprio plano, portanto contas Pro, Max e Ultra também o recebem.

188 188 

189Se você for um Owner dessa organização, abra as [configurações de administrador do Claude](https://claude.ai/admin-settings/claude-tag) e ative o Claude Tag para o canal. Para corrigir todos os canais que herdam a configuração, altere-a no workspace ou no padrão da organização. Para a migração completa, consulte [Migrar do Claude in Slack anterior](https://claude.com/docs/claude-tag/admins/migrate-from-earlier). Se você não for um Owner, envie esta entrada para um.189Se você for um Owner dessa organização, abra as [configurações de administrador do Claude](https://claude.ai/admin-settings/claude-tag) e ative o Claude Tag para o canal. Para corrigir todos os canais que herdam a configuração, altere-a no workspace ou no padrão da organização. Para a migração completa, consulte [Migrar do Claude in Slack anterior](https://claude.com/docs/claude-tag/admins/migrate-from-earlier). Se você não for um Owner, envie esta entrada para um.

190 190 


235 235 

236## Recursos relacionados236## Recursos relacionados

237 237 

238> **[Claude Code na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md)**238> [card] [Claude Code na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md)

239>239>

240> Saiba mais sobre sessões na nuvem240> Saiba mais sobre sessões na nuvem

241 241 

242> **[Claude for Slack](https://claude.com/claude-and-slack)**242> [card] [Claude for Slack](https://claude.com/claude-and-slack)

243>243>

244> Documentação geral do Claude for Slack244> Documentação geral do Claude for Slack

245 245 

246> **[Claude Tag](https://claude.com/docs/claude-tag/overview)**246> [card] [Claude Tag](https://claude.com/docs/claude-tag/overview)

247>247>

248> @Claude gerenciado pela organização no Slack com acesso configurado pelo administrador248> @Claude gerenciado pela organização no Slack com acesso configurado pelo administrador

249 249 

250> **[Slack App Marketplace](https://slack.com/marketplace/A08SF47R6P4)**250> [card] [Slack App Marketplace](https://slack.com/marketplace/A08SF47R6P4)

251>251>

252> Instale o aplicativo Claude no Slack Marketplace252> Instale o aplicativo Claude no Slack Marketplace

253 253 

254> **[Claude Help Center](https://support.claude.com)**254> [card] [Claude Help Center](https://support.claude.com)

255>255>

256> Obtenha suporte adicional256> Obtenha suporte adicional

statusline.md +4 −4

Details

212| `worktree.original_cwd` | O diretório em que o Claude estava antes de entrar na worktree |212| `worktree.original_cwd` | O diretório em que o Claude estava antes de entrar na worktree |

213| `worktree.original_branch` | Ramificação git verificada antes de entrar na worktree. Ausente para worktrees baseadas em hook |213| `worktree.original_branch` | Ramificação git verificada antes de entrar na worktree. Ausente para worktrees baseadas em hook |

214 214 

215> **Esquema JSON completo**215> [accordion] Esquema JSON completo

216>216>

217> Seu comando de linha de status recebe esta estrutura JSON via stdin:217> Seu comando de linha de status recebe esta estrutura JSON via stdin:

218>218>


341> * `agent`: aparece apenas ao executar com a flag `--agent` ou configurações de agente configuradas341> * `agent`: aparece apenas ao executar com a flag `--agent` ou configurações de agente configuradas

342> * `pr`: aparece apenas enquanto um PR aberto ou solicitação de mesclagem GitLab é encontrado para o branch atual, e é removido uma vez que seja mesclado ou fechado. `pr.review_state` e `pr.kind` podem estar independentemente ausentes342> * `pr`: aparece apenas enquanto um PR aberto ou solicitação de mesclagem GitLab é encontrado para o branch atual, e é removido uma vez que seja mesclado ou fechado. `pr.review_state` e `pr.kind` podem estar independentemente ausentes

343> * `worktree`: aparece apenas enquanto a sessão está em uma [sessão de worktree](https://code.claude.com/docs/pt/worktrees.md). Quando presente, `branch` e `original_branch` também podem estar ausentes para worktrees baseadas em hook343> * `worktree`: aparece apenas enquanto a sessão está em uma [sessão de worktree](https://code.claude.com/docs/pt/worktrees.md). Quando presente, `branch` e `original_branch` também podem estar ausentes para worktrees baseadas em hook

344> * `rate_limits`: aparece apenas para assinantes Claude.ai Pro e Max, ou atrás de um gateway de aplicativos Claude que define um limite de gastos para você, e apenas após a primeira resposta de API na sessão. Cada janela (`five_hour`, `seven_day`, `spend_limit`) pode estar independentemente ausente, e o Claude Code remove uma janela uma vez que seu tempo `resets_at` passa. Use `jq -r '.rate_limits.five_hour.used_percentage // empty'` para lidar com ausência graciosamente.344> * `rate_limits`: aparece apenas para assinantes claude.ai Pro, Max e Ultra, ou atrás de um gateway de aplicativos Claude que define um limite de gastos para você. Mesmo assim, aparece apenas após a primeira resposta de API na sessão. Cada janela (`five_hour`, `seven_day`, `spend_limit`) pode estar independentemente ausente, e o Claude Code remove uma janela uma vez que seu tempo `resets_at` passa. Use `jq -r '.rate_limits.five_hour.used_percentage // empty'` para lidar com ausência graciosamente.

345> * `prompt_cache`: aparece após a primeira resposta de API da conversa principal. Consulte [campos de cache de prompt](#prompt-cache-fields)345> * `prompt_cache`: aparece após a primeira resposta de API da conversa principal. Consulte [campos de cache de prompt](#prompt-cache-fields)

346>346>

347> **Campos que podem ser `null`**:347> **Campos que podem ser `null`**:


819 819 

820### Uso de limite de taxa820### Uso de limite de taxa

821 821 

822Exiba o uso do rate limit da assinatura do claude.ai, ou seus gastos em relação ao limite de gastos de um gateway de aplicativos Claude, na linha de status. Para assinantes, o objeto `rate_limits` contém uma janela móvel `five_hour` e uma janela semanal `seven_day`. Cada janela fornece `used_percentage`, de 0 a 100, e `resets_at`, os segundos de época Unix quando a janela é redefinida. Atrás de um gateway, leia o objeto `spend_limit`, descrito em [campos de limite de gastos](#spend-limit-fields).822Exiba o uso do rate limit da assinatura do claude.ai, ou seus gastos em relação ao limite de gastos de um gateway de aplicativos Claude, na linha de status. Para assinantes, o objeto `rate_limits` pode conter uma janela móvel `five_hour` e uma janela semanal `seven_day`. Cada janela fornece `used_percentage`, de 0 a 100, e `resets_at`, os segundos de época Unix quando a janela é redefinida. Atrás de um gateway, leia o objeto `spend_limit`, descrito em [campos de limite de gastos](#spend-limit-fields).

823 823 

824O objeto `rate_limits` está presente apenas para assinantes Pro e Max do claude.ai, ou atrás de um gateway de aplicativos Claude com limites de gastos, e apenas após a primeira resposta de API. Cada script trata os campos ausentes graciosamente e, atrás de um gateway, imprime `spend: $314.12 / $500`, ou `spend: 63%` enquanto os campos em dólares estiverem ausentes:824O objeto `rate_limits` está presente apenas para assinantes Pro, Max e Ultra do claude.ai, ou atrás de um gateway de aplicativos Claude com limites de gastos, e apenas após a primeira resposta de API. Cada script trata os campos ausentes graciosamente e, atrás de um gateway, imprime `spend: $314.12 / $500`, ou `spend: 63%` enquanto os campos em dólares estiverem ausentes:

825 825 

826```bash Bash theme={null}826```bash Bash theme={null}

827#!/bin/bash827#!/bin/bash

sub-agents.md +77 −77

Details

32 32 

33Explore e Plan iniciam sem seus arquivos CLAUDE.md e sem o snapshot de status git para manter a pesquisa rápida e econômica. Outros subagentes integrados e [subagentes personalizados](#configure-subagents) carregam ambos, a menos que você defina [`omitClaudeMd`](#supported-frontmatter-fields) na definição de um subagente personalizado para iniciá-lo sem os arquivos CLAUDE.md do usuário, do projeto e locais. Para o detalhamento completo do que chega a um subagente, consulte [o que é carregado na inicialização](#what-loads-at-startup).33Explore e Plan iniciam sem seus arquivos CLAUDE.md e sem o snapshot de status git para manter a pesquisa rápida e econômica. Outros subagentes integrados e [subagentes personalizados](#configure-subagents) carregam ambos, a menos que você defina [`omitClaudeMd`](#supported-frontmatter-fields) na definição de um subagente personalizado para iniciá-lo sem os arquivos CLAUDE.md do usuário, do projeto e locais. Para o detalhamento completo do que chega a um subagente, consulte [o que é carregado na inicialização](#what-loads-at-startup).

34 34 

35**Explore**35> [tab] Explore

36 36>

37Um agente rápido e somente leitura otimizado para pesquisar e analisar bases de código.37> Um agente rápido e somente leitura otimizado para pesquisar e analisar bases de código.

38 38>

39* **Model**: o modelo da conversa principal. Quando a conversa principal executa Fable, o modelo do Explore depende de como você se conecta:39> * **Model**: o modelo da conversa principal. Quando a conversa principal executa Fable, o modelo do Explore depende de como você se conecta:

40 * Com uma assinatura Claude, uma conta do Anthropic Console ou um [gateway de LLM](https://code.claude.com/docs/pt/llm-gateway) acessado por meio de `ANTHROPIC_BASE_URL`, Explore é executado no modelo Opus para o qual o [alias `opus`](https://code.claude.com/docs/pt/model-config#model-aliases) é resolvido.40> * Com uma assinatura Claude, uma conta do Anthropic Console ou um [gateway de LLM](https://code.claude.com/docs/pt/llm-gateway) acessado por meio de `ANTHROPIC_BASE_URL`, Explore é executado no modelo Opus para o qual o [alias `opus`](https://code.claude.com/docs/pt/model-config#model-aliases) é resolvido.

41 * No Amazon Bedrock, no Google Cloud's Agent Platform, no Microsoft Foundry, na [Claude Platform on AWS](https://code.claude.com/docs/pt/claude-platform-on-aws.md) ou em um [gateway de Claude apps](https://code.claude.com/docs/pt/claude-apps-gateway), Explore permanece no modelo da conversa principal.41> * No Amazon Bedrock, no Google Cloud's Agent Platform, no Microsoft Foundry, na [Claude Platform on AWS](https://code.claude.com/docs/pt/claude-platform-on-aws.md) ou em um [gateway de Claude apps](https://code.claude.com/docs/pt/claude-apps-gateway), Explore permanece no modelo da conversa principal.

42* **Tools**: ferramentas somente leitura; Write e Edit são negados42> * **Tools**: ferramentas somente leitura; Write e Edit são negados

43* **Purpose**: descoberta de arquivos, pesquisa de código, exploração de base de código43> * **Purpose**: descoberta de arquivos, pesquisa de código, exploração de base de código

44 44>

45Um [subagente de usuário ou projeto](#choose-the-subagent-scope) nomeado `Explore` sobrescreve o integrado e mantém seu próprio campo `model`, portanto defina um com `model: haiku` para executar a exploração em um modelo de menor custo. Para forçar um único modelo em todos os subagentes, incluindo o Explore, consulte [Execute cada subagente em um modelo](#run-every-subagent-on-one-model).45> Um [subagente de usuário ou projeto](#choose-the-subagent-scope) nomeado `Explore` sobrescreve o integrado e mantém seu próprio campo `model`, portanto defina um com `model: haiku` para executar a exploração em um modelo de menor custo. Para forçar um único modelo em todos os subagentes, incluindo o Explore, consulte [Execute cada subagente em um modelo](#run-every-subagent-on-one-model).

46 46>

47Claude delega para Explore quando precisa pesquisar ou entender uma base de código sem fazer alterações. Isso mantém os resultados da exploração fora do contexto da sua conversa principal.47> Claude delega para Explore quando precisa pesquisar ou entender uma base de código sem fazer alterações. Isso mantém os resultados da exploração fora do contexto da sua conversa principal.

48 48>

49Ao invocar Explore, Claude especifica um nível de minuciosidade: **quick** para buscas direcionadas, **medium** para exploração equilibrada, ou **very thorough** para análise abrangente.49> Ao invocar Explore, Claude especifica um nível de minuciosidade: **quick** para buscas direcionadas, **medium** para exploração equilibrada, ou **very thorough** para análise abrangente.

50 

51**Plan**

52 

53Um agente de pesquisa usado durante [plan mode](https://code.claude.com/docs/pt/permission-modes.md#analyze-before-you-edit-with-plan-mode) para reunir contexto antes de apresentar um plano.

54 

55* **Model**: herda da conversa principal, a menos que você defina `CLAUDE_CODE_SUBAGENT_MODEL` e [force-o em cada subagente](#run-every-subagent-on-one-model)

56* **Tools**: ferramentas somente leitura; Write e Edit são negados

57* **Purpose**: pesquisa de base de código para planejamento

58 

59Quando você está em plan mode e Claude precisa entender sua base de código, ele delega a pesquisa para o subagente Plan para que a saída de exploração permaneça em uma janela de contexto separada enquanto a conversa principal permanece somente leitura.

60 

61**General-purpose**

62 

63Um agente capaz para tarefas complexas e multi-etapas que requerem exploração e ação.

64 

65* **Model**: o modelo [`CLAUDE_CODE_SUBAGENT_MODEL`](#choose-a-model) se você definir um e nada atribuir um modelo de outra forma, caso contrário o modelo da conversa principal; [Escolha um modelo](#choose-a-model) declara a ordem completa, e [Execute cada subagente em um modelo](#run-every-subagent-on-one-model) mostra como fazer a variável substituir essas fontes

66* **Tools**: todas as ferramentas [disponíveis para subagentes](#available-tools)

67* **Purpose**: pesquisa complexa, operações multi-etapas, modificações de código

68 

69Claude delega para general-purpose quando a tarefa requer exploração e modificação, raciocínio complexo para interpretar resultados, ou múltiplas etapas dependentes.

70 50 

71**Other**51> [tab] Plan

52>

53> Um agente de pesquisa usado durante [plan mode](https://code.claude.com/docs/pt/permission-modes.md#analyze-before-you-edit-with-plan-mode) para reunir contexto antes de apresentar um plano.

54>

55> * **Model**: herda da conversa principal, a menos que você defina `CLAUDE_CODE_SUBAGENT_MODEL` e [force-o em cada subagente](#run-every-subagent-on-one-model)

56> * **Tools**: ferramentas somente leitura; Write e Edit são negados

57> * **Purpose**: pesquisa de base de código para planejamento

58>

59> Quando você está em plan mode e Claude precisa entender sua base de código, ele delega a pesquisa para o subagente Plan para que a saída de exploração permaneça em uma janela de contexto separada enquanto a conversa principal permanece somente leitura.

72 60 

73Claude Code inclui agentes auxiliares adicionais para tarefas específicas. Estes são normalmente invocados automaticamente, então você não precisa usá-los diretamente.61> [tab] General-purpose

62>

63> Um agente capaz para tarefas complexas e multi-etapas que requerem exploração e ação.

64>

65> * **Model**: o modelo [`CLAUDE_CODE_SUBAGENT_MODEL`](#choose-a-model) se você definir um e nada atribuir um modelo de outra forma, caso contrário o modelo da conversa principal; [Escolha um modelo](#choose-a-model) declara a ordem completa, e [Execute cada subagente em um modelo](#run-every-subagent-on-one-model) mostra como fazer a variável substituir essas fontes

66> * **Tools**: todas as ferramentas [disponíveis para subagentes](#available-tools)

67> * **Purpose**: pesquisa complexa, operações multi-etapas, modificações de código

68>

69> Claude delega para general-purpose quando a tarefa requer exploração e modificação, raciocínio complexo para interpretar resultados, ou múltiplas etapas dependentes.

74 70 

75| Agent | Model | When Claude uses it |71> [tab] Other

76| :- | :- | :- |72>

77| claude | Nenhum próprio; segue a [ordem de modelo](#choose-a-model) quando Claude o gera como um subagente | Quando uma tarefa não se encaixa em um agente mais especializado. Um catch-all com todas as ferramentas [disponíveis para subagentes](#available-tools). Também o agente padrão para uma [sessão em background](https://code.claude.com/docs/pt/agent-view.md) despachada; [qual modo de permissão ele inicia](https://code.claude.com/docs/pt/agent-view.md#permission-mode-model-and-effort) depende de como a sessão foi iniciada |73> Claude Code inclui agentes auxiliares adicionais para tarefas específicas. Estes são normalmente invocados automaticamente, então você não precisa usá-los diretamente.

78| statusline-setup | Sonnet | Quando você executa `/statusline` para configurar sua linha de status |74>

79| claude-code-guide | Haiku | Quando você faz perguntas sobre recursos do Claude Code |75> | Agent | Model | When Claude uses it |

76> | :- | :- | :- |

77> | claude | Nenhum próprio; segue a [ordem de modelo](#choose-a-model) quando Claude o gera como um subagente | Quando uma tarefa não se encaixa em um agente mais especializado. Um catch-all com todas as ferramentas [disponíveis para subagentes](#available-tools). Também o agente padrão para uma [sessão em background](https://code.claude.com/docs/pt/agent-view.md) despachada; [qual modo de permissão ele inicia](https://code.claude.com/docs/pt/agent-view.md#permission-mode-model-and-effort) depende de como a sessão foi iniciada |

78> | statusline-setup | Sonnet | Quando você executa `/statusline` para configurar sua linha de status |

79> | claude-code-guide | Haiku | Quando você faz perguntas sobre recursos do Claude Code |

80 80 

81Os subagentes integrados são registrados por padrão em sessões interativas. Para restringi-los:81Os subagentes integrados são registrados por padrão em sessões interativas. Para restringi-los:

82 82 


179 179 

180**Subagentes definidos via CLI** são passados como JSON ao iniciar o Claude Code. Eles existem apenas naquela sessão e não são salvos em disco, o que os torna úteis para testes rápidos ou scripts de automação. Você pode definir vários subagentes em uma única chamada `--agents`:180**Subagentes definidos via CLI** são passados como JSON ao iniciar o Claude Code. Eles existem apenas naquela sessão e não são salvos em disco, o que os torna úteis para testes rápidos ou scripts de automação. Você pode definir vários subagentes em uma única chamada `--agents`:

181 181 

182**macOS, Linux, WSL**182> [tab] macOS, Linux, WSL

183 183>

184```bash theme={null}184> ```bash theme={null}

185claude --agents '{185> claude --agents '{

186 "code-reviewer": {186> "code-reviewer": {

187 "description": "Expert code reviewer. Use proactively after code changes.",187> "description": "Expert code reviewer. Use proactively after code changes.",

188 "prompt": "You are a senior code reviewer. Focus on code quality, security, and best practices.",188> "prompt": "You are a senior code reviewer. Focus on code quality, security, and best practices.",

189 "tools": ["Read", "Grep", "Glob", "Bash"],189> "tools": ["Read", "Grep", "Glob", "Bash"],

190 "model": "sonnet"190> "model": "sonnet"

191 },191> },

192 "debugger": {192> "debugger": {

193 "description": "Debugging specialist for errors and test failures.",193> "description": "Debugging specialist for errors and test failures.",

194 "prompt": "You are an expert debugger. Analyze errors, identify root causes, and provide fixes."194> "prompt": "You are an expert debugger. Analyze errors, identify root causes, and provide fixes."

195 }195> }

196}'196> }'

197```197> ```

198 198 

199**Windows PowerShell**199> [tab] Windows PowerShell

200 200>

201```powershell theme={null}201> ```powershell theme={null}

202claude --agents @'202> claude --agents @'

203{203> {

204 "code-reviewer": {204> "code-reviewer": {

205 "description": "Expert code reviewer. Use proactively after code changes.",205> "description": "Expert code reviewer. Use proactively after code changes.",

206 "prompt": "You are a senior code reviewer. Focus on code quality, security, and best practices.",206> "prompt": "You are a senior code reviewer. Focus on code quality, security, and best practices.",

207 "tools": ["Read", "Grep", "Glob", "Bash"],207> "tools": ["Read", "Grep", "Glob", "Bash"],

208 "model": "sonnet"208> "model": "sonnet"

209 },209> },

210 "debugger": {210> "debugger": {

211 "description": "Debugging specialist for errors and test failures.",211> "description": "Debugging specialist for errors and test failures.",

212 "prompt": "You are an expert debugger. Analyze errors, identify root causes, and provide fixes."212> "prompt": "You are an expert debugger. Analyze errors, identify root causes, and provide fixes."

213 }213> }

214}214> }

215'@215> '@

216```216> ```

217 217 

218No [modo não interativo](https://code.claude.com/docs/pt/headless.md), `--agents` também aceita o caminho para um arquivo JSON contendo o mesmo objeto, para definições grandes demais para passar na linha de comando. Por exemplo, `claude -p --agents ./agents.json "Review my changes"` lê as definições desse arquivo. Em uma sessão interativa, o Claude Code recusa um caminho de arquivo. O formato de arquivo requer o Claude Code v2.1.281 ou posterior.218No [modo não interativo](https://code.claude.com/docs/pt/headless.md), `--agents` também aceita o caminho para um arquivo JSON contendo o mesmo objeto, para definições grandes demais para passar na linha de comando. Por exemplo, `claude -p --agents ./agents.json "Review my changes"` lê as definições desse arquivo. Em uma sessão interativa, o Claude Code recusa um caminho de arquivo. O formato de arquivo requer o Claude Code v2.1.281 ou posterior.

219 219 

terminal-config.md +16 −16

Details

48 48 

49Alguns atalhos de teclado do Claude Code usam a tecla Option, como Option+Enter para uma nova linha ou Option+P para alternar modelos. No macOS, a maioria dos terminais não envia Option como um modificador por padrão, portanto esses atalhos não funcionam até que você o ative. A configuração do terminal para isso geralmente é rotulada como "Use Option as Meta Key"; Meta é o nome histórico do Unix para a tecla agora rotulada como Option ou Alt.49Alguns atalhos de teclado do Claude Code usam a tecla Option, como Option+Enter para uma nova linha ou Option+P para alternar modelos. No macOS, a maioria dos terminais não envia Option como um modificador por padrão, portanto esses atalhos não funcionam até que você o ative. A configuração do terminal para isso geralmente é rotulada como "Use Option as Meta Key"; Meta é o nome histórico do Unix para a tecla agora rotulada como Option ou Alt.

50 50 

51**Apple Terminal**51> [tab] Apple Terminal

52 52>

53Abra Configurações → Perfis → Teclado e marque "Use Option as Meta Key".53> Abra Configurações → Perfis → Teclado e marque "Use Option as Meta Key".

54 54>

55Se você aceitou o prompt de configuração do terminal na primeira execução do Claude Code, isso já foi feito. Esse prompt executa `/terminal-setup` para você, que ativa Option como Meta e desativa o sino audível no seu perfil do Apple Terminal.55> Se você aceitou o prompt de configuração do terminal na primeira execução do Claude Code, isso já foi feito. Esse prompt executa `/terminal-setup` para você, que ativa Option como Meta e desativa o sino audível no seu perfil do Apple Terminal.

56 56>

57No [modo leitor de tela](https://code.claude.com/docs/pt/accessibility.md), `/terminal-setup` deixa a configuração do sino inalterada para que o sino do terminal permaneça audível. Se uma execução anterior desativou o sino, ative-o novamente em Configurações → Perfis → Avançado → "Audible bell".57> No [modo leitor de tela](https://code.claude.com/docs/pt/accessibility.md), `/terminal-setup` deixa a configuração do sino inalterada para que o sino do terminal permaneça audível. Se uma execução anterior desativou o sino, ative-o novamente em Configurações → Perfis → Avançado → "Audible bell".

58 

59**iTerm2**

60 

61Abra Configurações → Perfis → Teclas → Geral e defina a tecla Option esquerda e a tecla Option direita como "Esc+".

62 

63Executar `/terminal-setup` no iTerm2 ativa "Applications in terminal may access clipboard" em Configurações → Geral → Seleção para que o comando `/copy` possa escrever na sua área de transferência do sistema. O comando detecta iTerm2 mesmo quando executado dentro do tmux. Reinicie o iTerm2 para que a alteração tenha efeito.

64 58 

65**VS Code**59> [tab] iTerm2

60>

61> Abra Configurações → Perfis → Teclas → Geral e defina a tecla Option esquerda e a tecla Option direita como "Esc+".

62>

63> Executar `/terminal-setup` no iTerm2 ativa "Applications in terminal may access clipboard" em Configurações → Geral → Seleção para que o comando `/copy` possa escrever na sua área de transferência do sistema. O comando detecta iTerm2 mesmo quando executado dentro do tmux. Reinicie o iTerm2 para que a alteração tenha efeito.

66 64 

67Adicione `"terminal.integrated.macOptionIsMeta": true` às suas configurações do VS Code.65> [tab] VS Code

66>

67> Adicione `"terminal.integrated.macOptionIsMeta": true` às suas configurações do VS Code.

68 68 

69Para Ghostty, Kitty e outros terminais, procure por uma configuração Option-as-Alt ou Option-as-Meta no arquivo de configuração do terminal.69Para Ghostty, Kitty e outros terminais, procure por uma configuração Option-as-Alt ou Option-as-Meta no arquivo de configuração do terminal.

70 70 


188 188 

189A referência abaixo aborda os tokens que você pode definir em `overrides`. O editor interativo em `/theme` mostra os mesmos tokens com uma pré-visualização ao vivo, além de alguns destaques de propósito único, como as cores da tela de integração, que são omitidos aqui.189A referência abaixo aborda os tokens que você pode definir em `overrides`. O editor interativo em `/theme` mostra os mesmos tokens com uma pré-visualização ao vivo, além de alguns destaques de propósito único, como as cores da tela de integração, que são omitidos aqui.

190 190 

191> **Referência de tokens de cor**191> [accordion] Referência de tokens de cor

192>192>

193> O exemplo a seguir combina tokens de vários dos grupos abaixo: o destaque da marca, a borda do modo de planejamento, os fundos do diff e o fundo das mensagens.193> O exemplo a seguir combina tokens de vários dos grupos abaixo: o destaque da marca, a borda do modo de planejamento, os fundos do diff e o fundo das mensagens.

194>194>

Details

19| Ferramenta | Descrição | Permissão necessária |19| Ferramenta | Descrição | Permissão necessária |

20| :- | :- | :- |20| :- | :- | :- |

21| `Agent` | Cria um [subagente](https://code.claude.com/docs/pt/sub-agents.md) com sua própria janela de contexto para lidar com uma tarefa. Com [equipes de agentes](https://code.claude.com/docs/pt/agent-teams.md) ativadas, uma chamada que carrega um `name` pode iniciar um [colega de equipe](https://code.claude.com/docs/pt/agent-teams.md#how-claude-starts-agent-teams). Veja [Comportamento da ferramenta Agent](#agent-tool-behavior) | Não |21| `Agent` | Cria um [subagente](https://code.claude.com/docs/pt/sub-agents.md) com sua própria janela de contexto para lidar com uma tarefa. Com [equipes de agentes](https://code.claude.com/docs/pt/agent-teams.md) ativadas, uma chamada que carrega um `name` pode iniciar um [colega de equipe](https://code.claude.com/docs/pt/agent-teams.md#how-claude-starts-agent-teams). Veja [Comportamento da ferramenta Agent](#agent-tool-behavior) | Não |

22| `Artifact` | Publica um arquivo HTML ou Markdown como um [artefato](https://code.claude.com/docs/pt/artifacts.md): uma página privada e interativa no claude.ai. Você pode compartilhá-lo com um link público ou dentro de sua organização nos planos Team e Enterprise, onde o compartilhamento público requer que um Proprietário [o ative](https://code.claude.com/docs/pt/artifacts.md#control-public-sharing). Requer um plano Pro, Max, Team ou Enterprise e autenticação `/login`; veja [Disponibilidade](https://code.claude.com/docs/pt/artifacts.md#availability) | Sim |22| `Artifact` | Publica um arquivo HTML ou Markdown no claude.ai como um [artefato](https://code.claude.com/docs/pt/artifacts.md): uma página privada e interativa. Você pode compartilhá-lo com um link público ou dentro de sua organização nos planos Team e Enterprise, onde o compartilhamento público requer que um Proprietário [o ative](https://code.claude.com/docs/pt/artifacts.md#control-public-sharing). Requer um plano Pro, Max, Ultra, Team ou Enterprise e autenticação `/login`; veja [Disponibilidade](https://code.claude.com/docs/pt/artifacts.md#availability) | Sim |

23| `AskUserQuestion` | Faz perguntas de múltipla escolha para coletar requisitos ou esclarecer ambiguidades. As perguntas permanecem abertas até que você as responda por padrão. Veja [Comportamento da ferramenta AskUserQuestion](#askuserquestion-tool-behavior) | Não |23| `AskUserQuestion` | Faz perguntas de múltipla escolha para coletar requisitos ou esclarecer ambiguidades. As perguntas permanecem abertas até que você as responda por padrão. Veja [Comportamento da ferramenta AskUserQuestion](#askuserquestion-tool-behavior) | Não |

24| `Bash` | Executa comandos de shell em seu ambiente. Veja [Comportamento da ferramenta Bash](#bash-tool-behavior) | Sim |24| `Bash` | Executa comandos de shell em seu ambiente. Veja [Comportamento da ferramenta Bash](#bash-tool-behavior) | Sim |

25| `CronCreate` | Agenda um prompt recorrente ou único dentro da sessão atual. As tarefas têm escopo de sessão e são restauradas em `--resume` ou `--continue` se não expiradas. Veja [tarefas agendadas com escopo de sessão](https://code.claude.com/docs/pt/scheduled-tasks.md) | Não |25| `CronCreate` | Agenda um prompt recorrente ou único dentro da sessão atual. As tarefas têm escopo de sessão e são restauradas em `--resume` ou `--continue` se não expiradas. Veja [tarefas agendadas com escopo de sessão](https://code.claude.com/docs/pt/scheduled-tasks.md) | Não |


42| `PushNotification` | Envia uma notificação de desktop e um push de telefone quando o [Remote Control](https://code.claude.com/docs/pt/remote-control.md) está conectado, para que uma tarefa de longa duração ou [tarefa agendada com escopo de sessão](https://code.claude.com/docs/pt/scheduled-tasks.md) possa alcançá-lo quando você se afastar. A entrega de push é executada através de infraestrutura hospedada pela Anthropic, que não é acessível do Amazon Bedrock, Claude Platform na AWS, Agent Platform do Google Cloud ou Microsoft Foundry | Não |42| `PushNotification` | Envia uma notificação de desktop e um push de telefone quando o [Remote Control](https://code.claude.com/docs/pt/remote-control.md) está conectado, para que uma tarefa de longa duração ou [tarefa agendada com escopo de sessão](https://code.claude.com/docs/pt/scheduled-tasks.md) possa alcançá-lo quando você se afastar. A entrega de push é executada através de infraestrutura hospedada pela Anthropic, que não é acessível do Amazon Bedrock, Claude Platform na AWS, Agent Platform do Google Cloud ou Microsoft Foundry | Não |

43| `Read` | Lê o conteúdo de arquivos. Veja [Comportamento da ferramenta Read](#read-tool-behavior) | Não |43| `Read` | Lê o conteúdo de arquivos. Veja [Comportamento da ferramenta Read](#read-tool-behavior) | Não |

44| `ReadMcpResourceTool` | Lê um recurso MCP específico por URI | Não |44| `ReadMcpResourceTool` | Lê um recurso MCP específico por URI | Não |

45| `RemoteTrigger` | Cria, atualiza, executa e lista [tarefas agendadas na nuvem](https://code.claude.com/docs/pt/routines.md), anteriormente chamadas de rotinas, no claude.ai. Respalda o comando `/schedule`. A [referência de entrada `RemoteTrigger`](https://code.claude.com/docs/pt/agent-sdk/typescript#remotetrigger) documenta cada ação e as políticas organizacionais que removem a ferramenta. Tarefas agendadas na nuvem ficam no claude.ai e requerem um plano Pro, Max, Team ou Enterprise. Portanto, esta ferramenta não é acessível do Amazon Bedrock, Claude Platform na AWS, Agent Platform do Google Cloud ou Microsoft Foundry | Não |45| `RemoteTrigger` | Cria, atualiza, executa e lista [tarefas agendadas na nuvem](https://code.claude.com/docs/pt/routines.md), anteriormente chamadas de rotinas, no claude.ai. Respalda o comando `/schedule`. A [referência de entrada `RemoteTrigger`](https://code.claude.com/docs/pt/agent-sdk/typescript#remotetrigger) documenta cada ação e as políticas organizacionais que removem a ferramenta. Tarefas agendadas na nuvem ficam no claude.ai e requerem um plano Pro, Max, Ultra, Team ou Enterprise. Portanto, esta ferramenta não é acessível do Amazon Bedrock, Claude Platform na AWS, Agent Platform do Google Cloud ou Microsoft Foundry | Não |

46| `ReportFindings` | Relata descobertas de revisão de código como uma lista estruturada, com um arquivo, resumo e cenário de falha por descoberta, para que Claude Code possa renderizá-las em vez de imprimi-las como texto. Claude a chama quando instruções ativas de revisão de código dizem para fazê-lo. Uma descoberta também pode carregar um slug `category` opcional, como `correctness` ou `test-coverage`, mostrado ao lado da localização do arquivo na lista renderizada | Não |46| `ReportFindings` | Relata descobertas de revisão de código como uma lista estruturada, com um arquivo, resumo e cenário de falha por descoberta, para que Claude Code possa renderizá-las em vez de imprimi-las como texto. Claude a chama quando instruções ativas de revisão de código dizem para fazê-lo. Uma descoberta também pode carregar um slug `category` opcional, como `correctness` ou `test-coverage`, mostrado ao lado da localização do arquivo na lista renderizada | Não |

47| `ScheduleWakeup` | Reagenda a próxima iteração de um [`/loop` auto-paced](https://code.claude.com/docs/pt/scheduled-tasks#let-claude-choose-the-interval). Claude chama isso no final de cada iteração para escolher quando a próxima é executada, entre um minuto e uma hora; você não a chama diretamente. Para encerrar o loop em vez disso, Claude a chama com `stop: true`, que cancela o wakeup pendente. O wakeup pendente aparece em `session_crons` em [Entrada do hook Stop](https://code.claude.com/docs/pt/hooks.md#stop-input) | Não |47| `ScheduleWakeup` | Reagenda a próxima iteração de um [`/loop` auto-paced](https://code.claude.com/docs/pt/scheduled-tasks#let-claude-choose-the-interval). Claude chama isso no final de cada iteração para escolher quando a próxima é executada, entre um minuto e uma hora; você não a chama diretamente. Para encerrar o loop em vez disso, Claude a chama com `stop: true`, que cancela o wakeup pendente. O wakeup pendente aparece em `session_crons` em [Entrada do hook Stop](https://code.claude.com/docs/pt/hooks.md#stop-input) | Não |

48| `SendFeedback` | Redige um relatório de feedback sobre Claude Code, cobrindo um problema de produto ou o próprio comportamento de Claude na sessão, e o coloca na fila em sua máquina para você revisar. Claude Code não envia nada até que você escolha enviar o rascunho. Veja [Comportamento da ferramenta SendFeedback](#sendfeedback-tool-behavior). Requer Claude Code v2.1.238 ou posterior | Não |48| `SendFeedback` | Redige um relatório de feedback sobre Claude Code, cobrindo um problema de produto ou o próprio comportamento de Claude na sessão, e o coloca na fila em sua máquina para você revisar. Claude Code não envia nada até que você escolha enviar o rascunho. Veja [Comportamento da ferramenta SendFeedback](#sendfeedback-tool-behavior). Requer Claude Code v2.1.238 ou posterior | Não |

Details

75 75 

76O instalador baixa de `downloads.claude.ai`. Verifique se você consegue alcançá-lo:76O instalador baixa de `downloads.claude.ai`. Verifique se você consegue alcançá-lo:

77 77 

78**macOS/Linux**78> [tab] macOS/Linux

79 79>

80```bash theme={null}80> ```bash theme={null}

81curl -sI https://downloads.claude.ai/claude-code-releases/latest81> curl -sI https://downloads.claude.ai/claude-code-releases/latest

82```82> ```

83 

84**Windows PowerShell**

85 

86```powershell theme={null}

87curl.exe -sI https://downloads.claude.ai/claude-code-releases/latest

88```

89 83 

90O PowerShell cria um alias de `curl` para `Invoke-WebRequest`, que rejeita as flags `-sI`, então chame `curl.exe` explicitamente.84> [tab] Windows PowerShell

85>

86> ```powershell theme={null}

87> curl.exe -sI https://downloads.claude.ai/claude-code-releases/latest

88> ```

89>

90> O PowerShell cria um alias de `curl` para `Invoke-WebRequest`, que rejeita as flags `-sI`, então chame `curl.exe` explicitamente.

91 91 

92Você alcançou o servidor se a primeira linha mostrar um status `200`. Você vê `HTTP/2 200` no macOS e Linux, e `HTTP/1.1 200 OK` do `curl.exe` incluído no Windows. Outros resultados apontam para a causa:92Você alcançou o servidor se a primeira linha mostrar um status `200`. Você vê `HTTP/2 200` no macOS e Linux, e `HTTP/1.1 200 OK` do `curl.exe` incluído no Windows. Outros resultados apontam para a causa:

93 93 


104 104 

105Este exemplo define ambas as variáveis de proxy e executa o instalador através do seu proxy:105Este exemplo define ambas as variáveis de proxy e executa o instalador através do seu proxy:

106 106 

107**macOS/Linux**107> [tab] macOS/Linux

108 108>

109```bash theme={null}109> ```bash theme={null}

110export HTTP_PROXY=http://proxy.example.com:8080110> export HTTP_PROXY=http://proxy.example.com:8080

111export HTTPS_PROXY=http://proxy.example.com:8080111> export HTTPS_PROXY=http://proxy.example.com:8080

112curl -fsSL https://claude.ai/install.sh | bash112> curl -fsSL https://claude.ai/install.sh | bash

113```113> ```

114 

115**Windows PowerShell**

116 114 

117```powershell theme={null}115> [tab] Windows PowerShell

118$env:HTTP_PROXY = 'http://proxy.example.com:8080'116>

119$env:HTTPS_PROXY = 'http://proxy.example.com:8080'117> ```powershell theme={null}

120irm https://claude.ai/install.ps1 | iex118> $env:HTTP_PROXY = 'http://proxy.example.com:8080'

121```119> $env:HTTPS_PROXY = 'http://proxy.example.com:8080'

120> irm https://claude.ai/install.ps1 | iex

121> ```

122 122 

123### Verifique seu PATH123### Verifique seu PATH

124 124 


132 132 

133Primeiro verifique se o programa está lá, depois verifique se a pasta dele está em seu PATH. A correção do PATH é permanente, então você a aplica uma única vez. Escolha a aba da sua plataforma e execute os comandos dela: no seu terminal no macOS e Linux, ou no PowerShell ou Prompt de Comando no Windows.133Primeiro verifique se o programa está lá, depois verifique se a pasta dele está em seu PATH. A correção do PATH é permanente, então você a aplica uma única vez. Escolha a aba da sua plataforma e execute os comandos dela: no seu terminal no macOS e Linux, ou no PowerShell ou Prompt de Comando no Windows.

134 134 

135**macOS/Linux**135> [tab] macOS/Linux

136 136>

137Verifique se o instalador colocou o programa no lugar:137> Verifique se o instalador colocou o programa no lugar:

138 138>

139```bash theme={null}139> ```bash theme={null}

140ls -la ~/.local/bin/claude140> ls -la ~/.local/bin/claude

141```141> ```

142 142>

143* **`No such file or directory`**: não há instalação nativa. Se você não instalou o Claude Code de outra forma, como com npm, Homebrew ou um gerenciador de pacotes do Linux, [instale o Claude Code](https://code.claude.com/docs/pt/setup.md#install-claude-code). Se você o instalou de outra forma, consulte [Verifique se há instalações conflitantes](#check-for-conflicting-installations).143> * **`No such file or directory`**: não há instalação nativa. Se você não instalou o Claude Code de outra forma, como com npm, Homebrew ou um gerenciador de pacotes do Linux, [instale o Claude Code](https://code.claude.com/docs/pt/setup.md#install-claude-code). Se você o instalou de outra forma, consulte [Verifique se há instalações conflitantes](#check-for-conflicting-installations).

144* **Uma listagem do arquivo**: o programa está lá. Verifique seu PATH em seguida.144> * **Uma listagem do arquivo**: o programa está lá. Verifique seu PATH em seguida.

145 145>

146Liste suas entradas de PATH e filtre pela pasta de instalação:146> Liste suas entradas de PATH e filtre pela pasta de instalação:

147 147>

148```bash theme={null}148> ```bash theme={null}

149echo $PATH | tr ':' '\n' | grep -Fx "$HOME/.local/bin"149> echo $PATH | tr ':' '\n' | grep -Fx "$HOME/.local/bin"

150```150> ```

151 151>

152Se isso imprimir `/Users/you/.local/bin` ou `/home/you/.local/bin`, o diretório está em seu PATH e você pode pular para [Verifique se há instalações conflitantes](#check-for-conflicting-installations). Se não houver saída, adicione-o à sua configuração de shell com os dois comandos para o seu shell. O comando `echo` salva a configuração para todo novo terminal, e `source` a aplica à janela em que você está. O comando `echo` não imprime nada quando é bem-sucedido.152> Se isso imprimir `/Users/you/.local/bin` ou `/home/you/.local/bin`, o diretório está em seu PATH e você pode pular para [Verifique se há instalações conflitantes](#check-for-conflicting-installations). Se não houver saída, adicione-o à sua configuração de shell com os dois comandos para o seu shell. O comando `echo` salva a configuração para todo novo terminal, e `source` a aplica à janela em que você está. O comando `echo` não imprime nada quando é bem-sucedido.

153 153>

154Para Zsh, o padrão no macOS:154> Para Zsh, o padrão no macOS:

155 155>

156```bash theme={null}156> ```bash theme={null}

157echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc157> echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc

158source ~/.zshrc158> source ~/.zshrc

159```159> ```

160 160>

161Para Bash no Linux, onde é o padrão na maioria das distribuições:161> Para Bash no Linux, onde é o padrão na maioria das distribuições:

162 162>

163```bash theme={null}163> ```bash theme={null}

164echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc164> echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc

165source ~/.bashrc165> source ~/.bashrc

166```166> ```

167 167>

168Para Bash no macOS, adicione a linha a `~/.bash_profile` em vez disso. Terminal no macOS inicia Bash como um shell de login, que ignora `~/.bashrc` e lê apenas o primeiro de `~/.bash_profile`, `~/.bash_login`, ou `~/.profile` que existe. Se você já tem um `~/.bash_login` ou `~/.profile` e nenhum `~/.bash_profile`, coloque a linha naquele arquivo em vez de criar `~/.bash_profile`:168> Para Bash no macOS, adicione a linha a `~/.bash_profile` em vez disso. Terminal no macOS inicia Bash como um shell de login, que ignora `~/.bashrc` e lê apenas o primeiro de `~/.bash_profile`, `~/.bash_login`, ou `~/.profile` que existe. Se você já tem um `~/.bash_login` ou `~/.profile` e nenhum `~/.bash_profile`, coloque a linha naquele arquivo em vez de criar `~/.bash_profile`:

169 169>

170```bash theme={null}170> ```bash theme={null}

171echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bash_profile171> echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bash_profile

172source ~/.bash_profile172> source ~/.bash_profile

173```173> ```

174 174>

175Alternativamente, feche e reabra seu terminal.175> Alternativamente, feche e reabra seu terminal.

176 176>

177Se o comando `echo` imprimir `permission denied`, consulte [`permission denied` ao adicionar ao seu PATH](#permission-denied-when-adding-to-your-path).177> Se o comando `echo` imprimir `permission denied`, consulte [`permission denied` ao adicionar ao seu PATH](#permission-denied-when-adding-to-your-path).

178 178>

179Para outros shells como fish ou Nushell, adicione `~/.local/bin` ao seu PATH usando a sintaxe de configuração do seu próprio shell, depois reinicie seu terminal.179> Para outros shells como fish ou Nushell, adicione `~/.local/bin` ao seu PATH usando a sintaxe de configuração do seu próprio shell, depois reinicie seu terminal.

180 180>

181Verifique se a correção funcionou:181> Verifique se a correção funcionou:

182 182>

183```bash theme={null}183> ```bash theme={null}

184claude --version184> claude --version

185```185> ```

186 186>

187Se `claude` ainda não for encontrado, verifique estas causas:187> Se `claude` ainda não for encontrado, verifique estas causas:

188 188>

189* **O terminal é anterior à alteração**: uma janela que já estava aberta mantém seu PATH antigo, e um terminal dentro de um editor recebe seu PATH do editor. Abra uma nova janela, ou feche e reabra o editor.189> * **O terminal é anterior à alteração**: uma janela que já estava aberta mantém seu PATH antigo, e um terminal dentro de um editor recebe seu PATH do editor. Abra uma nova janela, ou feche e reabra o editor.

190* **A linha não foi salva**: execute `grep -n '.local/bin' ~/.zshrc`, usando o nome de arquivo do seu shell. Ele imprime a linha com seu número de linha quando a linha está lá. Se não imprimir nada, execute os dois comandos de PATH novamente.190> * **A linha não foi salva**: execute `grep -n '.local/bin' ~/.zshrc`, usando o nome de arquivo do seu shell. Ele imprime a linha com seu número de linha quando a linha está lá. Se não imprimir nada, execute os dois comandos de PATH novamente.

191* **A linha foi para o arquivo de outro shell**: execute `echo $0` para ver seu shell e, em seguida, execute os dois comandos de PATH para esse shell.191> * **A linha foi para o arquivo de outro shell**: execute `echo $0` para ver seu shell e, em seguida, execute os dois comandos de PATH para esse shell.

192 

193**Windows PowerShell**

194 

195Verifique se o instalador colocou o programa no lugar:

196 

197```powershell theme={null}

198Test-Path "$env:USERPROFILE\.local\bin\claude.exe"

199```

200 

201* **`False`**: não há instalação nativa. Se você não instalou o Claude Code de outra forma, como com npm ou WinGet, [instale o Claude Code](https://code.claude.com/docs/pt/setup.md#install-claude-code). Se você o instalou de outra forma, consulte [Verifique se há instalações conflitantes](#check-for-conflicting-installations).

202* **`True`**: o programa está lá. Verifique seu PATH em seguida.

203 

204Liste suas entradas de PATH e filtre pela pasta de instalação:

205 

206```powershell theme={null}

207$env:PATH -split ';' | Select-String '\.local\\bin'

208```

209 

210Se isso imprimir `C:\Users\you\.local\bin`, o diretório está em seu PATH e você pode pular para [Verifique se há instalações conflitantes](#check-for-conflicting-installations). Se não houver saída, adicione o diretório de instalação ao seu User PATH:

211 

212```powershell theme={null}

213$currentPath = [Environment]::GetEnvironmentVariable('PATH', 'User')

214[Environment]::SetEnvironmentVariable('PATH', "$currentPath;$env:USERPROFILE\.local\bin", 'User')

215```

216 

217Reinicie seu terminal para que a alteração tenha efeito.

218 

219Verifique se a correção funcionou:

220 

221```powershell theme={null}

222claude --version

223```

224 

225Se `claude` ainda não for encontrado em um novo terminal, verifique estas causas:

226 

227* **O terminal é executado dentro de um editor**: ele recebe seu PATH do editor, então feche e reabra o editor.

228* **A alteração não foi salva**: execute `[Environment]::GetEnvironmentVariable('PATH', 'User')` e procure por `.local\bin` no PATH que ele imprime. Se estiver ausente, execute os dois comandos novamente.

229 

230**Windows CMD**

231 

232Verifique se o instalador colocou o programa no lugar:

233 

234```batch theme={null}

235dir "%USERPROFILE%\.local\bin\claude.exe"

236```

237 

238* **`File Not Found` ou `The system cannot find the path specified.`**: não há instalação nativa. Se você não instalou o Claude Code de outra forma, como com npm ou WinGet, [instale o Claude Code](https://code.claude.com/docs/pt/setup.md#install-claude-code). Se você o instalou de outra forma, consulte [Verifique se há instalações conflitantes](#check-for-conflicting-installations).

239* **Uma listagem de `claude.exe`**: o programa está lá. Verifique seu PATH em seguida.

240 

241Liste suas entradas de PATH e filtre pela pasta de instalação:

242 

243```batch theme={null}

244echo %PATH% | findstr /i "local\bin"

245```

246 

247Se não houver saída, abra Configurações do Sistema, vá para Variáveis de Ambiente e adicione `%USERPROFILE%\.local\bin` à sua variável User PATH. Reinicie seu terminal.

248 

249Verifique se a correção funcionou:

250 192 

251```batch theme={null}193> [tab] Windows PowerShell

252claude --version194>

253```195> Verifique se o instalador colocou o programa no lugar:

196>

197> ```powershell theme={null}

198> Test-Path "$env:USERPROFILE\.local\bin\claude.exe"

199> ```

200>

201> * **`False`**: não há instalação nativa. Se você não instalou o Claude Code de outra forma, como com npm ou WinGet, [instale o Claude Code](https://code.claude.com/docs/pt/setup.md#install-claude-code). Se você o instalou de outra forma, consulte [Verifique se há instalações conflitantes](#check-for-conflicting-installations).

202> * **`True`**: o programa está lá. Verifique seu PATH em seguida.

203>

204> Liste suas entradas de PATH e filtre pela pasta de instalação:

205>

206> ```powershell theme={null}

207> $env:PATH -split ';' | Select-String '\.local\\bin'

208> ```

209>

210> Se isso imprimir `C:\Users\you\.local\bin`, o diretório está em seu PATH e você pode pular para [Verifique se há instalações conflitantes](#check-for-conflicting-installations). Se não houver saída, adicione o diretório de instalação ao seu User PATH:

211>

212> ```powershell theme={null}

213> $currentPath = [Environment]::GetEnvironmentVariable('PATH', 'User')

214> [Environment]::SetEnvironmentVariable('PATH', "$currentPath;$env:USERPROFILE\.local\bin", 'User')

215> ```

216>

217> Reinicie seu terminal para que a alteração tenha efeito.

218>

219> Verifique se a correção funcionou:

220>

221> ```powershell theme={null}

222> claude --version

223> ```

224>

225> Se `claude` ainda não for encontrado em um novo terminal, verifique estas causas:

226>

227> * **O terminal é executado dentro de um editor**: ele recebe seu PATH do editor, então feche e reabra o editor.

228> * **A alteração não foi salva**: execute `[Environment]::GetEnvironmentVariable('PATH', 'User')` e procure por `.local\bin` no PATH que ele imprime. Se estiver ausente, execute os dois comandos novamente.

254 229 

255Se `claude` ainda não for encontrado em um novo terminal, um terminal dentro de um editor recebe seu PATH do editor, então feche e reabra o editor também.230> [tab] Windows CMD

231>

232> Verifique se o instalador colocou o programa no lugar:

233>

234> ```batch theme={null}

235> dir "%USERPROFILE%\.local\bin\claude.exe"

236> ```

237>

238> * **`File Not Found` ou `The system cannot find the path specified.`**: não há instalação nativa. Se você não instalou o Claude Code de outra forma, como com npm ou WinGet, [instale o Claude Code](https://code.claude.com/docs/pt/setup.md#install-claude-code). Se você o instalou de outra forma, consulte [Verifique se há instalações conflitantes](#check-for-conflicting-installations).

239> * **Uma listagem de `claude.exe`**: o programa está lá. Verifique seu PATH em seguida.

240>

241> Liste suas entradas de PATH e filtre pela pasta de instalação:

242>

243> ```batch theme={null}

244> echo %PATH% | findstr /i "local\bin"

245> ```

246>

247> Se não houver saída, abra Configurações do Sistema, vá para Variáveis de Ambiente e adicione `%USERPROFILE%\.local\bin` à sua variável User PATH. Reinicie seu terminal.

248>

249> Verifique se a correção funcionou:

250>

251> ```batch theme={null}

252> claude --version

253> ```

254>

255> Se `claude` ainda não for encontrado em um novo terminal, um terminal dentro de um editor recebe seu PATH do editor, então feche e reabra o editor também.

256 256 

257### Verifique se há instalações conflitantes257### Verifique se há instalações conflitantes

258 258 

259Múltiplas instalações do Claude Code podem causar incompatibilidades de versão ou comportamento inesperado. Verifique o que está instalado:259Múltiplas instalações do Claude Code podem causar incompatibilidades de versão ou comportamento inesperado. Verifique o que está instalado:

260 260 

261**macOS/Linux**261> [tab] macOS/Linux

262 262>

263Liste todos os binários `claude` encontrados em seu PATH:263> Liste todos os binários `claude` encontrados em seu PATH:

264 264>

265```bash theme={null}265> ```bash theme={null}

266which -a claude266> which -a claude

267```267> ```

268 268>

269Se isso imprimir `claude not found`, uma linha `no claude in` ou nada, nenhum `claude` está em seu PATH. As próximas verificações mostram se algum está instalado.269> Se isso imprimir `claude not found`, uma linha `no claude in` ou nada, nenhum `claude` está em seu PATH. As próximas verificações mostram se algum está instalado.

270 270>

271Verifique os três locais de onde um binário `claude` pode vir. `~/.local/bin/claude` é o instalador nativo, `~/.claude/local/` é uma instalação npm local legada criada por versões antigas do Claude Code, e a lista npm global mostra uma instalação `-g`:271> Verifique os três locais de onde um binário `claude` pode vir. `~/.local/bin/claude` é o instalador nativo, `~/.claude/local/` é uma instalação npm local legada criada por versões antigas do Claude Code, e a lista npm global mostra uma instalação `-g`:

272 272>

273```bash theme={null}273> ```bash theme={null}

274ls -la ~/.local/bin/claude274> ls -la ~/.local/bin/claude

275```275> ```

276 276>

277Uma instalação nativa mostra um symlink em `~/.local/share/claude/versions/`. Um script ou um symlink que você criou por conta própria neste caminho é um inicializador personalizado, que [auto-update deixa no lugar](https://code.claude.com/docs/pt/setup.md#auto-updates).277> Uma instalação nativa mostra um symlink em `~/.local/share/claude/versions/`. Um script ou um symlink que você criou por conta própria neste caminho é um inicializador personalizado, que [auto-update deixa no lugar](https://code.claude.com/docs/pt/setup.md#auto-updates).

278 278>

279Se algum comando `ls` imprimir `No such file or directory`, isso não é um erro. Significa que nada está instalado naquele local, então passe para a próxima verificação.279> Se algum comando `ls` imprimir `No such file or directory`, isso não é um erro. Significa que nada está instalado naquele local, então passe para a próxima verificação.

280 280>

281```bash theme={null}281> ```bash theme={null}

282ls -la ~/.claude/local/282> ls -la ~/.claude/local/

283```283> ```

284 284>

285```bash theme={null}285> ```bash theme={null}

286npm -g ls @anthropic-ai/claude-code 2>/dev/null286> npm -g ls @anthropic-ai/claude-code 2>/dev/null

287```287> ```

288 288>

289Se `ls -la ~/.local/bin/claude` imprimiu `No such file or directory`, não há instalação nativa. Se você não instalou o Claude Code de outra forma, como com npm, Homebrew ou um gerenciador de pacotes do Linux, [instale o Claude Code](https://code.claude.com/docs/pt/setup.md#install-claude-code). Se `~/.local/bin/claude` existe mas `which -a claude` não o listou, a pasta não está em seu PATH: consulte [Verifique seu PATH](#verify-your-path).289> Se `ls -la ~/.local/bin/claude` imprimiu `No such file or directory`, não há instalação nativa. Se você não instalou o Claude Code de outra forma, como com npm, Homebrew ou um gerenciador de pacotes do Linux, [instale o Claude Code](https://code.claude.com/docs/pt/setup.md#install-claude-code). Se `~/.local/bin/claude` existe mas `which -a claude` não o listou, a pasta não está em seu PATH: consulte [Verifique seu PATH](#verify-your-path).

290 

291**Windows PowerShell**

292 

293Liste todos os binários `claude` encontrados em seu PATH:

294 

295```powershell theme={null}

296where.exe claude

297```

298 

299Se isso imprimir `INFO: Could not find files for the given pattern(s).`, nenhum `claude` está em seu PATH.

300 

301Verifique se o instalador nativo colocou um binário:

302 

303```powershell theme={null}

304Test-Path "$env:USERPROFILE\.local\bin\claude.exe"

305```

306 290 

307* **`True`**: a instalação nativa está lá. Se `where.exe` não encontrou nada, a pasta dela não está em seu PATH: consulte [Verifique seu PATH](#verify-your-path).291> [tab] Windows PowerShell

308* **`False`**: não há instalação nativa. Se você não instalou o Claude Code de outra forma, como com npm ou WinGet, [instale o Claude Code](https://code.claude.com/docs/pt/setup.md#install-claude-code).292>

293> Liste todos os binários `claude` encontrados em seu PATH:

294>

295> ```powershell theme={null}

296> where.exe claude

297> ```

298>

299> Se isso imprimir `INFO: Could not find files for the given pattern(s).`, nenhum `claude` está em seu PATH.

300>

301> Verifique se o instalador nativo colocou um binário:

302>

303> ```powershell theme={null}

304> Test-Path "$env:USERPROFILE\.local\bin\claude.exe"

305> ```

306>

307> * **`True`**: a instalação nativa está lá. Se `where.exe` não encontrou nada, a pasta dela não está em seu PATH: consulte [Verifique seu PATH](#verify-your-path).

308> * **`False`**: não há instalação nativa. Se você não instalou o Claude Code de outra forma, como com npm ou WinGet, [instale o Claude Code](https://code.claude.com/docs/pt/setup.md#install-claude-code).

309 309 

310Se você encontrar múltiplas instalações, mantenha apenas uma. A instalação nativa em `~/.local/bin/claude` no macOS/Linux ou `%USERPROFILE%\.local\bin\claude.exe` no Windows é recomendada. Remova as extras:310Se você encontrar múltiplas instalações, mantenha apenas uma. A instalação nativa em `~/.local/bin/claude` no macOS/Linux ou `%USERPROFILE%\.local\bin\claude.exe` no Windows é recomendada. Remova as extras:

311 311 


317 317 

318Remova a instalação npm local legada:318Remova a instalação npm local legada:

319 319 

320**macOS/Linux**320> [tab] macOS/Linux

321 321>

322```bash theme={null}322> ```bash theme={null}

323rm -rf ~/.claude/local323> rm -rf ~/.claude/local

324```324> ```

325 

326**Windows PowerShell**

327 325 

328```powershell theme={null}326> [tab] Windows PowerShell

329Remove-Item -Recurse -Force "$env:USERPROFILE\.claude\local"327>

330```328> ```powershell theme={null}

329> Remove-Item -Recurse -Force "$env:USERPROFILE\.claude\local"

330> ```

331 331 

332Remova uma instalação Homebrew no macOS. Se você instalou o cask `claude-code@latest`, substitua esse nome:332Remova uma instalação Homebrew no macOS. Se você instalou o cask `claude-code@latest`, substitua esse nome:

333 333 


376 376 

377Confirme que o binário existe e é executável:377Confirme que o binário existe e é executável:

378 378 

379**macOS/Linux**379> [tab] macOS/Linux

380 380>

381```bash theme={null}381> ```bash theme={null}

382ls -la "$(command -v claude)"382> ls -la "$(command -v claude)"

383```383> ```

384 

385**Windows PowerShell**

386 384 

387```powershell theme={null}385> [tab] Windows PowerShell

388Get-Command claude | Select-Object Source386>

389```387> ```powershell theme={null}

388> Get-Command claude | Select-Object Source

389> ```

390 390 

391No Linux, verifique se há bibliotecas compartilhadas ausentes. Se `ldd` mostrar bibliotecas ausentes, você pode precisar instalar pacotes do sistema. No Alpine Linux e outras distribuições baseadas em musl, consulte [Alpine Linux setup](https://code.claude.com/docs/pt/setup.md#alpine-linux-and-musl-based-distributions).391No Linux, verifique se há bibliotecas compartilhadas ausentes. Se `ldd` mostrar bibliotecas ausentes, você pode precisar instalar pacotes do sistema. No Alpine Linux e outras distribuições baseadas em musl, consulte [Alpine Linux setup](https://code.claude.com/docs/pt/setup.md#alpine-linux-and-musl-based-distributions).

392 392 


568 568 

5693. **Verifique se há interferência de proxy ou firewall**: proxies corporativos que realizam inspeção TLS podem causar esses erros, incluindo `unable to get local issuer certificate` e `SELF_SIGNED_CERT_IN_CHAIN`. Para a etapa de instalação, faça o download de instalação confiar no CA do seu proxy corporativo:5693. **Verifique se há interferência de proxy ou firewall**: proxies corporativos que realizam inspeção TLS podem causar esses erros, incluindo `unable to get local issuer certificate` e `SELF_SIGNED_CERT_IN_CHAIN`. Para a etapa de instalação, faça o download de instalação confiar no CA do seu proxy corporativo:

570 570 

571 **macOS/Linux**571 > [tab] macOS/Linux

572 >

573 > ```bash theme={null}

574 > curl --cacert /path/to/corporate-ca.pem -fsSL https://claude.ai/install.sh | bash

575 > ```

572 576 

573 ```bash theme={null}577 > [tab] Windows PowerShell

574 curl --cacert /path/to/corporate-ca.pem -fsSL https://claude.ai/install.sh | bash578 >

575 ```579 > O instalador PowerShell baixa através do .NET, que valida TLS contra o armazenamento de certificados do Windows. Peça à sua equipe de TI para adicionar o certificado CA do proxy ao armazenamento do Windows se ainda não estiver lá, depois execute o instalador:

576 580 >

577 **Windows PowerShell**581 > ```powershell theme={null}

578 582 > irm https://claude.ai/install.ps1 | iex

579 O instalador PowerShell baixa através do .NET, que valida TLS contra o armazenamento de certificados do Windows. Peça à sua equipe de TI para adicionar o certificado CA do proxy ao armazenamento do Windows se ainda não estiver lá, depois execute o instalador:583 > ```

580 

581 ```powershell theme={null}

582 irm https://claude.ai/install.ps1 | iex

583 ```

584 584 

585 Para o Claude Code em si uma vez instalado, defina `NODE_EXTRA_CA_CERTS` para que as requisições de API confiem no mesmo pacote:585 Para o Claude Code em si uma vez instalado, defina `NODE_EXTRA_CA_CERTS` para que as requisições de API confiem no mesmo pacote:

586 586 

587 **macOS/Linux**587 > [tab] macOS/Linux

588 588 >

589 ```bash theme={null}589 > ```bash theme={null}

590 export NODE_EXTRA_CA_CERTS=/path/to/corporate-ca.pem590 > export NODE_EXTRA_CA_CERTS=/path/to/corporate-ca.pem

591 ```591 > ```

592 

593 **Windows PowerShell**

594 592 

595 ```powershell theme={null}593 > [tab] Windows PowerShell

596 $env:NODE_EXTRA_CA_CERTS = 'C:\path\to\corporate-ca.pem'594 >

597 ```595 > ```powershell theme={null}

596 > $env:NODE_EXTRA_CA_CERTS = 'C:\path\to\corporate-ca.pem'

597 > ```

598 598 

599 Peça à sua equipe de TI pelo arquivo de certificado se você não tiver. Você também pode tentar em uma conexão direta para confirmar que o proxy é a causa.599 Peça à sua equipe de TI pelo arquivo de certificado se você não tiver. Você também pode tentar em uma conexão direta para confirmar que o proxy é a causa.

600 600 


827 827 

828Em todas as outras configurações, executar novamente o instalador passa por esse erro, porque o script executa o comando `install` da versão mais recente mesmo quando você pede para instalar uma versão mais antiga. Execute novamente o comando para sua plataforma:828Em todas as outras configurações, executar novamente o instalador passa por esse erro, porque o script executa o comando `install` da versão mais recente mesmo quando você pede para instalar uma versão mais antiga. Execute novamente o comando para sua plataforma:

829 829 

830**macOS/Linux**830> [tab] macOS/Linux

831 831>

832```bash theme={null}832> ```bash theme={null}

833curl -fsSL https://claude.ai/install.sh | bash833> curl -fsSL https://claude.ai/install.sh | bash

834```834> ```

835 

836**Windows PowerShell**

837 835 

838```powershell theme={null}836> [tab] Windows PowerShell

839irm https://claude.ai/install.ps1 | iex837>

840```838> ```powershell theme={null}

839> irm https://claude.ai/install.ps1 | iex

840> ```

841 841 

842`claude --version` imprime a versão que a execução novamente instalou.842`claude --version` imprime a versão que a execução novamente instalou.

843 843 


1108 1108 

1109A linha `npm error path` nomeia o diretório que npm não conseguiu mover. Delete esse diretório e qualquer diretório `.claude-code-*` restante ao lado dele, que execuções anteriores interrompidas podem deixar para trás. Os comandos abaixo encontram seu diretório de pacote global com `npm root -g`; se o diretório que a linha `npm error path` nomeia não estiver sob o diretório que `npm root -g` imprime, por exemplo porque você alternou versões do Node com nvm, delete os diretórios que o erro nomeia em vez disso:1109A linha `npm error path` nomeia o diretório que npm não conseguiu mover. Delete esse diretório e qualquer diretório `.claude-code-*` restante ao lado dele, que execuções anteriores interrompidas podem deixar para trás. Os comandos abaixo encontram seu diretório de pacote global com `npm root -g`; se o diretório que a linha `npm error path` nomeia não estiver sob o diretório que `npm root -g` imprime, por exemplo porque você alternou versões do Node com nvm, delete os diretórios que o erro nomeia em vez disso:

1110 1110 

1111**macOS/Linux**1111> [tab] macOS/Linux

1112 1112>

1113```bash theme={null}1113> ```bash theme={null}

1114rm -rf "$(npm root -g)/@anthropic-ai/claude-code"1114> rm -rf "$(npm root -g)/@anthropic-ai/claude-code"

1115```1115> ```

1116 1116>

1117Depois remova qualquer diretório temporário restante. Se Zsh imprimir `no matches found`, não havia nenhum para remover:1117> Depois remova qualquer diretório temporário restante. Se Zsh imprimir `no matches found`, não havia nenhum para remover:

1118 1118>

1119```bash theme={null}1119> ```bash theme={null}

1120rm -rf "$(npm root -g)/@anthropic-ai/.claude-code-"*1120> rm -rf "$(npm root -g)/@anthropic-ai/.claude-code-"*

1121```1121> ```

1122 

1123**Windows PowerShell**

1124 1122 

1125```powershell theme={null}1123> [tab] Windows PowerShell

1126Remove-Item -Recurse -Force "$(npm root -g)/@anthropic-ai/claude-code", "$(npm root -g)/@anthropic-ai/.claude-code-*"1124>

1127```1125> ```powershell theme={null}

1126> Remove-Item -Recurse -Force "$(npm root -g)/@anthropic-ai/claude-code", "$(npm root -g)/@anthropic-ai/.claude-code-*"

1127> ```

1128 1128 

1129Depois reinstale. No npm 12, siga [Corrigir uma instalação com npm 12](#fix-an-npm-12-install). Caso contrário, execute:1129Depois reinstale. No npm 12, siga [Corrigir uma instalação com npm 12](#fix-an-npm-12-install). Caso contrário, execute:

1130 1130 


1162 1162 

1163Se você vir `API Error: 403 Request not allowed` após fazer login:1163Se você vir `API Error: 403 Request not allowed` após fazer login:

1164 1164 

1165* **Usuários Claude Pro/Max**: verifique se sua assinatura está ativa em [claude.ai/settings](https://claude.ai/settings)1165* **Usuários Claude Pro/Max/Ultra**: verifique se sua assinatura está ativa em [claude.ai/settings](https://claude.ai/settings)

1166* **Usuários do Anthropic Console**: confirme que sua conta tem a função "Claude Code" ou "Developer". Os administradores atribuem isso na página Members do Console em [platform.claude.com/settings/members](https://platform.claude.com/settings/members).1166* **Usuários do Anthropic Console**: confirme que sua conta tem a função "Claude Code" ou "Developer". Os administradores atribuem isso na página Members do Console em [platform.claude.com/settings/members](https://platform.claude.com/settings/members).

1167* **Atrás de um proxy**: proxies corporativos podem interferir com requisições de API. Consulte [network configuration](https://code.claude.com/docs/pt/network-config.md) para configuração de proxy.1167* **Atrás de um proxy**: proxies corporativos podem interferir com requisições de API. Consulte [network configuration](https://code.claude.com/docs/pt/network-config.md) para configuração de proxy.

1168 1168 


1183 1183 

1184Para usar sua assinatura em vez disso, desdefina a variável de ambiente e remova-a do seu perfil de shell:1184Para usar sua assinatura em vez disso, desdefina a variável de ambiente e remova-a do seu perfil de shell:

1185 1185 

1186**macOS/Linux**1186> [tab] macOS/Linux

1187 1187>

1188```bash theme={null}1188> ```bash theme={null}

1189unset ANTHROPIC_API_KEY1189> unset ANTHROPIC_API_KEY

1190claude1190> claude

1191```1191> ```

1192 

1193**Windows PowerShell**

1194 1192 

1195```powershell theme={null}1193> [tab] Windows PowerShell

1196Remove-Item Env:ANTHROPIC_API_KEY1194>

1197claude1195> ```powershell theme={null}

1198```1196> Remove-Item Env:ANTHROPIC_API_KEY

1197> claude

1198> ```

1199 1199 

1200Verifique `~/.zshrc`, `~/.bashrc` ou `~/.profile` para linhas `export ANTHROPIC_API_KEY=...` e remova-as para tornar a alteração permanente. No Windows, verifique seu perfil PowerShell em `$PROFILE` e suas variáveis de ambiente do usuário para `ANTHROPIC_API_KEY`. Execute `/status` dentro do Claude Code para confirmar qual método de autenticação está ativo.1200Verifique `~/.zshrc`, `~/.bashrc` ou `~/.profile` para linhas `export ANTHROPIC_API_KEY=...` e remova-as para tornar a alteração permanente. No Windows, verifique seu perfil PowerShell em `$PROFILE` e suas variáveis de ambiente do usuário para `ANTHROPIC_API_KEY`. Execute `/status` dentro do Claude Code para confirmar qual método de autenticação está ativo.

1201 1201 

troubleshooting.md +27 −27

Details

134 134 

135Se a ferramenta Search, menções `@file`, agentes personalizados ou skills personalizados não estão encontrando arquivos, o binário `ripgrep` incluído pode não ser executado em seu sistema. Instale o pacote `ripgrep` da sua plataforma e diga ao Claude Code para usá-lo em vez disso:135Se a ferramenta Search, menções `@file`, agentes personalizados ou skills personalizados não estão encontrando arquivos, o binário `ripgrep` incluído pode não ser executado em seu sistema. Instale o pacote `ripgrep` da sua plataforma e diga ao Claude Code para usá-lo em vez disso:

136 136 

137**macOS**137> [tab] macOS

138 138>

139```bash theme={null}139> ```bash theme={null}

140brew install ripgrep140> brew install ripgrep

141```141> ```

142 

143**Ubuntu/Debian**

144 

145```bash theme={null}

146sudo apt install ripgrep

147```

148 

149**Alpine**

150 

151```bash theme={null}

152apk add ripgrep

153```

154 

155`ripgrep` está no repositório community do Alpine. Se `apk` relatar que o pacote está faltando, veja [Alpine Linux setup](https://code.claude.com/docs/pt/setup.md#alpine-linux-and-musl-based-distributions).

156 142 

157**Arch**143> [tab] Ubuntu/Debian

144>

145> ```bash theme={null}

146> sudo apt install ripgrep

147> ```

158 148 

159```bash theme={null}149> [tab] Alpine

160pacman -S ripgrep150>

161```151> ```bash theme={null}

152> apk add ripgrep

153> ```

154>

155> `ripgrep` está no repositório community do Alpine. Se `apk` relatar que o pacote está faltando, veja [Alpine Linux setup](https://code.claude.com/docs/pt/setup.md#alpine-linux-and-musl-based-distributions).

162 156 

163**Windows**157> [tab] Arch

158>

159> ```bash theme={null}

160> pacman -S ripgrep

161> ```

164 162 

165```powershell theme={null}163> [tab] Windows

166winget install BurntSushi.ripgrep.MSVC164>

167```165> ```powershell theme={null}

166> winget install BurntSushi.ripgrep.MSVC

167> ```

168 168 

169Depois defina `USE_BUILTIN_RIPGREP` como `0`, seja em seu [environment](https://code.claude.com/docs/pt/env-vars.md) de shell ou no bloco `env` do seu [`settings.json`](https://code.claude.com/docs/pt/settings-reference#all-settings):169Depois defina `USE_BUILTIN_RIPGREP` como `0`, seja em seu [environment](https://code.claude.com/docs/pt/env-vars.md) de shell ou no bloco `env` do seu [`settings.json`](https://code.claude.com/docs/pt/settings-reference#all-settings):

170 170 

ultrareview.md +2 −1

Details

120| - | - | - |120| - | - | - |

121| Pro | 3 execuções gratuitas | cobrado como [créditos de uso](https://support.claude.com/pt/articles/12429409-extra-usage-for-paid-claude-plans) |121| Pro | 3 execuções gratuitas | cobrado como [créditos de uso](https://support.claude.com/pt/articles/12429409-extra-usage-for-paid-claude-plans) |

122| Max | 3 execuções gratuitas | cobrado como [créditos de uso](https://support.claude.com/pt/articles/12429409-extra-usage-for-paid-claude-plans) |122| Max | 3 execuções gratuitas | cobrado como [créditos de uso](https://support.claude.com/pt/articles/12429409-extra-usage-for-paid-claude-plans) |

123| Ultra | 3 execuções gratuitas | cobrado como [créditos de uso](https://support.claude.com/pt/articles/12429409-extra-usage-for-paid-claude-plans) |

123 124 

124* **Execuções gratuitas**: as três execuções Pro e Max são uma alocação única por conta e não são renovadas.125* **Execuções gratuitas**: as três execuções Pro, Max e Ultra são uma alocação única por conta e não são renovadas.

125* **Custo por revisão**: após usar as execuções gratuitas, normalmente \$5 a \$25 em créditos de uso dependendo do tamanho da mudança, correspondendo à estimativa que o diálogo de lançamento mostra antes de cada execução.126* **Custo por revisão**: após usar as execuções gratuitas, normalmente \$5 a \$25 em créditos de uso dependendo do tamanho da mudança, correspondendo à estimativa que o diálogo de lançamento mostra antes de cada execução.

126* **Quando uma execução é contada**: assim que a sessão na nuvem é iniciada. Uma revisão que você interrompe no início ou que falha em ser concluída ainda usa uma execução gratuita; uma revisão paga é cobrada apenas pela parte que foi executada.127* **Quando uma execução é contada**: assim que a sessão na nuvem é iniciada. Uma revisão que você interrompe no início ou que falha em ser concluída ainda usa uma execução gratuita; uma revisão paga é cobrada apenas pela parte que foi executada.

127 128 

Details

105 105 

106O ditado por voz usa a mesma [configuração `language`](https://code.claude.com/docs/pt/settings-reference#language) que controla o idioma de resposta do Claude. Se essa configuração estiver vazia, o ditado usa o padrão em inglês. Na extensão VS Code, se `language` estiver vazio, o ditado usa a configuração `accessibility.voice.speechLanguage` do VS Code antes de usar o padrão em inglês.106O ditado por voz usa a mesma [configuração `language`](https://code.claude.com/docs/pt/settings-reference#language) que controla o idioma de resposta do Claude. Se essa configuração estiver vazia, o ditado usa o padrão em inglês. Na extensão VS Code, se `language` estiver vazio, o ditado usa a configuração `accessibility.voice.speechLanguage` do VS Code antes de usar o padrão em inglês.

107 107 

108> **Idiomas de ditado suportados**108> [accordion] Idiomas de ditado suportados

109>109>

110> | Idioma | Código |110> | Idioma | Código |

111> | :- | :- |111> | :- | :- |

vs-code.md +34 −30

Details

23Antes de instalar, certifique-se de que você tem:23Antes de instalar, certifique-se de que você tem:

24 24 

25* VS Code 1.94.0 ou superior25* VS Code 1.94.0 ou superior

26* Uma conta Anthropic: qualquer assinatura paga do Claude (Pro, Max, Team ou Enterprise) ou uma conta Claude Console funciona, e nenhuma chave de API é necessária. Você fará [login](https://code.claude.com/docs/pt/authentication.md#log-in-to-claude-code) com essa conta quando abrir a extensão pela primeira vez. Se você acessar Claude através de um provedor de terceiros como Amazon Bedrock ou Google Cloud's Agent Platform, consulte [Use third-party providers](#use-third-party-providers) para instruções de configuração.26* Uma conta Anthropic: qualquer assinatura paga do Claude (Pro, Max, Ultra, Team ou Enterprise) ou uma conta Claude Console funciona, e nenhuma chave de API é necessária. Você fará [login](https://code.claude.com/docs/pt/authentication.md#log-in-to-claude-code) com essa conta quando abrir a extensão pela primeira vez. Se você acessar Claude através de um provedor de terceiros como Amazon Bedrock ou Google Cloud's Agent Platform, consulte [Use third-party providers](#use-third-party-providers) para instruções de configuração.

27 27 

28> [!TIP]28> [!TIP]

29>29>


38 38 

39Ou, no VS Code, pressione `Cmd+Shift+X` (Mac) ou `Ctrl+Shift+X` (Windows/Linux) para abrir a visualização de Extensões, pesquise por "Claude Code" e clique em **Install**.39Ou, no VS Code, pressione `Cmd+Shift+X` (Mac) ou `Ctrl+Shift+X` (Windows/Linux) para abrir a visualização de Extensões, pesquise por "Claude Code" e clique em **Install**.

40 40 

41> [!NOTE]

42>

43> Os marketplaces de extensões são softwares de terceiros, que a Anthropic não endossa, mantém nem audita. A Anthropic envia extensões para publicação no Visual Studio Marketplace e no Open VSX Registry.

44 

41O número de versão da extensão é a versão do Claude Code que ela inclui. Por exemplo, um recurso que requer o Claude Code v2.1.286 ou posterior precisa da versão 2.1.286 ou posterior da extensão, que é exibida na visualização de Extensões.45O número de versão da extensão é a versão do Claude Code que ela inclui. Por exemplo, um recurso que requer o Claude Code v2.1.286 ou posterior precisa da versão 2.1.286 ou posterior da extensão, que é exibida na visualização de Extensões.

42 46 

43O Claude Code também é executado em outros editores e contêineres:47O Claude Code também é executado em outros editores e contêineres:

44 48 

45* **Outros forks do VS Code**: a extensão também pode ser instalada em forks como Devin Desktop ou Kiro. Pesquise por "Claude Code" na visualização de Extensões do editor ou instale a partir do [registro Open VSX](https://open-vsx.org/extension/Anthropic/claude-code).49* **Outros forks do VS Code**: a extensão também pode ser instalada em forks como Devin Desktop ou Kiro. Pesquise por "Claude Code" na visualização de Extensões do editor ou instale a partir do [Open VSX Registry](https://open-vsx.org/extension/Anthropic/claude-code).

46* **Editores que não conseguem instalar a extensão**: [instale a CLI](https://code.claude.com/docs/pt/quickstart.md) e execute `claude` no terminal integrado do editor. A CLI funciona em qualquer terminal.50* **Editores que não conseguem instalar a extensão**: [instale a CLI](https://code.claude.com/docs/pt/quickstart.md) e execute `claude` no terminal integrado do editor. A CLI funciona em qualquer terminal.

47* **Dev containers**: para executar o Claude Code dentro de um dev container, consulte [Contêineres de desenvolvimento](https://code.claude.com/docs/pt/devcontainer.md).51* **Dev containers**: para executar o Claude Code dentro de um dev container, consulte [Contêineres de desenvolvimento](https://code.claude.com/docs/pt/devcontainer.md).

48 52 


117 121 

118A caixa de prompt oferece vários recursos:122A caixa de prompt oferece vários recursos:

119 123 

120* **Modos de permissão**: clique no indicador de modo na parte inferior da caixa de prompt para alternar entre modos de permissão. Com o Claude Code v2.1.283 ou posterior, Auto é o modo de permissão inicial padrão e, em versões anteriores, somente nos planos Pro, Max e Team. Consulte [como a extensão escolhe o modo de permissão inicial](https://code.claude.com/docs/pt/permission-modes.md#switch-permission-modes) para saber o que altera isso e todos os modos de permissão que o indicador oferece.124* **Modos de permissão**: clique no indicador de modo na parte inferior da caixa de prompt para alternar entre modos de permissão. Com o Claude Code v2.1.283 ou posterior, Auto é o modo de permissão inicial padrão e, em versões anteriores, somente nos planos Pro, Max, Ultra e Team. Consulte [como a extensão escolhe o modo de permissão inicial](https://code.claude.com/docs/pt/permission-modes.md#switch-permission-modes) para saber o que altera isso e todos os modos de permissão que o indicador oferece.

121 * **Auto**: um classificador analisa a maioria das ações em vez de perguntar a você. Consulte [modo auto](https://code.claude.com/docs/pt/permission-modes.md#eliminate-prompts-with-auto-mode) para saber o que ele analisa e bloqueia.125 * **Auto**: um classificador analisa a maioria das ações em vez de perguntar a você. Consulte [modo auto](https://code.claude.com/docs/pt/permission-modes.md#eliminate-prompts-with-auto-mode) para saber o que ele analisa e bloqueia.

122 * **Manual**: o Claude pede permissão antes de edições de arquivos e da maioria dos comandos de shell.126 * **Manual**: o Claude pede permissão antes de edições de arquivos e da maioria dos comandos de shell.

123 * **Plan**: o Claude descreve o que fará e aguarda aprovação antes de fazer alterações. O VS Code abre automaticamente o plano como um documento Markdown completo, no qual você pode adicionar comentários inline para dar feedback antes que o Claude comece.127 * **Plan**: o Claude descreve o que fará e aguarda aprovação antes de fazer alterações. O VS Code abre automaticamente o plano como um documento Markdown completo, no qual você pode adicionar comentários inline para dar feedback antes que o Claude comece.


656 660 

657Invoque o manipulador com o abridor de URLs do seu sistema operacional.661Invoque o manipulador com o abridor de URLs do seu sistema operacional.

658 662 

659**macOS**663> [tab] macOS

660 664>

661```bash theme={null}665> ```bash theme={null}

662open "vscode://anthropic.claude-code/open"666> open "vscode://anthropic.claude-code/open"

663```667> ```

664 

665**Linux**

666 

667```bash theme={null}

668xdg-open "vscode://anthropic.claude-code/open"

669```

670 

671O comando `xdg-open` vem do pacote `xdg-utils`. Se o shell informar que ele não foi encontrado, consulte [xdg-open is not found on Linux](https://code.claude.com/docs/pt/deep-links.md#xdg-open-is-not-found-on-linux).

672 

673**Windows**

674 

675No PowerShell:

676 

677```powershell theme={null}

678Start-Process "vscode://anthropic.claude-code/open"

679```

680 668 

681No `cmd.exe`, `start` trata seu primeiro argumento entre aspas como um título de janela, então passe um título vazio antes da URL:669> [tab] Linux

670>

671> ```bash theme={null}

672> xdg-open "vscode://anthropic.claude-code/open"

673> ```

674>

675> O comando `xdg-open` vem do pacote `xdg-utils`. Se o shell informar que ele não foi encontrado, consulte [xdg-open is not found on Linux](https://code.claude.com/docs/pt/deep-links.md#xdg-open-is-not-found-on-linux).

682 676 

683```cmd theme={null}677> [tab] Windows

684start "" "vscode://anthropic.claude-code/open"678>

685```679> No PowerShell:

680>

681> ```powershell theme={null}

682> Start-Process "vscode://anthropic.claude-code/open"

683> ```

684>

685> No `cmd.exe`, `start` trata seu primeiro argumento entre aspas como um título de janela, então passe um título vazio antes da URL:

686>

687> ```cmd theme={null}

688> start "" "vscode://anthropic.claude-code/open"

689> ```

686 690 

687O manipulador aceita dois parâmetros de consulta opcionais:691O manipulador aceita dois parâmetros de consulta opcionais:

688 692 


704Você configura a extensão em dois lugares, nas configurações de extensão do VS Code e no arquivo de configurações do Claude Code:708Você configura a extensão em dois lugares, nas configurações de extensão do VS Code e no arquivo de configurações do Claude Code:

705 709 

706* **Configurações da extensão** no VS Code: controlam o comportamento da extensão dentro do VS Code. Abra com `Cmd+,` (Mac) ou `Ctrl+,` (Windows/Linux) e, em seguida, vá para **Extensions > Claude Code**. Você também pode digitar `/` e selecionar **General config…** para abrir as configurações.710* **Configurações da extensão** no VS Code: controlam o comportamento da extensão dentro do VS Code. Abra com `Cmd+,` (Mac) ou `Ctrl+,` (Windows/Linux) e, em seguida, vá para **Extensions > Claude Code**. Você também pode digitar `/` e selecionar **General config…** para abrir as configurações.

707* **Configurações do Claude Code** em `~/.claude/settings.json`: compartilhadas entre a extensão e a CLI. Use-as para comandos permitidos, variáveis de ambiente, hooks e servidores MCP. Com o Claude Code v2.1.283 ou posterior, elas também são uma das entradas que determinam o modo de permissão em que as conversas começam; em versões anteriores, isso vale apenas nos planos Pro, Max e Team. [Alternar modos de permissão](https://code.claude.com/docs/pt/permission-modes.md#switch-permission-modes) lista a ordem. Consulte [Configurações](https://code.claude.com/docs/pt/settings.md) para obter detalhes.711* **Configurações do Claude Code** em `~/.claude/settings.json`: compartilhadas entre a extensão e a CLI. Use-as para comandos permitidos, variáveis de ambiente, hooks e servidores MCP. Com o Claude Code v2.1.283 ou posterior, você também pode usá-las como uma das entradas que determinam o modo de permissão em que as conversas começam. Em versões anteriores, você só pode fazer isso nos planos Pro, Max, Ultra e Team. [Alternar modos de permissão](https://code.claude.com/docs/pt/permission-modes.md#switch-permission-modes) lista a ordem. Consulte [Configurações](https://code.claude.com/docs/pt/settings.md) para obter detalhes.

708 712 

709> [!TIP]713> [!TIP]

710>714>


933 937 

934* Certifique-se de ter uma versão compatível do VS Code (1.94.0 ou posterior)938* Certifique-se de ter uma versão compatível do VS Code (1.94.0 ou posterior)

935* Verifique se o VS Code tem permissão para instalar extensões939* Verifique se o VS Code tem permissão para instalar extensões

936* Tente instalar diretamente pelo [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=anthropic.claude-code)940* Tente instalar diretamente pelo [Visual Studio Marketplace](https://marketplace.visualstudio.com/items?itemName=anthropic.claude-code)

937 941 

938### Ícone Spark não visível942### Ícone Spark não visível

939 943 

Details

8 8 

9> [!NOTE]9> [!NOTE]

10>10>

11> As sessões na nuvem estão disponíveis nos planos Pro, Max e Team, e para usuários Enterprise com assentos premium ou assentos Chat + Claude Code.11> As sessões na nuvem estão disponíveis nos planos Pro, Max, Ultra e Team, e para usuários Enterprise com assentos premium ou assentos Chat + Claude Code.

12 12 

13Uma sessão na nuvem executa Claude Code em infraestrutura de nuvem em vez de sua máquina, gerenciada pela Anthropic por padrão. Este guia de início rápido inicia uma a partir de [claude.ai/code](https://claude.ai/code) no seu navegador. Você também pode iniciar uma a partir do aplicativo móvel Claude, do aplicativo Desktop ou do seu terminal com `claude --cloud`.13Uma sessão na nuvem executa Claude Code em infraestrutura de nuvem em vez de sua máquina, gerenciada pela Anthropic por padrão. Este guia de início rápido inicia uma a partir de [claude.ai/code](https://claude.ai/code) no seu navegador. Você também pode iniciar uma a partir do aplicativo móvel Claude, do aplicativo Desktop ou do seu terminal com `claude --cloud`.

14 14 


77 77 

78Um [ambiente em nuvem](https://code.claude.com/docs/pt/cloud-environments.md) é a configuração salva que controla qual acesso à rede Claude tem durante as sessões e o que é executado quando uma sessão é iniciada. O que acontece após você conectar o GitHub depende do seu plano:78Um [ambiente em nuvem](https://code.claude.com/docs/pt/cloud-environments.md) é a configuração salva que controla qual acesso à rede Claude tem durante as sessões e o que é executado quando uma sessão é iniciada. O que acontece após você conectar o GitHub depende do seu plano:

79 79 

80* **Pro e Max**: a integração cria um ambiente chamado **Default** para você.80* **Pro, Max e Ultra**: você recebe automaticamente um ambiente chamado **Default**.

81* **Team e Enterprise**: a integração mostra um formulário **Create your first cloud environment**. Deixe o nome pré-preenchido e o acesso à rede inalterados e clique em **Create & finish** para criar o ambiente **Default**. Se um Owner ativou [Quick setup](https://code.claude.com/docs/pt/claude-code-on-the-web.md#quick-setup-for-team-and-enterprise), a integração cria **Default** para você em vez disso.81* **Team e Enterprise**: a integração mostra um formulário **Create your first cloud environment**. Deixe o nome pré-preenchido e o acesso à rede inalterados e clique em **Create & finish** para criar o ambiente **Default**. Se um Owner ativou [Quick setup](https://code.claude.com/docs/pt/claude-code-on-the-web.md#quick-setup-for-team-and-enterprise), a integração cria **Default** para você em vez disso.

82 82 

83**Default** usa [acesso à rede `Trusted`](https://code.claude.com/docs/pt/cloud-environments#access-levels): as sessões alcançam [registros de pacotes comuns](https://code.claude.com/docs/pt/cloud-environments.md#default-allowed-domains) e outros domínios na lista de permissões, e nada mais através da rede da sessão. Veja [Ferramentas instaladas](https://code.claude.com/docs/pt/cloud-environments.md#installed-tools) para o que está disponível sem nenhuma configuração.83**Default** usa [acesso à rede `Trusted`](https://code.claude.com/docs/pt/cloud-environments#access-levels): as sessões alcançam [registros de pacotes comuns](https://code.claude.com/docs/pt/cloud-environments.md#default-allowed-domains) e outros domínios na lista de permissões, e nada mais através da rede da sessão. Veja [Ferramentas instaladas](https://code.claude.com/docs/pt/cloud-environments.md#installed-tools) para o que está disponível sem nenhuma configuração.