Borrowing it
Nothing to install: this file belongs to managedcode/MCPGateway. 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/managedcode/MCPGateway/main/.codex/skills/mcaf-nfr/SKILL.mdgit clone --depth 1 https://github.com/managedcode/MCPGatewayWrote 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/managedcode/mcpgateway/mcaf-nfr)<a href="https://agentmods.dev/skills/managedcode/mcpgateway/mcaf-nfr"><img src="https://agentmods.dev/badge/skills/managedcode/mcpgateway/mcaf-nfr/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/managedcode/mcpgateway/mcaf-nfr"><img src="https://agentmods.dev/badge/skills/managedcode/mcpgateway/mcaf-nfr.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.00042 | $0.00795 |
| Opus 5.5 | $0.00017 | $0.00318 |
| Sonnet 5.5 | $0.00008 | $0.00159 |
| Haiku 4.5 | $0.00004 | $0.00080 |
Grade A, and why
mcaf-nfr 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.
This is a copy
86% identical to dotnet-mcaf-nfr — 25 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 93 lines — stays where its author put it; the contents beside it link to each section on GitHub.
MCAF: Non-Functional Requirements
Trigger On
- a feature or architecture change needs explicit quality attributes
- a team is using vague words like "fast", "reliable", or "secure" without measurable meaning
- docs, ADRs, and tests are out of sync on quality expectations
Value
- produce a concrete project delta: code, docs, config, tests, CI, or review artifact
- reduce ambiguity through explicit planning, verification, and final validation skills
- leave reusable project context so future tasks are faster and safer
Do Not Use For
- generic architecture or feature writing with no quality-attribute decision
- loading all NFR references at once
Inputs
- the changed feature, boundary, or rollout path
- the quality attributes that materially affect it
- current docs, ADRs, tests, and ops expectations
Quick Start
- Read the nearest
AGENTS.mdand confirm scope and constraints. - Run this skill's
Workflowthrough theRalph Loopuntil outcomes are acceptable. - Return the
Required Result Formatwith concrete artifacts and verification evidence.
Workflow
- Decide which quality attributes materially affect the change.
- Turn vague goals into explicit requirements, constraints, or testable expectations.
- Link NFRs to feature docs, ADRs, and verification when they affect design or rollout.
- Use only the specific reference files that match the active quality attribute.
Deliver
- explicit NFRs for the changed area
- docs or ADRs that describe measurable quality attributes
- better alignment between architecture, testing, and operations
Validate
- each chosen NFR is measurable or at least falsifiable
- the selected attributes are the ones that actually drive design trade-offs
- verification and operational expectations are linked where needed
Ralph Loop
Use the Ralph Loop for every task, including docs, architecture, testing, and tooling work.
- Plan first (mandatory):
- analyze current state
- define target outcome, constraints, and risks
- write a detailed execution plan
- list final validation skills to run at the end, with order and reason
- Execute one planned step and produce a concrete delta.
- Review the result and capture findings with actionable next fixes.
- Apply fixes in small batches and rerun the relevant checks or review steps.
- Update the plan after each iteration.
- Repeat until outcomes are acceptable or only explicit exceptions remain.
- If a dependency is missing, bootstrap it or return
status: not_applicablewith explicit reason and fallback path.
What ships with it
14 files 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.
- references/accessibility.md 422 B
- references/availability.md 354 B
- references/capacity.md 312 B
- references/compliance.md 3.8 KB
- references/data-integrity.md 3.4 KB
- references/disaster-recovery.md 324 B
- references/internationalization.md 2.9 KB
- references/interoperability.md 1.7 KB
- references/maintainability.md 374 B
- references/performance.md 285 B
- references/portability.md 3.3 KB
- references/reliability.md 327 B
- references/scalability.md 1.7 KB
- references/usability.md 3.5 KB
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 · 93 lines · 42 tokens per session scan A 241bca30ea97
mcaf-nfr is a skill published in the GitHub repository managedcode/MCPGateway (5 stars, last pushed 8d ago), licensed MIT. It adds 42 tokens to every session and 795 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. It is 86% identical to dotnet-mcaf-nfr, differing in 25 lines, and is treated as a copy.
Other skills, from other repositories
opentelemetry-net-instrumentation
Provides guidance for implementing OpenTelemetry instrumentation in .NET codebases, covering tracing (Activities/Spans), metrics, logs, naming conventions, error handling, performance, SDK setup, resources, context propagation, and API design best practices.
migrate-xunit-to-xunit-v3
Migrate .NET test projects from xUnit.net v2 to xunit.v3 and fix v3 breaks. Use for package/CPM conversion, OutputType=Exe, preserving the VSTest or MTP runner (including projects currently using YTest.MTP.XUnit2), incompatible TFMs, async void tests, string-to-Type attributes, custom Fact/Theory/BeforeAfterTest…
wpf
Build and modernize WPF applications on .NET with correct XAML, data binding, commands, threading, styling, and Windows desktop migration decisions. USE FOR: working on WPF UI, MVVM, binding, commands, or desktop modernization; migrating WPF from .NET Framework to .NET; integrating newer Windows capabilities into a…
mcp
Build or consume Model Context Protocol (MCP) servers and clients in .NET using the official MCP C# SDK, including stdio, Streamable HTTP, tools, prompts, resources, and capability negotiation. USE FOR: .NET MCP servers or clients; stdio versus HTTP transport choices; tools, resources, prompts, completions, and…
template-instantiation
Creates .NET projects from templates with validated parameters, smart defaults, Central Package Management adaptation, and latest NuGet version resolution. USE FOR: creating new dotnet projects, scaffolding solutions with multiple projects, installing or uninstalling template packages, creating projects that respect…
sharpconsoleui
Use SharpConsoleUI to build full terminal (TUI) applications in .NET — equally suited to full-screen single-window apps and multi-window desktops with overlapping draggable windows — using a compositor, a DOM layout engine, and 40+ reactive controls (data tables, tree views, forms, an embedded PTY terminal, markdown…