feat(catalog): sovereign catalog — provenance + de-superpowers (idea 12)

- author: ours / adapted-from frontmatter on all 38 skills (scripts/add-provenance.py, idempotent)
- versions added to vendor copies (caveman x5, find-skills) + active-platform
- README(en/ru): new Sovereignty/Adapted-from section, drop wiki-maintainer & superpowers refs
- project-bootstrap v1.12.0 -> v1.13.0: remove 'use superpowers' trigger from template
  + trigger table; recommend-dont-menu wording no longer references superpowers:brainstorming
- dist rebuilt to 38 (pruned stale update-claude-skills.skill)
- lint: 0 violations, 0 warnings
This commit is contained in:
2026-08-12 14:08:25 +03:00
parent e89240fbf9
commit ab51c2ef04
81 changed files with 206 additions and 16 deletions

View File

@@ -26,7 +26,7 @@ git clone <repo> skills
cd skills
bash scripts/install.sh # copies every skills/* into ~/.claude/skills/
# or only specific ones:
bash scripts/install.sh caveman wiki-maintainer
bash scripts/install.sh using-wiki caveman
```
**Linux / macOS (bash):**
@@ -36,7 +36,7 @@ git clone <repo> skills
cd skills
bash scripts/install.sh # copies every skills/* into ~/.claude/skills/
# or only specific ones:
bash scripts/install.sh caveman wiki-maintainer
bash scripts/install.sh using-wiki caveman
```
The install target can be overridden with `CLAUDE_SKILLS_DIR=/path bash scripts/install.sh`.
@@ -54,9 +54,8 @@ project's folder and it will, in one pass:
- create a starter `README.md`
- lay out `.wiki/` per the [Karpathy LLM Wiki pattern](https://gist.github.com/karpathy/442a6bf555914893e9891c11519de94f) (delegated to [`setup-wiki`](skills/setup-wiki/))
- lay out `.tasks/` with the canonical task board (delegated to [`setup-tasks`](skills/setup-tasks/))
- write `CLAUDE.md` with skill triggers (`use superpowers`, `use project wiki`, `use task management system`, `check across all projects`, `we're on Windows`)
- write `CLAUDE.md` with skill triggers (`use project wiki`, `use task management system`, `check across all projects`, `we're on Windows`)
- record the skill versions used in `.wiki/concepts/bootstrap-manifest.md` so cross-project layout drift stays debuggable
- check whether the official `superpowers@claude-plugins-official` plugin is installed and, if not, print the install command — the `use superpowers` trigger is a no-op without it
Two modes, picked automatically: **init** for an empty folder, **upgrade**
for an existing project (the skill only fills the gaps and never overwrites
@@ -103,6 +102,24 @@ Skip and pending entries land in `dist-hermes/SKIPPED.md` with reasons. Full
design rationale lives in
[`.wiki/concepts/hermes-skills-rollout-design.md`](.wiki/concepts/hermes-skills-rollout-design.md).
## Sovereignty / provenance
This catalog is sovereign: every skill is either **authored by us** or an
**adapted vendored copy** we maintain ourselves. No raw vendor plugins are
installed as dependencies — anything borrowed is vendored into this repo with
an explicit `adapted-from` marker in its frontmatter.
| skill | provenance |
|---|---|
| `caveman`, `caveman-commit`, `caveman-compress`, `caveman-help`, `caveman-review` | `adapted-from: JuliusBrussee/caveman` (MIT) — vendored copy, upstream pin TBD |
| `find-skills` | `adapted-from: vercel-labs/skills` (MIT) — vendored copy, upstream pin TBD |
| all other `skills/*` | `author: ours` |
Adaptation policy: a clone is rewritten to our conventions (`.tasks/` boards,
`.wiki/concepts/` specs, `using-*` skill names), never shipped with vendor junk,
and versioned under our own semver. Upstream pins are reviewed by the catalog
owner on update; no automatic upstream sync.
## Layout
```

View File

@@ -22,7 +22,7 @@ git clone <repo> claude-skills
cd claude-skills
bash scripts/install.sh # копирует все skills/* в ~/.claude/skills/
# или конкретные:
bash scripts/install.sh caveman wiki-maintainer
bash scripts/install.sh using-wiki caveman
```
Цель установки можно переопределить переменной `CLAUDE_SKILLS_DIR=/path bash scripts/install.sh`.
@@ -38,9 +38,8 @@ bash scripts/install.sh caveman wiki-maintainer
- создаст стартовый `README.md`
- развернёт `.wiki/` по [паттерну Karpathy LLM Wiki](https://gist.github.com/karpathy/442a6bf555914893e9891c11519de94f) (делегируется в [`setup-wiki`](skills/setup-wiki/))
- развернёт `.tasks/` с канонической доской задач (делегируется в [`setup-tasks`](skills/setup-tasks/))
- запишет `CLAUDE.md` со скилл-триггерами (`use superpowers`, `use project wiki`, `use task management system`, `check across all projects`, `we're on Windows`)
- запишет `CLAUDE.md` со скилл-триггерами (`use project wiki`, `use task management system`, `check across all projects`, `we're on Windows`)
- зафиксирует версии использованных скиллов в `.wiki/concepts/bootstrap-manifest.md`, чтобы дрифт раскладки между проектами оставался отлаживаемым
- проверит, установлен ли официальный плагин `superpowers@claude-plugins-official`, и если нет — выведет команду установки (без плагина триггер `use superpowers` мёртвый)
Два режима, выбирается автоматически: **init** для пустой папки и **upgrade**
для существующего проекта (скилл только дозаполняет пробелы и ничего не
@@ -73,8 +72,26 @@ bash scripts/build.sh caveman # один
## Layout
## Суверенитет / провенанс
Каталог суверенный: каждый скилл либо **нашего авторства**, либо
**адаптированная вендорская копия**, которую поддерживаем сами. Никаких
сырых вендорских плагинов как зависимостей — всё заимствованное вендорится
в этот репо с явным маркером `adapted-from` во frontmatter.
| скилл | провенанс |
|---|---|
| `caveman`, `caveman-commit`, `caveman-compress`, `caveman-help`, `caveman-review` | `adapted-from: JuliusBrussee/caveman` (MIT) — вендорная копия, пин апстрима TBD |
| `find-skills` | `adapted-from: vercel-labs/skills` (MIT) — вендорная копия, пин апстрима TBD |
| остальные `skills/*` | `author: ours` |
Политика адаптации: клон переписывается под наши конвенции (доски `.tasks/`,
спеки `.wiki/concepts/`, имена скиллов `using-*`), вендорский мусор не
перетягивается, версионируется под нашим semver. Пины апстрима
пересматривает владелец каталога при обновлении; автосинка нет.
```
claude-skills/
skills/
├── skills/ ← исходники (по папке на скилл)
├── dist/ ← .skill архивы (коммитятся)
├── scripts/

Binary file not shown.

BIN
dist/browser-cdp.skill vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
dist/caveman.skill vendored

Binary file not shown.

BIN
dist/delegate-task.skill vendored Normal file

Binary file not shown.

BIN
dist/find-skills.skill vendored

Binary file not shown.

BIN
dist/inter-session-peer-discipline.skill vendored Normal file

Binary file not shown.

BIN
dist/meta-host-routing.skill vendored Normal file

Binary file not shown.

BIN
dist/private-dev-public-publish.skill vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
dist/ralph-loop-execution.skill vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
dist/session-inbox-monitor.skill vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
dist/setup-tasks.skill vendored

Binary file not shown.

BIN
dist/setup-wiki.skill vendored

Binary file not shown.

BIN
dist/task-format.skill vendored Normal file

Binary file not shown.

BIN
dist/task-loop.skill vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
dist/update-skills.skill vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
dist/using-system-snapshot.skill vendored Normal file

Binary file not shown.

BIN
dist/using-tasks.skill vendored

Binary file not shown.

BIN
dist/using-vds-ops.skill vendored Normal file

Binary file not shown.

BIN
dist/using-wiki-graph.skill vendored Normal file

Binary file not shown.

BIN
dist/using-wiki.skill vendored

Binary file not shown.

115
scripts/add-provenance.py Normal file
View File

@@ -0,0 +1,115 @@
#!/usr/bin/env python3
"""Add provenance frontmatter (author/adapted-from) + missing versions to all skills/.
Idempotent: only inserts lines that are absent. Preserves all existing content.
Usage: python scripts/add-provenance.py (run from repo root)
"""
import os
import re
import sys
ROOT = os.path.join(os.path.dirname(os.path.abspath(__file__)), "..")
SKILLS = os.path.join(ROOT, "skills")
# skill -> provenance line(s) to guarantee present in frontmatter
PROVENANCE = {
# ours — authored in this workshop/ecosystem
"active-platform": ["author: ours", "version: 0.1.0"],
"browser-cdp": ["author: ours"],
"delegate-task": ["author: ours"],
"inter-session-peer-discipline": ["author: ours"],
"meta-host-routing": ["author: ours"],
"private-dev-public-publish": ["author: ours"],
"project-bootstrap": ["author: ours"],
"project-discipline": ["author: ours"],
"pulling-before-work": ["author: ours"],
"ralph-loop-execution": ["author: ours"],
"recommend-dont-menu": ["author: ours"],
"session-handoff": ["author: ours"],
"session-inbox-monitor": ["author: ours"],
"setup-agents-task-runner": ["author: ours"],
"setup-context7": ["author: ours"],
"setup-interns": ["author: ours"],
"setup-projects-meta": ["author: ours"],
"setup-tasks": ["author: ours"],
"setup-wiki": ["author: ours"],
"task-format": ["author: ours"],
"task-loop": ["author: ours"],
"tdd-criteria": ["author: ours"],
"update-skills": ["author: ours"],
"using-context7": ["author: ours"],
"using-interns": ["author: ours"],
"using-markitdown": ["author: ours"],
"using-projects-meta": ["author: ours"],
"using-system-snapshot": ["author: ours"],
"using-tasks": ["author: ours"],
"using-vds-ops": ["author: ours"],
"using-wiki": ["author: ours"],
"using-wiki-graph": ["author: ours"],
# adapted — vendored copies, sovereignly maintained; pins to backfill (see README "Adapted from")
"caveman": ["adapted-from: JuliusBrussee/caveman (MIT) — vendored copy, upstream pin TBD", "version: 0.1.0"],
"caveman-commit": ["adapted-from: JuliusBrussee/caveman (MIT) — vendored copy, upstream pin TBD", "version: 0.1.0"],
"caveman-compress": ["adapted-from: JuliusBrussee/caveman (MIT) — vendored copy, upstream pin TBD"],
"caveman-help": ["adapted-from: JuliusBrussee/caveman (MIT) — vendored copy, upstream pin TBD", "version: 0.1.0"],
"caveman-review": ["adapted-from: JuliusBrussee/caveman (MIT) — vendored copy, upstream pin TBD", "version: 0.1.0"],
"find-skills": ["adapted-from: vercel-labs/skills (MIT) — vendored copy, upstream pin TBD", "version: 0.1.0"],
}
FRONTMATTER_RE = re.compile(r"^(---\s*\n)(.*?)(\n---\s*\n)", re.DOTALL)
changed = []
errors = []
for name, lines in sorted(PROVENANCE.items()):
path = os.path.join(SKILLS, name, "SKILL.md")
if not os.path.exists(path):
errors.append(f"MISSING: {path}")
continue
with open(path, encoding="utf-8") as f:
text = f.read()
m = FRONTMATTER_RE.match(text)
if not m:
errors.append(f"{name}: no frontmatter")
continue
fm = m.group(2)
new_lines = []
inserted = False
for line in fm.splitlines():
# insert provenance after the name: line (keep name-first convention)
if not inserted and line.startswith("name:"):
new_lines.append(line)
for prov in lines:
key = prov.split(":", 1)[0]
# skip if this key already present anywhere in frontmatter
if not any(existing.startswith(key + ":") for existing in fm.splitlines()):
new_lines.append(prov)
inserted = True
continue
# drop old lines that we're replacing (e.g. duplicate version)
new_lines.append(line)
# dedupe: remove lines for keys that now appear twice
seen = {}
final = []
for line in new_lines:
key = line.split(":", 1)[0]
if key in ("name",):
final.append(line)
continue
if key in seen and seen[key] >= 1:
continue # keep first occurrence
seen[key] = seen.get(key, 0) + 1
final.append(line)
new_fm = "\n".join(final)
if new_fm != fm:
new_text = text[: m.start(2)] + new_fm + text[m.end(2):]
with open(path, "w", encoding="utf-8", newline="\n") as f:
f.write(new_text)
changed.append(name)
else:
print(f" = {name}: no change")
print(f"\nChanged ({len(changed)}): {', '.join(changed)}")
if errors:
print(f"\nERRORS ({len(errors)}):")
for e in errors:
print(" ", e)
sys.exit(1)

View File

@@ -1,5 +1,7 @@
---
name: active-platform
author: ours
version: 0.1.0
description: Switches command, path, and example generation to the user's currently active development platform — Windows / Linux / macOS. Use this whenever you produce shell commands, install steps, README quick-start sections, or any output the user will paste into a terminal — even if they don't say "shell" or "command" explicitly. The default active platform is Windows / PowerShell because that's the user's primary workstation. Recognize and obey trigger phrases like "мы на винде", "мы на линуксе", "мы на маке", "we're on Windows", "we're on Linux", "we're on macOS", and close variants — they switch the active platform for the rest of the session. Also activate this skill anytime the user mentions a different machine, a remote box, or asks "how would I run this on X".
---

View File

@@ -1,5 +1,6 @@
---
name: browser-cdp
author: ours
version: 0.1.0
description: >
Веб-автоматизация через минимальные CDP CLI-тулы в bash — вместо playwright-mcp

View File

@@ -1,5 +1,7 @@
---
name: caveman-commit
adapted-from: JuliusBrussee/caveman (MIT) — vendored copy, upstream pin TBD
version: 0.1.0
description: >
Ultra-compressed commit message generator. Cuts noise from commit messages while preserving
intent and reasoning. Conventional Commits format. Subject ≤50 chars, body only when "why"

View File

@@ -1,5 +1,6 @@
---
name: caveman-compress
adapted-from: JuliusBrussee/caveman (MIT) — vendored copy, upstream pin TBD
version: 1.0.0
description: >
Compress natural language memory files (CLAUDE.md, todos, preferences) into caveman format

View File

@@ -1,5 +1,7 @@
---
name: caveman-help
adapted-from: JuliusBrussee/caveman (MIT) — vendored copy, upstream pin TBD
version: 0.1.0
description: >
Quick-reference card for all caveman modes, skills, and commands.
One-shot display, not a persistent mode. Trigger: /caveman-help,

View File

@@ -1,5 +1,7 @@
---
name: caveman-review
adapted-from: JuliusBrussee/caveman (MIT) — vendored copy, upstream pin TBD
version: 0.1.0
description: >
Ultra-compressed code review comments. Cuts noise from PR feedback while preserving
the actionable signal. Each comment is one line: location, problem, fix. Use when user

View File

@@ -1,5 +1,7 @@
---
name: caveman
adapted-from: JuliusBrussee/caveman (MIT) — vendored copy, upstream pin TBD
version: 0.1.0
description: >
Ultra-compressed communication mode. Cuts token usage ~75% by speaking like caveman
while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra,

View File

@@ -1,5 +1,6 @@
---
name: delegate-task
author: ours
version: 0.2.4
description: >
Use when delegating a task to another agent or project via

View File

@@ -1,5 +1,7 @@
---
name: find-skills
adapted-from: vercel-labs/skills (MIT) — vendored copy, upstream pin TBD
version: 0.1.0
description: Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.
---

View File

@@ -1,5 +1,6 @@
---
name: inter-session-peer-discipline
author: ours
version: 0.1.1
description: >
Use whenever exchanging messages with another agent session over an inbox /

View File

@@ -1,5 +1,6 @@
---
name: meta-host-routing
author: ours
version: 0.3.0
description: >
Use before any tasks_create / knowledge_ingest / brainstorm-promotion against

View File

@@ -1,5 +1,6 @@
---
name: private-dev-public-publish
author: ours
version: 0.2.0
description: Use when setting up or maintaining a publishable open-source port/fork that should be developed privately but published cleanly — messy development on a PRIVATE Gitea repo (with `.wiki/`+`.tasks/` inside), and a curated COPY of finished work into a PUBLIC GitHub fork that preserves upstream lineage (stays a fork, keeps attribution; GPL-clean). Triggers - «опубликовать форк/порт на гитхаб», «разработку держать приватно, релиз публичный», «приватный гитеа + публичный гитхаб», «publish a fork without exposing dev history», «curated publish to GitHub», «как правильно форкнуть open-source для публикации». NOT for purely-private projects, purely-public open development, or greenfield bootstrap (use project-bootstrap).
---

View File

@@ -1,6 +1,7 @@
---
name: project-bootstrap
version: 1.12.0
author: ours
version: 1.13.0
description: >
Initializes or upgrades a project in the current folder: git, .gitignore, README.md,
.wiki/ using Karpathy's method, .tasks/ for task tracking, CLAUDE.md with skill triggers.
@@ -361,7 +362,6 @@ Template contents (`assets/CLAUDE.md.template` — source of truth):
# Agent instructions. Each line is a trigger for an installed skill.
talk like a caveman
use superpowers
use project wiki
use task management system
check across all projects
@@ -418,10 +418,10 @@ server is registered — install via `setup-interns` on a fresh machine if
`.wiki/concepts/interns-design.md` in the `skills` repo.
The `recommend, don't menu` line activates the `recommend-dont-menu` skill,
which overrides the default `superpowers:brainstorming` behavior: in design
discussions, architecture reviews, or "what should we do" questions, the agent
gives **one argued recommendation with explicit trade-offs**, not a multiple-
choice menu. User instructions always take precedence over skill defaults.
which replaces the default brainstorming behavior: in design discussions,
architecture reviews, or "what should we do" questions, the agent gives **one
argued recommendation with explicit trade-offs**, not a multiple-choice menu.
User instructions always take precedence over skill defaults.
Install the skill on the host if `recommend-dont-menu` is not in `~/.claude/skills/`;
otherwise the trigger is silently dead like any other absent skill.
@@ -484,7 +484,6 @@ Mismatch between template and map → silent gaps in the recommendation.
| Trigger line in `CLAUDE.md` | Fulfiller | Kind | Detection path | Install command |
|---|---|---|---|---|
| `talk like a caveman` | `caveman` | skill | `~/.claude/skills/caveman/SKILL.md` | `bash scripts/install.sh caveman` |
| `use superpowers` | `superpowers@claude-plugins-official` | plugin | key `plugins["superpowers@claude-plugins-official"]` in `~/.claude/plugins/installed_plugins.json` | `/plugin install superpowers@claude-plugins-official` |
| `use project wiki` | `using-wiki` | skill | `~/.claude/skills/using-wiki/SKILL.md` | `bash scripts/install.sh using-wiki` |
| `use task management system` | `using-tasks` | skill | `~/.claude/skills/using-tasks/SKILL.md` | `bash scripts/install.sh using-tasks` |
| `check across all projects` | `using-projects-meta` | skill | `~/.claude/skills/using-projects-meta/SKILL.md` | `bash scripts/install.sh using-projects-meta` |

View File

@@ -2,7 +2,6 @@
# Agent instructions. Each line is a trigger for an installed skill.
talk like a caveman
use superpowers
use project wiki
use task management system
check across all projects

View File

@@ -1,5 +1,6 @@
---
name: project-discipline
author: ours
version: 0.1.1
description: >
Codifies five cross-project discipline rules: (1) project CLAUDE.md /

View File

@@ -1,5 +1,6 @@
---
name: pulling-before-work
author: ours
version: 1.0.0
description: >
Pulls the current branch from origin once at session start and on explicit

View File

@@ -1,5 +1,6 @@
---
name: ralph-loop-execution
author: ours
version: 0.1.0
description: >
Execute a ralph-loop task: read the task's **Verifier:** oracle-command,

View File

@@ -1,5 +1,6 @@
---
name: recommend-dont-menu
author: ours
version: 0.1.0
description: >
Use during design discussions, brainstorming, architecture reviews, or any

View File

@@ -1,5 +1,6 @@
---
name: session-handoff
author: ours
version: 0.3.3
description: "Sliding handoff between CC sessions via .tasks/NEXT_SESSION.md. Read on session start: orient agent, ask user before action. Write on session-end phrase or substantive commit. Session-end phrases: «завершаем сессию», «сворачиваемся», «закругляемся», «wrap up session», «end session», «we're done for now». Trigger-line in CLAUDE.md: `session handoff: read on start, write on end`. Skip task-zone phrases: «закрываем эту таску», «pause», «отбой», «разбегаемся»."
---

View File

@@ -1,5 +1,6 @@
---
name: session-inbox-monitor
author: ours
version: 0.4.0
description: >
Raises a persistent Monitor (Monitor tool, NOT background Bash) on the

View File

@@ -1,5 +1,6 @@
---
name: setup-agents-task-runner
author: ours
version: 0.1.0
description: Installs the standing-duty stack (agents-task-runner + watchdog + appeals-inbox) as platform-native OS services — systemd user units on Linux, launchd LaunchAgents on macOS, winsw-wrapped services on Windows. No node window on any OS; OS-supervised autostart + crash-restart. Fetches winsw (pinned + SHA256-verified, not vendored). Installs DISARMED — scope is runtime config (poller-scope.json), arming is a separate operator step via the appeals-inbox pult. Use when the user says "install agents-task-runner service", "set up the standing-duty service", "deploy the poller as a service", "настрой службу раннера", "поставь дежурный стек как службу", "agents-task-runner службой", or when migrating off the old start-worker.ps1 Scheduled Task. Cross-platform — Windows / Linux / macOS. Installs OS services, fetches a binary, writes a scope file; pauses for confirmation before every mutating phase. This is the L2 installer for the `agents-task-runner` factory module.
---

View File

@@ -1,5 +1,6 @@
---
name: setup-context7
author: ours
version: 1.0.0
description: Installs and configures the official context7 MCP plugin (`context7@claude-plugins-official`), reuses the user's existing Context7 API key, and cleans out any manual `mcpServers.context7` entries from `~/.claude.json` and `~/.claude/settings.json`. Use this skill when the user says "install context7", "set up context7", "configure context7", "настрой context7", "установи context7", "context7 не работает", "context7 isn't working", or whenever the `mcp__context7__resolve-library-id` / `mcp__context7__query-docs` tools are missing in a session that needs library docs. Cross-platform — Windows / Linux / macOS. Mutates user-level config; pauses for confirmation before writing.
---

View File

@@ -1,5 +1,6 @@
---
name: setup-interns
author: ours
version: 0.4.0
description: Installs and configures the local `interns` MCP server — clones the repo to `~/projects/.common/lib/interns-mcp/` (or uses an existing clone), `pip install -e` it, writes `~/.config/projects-secrets/interns.env` with endpoint API keys, and registers `mcpServers.interns` in `~/.claude.json`. Use this skill when the user says "install interns", "set up interns", "configure interns", "настрой интернов", "установи интернов", "interns не работает", "interns isn't working", or whenever the `mcp__interns__*` tools are missing in a session that needs delegation. Cross-platform — Windows / Linux / macOS. Mutates user-level config and writes secrets; pauses for confirmation before every write.
---

View File

@@ -1,5 +1,6 @@
---
name: setup-projects-meta
author: ours
version: 1.1.0
description: Installs and configures the local `projects-meta-mcp` stdio server — clones the repo to `~/projects/.common/lib/projects-meta-mcp`, builds it, writes `~/.config/projects-mcp/auth.toml` with the user's Gitea token, clones the shared wiki to `~/projects/.wiki/` (content lives in root), and registers `mcpServers.projects-meta` in `~/.claude.json`. Use this skill when the user says "install projects-meta", "set up projects-meta", "configure projects-meta", "настрой projects-meta", "установи projects-meta", "projects-meta не работает", "projects-meta isn't working", or whenever the `mcp__projects-meta__*` tools are missing in a session that needs cross-project task aggregation or the shared Gitea wiki. Cross-platform — Windows / Linux / macOS. Mutates user-level config and writes secrets; pauses for confirmation before every write.
---

View File

@@ -1,5 +1,6 @@
---
name: setup-tasks
author: ours
version: 1.0.0
description: Creates or migrates a project's `.tasks/` board to the canonical layout — `STATUS.md` (the board, with emoji status legend) plus per-task `<task-slug>.md` files for each active or paused task. Use when the user says "set up tasks", "init tasks", "настрой таски", "инициализируй таски", "create task tracking", "migrate tasks to canon", "tasks broken", or whenever `using-tasks` detects a missing or non-canonical `.tasks/`. Two modes — greenfield (no `.tasks/`) and migrate (existing flat STATUS.md without per-task files). Confirmation gate before writing. Cross-platform.
---

View File

@@ -1,5 +1,6 @@
---
name: setup-wiki
author: ours
version: 1.1.0
description: Creates or migrates a project's `.wiki/` to the canonical Karpathy LLM Wiki layout — `CLAUDE.md` schema, `index.md`, `log.md`, `overview.md`, `raw/README.md`, plus empty `entities/`, `concepts/`, `packages/`, `sources/`, `contradictions/`, `open-questions/`. Use when the user says "set up wiki", "init wiki", "настрой вики", "инициализируй вики", "create wiki", "migrate wiki to canon", "wiki сломана", "wiki layout broken", or whenever `using-wiki` detects a missing or non-canonical `.wiki/`. Two modes — greenfield (no wiki) and migrate (existing non-canonical layout). Confirmation gate before writing. Cross-platform.
---

View File

@@ -1,5 +1,6 @@
---
name: task-format
author: ours
version: 0.1.0
description: >
Use when writing or editing a task block in a `.tasks/STATUS.md` board that an

View File

@@ -1,5 +1,6 @@
---
name: task-loop
author: ours
version: 0.1.0
description: >
Use when the user asks you to work the task board yourself, in this

View File

@@ -1,5 +1,6 @@
---
name: tdd-criteria
author: ours
version: 0.2.0
description: >
TDD by default with four bright-line carve-outs. Applies before any code

View File

@@ -1,5 +1,6 @@
---
name: update-skills
author: ours
version: 0.2.0
description: >
Full uplift cycle for an existing skills installation: git pull,

View File

@@ -1,5 +1,6 @@
---
name: using-context7
author: ours
version: 2.0.0
description: Use when answering questions about a specific library, framework, SDK, API, or CLI tool — including setup/install, config, API syntax, version-specific behavior, migration between versions, or library-specific errors. Training data is often stale; context7 returns current docs. Skip for general programming concepts, refactoring, business-logic debugging, or when the codebase already answers the question.
---

View File

@@ -1,5 +1,6 @@
---
name: using-interns
author: ours
version: 0.3.1
description: >
Use when delegating predictable bulk reads or summarization to cheap intern LLMs via the l

View File

@@ -1,5 +1,6 @@
---
name: using-markitdown
author: ours
version: 1.0.1
description: Use when capturing external content into a markdown-based knowledge base, wiki `raw/` directory, or any pipeline that must preserve the source's full text — for web pages, PDFs, DOCX/PPTX/XLSX, EPUB, CSV/JSON/XML, ZIP archives, images (with OCR/EXIF), audio (with transcription), or YouTube URLs. Also use when WebFetch returned an LLM-summarized version but the raw content is what's needed.
---

View File

@@ -1,5 +1,6 @@
---
name: using-projects-meta
author: ours
version: 1.2.0
description: Use when working across multiple projects on one or many machines — cross-project task aggregation (`mcp__projects-meta__tasks_*`), shared Gitea-backed wiki query / ingest (`mcp__projects-meta__knowledge_*`), or sync diagnostics (`mcp__projects-meta__meta_status`). Triggers on phrases like "across all projects", "what's on the boards", "check shared wiki", "search projects-wiki", "ingest into shared wiki", "что у меня на досках", "по всем проектам", "общая вики", "cross-project status", or any time the user wants to see / mutate state in another repo than the current cwd. v1.1.0 mandates a Step 0 freshness gate (probe `meta_status`, sync if stale, pull `projects-wiki` before shared-wiki writes) — see SKILL body. Mutation tools require two-step preview → confirm. Skip for the **current** project's tasks/wiki — those live on disk in `.tasks/` / `.wiki/`.
---

View File

@@ -1,5 +1,6 @@
---
name: using-system-snapshot
author: ours
version: 0.1.0
description: "Use at the start of an ops-context session, and ALWAYS before asserting anything about the agent poller, local docker containers, or cross-project task load — call `mcp__projects-meta__meta_system_snapshot` instead of running `tasklist` / `docker ps` / `meta_status` 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)."
---

View File

@@ -1,5 +1,6 @@
---
name: using-tasks
author: ours
version: 1.4.0
description: >
Policy skill for working with an existing `.tasks/` board (per-task files + STATUS.md).

View File

@@ -1,5 +1,6 @@
---
name: using-vds-ops
author: ours
version: 0.1.1
description: "Use when diagnosing docker containers on the Rusonyx VDS — the `vds-ops` HTTP MCP server (https://opsmcp.vds.kzntsv.site/mcp) exposes 4 read-only tools — `ops.docker.ps`, `ops.docker.logs`, `ops.docker.inspect`, `ops.docker.stats` — all routed through tecnativa `vds-docker-proxy-ro` with `POST=0` (write-ops return 403). Triggers on VDS container names (`traefik`, `portainer`, `gitea`, `verdaccio`, `registry`, `joxit-ui`, `ntfy`, `postgres`, `mariadb`, `mongo`, `redis`, `vds-ops-mcp`, `vds-docker-proxy-ro`), on VDS-domain words («на VDS», «VDS», «vds.kzntsv.site», «vds-ops», «opsmcp.vds», «Rusonyx», «облачный VDS»), or on incident phrases («падает», «restart-loop», «не стартует», «unhealthy», «посмотри логи», «git.kzntsv не открывается», «verdaccio лежит», «registry медленно», «ntfy не приходит») when VDS-context. Read-only by design — no per-session grant needed. Skip for write-ops and mentions without incident signal."
---

View File

@@ -1,5 +1,6 @@
---
name: using-wiki-graph
author: ours
version: 0.1.1
description: >
Use when a question is RELATIONAL about a wiki — «что связывает X и Y», «как связаны», «пу

View File

@@ -1,5 +1,6 @@
---
name: using-wiki
author: ours
version: 1.1.0
description: Policy skill for working with an existing `.wiki/` (Karpathy LLM Wiki pattern). Use when the user asks to ingest a document, answer from the wiki, lint/health-check it, or says "use project wiki", "обнови вики", "проверь вики", "запроси вики", "заингесть", "query the wiki". Also use when modifying any file under `.wiki/` — the workflow and formats below are mandatory, and project-specific conventions live in `.wiki/CLAUDE.md`. If `.wiki/` is missing or non-canonical, delegate to `setup-wiki` first (it has its own confirmation gate). Renamed from `wiki-maintainer` at v1.0.0.
---