Skip to content
cccskills
FreePublished on GitHub

local-llm

Локальный LLM-стек на Mac (Apple Silicon, MLX) под приватность и запасной режим. NL-вход к установке/запуску/переключению моделей + слой суждения для мониторинга новых моделей. Тонкая обёртка над скриптами РП404, не замена.

The English summary is being prepared. Showing the original description.

Run score Not tested

See how to install

Files included (1)

  • SKILL.md8.0 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Локальный LLM-стек (local-llm)

Scope: NL-вход к локальному LLM-стеку (установка / запуск / статус / переключение модели) + слой суждения для оценки находок монитора новых моделей. Not in scope: механика (установка, состояния, переключение, архив) — она в детерминированных скриптах (различение «Скрипт ≠ Агент»). Скилл их вызывает, не дублирует логику. Источник истины статусов моделей — каталог + model-lifecycle.py. JOB стека: приватность (задачи с персональными данными, что нельзя слать в облако) + запасной режим (без сети / кончились токены облака). См. ADR-001-local-llm-stack.md.

Расположение бандла

Управляющие скрипты — самодостаточный бандл (каждый работает из своей директории). Путь резолвится через env, дефолт — extensions/local-llm/ внутри IWE-установки:

BUNDLE="${IWE_LOCAL_LLM_DIR:-$HOME/IWE/extensions/local-llm}"
  • venv стека: ~/.iwe-local-llm/.venv (ставит установщик).
  • Активная модель + состояние сервера: ~/.iwe-local-llm/ (active-model, server.pid, server.log).

When to use

  • «поставь / установи локальную модель» → установка под железо (Шаг 1).
  • «покажи модели» / «какие модели есть» → список по состояниям (Шаг 2).
  • «запусти / останови» / «статус» → управление сервером (Шаг 2).
  • «переключи модель» / «переключи на 14B» → смена активной модели (Шаг 3).
  • «какие новые модели вышли» / «проверь новые модели» → мониторинг + суждение об adopt (Шаг 4).

Algorithm

Шаг 1 — установка (механика → скрипт)

bash "$BUNDLE/install-local-llm.sh"          # рекомендованная модель под железо
bash "$BUNDLE/install-local-llm.sh" --max    # самая тяжёлая влезающая

Установщик идемпотентен: детект железа → выбор модели из каталога под память → venv + mlx-lm → скачивание → smoke. Показать пользователю итог (модель, что сервер поднялся).

Шаг 2 — запуск / статус / список (механика → скрипт)

bash "$BUNDLE/iwe-local-llm.sh" start    # поднять сервер (OpenAI-совместимый, localhost:8080)
bash "$BUNDLE/iwe-local-llm.sh" status   # активная модель + состояние сервера
bash "$BUNDLE/iwe-local-llm.sh" models   # все модели по четырём состояниям + факт скачивания
bash "$BUNDLE/iwe-local-llm.sh" stop     # остановить сервер
bash "$BUNDLE/iwe-local-llm.sh" test     # проверка совместимого интерфейса (SHIM_OK)

Инструменты IWE подключаются к http://127.0.0.1:8080/v1/chat/completions тем же клиентом, что и к облаку.

Шаг 3 — переключение модели (механика → скрипт)

bash "$BUNDLE/iwe-local-llm.sh" use <model-id>    # скачать + активировать + перезапуск
bash "$BUNDLE/iwe-local-llm.sh" pull <model-id>   # только скачать для тестирования (→ testing)
bash "$BUNDLE/iwe-local-llm.sh" archive <model-id># вывести в архив

use переводит прежнюю активную в testing (остаётся скачанной). Ровно одна активная. Не редактировать model-catalog.yaml руками — только через iwe-local-llm.sh / model-lifecycle.py (сохраняет комментарии, держит инвариант одной active).

Шаг 4 — мониторинг новых моделей (суждение → LLM-работа)

