forgeplan watch
Запускает демон-наблюдатель за файлами, который отслеживает .forgeplan/**/*.md и переиндексирует любой артефакт, изменяющийся на диске. Идеально подходит для интерактивных сессий, когда вы переключаетесь между редактором Markdown и CLI - изменения становятся доступными для поиска немедленно без ручных вызовов reindex.
Использование
Заголовок раздела «Использование»forgeplan watch -h, --help Вывести справку -V, --version Вывести версиюКак это работает
Заголовок раздела «Как это работает»- Открывает рекурсивный наблюдатель файловой системы, укоренённый в
.forgeplan/. - При каждом событии
CREATE/MODIFY/DELETEдля файла.mdв отслеживаемых директориях артефактов планирует отложенный повторный парсинг. - Повторно парсит изменённый файл, обновляет LanceDB на месте, пересчитывает производные поля (теги, ссылки, оценки).
- Регистрирует каждое событие синхронизации в stdout, чтобы вы могли видеть, что было обнаружено.
- Работает до тех пор, пока вы не отправите
Ctrl-C(SIGINT) - затем корректно завершает работу.
Дебонсинг объединяет быстро следующие друг за другом события (например, когда редактор записывает временный файл, а затем переименовывает его в целевой), так что одно сохранение = одно обновление индекса.
Когда это использовать
Заголовок раздела «Когда это использовать»- Интерактивные сессии написания - вы составляете PRD в VS Code и хотите, чтобы
forgeplan list/forgeplan searchотражали каждое сохранение. - Совместная работа с ИИ-агентами - агент редактирует Markdown, наблюдатель отправляет изменения в LanceDB, следующий вызов
searchвидит обновление без полного цикла переиндексации. - Массовая реорганизация - перемещение/переименование артефактов в файловом менеджере с желанием, чтобы индекс отслеживал эти изменения.
Когда НЕ использовать
Заголовок раздела «Когда НЕ использовать»- Пакетный импорт - предпочтительнее использовать
reindexилиscan-importдля однократного приёма данных. - CI / скриптовые рабочие процессы - однократный
reindexпроще и детерминированнее. - После
git pull- используйтеgit-sync, который точно знает, что изменилось на основе git diff.
# Запустите наблюдатель в одном терминале$ forgeplan watch[watch] observing .forgeplan/ (Ctrl-C to stop)[watch] synced prds/prd-001-auth.md (1 artifact)[watch] synced evidence/evid-042-benchmark.md (1 artifact)
# В другом терминале отредактируйте и сохраните - демон подхватит изменения$ vim .forgeplan/prds/prd-001-auth.md$ forgeplan search "auth" # немедленно видит новое содержимоеОстановите с помощью Ctrl-C:
^C[watch] shutting down, flushing pending syncsАльтернативы
Заголовок раздела «Альтернативы»- Вручную - запустите
forgeplan reindexпосле серии изменений. Проще, если вы сохраняете изменения лишь изредка. - После pull -
forgeplan git-syncсравнивает сORIG_HEADи переиндексирует только те файлы, которые были затронуты слиянием/pull.
Ограничения
Заголовок раздела «Ограничения»- Не является фоновой службой - работает на переднем плане, поэтому используйте его с
tmux, панелью терминала или управлением заданиями вашей оболочки, если хотите, чтобы он был постоянным. - Нет поддержки удалённых файловых систем - опирается на inotify/FSEvents/kqueue (все нативные ОС-наблюдатели), поэтому сетевые монтирования могут пропускать события.
- Одно рабочее пространство - запускайте один
watchдля каждого корневого каталога.forgeplan/.
См. также
Заголовок раздела «См. также»- Обзор CLI
forgeplan reindex- однократная ручная пересборкаforgeplan git-sync- инкрементальная синхронизация после git pullforgeplan serve- MCP-сервер для ИИ-агентов