Расширения - это обычно разнообразные списки MCP-серверов, к которым агент может подключаться. MCP - это стандарт, проталкиваемый Anthropic(авторы Claude) для взаимодействия агентов с внешним миром. Например, у вас на сервере может быть установлена Jira. И там MCP сервер, к которому агент может подключиться чтобы достать таски.
Но не только. Так как TUI написаны на ноде, это могут быть какие-то библиотеки ноды.
У Gemini CLI набор расширений лежит тут: https://geminicli.com/extensions/
У Claude Code вот тут есть куча всего: https://claudemarketplaces.com/
Скиллы это специальные плейбуки для TUI агентов, которые позволяют им запоминать как делать определенные действия, чтобы не описывать их снова и снова. Скиллы могут иметь разное назначение - как от банального «вызови тот скрипт чтобы послать email», так и до сложных оркестраторов разных задач использующих MCP.
Скиллы лежат обычно в директории ~/.gemini/skills или ~/.claude/skills
Фактически, каждый скилл это директория вида
название/
- SKILL.md
- scripts/
- references/
- assets/
SKILL.md это плейбук, и это обязательный элемент, все остальные - опциональные. Фактически, это Markdown произвольного вида, полустандартизированный.
Также в директории скилла могут быть скрипты, в директории scripts/. Могут быть references/, в котором всякая документация и гайдлайны. И могут быть assets/, в которых лежат всякие файлы, статика, и так далее.
Вот пример простейшего скилла: pc-speaker.
В директории скиллов агента, делаем поддиректорию, pc-speaker, в ней:
SKILL.md (name и descriptions - очень важны, с помощью них агент узнает, что скилл делает)
---
name: pc-speaker
description: Triggers a beep sound through the PC speaker or system audio. Use for audible notifications, signaling task completion, or alerting to errors across Windows, Linux, and macOS.
---
# PC Speaker
This skill provides a cross-platform way to trigger a system beep. It is particularly useful for notifying the user when a long-running background task has finished or when an error requires immediate attention.
## Usage
To trigger a beep, execute the `scripts/beep.cjs` script using Node.js. The script automatically detects the platform and uses the most appropriate method.
### Command
```bash
node scripts/beep.cjs
```
### Platform Implementations
- **Windows**: Executes a PowerShell command: `[Console]::Beep(800, 200)`.
- **macOS**: Executes an AppleScript command: `osascript -e 'beep'`.
- **Linux/Unix**: Writes the ASCII Bell character (`\x07`) to stdout.
Далее создаем файл скрипта, который будет вызываться агентом:
#!/usr/bin/env node
const { execSync } = require('child_process');
function beep() {
const platform = process.platform;
try {
if (platform === 'win32') {
execSync('powershell.exe -NoProfile -Command "[Console]::Beep(800, 200)"', { stdio: 'ignore' });
} else if (platform === 'darwin') {
execSync("osascript -e 'beep'", { stdio: 'ignore' });
} else {
process.stdout.write('\x07');
}
} catch (err) {
process.exit(1);
}
}
beep();
Все! Теперь скилл надо активировать. Например, в Gemini CLI, набрать /skills reload, и затем /skills enable pc-speaker
После этого можно писать агенту в произвольном виде, что-нибудь типа «сделай бип» или «вызови pc speaker», и он будет пиликать.
Вот пример(может еще в процессе спросить разрешение на вызов ноды, это как разрешения настроены):
> вызови звук бип
✦ OK. Звуковой сигнал отправлен.
Давайте тут собирать полезные, и/или интересные скиллы, и MCP сервера, к которым агенты могут подключаться.
inb4, надо бы тему закрепить

