Borrowing it
Nothing to install: this file belongs to level09/enferno. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/level09/enferno/master/.agents/skills/enferno-dev/SKILL.mdgit clone --depth 1 https://github.com/level09/enfernoWrote 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/level09/enferno/enferno-dev)<a href="https://agentmods.dev/skills/level09/enferno/enferno-dev"><img src="https://agentmods.dev/badge/skills/level09/enferno/enferno-dev/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/level09/enferno/enferno-dev"><img src="https://agentmods.dev/badge/skills/level09/enferno/enferno-dev.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00070 | $0.02041 |
| Opus 5.5 | $0.00028 | $0.00816 |
| Sonnet 5.5 | $0.00014 | $0.00408 |
| Haiku 4.5 | $0.00007 | $0.00204 |
Grade A, and why
enferno-dev scanned grade A with 1 finding 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 21d 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
const res = await axios.get('/api/products', { params: { page, per_page: itemsPerPage } }); How it starts
The opening of the file, as written. The whole thing — 225 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Enferno Development
Flask 3 + SQLAlchemy 2.x + Vue 3 + Vuetify 4. No frontend build step. uv for everything.
Quick Reference
uv run flask run --port 5001 # Dev server (5001 on macOS)
uv run flask create-db # Create tables and stamp migrations
uv run flask install # Create admin user
uv run flask db migrate -m "msg" # Draft migration, review before upgrade
uv run flask db upgrade # Apply migrations
uv run pytest # Routes, auth, admin API, migrations, setup.sh
uv run ruff check . && uv run ruff format . # Lint + format
Blueprint Structure
enferno/
├── feature_name/
│ ├── views.py # Page routes and /api/ endpoints
│ ├── models.py # SQLAlchemy models
│ └── forms.py # WTForms (if needed)
└── templates/feature_name/
Register in register_blueprints() in enferno/app.py:
from enferno.feature_name.views import bp as feature_bp
app.register_blueprint(feature_bp)
Models
Use BaseMixin (save()/delete()) and implement to_dict()/from_dict(). After changing models, run flask db migrate and review the generated revision.
from enferno.extensions import db
from enferno.utils.base import BaseMixin
class Product(db.Model, BaseMixin):
__tablename__ = "products"
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(255), nullable=False)
price = db.Column(db.Numeric(10, 2))
active = db.Column(db.Boolean, default=True)
def to_dict(self):
return {"id": self.id, "name": self.name, "price": float(self.price or 0), "active": self.active}
def from_dict(self, data):
self.name = data.get("name", self.name)
self.price = data.get("price", self.price)
self.active = data.get("active", self.active)
return self
API Endpoints
Protect the whole blueprint in before_request. Payloads are {"item": {...}}; lists return items, total, perPage. Log admin actions with Activity.register.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 21d ago Changed 8a82b4f51073
- 23d ago Changed · +2 lines 7c502e51fbdd
- 25d ago Changed d6ad199a8b45
- 1mo ago Changed · +7 lines · -12 tokens per session 648c04b0b52d
- 2mo ago First seen · 216 lines · 82 tokens per session scan A f8649334006f
enferno-dev is a skill published in the GitHub repository level09/enferno (569 stars, last pushed yesterday), licensed MIT. It adds 70 tokens to every session and 2,041 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
enferno-dev compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| enferno-devlevel09/enferno | Skill | 569 | yesterday | MIT | A | 70 | Claude Code, Codex |
| djangoalivirgo/Major-AI-Skills | Skill | 2 | yesterday | MIT | A | 38 | Claude Code |
| flaskalivirgo/Major-AI-Skills | Skill | 2 | yesterday | MIT | A | 31 | Claude Code |
| flaskbobmatnyc/claude-mpm-skills | Skill | 78 | 3mo ago | MIT | A | 25 | Claude Code |
| Flask Testing PatternsPramodDutta/qaskills | Skill | 245 | 3d ago | MIT | A | 30 | Claude Code, Codex |
| flaskbobmatnyc/claude-mpm | Skill | 158 | 2mo ago | none | A | 25 | Claude Code |
| FastAPI Customer Support Tech Enablementmanutej/luxor-claude-marketplace | Skill | 63 | 4mo ago | none | A | 36 | Claude Code |