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 nebelov/yandex-direct-for-all --skill structured-output-file-integritygit clone --depth 1 https://github.com/nebelov/yandex-direct-for-allWrote 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/nebelov/yandex-direct-for-all/structured-output-file-integrity)<a href="https://agentmods.dev/skills/nebelov/yandex-direct-for-all/structured-output-file-integrity"><img src="https://agentmods.dev/badge/skills/nebelov/yandex-direct-for-all/structured-output-file-integrity/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/nebelov/yandex-direct-for-all/structured-output-file-integrity"><img src="https://agentmods.dev/badge/skills/nebelov/yandex-direct-for-all/structured-output-file-integrity.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.00047 | $0.01624 |
| Opus 5.5 | $0.00019 | $0.00650 |
| Sonnet 5.5 | $0.00009 | $0.00325 |
| Haiku 4.5 | $0.00005 | $0.00162 |
Grade A, and why
structured-output-file-integrity 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 9d 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 — 92 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Structured Output File Integrity
Use this skill for local structured files and pasted structured answers that must be saved without silent row loss, re-keying, reordering, schema drift, or invented rows.
This also applies to single JSON deliverables that contain arrays or object collections, such as role results, scored candidates, media plans, validation packets, and other schema-bound local artifacts. A JSON file does not become safe just because it is one document instead of JSONL.
Core Rule
When the user asks to save, repair, or transform an existing TSV/CSV/JSONL/table output, preserve the declared structure unless the user explicitly authorizes a structural change.
Required Checks
When extracting a registry or other table from a multi-table document, identify the intended container by its headings, expected columns and surrounding context before comparing rows. The first table is not a default semantic match. Zero or several matching containers means unresolved selection, not an empty registry. Use a positional table index only after identifying the container, then perform the key, schema and count checks below.
- Identify stable row keys before writing:
candidate_id,row_id,id, primary key, or a deterministic composite if no single key exists. For JSON arrays or object collections, identify the stable object key before editing, for examplecandidate_code,role_id,slug,rank, or a documented composite. Do not patch by broad text replacement when the same wording can occur in another object. - Preserve header fields, delimiter, row order, and every stable row key unless the current task explicitly permits changing them. Derive validation constraints from the declared format and actual source records. Do not reject established representations, such as same-origin relative API URLs, merely because a new checker assumed absolute URLs.
- After writing, compare the source and destination:
- header equality or documented approved header change;
- row count;
- stable row-key set;
- duplicate key count;
- order of stable keys when order matters.
For scripted rewrites, write to a temporary sibling file first. Parse and
validate its schema and keys before atomically replacing the original, so
an exception during serialization cannot leave only a header or partial rows.
When using Python
csv, setlineterminator='\n'if the source uses LF; the writer's default CRLF otherwise changes line endings even when parsed values match. Before reading a TSV/CSV whose fields may contain long source evidence or serialized arrays, raise Python's default 131072-byte CSV field limit (for example,csv.field_size_limit(sys.maxsize), or the largest supported value on that platform). Afield larger than field limitparser error is not evidence of a damaged row; never skip or truncate that row to proceed.
- Remove tool-wrapper or transcript contamination before saving: shell warnings, truncation notices, command banners, assistant prose, Markdown fences, pasted log headers, and other non-table lines must not be mixed into TSV/CSV/JSONL content. If such lines are present in the source transcript, filter them by schema and stable keys before writing.
- Do not trust line count alone. A file can have the expected number of lines and still lose one source row, duplicate another, change keys, or include warning/prose lines in place of data.
Calculate reported CSV/TSV volumes from parsed data records, excluding the
header. Never use
wc -las the delivered record count: it includes the header and may count multiline fields as several lines. Describe uniqueness using the actual deduplication key, including language or other composite fields. - If the output came from a previous assistant answer, reconstruct the source row-key set from that answer or the original source file before saving.
- If any key is missing, new, duplicated, reordered without approval, or replaced by a non-data line, stop and repair before reporting completion.
- If a structured source has already been pinned by a passport, checksum, signed decision, or mutation journal, treat those exact bytes as immutable after the external write. Record later owner decisions, application outcomes, and status transitions in a separate decision or result artifact. Before editing such a source, check whether any existing passport or completed write references its digest; editing the pinned source would invalidate the audit chain.
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.
- 9d ago First seen · 92 lines · 47 tokens per session scan A 6bfd33fffe0e
structured-output-file-integrity is a skill published in the GitHub repository nebelov/yandex-direct-for-all (21 stars, last pushed 2d ago), licensed MIT. It adds 47 tokens to every session and 1,624 once invoked, about $0.0002 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-10-24.
Other skills, from other repositories
manage-safety-analysis
Create, populate, and manage safety analysis spreadsheets (FMEA, FHA, HARA, custom) and fault trees (FTA) in Safety Analysis Manager. Use when the user asks to perform FMEA, hazard analysis, fault tree analysis, safety analysis, or work with Safety Analysis Manager documents. Requires Simulink Fault Analyzer.
matlab-use-spreadsheet-link
Exchange data between Excel and MATLAB using Spreadsheet Link VBA macros and worksheet functions. Use when writing Excel VBA macros that call MLPutMatrix, MLGetMatrix, MLPutVar, MLGetVar, MLPutRanges, MLEvalString, MLGetFigure, or MatlabRequest.
matlab-import-export-data
Read or write data files in MATLAB. Use when the task involves tables, spreadsheets, delimited text, or structured files in CSV, Excel, Parquet, JSON, or XML format — including but not limited to importing, exporting, loading, parsing, converting, validating, configuring import options, reading from URLs, handling…
matlab-import-tracking-data
Import raw data (CSV, XLSX, TXT, or MATLAB tables) into formats used by Sensor Fusion and Tracking Toolbox. Handles both ground truth trajectories and sensor detection data. For truth: builds trackingScenarioRecording, tuning timetable, truthlog, or converted table. For sensor data: builds task-oriented dataFormat…
opendart-excel
A workflow for creating Excel files from South Korea’s DART company filings, which are public financial reports submitted to the Financial Supervisory Service.
tencent-docs
Use when the user asks to search, read, create, edit, or organize Tencent Docs documents, spreadsheets, slides, and related online files through the official Tencent Docs MCP server.