Umiejętności
Twórz instrukcje SKILL.md wielokrotnego użytku, które agenci mogą wywoływać ręcznie, automatycznie lub w każdej turze.
Umiejętności (Skills) to pakiety instrukcji wielokrotnego użytku dla Agentów LibreChat. Umiejętność opiera się na pliku SKILL.md: frontmatter opisuje, kiedy należy użyć danej umiejętności, a treść w formacie markdown dostarcza agentowi procedurę, zasady, przykłady lub odniesienia, których ma przestrzegać.
Umiejętności (Skills) są przydatne w powtarzalnych zadaniach, takich jak:
- Stosowanie wytycznych dotyczących marki lub pisania
- Przestrzeganie wewnętrznych list kontrolnych przeglądu
- Uruchamianie standardowego procesu badawczego
- Przygotowywanie wyspecjalizowanego przepływu pracy narzędzi
- Pakowanie skryptów wielokrotnego użytku, referencji i zasobów wraz z plikiem instrukcji
Włączanie umiejętności
Funkcja agenta skills jest domyślnie włączona. Administratorzy mogą usunąć ją z listy funkcji endpointu agents, aby ukryć Skills przed użytkownikami.
endpoints:
agents:
capabilities:
- 'deferred_tools'
- 'execute_code'
- 'file_search'
- 'web_search'
- 'artifacts'
- 'subagents'
- 'actions'
- 'context'
- 'skills'
- 'tools'
- 'chain'
- 'ocr'Uprawnienia ról kontrolują również to, kto może używać, tworzyć, udostępniać i publicznie udostępniać umiejętności (skills).
Umiejętności wdrażania
Administratorzy mogą wdrażać umiejętności (Skills) tylko do odczytu z systemu plików za pomocą DEPLOYMENT_SKILLS_DIR.
DEPLOYMENT_SKILLS_DIR=./skillKatalog domyślnie znajduje się w ./skill w głównym folderze projektu. LibreChat ładuje wdrożone Skills podczas uruchamiania i udostępnia je użytkownikom z włączoną funkcją Skills.
Umiejętności wdrażania:
- Są tylko do odczytu w interfejsie użytkownika
- Użyj
deploymentjako ich źródła - Mają pierwszeństwo przed zapisanymi Skills o tej samej nazwie
- Wymagany jest restart LibreChat po dodaniu, usunięciu lub zmianie plików
GitHub Skill Sync
Administratorzy mogą synchronizować (mirror) Skills z repozytoriów GitHub za pomocą skillSync.github w pliku 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}'GitHub Skill Sync:
- Skanuje skonfigurowane ścieżki repozytorium w poszukiwaniu
SKILL.md - Importuje spakowane pliki obok każdej umiejętności
- Przechowuje zduplikowane (mirrored) umiejętności (Skills) z
source: "github" - Aktualizuje odzwierciedlone Skills, gdy zmienia się repozytorium nadrzędne
- Usuwa zduplikowane Skills, które nie istnieją już w skonfigurowanym źródle
- Obsługuje uruchomienia zaplanowane, przy starcie oraz ręcznie wyzwalane przez administratora
Użyj precyzyjnego osobistego tokenu dostępu (fine-grained personal access token) GitHub z uprawnieniami tylko do odczytu (read-only) dla Contents i Metadata dla wybranego repozytorium. Zobacz Struktura obiektu synchronizacji umiejętności, aby uzyskać informacje o wszystkich polach, opcjach poświadczeń, zakresach dzierżawy (tenant scoping) oraz punktach końcowych synchronizacji administratora.
Tworzenie umiejętności (Skill)
Otwórz Skills z panelu bocznego. Możesz napisać umiejętność bezpośrednio w LibreChat lub przesłać plik .md, .zip lub .skill, który zawiera SKILL.md.
Minimalny SKILL.md:
---
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
| Key | Type | Description | Example |
|---|---|---|---|
| name | String | Stabilny identyfikator w formacie kebab-case. Musi zaczynać się od małej litery lub cyfry i może zawierać małe litery, cyfry oraz myślniki. | name: brand-guidelines |
| description | String | Najważniejszy tekst wyzwalający. Opisz, kiedy model powinien użyć tej umiejętności. | description: Use when writing public-facing launch copy. |
| always-apply | Boolean | Automatycznie inicjuje umiejętność w każdej turze, w której jest ona aktywna. | always-apply: true |
| user-invocable | Boolean | Ustaw na false, aby ukryć umiejętność przed ręcznym wywołaniem za pomocą `$`. Domyślnie: true. | user-invocable: false |
| disable-model-invocation | Boolean | Ustaw na true, aby wykluczyć umiejętność z katalogu umiejętności wywoływanych przez model. Ręczne wywołanie jest nadal dozwolone, chyba że `user-invocable` ma wartość false. | disable-model-invocation: true |
| allowed-tools | Array/List of Strings | Tymczasowo łączy te narzędzia w zestaw narzędzi agenta, gdy umiejętność jest stosowana ręcznie lub zawsze. | allowed-tools: ["execute_code"] |
Tryby wywołania
Umiejętności mogą dotrzeć do agenta na trzy sposoby:
- Manual: użytkownik wpisuje
$na czacie i wybiera umiejętność z wyskakującego okienka. - Model-invoked: model wybiera umiejętność z wstrzykniętego katalogu umiejętności i wywołuje narzędzie umiejętności.
- Zawsze stosuj: umiejętność jest przygotowywana w każdej turze, gdy jest aktywna.
Ręczne wywołanie jest jawną intencją użytkownika. Może ono korzystać z umiejętności, które są ukryte przed wywołaniem przez model za pomocą disable-model-invocation: true, o ile user-invocable nie jest ustawione na false.
Zakres Agenta
Agenci muszą mieć włączone Skills, zanim będą mogli korzystać z katalogu.
- Jeśli
skills_enabledma wartość false lub nie jest ustawione dla zapisanego agenta, umiejętności są dla niego nieaktywne. - Jeśli
skills_enabledma wartość true i nie ustawiono listy dozwolonych umiejętności (allowlist), agent może korzystać z pełnego aktywnego katalogu widocznego dla użytkownika. - Jeśli
skills_enabledma wartość true, askillszawiera określone identyfikatory umiejętności, agent zostanie ograniczony do tej listy.
Pozwala to administratorom na globalne udostępnienie funkcji Skills, przy jednoczesnym zachowaniu ukierunkowanego zestawu umiejętności dla każdego agenta.
Aktywne i udostępnione umiejętności
Użytkownicy mogą włączać lub wyłączać umiejętności. Posiadane umiejętności są domyślnie aktywne. Współdzielone umiejętności korzystają z ustawienia domyślnego skonfigurowanego przez administratora, dopóki użytkownik ich nie nadpisze.
Nieaktywne umiejętności są wykluczone z:
- Wyskakujące okienko
$ - Katalog umiejętności wywoływanych przez model
- Zawsze stosuj priming
Dołączone pliki
Przesłane pakiety umiejętności mogą zawierać pliki obok SKILL.md, takie jak:
references/...scripts/...assets/...
Backend przechowuje te pliki wraz z umiejętnością (skill). Agent może rozpoznawać pliki umiejętności, gdy umiejętność jest aktywna i znajduje się w zakresie.
Wskazówka dotycząca tworzenia
Utrzymuj description konkretnym. Jest to najsilniejszy sygnał dla umiejętności wywoływanych przez model. Krótki lub niejasny opis spowoduje zbyt rzadkie wyzwalanie.
Jaka jest ta instrukcja?