Skip to Content
👋 Добро пожаловать в документацию lite-fsm!
APICLI

CLI

@lite-fsm/cli публикует команду lite-fsm. Пакет находится в alpha-версии.

Команды

КомандаНазначение
createСоздать Next.js или Vite starter с lite-fsm store
add-machineДобавить доменный автомат в generated src/store
export-graphЗаписать project graph в JSON export document
visualizeЗапустить локальный Visualizer для project graph

lite-fsm create

lite-fsm create my-app --template vite

Команда создаёт React starter, добавляет @lite-fsm/core, @lite-fsm/react, @lite-fsm/middleware, immer, generated src/store, React provider wiring и базовый автомат app.

ОпцияОбязательнаНазначение
<project-name>ДаОтносительный target, например my-app, apps/demo или .
--template <next|vite>ДаFramework starter
--css <tailwind|none>НетCSS preset, по умолчанию tailwind
--package-manager <pnpm|npm|yarn|bun>НетPackage manager для scaffold/install/next steps, по умолчанию npm
--install / --no-installНетУстановить зависимости после генерации или пропустить install

lite-fsm add-machine

lite-fsm add-machine user-session

Команда запускается из корня проекта, созданного через lite-fsm create. Она создаёт src/store/machines/user-session.ts, регистрирует userSession в src/store/index.ts и добавляет userSession.Events в AppEvents.

ОпцияОбязательнаНазначение
<name>ДаИмя в kebab-case, snake_case или camelCase, например user-session

lite-fsm export-graph

lite-fsm export-graph --entry store/index.ts --out lite-fsm.graph.json

Команда строит project graph через @lite-fsm/graph и записывает JSON export document.

ОпцияОбязательнаНазначение
--entry <path>ДаВходной TypeScript-файл с выбранным MachineManager(...)
--out <path>ДаПуть к JSON-файлу
--tsconfig <path>НетЯвный tsconfig.json для module resolution
--include-sourceНетДобавить source text в sources.files[]

--out - не поддерживается: команда пишет только в файл.

lite-fsm visualize

lite-fsm visualize --entry store/index.ts

Команда строит project graph, запускает локальный server на 127.0.0.1 и открывает Visualizer с session URL.

ОпцияОбязательнаНазначение
--entry <path>ДаВходной TypeScript-файл с выбранным MachineManager
--tsconfig <path>НетЯвный tsconfig.json для module resolution
--port <number>НетЛокальный порт, по умолчанию 3030
--no-openНетНапечатать URL без автоматического открытия браузера

Session API доступен только с token из URL. /api/session возвращает graph export document, /api/source отдает исходники только для файлов из текущего graph document.

Diagnostics

CLI diagnostics используют коды LFC_*. Ошибки graph compiler остаются внутри graph.diagnostics, чтобы потребители export document могли отдельно показывать проблемы запуска CLI и проблемы анализа source.

Связанные разделы

Last updated on