Quality-gated Knowledge Forge: vertical KB pipeline
Turns one broad industry into 6-12 exclusive sub-domains and grows the KB daily through a 10-rule quality gate and numeric-aware dedup.
$29
Works with the AI Agents you already use
Quality-gated Knowledge Forge: vertical KB pipeline
Example session with this skill installed
612 rows in our PLC troubleshooting base. The last two batches added 180 and I kept maybe 60. I re-read every row by hand and I still cannot tell you what is decaying - duplicates, vague bodies, or rows with no model number in them.
- Read your context and instructions
- Compiled the quality-gated knowledge forge
Verdict: the dimension you were checking by hand is not the one that is decaying. 180 rows in, 63 passed. 71 of the 117 rejects are two reasons in a 3:1 ratio, and neither of them is "vague".
Reject counts, as the gate writes them to --stats
| Reason | Count | What it actually means |
|---|---|---|
duplicate | 44 | 31 exact after normalization, 13 near-duplicates past the 0.75 character-set Jaccard threshold |
no information | 27 | no digit, no model number, no parameter anywhere in the body |
body too short | 19 | under the 70-character floor |
too few tags | 14 | fewer than 2 tags |
title too long | 9 | over the 72-character ceiling |
invalid category | 4 | cat not in the allow-list passed to --cats |
Samples are capped at 20 per reason and rejected_truncated carries the remainder, so 44 duplicates arrive as 20 rows plus a count of 24. The count is the number to trust, not the length of the list.
Why 44 duplicates is not a generation problem
The prompt for a round is the base spec plus
every title already in the base as an exclusion list. That is gate one. The gate script is gate two, and it reads its own input and output files back in as existing titles so a rerun cannot re-admit its own rows. Duplicates at 44 rather than 4 means the exclusion list the model saw was thin: a --kb-dir pointing at a directory that no longer holds the merged base, or an --exclude-prefixes that skipped the very files holding the older rows.
Next steps, in this order
- Re-run with
--kb-dir .set to the directory that actually holds the merged base, and drop--exclude-prefixesfor one round. Ifduplicatefalls below 10, the exclusion list was the cause and the generator was never the problem. - Keep
--require-numberon. The gate script defaults it off when run standalone; the pipeline passes it explicitly, and turning it off is exactly what lets 27 numberless rows through. - Run
round.py --statusbefore the next round. A domain with 3 consecutive rounds of 0 new items readslikely exhausted, and the answer there is a new angle on the coverage list - by process step, by role, by model family - not more volume. - Concurrency stays at 2 lanes with a 20-second stagger. The cap is 3 for a measured reason: 4 lanes do not raise an error, they all time out and the log says nothing at all.
No vendor API key is involved on this side: the gate reads JSON, writes JSON, and the only thing it decides is whether a row enters the base.
Connects securely to your tools. The creator never sees your data.
About this skill
Most 'build a knowledge base' skills stop at a prompt template. This one starts where the real failure happens: around row 300, when entries start repeating themselves, start going vague, and stop being read.
What you get: sub-domain segmentation that keeps domains mutually exclusive (overlapping domains silently break deduplication later), a strict JSON-Schema generation template, a 10-rule quality gate with exact thresholds (field completeness, title length, body length, information density counted as concrete values / model numbers / parameters), numeric-aware similarity so HMI-200 and HMI-2000 are not collapsed into one, an exclusion list fed from the whole corpus, bounded concurrency with staggered starts, and an incremental build → dead-link check → deploy → verify chain with a stop-the-line policy per stage.
Includes two Python scripts (quality gate with structured reject statistics, round rotator with a state machine) and two reference documents on domain design and pipeline ops.
Use it when you are building FAQ libraries, troubleshooting manuals, technical quick-reference sites or SOP repositories, and you want them to keep growing without a human re-reading every row.
What it does not do: it does not write your domain content for you, it ships no vendor API keys, and it promises no traffic or index volume, only that failing rows never enter the base.
Requires agent intervention to write candidate JSON files. Information density rule (Rule 10) is enabled by default for pipeline rounds and requires digits/parameters in the content body.
How to use
- 1
Connect your agent to the Agensi MCP
Copy the prompt and paste it into Claude, ChatGPT, Cursor or any agent that supports MCP. It sets up the connection for you. Manual setup
- 2
Sign in to Agensi
Your agent shows a sign-in link. Sign in and click Allow.
- 3
Ask for what you need
Your agent loads this skill and uses it on your task. It always asks before any payment.
Reviews
No reviews yet
Be one of the first to try it. Every listed skill goes through the trust checks below.
Security scanned
Checked by our 8-point scan before listing
Fresh listing
Recently published to Agensi
Money-back guarantee
Doesn't do what its page promises? You get your money back.
Trust & safety
Security scan
Security scan passed 6 days ago
Requires
Permissions
Terminal / Shell: the skill ships two CLI scripts and the operator runs them from their own terminal (python scripts/round.py <category>, python scripts/quality_gate.py <file>); nothing runs on its own. Read Files: the gate reads the existing corpus to build the exclusion list and to dedup the new batch against what is already published. Write Files: the gate writes the accepted and rejected JSON plus the round state file under the project directory the operator names. No network, no browser, no environment variables: neither script imports a network module or reads the environment, and neither spawns a process.