Skip to content

ntin60775/loom

Repository files navigation

loom — AI-Native Development Environment

npm version

Система разработки программных проектов с помощью ИИ-агентов.

Установка

pi install npm:loom-extension

Что это

loom — это не IDE в традиционном смысле. Это операционная система задач и знаний, которая позволяет ИИ-агентам полностью вести разработку: от спецификации до поставки, от исследования до рефакторинга legacy-кода.

Человек — оператор. Агент — оркестратор и исполнитель. Человек задаёт намерение, агент делает всё остальное.

Принципы

  1. AI-First, Human-Second — Вся спецификация, документация и артефакты оптимизированы для ИИ. Человек не целевая аудитория. Человекочитаемый слой — производная, генерируется автоматически (docs-as-code).
  2. Stack-Agnostic — Работает с любым стеком: код, инфраструктура, исследования, данные, 1С, embedded, ML.
  3. Project-Agnostic — Одинаково хорошо работает для greenfield и legacy. Для legacy — обратная инженерия и накопление знаний. Для greenfield — генерация с нуля.
  4. Task-Centric — Всё вращается вокруг задачи. Задача = атом работы. Задачи накапливают знания и артефакты.
  5. Context as Code — Контекст агента формализован и версионируется. Нет "магии" — всё явно, проверяемо, воспроизводимо.
  6. Accumulative Knowledge — Знания о проекте накапливаются и наследуются между задачами. Агент не начинает с чистого листа.
  7. Pi-Native — Реализован как pi extension. Plan mode и agent mode в рамках единой сессии pi.
  8. Bilingual — AI-документация (system prompts, schemas, code) на английском. UI и пользовательские артефакты на русском. Machine markers на английском.

Архитектура (целевая)

┌─────────────────────────────────────────┐
│         Human Operator Layer            │  ← CLI/TUI, docs-as-code, отчёты
│         (read-only по коду)             │
├─────────────────────────────────────────┤
│         Plan Mode (Orchestrator)        │  ← /plan, брейншторм, артефакты
│    Chief Architect: формулирует задачу  │
├─────────────────────────────────────────┤
│         Agent Mode (Executor)           │  ← исполнение по плану
│    Supervisor: worker → review → commit │
├─────────────────────────────────────────┤
│         Universal Subagents             │  ← tmux windows, чистый контекст
│    scout | worker | reviewer | architect│
├─────────────────────────────────────────┤
│         Knowledge Core                  │  ← task.json, plan.json, sdd.json
│         (JSON primary, markdown derivative)│    правила/, архитектура/, схемы/
├─────────────────────────────────────────┤
│         Git Flow                        │  ← ветки task/, staged-коммиты
│         (review через git diff)         │    reviews в knowledge/
└─────────────────────────────────────────┘

Ключевые решения

  • JSON primary — machine-readable форматы первичны, markdown — производная.
  • Git-based review — reviewer анализирует git diff, не live session.
  • Универсальные субагенты — специализация через prompt + model-config.
  • Минимум графов — агент грепает исходники напрямую, не строит сложные графы.
  • Staged commits — worker коммитит только files-to-commit.json, не git add -A.
  • Локализация — русский для пользователя, английский для AI.

Режимы работы

loom использует трёхрежимную модель, отражающую жизненный цикл задачи.

idle — нейтральное состояние

  • Режим по умолчанию при старте сессии.
  • Доступны базовые инструменты и команды управления проектом: /rule-add, /arch-list, /task-status, /loom-init.
  • Агент не имеет контекста конкретной задачи и не модифицирует код автономно.
  • Используется для инспекции, администрирования и выбора следующей задачи.

plan — планирование

  • Активируется через /plan [описание] или шорткат alt+m из idle.
  • Назначение: формулировка задачи, брейншторм, декомпозиция, создание артефактов (task.json, plan.json, sdd.json).
  • Доступны инструменты для работы с знаниями: loom_create_task, loom_create_plan, loom_spawn_subagent, loom_add_rule и др.
  • После завершения планирования оператор может перейти к исполнению или вернуться в idle.

agent — исполнение

  • Активируется через /agent или шорткат alt+m из plan.
  • Требует активную задачу (status: active в registry.json). Agent Mode — это режим Executor'а: он читает plan.json текущей задачи и пошагово исполняет его, спавня worker и reviewer.
  • Без активной задачи вход в agent невозможен: система не знает, какой план исполнять.
  • Доступны инструменты исполнения: loom_get_next_step, loom_spawn_worker, loom_spawn_reviewer, loom_update_task и др.
  • После завершения всех шагов задача закрывается, и оператор возвращается в idle.

Переключение режимов

  • Шорткат: alt+m — единый хоткей для циклического переключения (работает в любой раскладке).
  • Цикл: idle → plan → agent → idle.
  • При переходе plan → agent система проверяет наличие активной задачи. Если задачи нет — сброс в idle с уведомлением.
  • Режим сохраняется между сессиями в knowledge/.loom-state.json и автоматически восстанавливается при старте.

Текущий статус

v0.3.0 — bootstrap завершён, включён v2 (memory + retrieval).

Реализовано

  • ✅ Трёхрежимная модель: idle → plan → agent (alt+m)
  • ✅ 15 команд и 22 инструмента для планирования и исполнения
  • ✅ Система знаний: 10 задач, 9 JSON-схем, 5 правил, 6 архитектурных компонентов
  • ✅ Verification Matrix: 43/43 инварианта (100% verified)
  • ✅ Memory Layer v2: 4 трека (session, episodic, semantic, procedural)
  • ✅ Scout Retrieval v2: поиск знаний через LLM-субагента
  • ✅ Git-based review pipeline с staged-коммитами
  • ✅ Localization guard (русский для UI, английский для AI-документации)
  • ✅ Domain-aware model routing через subagent-config.json
  • ✅ 155 модульных тестов (vitest + coverage v8)
  • ✅ Audit-log всех изменений проекта

В плане

  • 🔲 CI/CD (GitHub Actions)
  • 🔲 Публикация в npm
  • 🔲 Интеграционные тесты полного цикла Plan → Agent
  • 🔲 Автоматическая генерация markdown из JSON

About

AI-Native Development Environment — операционная система задач и знаний для ИИ-агентов

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors