Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/yerdaulet-damir/vibe-coding-rulesnpx agentmods add skills/yerdaulet-damir/vibe-coding-rules/new-featureWrote 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/yerdaulet-damir/vibe-coding-rules/new-feature)<a href="https://agentmods.dev/skills/yerdaulet-damir/vibe-coding-rules/new-feature"><img src="https://agentmods.dev/badge/skills/yerdaulet-damir/vibe-coding-rules/new-feature/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/yerdaulet-damir/vibe-coding-rules/new-feature"><img src="https://agentmods.dev/badge/skills/yerdaulet-damir/vibe-coding-rules/new-feature.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.00068 | $0.01164 |
| Opus 5.5 | $0.00027 | $0.00466 |
| Sonnet 5.5 | $0.00014 | $0.00233 |
| Haiku 4.5 | $0.00007 | $0.00116 |
Grade A, and why
new-feature 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 1mo 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 — 145 lines — stays where its author put it; the contents beside it link to each section on GitHub.
new-feature
Do not open any file for editing until all 5 steps below are completed.
Step 1 — Define the API contract
Write the contract in plain text before any code. Answer these 4 questions:
Endpoint: POST /generate/image
Request: { prompt: str, model_id: str, width: int, height: int }
Response: { task_id: str, status: "queued" }
Side effect: creates a task, holds credits
If you cannot answer all 4 in 2 sentences, the feature scope is unclear. Stop and clarify with the user.
Step 2 — Identify layers touched
Use this decision matrix to know which files you will create or modify:
| What the feature needs | Layers touched | Files |
|---|---|---|
| New HTTP endpoint only | Router | routers/<domain>.py |
| Endpoint + business logic | Router + Service | + services/<domain>/ |
| Logic + database | Router + Service + Repo | + repositories/protocols.py, repositories/sqlalchemy/<domain>.py |
| Logic + external API | Router + Service + Provider | + providers/<name>.py |
| Logic + credits charge | All of the above + Credits | + services/credits/user.py (read-only — single writer!) |
Write the list: "This feature touches: Router, Service, Repo."
Do not touch more layers than listed. If you discover you need more, stop and re-plan.
Step 3 — Define the test scenario
Write the test scenario before code. Two scenarios minimum:
# Scenario 1: happy path
# Given: user has 10.00 credits, valid prompt
# When: POST /generate/image with correct payload
# Then: 202 response, task_id returned, credits held
# Scenario 2: edge case
# Given: user has 0.00 credits
# When: POST /generate/image
# Then: 402 response, no task created, no credits touched
These become your actual pytest tests in tests/unit/ or tests/integration/.
Step 4 — Build bottom-up
Always build in this order. Never start from the router.
1. Repository (if new data access needed)
└── Add method to CreditsRepoProtocol
└── Implement in SQLAlchemyCreditsRepo
└── Implement in FakeCreditsRepo (tests/conftest.py)
2. Service
└── Accepts repo via Protocol (never imports SQLAlchemy)
└── Contains all business logic
└── Raises domain exceptions (ValueError, not HTTPException)
3. Router
└── Thin: validate schema → call service → return response
└── Maps domain exceptions to HTTP codes
└── No logic beyond 10 lines per endpoint handler
4. Schema
└── Request and response Pydantic models
└── Goes in schemas/<domain>.py, never inside routers/
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.
- 1mo ago First seen · 145 lines · 68 tokens per session scan A b36aede83c63
new-feature is a skill published in the GitHub repository yerdaulet-damir/vibe-coding-rules (34 stars, last pushed 5mo ago), licensed MIT. It adds 68 tokens to every session and 1,164 once invoked, about $0.0003 per session on Opus 5.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
axum-idioms
Axum (0.8+) web framework patterns: type-safe extractors, Tower middleware, route routing, and graceful shutdown. Use when implementing HTTP APIs or web services in Rust. Pair with rust-idioms.
hono-idioms
Hono lightweight web framework patterns: type-safe route handlers, middleware composition, Zod validation, and RPC clients for Cloudflare Workers, Node, or Bun. Use when building Hono APIs. Pair with typescript-idioms.
logging-implementation
Structured logging implementation patterns: log levels, mandatory context fields (correlationId, userId, duration), security (PII scrubbing), and per-language library choices (Go slog, TypeScript pino, Python structlog). Load when implementing logging in any operation entry point. Prerequisite…
rails-idioms
Ruby on Rails framework patterns: ActiveRecord scopes, N+1 query prevention, model validations, RESTful routing, and RSpec/Minitest testing. Use when building, maintaining, or auditing Rails web applications and APIs. Pair with ruby-idioms.
api-documentation
OpenAPI 3.1 specification writing, request/response examples, error documentation, versioning, and interactive API portal patterns.
django-idioms
Django and Django REST Framework (DRF) patterns: ORM queries, model managers, class-based views, serializers, migrations, and pytest-django testing. Use when building or maintaining Django backend applications. Pair with python-idioms.