Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/andrewcigan/vibe-dev-plugin/trimnpx skills add andrewcigan/vibe-dev-plugin --skill trimgit clone --depth 1 https://github.com/andrewcigan/vibe-dev-pluginWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/andrewcigan/vibe-dev-plugin/trim)<a href="https://agentmods.dev/skills/andrewcigan/vibe-dev-plugin/trim"><img src="https://agentmods.dev/badge/skills/andrewcigan/vibe-dev-plugin/trim.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00059 | $0.01111 |
| Opus 5 | $0.00030 | $0.00556 |
| Sonnet 5 | $0.00012 | $0.00222 |
| Haiku 4.5 | $0.00006 | $0.00111 |
Grade A, and why
trim scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 125 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/trim
Закрывает боль «бюджет горит, не знаю что выкинуть».
Что происходит
Шаг 1: Прочитать текущий состав backlog
import json
d = json.load(open('feature_list.json'))
all_features = []
for state in ['captured', 'up_next', 'active_list', 'done']:
all_features.extend(d['features'][state])
Шаг 2: Subagent делает MVP-анализ
Subagent (Sonnet) с инструкцией:
Прочитай:
- docs/PRODUCT.md (главная функция, ценность)
- domain-rules.yaml → product_semantics, invariants
- feature_list.json все фичи
- SESSION.md → последние решения
Задача: определить MVP-минимум для главной ценности продукта.
Раздели фичи на:
- **MUST**: критично для главной функции. Без них продукта нет.
- **SHOULD**: улучшают, но MVP без них работает.
- **NICE**: красиво иметь, не нужны для MVP.
Для каждой группы — короткое обоснование.
Шаг 3: Предложение пользователю
Format (по Quality Gate — НЕ technical A/B):
Слышу, бюджет жмёт. Прошёлся по 12 фичам:
MVP-минимум (5 фичей, ~$X, ~2 недели):
✓ feat-001 — Загрузка документов
✓ feat-003 — Базовый поиск
✓ feat-005 — Главный экран
✓ feat-008 — Авторизация
✓ feat-010 — Push-уведомления
Можно срезать без потери главной ценности (7 фичей, экономия ~$Y, ~3 недели):
✗ feat-002 — Bulk-импорт (можно вручную пока)
✗ feat-004 — Расширенные фильтры
✗ feat-006 — Темы оформления
✗ feat-007 — Экспорт в Excel
✗ feat-009 — Аналитика
✗ feat-011 — Multi-tenant
✗ feat-012 — API для партнёров
Моя рекомендация: режем 7. Получаем MVP за 2 недели вместо 5.
По завершении MVP — можем добавить срезанные одну за другой по приоритету.
Согласен? (д / нет / поправь)
Шаг 4: Применить (если confirm)
# Перевести фичи в superseded или сохранить как captured с пониженным приоритетом
for feat_id in to_trim:
d['features']['captured'].append(d['features'][source_state].pop(feat_id))
d['features'][feat_id]['state'] = 'captured'
d['features'][feat_id]['notes'] = 'trimmed for MVP, return later'
d['features'][feat_id]['trimmed_at'] = today
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago First seen · 125 lines · 59 tokens per session scan A 588cfed27490
trim is a skill published in the GitHub repository andrewcigan/vibe-dev-plugin (5 stars, last pushed 1mo ago), licensed MIT. It adds 59 tokens to every session and 1,111 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
vibe-async-task-queue
Provides a persistent cross-session task queue for work that should be done but isn't blocking current tasks. Enables background and future-session work tracking.
vibe-parallel-task-decomposition
Analyzes large tasks for independent subtasks that can be safely parallelized. Produces a DAG-based dispatch plan with dependency ordering and maximum parallelism.
vibe-iteration-review
Performs end-of-iteration review with quality grading, metrics, and trend analysis. Use at the end of each development iteration or sprint.
evaluator-write-qa
Internal Auto-Harness evaluator skill for sprint QA and QA report writing. Use only inside the Evaluator subagent during qa mode.
evaluator-review-contract-parallel
Internal Auto-Harness evaluator skill for parallel sprint contract review before implementation. Use only inside the Evaluator subagent during review mode.
evaluator-write-qa-parallel
Internal Auto-Harness evaluator skill for parallel sprint QA and QA report writing. Use only inside the Evaluator subagent during evaluatorqaparallel.