> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devinenterprise.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Gerar um guia de onboarding do Devin específico para a equipe

export const UseCaseHero = ({title, description, prompt, category, features, devinUrl, agent, intent, playbookId, type}) => {
  const encodedPrompt = encodeURIComponent(prompt || '');
  const tag = 'docs-use-case-gallery';
  const utm = 'utm_source=docs&utm_medium=use-case-gallery&utm_campaign=hero-cta';
  const agentParams = (agent ? '&agent=' + agent : '') + (intent ? '&intent=' + intent : '') + (playbookId ? '&playbookId=' + playbookId : '');
  const devinHref = type === 'schedule' ? 'https://app.devin.ai/settings/schedules/create?' + utm + agentParams + (prompt ? '&prompt=' + encodedPrompt : '') : type === 'review' ? 'https://app.devin.ai/review?' + utm : agent === 'ada' ? 'https://app.devin.ai/search?' + utm + '&noSubmit=true' + (prompt ? '&prompt=' + encodedPrompt : '') : devinUrl ? devinUrl.includes('?') ? devinUrl + '&' + utm + agentParams : devinUrl + '?' + utm + agentParams : prompt ? 'https://app.devin.ai/?tags=' + tag + '&' + utm + agentParams + '&prompt=' + encodedPrompt : 'https://app.devin.ai/?' + utm + agentParams;
  const buttonLabel = type === 'schedule' ? 'Schedule in Devin ↗' : type === 'review' ? 'Set Up Devin Review ↗' : agent === 'advanced' ? 'Try in Devin ↗' : agent === 'dana' ? 'Try in Dana ↗' : agent === 'ada' ? 'Try in Ask Devin ↗' : 'Try in Devin ↗';
  const featureList = features ? features.split(',').map(f => f.trim()) : [];
  return <div className="uc-hero">
      <div className="uc-hero-inner">
        <div className="uc-hero-left">
          <h1 className="uc-hero-title">{title}</h1>
          <p className="uc-hero-desc">{description}</p>
          <div>
            <a href={devinHref} target="_blank" rel="noopener noreferrer" className="try-in-devin-btn">
              {buttonLabel}
            </a>
          </div>
        </div>
        <div className="uc-hero-meta">
          <div className="uc-meta-item">
            <span className="uc-meta-label">Author</span>
            <span className="uc-meta-value">Cognition</span>
          </div>
          <div className="uc-meta-item">
            <span className="uc-meta-label">Category</span>
            <span className="uc-meta-value">{category}</span>
          </div>
          {featureList.length > 0 && <div className="uc-meta-item">
              <span className="uc-meta-label">Features</span>
              <span className="uc-meta-value">{featureList.join(', ')}</span>
            </div>}
        </div>
      </div>
    </div>;
};

export const PromptBlock = ({children, type, agent, intent, playbookId}) => {
  var utm = 'utm_source=docs&utm_medium=use-case-gallery&utm_campaign=prompt-block';
  var tag = 'docs-use-case-gallery';
  var agentParams = (agent ? '&agent=' + agent : '') + (intent ? '&intent=' + intent : '') + (playbookId ? '&playbookId=' + playbookId : '');
  var label = type === 'schedule' ? 'Schedule in Devin' : type === 'playbook' ? 'Create Playbook' : type === 'knowledge' ? 'Add to Knowledge' : agent === 'advanced' ? 'Try in Devin' : agent === 'dana' ? 'Try in Dana' : agent === 'ada' ? 'Try in Ask Devin' : 'Try in Devin';
  var buildUrl = function (text) {
    var encoded = encodeURIComponent(text);
    if (type === 'schedule') return 'https://app.devin.ai/settings/schedules/create?' + utm + agentParams + '&prompt=' + encoded;
    if (type === 'playbook') return 'https://app.devin.ai/settings/playbooks/create?' + utm + '&body=' + encoded;
    if (type === 'knowledge') return 'https://app.devin.ai/knowledge?' + utm + '&body=' + encoded;
    if (agent === 'ada') return 'https://app.devin.ai/search?' + utm + '&noSubmit=true&prompt=' + encoded;
    return 'https://app.devin.ai/?tags=' + tag + '&' + utm + agentParams + '&prompt=' + encoded;
  };
  const ref = React.useRef(null);
  const [href, setHref] = React.useState('#');
  React.useEffect(() => {
    if (!ref.current) return;
    var codeEl = ref.current.querySelector('pre code');
    if (codeEl) {
      var text = codeEl.textContent.trim();
      if (text) setHref(buildUrl(text));
    }
    var header = ref.current.querySelector('[data-component-part="code-block-header"]');
    if (header && !header.querySelector('.prompt-block-devin-link')) {
      var link = document.createElement('a');
      link.href = href;
      link.target = '_blank';
      link.rel = 'noopener noreferrer';
      link.className = 'prompt-block-devin-link';
      link.style.cssText = 'display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:#fff;font-size:11px;font-weight:500;padding:4px 10px;border-radius:6px;white-space:nowrap;background:#317CFF;transition:background 0.2s;margin-left:8px;';
      link.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"/><polyline points="15 3 21 3 21 9"/><line x1="10" y1="14" x2="21" y2="3"/></svg> ' + label;
      link.onmouseenter = function () {
        link.style.background = '#2968D9';
      };
      link.onmouseleave = function () {
        link.style.background = '#317CFF';
      };
      header.appendChild(link);
    }
    var existingLink = ref.current.querySelector('.prompt-block-devin-link');
    if (existingLink && href !== '#') existingLink.href = href;
  });
  return <div className="prompt-block" ref={ref}>{children}</div>;
};

