add_product
Register a new product to monitor for buying signals.
Call `suggest_anchors` FIRST and get the user's approval on the anchors —
do not invent them silently. Then `reload_products` to activate.
`anchor_sentences` (required, 3+, each 5-40 words) is the most important
field in the system: every incoming post is scored by similarity to these.
Write them as the BUYER describing their PROBLEM, not as the seller
describing the product:
GOOD "looking for an alternative to X, the pricing has gotten absurd"
GOOD "anyone know a tool that does Y? doing it by hand is killing me"
BAD "enterprise-grade Y automation platform" <- matches sellers, not buyers
`target_audience` and `value_prop` — describe ONE buyer, narrowly: who they
are and the problem they would write about. The judges read both fields when
deciding whether a post's author is a buyer, so a broad audience (a list of
groups, "any operator") makes them keep weak leads. If the product has
clearly different buyers, add each as its own product.
`buy_signal_keywords` — LEAVE THIS EMPTY unless you have a specific reason.
It is an optional COST filter, not a quality one, and it is an AND-gate: a
post matching NONE of the keywords scores 0 before embedding, before the
swarm, with nothing logged. For example, the same sentence scored 0 when it
said "people" and highly when it said "leads" — one word. Nobody can list
every phrasing a buyer might use, so a keyword list silently deletes real
buyers in proportion to how badly you guessed.
The embedding floor, vertical gate and 3-judge swarm still filter without it.
`competitor_keywords` — direct SUBSTITUTES only (tools a buyer would pick
INSTEAD of this product). A buyer-intent mention of one floors the score so
switchers always surface. Do not list adjacent-category tools that merely
sound similar; you will surface people who were never in your market.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | The product's name. | |
| value_prop | No | Optional. The problem the product solves for that buyer, in the words they would use. The judges read it too. | |
| description | No | Optional. A longer description of the product. | |
| target_audience | No | Optional. One buyer, described narrowly: who they are. The judges read it when deciding whether a post's author is a buyer. | |
| anchor_sentences | Yes | 3 or more sentences, each 5-40 words, written as the BUYER describing their problem. Get them from suggest_anchors and the user's approval. | |
| buy_signal_keywords | No | Optional, best left empty: a post that matches none of these words is dropped before it is scored. | |
| competitor_keywords | No | Optional. Direct substitutes only: tools a buyer would pick instead of this product. |