BUNDLE="${IWE_LOCAL_LLM_DIR:-$HOME/IWE/extensions/local-llm}"
PY3="$(bash "${IWE_SCRIPTS:-$HOME/IWE/scripts}/lib/find-python3.sh")" && "$PY3" "$BUNDLE/model-monitor.py"    # дайджест трендовых моделей, которых нет в каталоге

Монитор только находит кандидатов. Решение об adopt — суждение агента (это и есть LLM-работа, ради которой скилл существует):

  1. Сравнить кандидата с текущей активной по качеству (LMArena / бенчмарки, если пользователь даёт ссылку или просит свериться).
  2. Проверить соответствие JOB: приватность (оффлайн, без телеметрии) + влезает в память Mac (min_ram_gb ≤ железо).
  3. Дать рекомендацию: добавить в каталог (model-lifecycle.py add) + pull для сравнения, либо пропустить с причиной.
  4. Решение о смене active — за пользователем; скилл предлагает, не переключает молча.

Anti-patterns

  • Дублировать механику в скилле. Состояния/переключение/архив — в скриптах. Скилл вызывает, не переписывает (OwnerIntegrity: каталог = источник истины).
  • Молча переключать активную модель по находке монитора. Adopt — решение пользователя после сравнения качества.
  • Слать содержимое промптов в облако при выборе локального стека под приватность — стек именно для того, чтобы этого не делать.
  • Править model-catalog.yaml руками — ломает комментарии и инвариант одной active; только через lifecycle-команды.
<!-- USER-SPACE --> <!-- /USER-SPACE -->

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Регистрация косяка агента в системе учёта WP-316 L1. Без LLM — детерминированный скрипт без WP Gate.

The English summary is being prepared. Showing the original description.

TserenTserenov/FMT-exocortex-template63Updated Oct 23, 2026

Разбор extraction-reports со status pending-review — решение R15 (accept/reject/defer) ЖИВЫМ ПИЛОТОМ, запись в Pack, обновление статуса, коммит. Вызывать при Close при наличии N>0 pending-review отчётов.

The English summary is being prepared. Showing the original description.

TserenTserenov/FMT-exocortex-template63Updated Oct 23, 2026

Оценка архитектурного решения по 7 характеристикам ЭМОГССБ (v3.1 — фильтр допуска, атрибут-сценарии, совет затронутых сторон; профиль без агрегатного балла, conjunctive screening). Используй когда пользователь предлагает архитектурное решение, новый инструмент или системное изменение.

The English summary is being prepared. Showing the original description.

TserenTserenov/FMT-exocortex-template63Updated Oct 23, 2026

Classifies raw pilot request → structured JSON {task_type, class, artifact, budget_estimate, confidence, routing_tag, resolution_path, schema_version, result_type, expected_result_kind, result_kind_resolution, hypothesis_relation}. Keyword-fast (<200ms) or Haiku fallback (<60s). Does NOT create WP or call executor.

The English summary is being prepared. Showing the original description.

TserenTserenov/FMT-exocortex-template63Updated Oct 23, 2026

Audit repository documentation: detect drift between code and docs, report coverage by category. Run manually or on triggered drift critical.

The English summary is being prepared. Showing the original description.

TserenTserenov/FMT-exocortex-template63Updated Oct 23, 2026

Аудит пользовательской инсталляции IWE. Запускает scripts/iwe-audit.sh + MCP healthcheck + smoke-test ритуала через sentinel-механику (контракт dry-run-contract.md), передаёт отчёт subagent'у в роли VR.R.002 Аудитор (context isolation) → verdict ✅/⚠️/❌ по 6 компонентам (Inventory, L1 drift, {{GOVERNANCE_REPO}}, L3 customizations, MCP, ритуал). Используй после restore из бэкапа, после update.sh, или при еженедельной сверке.

The English summary is being prepared. Showing the original description.

TserenTserenov/FMT-exocortex-template63Updated Oct 23, 2026

See all skills by TserenTserenov

Report a problem with this skill