# tools

Скилл помогает описать, какие действия нужен агенту, создать определения инструментов и привязать их к варианту конфига в LaunchDarkly.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 1800 установок · ★ 28
- Автор: launchdarkly
- Лицензия: Apache-2.0 · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/launchdarkly/ai-tooling/tree/HEAD/skills/agentcontrol/tools/SKILL.md
- Обновлён: 2026-10-24
- HTML: https://affpapa.org/nevibecode/skills/launchdarkly-tools

## Что делает

Скилл ведёт по шагам: сначала вы решаете, что агент должен уметь — ходить в базу, дёргать API, считать, отправлять уведомления. Потом через MCP-инструмент `create-ai-tool` создаётся определение с ключом, описанием и схемой в виде сырого JSON Schema. На третьем шаге `update-ai-config-variation` привязывает инструменты к варианту конфига, а `get-ai-config` подтверждает, что они там.

Схема хранится в LaunchDarkly в плоском виде `{type, name, description, parameters}`, а приведение к формату провайдера — ваша задача. Для OpenAI Chat Completions это обёртка `{type: "function", function: {...}}`, для Anthropic SDK поле `parameters` переименовывается в `input_schema`, для Bedrock Converse нужен `toolSpec`, для Gemini — `function_declarations`. LangChain и LangGraph берут `ai_config.tools` напрямую через `bind_tools(...)`. Сами обработчики инструментов остаются в коде приложения: LaunchDarkly хранит только схему.

Перед началом нужен настроенный удалённый MCP-сервер LaunchDarkly — без него скилл не заработает. При привязке инструментов передавайте только поле `tools`: если добавить туда `instructions`, `messages`, `model` или `parameters`, правки, сделанные в UI LaunchDarkly, молча затрутся. Если увидите, что привязка инструментов стирает другие поля, не подставляйте их из прошлого ответа `get-ai-config` — так баг маскируется, а устаревшие значения возвращаются.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add launchdarkly/ai-tooling --skill tools -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/tools/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/tools/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add launchdarkly/ai-tooling --skill tools -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/tools/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add launchdarkly/ai-tooling --skill tools -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/tools/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install launchdarkly/ai-tooling tools
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/tools/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add launchdarkly/ai-tooling --skill tools -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/launchdarkly/ai-tooling --path skills/agentcontrol/tools
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/tools/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add launchdarkly/ai-tooling --skill tools -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/launchdarkly/ai-tooling/tree/HEAD/skills/agentcontrol/tools/SKILL.md

## Когда брать
- описать, какие действия нужен агенту, до написания кода
- создать определение инструмента с валидной JSON Schema
- привязать инструменты к конкретному варианту конфига
- проверить, что инструмент действительно привязан к варианту
- привести плоскую схему к формату OpenAI, Anthropic, Bedrock или Gemini

## Примеры запросов агенту
- посмотри, какие инструменты уже есть в проекте, и добавь новый для поиска по базе знаний
- создай инструмент search-knowledge-base и привяжи его к варианту default
- проверь через get-ai-config, что инструмент привязан к варианту

## Похожие
- [qianwen-text](https://affpapa.org/nevibecode/skills/qianwen-text.md) — скилл · 5500 установок
- [langchain4j-ai-services-patterns](https://affpapa.org/nevibecode/skills/langchain4j-ai-services-patterns.md) — скилл · 3700 установок
- [langchain4j-tool-function-calling-patterns](https://affpapa.org/nevibecode/skills/langchain4j-tool-function-calling-patterns.md) — скилл · 3700 установок
- [qwencloud-text](https://affpapa.org/nevibecode/skills/qwencloud-text.md) — скилл · 1600 установок
- [openai-api-development](https://affpapa.org/nevibecode/skills/openai-api-development.md) — скилл · 864 установки
- [feature-flags](https://affpapa.org/nevibecode/skills/devops-skills-feature-flags.md) — скилл · 329 установок

## Другие версии с тем же именем
- [tools · assistant-ui](https://affpapa.org/nevibecode/skills/tools.md) — 6300 установок

Из того же набора: [launchdarkly/ai-tooling](https://affpapa.org/nevibecode/by/launchdarkly/ai-tooling.md) — 29 карточек

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
