Два слоя: mappa-сервис (meta_health + admin_status — живая нагрузка) + машина (meta_system_snapshot: поллер/докер/таски из кэша).
7.4 KiB
name, author, version, description
| name | author | version | description |
|---|---|---|---|
| using-system-snapshot | ours | 1.0.0 | Use at the start of an ops-context session, and ALWAYS before asserting anything about the mappa meta-service, the agent poller, local docker containers, or cross-project task load — call `mcp__mappa__meta_health` + `mcp__mappa__admin_status` (сервис жив, нагрузка) and `mcp__projects-meta__meta_system_snapshot` (поллер/докер/таски) instead of running `tasklist` / `docker ps` / guessing by hand. Triggers on «что запущено», «что сейчас крутится», «состояние системы», «состояние машины», «поллер работает?», «поллер живой?», «что с докером», «сводка по задачам», «what's running», «system status», «system snapshot», «is the poller up», «is the runner alive», «what containers are up». Read-only — no per-session grant needed. Skip for deep single-container docker diagnosis (that's using-vds-ops for the VDS / docker logs locally) and for mutating or precise per-task work (that's using-projects-meta / mappa task.*). |
using-system-snapshot
Overview
Two layers, one mental model: mappa meta-service (решение 14/15 — мета в сервисе) + машина (поллер/докер/таск-нагрузка — внешняя инфра).
- Сервис жив и как загружен:
mcp__mappa__meta_health(no args →{ok}) +mcp__mappa__admin_status(счётчики сущностей по типам/проектам — живая нагрузка). - Машина:
mcp__projects-meta__meta_system_snapshot— поллер agents-task-runner, локальные docker-контейнеры, сводка таск-нагрузки из кэша.
Заменяет старый разброс tasklist / docker ps / ручного meta_status одной-двумя зондами.
Core rule: never assert состояние сервиса, поллера, контейнеров или таск-нагрузки без вызова тула в этом же turn. Память и «он же работал ранее» — не evidence.
When to use
- Session start в ops-контексте — ориентация перед infra/раннер/борд-работой.
- User спрашивает что живо: «что запущено», «состояние системы», «поллер работает?», «что с докером», «what's running», «is the poller up».
- Перед любым claim о живости mappa-сервиса, поллера, контейнера или числа активных/блокированных тасок.
- Быстрый взгляд на таск-нагрузку (где сейчас сконцентрирована работа).
When NOT to use
- Глубокая диагностика одного контейнера (logs/inspect/stats/restart-loop) — это using-vds-ops для Rusonyx VDS или
docker logsлокально. - Мутации тасок или чтение полного борда/тела задачи — using-projects-meta (и mappa task.* / локальный
.tasks/для текущего проекта). - Библиотечные доки, поиск по коду — не сюда.
Prerequisites
mcp__mappa__*— mappa MCP (сервис meta; установка — setup-проект mappa).mcp__projects-meta__meta_system_snapshot— projects-meta-mcp (поллер/докер/кэш-таски). Если тула нет —setup-projects-meta.
The calls
mcp__mappa__meta_health — no args, read-only. {ok: true, service: "mappa"} — сервис жив.
mcp__mappa__admin_status — no args, read-only. Счётчики по типам и проектам.
mcp__projects-meta__meta_system_snapshot — no args, read-only. Три ключа:
| Key | Shape | Liveness |
|---|---|---|
poller |
{ running: bool, projects: "<owner/repo …>" } |
live на момент вызова |
docker |
[{ name, status }] — локальные контейнеры |
live на момент вызова |
tasks |
{ "<owner>/<repo>": { active, blocked }, … } |
из кэша projects-meta — может быть stale |
docker — локальная машина (включая agents-task-runner-*), НЕ VDS. tasks — кэш; для точного состояния — using-projects-meta Step 0 или mappa/локальный .tasks/.
Output format — одна строка на секцию
Сожми в 3–4 строки, не дампи raw-object.
🟢 Mappa alive — 42 wiki / 18 tasks, 12 проектов
🟢 Poller running — OpeItcLoc03/skills (🔴 если running:false)
🟢 Docker — 8/8 up (иначе только проблемные)
📋 Tasks — 23 active / 41 blocked, 17 проектов (назвать 2–3 самых загруженных)
Правила на строку:
- Mappa — 🟢/🔴 + admin_status-сводка (счётчики по типам или проектам — кратко). Сервис упал = заголовок.
- Poller — 🟢/🔴 + running-flag + projects-строка. Остановлен — скажи прямо.
- Docker — если всё
Up(вкл.Up … (healthy)) —N/N up. Иначе только проблемные (Restarting,Exited,(unhealthy),Created,Paused) по имени + статусу. - Tasks — суммы (Σ active / Σ blocked) + 2–3 проекта с наибольшей активностью. Полный расклад — только по запросу.
What NOT to do
- НЕ утверждай «поллер работает» / «все контейнеры up» / «N активных тасок» по памяти или прошлому снапшоту. Зови тулы в текущем turn — liveness требует свежих данных.
- НЕ падай на
tasklist/docker ps/ ручнойmeta_status— это scatter, который скил заменяет. (docker logs— только для глубокой диагностики одного контейнера.) - НЕ вставляй raw-JSON. Строки, по одной на секцию.
- НЕ подавай
tasks-счётчики как точные — они из кэша. При важности точности — флаг сталезности + using-projects-meta.
Common mistakes
| Mistake | Fix |
|---|---|
| «Сервис жив» без вызова в этом turn | Зови meta_health/admin_status — liveness требует текущих данных. |
| «Poller up» без вызова | meta_system_snapshot в текущем turn. |
docker ps / tasklist вместо зондов |
Один-два вызова тула; в этом смысл. |
Читать снапшот-docker как VDS-флот |
Это локальная машина. VDS — using-vds-ops. |
tasks-счётчики как авторитетные |
Они кэшированы. Точность — using-projects-meta Step 0 / mappa / .tasks/. |
| Дампить raw-объект | Сожми в строки (mappa / poller / docker / tasks). |