# Decision Framework

> Быстрый фреймворк для принятия решений. Выбор инструмента, подхода, стратегии за <5 секунд. Минимизация analysis paralysis.

- Skill: `zad111ak-ai/decision-framework` (Agent Skill)
- Install (CLI): `npx skillmds@latest add zad111ak-ai/decision-framework`
- Raw SKILL.md: https://api.skillmd.com/api/skills/zad111ak-ai/decision-framework/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: zad111ak-ai (https://skillmd.com/u/zad111ak-ai)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/zad111ak-ai/decision-framework

---


# Decision Framework

Активировать когда: нужно выбрать между несколькими подходами/инструментами, и выбор неочевиден.

**Цель:** Принять решение за <5 секунд. Если дольше — первый разумный вариант без рефлексии.

---

## Primary Decision Tree (выбор инструмента)

```
Что нужно сделать?
│
├─ Ответить на вопрос / дать информацию?
│   ├─ Факт из памяти → ответь сразу
│   ├─ Факт из прошлой сессии → session_search
│   ├─ Факт из внешнего мира → delegate_task(web) [web_search tool не всегда доступен]
│   └─ Сложный ресёрч → delegate_task(web) + сам проверь конкретные цифры из ответа subagent-а
│
├─ Изменить файл?
│   ├─ Одно изменение → patch
│   ├─ Полная перезапись → write_file
│   ├─ Много мелких изменений → execute_code (с patch в цикле)
│   └─ Много файлов → delegate_task
│
├─ Выполнить команду?
│   ├─ Быстрая (ls, pwd, git status) → terminal
│   ├─ Средняя (build, install, test) → terminal(timeout=120)
│   └─ Долгая / фоновая → terminal(background=true, notify_on_complete=true)
│
├─ Создать новое?
│   ├─ Файл → write_file
│   ├─ Проект → delegate_task
│   └─ Папку со структурой → terminal(mkdir -p) + write_file
│
├─ Дебажить?
│   ├─ Простая ошибка → error-recovery
│   ├─ Сложная (стектрейс, неочевидно) → systematic-debugging
│   └─ Subagent ошибка → error-recovery (проверь сам!)
│
└─ Не уверен?
    └─ clarify (спроси пользователя, предложи 2-3 варианта)
```

---

## Secondary Decision Tree (выбор модели исполнения)

```
Сколько шагов?
│
├─ 1 шаг → прямой tool call
├─ 2-5 шагов, независимые → execute_code (группировка)
├─ 2-5 шагов, с зависимостями → последовательные tool calls
├─ 5+ шагов, независимые → delegate_task(tasks=[...]) параллельные волны
├─ 5+ шагов, цепочка → последовательно с verify каждого
├─ Долгая / фоновая / даже если ПК уснёт → cronjob
└─ Хочу попробовать идею → spike
```

---

## Decision Tree для ответов пользователю

```
Пользователь спросил?
│
├─ Как сделать X? → дай команду/код + 1 предложение контекста
├─ Что такое X? → 2-3 предложения
├─ Почему X не работает? → "вот ошибка → вот причина → вот фикс"
├─ Сравни X и Y? → таблица мысленно, ответ списком ключевых различий
├─ "Сделай X" → сделай, потом отчитайся результатом
├─ "Что ты думаешь о X?" → 2 предложения + аргумент
└─ Молчание (не знаешь) → web_search или session_search
```

---

## Когда пропустить Decision Tree

Decision tree не нужен когда:
- Пользователь явно сказал что делать → делай
- Задача тривиальная (прочитать файл, написать 1 строку) → просто сделай
- Это продолжение предыдущего разговора → продолжай тем же подходом
- Единственный разумный вариант → не рефлексируй

---

## Anti-Overthinking Rules

1. **Таймер <5 секунд** — если думаешь дольше, выбери первый разумный вариант
2. **Не ищи идеальный инструмент** — ищи работающий
3. **Первая итерация не должна быть perfect** — она должна быть done
4. **Если не знаешь какой инструмент — terminal.** Terminal — универсальная отмычка
5. **Если terminal сложно — execute_code.** Python + hermes_tools покрывает 90% сценариев
6. **Если execute_code сложно — delegate_task.** Изолируй и делегируй
7. **Если ничего не помогает — clarify.** Спроси пользователя

