Skip to content

Make seller-copilot marketplace-aware: add Shopee Brasil - #28

Open
fiharet34 wants to merge 1 commit into
joomcode:mainfrom
fiharet34:add-shopee-to-seller-copilot
Open

Make seller-copilot marketplace-aware: add Shopee Brasil#28
fiharet34 wants to merge 1 commit into
joomcode:mainfrom
fiharet34:add-shopee-to-seller-copilot

Conversation

@fiharet34

Copy link
Copy Markdown
Contributor

Summary

Makes the merged seller-copilot skill marketplace-aware: it now covers Shopee Brasil
alongside Mercado Livre, and decides which one a request belongs to before doing anything else.

Eleven files: SKILL.md modified, plus references/which-marketplace.md and nine
references/shopee-*.md procedures. The fifteen Mercado Livre reference files are untouched —
byte-identical to what merged in #27.

Shopee sellers currently have no entry point in this catalogue at all; every skill here is
Mercado Livre only.

Why one skill rather than a second one

The two marketplaces are independent datasets with different grains, different field names and
different estimate methods, and the connector forbids mixing them in a single query. A seller
does not always say which one they mean — so deciding is itself the first step of the work,
and that decision has to live somewhere a seller's question reaches. A separate Shopee skill
would only ever be reached by someone who already said "Shopee".

How the decision is made

references/which-marketplace.md holds the logic and the full capability comparison. SKILL.md
carries a compact Step 0 that runs before any analysis:

  • The seller said so → take them at their word.
  • An MLB-prefixed identifier or a mercadolivre link → Mercado Livre. A bare 10–11 digit
    number
    or a shopee link → Shopee.
  • Buy-box, medals, keywords, fulfilment are Mercado Livre concepts → Mercado Livre.
  • Otherwise ask, in one short question, before querying. No defaulting to the richer dataset.

Never mix the two in one query, table or total. Comparing them is legitimate and produces two
labelled analyses side by side, compared by orders of magnitude rather than exact figures,
because the estimate methods differ.

Shopee coverage is narrower, and the skill says so

Nine analyses are supported: category evaluation, market structure, finding products, validating
a product, item momentum, competitor discovery, shop profiling, assortment and price gaps,
pricing.

These are declared unavailable with the reason, never approximated and never answered from
Mercado Livre data instead:

Not available on Shopee Why
Keyword / search data Does not exist for Shopee
Seasonality, when to stock, long-run trend History begins May 2026 — too short
Buy-box / catalogue position No such mechanic; every row is an item
Seller medals, reputation ladder Badge tiers only — official / preferred / regular
Fulfilment, free-shipping, listing type Not available as item attributes
Cancellation rate Not available
Brand market share Coverage is a lower bound; share is not computable
Per-variant pricing Item-level only
Fees, commissions, real margin No Shopee fee data is held

One capability runs the other way: Shopee has a per-item weekly sales series that Mercado Livre
lacks
, used by shopee-item-momentum.md, which states that the weekly figure is smoothed from a
rolling counter rather than measured.

Evidence

A 22-item pack run through a real agent CLI against the live connector. Routing is asserted
from the trace rather than scored by a judge
— a judge cannot see which tool was called, and an
answer built from the wrong marketplace reads perfectly well.

Tier What it asserts Result
1 Right marketplace queried, wrong one not; reference reads match 8/8
2 No marketplace named → asks, queries nothing 2/3
3 Both marketplaces → data from each, kept separate 3/3
4 Six capabilities Shopee lacks declined; two it has not refused 8/8

21/22, in one clean pass, $10.98. Assertions require a successful result, not merely a tool
call — an earlier version counted calls and passed two items that had returned no data.

No Mercado Livre regression. The eight-item Mercado Livre quality pack was re-run against the
changed skill: the six comparable items moved 4.67 → 4.50, four of them unchanged, well inside
the ±0.5 retest band this project has seen on repeat runs. The vague-entry case actually improved,
3 → 4.5, because Step 0 gives it a concrete first question to ask.

The one known limitation

