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 skills add nWave-ai/nWave --skill nw-fp-algebra-driven-designgit clone --depth 1 https://github.com/nWave-ai/nWaveWrote 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/nwave-ai/nwave/nw-fp-algebra-driven-design)<a href="https://agentmods.dev/skills/nwave-ai/nwave/nw-fp-algebra-driven-design"><img src="https://agentmods.dev/badge/skills/nwave-ai/nwave/nw-fp-algebra-driven-design/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/nwave-ai/nwave/nw-fp-algebra-driven-design"><img src="https://agentmods.dev/badge/skills/nwave-ai/nwave/nw-fp-algebra-driven-design.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium System Prompt Leakage · line 138 Skill contains patterns that could indirectly extract system prompts through rephrasing, translation, summarization, or side-channel techniques.Fix: Guard against indirect extraction by refusing to summarize, translate, or rephrase system instructions. Add explicit anti-extraction clauses.
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.00028 | $0.02090 |
| Opus 5 | $0.00014 | $0.01045 |
| Sonnet 5 | $0.00006 | $0.00418 |
| Haiku 4.5 | $0.00003 | $0.00209 |
Grade A, and why
nw-fp-algebra-driven-design 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 6d 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 — 201 lines — stays where its author put it; the contents beside it link to each section on GitHub.
FP Algebra-Driven Design
Algebraic thinking for API design. Discover the right API before implementing by specifying rules (equations) that operations must satisfy.
Cross-references: fp-principles | fp-domain-modeling | fp-usable-design
1. Why Algebraic Thinking
[STARTER]
Code is the wrong abstraction level for design. Starting with data structures inherits unnecessary constraints.
- Specify rules first, implement second. Implementation is a solution to a system of equations.
- Rules generate tests automatically. Every rule is directly a property test generating thousands of cases.
- Rules reveal missing features. Analysis often exposes operations you need but haven't designed.
- Rules catch contradictions early. Contradiction during design costs minutes; in production, days.
2. The Design Process
[STARTER]
- Start with scope, not implementation. Don't decide data structures upfront.
- Define observations first. How do users extract information? Observations define equality: two values equal if no observation distinguishes them. Gives enormous implementation freedom.
- Add operations incrementally. For each new operation, immediately write rules connecting it to existing ones. This web of rules IS the design.
- Let messy rules signal problems. Complex rules mean coarse building blocks. Decompose until each rule is nearly trivial.
- Generalize aggressively. Remove unnecessary type constraints. If most operations don't inspect contained values, parameterize over them.
3. Common Algebraic Structures
[STARTER] -> [ADVANCED]
Recurring patterns in software. Recognizing them unlocks known rules and capabilities.
[STARTER] Combinable Values (Semigroup)
What: Type with one merge operation where grouping doesn't matter.
Rule: (a merge b) merge c = a merge (b merge c) (associativity)
When: Combining things where parenthesization shouldn't matter.
Examples: String concatenation | config merging | min/max.
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.
- 6d ago First seen · 201 lines · 28 tokens per session scan A 3668d869f026
nw-fp-algebra-driven-design is a skill published in the GitHub repository nWave-ai/nWave (610 stars, last pushed 4d ago), licensed MIT. It adds 28 tokens to every session and 2,090 once invoked, about $0.0001 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-09-03.
Other skills, from other repositories
workflow-patterns
Use this skill when implementing tasks according to Conductor's TDD workflow, handling phase checkpoints, managing git commits for tasks, or understanding the verification protocol.
engineering-workflow
A Chinese-language workflow for reliable software development. It describes exploring the problem, making a plan, using TDD (test-driven development, where tests are written before the code), debugging methodically, reviewing code, and verifying the result.
behavior-contract
Bug condition/postcondition formalization as testable Behavior Contracts. Defines invariants that must be preserved across fixes.
strict-tdd
Strict RED->GREEN->REFACTOR test-driven development with enforcement. Never write production code before a failing test. Atomic commits per TDD cycle.
test-driven-development
Strict RED-GREEN-REFACTOR cycle enforcement. Tests are never skipped or deferred. Run mode only, never watch mode. Exit code evidence mandatory.
tdd-enforcement
Red-Green-Refactor TDD methodology with mandatory failing tests, minimal implementation, quality refactoring, and 80% coverage gating.