> ## 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.

# Riepilogo settimanale dello stato su Notion

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="Riepilogo settimanale dello stato in Notion" description="Un Devin pianificato riepiloga i PR e i commit recenti, quindi pubblica ogni settimana un aggiornamento di stato formattato sulla tua pagina Notion." prompt="Esamina gli ultimi 7 giorni di PR (pull request) unite e commit nei nostri repo. Riassumi cosa è stato rilasciato, cosa è in corso e gli eventuali blocchi. Aggiorna la pagina Engineering Status in Notion con una nuova sezione datata." category="Automazioni" features="Schedules, MCP" type="schedule" />

<div className="uc-detail-wrapper">
  <Tip>Non vuoi configurarlo manualmente? Incolla un collegamento a questa pagina in una sessione Devin e chiedi a Devin di configurare tutto per te.</Tip>

  <Steps>
    <Step title="Collega il Notion MCP">
      Devin ha bisogno dell'accesso in scrittura al tuo spazio di lavoro Notion per aggiornare le pagine di stato. Vai su **Settings > Connections > server MCP**, trova **Notion** e fai clic su **Enable**. Ti verrà chiesto di completare un flusso OAuth: usa un account di servizio invece del tuo account personale Notion, dato che l'accesso è condiviso in tutta la tua organizzazione.

      Una volta collegato, verifica che funzioni avviando una breve sessione con Devin:

      <PromptBlock>
        ```txt Test Notion connection theme={null}
        Trova la pagina Notion intitolata "Engineering Status" ed elencane i contenuti.
        ```
      </PromptBlock>

      Se Devin trova la tua pagina di stato, sei a posto. In caso contrario, verifica che l'integrazione Notion abbia accesso alle pagine corrette: in Notion, apri la pagina, fai clic su **...** > **Connections** e aggiungi l'integrazione.
    </Step>

    <Step title="Scrivi il prompt per l'aggiornamento di stato">
      Il tuo prompt indica a Devin quali repo controllare, cosa riassumere e dove scrivere il risultato. Sii specifico riguardo alla pagina Notion e al formato che desideri.

      <PromptBlock type="schedule">
        ```txt Weekly status update theme={null}
        Esamina gli ultimi 7 giorni di PR (pull request) unite e commit nei nostri repository
        (acme/web-app, acme/api-server, acme/infra).

        Riassumi le aree di progetto principali che hanno avuto attività ed elenca i
        contributor per ciascuna. Aggiorna la pagina Notion "Engineering Status"
        aggiungendo una nuova sezione datata all'inizio.
        ```
      </PromptBlock>
    </Step>

    <Step title="Programma l'esecuzione settimanale">
      Vai su [**Settings > Schedules**](/it/product-guides/scheduled-sessions) e fai clic su **Create schedule**.

      * **Name**: `Weekly Engineering Status Update`
      * **Schedule type**: Recurring
      * **Frequency**: Weekly — Monday at 8:00 AM (prima della riunione di standup)
      * **Prompt**: Incolla il prompt dal passaggio precedente
      * **Email notifications**: Imposta su **On failure only** in modo che tu venga avvisato solo se qualcosa va storto
      * **Slack channel** (opzionale): Seleziona un canale a cui inviare le notifiche di sessione — utile per avvisare il tuo team quando la pagina di stato viene aggiornata

      Fai clic su **Save**. Devin ora eseguirà questa sessione automaticamente ogni lunedì mattina. Ogni esecuzione appare sotto **Past Sessions** nella pagina di dettaglio della pianificazione, così puoi rivedere cosa ha pubblicato Devin.

      Prima di fare affidamento sulla pianificazione, eseguila una volta manualmente come sessione normale per verificare che l'output Notion sia corretto. Regola il prompt in base ai risultati: ad esempio, se Devin include troppi dettagli per PR, aggiungi "mantieni le descrizioni sotto le 15 parole."
    </Step>
  </Steps>
</div>
