# Send Polymarket Signal Sniper to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "polymarket-signal-sniper",
    "name": "Polymarket Signal Sniper",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/adlai88/polymarket-signal-sniper",
    "canonicalUrl": "https://clawhub.ai/adlai88/polymarket-signal-sniper",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/polymarket-signal-sniper",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=polymarket-signal-sniper",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md",
      "clawhub.json",
      "scripts/status.py",
      "signal_sniper.py"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/polymarket-signal-sniper"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/polymarket-signal-sniper",
    "downloadUrl": "https://openagent3.xyz/downloads/polymarket-signal-sniper",
    "agentUrl": "https://openagent3.xyz/skills/polymarket-signal-sniper/agent",
    "manifestUrl": "https://openagent3.xyz/skills/polymarket-signal-sniper/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/polymarket-signal-sniper/agent.md"
  }
}
```
## Documentation

### Polymarket Signal Sniper

Your signals, Simmer's trading intelligence.

This is a template. The default signal source is RSS feeds — remix it with any data source (APIs, webhooks, social media, custom scrapers). The skill handles all the plumbing (market matching, safeguards, trade execution). Your agent provides the alpha.

### When to Use This Skill

Use this skill when the user wants to:

Monitor RSS feeds for trading opportunities
Trade on breaking news before markets react
Configure their own signal sources and keywords
Get Trading Agent-grade safeguards on their trades

### Quick Commands

# Check account balance and positions
python scripts/status.py

# Detailed position list
python scripts/status.py --positions

API Reference:

Base URL: https://api.simmer.markets
Auth: Authorization: Bearer $SIMMER_API_KEY
Portfolio: GET /api/sdk/portfolio
Positions: GET /api/sdk/positions

### Quick Start (Ad-Hoc Usage)

User provides RSS feed and market directly:

User: "Watch this RSS feed for greenland news: https://news.google.com/rss/search?q=greenland"
User: "Snipe any news about trump from this feed"

→ Run with --feed and --market flags:

python signal_sniper.py --feed "https://news.google.com/rss/search?q=greenland" --market "greenland-acquisition" --dry-run

### Persistent Setup (Optional)

For automated recurring scans, configure via environment:

SettingEnvironment VariableDefaultDescriptionRSS FeedsSIMMER_SNIPER_FEEDS(none)Comma-separated RSS URLsMarketsSIMMER_SNIPER_MARKETS(auto)Comma-separated market IDs (auto-discovers from keywords if empty)KeywordsSIMMER_SNIPER_KEYWORDS(none)Comma-separated keywords to matchConfidenceSIMMER_SNIPER_CONFIDENCE0.7Min confidence to trade (0.0-1.0)Max USDSIMMER_SNIPER_MAX_USD25Max per tradeMax trades/runSIMMER_SNIPER_MAX_TRADES5Maximum trades per scan cycle

Polymarket Constraints:

Minimum 5 shares per order
Trades below this threshold are rejected with an error message

### How It Works

Each cycle the script:

Polls configured RSS feeds
Filters articles by keywords (if configured)
Matches articles to target markets (auto-discovers from keywords if no markets configured)
For each match, calls SDK context endpoint for safeguards:

Position awareness (already holding?)
Flip-flop detection (recently changed direction?)
Slippage estimates (is market liquid?)
Time decay (resolving soon?)
Resolution criteria (what actually resolves this market?)


If safeguards pass, infers trade direction from article sentiment
Executes trade via SDK (with max trades per run cap)
Tracks processed articles to avoid duplicates

### Running the Skill

Run a scan (dry run by default — no trades):

python signal_sniper.py

Execute real trades:

python signal_sniper.py --live

Check for signals without trading:

python signal_sniper.py --scan-only

View current config:

python signal_sniper.py --config

Override for one run:

python signal_sniper.py --feed "https://..." --keywords "trump,greenland" --market "abc123"

Show processed articles:

python signal_sniper.py --history

### Interpreting Context Warnings

Before trading, ALWAYS check the context warnings. The skill will show you:

WarningActionMARKET RESOLVEDDo NOT tradeHIGH URGENCY: Resolves in XhConsider if signal is timely enoughflip_flop_warning: SEVERESkip - you've been reversing too muchflip_flop_warning: CAUTIONProceed carefully, need strong signalWide spread (X%)Reduce position size or skipSimmer AI signal: X% more bullish/bearishConsider Simmer's oracle opinion

### Analyzing Signals

When you find a matching article, analyze it carefully:

Read the headline and summary - What is the actual news?


Check resolution_criteria - What ACTUALLY resolves this market?

Example: "greenland" in headline doesn't mean "acquisition complete"
The resolution might be "US formally acquires Greenland by 2027"
Does this signal move the needle on THAT specific criteria?



Assess confidence (0.0-1.0):

How directly does this signal relate to resolution criteria?
Is the source credible?
Is this news likely already priced in?



Only trade if:

Confidence > threshold (default 0.7)
No severe warnings
Signal validates against resolution criteria

### Example Conversations

User: "Set up news sniping for the Greenland market"
→ Ask for RSS feeds they want to monitor
→ Configure with market ID and keywords
→ Enable cron for recurring scans

User: "Check this feed for trading signals"
→ Run: python signal_sniper.py --feed "URL" --scan-only
→ Show found articles and potential matches

User: "Snipe any bitcoin news from CoinDesk"
→ Run with CoinDesk RSS and bitcoin-related markets
→ Show matches and ask if they want to trade

User: "What signals have we processed?"
→ Run: python signal_sniper.py --history
→ Show recent articles and actions taken

### Example Trade Flow

1. RSS poll finds: "Trump and Denmark reach preliminary Greenland agreement"
2. Keywords match: "greenland", "trump"
3. Call context endpoint for market "greenland-acquisition-2027"
4. Check warnings: none severe ✓
5. Resolution criteria: "Resolves YES if US formally acquires Greenland by 2027"
6. You analyze: "preliminary agreement" ≠ "formally acquires" but bullish signal
7. Confidence: 0.75 (positive indicator, not definitive)
8. Check slippage: 2.5% on $25 ✓
9. Execute: BUY YES $25
10. Report: "🎯 Sniped: Trump/Greenland agreement → BUY YES $25"

### Troubleshooting

"No feeds configured"

Provide feeds in message: "watch this RSS: https://..."
Or set SIMMER_SNIPER_FEEDS environment variable

"No matching articles found"

Check keywords are correct
RSS feed might not have recent articles
Try --scan-only to see what's in the feed

"Skipped due to flip-flop warning"

You've been changing direction too much on this market
Wait before trading again, or find new information

"Slippage too high"

Market is illiquid
Reduce trade size or skip

"Already processed"

This article was already seen
Working as intended (dedup)

"External wallet requires a pre-signed order"

WALLET_PRIVATE_KEY is not set in the environment
The SDK signs orders automatically when this env var is present — no manual signing code needed
Fix: export WALLET_PRIVATE_KEY=0x<your-polymarket-wallet-private-key>
Do NOT attempt to sign orders manually or modify the skill code — the SDK handles it

"Balance shows $0 but I have USDC on Polygon"

Polymarket uses USDC.e (bridged USDC, contract 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174) — not native USDC
If you bridged USDC to Polygon recently, you likely received native USDC
Swap native USDC to USDC.e, then retry

### Finding Good RSS Feeds

Tips for choosing signal sources:

Google News RSS: https://news.google.com/rss/search?q=YOUR_TOPIC
Niche sources: Better than mainstream (less priced in)
Official sources: Government, company announcements
Twitter lists → RSS: Use services like Nitter or RSS.app

The skill works best when:

Feeds are relevant to your target markets
You have specific keywords to filter noise
Sources publish before mainstream coverage
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: adlai88
- Version: 1.4.1
## Source health
- Status: healthy
- Source download looks usable.
- Yavira can redirect you to the upstream package for this source.
- Health scope: source
- Reason: direct_download_ok
- Checked at: 2026-04-30T16:55:25.780Z
- Expires at: 2026-05-07T16:55:25.780Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/polymarket-signal-sniper)
- [Send to Agent page](https://openagent3.xyz/skills/polymarket-signal-sniper/agent)
- [JSON manifest](https://openagent3.xyz/skills/polymarket-signal-sniper/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/polymarket-signal-sniper/agent.md)
- [Download page](https://openagent3.xyz/downloads/polymarket-signal-sniper)