# Portability: UNIVERSAL
# Last validated: 2026-05-17
# Next review: 2027-05-17

ИНСТРУМЕНТЫ - Управление инструментами
-----------------------

ОПИСАНИЕ
------------
BACH управляет тремя типами инструментов:
1. Инструменты Python: скрипты в инструментах/(кодирование, контроль, миграция)
2. Инструменты CLI: программы командной строки (git, ffmpeg, python).
3. Внешние инструменты ИИ: веб-службы ИИ (ChatGPT, Midjourney)

CLI и внешние инструменты управляются в базе данных (bach.db/tools).

КОМАНДЫ CLI
-----------
bach --tools list              Перечислить инструменты Python (файловая система)
bach --tools db                Перечислить все инструменты БД (CLI + внешние)
bach --tools db --type cli     Показать только инструменты CLI
bach --tools db --type external Nur externe KI-Tools anzeigen
bach --tools show <n>       Показать сведения об инструменте
bach --tools run <n> [args] Python-Tool ausfuehren
bach --tools search <term>     Инструменты поиска (файловая система + БД)
bach --tools migrate           Начать миграцию соединения

ПРЯМОЙ ВЫЗОВ ЧЕРЕЗ BACH (рекомендуется)
---------------------------------
Инструменты можно вызывать напрямую через bach.py - без --tools run:

  bach <toolname> [argumente]

Примеры:
  bach python_cli_editor script.py --show-all     Показать структуру
  bach c_encoding_fixer datei.py                  Исправить кодировку
  bach c_import_organizer datei.py --save         Сортировать импорт
  bach c_json_repair kaputt.json                  Восстановить JSON
  bach c_pycutter grosse_datei.py                 Разделить файл
  bach c_sqlite_viewer data/bach.db               Показать БД
  bach code_analyzer projekt/                     Анализ кода

Преимущества:
  - Короче: bach --tools запускает c_encoding_fixer file.py
  - Возможно завершение вкладки
  - Тот же синтаксис, что и при прямом вызове Python

