O checkpointing salva automaticamente o estado de execucao durante uma execucao. Se uma crew, flow ou agente falhar no meio da execucao, voce pode restaurar a partir do ultimo checkpoint e retomar sem reexecutar o trabalho ja concluido.
# Restaurar e retomarcrew = Crew.from_checkpoint("./my_checkpoints/20260407T120000_abc123.json")result = crew.kickoff() # retoma a partir da ultima tarefa concluida
A crew restaurada pula tarefas ja concluidas e retoma a partir da primeira incompleta.
Usar ["*"] ou eventos de alta frequencia como llm_call_completed gravara muitos arquivos de checkpoint e pode impactar o desempenho. Use max_checkpoints para limitar o uso de disco.
O argumento state e o RuntimeState passado automaticamente pelo barramento de eventos quando seu handler aceita 3 parametros. Voce pode registrar handlers em qualquer tipo de evento listado na documentacao de Event Listeners.O checkpointing e best-effort: se uma gravacao de checkpoint falhar, o erro e registrado no log, mas a execucao continua sem interrupcao.
Esta página foi útil?
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"CrewAI","colors":{"primary":"#EB6658","light":"#F3A78B","dark":"#C94C3C"},"logo":{"light":"https://mintcdn.com/crewai/5SZbe87tsCWZY09V/images/crew_only_logo.png?fit=max\u0026auto=format\u0026n=5SZbe87tsCWZY09V\u0026q=85\u0026s=439ca5dc63a1768cad7196005ff5636f","dark":"https://mintcdn.com/crewai/5SZbe87tsCWZY09V/images/crew_only_logo.png?fit=max\u0026auto=format\u0026n=5SZbe87tsCWZY09V\u0026q=85\u0026s=439ca5dc63a1768cad7196005ff5636f"},"favicon":"https://mintcdn.com/crewai/sz5CkjPWxVjBAZE7/images/favicon.svg?fit=max\u0026auto=format\u0026n=sz5CkjPWxVjBAZE7\u0026q=85\u0026s=16c03dad58d05417a2e442ff942d2ce7","api":{"playground":{}},"appearance":{"default":"system","strict":false},"background":{"decoration":"grid"},"navbar":{"links":[{"icon":"arrow-up-right-from-square","href":"https://app.crewai.com","label":"Start Cloud Trial"}],"primary":{"type":"github","href":"https://github.com/crewAIInc/crewAI"}},"footer":{"socials":{"website":"https://crewai.com","x":"https://x.com/crewAIInc","github":"https://github.com/crewAIInc/crewAI","linkedin":"https://www.linkedin.com/company/crewai-inc","youtube":"https://youtube.com/@crewAIInc","reddit":"https://www.reddit.com/r/crewAIInc"}},"seo":{"metatags":{"og:type":"website","og:site_name":"CrewAI Documentation","og:image":"https://docs.crewai.com/images/crew_only_logo.png","twitter:card":"summary_large_image","twitter:site":"@crewAIInc","keywords":"AI agents, multi-agent systems, CrewAI, artificial intelligence, automation, Python framework, agent collaboration, AI workflows"}},"fonts":{"family":"Inter"},"errors":{"404":{"redirect":true}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode",{"title":"Request a feature","description":"Join the discussion on GitHub to request a new feature","icon":"plus","href":"https://github.com/crewAIInc/crewAI/issues/new/choose"}],"display":"header"},"styling":{"latex":false},"navigation":{"languages":[{"language":"en","href":""},{"language":"pt-BR","href":"edge/pt-BR"},{"language":"ko","href":"edge/ko"},{"language":"ar","href":"edge/ar"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"crewai","hasAudioNarration":false,"actualSubdomain":"crewai","customDomains":["docs.crewai.com"],"gitSource":{"type":"github","owner":"crewaiinc","repo":"crewai","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aecc3b27d833b473e1cae05","collectionId":"802ea765-608d-46fe-93e8-2e231eb5e85a","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aecc3b27d833b473e1cae05"},"feedback":{"thumbs":true,"edits":true,"issues":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aed6c2e48a600c03b62aa16","clientVersion":"0.0.4074","searchFilterCounts":[{"language":"en","tag":"Documentation","count":9378},{"language":"ko","tag":"기술 문서","count":8580},{"language":"ar","tag":"التقنية التوثيق","count":7984},{"language":"pt-BR","tag":"Documentação","count":7957},{"language":"en","tag":"Tools","count":4285},{"language":"ko","tag":"도구 (Tools)","count":3950},{"language":"ar","tag":"الأدوات","count":3716},{"language":"pt-BR","tag":"Ferramentas","count":3377},{"language":"en","tag":"Learn","count":1495},{"language":"ko","tag":"학습","count":1329},{"language":"pt-BR","tag":"Aprenda","count":1329},{"language":"ar","tag":"التعلّم","count":1233},{"language":"en","tag":"Core Concepts","count":1129},{"language":"ko","tag":"핵심 개념","count":1094},{"language":"pt-BR","tag":"Conceitos-Chave","count":1094},{"language":"ar","tag":"المفاهيم الأساسية","count":1022},{"language":"en","tag":"Observability","count":954},{"language":"en","tag":"Guides","count":938},{"language":"en","tag":"Search \u0026 Research","count":930},{"language":"ko","tag":"Observability","count":901},{"language":"pt-BR","tag":"Observabilidade","count":901},{"language":"ko","tag":"검색 및 연구","count":889},{"language":"ar","tag":"Observability","count":833},{"language":"ar","tag":"البحث والاستكشاف","count":825},{"language":"en","tag":"Web Scraping \u0026 Browsing","count":783},{"language":"en","tag":"File \u0026 Document","count":742},{"language":"ko","tag":"파일 \u0026 문서","count":742},{"language":"ko","tag":"웹 스크래핑 \u0026 브라우징","count":742},{"language":"pt-BR","tag":"Web Scraping \u0026 Navegação","count":689},{"language":"ar","tag":"الملفات والمستندات","count":686},{"language":"ar","tag":"استخراج بيانات الويب","count":686},{"language":"ko","tag":"가이드","count":637},{"language":"pt-BR","tag":"Guias","count":637},{"language":"pt-BR","tag":"Arquivo \u0026 Documento","count":636},{"language":"ar","tag":"الأدلّة","count":604},{"language":"pt-BR","tag":"Pesquisa","count":530},{"language":"ko","tag":"시작 안내","count":510},{"language":"pt-BR","tag":"Começando","count":510},{"language":"en","tag":"AI \u0026 Machine Learning","count":506},{"language":"ar","tag":"البدء","count":478}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"v1.14.0/pt-BR/concepts/checkpointing","slug":"/v1.14.0/pt-BR/concepts/checkpointing","pageMetadata":{"title":"Checkpointing","description":"Salve automaticamente o estado de execucao para que crews, flows e agentes possam retomar apos falhas.","icon":"floppy-disk","mode":"wide","href":"/v1.14.0/pt-BR/concepts/checkpointing"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Salve automaticamente o estado de execucao para que crews, flows e agentes possam retomar apos falhas.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{CodeBlock,Heading,Table,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(Warning,{children:_jsx(_components.p,{children:`O checkpointing esta em versao inicial. As APIs podem mudar em versoes futuras.`})}),`\n`,_jsx(Heading,{level:`2`,id:`visao-geral`,children:`Visao Geral`}),`\n`,_jsx(_components.p,{children:`O checkpointing salva automaticamente o estado de execucao durante uma execucao. Se uma crew, flow ou agente falhar no meio da execucao, voce pode restaurar a partir do ultimo checkpoint e retomar sem reexecutar o trabalho ja concluido.`}),`\n`,_jsx(Heading,{level:`2`,id:`inicio-rapido`,children:`Inicio Rapido`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`8`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`8`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` crewai `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Crew, CheckpointConfig`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`crew `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Crew(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` agents`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`...`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` tasks`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`...`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` checkpoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`True`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# usa padroes: ./.checkpoints, em task_completed`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`result `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` crew.kickoff()`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Os arquivos de checkpoint sao gravados em `,_jsx(_components.code,{children:`./.checkpoints/`}),` apos cada tarefa concluida.`]}),`\n`,_jsx(Heading,{level:`2`,id:`configuracao`,children:`Configuracao`}),`\n`,_jsxs(_components.p,{children:[`Use `,_jsx(_components.code,{children:`CheckpointConfig`}),` para controle total:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`11`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`11`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` crewai `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Crew, CheckpointConfig`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`crew `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Crew(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` agents`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`...`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` tasks`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`...`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` checkpoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`CheckpointConfig(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` location`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"./my_checkpoints\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` on_events`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"task_completed\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"crew_kickoff_completed\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` max_checkpoints`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`5`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ),`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`3`,id:`campos-do-checkpointconfig`,children:`Campos do CheckpointConfig`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Campo`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Tipo`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Padrao`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Descricao`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`location`})}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`str`})}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`\"./.checkpoints\"`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Caminho para os arquivos de checkpoint`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`on_events`})}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`list[str]`})}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`[\"task_completed\"]`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Tipos de evento que acionam um checkpoint`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`provider`})}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`BaseProvider`})}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`JsonProvider()`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Backend de armazenamento`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`max_checkpoints`})}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`int | None`})}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`None`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Maximo de arquivos a manter; os mais antigos sao removidos primeiro`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`heranca-e-desativacao`,children:`Heranca e Desativacao`}),`\n`,_jsxs(_components.p,{children:[`O campo `,_jsx(_components.code,{children:`checkpoint`}),` em Crew, Flow e Agent aceita `,_jsx(_components.code,{children:`CheckpointConfig`}),`, `,_jsx(_components.code,{children:`True`}),`, `,_jsx(_components.code,{children:`False`}),` ou `,_jsx(_components.code,{children:`None`}),`:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Valor`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Comportamento`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsxs(_components.td,{style:{textAlign:`left`},children:[_jsx(_components.code,{children:`None`}),` (padrao)`]}),_jsx(_components.td,{style:{textAlign:`left`},children:`Herda do pai. Um agente herda a configuracao da crew.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`True`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Ativa com padroes.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`False`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Desativacao explicita. Interrompe a heranca do pai.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`CheckpointConfig(...)`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Configuracao personalizada.`})]})]})]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`8`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`8`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`crew `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Crew(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` agents`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Agent(`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`role`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Researcher\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`...`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`), `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# herda checkpoint da crew`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Agent(`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`role`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Writer\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`...`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`checkpoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`False`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`), `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# desativado, sem checkpoints`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` tasks`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`...`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` checkpoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`True`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`retomando-a-partir-de-um-checkpoint`,children:`Retomando a partir de um Checkpoint`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`3`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Restaurar e retomar`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`crew `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Crew.from_checkpoint(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"./my_checkpoints/20260407T120000_abc123.json\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`result `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` crew.kickoff() `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# retoma a partir da ultima tarefa concluida`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`A crew restaurada pula tarefas ja concluidas e retoma a partir da primeira incompleta.`}),`\n`,_jsx(Heading,{level:`2`,id:`funciona-em-crew-flow-e-agent`,children:`Funciona em Crew, Flow e Agent`}),`\n`,_jsx(Heading,{level:`3`,id:`crew`,children:`Crew`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`5`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`5`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`crew `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Crew(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` agents`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[researcher, writer],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` tasks`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[research_task, write_task, review_task],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` checkpoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`CheckpointConfig(`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`location`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"./crew_cp\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`),`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Gatilho padrao: `,_jsx(_components.code,{children:`task_completed`}),` (um checkpoint por tarefa finalizada).`]}),`\n`,_jsx(Heading,{level:`3`,id:`flow`,children:`Flow`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`23`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`23`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` crewai.flow.flow `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Flow, start, listen`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` crewai `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` CheckpointConfig`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`class`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:` MyFlow`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4EC9B0`},children:`Flow`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`):`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` @start`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`()`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` def`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` step_one`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`self`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`):`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` return`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"data\"`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` @listen`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(step_one)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` def`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` step_two`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`self`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`data`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`):`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` return`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` process(data)`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`flow `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` MyFlow(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` checkpoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`CheckpointConfig(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` location`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"./flow_cp\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` on_events`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"method_execution_finished\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ),`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`result `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` flow.kickoff()`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Retomar`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`flow `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` MyFlow.from_checkpoint(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"./flow_cp/20260407T120000_abc123.json\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`result `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` flow.kickoff()`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`3`,id:`agent`,children:`Agent`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`10`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`10`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`agent `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Agent(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` role`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Researcher\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` goal`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Research topics\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` backstory`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Expert researcher\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` checkpoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`CheckpointConfig(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` location`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"./agent_cp\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` on_events`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"lite_agent_execution_completed\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ),`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`result `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` agent.kickoff(`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`messages`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[{`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"role\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"user\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"content\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Research AI trends\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}])`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`provedores-de-armazenamento`,children:`Provedores de Armazenamento`}),`\n`,_jsx(_components.p,{children:`O CrewAI inclui dois provedores de armazenamento para checkpoints.`}),`\n`,_jsx(Heading,{level:`3`,id:`jsonprovider-padrao`,children:`JsonProvider (padrao)`}),`\n`,_jsx(_components.p,{children:`Grava cada checkpoint como um arquivo JSON separado.`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`12`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`12`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` crewai `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Crew, CheckpointConfig`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` crewai.state `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` JsonProvider`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`crew `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Crew(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` agents`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`...`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` tasks`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`...`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` checkpoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`CheckpointConfig(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` location`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"./my_checkpoints\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` provider`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`JsonProvider(),`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` max_checkpoints`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`5`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ),`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`3`,id:`sqliteprovider`,children:`SqliteProvider`}),`\n`,_jsx(_components.p,{children:`Armazena todos os checkpoints em um unico arquivo SQLite.`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`11`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`11`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` crewai `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Crew, CheckpointConfig`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` crewai.state `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` SqliteProvider`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`crew `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Crew(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` agents`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`...`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` tasks`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`...`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` checkpoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`CheckpointConfig(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` location`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"./.checkpoints.db\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` provider`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`SqliteProvider(),`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ),`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`tipos-de-evento`,children:`Tipos de Evento`}),`\n`,_jsxs(_components.p,{children:[`O campo `,_jsx(_components.code,{children:`on_events`}),` aceita qualquer combinacao de strings de tipo de evento. Escolhas comuns:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Caso de Uso`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Eventos`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Apos cada tarefa (Crew)`}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`[\"task_completed\"]`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Apos cada metodo do flow`}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`[\"method_execution_finished\"]`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Apos execucao do agente`}),_jsxs(_components.td,{style:{textAlign:`left`},children:[_jsx(_components.code,{children:`[\"agent_execution_completed\"]`}),`, `,_jsx(_components.code,{children:`[\"lite_agent_execution_completed\"]`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Apenas na conclusao da crew`}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`[\"crew_kickoff_completed\"]`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Apos cada chamada LLM`}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`[\"llm_call_completed\"]`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Em tudo`}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.code,{children:`[\"*\"]`})})]})]})]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Usar `,_jsx(_components.code,{children:`[\"*\"]`}),` ou eventos de alta frequencia como `,_jsx(_components.code,{children:`llm_call_completed`}),` gravara muitos arquivos de checkpoint e pode impactar o desempenho. Use `,_jsx(_components.code,{children:`max_checkpoints`}),` para limitar o uso de disco.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`checkpointing-manual`,children:`Checkpointing Manual`}),`\n`,_jsxs(_components.p,{children:[`Para controle total, registre seu proprio handler de evento e chame `,_jsx(_components.code,{children:`state.checkpoint()`}),` diretamente:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`14`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`14`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` crewai.events.event_bus `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` crewai_event_bus`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` crewai.events.types.llm_events `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` LLMCallCompletedEvent`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Handler sincrono`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`@crewai_event_bus.on`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(LLMCallCompletedEvent)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`def`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` on_llm_done`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`source`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`event`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`state`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`):`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` path `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` state.checkpoint(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"./my_checkpoints\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:` print`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`f`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Checkpoint salvo: `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`path`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Handler assincrono`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`@crewai_event_bus.on`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(LLMCallCompletedEvent)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`async`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` def`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` on_llm_done_async`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`source`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`event`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`state`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`):`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` path `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` state.acheckpoint(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"./my_checkpoints\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:` print`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`f`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Checkpoint salvo: `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`path`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`O argumento `,_jsx(_components.code,{children:`state`}),` e o `,_jsx(_components.code,{children:`RuntimeState`}),` passado automaticamente pelo barramento de eventos quando seu handler aceita 3 parametros. Voce pode registrar handlers em qualquer tipo de evento listado na documentacao de `,_jsx(_components.a,{href:`/pt-BR/concepts/event-listener`,children:`Event Listeners`}),`.`]}),`\n`,_jsx(_components.p,{children:`O checkpointing e best-effort: se uma gravacao de checkpoint falhar, o erro e registrado no log, mas a execucao continua sem interrupcao.`})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Checkpointing","description":"Salve automaticamente o estado de execucao para que crews, flows e agentes possam retomar apos falhas.","icon":"floppy-disk","mode":"wide","href":"/v1.14.0/pt-BR/concepts/checkpointing"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Visao Geral","slug":"visao-geral","depth":2,"children":[]},{"title":"Inicio Rapido","slug":"inicio-rapido","depth":2,"children":[]},{"title":"Configuracao","slug":"configuracao","depth":2,"children":[{"title":"Campos do CheckpointConfig","slug":"campos-do-checkpointconfig","depth":3,"children":[]},{"title":"Heranca e Desativacao","slug":"heranca-e-desativacao","depth":3,"children":[]}]},{"title":"Retomando a partir de um Checkpoint","slug":"retomando-a-partir-de-um-checkpoint","depth":2,"children":[]},{"title":"Funciona em Crew, Flow e Agent","slug":"funciona-em-crew-flow-e-agent","depth":2,"children":[{"title":"Crew","slug":"crew","depth":3,"children":[]},{"title":"Flow","slug":"flow","depth":3,"children":[]},{"title":"Agent","slug":"agent","depth":3,"children":[]}]},{"title":"Provedores de Armazenamento","slug":"provedores-de-armazenamento","depth":2,"children":[{"title":"JsonProvider (padrao)","slug":"jsonprovider-padrao","depth":3,"children":[]},{"title":"SqliteProvider","slug":"sqliteprovider","depth":3,"children":[]}]},{"title":"Tipos de Evento","slug":"tipos-de-evento","depth":2,"children":[]},{"title":"Checkpointing Manual","slug":"checkpointing-manual","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/crewai/cc0a0a5c2c93f4d8/common-room-tracking.js","/_mintlify/custom/crewai/36c44d75a9111b06/reo-tracking.js"],"subdomain":"crewai","siteName":"CrewAI","title":"Checkpointing - CrewAI","navMaps":{"firstHrefInVersion":{"Edge":{"href":"/edge/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.36":{"href":"/v1.15.36/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.35":{"href":"/v1.15.35/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.34":{"href":"/v1.15.34/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.33":{"href":"/v1.15.33/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.32":{"href":"/v1.15.32/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.31":{"href":"/v1.15.31/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.30":{"href":"/v1.15.30/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.29":{"href":"/v1.15.29/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.28":{"href":"/v1.15.28/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.27":{"href":"/v1.15.27/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.26":{"href":"/v1.15.26/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.25":{"href":"/v1.15.25/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.24":{"href":"/v1.15.24/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.23":{"href":"/v1.15.23/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.22":{"href":"/v1.15.22/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.21":{"href":"/v1.15.21/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.20":{"href":"/v1.15.20/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.19":{"href":"/v1.15.19/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.18":{"href":"/v1.15.18/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.17":{"href":"/v1.15.17/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.16":{"href":"/v1.15.16/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.15":{"href":"/v1.15.15/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.14":{"href":"/v1.15.14/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.13":{"href":"/v1.15.13/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.12":{"href":"/v1.15.12/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.11":{"href":"/v1.15.11/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.10":{"href":"/v1.15.10/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.9":{"href":"/v1.15.9/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.8":{"href":"/v1.15.8/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.7":{"href":"/v1.15.7/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.6":{"href":"/v1.15.6/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.5":{"href":"/v1.15.5/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.4":{"href":"/v1.15.4/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.3":{"href":"/v1.15.3/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.2":{"href":"/v1.15.2/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.1":{"href":"/v1.15.1/pt-BR/concepts/checkpointing","matchLevel":1},"v1.15.0":{"href":"/v1.15.0/pt-BR/concepts/checkpointing","matchLevel":1},"v1.14.7":{"href":"/v1.14.7/pt-BR/concepts/checkpointing","matchLevel":1},"v1.14.6":{"href":"/v1.14.6/pt-BR/concepts/checkpointing","matchLevel":1},"v1.14.5":{"href":"/v1.14.5/pt-BR/concepts/checkpointing","matchLevel":1},"v1.14.4":{"href":"/v1.14.4/pt-BR/concepts/checkpointing","matchLevel":1},"v1.14.3":{"href":"/v1.14.3/pt-BR/concepts/checkpointing","matchLevel":1},"v1.14.2":{"href":"/v1.14.2/pt-BR/concepts/checkpointing","matchLevel":1},"v1.14.1":{"href":"/v1.14.1/pt-BR/concepts/checkpointing","matchLevel":1},"v1.14.0":{"href":"/v1.14.0/pt-BR/concepts/checkpointing","matchLevel":0},"v1.13.0":{"href":"/v1.13.0/pt-BR/concepts/agents","matchLevel":2},"v1.12.2":{"href":"/v1.12.2/pt-BR/concepts/agents","matchLevel":2},"v1.12.1":{"href":"/v1.12.1/pt-BR/concepts/agents","matchLevel":2},"v1.12.0":{"href":"/v1.12.0/pt-BR/concepts/agents","matchLevel":2},"v1.11.1":{"href":"/v1.11.1/pt-BR/concepts/agents","matchLevel":2},"v1.11.0":{"href":"/v1.11.0/pt-BR/concepts/agents","matchLevel":2},"v1.10.1":{"href":"/v1.10.1/pt-BR/concepts/agents","matchLevel":2},"v1.10.0":{"href":"/v1.10.0/pt-BR/concepts/agents","matchLevel":2}},"firstHrefInLanguage":{"en":{"href":"/v1.14.0/en/concepts/checkpointing","matchLevel":1},"pt-BR":{"href":"/v1.14.0/pt-BR/concepts/checkpointing","matchLevel":0},"ko":{"href":"/v1.14.0/ko/concepts/checkpointing","matchLevel":1},"ar":{"href":"/v1.14.0/ar/concepts/checkpointing","matchLevel":1}}},"lastModified":"2026-06-17T16:03:16.345Z","originalFileLocation":"v1.14.0/pt-BR/concepts/checkpointing.mdx","locale":"pt-BR"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Salve automaticamente o estado de execucao para que crews, flows e agentes possam retomar apos falhas.\">\u003cmeta data-mint-head name=\"keywords\" content=\"AI agents, multi-agent systems, CrewAI, artificial intelligence, automation, Python framework, agent collaboration, AI workflows\">\u003cmeta data-mint-head name=\"application-name\" content=\"CrewAI\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/crewai/4u_yrBmnBvL-de5g/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/crewai/4u_yrBmnBvL-de5g/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/crewai/4u_yrBmnBvL-de5g/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/crewai/4u_yrBmnBvL-de5g/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/crewai/4u_yrBmnBvL-de5g/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/crewai/4u_yrBmnBvL-de5g/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/crewai/4u_yrBmnBvL-de5g/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/crewai/4u_yrBmnBvL-de5g/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/crewai/4u_yrBmnBvL-de5g/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Checkpointing - CrewAI\">\u003cmeta data-mint-head property=\"og:description\" content=\"Salve automaticamente o estado de execucao para que crews, flows e agentes possam retomar apos falhas.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"CrewAI Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.crewai.com/v1.14.0/pt-BR/concepts/checkpointing\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://docs.crewai.com/images/crew_only_logo.png\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Checkpointing - CrewAI\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Salve automaticamente o estado de execucao para que crews, flows e agentes possam retomar apos falhas.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://docs.crewai.com/images/crew_only_logo.png\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/crewai/4u_yrBmnBvL-de5g/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"CrewAI\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#EB6658\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.crewai.com/v1.14.0/pt-BR/concepts/checkpointing\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/v1.14.0/pt-BR/concepts/checkpointing.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt-BR\" href=\"https://docs.crewai.com/v1.14.0/pt-BR/concepts/checkpointing\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.crewai.com/v1.14.0/en/concepts/checkpointing\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ko\" href=\"https://docs.crewai.com/v1.14.0/ko/concepts/checkpointing\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ar\" href=\"https://docs.crewai.com/v1.14.0/ar/concepts/checkpointing\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.crewai.com/v1.14.0/en/concepts/checkpointing\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.crewai.com/#organization\",\"name\":\"CrewAI\",\"url\":\"https://docs.crewai.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/crewai/5SZbe87tsCWZY09V/images/crew_only_logo.png?fit=max\u0026auto=format\u0026n=5SZbe87tsCWZY09V\u0026q=85\u0026s=439ca5dc63a1768cad7196005ff5636f\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.crewai.com#website\",\"name\":\"CrewAI\",\"url\":\"https://docs.crewai.com\",\"publisher\":{\"@id\":\"https://docs.crewai.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.crewai.com/v1.14.0/pt-BR/concepts/checkpointing#webpage\",\"url\":\"https://docs.crewai.com/v1.14.0/pt-BR/concepts/checkpointing\",\"name\":\"Checkpointing\",\"description\":\"Salve automaticamente o estado de execucao para que crews, flows e agentes possam retomar apos falhas.\",\"dateModified\":\"2026-06-17T16:03:16.345Z\",\"isPartOf\":{\"@id\":\"https://docs.crewai.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.crewai.com/v1.14.0/pt-BR/concepts/checkpointing#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.crewai.com/v1.14.0/pt-BR/concepts/checkpointing#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Conceitos-Chave\",\"item\":\"https://docs.crewai.com/v1.14.0/pt-BR/concepts/agents\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Checkpointing\",\"item\":\"https://docs.crewai.com/v1.14.0/pt-BR/concepts/checkpointing\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.crewai.com/v1.14.0/pt-BR/concepts/checkpointing#article\",\"headline\":\"Checkpointing\",\"name\":\"Checkpointing\",\"description\":\"Salve automaticamente o estado de execucao para que crews, flows e agentes possam retomar apos falhas.\",\"url\":\"https://docs.crewai.com/v1.14.0/pt-BR/concepts/checkpointing\",\"mainEntityOfPage\":{\"@id\":\"https://docs.crewai.com/v1.14.0/pt-BR/concepts/checkpointing#webpage\"},\"image\":\"https://docs.crewai.com/images/crew_only_logo.png\",\"dateModified\":\"2026-06-17T16:03:16.345Z\",\"publisher\":{\"@id\":\"https://docs.crewai.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.crewai.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"CrewAI\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"CrewAI","nav":{"global":null,"languages":[{"language":"en","pages":[{"title":"en","href":"/v1.14.0/en/concepts/checkpointing"}]},{"language":"pt-BR","versions":[{"version":"Edge","tag":"Edge","pages":[{"title":"Edge","href":"/edge/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.36","default":true,"tag":"Latest","pages":[{"title":"v1.15.36","href":"/v1.15.36/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.35","pages":[{"title":"v1.15.35","href":"/v1.15.35/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.34","pages":[{"title":"v1.15.34","href":"/v1.15.34/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.33","pages":[{"title":"v1.15.33","href":"/v1.15.33/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.32","pages":[{"title":"v1.15.32","href":"/v1.15.32/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.31","pages":[{"title":"v1.15.31","href":"/v1.15.31/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.30","pages":[{"title":"v1.15.30","href":"/v1.15.30/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.29","pages":[{"title":"v1.15.29","href":"/v1.15.29/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.28","pages":[{"title":"v1.15.28","href":"/v1.15.28/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.27","pages":[{"title":"v1.15.27","href":"/v1.15.27/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.26","pages":[{"title":"v1.15.26","href":"/v1.15.26/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.25","pages":[{"title":"v1.15.25","href":"/v1.15.25/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.24","pages":[{"title":"v1.15.24","href":"/v1.15.24/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.23","pages":[{"title":"v1.15.23","href":"/v1.15.23/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.22","pages":[{"title":"v1.15.22","href":"/v1.15.22/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.21","pages":[{"title":"v1.15.21","href":"/v1.15.21/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.20","pages":[{"title":"v1.15.20","href":"/v1.15.20/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.19","pages":[{"title":"v1.15.19","href":"/v1.15.19/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.18","pages":[{"title":"v1.15.18","href":"/v1.15.18/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.17","pages":[{"title":"v1.15.17","href":"/v1.15.17/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.16","pages":[{"title":"v1.15.16","href":"/v1.15.16/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.15","pages":[{"title":"v1.15.15","href":"/v1.15.15/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.14","pages":[{"title":"v1.15.14","href":"/v1.15.14/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.13","pages":[{"title":"v1.15.13","href":"/v1.15.13/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.12","pages":[{"title":"v1.15.12","href":"/v1.15.12/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.11","pages":[{"title":"v1.15.11","href":"/v1.15.11/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.10","pages":[{"title":"v1.15.10","href":"/v1.15.10/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.9","pages":[{"title":"v1.15.9","href":"/v1.15.9/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.8","pages":[{"title":"v1.15.8","href":"/v1.15.8/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.7","pages":[{"title":"v1.15.7","href":"/v1.15.7/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.6","pages":[{"title":"v1.15.6","href":"/v1.15.6/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.5","pages":[{"title":"v1.15.5","href":"/v1.15.5/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.4","pages":[{"title":"v1.15.4","href":"/v1.15.4/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.3","pages":[{"title":"v1.15.3","href":"/v1.15.3/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.2","pages":[{"title":"v1.15.2","href":"/v1.15.2/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.1","pages":[{"title":"v1.15.1","href":"/v1.15.1/pt-BR/concepts/checkpointing"}]},{"version":"v1.15.0","pages":[{"title":"v1.15.0","href":"/v1.15.0/pt-BR/concepts/checkpointing"}]},{"version":"v1.14.7","pages":[{"title":"v1.14.7","href":"/v1.14.7/pt-BR/concepts/checkpointing"}]},{"version":"v1.14.6","pages":[{"title":"v1.14.6","href":"/v1.14.6/pt-BR/concepts/checkpointing"}]},{"version":"v1.14.5","pages":[{"title":"v1.14.5","href":"/v1.14.5/pt-BR/concepts/checkpointing"}]},{"version":"v1.14.4","pages":[{"title":"v1.14.4","href":"/v1.14.4/pt-BR/concepts/checkpointing"}]},{"version":"v1.14.3","pages":[{"title":"v1.14.3","href":"/v1.14.3/pt-BR/concepts/checkpointing"}]},{"version":"v1.14.2","pages":[{"title":"v1.14.2","href":"/v1.14.2/pt-BR/concepts/checkpointing"}]},{"version":"v1.14.1","pages":[{"title":"v1.14.1","href":"/v1.14.1/pt-BR/concepts/checkpointing"}]},{"version":"v1.14.0","tabs":[{"tab":"Início","icon":"house","pages":[{"title":"Início","href":"/v1.14.0/pt-BR"}]},{"tab":"Documentação","icon":"book-open","groups":[{"group":"Começando","pages":[{"title":"Introdução","icon":"handshake","mode":"wide","href":"/v1.14.0/pt-BR/introduction"},{"title":"Instalação","icon":"wrench","mode":"wide","href":"/v1.14.0/pt-BR/installation"},{"title":"Guia Rápido","icon":"rocket","mode":"wide","href":"/v1.14.0/pt-BR/quickstart"}]},{"group":"Guias","pages":[{"group":"Estratégia","icon":"compass","pages":[{"title":"Avaliando Casos de Uso para CrewAI","icon":"scale-balanced","mode":"wide","href":"/v1.14.0/pt-BR/guides/concepts/evaluating-use-cases"}]},{"group":"Agentes","icon":"user","pages":[{"title":"Criando Agentes Eficazes","icon":"robot","mode":"wide","href":"/v1.14.0/pt-BR/guides/agents/crafting-effective-agents"}]},{"group":"Crews","icon":"users","pages":[{"title":"Monte sua Primeira Crew","icon":"users-gear","mode":"wide","href":"/v1.14.0/pt-BR/guides/crews/first-crew"}]},{"group":"Flows","icon":"code-branch","pages":[{"title":"Construa Seu Primeiro Flow","icon":"diagram-project","mode":"wide","href":"/v1.14.0/pt-BR/guides/flows/first-flow"},{"title":"Dominando o Gerenciamento de Estado em Flows","icon":"diagram-project","mode":"wide","href":"/v1.14.0/pt-BR/guides/flows/mastering-flow-state"}]},{"group":"Ferramentas","icon":"wrench","pages":[{"title":"Publicar Ferramentas Personalizadas","icon":"box-open","mode":"wide","href":"/v1.14.0/pt-BR/guides/tools/publish-custom-tools"}]},{"group":"Ferramentas de Codificação","icon":"terminal","pages":[{"title":"Ferramentas de Codificação","icon":"terminal","mode":"wide","href":"/v1.14.0/pt-BR/guides/coding-tools/agents-md"}]},{"group":"Avançado","icon":"gear","pages":[{"title":"Personalizando Prompts","icon":"message-pen","mode":"wide","href":"/v1.14.0/pt-BR/guides/advanced/customizing-prompts"},{"title":"Impressão digital","icon":"fingerprint","mode":"wide","href":"/v1.14.0/pt-BR/guides/advanced/fingerprinting"}]},{"group":"Migração","icon":"shuffle","pages":[{"title":"Migrando do LangGraph para o CrewAI: um guia prático para engenheiros","icon":"switch","mode":"wide","href":"/v1.14.0/pt-BR/guides/migration/migrating-from-langgraph"}]}]},{"group":"Conceitos-Chave","pages":[{"title":"Agentes","icon":"robot","mode":"wide","href":"/v1.14.0/pt-BR/concepts/agents"},{"title":"Capacidades do Agente","icon":"puzzle-piece","mode":"wide","href":"/v1.14.0/pt-BR/concepts/agent-capabilities"},{"title":"Tarefas","icon":"list-check","mode":"wide","href":"/v1.14.0/pt-BR/concepts/tasks"},{"title":"Crews","icon":"people-group","mode":"wide","href":"/v1.14.0/pt-BR/concepts/crews"},{"title":"Flows","icon":"arrow-progress","mode":"wide","href":"/v1.14.0/pt-BR/concepts/flows"},{"title":"Arquitetura de Produção","icon":"server","mode":"wide","href":"/v1.14.0/pt-BR/concepts/production-architecture"},{"title":"Knowledge","icon":"book","mode":"wide","href":"/v1.14.0/pt-BR/concepts/knowledge"},{"title":"Skills","icon":"bolt","mode":"wide","href":"/v1.14.0/pt-BR/concepts/skills"},{"title":"LLMs","icon":"microchip-ai","mode":"wide","href":"/v1.14.0/pt-BR/concepts/llms"},{"title":"Arquivos","icon":"file-image","href":"/v1.14.0/pt-BR/concepts/files"},{"title":"Processos","icon":"bars-staggered","mode":"wide","href":"/v1.14.0/pt-BR/concepts/processes"},{"title":"Colaboração","icon":"screen-users","mode":"wide","href":"/v1.14.0/pt-BR/concepts/collaboration"},{"title":"Treinamento","icon":"dumbbell","mode":"wide","href":"/v1.14.0/pt-BR/concepts/training"},{"title":"Memória","icon":"database","mode":"wide","href":"/v1.14.0/pt-BR/concepts/memory"},{"title":"Reasoning","icon":"brain","mode":"wide","href":"/v1.14.0/pt-BR/concepts/reasoning"},{"title":"Planejamento","icon":"ruler-combined","mode":"wide","href":"/v1.14.0/pt-BR/concepts/planning"},{"title":"Testes","icon":"vial","mode":"wide","href":"/v1.14.0/pt-BR/concepts/testing"},{"title":"CLI","icon":"terminal","mode":"wide","href":"/v1.14.0/pt-BR/concepts/cli"},{"title":"Ferramentas","icon":"screwdriver-wrench","mode":"wide","href":"/v1.14.0/pt-BR/concepts/tools"},{"title":"Listeners de Evento","description":"Acesse eventos do CrewAI para criar integrações e monitoramento personalizados","icon":"spinner","mode":"wide","href":"/v1.14.0/pt-BR/concepts/event-listener"},{"title":"Checkpointing","icon":"floppy-disk","mode":"wide","href":"/v1.14.0/pt-BR/concepts/checkpointing"}]},{"group":"Integração MCP","pages":[{"title":"Servidores MCP como Ferramentas no CrewAI","description":"Aprenda como integrar servidores MCP como ferramentas nos seus agentes CrewAI usando a biblioteca `crewai-tools`.","icon":"plug","mode":"wide","href":"/v1.14.0/pt-BR/mcp/overview"},{"title":"Integração DSL MCP","icon":"code","mode":"wide","href":"/v1.14.0/pt-BR/mcp/dsl-integration"},{"title":"Transporte Stdio","icon":"server","mode":"wide","href":"/v1.14.0/pt-BR/mcp/stdio"},{"title":"Transporte SSE","icon":"wifi","mode":"wide","href":"/v1.14.0/pt-BR/mcp/sse"},{"title":"Transporte HTTP Streamable","icon":"globe","mode":"wide","href":"/v1.14.0/pt-BR/mcp/streamable-http"},{"title":"Conectando a Múltiplos Servidores MCP","icon":"layer-group","mode":"wide","href":"/v1.14.0/pt-BR/mcp/multiple-servers"},{"title":"Considerações de Segurança MCP","icon":"lock","mode":"wide","href":"/v1.14.0/pt-BR/mcp/security"}]},{"group":"Ferramentas","pages":[{"title":"Visão Geral das Ferramentas","icon":"toolbox","mode":"wide","href":"/v1.14.0/pt-BR/tools/overview"},{"group":"Arquivo \u0026 Documento","icon":"folder-open","pages":[{"title":"Visão Geral","icon":"face-smile","mode":"wide","href":"/v1.14.0/pt-BR/tools/file-document/overview"},{"title":"Leitura de Arquivo","icon":"folders","mode":"wide","href":"/v1.14.0/pt-BR/tools/file-document/filereadtool"},{"title":"Escrita de Arquivo","icon":"file-pen","mode":"wide","href":"/v1.14.0/pt-BR/tools/file-document/filewritetool"},{"title":"Busca RAG em PDF","icon":"file-pdf","mode":"wide","href":"/v1.14.0/pt-BR/tools/file-document/pdfsearchtool"},{"title":"Pesquisa RAG em DOCX","icon":"file-word","mode":"wide","href":"/v1.14.0/pt-BR/tools/file-document/docxsearchtool"},{"title":"Pesquisa MDX RAG","icon":"markdown","mode":"wide","href":"/v1.14.0/pt-BR/tools/file-document/mdxsearchtool"},{"title":"Busca RAG em XML","icon":"file-xml","mode":"wide","href":"/v1.14.0/pt-BR/tools/file-document/xmlsearchtool"},{"title":"Pesquisa TXT RAG","icon":"file-lines","mode":"wide","href":"/v1.14.0/pt-BR/tools/file-document/txtsearchtool"},{"title":"Busca JSON RAG","icon":"file-code","mode":"wide","href":"/v1.14.0/pt-BR/tools/file-document/jsonsearchtool"},{"title":"Busca RAG em CSV","icon":"file-csv","mode":"wide","href":"/v1.14.0/pt-BR/tools/file-document/csvsearchtool"},{"title":"Busca RAG em Diretório","icon":"address-book","mode":"wide","href":"/v1.14.0/pt-BR/tools/file-document/directorysearchtool"},{"title":"Leitura de Diretório","icon":"folder-tree","mode":"wide","href":"/v1.14.0/pt-BR/tools/file-document/directoryreadtool"}]},{"group":"Web Scraping \u0026 Navegação","icon":"globe","pages":[{"title":"Visão Geral","icon":"face-smile","mode":"wide","href":"/v1.14.0/pt-BR/tools/web-scraping/overview"},{"title":"Raspar Site","icon":"magnifying-glass-location","mode":"wide","href":"/v1.14.0/pt-BR/tools/web-scraping/scrapewebsitetool"},{"title":"Ferramenta de Extração de Elementos de Website","icon":"code","mode":"wide","href":"/v1.14.0/pt-BR/tools/web-scraping/scrapeelementfromwebsitetool"},{"title":"Ferramenta de Raspagem de Sites Scrapfly","icon":"spider","mode":"wide","href":"/v1.14.0/pt-BR/tools/web-scraping/scrapflyscrapetool"},{"title":"Selenium Scraper","icon":"clipboard-user","mode":"wide","href":"/v1.14.0/pt-BR/tools/web-scraping/seleniumscrapingtool"},{"title":"Ferramenta de Extração Scrapegraph","icon":"chart-area","mode":"wide","href":"/v1.14.0/pt-BR/tools/web-scraping/scrapegraphscrapetool"},{"title":"Spider Scraper","icon":"spider-web","mode":"wide","href":"/v1.14.0/pt-BR/tools/web-scraping/spidertool"},{"title":"Carregador Web Browserbase","icon":"browser","mode":"wide","href":"/v1.14.0/pt-BR/tools/web-scraping/browserbaseloadtool"},{"title":"Hyperbrowser Load Tool","icon":"globe","mode":"wide","href":"/v1.14.0/pt-BR/tools/web-scraping/hyperbrowserloadtool"},{"title":"Ferramenta Stagehand","icon":"hand","mode":"wide","href":"/v1.14.0/pt-BR/tools/web-scraping/stagehandtool"},{"title":"Firecrawl Crawl Website","icon":"fire-flame","mode":"wide","href":"/v1.14.0/pt-BR/tools/web-scraping/firecrawlcrawlwebsitetool"},{"title":"Firecrawl Scrape Website","icon":"fire-flame","mode":"wide","href":"/v1.14.0/pt-BR/tools/web-scraping/firecrawlscrapewebsitetool"},{"title":"Oxylabs Scrapers","icon":"globe","mode":"wide","href":"/v1.14.0/pt-BR/tools/web-scraping/oxylabsscraperstool"}]},{"group":"Pesquisa","icon":"magnifying-glass","pages":[{"title":"Visão Geral","icon":"face-smile","mode":"wide","href":"/v1.14.0/pt-BR/tools/search-research/overview"},{"title":"Pesquisa Serper Google","icon":"google","mode":"wide","href":"/v1.14.0/pt-BR/tools/search-research/serperdevtool"},{"title":"Brave Search","icon":"searchengin","mode":"wide","href":"/v1.14.0/pt-BR/tools/search-research/bravesearchtool"},{"title":"Carregador Web EXA Search","icon":"globe-pointer","mode":"wide","href":"/v1.14.0/pt-BR/tools/search-research/exasearchtool"},{"title":"Linkup Search Tool","icon":"link","mode":"wide","href":"/v1.14.0/pt-BR/tools/search-research/linkupsearchtool"},{"title":"Github Search","icon":"github","mode":"wide","href":"/v1.14.0/pt-BR/tools/search-research/githubsearchtool"},{"title":"Pesquisa RAG em Sites","icon":"globe-stand","mode":"wide","href":"/v1.14.0/pt-BR/tools/search-research/websitesearchtool"},{"title":"Pesquisa com RAG em Documentação de Código","icon":"code","mode":"wide","href":"/v1.14.0/pt-BR/tools/search-research/codedocssearchtool"},{"title":"Busca RAG em Canal do YouTube","icon":"youtube","mode":"wide","href":"/v1.14.0/pt-BR/tools/search-research/youtubechannelsearchtool"},{"title":"Pesquisa RAG em Vídeos do YouTube","icon":"youtube","mode":"wide","href":"/v1.14.0/pt-BR/tools/search-research/youtubevideosearchtool"}]},{"group":"Dados","icon":"database","pages":[{"title":"Visão Geral","icon":"face-smile","mode":"wide","href":"/v1.14.0/pt-BR/tools/database-data/overview"},{"title":"Busca RAG no MySQL","icon":"database","mode":"wide","href":"/v1.14.0/pt-BR/tools/database-data/mysqltool"},{"title":"PG RAG Search","icon":"elephant","mode":"wide","href":"/v1.14.0/pt-BR/tools/database-data/pgsearchtool"},{"title":"Snowflake Search Tool","icon":"snowflake","mode":"wide","href":"/v1.14.0/pt-BR/tools/database-data/snowflakesearchtool"},{"title":"NL2SQL Tool","icon":"language","mode":"wide","href":"/v1.14.0/pt-BR/tools/database-data/nl2sqltool"},{"title":"Qdrant Vector Search Tool","icon":"vector-square","mode":"wide","href":"/v1.14.0/pt-BR/tools/database-data/qdrantvectorsearchtool"},{"title":"Busca Vetorial Weaviate","icon":"network-wired","mode":"wide","href":"/v1.14.0/pt-BR/tools/database-data/weaviatevectorsearchtool"}]},{"group":"IA \u0026 Machine Learning","icon":"brain","pages":[{"title":"Visão Geral","icon":"face-smile","mode":"wide","href":"/v1.14.0/pt-BR/tools/ai-ml/overview"},{"title":"Ferramenta DALL-E","icon":"image","mode":"wide","href":"/v1.14.0/pt-BR/tools/ai-ml/dalletool"},{"title":"Vision Tool","icon":"eye","mode":"wide","href":"/v1.14.0/pt-BR/tools/ai-ml/visiontool"},{"title":"AI Mind Tool","icon":"brain","mode":"wide","href":"/v1.14.0/pt-BR/tools/ai-ml/aimindtool"},{"title":"Ferramenta LlamaIndex","icon":"address-book","mode":"wide","href":"/v1.14.0/pt-BR/tools/ai-ml/llamaindextool"},{"title":"Ferramenta LangChain","icon":"link","mode":"wide","href":"/v1.14.0/pt-BR/tools/ai-ml/langchaintool"},{"title":"Ferramenta RAG","icon":"vector-square","mode":"wide","href":"/v1.14.0/pt-BR/tools/ai-ml/ragtool"},{"title":"Interpretador de Código","icon":"code-simple","mode":"wide","href":"/v1.14.0/pt-BR/tools/ai-ml/codeinterpretertool"}]},{"group":"Cloud \u0026 Armazenamento","icon":"cloud","pages":[{"title":"Visão Geral","icon":"face-smile","mode":"wide","href":"/v1.14.0/pt-BR/tools/cloud-storage/overview"},{"title":"S3 Reader Tool","icon":"aws","mode":"wide","href":"/v1.14.0/pt-BR/tools/cloud-storage/s3readertool"},{"title":"Ferramenta S3 Writer","icon":"aws","mode":"wide","href":"/v1.14.0/pt-BR/tools/cloud-storage/s3writertool"},{"title":"Bedrock Knowledge Base Retriever","icon":"aws","mode":"wide","href":"/v1.14.0/pt-BR/tools/cloud-storage/bedrockkbretriever"}]},{"group":"Integrations","icon":"plug","pages":[{"title":"Visão Geral","icon":"plug","mode":"wide","href":"/v1.14.0/pt-BR/tools/integration/overview"},{"title":"Bedrock Invoke Agent Tool","icon":"aws","mode":"wide","href":"/v1.14.0/pt-BR/tools/integration/bedrockinvokeagenttool"},{"title":"CrewAI Run Automation Tool","icon":"robot","href":"/v1.14.0/pt-BR/tools/integration/crewaiautomationtool"}]},{"group":"Automação","icon":"bolt","pages":[{"title":"Visão Geral","icon":"face-smile","mode":"wide","href":"/v1.14.0/pt-BR/tools/automation/overview"},{"title":"Apify Actors","icon":"); -webkit-mask-image: url('https://upload.wikimedia.org/wikipedia/commons/a/ae/Apify.svg');/*","mode":"wide","href":"/v1.14.0/pt-BR/tools/automation/apifyactorstool"},{"title":"Ferramenta Composio","icon":"gear-code","mode":"wide","href":"/v1.14.0/pt-BR/tools/automation/composiotool"},{"title":"MultiOn Tool","icon":"globe","mode":"wide","href":"/v1.14.0/pt-BR/tools/automation/multiontool"}]}]},{"group":"Observabilidade","pages":[{"title":"CrewAI Tracing","icon":"magnifying-glass-chart","mode":"wide","href":"/v1.14.0/pt-BR/observability/tracing"},{"title":"Visão Geral","icon":"face-smile","mode":"wide","href":"/v1.14.0/pt-BR/observability/overview"},{"title":"Arize Phoenix","icon":"magnifying-glass-chart","mode":"wide","href":"/v1.14.0/pt-BR/observability/arize-phoenix"},{"title":"Braintrust","icon":"magnifying-glass-chart","mode":"wide","href":"/v1.14.0/pt-BR/observability/braintrust"},{"title":"Integração Datadog","icon":"dog","mode":"wide","href":"/v1.14.0/pt-BR/observability/datadog"},{"title":"Galileo Galileu","icon":"telescope","mode":"wide","href":"/v1.14.0/pt-BR/observability/galileo"},{"title":"Integração LangDB","icon":"database","mode":"wide","href":"/v1.14.0/pt-BR/observability/langdb"},{"title":"Integração Langfuse","icon":"vials","mode":"wide","href":"/v1.14.0/pt-BR/observability/langfuse"},{"title":"Integração com Langtrace","icon":"chart-line","mode":"wide","href":"/v1.14.0/pt-BR/observability/langtrace"},{"title":"Integração Maxim","icon":"bars-staggered","mode":"wide","href":"/v1.14.0/pt-BR/observability/maxim"},{"title":"Integração com MLflow","icon":"bars-staggered","mode":"wide","href":"/v1.14.0/pt-BR/observability/mlflow"},{"title":"Integração OpenLIT","icon":"magnifying-glass-chart","mode":"wide","href":"/v1.14.0/pt-BR/observability/openlit"},{"title":"Integração Opik","icon":"meteor","mode":"wide","href":"/v1.14.0/pt-BR/observability/opik"},{"title":"Avaliação Patronus AI","icon":"shield-check","mode":"wide","href":"/v1.14.0/pt-BR/observability/patronus-evaluation"},{"title":"Integração com Portkey","icon":"key","mode":"wide","href":"/v1.14.0/pt-BR/observability/portkey"},{"title":"Integração com Weave","icon":"radar","mode":"wide","href":"/v1.14.0/pt-BR/observability/weave"},{"title":"Integração com a TrueFoundry","icon":"chart-line","mode":"wide","href":"/v1.14.0/pt-BR/observability/truefoundry"}]},{"group":"Aprenda","pages":[{"title":"Visão Geral","icon":"face-smile","mode":"wide","href":"/v1.14.0/pt-BR/learn/overview"},{"title":"Guia Estratégico de Seleção de LLMs","icon":"brain-circuit","mode":"wide","href":"/v1.14.0/pt-BR/learn/llm-selection-guide"},{"title":"Tarefas Condicionais","icon":"diagram-subtask","mode":"wide","href":"/v1.14.0/pt-BR/learn/conditional-tasks"},{"title":"Agentes de Codificação","icon":"rectangle-code","mode":"wide","href":"/v1.14.0/pt-BR/learn/coding-agents"},{"title":"Criar Ferramentas Personalizadas","icon":"hammer","mode":"wide","href":"/v1.14.0/pt-BR/learn/create-custom-tools"},{"title":"Implementação de LLM Personalizada","icon":"code","mode":"wide","href":"/v1.14.0/pt-BR/learn/custom-llm"},{"title":"Agente Gerente Personalizado","icon":"user-shield","mode":"wide","href":"/v1.14.0/pt-BR/learn/custom-manager-agent"},{"title":"Personalize Agentes","icon":"user-pen","mode":"wide","href":"/v1.14.0/pt-BR/learn/customizing-agents"},{"title":"Geração de Imagens com DALL-E","icon":"image","mode":"wide","href":"/v1.14.0/pt-BR/learn/dalle-image-generation"},{"title":"Forçar a Saída da Ferramenta como Resultado","icon":"wrench-simple","mode":"wide","href":"/v1.14.0/pt-BR/learn/force-tool-output-as-result"},{"title":"Processo Hierárquico","icon":"sitemap","mode":"wide","href":"/v1.14.0/pt-BR/learn/hierarchical-process"},{"title":"Input Humano na Execução","icon":"user-plus","mode":"wide","href":"/v1.14.0/pt-BR/learn/human-input-on-execution"},{"title":"Workflows Human-in-the-Loop (HITL)","icon":"user-check","mode":"wide","href":"/v1.14.0/pt-BR/learn/human-in-the-loop"},{"title":"Feedback Humano em Flows","icon":"user-check","mode":"wide","href":"/v1.14.0/pt-BR/learn/human-feedback-in-flows"},{"title":"Inicie uma Crew de Forma Assíncrona","icon":"rocket-launch","mode":"wide","href":"/v1.14.0/pt-BR/learn/kickoff-async"},{"title":"Kickoff Crew para Cada","icon":"at","mode":"wide","href":"/v1.14.0/pt-BR/learn/kickoff-for-each"},{"title":"Conecte-se a qualquer LLM","icon":"brain-circuit","mode":"wide","href":"/v1.14.0/pt-BR/learn/llm-connections"},{"title":"Usando Agentes Multimodais","icon":"video","mode":"wide","href":"/v1.14.0/pt-BR/learn/multimodal-agents"},{"title":"Reexecutar Tarefas a partir do Último Crew Kickoff","icon":"arrow-right","mode":"wide","href":"/v1.14.0/pt-BR/learn/replay-tasks-from-latest-crew-kickoff"},{"title":"Processos Sequenciais","icon":"forward","mode":"wide","href":"/v1.14.0/pt-BR/learn/sequential-process"},{"title":"Usando Anotações no crew.py","icon":"at","mode":"wide","href":"/v1.14.0/pt-BR/learn/using-annotations"},{"title":"Visão Geral dos Hooks de Execução","mode":"wide","href":"/v1.14.0/pt-BR/learn/execution-hooks"},{"title":"Hooks de Chamada LLM","mode":"wide","href":"/v1.14.0/pt-BR/learn/llm-hooks"},{"title":"Hooks de Chamada de Ferramenta","mode":"wide","href":"/v1.14.0/pt-BR/learn/tool-hooks"}]},{"group":"Telemetria","pages":[{"title":"Telemetria","icon":"signal-stream","mode":"wide","href":"/v1.14.0/pt-BR/telemetry"}]}]},{"tab":"AMP","icon":"briefcase","href":"https://docs-platform.crewai.com/platform/pt-BR/introduction"},{"tab":"Referência da API","icon":"magnifying-glass","pages":[{"title":"Referência da API","href":"/v1.14.0/pt-BR/api-reference/introduction"}]},{"tab":"Exemplos","icon":"code","pages":[{"title":"Exemplos","href":"/v1.14.0/pt-BR/examples/example"}]},{"tab":"Notas de Versão","icon":"clock","pages":[{"title":"Notas de Versão","href":"/v1.14.0/pt-BR/changelog"}]}]},{"version":"v1.13.0","pages":[{"title":"v1.13.0","href":"/v1.13.0/pt-BR/concepts/agents"}]},{"version":"v1.12.2","pages":[{"title":"v1.12.2","href":"/v1.12.2/pt-BR/concepts/agents"}]},{"version":"v1.12.1","pages":[{"title":"v1.12.1","href":"/v1.12.1/pt-BR/concepts/agents"}]},{"version":"v1.12.0","pages":[{"title":"v1.12.0","href":"/v1.12.0/pt-BR/concepts/agents"}]},{"version":"v1.11.1","pages":[{"title":"v1.11.1","href":"/v1.11.1/pt-BR/concepts/agents"}]},{"version":"v1.11.0","pages":[{"title":"v1.11.0","href":"/v1.11.0/pt-BR/concepts/agents"}]},{"version":"v1.10.1","pages":[{"title":"v1.10.1","href":"/v1.10.1/pt-BR/concepts/agents"}]},{"version":"v1.10.0","pages":[{"title":"v1.10.0","href":"/v1.10.0/pt-BR/concepts/agents"}]}],"global":{"anchors":[{"anchor":"Website","icon":"globe","href":"https://crewai.com"},{"anchor":"Fórum","icon":"discourse","href":"https://community.crewai.com"},{"anchor":"Blog","icon":"newspaper","href":"https://blog.crewai.com"},{"anchor":"CrewGPT","icon":"robot","href":"https://chatgpt.com/g/g-qqTuUWsBY-crewai-assistant"}]}},{"language":"ko","pages":[{"title":"ko","href":"/v1.14.0/ko/concepts/checkpointing"}]},{"language":"ar","pages":[{"title":"ar","href":"/v1.14.0/ar/concepts/checkpointing"}]}]},"basePath":"","title":"Checkpointing - CrewAI","buildId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","deploymentId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","dynamics":[],"chunks":[]}