<UseCaseHero title="Gerar um Guia de Onboarding do Devin Específico para a Equipe" description="Devin lê sua própria documentação e gera um guia de primeiros passos personalizado para a stack, integrações e fluxos de trabalho da sua equipe — pronto para compartilhar no Notion ou no Slack." prompt="Leia a documentação do Devin e crie um guia de primeiros passos para nossa equipe de engenharia. Concentre-se em: iniciar sessões a partir do Slack, escrever prompts eficazes, configurar nossas integrações com Linear e GitHub, criar playbooks e gerenciar Knowledge. Adapte os exemplos para uma stack Node.js/React. Formate-o como uma página do Notion que possamos compartilhar em #engineering." category="Otimização do Devin" features="MCP" />

<div className="uc-detail-wrapper">
  <Tip>Não quer configurar isso manualmente? Cole um link para esta página em uma sessão do Devin e peça a ele para configurar tudo para você.</Tip>

  <Steps>
    <Step title="Peça ao Devin que gere seu guia">
      Devin tem acesso integrado à sua própria documentação por meio do [Devin Docs MCP](/pt-BR/work-with-devin/devin-mcp) — sem necessidade de setup ou configuração. Ele pode pesquisar e ler todo o site de documentação, referência de API, changelog e boas práticas sob demanda.

      Em vez de enviar a novos engenheiros uma lista de links de documentação, peça para Devin sintetizar exatamente o que sua equipe precisa em um único guia de onboarding com prompts, fluxos de trabalho e exemplos adaptados ao seu stack.

      <PromptBlock>
        ```txt Gerar um guia de onboarding específico para a equipe theme={null}
        Leia a documentação do Devin e crie um guia de primeiros passos para
        nossa equipe de engenharia. O guia deve cobrir:

        1. Como iniciar uma sessão (Slack vs. web app — quando usar cada um)
        2. Como escrever prompts eficazes (inclua caminhos de arquivos, contexto de erro, escopo)
        3. Como configurar nossa integração com o Linear para fluxos de trabalho orientados a tickets
        4. Como criar playbooks para nossas migrações recorrentes de Express para Fastify
        5. Como adicionar entradas em Knowledge para nossas convenções de codebase
           (por exemplo, "todas as rotas da API ficam em src/routes/, rode npm run test:api")

        Adapte cada exemplo ao nosso stack: Node.js, React, PostgreSQL.
        Formate a saída como uma página do Notion que possamos colar em #engineering.
        ```
      </PromptBlock>
    </Step>

    <Step title="Revise o guia gerado">
      Devin pesquisa em sua documentação para cada tópico, lê as páginas relevantes e gera um guia de onboarding completo, adaptado ao seu stack e fluxo de trabalho. Veja como fica o resultado:

      ```markdown theme={null}
      # Getting Started with Devin — Acme Engineering Team

      ## 1. Starting a Session
      | Method | When to use | Example |
      |--------|-------------|--------|
      | **Slack** — message @Devin | Quick, scoped tasks | "Fix the failing CI in api-service" |
      | **Web app** — app.devin.ai | Longer tasks needing file attachments or playbooks | Attach a migration playbook + spec file |

      ## 2. Writing Effective Prompts
      Devin works best with specific, scoped requests. Always include
      the file path, what's broken, and when it started.

      ❌ "Fix the login bug"
      ✅ "The login form at src/pages/Login.tsx returns a 401 for valid
         credentials since the JWT key rotation on Friday. Check the
         auth middleware at src/middleware/auth.ts."

      ## 3. Linear Integration
      Go to Settings > Connections > Linear and authorize. Once
      connected, Devin can:
      - Pick up tickets assigned to it automatically
      - Update ticket status as it works
      - Link PRs to the originating Linear ticket

      See the full setup guide: docs.devin.ai/integrations/linear

      ## 4. Playbooks for Recurring Tasks
      Create reusable prompts at Settings > Playbooks > Create New.
      For our Express-to-Fastify migration, the playbook should include:
      - The target module path (e.g., src/services/payments/)
      - Test commands: npm run test:api && npm run test:integration
      - Rollback steps if the migration breaks downstream consumers

      ## 5. Knowledge — Teaching Devin Our Conventions
      Add team conventions at Settings > Knowledge > Create knowledge.

      Example entry:
        Trigger: "working on API routes"
        Content: "We use Fastify, not Express. All routes live in
        src/routes/. Run npm run test:api before committing.
        Error responses must use the ApiError class from src/lib/errors.ts."
      ```
    </Step>

    <Step title="Amplie o guia com complementos">
      Mantenha a mesma sessão aberta — Devin mantém o contexto e pode estender o guia com seções adicionais.

      <PromptBlock>
        ```txt Adicione uma seção de modelos de prompt theme={null}
        Adicione uma nova seção ao guia: "Modelos de Prompt para Copiar e Colar."
        Inclua 6 modelos que nossa equipe possa reutilizar para tarefas comuns:
        correções de bugs, implementação de funcionalidades, cobertura de testes,
        migrações de banco de dados, atualizações de dependências e depuração de CI.
        Cada modelo deve ter placeholders como [file path],
        [error message] e [ticket link].
        ```
      </PromptBlock>

      <PromptBlock>
        ```txt Adicione uma seção "Novidades" a partir do changelog theme={null}
        Leia as notas de versão do Devin e adicione uma seção "Novidades"
        ao guia abrangendo funcionalidades lançadas no último mês.
        Destaque qualquer coisa que mude como usamos playbooks,
        sessões agendadas ou a API.
        ```
      </PromptBlock>

      <PromptBlock>
        ```txt Adicione uma tabela de decisão Knowledge vs. Playbooks theme={null}
        Adicione uma seção ao guia explicando quando usar Knowledge
        vs. Playbooks. Inclua uma tabela comparativa e 3 exemplos
        concretos de um projeto Node.js mostrando qual é melhor
        para cada cenário.
        ```
      </PromptBlock>
    </Step>

    <Step title="Compartilhe este guia e mantenha-o sempre atualizado">
      Quando o guia estiver pronto, compartilhe-o e salve-o como [Knowledge](/pt-BR/product-guides/knowledge) para que o próprio Devin possa consultar as convenções da sua equipe:

      1. **Compartilhe o guia** — cole a página do Notion no canal `#engineering` ou fixe-a no wiki da sua equipe
      2. **Salve-o como Knowledge** — acesse **Settings > Knowledge > Criar knowledge**, defina o gatilho como `"onboarding new team members to Devin"`, cole o conteúdo do guia e fixe-o em **all repositories**

      Agora, quando qualquer membro da equipe perguntar ao Devin "how should I write prompts?" ou "how do I connect Linear?", ele usará o seu guia personalizado — não a documentação genérica.

      À medida que o Devin lançar novos recursos, peça para que ele atualize o guia no mesmo formato de sessão: *"Read the latest [changelog](/pt-BR/release-notes/overview) and update our onboarding guide with any new features that affect our workflows."*
    </Step>
  </Steps>
</div>
