Borrowing it
Nothing to install: this file belongs to scouzi1966/maclocal-api. 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/scouzi1966/maclocal-api/main/.claude/skills/test-afm-assertions/SKILL.mdgit clone --depth 1 https://github.com/scouzi1966/maclocal-apiWrote 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/scouzi1966/maclocal-api/test-afm-assertions)<a href="https://agentmods.dev/skills/scouzi1966/maclocal-api/test-afm-assertions"><img src="https://agentmods.dev/badge/skills/scouzi1966/maclocal-api/test-afm-assertions/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/scouzi1966/maclocal-api/test-afm-assertions"><img src="https://agentmods.dev/badge/skills/scouzi1966/maclocal-api/test-afm-assertions.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.00000 | $0.02549 |
| Opus 5.5 | $0.00000 | $0.01020 |
| Sonnet 5.5 | $0.00000 | $0.00510 |
| Haiku 4.5 | $0.00000 | $0.00255 |
Grade A, and why
test-afm-assertions 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 — 188 lines — stays where its author put it; the contents beside it link to each section on GitHub.
test-afm-assertions
Run AFM assertion tests across one or more models with deterministic pass/fail validation. Tests tool calling (including XML format), stop sequences, logprobs, think extraction, streaming, prompt cache, error handling, and performance.
Triggers
Use this skill when the user asks to:
- Run assertion tests against specific models
- Validate tool calling across Qwen3/Qwen3.5 models
- Compare models on the same assertion suite
- Regression test after code changes with multiple models
- Validate XML tool call parsing for Qwen3-Coder or Qwen3.5 models
First Questions to Ask
- Which model(s)? — Ask the user which model(s) to test. Show available models:
MACAFM_MLX_MODEL_CACHE=/Volumes/edata/models/vesta-test-cache ./Scripts/list-models.sh - Tier? — unit (offline, ~5s), smoke (~2 min/model), standard (~5 min/model), or full (~15 min/model)?
Default: standard. Use
unitfor offline-only Swift tests (no server needed). - Forced parser? — Should we also test with
--tool-call-parser qwen3_xml? Suggest yes if testing Qwen3/Qwen3.5 models. - Grammar constraints? — Should we test with
--enable-grammar-constraints? Recommended yes — EBNF grammar-constrained decoding forces valid XML tool call structure at generation time, preventing JSON-inside-XML format switching and missing required parameters. Requires--tool-call-parser afm_adaptive_xml. Matrix testing shows grammar constraints improve tool call success from 60% to 100% on realistic workloads (35B-A3B model). - Server already running? — If yes, use single-model mode (
test-assertions.sh). If no (or multiple models), use multi-model mode (test-assertions-multi.sh).
Common Model Configurations
Qwen3 XML Format Models (auto-detect xmlFunction)
| Model | Type | Size | Notes |
|---|---|---|---|
mlx-community/Qwen3.5-35B-A3B-4bit |
qwen3_5_moe | 19 GB | Primary test model |
mlx-community/Qwen3.5-9B-MLX-4bit |
qwen3_5 (dense) | 5.6 GB | Fast, dense Qwen3.5 |
mlx-community/Qwen3-Coder-Next-4bit |
qwen3_5_moe | 42 GB | Coder variant, no thinking |
mlx-community/Qwen3-Coder-30B-A3B-Instruct-4bit |
qwen3_moe | 16 GB | Coder MoE |
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 · 188 lines · 0 tokens per session scan A b5caaee2765f
test-afm-assertions is a skill published in the GitHub repository scouzi1966/maclocal-api (348 stars, last pushed 12d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 2,549 tokens. 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-30.
Other skills, from other repositories
triage-ticket
Triage an Acme support ticket - set priority, area and next step using Acme's priority matrix.
code-review
Review diffs and change sets for bugs, regressions, risks, and missing tests.
dotty-av-test
Run local black-box voice tests against the physical Dotty robot by playing a TTS prompt through the workstation speakers while the C920 records video and room audio. Use when testing Dotty's wake word, ASR, spoken response, expressions, or end-to-end voice behavior on this bench.
load-testing
Use when designing and executing load testing, stress testing, endurance testing, spike testing, and performance testing. Includes test planning, test script creation, result analysis, and performance optimization. Based on CPE certification and performance testing best practices.
test-automation-architecture
Use when designing test automation frameworks, implementing page object patterns, creating test reporting systems, and managing parallel test execution. Includes test strategy, test data management, and test infrastructure setup. Based on CTFL-TA and ISTQB Advanced Level certifications.
testing-strategy
Use when designing comprehensive testing strategies, implementing test coverage, setting up CI/CD quality gates, and defining unit, integration, and E2E test approaches. Includes testing pyramid, coverage thresholds, and test automation best practices. Based on software testing certification standards and industry…