Polymarket Weather Bucket Thresholds
WarnAudited by ClawScan on May 18, 2026.
Overview
The skill is mostly transparent about a scheduled Simmer trading strategy, but live mode can affect account positions more broadly than the weather strategy, trade cap, and safety wording imply.
Treat this as a scheduled trading bot, not just a static strategy note. Keep it in dry-run until you confirm which positions it may sell, add market or position allowlists, enforce total budget and exit limits, and verify the SIMMER_API_KEY and dependency requirements.
Findings (5)
Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.
If --live is used, the skill could liquidate unrelated YES positions in the user's Simmer account, not just manage the intended weather-bucket trades.
The live exit pass iterates over all Simmer positions and sells the full YES balance when the threshold is met, without checking that the market is weather-related, created by this skill, or within the advertised max-trades limit.
positions = pos.get("positions", []) ... if mid and shares_yes > 0 and prob is not None and prob >= EXIT_THRESHOLD: ... action="sell", venue="sim", shares=shares_yesBefore enabling live mode, restrict exits to an allowlist or to positions created by this skill, apply the trade cap to exits as well, and require explicit user approval for account-wide sells.
A user may rely on the stated strict warning safeguard, but live trades can still proceed when the context has other warning text.
The implementation only blocks warnings containing three specific phrases, while SKILL.md describes the safeguard as strict and says to skip any market with context warnings.
blocking = ["high urgency", "wide spread", "elevated risk"] ... return any(b in text for b in blocking)
Either change the documentation to match the narrower blocking logic or update the code to skip whenever any warning is present.
Anyone enabling the skill with a real API key is granting it the ability to see positions and submit trades through Simmer.
The skill uses a Simmer API credential to query positions and, in live mode, authorize trades. This is expected for the stated trading integration but grants account-level authority.
api_key = os.environ.get("SIMMER_API_KEY") ... return {"Authorization": f"Bearer {api_key}"}Use the least-privileged Simmer key available, verify what account and venue it controls, and avoid enabling --live until the trading scope is reviewed.
The skill can run repeatedly without a fresh manual launch, which matters if live trading is later enabled or if dry-run output is monitored.
The skill is configured as a managed recurring automaton every two minutes. This is disclosed and the default run is dry-run, but it is persistent background behavior.
"cron": "*/2 * * * *", "automaton": { "managed": true, "entrypoint": "trade.py" }Keep the cron disabled or dry-run until you have confirmed limits, allowlists, and monitoring for repeated runs.
Installing may fetch the current simmer-sdk package version, and future package changes could affect behavior.
The skill declares an unpinned external pip dependency and a credential requirement. This is broadly aligned with a Simmer integration, but users should verify provenance and versioning.
"requires": { "pip": ["simmer-sdk"], "env": ["SIMMER_API_KEY"] }Pin the dependency to a reviewed version and ensure the registry metadata accurately surfaces the API key requirement.