Tier 2's single failure is real and I could not fix it from inside this skill. Asked "vale a
pena entrar na categoria X?"
with no marketplace named, the request matches a focused skill's
frontmatter triggers closely enough that the focused skill handles it directly — and because every
focused skill here is Mercado Livre only, the seller gets Mercado Livre data without being asked
which marketplace they meant. seller-copilot never loads, so no text in it can intervene.
Reproduced identically across two runs.

The other two ambiguity items pass, so the guard itself works; what fails is interception, and
only when the phrasing closely matches a focused skill's own triggers. It is partly a consequence
of a deliberate choice: those category triggers were kept out of this skill's description
precisely to avoid cannibalising the focused skills. Closing the gap means competing with them,
which may not be the better trade. Happy to take direction on which way you'd prefer.

Worth knowing operationally

A single Shopee analysis costs roughly 4–7 connector queries. On the plan this was tested
against, the Shopee daily allowance was initially ~10 requests — about two analyses before
lockout — and the skill handles exhaustion correctly, reporting the limit in business terms and
refusing to invent figures. Flagging it because it bears on how usable the Shopee side is for a
seller on a lower tier, not because anything here needs changing.

Notes for reviewers

  • Additive. No existing skill, asset or README row is modified. The fifteen Mercado Livre
    references are unchanged.
  • Shopee reference files carry a shopee- prefix; unprefixed files remain Mercado Livre. Every
    cross-link inside a Shopee file points at a Shopee sibling — verified, and asserted in the tests
    after an earlier version silently resolved to the Mercado Livre procedures.
  • The description is at 994 of the 1024 limit. Making room for Shopee triggers meant trimming some
    Portuguese Mercado Livre ones; the regression check above is what confirms that was safe.
  • Both marketplaces are Brasil, so currency, language and the retail calendar are unchanged.

Public-Safety Checklist

  • No credentials, tokens, keys, or secrets.
  • No internal filesystem paths.
  • No private Slack, Jira, Notion, admin, or service URLs.
  • No private service names or implementation details.
  • No customer data or private product data.
  • Skill directory name matches SKILL.md frontmatter name.

No data-model names, field names, tool identifiers or resource URIs appear in any of these files —
they describe procedures and judgement only.

Adds Shopee coverage to the skill merged in joomcode#27, as one marketplace-aware skill
rather than a second one. The two marketplaces are independent datasets that may
not be mixed in a single query, and a seller does not always say which they
mean — so deciding is the first step of the work, and it has to live where the
question lands. A separate Shopee skill would only ever be reached by someone
who already said "Shopee".

references/which-marketplace.md holds the decision logic and the capability
comparison; SKILL.md gains a Step 0 that settles the marketplace before any
analysis and asks rather than defaulting when it cannot be inferred. Nine
shopee- prefixed procedures cover what Shopee data actually supports. The
fifteen Mercado Livre references are untouched, byte-identical to what merged.

Shopee coverage is narrower and the skill says so rather than approximating: no
keyword data, no seasonality or long-run trend before May 2026, no buy-box,
badge tiers rather than a medal ladder, no fulfilment attributes, no
cancellation rate, no brand share, item-level pricing only, and no fee data so
no real margin. One capability runs the other way — Shopee has a per-item
weekly sales series that Mercado Livre lacks.

Verified by a 22-item pack through a real agent CLI, scored by trace assertions
rather than judge scores because a judge cannot see which tool was called:
routing 8/8, ambiguity 2/3, both-marketplace 3/3, capability boundaries 8/8. The
Mercado Livre quality pack was re-run to confirm the description trim did no
harm — six comparable items moved 4.67 to 4.50, four of them unchanged, inside
the retest band this project has seen on repeat runs.

The one failure is a request whose phrasing matches a focused skill's triggers
closely enough that the focused skill answers it directly; since every focused
skill is Mercado Livre only, an ambiguous question can be answered from Mercado
Livre data without the seller being asked which marketplace they meant. This
skill never loads in that path, so it cannot intervene.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@fiharet34
fiharet34 requested a review from profunctor as a code owner August 7, 2026 14:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant