agents/taxonomy-categorization
Somewhere in your catalog is a category called “Other.”
It has four thousand SKUs in it. None of them are filterable, none rank, and none can be syndicated — because the category determines the template, the required attributes and the rules. Category is not metadata. It is the root dependency.
input
ProCraft Brushless Cordless Impact Driver 20V Max 1/4in Hex
Three standards resolve to a leaf · one honestly does not
Category is not a label. It is the root dependency.
Teams treat categorisation as filing — a tidy-up task worth doing when there is time. It is not. The leaf category determines which template applies, which attributes are required, which compliance rules bind, which facets appear, and which search queries you are eligible for at all.
A SKU in the wrong node fails downstream in ways that look like unrelated problems: a rejected feed, a missing filter, an unexplained ranking gap.
It is also not one problem. A single SKU needs a Google node for shopping feeds, an Amazon browse node to list, a UNSPSC code for procurement buyers, and a GS1 brick for data pools. These trees were built by different bodies for different purposes and they disagree.
So the agent classifies into all of them at once, and reports each independently — including when one of them has no honest answer.
Down the tree, one level at a time.
Each step names the evidence that chose the branch. GS1 GPC is the interesting one — it stops.
Product Taxonomy
GPT-6491
├─Hardware
├─Tools
├─Impact Drivers & Drills
"impact driver" in title · hex chuck attribute
└─Cordless Impact Drivers
battery platform attribute present · 20V Max
Any classifier can reach 100% coverage by inventing a bucket. Coverage is not the metric.
Classifies into several standards at once, because a SKU needs a Google node for shopping feeds, an Amazon browse node for listing, and a UNSPSC code for procurement customers — and these trees do not agree with each other.
Uses attributes and imagery, not only the title, so a product whose name says nothing useful is still classified from its specification.
Explains each descent step, naming the evidence that selected a branch, so a disputed classification can be argued with rather than merely overridden.
Re-classifies when a standard revises its tree, and reports which SKUs moved.
Learns your own overrides — a correction applied once becomes a rule for structurally similar products.
Guess a leaf to avoid holding at a parent. A 61% split between two sibling nodes is reported as a 61% split.
Create a catch-all node. There is no "Other", "Miscellaneous" or "Uncategorised" bucket in the output.
Force a SKU into a standard where no honest node exists, rather than reporting the standard as unmappable.
Silently reclassify a product a human has pinned to a category.
Use a competitor's classification as evidence — their node choice is not a fact about your product.
Runs ahead of listing and compliance, since both depend on the node it returns.
One call, every standard you publish against.
POST /v1/agents/taxonomy-categorization/run
{
"sku": "PC-ID20-BL",
"standards": ["google", "amazon", "unspsc", "gpc"],
"min_leaf_confidence": 0.95,
"on_ambiguous": "hold_at_parent"
}{
"run_id": "run_b410fe93",
"google": { "code": "GPT-6491", "confidence": 0.999 },
"amazon": { "code": "NODE_228013", "confidence": 1.0 },
"unspsc": { "code": "27112713", "confidence": 0.998 },
"gpc": {
"held_at": "Drilling / Driving Machines (Powered)",
"candidates": [
{ "brick": "Impact Driver", "p": 0.614 },
{ "brick": "Impact Wrench", "p": 0.386 }
],
"resolve_with": "drive_size"
}
}Classifies new SKUs as they arrive, before anything downstream runs.
Re-runs when a new attribute might resolve a held classification.
Fires when a standard publishes a new version and reports what moved.
Learns from a human correction and applies it to similar products.
The node this agent returns decides which template, which rules and which required attributes apply downstream.
Catalog Enrichment
catalog-enrichment
Reads supplier documents and resolves the attributes everything downstream depends on.
Content Copywriter
content-copywriter
Writes titles and bullets per channel and locale, grounded in resolved attributes.
Template Listing
ai-template-listing
Maps the resolved record into each channel's native template and emits it.
Compliance Validator
compliance-validator
Checks every claim against the rule that governs it, and blocks what cannot be substantiated.
Image Enhancement Studio
image-enhancement-studio
Derives per-channel image assets to each marketplace's ratio and background rules.
Send us everything in “Other.”
Export whatever is sitting in your catch-all category. We will classify it into every standard you publish against, return the confidence and evidence for each decision, and flag the ones no honest classifier should resolve without more data.
Titles and attributes only · No integration · Results in 5 working days