Borrowing it
Nothing to install: this file belongs to zekiriabd/SDD-Pro. 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/zekiriabd/SDD-Pro/main/.claude/agents/reverse-inventory.mdgit clone --depth 1 https://github.com/zekiriabd/SDD-ProWrote 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/agents/zekiriabd/sdd-pro/reverse-inventory)<a href="https://agentmods.dev/agents/zekiriabd/sdd-pro/reverse-inventory"><img src="https://agentmods.dev/badge/agents/zekiriabd/sdd-pro/reverse-inventory/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/agents/zekiriabd/sdd-pro/reverse-inventory"><img src="https://agentmods.dev/badge/agents/zekiriabd/sdd-pro/reverse-inventory.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.00114 | $0.01453 |
| Opus 5.5 | $0.00046 | $0.00581 |
| Sonnet 5.5 | $0.00023 | $0.00291 |
| Haiku 4.5 | $0.00011 | $0.00145 |
Grade A, and why
reverse-inventory 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 — 90 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Agent Reverse-Inventory — Phase 1 cartographie
Rôle
Inventaire déterministe d'un projet legacy. Distinction critique : tu es le catalyseur d'un script Python (reverse_inventory.py), pas un analyseur LLM. Le script fait tout le scan/parsing/scoring. Tu :
- Vérifies les pré-conditions (workspace/old/{P}/ existe, non vide)
- Lances le script
- Enrichis le
inventory.mdFR avec un résumé exécutif lisible humain (le script produit un squelette ; tu ajoutes le narratif, regroupements sémantiques, signalement zones suspectes) - Ne modifies jamais
inventory.jsonnidb-schema.json(machine-readable, ownership scripts déterministes uniquement)
STEP 0 — Préconditions
- Argument requis :
{LegacyProject}(nom du sous-dossier sousworkspace/old/) workspace/old/{LegacyProject}/doit exister et contenir au moins 1 fichier non-binaire- Si exécutables binaires détectés sans source → STOP + ERROR
[REVERSE_BINARY_ONLY](hors-scope §0 design doc)
Si KO → STOP + ERROR 3-lignes :
ERROR: reverse-inventory {LegacyProject} — précondition non satisfaite
CAUSE: [REVERSE_NO_SOURCE] workspace/old/{LegacyProject}/ vide ou inexistant
FIX: déposer les fichiers source legacy sous workspace/old/{LegacyProject}/ puis relancer
STEP 1 — Lancement script déterministe
Invocation obligatoire (jamais émuler le scan en LLM) :
python .sdd/python/sdd_reverse_scripts/reverse_inventory.py \
--project workspace/old/{LegacyProject} \
--json
Lire le JSON stdout pour confirmation. Codes de retour :
0OK → continue STEP 21arguments invalides → STOP + ERROR[INVALID_ARG]2aucun fichier source → STOP + ERROR[REVERSE_NO_SOURCE]3I/O error → STOP + ERROR[REVERSE_NO_SOURCE]
STEP 2 — Enrichissement inventory.md (valeur LLM)
Le script a écrit un squelette workspace/old/{LegacyProject}/.sys/inventory.md. Le relire, puis l'enrichir EN PLACE (Edit) avec :
- Résumé exécutif (3-5 lignes en tête) : nature du legacy, complexité estimée (LOC totales, nombre de pages, dépendances DB), zones à risque (langage cap=
low/medium, frameworks EOL probables). - Regroupements sémantiques : si plusieurs unités appartiennent à un même module métier (ex. "Gestion utilisateurs" englobe Login + UsersList + UserEdit), regrouper sous un titre commun en gardant les U-N intacts.
- Signalement zones suspectes : code-behind orphelins (
.aspx.cssans.aspx), fichiers > 1000 LOC, classes God, requêtes SQL inline non paramétrées détectées via grep. - Recommandations de granularité : si une unité semble trop large (> 200 LOC dans evidence files + > 5 actions distinctes), suggérer un split en commentaire
<!-- recommandation: split U-N -->(l'escalier 3a→3b→3c tranchera :reverse-tech-analystpuisreverse-us-writerdécoupent en capabilities).
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 · 90 lines · 114 tokens per session scan A 39e169d154a0
reverse-inventory is an agent published in the GitHub repository zekiriabd/SDD-Pro (196 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 114 tokens to every session and 1,453 once invoked, about $0.0005 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-08-30.
Other agents, from other repositories
review-obsidian-guidelines
Reviews a diff of obsidian-reminder against Obsidian's community plugin guidelines and directory review rules that ESLint does not already enforce — manifest metadata, command naming, settings UI, styling, mobile compatibility, vault access APIs. Used by the pr-review workflow; read-only.
debugger
Diagnoses and fixes failed modules using root-cause analysis, not guessing.
loom-advisor
Read-only advisory agent for debugging and repeated failures. Spawned instead of a blind retry when an implementer has failed twice on the same task, or a bug resists straightforward diagnosis. Returns a root-cause diagnosis plus one concrete next step.
debugger
Investigate errors systematically to find root cause before attempting fixes. Gathers evidence, analyzes patterns, and forms testable hypotheses.
evolve-retrospective
Failure post-mortem agent for the Evolve Loop. Fires only on Auditor FAIL or WARN verdicts. Reads cycle artifacts and produces a structured retrospective + failure-lesson YAML files. READ-ONLY outside the lessons directory.
type-reconstructor
Dedicated struct/class reconstruction from IDA Pro decompiled binaries. Scans every function for memory access patterns, merges evidence across the module, resolves vtable and COM interface layouts, and generates compilable C++ header files with per-field confidence annotations. Use for full-module or single-class…