Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Competenze

Crea istruzioni SKILL.md riutilizzabili che gli agenti possono richiamare manualmente, automaticamente o a ogni turno.

Le Skills sono pacchetti di istruzioni riutilizzabili per gli Agent di LibreChat. Una skill è incentrata su un file SKILL.md: il frontmatter descrive quando la skill deve essere utilizzata e il corpo in markdown fornisce all'agent la procedura, le regole, gli esempi o i riferimenti da seguire.

Le Skills sono utili per lavori ripetibili come:

  • Applicazione delle linee guida del brand o di scrittura
  • Seguendo le checklist di revisione interna
  • Esecuzione di un flusso di lavoro di ricerca standard
  • Preparazione di un flusso di lavoro con strumenti specializzati
  • Packaging di script, riferimenti e risorse riutilizzabili con un file di istruzioni

Abilita le Skills

La funzionalità dell'agente skills è abilitata per impostazione predefinita. Gli amministratori possono rimuoverla dall'elenco delle funzionalità dell'endpoint degli agenti per nascondere le Skills agli utenti.

endpoints:
  agents:
    capabilities:
      - 'deferred_tools'
      - 'execute_code'
      - 'file_search'
      - 'web_search'
      - 'artifacts'
      - 'subagents'
      - 'actions'
      - 'context'
      - 'skills'
      - 'tools'
      - 'chain'
      - 'ocr'

Le autorizzazioni dei ruoli controllano anche chi può utilizzare, creare, condividere e condividere pubblicamente le skill.

Competenze di Deployment

Gli amministratori possono distribuire Skills in sola lettura dal filesystem con DEPLOYMENT_SKILLS_DIR.

DEPLOYMENT_SKILLS_DIR=./skill

La directory predefinita è ./skill nella root del progetto. LibreChat carica le Skill di deployment all'avvio e le espone agli utenti con la funzionalità Skills abilitata.

Competenze di distribuzione:

  • Sono di sola lettura nell'interfaccia utente
  • Usa deployment come loro origine
  • Hanno la precedenza sulle Skills persistenti con lo stesso nome
  • È necessario riavviare LibreChat dopo che i file sono stati aggiunti, rimossi o modificati

Sincronizzazione delle Skill di GitHub

Gli amministratori possono replicare le Skills dai repository GitHub con skillSync.github in librechat.yaml.

skillSync:
  github:
    enabled: true
    intervalMinutes: 60
    runOnStartup: true
    sources:
      - id: librechat-skills
        owner: your-org
        repo: your-skills-repo
        ref: main
        paths:
          - skills
        skillDiscoveryDepth: 2
        token: '${GITHUB_SKILLS_TOKEN}'

Sincronizzazione competenze GitHub:

  • Scansiona i percorsi del repository configurati alla ricerca di SKILL.md
  • Importa i file in bundle accanto a ogni skill
  • Memorizza le Skills replicate con source: "github"
  • Aggiorna le Skills replicate quando il repository upstream cambia
  • Rimuove le Skill specchiate che non esistono più nella sorgente configurata
  • Supporta esecuzioni pianificate, all'avvio e attivate manualmente dall'amministratore

Utilizza un personal access token fine-grained di GitHub con permessi di sola lettura (read-only) per Contents e Metadata per il repository selezionato. Consulta Skill Sync Object Structure per tutti i campi, le opzioni di credenziali, l'ambito del tenant e gli endpoint di sincronizzazione dell'amministratore.

Crea una Skill

Apri Skills dal pannello laterale. Puoi scrivere una skill direttamente in LibreChat o caricare un file .md, .zip o .skill che contenga SKILL.md.

SKILL.md minimo:

---
name: brand-guidelines
description: Use when writing public-facing content that must follow the company voice and terminology.
---

# Brand Guidelines

Write in a concise, practical tone.
Prefer active voice.
Use product terminology consistently.

Frontmatter

KeyTypeDescriptionExample
nameStringIdentificatore kebab-case stabile. Deve iniziare con una lettera minuscola o una cifra e può contenere lettere minuscole, cifre e trattini.name: brand-guidelines
descriptionStringIl testo di attivazione più importante. Descrivi quando il modello dovrebbe utilizzare la skill.description: Use when writing public-facing launch copy.
always-applyBooleanInnesca automaticamente l'abilità in ogni turno in cui è attiva.always-apply: true
user-invocableBooleanImpostare su false per nascondere la skill dall'invocazione manuale tramite `$`. Predefinito: true.user-invocable: false
disable-model-invocationBooleanImpostare su true per escludere la skill dal catalogo delle skill richiamabili dal modello. L'invocazione manuale è ancora consentita a meno che `user-invocable` non sia false.disable-model-invocation: true
allowed-toolsArray/List of StringsUnisce temporaneamente questi strumenti al set di strumenti effettivo dell'agente quando la skill viene applicata manualmente o sempre.allowed-tools: ["execute_code"]

Modalità di invocazione

Le Skills possono raggiungere un agente in tre modi:

  • Manuale: l'utente digita $ nella chat e seleziona una skill dal popover.
  • Model-invoked: il modello sceglie una skill dal catalogo delle skill iniettato e richiama lo strumento della skill.
  • Always apply: l'abilità viene preparata in ogni turno quando attiva.

L'invocazione manuale è un'intenzione esplicita dell'utente. Può utilizzare skill che sono nascoste dall'invocazione del modello con disable-model-invocation: true, a condizione che user-invocable non sia false.

Ambito dell'agente

Gli agenti devono avere le Skills abilitate prima di poter utilizzare il catalogo.

  • Se skills_enabled è false o non impostato su un agente persistente, le skills sono inattive per quell'agente.
  • Se skills_enabled è impostato su true e non è definita alcuna allowlist di skill, l'agente può utilizzare l'intero catalogo attivo visibile all'utente.
  • Se skills_enabled è impostato su true e skills contiene ID di skill specifici, l'agente viene limitato a quell'elenco.

Ciò consente agli amministratori di esporre la funzionalità Skills a livello globale, mantenendo al contempo focalizzato l'insieme di skill utilizzabili da ciascun agente.

Skill attive e condivise

Gli utenti possono attivare o disattivare le skill. Le skill possedute sono attive per impostazione predefinita. Le skill condivise utilizzano l'impostazione predefinita configurata dall'amministratore finché l'utente non le sovrascrive.

Le competenze inattive sono escluse da:

  • Il popover $
  • Il catalogo delle abilità richiamate dal modello
  • Priming sempre applicato

File in bundle

I bundle di skill caricati possono includere file insieme a SKILL.md, come ad esempio:

  • references/...
  • scripts/...
  • assets/...

Il backend memorizza quei file con la skill. L'agente può risolvere i file della skill quando la skill è attiva e nell'ambito di riferimento.

Suggerimento per la creazione

Mantieni la description specifica. È il segnale più forte per le competenze richiamate dal modello. Una descrizione breve o vaga porterà a un sotto-utilizzo.

Com’è questa guida?