feat(skills): project-bootstrap 2.2.0→3.0.0 — модуль mappa-bootstrap-project (connect + конвенции + методика-install + manifest) [skip-tdd: visual] (task:1088, wiki:2672 решение 4)
This commit is contained in:
@@ -1,12 +1,14 @@
|
|||||||
---
|
---
|
||||||
name: project-bootstrap
|
name: project-bootstrap
|
||||||
author: ours
|
author: ours
|
||||||
version: 2.2.0
|
version: 3.0.0
|
||||||
description: >
|
description: >
|
||||||
Initializes or upgrades a project in the current folder: git, .gitignore, README.md,
|
Initializes or upgrades a project in the current folder: git, .gitignore, README.md,
|
||||||
.wiki/ using Karpathy's method, .tasks/ for task tracking, AGENTS.md (canon) with
|
.wiki/ using Karpathy's method, .tasks/ for task tracking, AGENTS.md (canon) with
|
||||||
skill triggers + CLAUDE.md legacy pointer.
|
skill triggers + CLAUDE.md legacy pointer.
|
||||||
Creates remote Gitea repo and syncs projects-meta cache for greenfield projects.
|
Creates remote Gitea repo and syncs projects-meta cache for greenfield projects.
|
||||||
|
Includes the mappa-bootstrap-project module (v3, решение 4 mappa-as-product):
|
||||||
|
mappa MCP connect + mappa-конвенции + методика-install (версия в манифест).
|
||||||
Use this skill when the user says "initialize project", "bootstrap", "setup project",
|
Use this skill when the user says "initialize project", "bootstrap", "setup project",
|
||||||
"upgrade project", "add wiki", "add tasks", "start project", "set everything up",
|
"upgrade project", "add wiki", "add tasks", "start project", "set everything up",
|
||||||
"create new project", or launches the agent in a new folder and wants a full setup.
|
"create new project", or launches the agent in a new folder and wants a full setup.
|
||||||
@@ -479,6 +481,12 @@ Skills used to initialize this project's `.wiki/` and `.tasks/` layout, with the
|
|||||||
| `project-discipline` | <version> | cross-project policy |
|
| `project-discipline` | <version> | cross-project policy |
|
||||||
| `setup-interns` | <version> | interns MCP server install (one-time, per machine) |
|
| `setup-interns` | <version> | interns MCP server install (one-time, per machine) |
|
||||||
| `using-interns` | <version> | interns runtime policy + per-session permission grant |
|
| `using-interns` | <version> | interns runtime policy + per-session permission grant |
|
||||||
|
| `mappa-*` (методика, модуль 5.7) | <version of reference-package skills> | mappa-циклы: session-orient / task-work / knowledge / messaging / delegation / brainstorm-promote / closing-ritual |
|
||||||
|
|
||||||
|
Модуль `mappa-bootstrap-project` (решение 4 mappa-as-product) фиксирует
|
||||||
|
версию методики в этой строке — читать `version:` из frontmatter каждого
|
||||||
|
mappa-скилла, не хардкодить. Если пакет не установлен — `unknown` (видно
|
||||||
|
в депс-чеке 5.6).
|
||||||
|
|
||||||
This file is overwritten if `project-bootstrap` is re-run on the same project. For history, use `git log .wiki/concepts/bootstrap-manifest.md`.
|
This file is overwritten if `project-bootstrap` is re-run on the same project. For history, use `git log .wiki/concepts/bootstrap-manifest.md`.
|
||||||
```
|
```
|
||||||
@@ -514,6 +522,9 @@ Mismatch between template and map → silent gaps in the recommendation.
|
|||||||
| `follow tdd-criteria` | `tdd-criteria` | skill | `~/.claude/skills/tdd-criteria/SKILL.md` | `bash scripts/install.sh tdd-criteria` |
|
| `follow tdd-criteria` | `tdd-criteria` | skill | `~/.claude/skills/tdd-criteria/SKILL.md` | `bash scripts/install.sh tdd-criteria` |
|
||||||
| `delegate to interns when allowed` | `using-interns` | skill | `~/.claude/skills/using-interns/SKILL.md` | `bash scripts/install.sh using-interns` |
|
| `delegate to interns when allowed` | `using-interns` | skill | `~/.claude/skills/using-interns/SKILL.md` | `bash scripts/install.sh using-interns` |
|
||||||
| `recommend, don't menu` | `recommend-dont-menu` | skill | `~/.claude/skills/recommend-dont-menu/SKILL.md` | `bash scripts/install.sh recommend-dont-menu` |
|
| `recommend, don't menu` | `recommend-dont-menu` | skill | `~/.claude/skills/recommend-dont-menu/SKILL.md` | `bash scripts/install.sh recommend-dont-menu` |
|
||||||
|
| `use project wiki` | `mappa-knowledge` | skill | `~/.claude/skills/mappa-knowledge/SKILL.md` | `bash scripts/install.sh mappa-knowledge` |
|
||||||
|
| `use task management system` | `mappa-task-work` | skill | `~/.claude/skills/mappa-task-work/SKILL.md` | `bash scripts/install.sh mappa-task-work` |
|
||||||
|
| `inbox monitor: raise on start` | `mappa-session-orient` | skill | `~/.claude/skills/mappa-session-orient/SKILL.md` | `bash scripts/install.sh mappa-session-orient` |
|
||||||
| `we're on Windows` / `we're on Linux` / `we're on macOS` | `active-platform` | skill | `~/.claude/skills/active-platform/SKILL.md` | `bash scripts/install.sh active-platform` |
|
| `we're on Windows` / `we're on Linux` / `we're on macOS` | `active-platform` | skill | `~/.claude/skills/active-platform/SKILL.md` | `bash scripts/install.sh active-platform` |
|
||||||
|
|
||||||
### Algorithm
|
### Algorithm
|
||||||
@@ -578,6 +589,96 @@ Mismatch between template and map → silent gaps in the recommendation.
|
|||||||
install some / all / none of the recommendations, or remove canonical
|
install some / all / none of the recommendations, or remove canonical
|
||||||
lines from `AGENTS.md` to lean the project's trigger set down.
|
lines from `AGENTS.md` to lean the project's trigger set down.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Step 5.7 — mappa-bootstrap-project (модуль, решение 4 mappa-as-product)
|
||||||
|
|
||||||
|
> Спека: `.wiki/concepts/mappa-as-product.md` (wiki:2672), решение 4. Модуль
|
||||||
|
> вызывается project-bootstrap'ом как шаг в режимах greenfield-full и upgrade.
|
||||||
|
> Скоуп: connect (MCP) + mappa-конвенции в AGENTS.md (idempotent merge) +
|
||||||
|
> методика-install (пакет из репо, версия в манифест) + manifest/deps-check.
|
||||||
|
|
||||||
|
### 5.7.1 — Connect (MCP)
|
||||||
|
|
||||||
|
Проверить, что mappa MCP-сервер зарегистрирован на этой машине. Канон —
|
||||||
|
`~/.claude.json` → `mcpServers.mappa` (stdio: `node <repo>/dist/src/mcp-entry.js`,
|
||||||
|
env `MAPPA_CORE_URL` + `MAPPA_API_TOKEN`). pi-рантайм читает ту же
|
||||||
|
регистрацию через MCP-адаптер.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# POSIX / Windows (git-bash):
|
||||||
|
python -c "import json; d=json.load(open('$HOME/.claude.json')); print('mappa' in d.get('mcpServers', {}))"
|
||||||
|
```
|
||||||
|
|
||||||
|
- **Зарегистрирован** → пропустить, идти к 5.7.2.
|
||||||
|
- **Не зарегистрирован** → печать одного информационного блока (НЕ
|
||||||
|
авто-инсталл, то же правило что 5.6):
|
||||||
|
|
||||||
|
```
|
||||||
|
ℹ️ mappa MCP не зарегистрирован (~/.claude.json mcpServers.mappa отсутствует).
|
||||||
|
Установка: собери репо mappa (npm run build) и добавь в mcpServers:
|
||||||
|
{ "type": "stdio", "command": "node",
|
||||||
|
"args": ["<mappa-repo>/dist/src/mcp-entry.js"],
|
||||||
|
"env": { "MAPPA_CORE_URL": "...", "MAPPA_API_TOKEN": "..." } }
|
||||||
|
Секреты — из pass (см. secret:<path> реф-стиль, wiki:2672 решение 11).
|
||||||
|
```
|
||||||
|
|
||||||
|
mappa-конвенции в AGENTS.md (5.7.2) можно добавлять и без MCP-регистрации
|
||||||
|
— триггеры будут ждать установки сервера (как любой absent-скилл).
|
||||||
|
|
||||||
|
### 5.7.2 — mappa-конвенции в AGENTS.md (idempotent merge)
|
||||||
|
|
||||||
|
mappa-специфичные триггеры уже в каноне шаблона (Step 5) — `inbox monitor:
|
||||||
|
raise on start`, `use project wiki`, `use task management system`. Это не
|
||||||
|
отдельный merge: существующая идемпотентная машинерия Step 5 покрывает их.
|
||||||
|
Модуль только **верифицирует**: после Step 5 убедиться, что строки на месте
|
||||||
|
(та же substring-проверка что в Step 5 upgrade-merge). Если пользователь
|
||||||
|
сознательно убрал их из AGENTS.md — не возвращать (уважать выбор).
|
||||||
|
|
||||||
|
### 5.7.3 — методика-install (пакет из репо, версия в манифест)
|
||||||
|
|
||||||
|
Методика = reference-пакет (wiki:2672 решение 3/6): plain skills живут в
|
||||||
|
репо skills (`scripts/install.sh <name>...`). project-bootstrap НЕ хранит
|
||||||
|
тела — только указывает на пакет.
|
||||||
|
|
||||||
|
1. Определить список mappa-циклов: `mappa-session-orient`,
|
||||||
|
`mappa-task-work`, `mappa-knowledge`, `mappa-messaging`,
|
||||||
|
`mappa-delegation`, `mappa-brainstorm-promote`, `mappa-closing-ritual`.
|
||||||
|
2. Проверить установку (все есть в `~/.claude/skills/` и
|
||||||
|
`~/.agents/skills/`)? → да: пропустить (upgrade-императив не дублировать).
|
||||||
|
3. Нет → печать информационного блока (НЕ авто-инсталл, правило 5.6):
|
||||||
|
|
||||||
|
```
|
||||||
|
ℹ️ Методика mappa не установлена. Установка:
|
||||||
|
git clone <skills-repo> && scripts/install.sh mappa-session-orient mappa-task-work ...
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Версия методики фиксируется в bootstrap-manifest (5.7.4): читать
|
||||||
|
`SKILL.md` frontmatter каждого mappa-скилла (`version:`), не хардкодить.
|
||||||
|
|
||||||
|
### 5.7.4 — manifest/deps-check
|
||||||
|
|
||||||
|
Манифест (Step 5.5) дополняется строкой методики — версия = версия
|
||||||
|
reference-пакета (репо skills, `version` из frontmatter скиллов). Добавить в
|
||||||
|
таблицу манифеста:
|
||||||
|
|
||||||
|
| Skill | Version | Role |
|
||||||
|
|---|---|---|
|
||||||
|
| `mappa-bootstrap-project` (модуль) | <project-bootstrap version> | connect + конвенции + методика-install |
|
||||||
|
|
||||||
|
Deps-check (Step 5.6): mappa-триггеры (`inbox monitor: raise on start`,
|
||||||
|
`use project wiki`, `use task management system`) маппятся на fulfiller'ы:
|
||||||
|
|
||||||
|
| Trigger line | Fulfiller | Kind | Detection |
|
||||||
|
|---|---|---|---|
|
||||||
|
| `use project wiki` | `mappa-knowledge` | skill | `~/.claude/skills/mappa-knowledge/SKILL.md` |
|
||||||
|
| `use task management system` | `mappa-task-work` | skill | `~/.claude/skills/mappa-task-work/SKILL.md` |
|
||||||
|
| `inbox monitor: raise on start` | `mappa-session-orient` | skill | `~/.claude/skills/mappa-session-orient/SKILL.md` |
|
||||||
|
|
||||||
|
Недостающие mappa-скиллы → в блок рекомендаций 5.6 (тем же форматом).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Step 6 — Commit
|
## Step 6 — Commit
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -607,6 +708,7 @@ Print a final report:
|
|||||||
.gitignore — standard template
|
.gitignore — standard template
|
||||||
README.md — starter file
|
README.md — starter file
|
||||||
remote — Gitea repo created and pushed
|
remote — Gitea repo created and pushed
|
||||||
|
mappa — mappa-bootstrap-project: connect + конвенции + методика (модуль 5.7)
|
||||||
|
|
||||||
Skipped (already existed):
|
Skipped (already existed):
|
||||||
git — left untouched
|
git — left untouched
|
||||||
|
|||||||
Reference in New Issue
Block a user