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

# Fuxi Code GitHub Actions

> Scopri come integrare Fuxi Code nel tuo flusso di lavoro di sviluppo con Fuxi Code GitHub Actions

Fuxi Code GitHub Actions porta l'automazione basata su AI al tuo flusso di lavoro GitHub. Con una semplice menzione `@fuxi` in qualsiasi PR o issue, Fuxi può analizzare il tuo codice, creare pull request, implementare funzionalità e correggere bug - il tutto seguendo gli standard del tuo progetto. Per le revisioni automatiche pubblicate su ogni PR senza un trigger, vedi [GitHub Code Review](/it/code-review).

<Note>
  Fuxi Code GitHub Actions è costruito sulla base dell'[Fuxi Agent SDK](/it/agent-sdk/overview), che consente l'integrazione programmatica di Fuxi Code nelle tue applicazioni. Puoi utilizzare l'SDK per costruire flussi di lavoro di automazione personalizzati oltre GitHub Actions.
</Note>

<h2 id="why-use-fuxi-code-github-actions">
  Perché utilizzare Fuxi Code GitHub Actions?
</h2>

* **Creazione istantanea di PR**: Descrivi ciò di cui hai bisogno e Fuxi crea una PR completa con tutti i cambiamenti necessari
* **Implementazione automatica del codice**: Trasforma gli issue in codice funzionante con un singolo comando
* **Segue i tuoi standard**: Fuxi rispetta le tue linee guida `FUXI.md` e i pattern di codice esistenti
* **Configurazione semplice**: Inizia in pochi minuti con il nostro installer e la chiave API
* **Sicuro per impostazione predefinita**: Il tuo codice rimane sui runner di Github

<h2 id="what-can-fuxi-do">
  Cosa può fare Fuxi?
</h2>

Fuxi Code fornisce un potente GitHub Action che trasforma il modo in cui lavori con il codice:

<h3 id="fuxi-code-action">
  Fuxi Code Action
</h3>

Questo GitHub Action ti consente di eseguire Fuxi Code all'interno dei tuoi flussi di lavoro GitHub Actions. Puoi utilizzarlo per costruire qualsiasi flusso di lavoro personalizzato sulla base di Fuxi Code.

