Tool Naming
The body uses auth_status and similar logical names. OpenClaw calls goofish__<逻辑名>;
Claude Code / Cursor calls mcp__goofish__<逻辑名>. In the frontmatter, allowed-tools
keep the Claude permission pre-approval format; OpenClaw does not read this field.
Positioning
This is a knowledge-base-type skill frequently invoked by other skills. The Agent reads its references; it does not necessarily have to call MCP tools.
When other skills should reference this skill:
| Upstream skill | Reference point |
|---|---|
goofish-publish-item |
After title/description generation, before publishing → forbidden-words.md + publish-red-lines.md |
goofish-reply-buyer |
After drafting a reply, before send → external-contact-keywords.md |
goofish-shop-diagnosis |
Attribution analysis stage → publish-red-lines.md demotion trigger items in |
Three Gates
Gate 1 · Pre-publish scan
Input: title / description / price / image count / category / historical price (if any)
Output:{ blockers: [...], warnings: [...], suggestions: [...] }
blockers (must be changed, otherwise publishing is refused):
- Absolute terms (most/top/number one/absolutely/lowest on the entire internet, etc., see
forbidden-words.md) - Off-platform contact terms (same as above; prohibited in both messages and listing descriptions)
- Brand infringement (selling first-tier brands such as Nike/LV without authorization)
- Obviously misplaced category (for example, putting "phone case" under "Digital - Phones")
warnings (recommended to change):
- Title lacks structure (no brand / no core keyword / no specs)
- Images < 3
- First image is not 1:1
- Description < 30 characters (insufficient information; buyers skip without asking)
suggestions (optional optimizations):
- Complete according to the 5-part formula "brand + core keyword + attributes + scenario + emotion"
- Recommend adding condition description (95 new / 80% new / specific description of flaws)
For specific rules see references/publish-red-lines.md。
Gate 2 · Pre-message scan
Input: draft text
Output:{ block: bool, reason: str, replacement: str | None }
Matched rules (see references/external-contact-keywords.md):
- Off-platform contact keywords →
block=True, provide compliant replacements - Inducing offline guarantee →
block=True - Misleading promises ("guaranteed authentic", "fake one compensate ten" but without evidence) →
warning - Emotionally out-of-control words ("you're sick in the head", "go die") →
warning
Gate 3 · RGV587 / x5sec recovery
When an MCP call returns FAIL_SYS_ILLEGAL_ACCESS or RGV587:
Do not do:
- Retry (will further trigger risk control)
- Advise the user to
auth_login(overwriting the cookie loses x5sec, making it worse) - Advise the user to
auth reset-guard(only clears the local circuit breaker, not the server side)
Do(in order):
- Tell the user:server-side risk control has been triggered, the cause may be short-term high-frequency writes / multiple accounts on the same IP / newly added risky behavior
- Guide the user to: open a browser, log in to Xianyu, browse normally for 3-5 minutes, trigger
x5sec/mtop_partitioned_detectcookie issuance - The user executes
goofish auth login --browser chrometo re-import (with x5sec) - If it still fails → it is recommended to try again in 2-6 hours
See references/x5sec-recovery.md。
Decision Framework: When to "refuse to help"
These requests should be refused with an explanation, do not look for workaround paths:
| User request | Why refuse |
|---|---|
| "Help me write a way to hide a WeChat ID" / "Help me evade outreach-word detection" | Violates platform rules + the red line of this tool's compliance statement |
| "Help me brush orders / make fake transactions" | Same as above |
| "Help me batch-register alt accounts" / "Help me forge device IDs" | Same as above |
| "Help me pass this counterfeit off as genuine" | Fraud |
| "Help me write a bad review to get revenge on another seller" | Malicious |
| "Help me circumvent account recovery after a ban" | Circumventing platform risk control |
Script Templates:
This request crosses the Xianyu platform's compliance red line ({specific item}), and this tool does not assist with such operations. You could consider {compliant alternative}.
Tool Usage
Most checks do not require calling MCP tools—reading references is enough. When needed:
search_items: Check whether your own product can be found from the buyer's perspective (diagnose traffic limiting)item_get: Pull your own product's historical metadata (determine whether the price was lowered or the label changed)auth_status: Confirm login status before calling other tools
This skill does not call write operations at all(item_publish / media_upload / message_send / item_delete are not in allowed-tools).