Примечание: работает для всех инструментов в инструментах/*.py

ОБЗОР ИНСТРУМЕНТОВ
-----------------
Различные способы поиска доступных инструментов:

  bach --tools list              Все инструменты Python (tools/*.py)
  bach --tools db                Все инструменты БД (CLI + внешний)
  bach --tools search <term>     Поиск по термину
  bach tool suggest "problem"    Рекомендации на основе проблем
  bach --help tools              Эта справка
  bach --help tools/_index       Указатель документации по инструментам

Справка по конкретному инструменту:
  bach <tool> --help             Инструмент Справка по argparse
  bach --help tools/<tool>       Подробная документация (если доступна)

TOOL-DISCOVERY (НОВАЯ версия 1.1.27)
----------------------------
Сопоставление инструментов на основе проблем: опишите проблему и получите рекомендации по инструментам.

bach tool suggest "Encoding-Problem in Datei"  Рекомендации по инструментам, основанные на проблеме
bach tool suggest "JSON reparieren"            Находит json_repair_tool.py
bach tool patterns                             Показать все шаблоны проблем

Как это работает:
1. Извлечение ключевых слов из описания проблемы.
2. Сопоставление с более чем 15 категориями проблем.
3. Рекомендация подходящих инструментов на основе оценок

 Категории проблем: кодирование, json_repair, code_anaанализ, import_issues,
форматирование, база данных, преобразование, резервное копирование, очистка, документация,
path_issues, дубликат, emoji, немецкий_текст, налог

Код: инструменты/tool_discovery.py (195 строк)

PYTHON-TOOLS (tools/)
---------------------
Соглашение о префиксах (см.: bach --help именование):

  c_* CLI, оптимизированный для искусственного интеллекта (Claude/recludOS)
             - Четкие выходные данные, безопасные для кодирования, безопасные для JSON.
  b_* Ядро BACH (критическое для системы)
  a_* Агент Бегун
  t_* Инструменты тестирования
  m_* Техническое обслуживание/техническое обслуживание
  g_* Инструменты генератора

Устаревшие префиксы (будут перенесены):
  агент_* -> а_*
  резервная копия_* -> b_* или m_*
  migrate_* -> m_*

Префиксы домена (пребывание):
  ollama_* Интеграция с олламой
  налог_* Налоговые инструменты (вtools/tax/)

ИНСТРУМЕНТЫ PYTHON ПО ФУНКЦИЯМ
--------------------------

### CLI, доступный (через обработчик)

  Функция обработчика каталогов
  ------------- -------------------- ----------------------------
  тестирование/ --test тестовая система (тесты B/O/E)
  генераторы/ --maintain генерировать генераторы навыков/агентов
  сопоставление/(прямое) сопоставление объектов

### основные функции

  Функция инструмента
  ---------------------- ----------------------------
  autolog.py Система автоматического журналирования
  autolog_analyzer.py Анализ AutoLog
  backup_manager.py Управление резервным копированием
  injectors.py Система инжекторов
  c_dirscan.py Сканирование каталога
  session_analyzer.py Анализ сеанса
  time_system.py Система времени
  token_monitor.py Мониторинг токенов
  Success_tracker.py Отслеживание успеха
  fs_protection.py Защита файловой системы

### Обслуживание (через обработчик --maintain)

  Функция командной строки инструмента CLI
  ----------------------- ------------------------- ----------------------------
  doc_update_checker.py bach --поддерживать проверку документации документации
  c_duulate_detector.py bach --поддерживать дубликаты Обнаружение дубликатов
  c_pattern_tool.py bach --поддерживать шаблон Шаблоны имен файлов
  c_tool_scanner.py bach --maintain сканирование Обнаружение инструментов CLI
  c_file_cleaner.py bach --maintain clean Удалить старые файлы
  c_json_fixer.py bach --maintain json Исправить JSON
  c_sync_registry.py Синхронизировать реестр
  c_json_registry_cleaner.py Очистка реестра
  backup_manager.py Управление резервным копированием
  nulcleaner.py Удалить символ NUL

### Инструменты генератора (tools/generators/)

Функция командной строки инструмента CLI
  ----------------------- ------------------------- ----------------------------
  kill_generator.py bach --maintaingenerate Создать структуры навыков
  экспортер.py bach --поддерживать экспорт Навыки экспорта/агенты

  Профили дляkill_generator:
    MICRO — только файлы, без системы папок
    СВЕТ - Минимальный (SKILL.md + конфиг + данные)
    СТАНДАРТ – Стандартный навык с простой памятью.
    РАСШИРЕННОЕ — Сложный навык с микронавыками

### Инструменты картографирования (инструменты/картографирование/)

  Функция инструмента
  ---------------------- ----------------------------
  query_features.py Матрица функций запроса
  База данных Populate_features.py
  Схема базы данных Schema.sql

  Важно: необходимо изменить переменную DB_PATH!

### Coding-Tools

  Функция инструмента
  ---------------------- ----------------------------
  c_encoding_fixer.py Исправить кодировку
  c_emoji_scanner.py Найти/заменить эмодзи
  c_standard_fixer.py Применить стандарты кода
  c_json_repair.py Восстановить JSON
  c_json_fixer.py Исправить JSON (старый)
  c_import_organizer.py Сортировка импорта
  c_import_diagnose.py Найдите проблемы с импортом
  c_indent_checker.py Проверить отступ
  c_umlaut_fixer.py Исправить умлауты
  c_german_scanner.py Найдите немецкие слова
  c_method_analyzer.py Методы анализа
  c_pycutter.py Разделить файлы Python
  c_sqlite_viewer.py Просмотр баз данных SQLite
  c_license_generator.py Создание файлов лицензий
  c_md_to_pdf.py Уценка в PDF
  Преобразование формата c_universal_converter.py
  c_universal_compiler.py Универсальный компилятор
  c_youtube_extractor.py Извлечение YouTube
  c_code_analyzer.py Анализ кода
  c_code_generator.py Генерация кода
  c_python_cli_editor.py Структурированное редактирование Python
  c_structure_generator.py Генератор структуры
  c_header_migrate.py Миграция заголовка
  call_graph.py Анализ графа вызовов

### Инструменты управления

  Функция инструмента
  ---------------------- ----------------------------
  steuer_scanner.py Сканировать квитанции
  синхронизация Tax_sync.py
  Tax_batch.py Пакетная обработка
  Tax_apply.py применить категории
  setup_steuer_db.py Настройка БД
  scan_new_belege.py Обнаружение новых квитанций
  rename_belege.py Переименовать квитанции
  show_posten.py Показать сообщения
  temu_ocr_batch.py Пакетное распознавание текста Temu
  ocr_engine.py Механизм распознавания текста

### Инструменты Ollama

  Функция инструмента
  ---------------------- ----------------------------
  ollama_benchmark.py тесты
  ollama_summarize.py Сводки
  ollama_worker.py Рабочий процесс

### Инструменты тестирования (tools/testing/)

  Функция командной строки инструмента CLI
  ----------------------- ------------------------- ----------------------------
  test_runner.py bach --test run Выполнение теста
  run_b_tests.py bach --test self Выполнить B-тесты
  run_o_tests.py bach --test ops Выполнить O-тесты

  Тестовые профили (testing/profiles/):
    QUICK.json — Быстрая проверка
    STANDARD.json — Стандартный пакет
    FULL.json — Полная проверка
    MEMORY_FOCUS.json — тесты памяти
    TASK_FOCUS.json — тесты задач
    OUTPUT.json — выходные тесты
    OBSERVATION.json — тесты наблюдения

### Интеграция MCP (НОВИНКА v2.2)

  Функция инструмента
  ---------------------- ----------------------------
  mcp_server.py Сервер MCP v2.0 (654 строки)
                            - 23 инструмента (Задача, Память, Урок, Резервное копирование, Управление)
                            - 8 ресурсов (Задачи, Статус, Память, Навыки, Контакты)
                            - 3 подсказки (ежедневный брифинг, обзор задач, сводка сеанса)

  Установка:
    pip установить mcp
    инструменты Python/mcp_server.py

  Конфигурация кода Клода (~/.claude/claude_code_config.json):
    {
      "мкпсерверс": {
        "бах": {
          «команда»: «питон»,
          "args": ["C:/path/to/system/tools/mcp_server.py"]
        }
      }
    }

### Управление навыками (НОВИНКА)

Функция инструмента
  ---------------------- ----------------------------
  c_skill_init.py Инициализировать структуру навыков
  c_skill_package.py Пакет навыков
  c_skill_validate.py Проверка навыков
  навык_export.py Экспорт навыков
  kill_header_gen.py Создать заголовок навыка
  kill_help_gen.py Создать справку по навыкам

### Инструменты проекта (НОВИНКА)

  Функция инструмента
  ---------------------- ----------------------------
  c_project_bundler.py Сборщик проектов
  c_audit_bundler.py Создать пакет аудита
  c_path_healer.py Восстановление пути
  Batch_file_ops.py Пакетные операции с файлами

### Анализ и мониторинг

  Функция инструмента
  ---------------------- ----------------------------
  проверка базы данных db_check.py
  debug_scan.py Отладочное сканирование
  forensic_db_scan.py Криминалистическое сканирование базы данных
  folder_diff_scanner.py Анализ различий папок
  custom_anasis.py Пользовательский анализ
  Schema_reader.py Читатель схемы
  проблемы_first.py Проблемы – первый подход
  report.py Система отчетов

### Генератор и помощник

  Функция инструмента
  ---------------------- ----------------------------
  c_dictionary_builder.py Конструктор словарей
  урок_trigger_generator.py Генератор триггеров урока
  theme_packet_generator.py Генератор тематических пакетов
  workflow_trigger_generator.py Генератор триггеров рабочего процесса
  триггер_maintainer.py Обслуживание триггера
  context_compressor.py Сжатие контекста
  Translate_batch.py Пакетный перевод

### Интеграция и импорт

  Функция инструмента
  ---------------------- ----------------------------
  Gemini_llm.py Интеграция Gemini LLM
  data_importer.py Импорт данных
  document_indexer.py Индексирование документов
  doc_search.py Поиск документов
  inbox_watcher.py Наблюдатель за входящими сообщениями
  user_console.py Пользовательская консоль

### Агенты и автоматическое обнаружение

  Функция инструмента
  ---------------------- ----------------------------
  c_headless_agent.py Безголовый агент
  bach_auto_discovery.py Система автоматического обнаружения
  Tool_auto_discovery.py Автоматическое обнаружение инструмента

### Инструменты пользователя (tools/_user/)

  Системные инструменты (не для распространения):
  - auto_backup_orchestrator.py резервное копирование FTP
  - fritzbox_wlan_control.py управление WLAN
  - мониторинг резервного копирования backup_watchdog.py

  См.: инструменты/_user/README.md

CLI-TOOLS (bach.db)
-------------------
Доступные категории:
  архив 7z (сжатие)
  редактор блокнот++
  код ide (VS Code)
  мультимедиа ffmpeg (видео/аудио)
  сетевой локон, SSH
  package_manager пип, pip3
  Python во время выполнения, узел
  text_processing grep
  version_control git

ВНЕШНИЕ ИНСТРУМЕНТЫ ИИ (bach.db)
--------------------------
Категории:
  llm ChatGPT, Клод, Близнецы, Второй пилот, Мистраль, Грок
  image Midjourney, Идеограмма, Леонардо, Поток, Великолепный
  видео Взлётно-посадочная полоса, Люма, Пика, Звук
  аудио ElevenLabs, Suno, Udio, Descript, Auphonic
  исследование Растерянность, Консенсус, Выявление, NotebookLM, Scite
  Курсор разработчика, Bolt, Рабочая область Copilot, Replit, Windsurf
  edu Gamma, Notion AI, Goblin Tools, Taskade

СХЕМА БАЗЫ ДАННЫХ
----------------
Таблица: инструменты (в data/bach.db)

Важные поля:
- имя ТЕКСТ УНИКАЛЬНЫЙ
- тип ТЕКСТ (cli, внешний, внутренний)
- категория ТЕКСТ
- команда ТЕКСТ (для инструментов CLI)
- конечная точка ТЕКСТ (для внешних инструментов)
- описание ТЕКСТ
- возможности JSON-массива
- использовать_для ТЕКСТА
- is_available BOOLEAN

МИГРАЦИЯ
---------
Инструменты были перенесены из файлов JSON в базу данных.
Исходные файлы больше не существуют (соединения/ были распущены).

Проверьте статус миграции:
  bach --tools migrate --status

Если необходима повторная миграция (только со сбросом):
  инструменты Python/migrate_connections.py

ПРИМЕРЫ
---------
# Список инструментов Python
bach --tools list

# Все зарегистрированные инструменты (БД)
bach --tools db

# Только инструменты CLI
bach --tools db --type cli

# Подробности об инструменте
bach --tools show ffmpeg
bach --tools show chatgpt

# Инструмент запуска
bach --tools run c_encoding_fixer datei.py

# Прямой вызов (рекомендуется)
bach c_encoding_fixer datei.py
bach c_skill_init neuer_skill
bach c_project_bundler ./projekt

# Поиск
bach --tools search video

# Инструменты обслуживания
bach --maintain list
bach --maintain docs
bach --maintain pattern ./docs --dry-run

# Инструменты тестирования
bach --test profiles
bach --test run QUICK

# Сервер MCP (НОВЫЙ)
инструменты Python/mcp_server.py
# Затем доступно через Claude Code (bach:/Resources + Tools)

ИНВЕНТАРЬ ИНСТРУМЕНТОВ (~83 инструмента)
-------------------------
Общая статистика по категориям:

Номер категории Описание
  ----------------- ------ ----------------------------
  Агентская система/Framework 8, интеграция сервисов, MCP
  Разработка 25 анализ кода, тестирование, утилиты проекта
  База данных 8 SQLite, миграция, схема
  Документ 15 OCR, конвертация, обработка текста
  Финансовые/налоговые 22 Полный налоговый пакет
  Обслуживание 15 Резервное копирование, распространение, очистка, реестр
  Медиа 2 Извлечение YouTube, Gemini LLM
  Утилита/Помощник 22 Политики, Генераторы, Мониторинг, Другое
  Управление навыками 6 Навык Инициализация, Пакет, Проверка, Экспорт

Соглашение об именах (префиксы):

  c_* CLI, оптимизированный для ИИ (более 40 инструментов)
  b_* Ядро BACH (критическое для системы)
  a_* Инструменты запуска агентов
  t_* Инструменты тестирования
  m_* Обслуживание инструментов
  g_* Инструменты генератора
  (-) Домен/Утилиты (более 43 инструментов)

Потенциал синергии с внешними пакетами:

  Синергия инструментов BACH с
  ---------------------- ----------------------------
  Налоговый/Финансовый пакет (Бюджет, Расходы)
  ocr_engine.py DokuZentrum Pro
  c_md_to_pdf.py Экспорт обсидиана
  c_youtube_extractor.py Media Suite

Источник: Архивировано в user/_archive/BACH_NATIVE_TOOLS_MAPPING.md

ДЕТАЛЬНАЯ ДОКУМЕНТАЦИЯ ПО ИНСТРУМЕНТУ
--------------------------------
Для сложных инструментов имеется подробная документация в docs/help/tools/:

  Доступная документация:
  ---------------------------
  docs/help/tools/python_cli_editor.txt Структурированное редактирование файлов Python
                                     (Показать, вставить классы/методы,
                                     удаление, редактирование рабочего процесса, экспорт)

  docs/help/tools/_index.txt Указатель всей документации по инструментам

  Поиск:
  ------
  bach --help tools/python_cli_editor    Прочтите подробную документацию
  bach --help tools/_index               Обзор доступной документации
  bach --help tools                      Справка по этому общему инструменту

  Когда инструменту нужна собственная документация?
  ----------------------------------
  - Множество опций (>10 параметров)
  - Возможны сложные рабочие процессы
  - Часто используемый
  - Примеры, важные для понимания

  Простые инструменты используют только:
  — Строка документации в файле Python.
  - argparse --help (bach <tool> --help)

CONTEXT INJECTOR (автоматические подсказки инструментов)
---------------------------------------------
ContextInjector распознает ключевые слова и рекомендует подходящие инструменты.
Примеры:

  Рекомендации по инструменту подсказки ключевых слов
  ------------------------------------------
  «проблема с кодировкой» bach c_encoding_fixer <файл>
  «сортировка импорта» bach c_import_organizer <файл>
  «редактировать Python» Бах c_python_cli_editor <файл> --show-all
  «разделить файл» bach c_pycutter <файл>
  "просмотр sqlite" бах c_sqlite_viewer <db>
  «Инструмент поиска» Инструмент Баха предлагает «описание»
  «создать навык» bach c_skill_init <имя>
  «Пакет проектов» bach c_project_bundler <путь>
  «путь восстановления» bach c_path_healer <файл>
  «start mcp» инструменты Python/mcp_server.py

См.: bach --help инжекторы (полный список триггеров)

СМОТРИ ТАКЖЕ
----------
docs/help/tools/_index.txt Подробная документация по инструменту (указатель)
docs/help/tools/*.txt Документация по отдельному инструменту
docs/help/injectors.txt Автоматические примечания к инструментам (ContextInjector)
bach --help connections    Управление соединениями
bach --help dirscan           Сканер каталогов (мониторинг изменений)
bach --help maintain       Инструменты обслуживания
bach --help test           Тестовая система
bach --help naming         Соглашения об именах (префиксы инструментов)