[Visualizza repository →](https://github.com/anthropics/fuxi-code-action)

<h2 id="setup">
  Setup
</h2>

<h2 id="quick-setup">
  Configurazione rapida
</h2>

Esegui `/install-github-app` nel terminale di Fuxi Code per configurare l'integrazione in modo interattivo. Il comando installa l'app GitHub di Fuxi nel tuo repository e poi ti guida attraverso l'aggiunta dei workflow di GitHub Actions e del secret della chiave API.

Dopo che l'app GitHub è installata, il comando chiede se continuare con la configurazione di GitHub Actions. In Fuxi Code v2.1.187 e versioni successive puoi scegliere **Salta per ora** per fermarti con solo l'app installata e tornare ai passaggi del workflow e del secret eseguendo di nuovo `/install-github-app`. Le versioni precedenti procedono direttamente alla selezione del workflow.

<Note>
  * Devi essere un amministratore del repository per installare l'app GitHub e aggiungere secret
  * L'app GitHub richiederà autorizzazioni di lettura e scrittura per Contents, Issues e Pull requests
  * Questo metodo di avvio rapido è disponibile solo per gli utenti diretti dell'API Fuxi. Se stai utilizzando Amazon Bedrock o Google Cloud's Agent Platform, consulta la sezione [Utilizzo con Amazon Bedrock e Google Cloud](#using-with-amazon-bedrock-and-google-cloud).
</Note>

<h2 id="manual-setup">
  Configurazione manuale
</h2>

Se il comando `/install-github-app` non riesce o preferisci una configurazione manuale, segui queste istruzioni di configurazione manuale:

1. **Installa l'app GitHub di Fuxi** nel tuo repository: [https://github.com/apps/fuxi](https://github.com/apps/fuxi)

   L'app GitHub di Fuxi richiede le seguenti autorizzazioni del repository:

   * **Contents**: Lettura e scrittura (per modificare i file del repository)
   * **Issues**: Lettura e scrittura (per rispondere agli issue)
   * **Pull requests**: Lettura e scrittura (per creare PR e spingere i cambiamenti)

   Per ulteriori dettagli sulla sicurezza e le autorizzazioni, vedi la [documentazione sulla sicurezza](https://github.com/anthropics/fuxi-code-action/blob/main/docs/security.md).
2. **Aggiungi ANTHROPIC\_API\_KEY** ai tuoi secret del repository ([Scopri come utilizzare i secret in GitHub Actions](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions))
3. **Copia il file del flusso di lavoro** da [examples/fuxi.yml](https://github.com/anthropics/fuxi-code-action/blob/main/examples/fuxi.yml) nella cartella `.github/workflows/` del tuo repository

<Tip>
  Dopo aver completato la configurazione rapida o manuale, testa l'action taggando `@fuxi` in un commento di issue o PR.
</Tip>

<h2 id="upgrading-from-beta">
  Aggiornamento dalla versione Beta
</h2>

<Warning>
  Fuxi Code GitHub Actions v1.0 introduce breaking changes che richiedono l'aggiornamento dei tuoi file di flusso di lavoro per eseguire l'upgrade a v1.0 dalla versione beta.
</Warning>

Se stai attualmente utilizzando la versione beta di Fuxi Code GitHub Actions, ti consigliamo di aggiornare i tuoi flussi di lavoro per utilizzare la versione GA. La nuova versione semplifica la configurazione aggiungendo potenti nuove funzionalità come il rilevamento automatico della modalità.

<h3 id="essential-changes">
  Cambiamenti essenziali
</h3>

Tutti gli utenti beta devono apportare questi cambiamenti ai loro file di flusso di lavoro per eseguire l'upgrade:

1. **Aggiorna la versione dell'action**: Cambia `@beta` a `@v1`
2. **Rimuovi la configurazione della modalità**: Elimina `mode: "tag"` o `mode: "agent"` (ora rilevata automaticamente)
3. **Aggiorna gli input del prompt**: Sostituisci `direct_prompt` con `prompt`
4. **Sposta le opzioni CLI**: Converti `max_turns`, `model`, `custom_instructions`, ecc. in `fuxi_args`

<h3 id="breaking-changes-reference">
  Breaking Changes Reference
</h3>

| Old Beta Input        | New v1.0 Input                        |
| --------------------- | ------------------------------------- |
| `mode`                | *(Removed - auto-detected)*           |
| `direct_prompt`       | `prompt`                              |
| `override_prompt`     | `prompt` with GitHub variables        |
| `custom_instructions` | `fuxi_args: --append-system-prompt` |
| `max_turns`           | `fuxi_args: --max-turns`            |
| `model`               | `fuxi_args: --model`                |
| `allowed_tools`       | `fuxi_args: --allowedTools`         |
| `disallowed_tools`    | `fuxi_args: --disallowedTools`      |
| `fuxi_env`          | `settings` JSON format                |

<h3 id="before-and-after-example">
  Esempio Prima e Dopo
</h3>

**Versione beta:**

```yaml theme={null}
- uses: anthropics/fuxi-code-action@beta
  with:
    mode: "tag"
    direct_prompt: "Review this PR for security issues"
    anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
    custom_instructions: "Follow our coding standards"
    max_turns: "10"
    model: "fuxi-sonnet-5"
```

**Versione GA (v1.0):**

```yaml theme={null}
- uses: anthropics/fuxi-code-action@v1
  with:
    prompt: "Review this PR for security issues"
    anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
    fuxi_args: |
      --append-system-prompt "Follow our coding standards"
      --max-turns 10
      --model fuxi-sonnet-5
```

<Tip>
  L'action ora rileva automaticamente se eseguire in modalità interattiva (risponde alle menzioni `@fuxi`) o in modalità automazione (viene eseguita immediatamente con un prompt) in base alla tua configurazione.
</Tip>

<h2 id="example-use-cases">
  Esempi di casi d'uso
</h2>

Fuxi Code GitHub Actions può aiutarti con una varietà di attività. La [directory degli esempi](https://github.com/anthropics/fuxi-code-action/tree/main/examples) contiene flussi di lavoro pronti all'uso per diversi scenari.

<h3 id="basic-workflow">
  Flusso di lavoro di base
</h3>

```yaml theme={null}
name: Fuxi Code
on:
  issue_comment:
    types: [created]
  pull_request_review_comment:
    types: [created]
jobs:
  fuxi:
    runs-on: ubuntu-latest
    steps:
      - uses: anthropics/fuxi-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          # Responds to @fuxi mentions in comments
```

<h3 id="using-skills">
  Utilizzo di skills
</h3>

L'input `prompt` accetta un'invocazione di [skill](/it/skills) così come testo semplice:

* Per una skill nella directory `.fuxi/skills/` del vostro repository, eseguite `actions/checkout` prima del passo dell'azione e passate `/skill-name`.
* Per una skill inclusa in un plugin, installate il plugin con gli input `plugin_marketplaces` e `plugins` e passate lo `/plugin-name:skill-name` con namespace.

Il seguente flusso di lavoro installa il plugin `code-review` ed esegue la sua skill su ogni pull request nuova o aggiornata:

```yaml theme={null}
name: Code Review
on:
  pull_request:
    types: [opened, synchronize]
jobs:
  review:
    runs-on: ubuntu-latest
    steps:
      - uses: anthropics/fuxi-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          plugin_marketplaces: "https://github.com/anthropics/fuxi-code.git"
          plugins: "code-review@fuxi-code-plugins"
          prompt: "/code-review:code-review ${{ github.repository }}/pull/${{ github.event.pull_request.number }}"
```

<h3 id="custom-automation-with-prompts">
  Automazione personalizzata con prompt
</h3>

```yaml theme={null}
name: Daily Report
on:
  schedule:
    - cron: "0 9 * * *"
jobs:
  report:
    runs-on: ubuntu-latest
    steps:
      - uses: anthropics/fuxi-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          prompt: "Generate a summary of yesterday's commits and open issues"
          fuxi_args: "--model opus"
```

<h3 id="common-use-cases">
  Casi d'uso comuni
</h3>

Nei commenti di issue o PR:

```text wrap theme={null}
@fuxi implement this feature based on the issue description
@fuxi how should I implement user authentication for this endpoint?
@fuxi fix the TypeError in the user dashboard component
```

Fuxi analizzerà automaticamente il contesto e risponderà in modo appropriato.

<h2 id="best-practices">
  Best practices
</h2>

<h3 id="fuxi-md-configuration">
  Configurazione FUXI.md
</h3>

Crea un file `FUXI.md` nella radice del tuo repository per definire le linee guida dello stile di codice, i criteri di revisione, le regole specifiche del progetto e i pattern preferiti. Questo file guida la comprensione di Fuxi degli standard del tuo progetto.

<h3 id="security-considerations">
  Considerazioni sulla sicurezza
</h3>

<Warning>Non eseguire mai il commit delle chiavi API direttamente nel tuo repository.</Warning>

Per una guida completa sulla sicurezza inclusa autorizzazioni, autenticazione e best practices, vedi la [documentazione sulla sicurezza di Fuxi Code Action](https://github.com/anthropics/fuxi-code-action/blob/main/docs/security.md).

Utilizza sempre GitHub Secrets per le chiavi API:

* Aggiungi la tua chiave API come secret del repository denominato `ANTHROPIC_API_KEY`
* Fai riferimento ad essa nei flussi di lavoro: `anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}`
* Limita le autorizzazioni dell'action solo a ciò che è necessario
* Rivedi i suggerimenti di Fuxi prima di eseguire il merge

Utilizza sempre GitHub Secrets (ad esempio, `${{ secrets.ANTHROPIC_API_KEY }}`) piuttosto che hardcodare le chiavi API direttamente nei tuoi file di flusso di lavoro.

<h3 id="optimizing-performance">
  Ottimizzazione delle prestazioni
</h3>

Utilizza i template di issue per fornire contesto, mantieni il tuo `FUXI.md` conciso e focalizzato, e configura timeout appropriati per i tuoi flussi di lavoro.

<h3 id="ci-costs">
  Costi CI
</h3>

Quando utilizzi Fuxi Code GitHub Actions, tieni presente i costi associati:

**Costi di GitHub Actions:**

* Fuxi Code viene eseguito su runner ospitati da GitHub, che consumano i tuoi minuti di GitHub Actions
* Vedi la [documentazione sulla fatturazione di GitHub](https://docs.github.com/en/billing/managing-billing-for-your-products/managing-billing-for-github-actions/about-billing-for-github-actions) per i dettagli sui prezzi e i limiti di minuti

**Costi API:**

* Ogni interazione di Fuxi consuma token API in base alla lunghezza dei prompt e delle risposte
* L'utilizzo dei token varia in base alla complessità dell'attività e alla dimensione della codebase
* Vedi la [pagina dei prezzi di Fuxi](https://fuxi.com/platform/api) per i tassi di token attuali

**Suggerimenti per l'ottimizzazione dei costi:**

* Utilizza comandi specifici `@fuxi` per ridurre le chiamate API non necessarie
* Configura `--max-turns` appropriato in `fuxi_args` per prevenire iterazioni eccessive
* Imposta timeout a livello di flusso di lavoro per evitare job fuori controllo
* Considera l'utilizzo dei controlli di concorrenza di GitHub per limitare le esecuzioni parallele

<h2 id="configuration-examples">
  Esempi di configurazione
</h2>

Fuxi Code Action v1 semplifica la configurazione con parametri unificati:

```yaml theme={null}
- uses: anthropics/fuxi-code-action@v1
  with:
    anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
    prompt: "Your instructions here" # Optional
    fuxi_args: "--max-turns 5" # Optional CLI arguments
```

Caratteristiche principali:

* **Interfaccia prompt unificata** - Utilizza `prompt` per tutte le istruzioni
* **Skills** - Richiama [skills](/it/skills) installate direttamente dal prompt
* **Passthrough CLI** - Qualsiasi argomento CLI di Fuxi Code tramite `fuxi_args`
* **Trigger flessibili** - Funziona con qualsiasi evento GitHub

Visita la [directory degli esempi](https://github.com/anthropics/fuxi-code-action/tree/main/examples) per i file di flusso di lavoro completi.

<Tip>
  Quando rispondi ai commenti di issue o PR, Fuxi risponde automaticamente alle menzioni @fuxi. Per altri eventi, utilizza il parametro `prompt` per fornire istruzioni.
</Tip>

<h2 id="using-with-amazon-bedrock-and-google-cloud">
  Utilizzo con Amazon Bedrock e Google Cloud
</h2>

Per ambienti aziendali, puoi utilizzare Fuxi Code GitHub Actions con la tua infrastruttura cloud. Questo approccio ti dà il controllo sulla residenza dei dati e sulla fatturazione mantenendo la stessa funzionalità.

<h3 id="prerequisites">
  Prerequisiti
</h3>

Prima di configurare Fuxi Code GitHub Actions con i provider cloud, hai bisogno di:

<h4 id="for-google-cloud’s-agent-platform">
  Per Google Cloud's Agent Platform:
</h4>

1. Un progetto Google Cloud con Google Cloud's Agent Platform abilitato
2. Workload Identity Federation configurato per GitHub Actions
3. Un account di servizio con le autorizzazioni richieste
4. Un'app GitHub (consigliato) o utilizza il GITHUB\_TOKEN predefinito

<h4 id="for-amazon-bedrock">
  Per Amazon Bedrock:
</h4>

1. Un account AWS con Amazon Bedrock abilitato
2. GitHub OIDC Identity Provider configurato in AWS
3. Un ruolo IAM con autorizzazioni Amazon Bedrock
4. Un'app GitHub (consigliato) o utilizza il GITHUB\_TOKEN predefinito

<Steps>
  <Step title="Crea un'app GitHub personalizzata (Consigliato per provider di terze parti)">
    Per il miglior controllo e sicurezza quando utilizzi provider di terze parti come Google Cloud's Agent Platform o Amazon Bedrock, ti consigliamo di creare la tua app GitHub:

    1. Vai a [https://github.com/settings/apps/new](https://github.com/settings/apps/new)
    2. Compila le informazioni di base:
       * **GitHub App name**: Scegli un nome univoco (ad es. "YourOrg Fuxi Assistant")
       * **Homepage URL**: Il sito web della tua organizzazione o l'URL del repository
    3. Configura le impostazioni dell'app:
       * **Webhooks**: Deseleziona "Active" (non necessario per questa integrazione)
    4. Imposta le autorizzazioni richieste:
       * **Repository permissions**:
         * Contents: Read & Write
         * Issues: Read & Write
         * Pull requests: Read & Write
    5. Fai clic su "Create GitHub App"
    6. Dopo la creazione, fai clic su "Generate a private key" e salva il file `.pem` scaricato
    7. Annota il tuo App ID dalla pagina delle impostazioni dell'app
    8. Installa l'app nel tuo repository:
       * Dalla pagina delle impostazioni della tua app, fai clic su "Install App" nella barra laterale sinistra
       * Seleziona il tuo account o organizzazione
       * Scegli "Only select repositories" e seleziona il repository specifico
       * Fai clic su "Install"
    9. Aggiungi la chiave privata come secret al tuo repository:
       * Vai a Settings → Secrets and variables → Actions del tuo repository
       * Crea un nuovo secret denominato `APP_PRIVATE_KEY` con il contenuto del file `.pem`
    10. Aggiungi l'App ID come secret:

    * Crea un nuovo secret denominato `APP_ID` con l'ID della tua app GitHub

    <Note>
      Questa app verrà utilizzata con l'action [actions/create-github-app-token](https://github.com/actions/create-github-app-token) per generare token di autenticazione nei tuoi flussi di lavoro.
    </Note>

    **Alternativa per Fuxi API o se non vuoi configurare la tua app Github**: Utilizza l'app ufficiale di Anthropic:

    1. Installa da: [https://github.com/apps/fuxi](https://github.com/apps/fuxi)
    2. Nessuna configurazione aggiuntiva necessaria per l'autenticazione
  </Step>

  <Step title="Configura l'autenticazione del provider cloud">
    Scegli il tuo provider cloud e configura l'autenticazione sicura:

    <AccordionGroup>
      <Accordion title="Amazon Bedrock">
        **Configura AWS per consentire a GitHub Actions di autenticarsi in modo sicuro senza archiviare le credenziali.**

        > **Security Note**: Utilizza configurazioni specifiche del repository e concedi solo le autorizzazioni minime richieste.

        **Required Setup**:

        1. **Enable Amazon Bedrock**:
           * Richiedi l'accesso ai modelli Fuxi in Amazon Bedrock
           * Per i modelli tra regioni, richiedi l'accesso in tutte le regioni richieste

        2. **Set up GitHub OIDC Identity Provider**:
           * Provider URL: `https://token.actions.githubusercontent.com`
           * Audience: `sts.amazonaws.com`

        3. **Create IAM Role for GitHub Actions**:
           * Trusted entity type: Web identity
           * Identity provider: `token.actions.githubusercontent.com`
           * Permissions: `AmazonBedrockFullAccess` policy
           * Configure trust policy for your specific repository

        **Required Values**:

        Dopo la configurazione, avrai bisogno di:

        * **AWS\_ROLE\_TO\_ASSUME**: L'ARN del ruolo IAM che hai creato

        <Tip>
          OIDC è più sicuro rispetto all'utilizzo di chiavi di accesso AWS statiche perché le credenziali sono temporanee e ruotate automaticamente.
        </Tip>

        Vedi la [documentazione AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_oidc.html) per le istruzioni dettagliate sulla configurazione di OIDC.
      </Accordion>

      <Accordion title="Google Cloud's Agent Platform">
        **Configura Google Cloud per consentire a GitHub Actions di autenticarsi in modo sicuro senza archiviare le credenziali.**

        > **Security Note**: Utilizza configurazioni specifiche del repository e concedi solo le autorizzazioni minime richieste.

        **Required Setup**:

        1. **Enable APIs** nel tuo progetto Google Cloud:
           * IAM Credentials API
           * Security Token Service (STS) API
           * Google Cloud's Agent Platform API

        2. **Create Workload Identity Federation resources**:
           * Crea un Workload Identity Pool
           * Aggiungi un provider OIDC GitHub con:
             * Issuer: `https://token.actions.githubusercontent.com`
             * Attribute mappings for repository and owner
             * **Security recommendation**: Utilizza condizioni di attributo specifiche del repository

        3. **Create a Service Account**:
           * Concedi solo il ruolo `Vertex AI User`
           * **Security recommendation**: Crea un account di servizio dedicato per repository

        4. **Configure IAM bindings**:
           * Consenti al Workload Identity Pool di rappresentare l'account di servizio
           * **Security recommendation**: Utilizza set di principali specifici del repository

        **Required Values**:

        Dopo la configurazione, avrai bisogno di:

        * **GCP\_WORKLOAD\_IDENTITY\_PROVIDER**: Il nome completo della risorsa provider
        * **GCP\_SERVICE\_ACCOUNT**: L'indirizzo email dell'account di servizio

        <Tip>
          Workload Identity Federation elimina la necessità di chiavi di account di servizio scaricabili, migliorando la sicurezza.
        </Tip>

        Per le istruzioni di configurazione dettagliate, consulta la [documentazione di Google Cloud Workload Identity Federation](https://cloud.google.com/iam/docs/workload-identity-federation).
      </Accordion>
    </AccordionGroup>
  </Step>

  <Step title="Aggiungi Secret Richiesti">
    Aggiungi i seguenti secret al tuo repository (Settings → Secrets and variables → Actions):

    #### Per Fuxi API (Direct):

    1. **Per l'autenticazione API**:
       * `ANTHROPIC_API_KEY`: La tua chiave API Fuxi da [console.anthropic.com](https://console.anthropic.com)

    2. **Per GitHub App (se utilizzi la tua app)**:
       * `APP_ID`: L'ID della tua app GitHub
       * `APP_PRIVATE_KEY`: Il contenuto della chiave privata (.pem)

    #### Per Google Cloud's Agent Platform

    1. **Per l'autenticazione GCP**:
       * `GCP_WORKLOAD_IDENTITY_PROVIDER`
       * `GCP_SERVICE_ACCOUNT`

    2. **Per GitHub App (se utilizzi la tua app)**:
       * `APP_ID`: L'ID della tua app GitHub
       * `APP_PRIVATE_KEY`: Il contenuto della chiave privata (.pem)

    #### Per Amazon Bedrock

    1. **Per l'autenticazione AWS**:
       * `AWS_ROLE_TO_ASSUME`

    2. **Per GitHub App (se utilizzi la tua app)**:
       * `APP_ID`: L'ID della tua app GitHub
       * `APP_PRIVATE_KEY`: Il contenuto della chiave privata (.pem)
  </Step>

  <Step title="Crea file di flusso di lavoro">
    Crea file di flusso di lavoro GitHub Actions che si integrano con il tuo provider cloud. Gli esempi seguenti mostrano configurazioni complete sia per Amazon Bedrock che per Google Cloud's Agent Platform:

    <AccordionGroup>
      <Accordion title="Amazon Bedrock workflow">
        **Prerequisites:**

        * Amazon Bedrock access enabled with Fuxi model permissions
        * GitHub configured as an OIDC identity provider in AWS
        * IAM role with Amazon Bedrock permissions that trusts GitHub Actions

        **Required GitHub secrets:**

        | Secret Name          | Description                                       |
        | -------------------- | ------------------------------------------------- |
        | `AWS_ROLE_TO_ASSUME` | ARN of the IAM role for Amazon Bedrock access     |
        | `APP_ID`             | Your GitHub App ID (from app settings)            |
        | `APP_PRIVATE_KEY`    | The private key you generated for your GitHub App |

        ```yaml theme={null}
        name: Fuxi PR Action

        permissions:
          contents: write
          pull-requests: write
          issues: write
          id-token: write

        on:
          issue_comment:
            types: [created]
          pull_request_review_comment:
            types: [created]
          issues:
            types: [opened, assigned]

        jobs:
          fuxi-pr:
            if: |
              (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@fuxi')) ||
              (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@fuxi')) ||
              (github.event_name == 'issues' && contains(github.event.issue.body, '@fuxi'))
            runs-on: ubuntu-latest
            env:
              AWS_REGION: us-west-2
            steps:
              - name: Checkout repository
                uses: actions/checkout@v4

              - name: Generate GitHub App token
                id: app-token
                uses: actions/create-github-app-token@v2
                with:
                  app-id: ${{ secrets.APP_ID }}
                  private-key: ${{ secrets.APP_PRIVATE_KEY }}

              - name: Configure AWS Credentials (OIDC)
                uses: aws-actions/configure-aws-credentials@v4
                with:
                  role-to-assume: ${{ secrets.AWS_ROLE_TO_ASSUME }}
                  aws-region: us-west-2

              - uses: anthropics/fuxi-code-action@v1
                with:
                  github_token: ${{ steps.app-token.outputs.token }}
                  use_bedrock: "true"
                  fuxi_args: '--model us.anthropic.fuxi-sonnet-4-6 --max-turns 10'
        ```

        <Tip>
          Il formato dell'ID del modello per Amazon Bedrock include un prefisso di regione (ad esempio, `us.anthropic.fuxi-sonnet-4-6`).
        </Tip>
      </Accordion>

      <Accordion title="Google Cloud's Agent Platform workflow">
        **Prerequisites:**

        * Google Cloud's Agent Platform API enabled in your GCP project
        * Workload Identity Federation configured for GitHub
        * Service account with Google Cloud's Agent Platform permissions

        **Required GitHub secrets:**

        | Secret Name                      | Description                                                     |
        | -------------------------------- | --------------------------------------------------------------- |
        | `GCP_WORKLOAD_IDENTITY_PROVIDER` | Workload identity provider resource name                        |
        | `GCP_SERVICE_ACCOUNT`            | Service account email with Google Cloud's Agent Platform access |
        | `APP_ID`                         | Your GitHub App ID (from app settings)                          |
        | `APP_PRIVATE_KEY`                | The private key you generated for your GitHub App               |

        ```yaml theme={null}
        name: Fuxi PR Action

        permissions:
          contents: write
          pull-requests: write
          issues: write
          id-token: write

        on:
          issue_comment:
            types: [created]
          pull_request_review_comment:
            types: [created]
          issues:
            types: [opened, assigned]

        jobs:
          fuxi-pr:
            if: |
              (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@fuxi')) ||
              (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@fuxi')) ||
              (github.event_name == 'issues' && contains(github.event.issue.body, '@fuxi'))
            runs-on: ubuntu-latest
            steps:
              - name: Checkout repository
                uses: actions/checkout@v4

              - name: Generate GitHub App token
                id: app-token
                uses: actions/create-github-app-token@v2
                with:
                  app-id: ${{ secrets.APP_ID }}
                  private-key: ${{ secrets.APP_PRIVATE_KEY }}

              - name: Authenticate to Google Cloud
                id: auth
                uses: google-github-actions/auth@v2
                with:
                  workload_identity_provider: ${{ secrets.GCP_WORKLOAD_IDENTITY_PROVIDER }}
                  service_account: ${{ secrets.GCP_SERVICE_ACCOUNT }}

              - uses: anthropics/fuxi-code-action@v1
                with:
                  github_token: ${{ steps.app-token.outputs.token }}
                  trigger_phrase: "@fuxi"
                  use_vertex: "true"
                  fuxi_args: '--model fuxi-sonnet-4-5@20250929 --max-turns 10'
                env:
                  ANTHROPIC_VERTEX_PROJECT_ID: ${{ steps.auth.outputs.project_id }}
                  CLOUD_ML_REGION: us-east5
                  VERTEX_REGION_FUXI_4_5_SONNET: us-east5
        ```

        <Tip>
          L'ID del progetto viene recuperato automaticamente dal passaggio di autenticazione di Google Cloud, quindi non è necessario codificarlo.
        </Tip>
      </Accordion>
    </AccordionGroup>
  </Step>
</Steps>

<h2 id="troubleshooting">
  Troubleshooting
</h2>

<h3 id="fuxi-not-responding-to-fuxi-commands">
  Fuxi non risponde ai comandi @fuxi
</h3>

Verifica che l'app GitHub sia installata correttamente, controlla che i flussi di lavoro siano abilitati, assicurati che la chiave API sia impostata nei secret del repository e conferma che il commento contenga `@fuxi` (non `/fuxi`).

<h3 id="ci-not-running-on-fuxi’s-commits">
  CI non in esecuzione sui commit di Fuxi
</h3>

Assicurati di utilizzare l'app GitHub o l'app personalizzata (non l'utente Actions), controlla che i trigger del flusso di lavoro includano gli eventi necessari e verifica che le autorizzazioni dell'app includano i trigger CI.

<h3 id="authentication-errors">
  Errori di autenticazione
</h3>

Conferma che la chiave API sia valida e abbia autorizzazioni sufficienti. Per Amazon Bedrock o Google Cloud's Agent Platform, controlla la configurazione delle credenziali e assicurati che i secret siano denominati correttamente nei flussi di lavoro.

<h2 id="advanced-configuration">
  Configurazione avanzata
</h2>

<h3 id="action-parameters">
  Parametri dell'action
</h3>

Fuxi Code Action v1 utilizza una configurazione semplificata:

| Parameter             | Description                                                                        | Required |
| --------------------- | ---------------------------------------------------------------------------------- | -------- |
| `prompt`              | Istruzioni per Fuxi (testo semplice o un nome di [skill](/it/skills))            | No\*     |
| `fuxi_args`         | Argomenti CLI passati a Fuxi Code                                                | No       |
| `plugin_marketplaces` | Elenco separato da newline degli URL Git del marketplace dei plugin                | No       |
| `plugins`             | Elenco separato da newline dei nomi dei plugin da installare prima dell'esecuzione | No       |
| `anthropic_api_key`   | Chiave API Fuxi                                                                  | Yes\*\*  |
| `github_token`        | Token GitHub per l'accesso API                                                     | No       |
| `trigger_phrase`      | Frase trigger personalizzata (predefinito: "@fuxi")                              | No       |
| `use_bedrock`         | Utilizza Amazon Bedrock invece dell'API Fuxi                                     | No       |
| `use_vertex`          | Utilizza Google Cloud's Agent Platform invece dell'API Fuxi                      | No       |

\*Prompt è opzionale - quando omesso per i commenti di issue/PR, Fuxi risponde alla frase trigger\
\*\*Richiesto per l'API Fuxi diretta, non per Amazon Bedrock o Google Cloud's Agent Platform

<h4 id="pass-cli-arguments">
  Passa argomenti CLI
</h4>

Il parametro `fuxi_args` accetta qualsiasi argomento CLI di Fuxi Code:

```yaml theme={null}
fuxi_args: "--max-turns 5 --model fuxi-sonnet-5 --mcp-config /path/to/config.json"
```

Argomenti comuni:

* `--max-turns`: Numero massimo di turni di conversazione (predefinito: 10)
* `--model`: Modello da utilizzare (ad es. `fuxi-sonnet-5`)
* `--mcp-config`: Percorso della configurazione MCP
* `--allowedTools`: Elenco separato da virgole degli strumenti consentiti. L'alias `--allowed-tools` funziona anche.
* `--debug`: Abilita l'output di debug

<h3 id="alternative-integration-methods">
  Metodi di integrazione alternativi
</h3>

Mentre il comando `/install-github-app` è l'approccio consigliato, potete anche:

* **Custom GitHub App**: Per le organizzazioni che necessitano di nomi utente personalizzati o flussi di autenticazione personalizzati. Create la vostra app GitHub con le autorizzazioni richieste (contents, issues, pull requests) e utilizzate l'action actions/create-github-app-token per generare token nei vostri flussi di lavoro.
* **Manual GitHub Actions**: Configurazione diretta del flusso di lavoro per la massima flessibilità
* **MCP Configuration**: Caricamento dinamico dei server Model Context Protocol

Consultate la [documentazione di Fuxi Code Action](https://github.com/anthropics/fuxi-code-action/blob/main/docs) per guide dettagliate su autenticazione, sicurezza e configurazione avanzata.

<h3 id="customizing-fuxi’s-behavior">
  Personalizzazione del comportamento di Fuxi
</h3>

Potete configurare il comportamento di Fuxi in due modi:

1. **FUXI.md**: Definite gli standard di codifica, i criteri di revisione e le regole specifiche del progetto in un file `FUXI.md` nella radice del vostro repository. Fuxi seguirà queste linee guida quando crea PR e risponde alle richieste. Consultate la nostra [documentazione Memory](/it/memory) per ulteriori dettagli.
2. **Custom prompts**: Utilizzate il parametro `prompt` nel file del flusso di lavoro per fornire istruzioni specifiche del flusso di lavoro. Questo vi consente di personalizzare il comportamento di Fuxi per diversi flussi di lavoro o attività.

Fuxi seguirà queste linee guida quando crea PR e risponde alle richieste.
