Initial commit: coin-hunter skill

This commit is contained in:
2026-04-16 03:03:25 +08:00
commit b0fd582478
9 changed files with 1170 additions and 0 deletions

View File

@@ -0,0 +1,71 @@
# Output Templates
Use these templates to keep answers crisp and decision-first.
## Single-coin quick triage
**Verdict:** candidate runner | late / overheated | avoid / scam-risk
**Radar score:** X/12
**Spec setup quality:** high | medium | low
**Why it could run**
- ...
- ...
- ...
**Why it could fail**
- ...
- ...
- ...
**What confirms strength**
- ...
- ...
**What kills the thesis**
- ...
- ...
**Risk note:** This is speculative pattern recognition, not investment advice.
## Multi-coin shortlist
### 1. <coin>
- **Verdict:**
- **Radar score:** X/12
- **Why it made the cut:**
- **Biggest flaw:**
### 2. <coin>
- **Verdict:**
- **Radar score:** X/12
- **Why it made the cut:**
- **Biggest flaw:**
### 3. <coin>
- **Verdict:**
- **Radar score:** X/12
- **Why it made the cut:**
- **Biggest flaw:**
**Bottom line**
- Most interesting now:
- Worth watching only:
- Avoid first:
## Scam-check format
**Verdict:** likely tradable speculation | fragile / high-risk | avoid / scam-risk
**Main warning signs**
- ...
- ...
**Any redeeming signs**
- ...
- ...
**Decision**
- what a cautious user should do next
**Risk note:** Absence of red flags is not proof of safety.

View File

@@ -0,0 +1,92 @@
# Provider Playbook
Use this reference when the user wants fresher crypto market data instead of relying only on web search.
## Source roles
### Bybit
Use for:
- real-time-ish price
- 24h turnover / volume
- tradability check
- kline context for listed pairs
Prefer Bybit first when the coin has a clear CEX symbol like `BTCUSDT`, `ETHUSDT`, `BONKUSDT`, etc.
### DexScreener
Use for:
- meme-coin discovery
- DEX liquidity / pair context
- chain and pool identification
- faster read on small-cap or newly-hot coins
Prefer DexScreener when:
- the coin is meme-heavy
- it may not be on major CEXs
- you need pair/liquidity context more than exchange execution context
### Birdeye
Use for:
- Solana meme-coin discovery
- Solana token activity and pair context
- confirming whether a Solana coin has genuine participation
Birdeye is especially useful when Solana names appear early in discovery.
### CoinGecko
Use for:
- market-cap cross-check
- ranking / metadata / basic overview
- fallback verification when exchange or DEX data is messy
Use CoinGecko to sanity-check whether the coin is a real market object with broad coverage.
## Recommended order
### For a known Bybit-listed coin
1. Bybit
2. CoinGecko
3. DexScreener if meme angle matters
### For a meme / 妖币 candidate
1. DexScreener
2. Birdeye if Solana
3. CoinGecko
4. Bybit only if it is also listed there
### For discovery mode
1. web_search to gather candidate names
2. DexScreener to confirm pair/liquidity reality
3. Birdeye for Solana candidates
4. CoinGecko for market-cap verification
5. Bybit to see whether the name graduated into a major tradable venue
## What each source answers
- **Bybit** → "Can I trade it on a major venue, and what does the market look like right now?"
- **DexScreener** → "Does it actually have live DEX flow and liquidity?"
- **Birdeye** → "Is the Solana on-chain activity real enough to care about?"
- **CoinGecko** → "How big is it, and is it broadly recognized?"
## Practical rule
Do not make conviction from a single source.
For high-risk coins, prefer at least two independent checks:
- one trading/liquidity source
- one metadata/market-cap source
## Token identity hygiene
DexScreener search can return clones, stale pairs, and same-name distractions.
Before treating a result as the real target, prefer the pair that has:
- the strongest 24h volume and usable liquidity
- a market cap / FDV that roughly matches CoinGecko or other broad coverage sources
- a chain and venue context that fits the narrative you are checking
If search results show multiple same-name tokens, explicitly say which contract or pair you are treating as the primary one.
## Script usage
Use `scripts/market_probe.py` for deterministic lookups instead of redoing provider URLs by hand.

View File

@@ -0,0 +1,63 @@
# Coin Radar Checklist
Use this checklist for fast triage.
## Fast scorecard
Score each dimension from 0 to 2.
- **Narrative**
- 0 = no clear story or hook
- 1 = understandable but weak
- 2 = strong, simple, contagious
- **Attention acceleration**
- 0 = stagnant / invisible
- 1 = niche chatter rising
- 2 = clearly spreading beyond niche
- **Liquidity**
- 0 = poor / suspicious / hard to exit
- 1 = usable but thin
- 2 = solid enough for speculation
- **Distribution quality**
- 0 = dangerous concentration
- 1 = somewhat fragile
- 2 = acceptable for a speculative trade
- **Timing / chart state**
- 0 = broken or exhausted
- 1 = unclear
- 2 = early-to-mid expansion setup
- **Scam-risk cleanliness**
- 0 = obvious warnings
- 1 = mixed / uncertain
- 2 = no major public red flags found
## Quick interpretation
- **10-12** → strong speculative candidate; timing still matters
- **7-9** → watchlist material; interesting but incomplete
- **4-6** → weak; only for high-risk curiosity
- **0-3** → avoid
## Compact answer template
- **Verdict:**
- **Radar score:** X/12
- **Why its interesting:**
- **Main flaws:**
- **What would confirm it:**
- **What would invalidate it:**
- **Risk note:** speculative only, not investment advice
## Hard-stop red flags
If any of these appear, strongly consider overriding the score to avoid:
- obvious inability to exit
- strong public rug warnings
- fake or unverifiable listing/partnership claims
- extreme wallet concentration with live dump risk
- chart structure that looks purely manipulated

109
references/scam-signals.md Normal file
View File

@@ -0,0 +1,109 @@
# Scam / Fake-Hype Signals
Use this reference when a user asks whether a coin is a rug, scam, fake narrative pump, or suspicious meme coin.
## Goal
Separate three different bad cases:
- **obvious scam-risk** — high chance of rug, manipulation, or fabricated legitimacy
- **fake-hype / low-quality pump** — may trade, but the story is mostly noise and exit liquidity risk is high
- **messy but tradable** — ugly structure, but not enough evidence to call it a scam
Do not collapse all weak coins into "scam." Be precise.
## Primary red flags
### 1. Liquidity illusion
Warning signs:
- the coin appears tradable, but exits are unclear
- volume looks large relative to real attention
- spreads are erratic or suspiciously wide
- price moves hard on small visible participation
Interpretation:
- if buyers can enter more easily than they can exit, treat this as a severe warning
### 2. Holder concentration risk
Warning signs:
- a few wallets dominate supply
- deployer/team wallets remain powerful
- clustered wallets look related
- unlock or dump overhang seems obvious
Interpretation:
- concentration does not automatically mean scam, but it makes the coin structurally fragile
- if concentration is extreme and active, classify closer to avoid / scam-risk
### 3. Legitimacy theater
Warning signs:
- loud claims of partnerships with no verifiable source
- fake exchange-listing rumors
- website looks polished but contains no falsifiable specifics
- team bios are vague, recycled, or unverifiable
- social posts overpromise and under-document
Interpretation:
- fake credibility signals are often more important than weak fundamentals
### 4. Social proof distortion
Warning signs:
- comments feel repetitive or botted
- follower count is high but engagement quality is low
- shill accounts post identical talking points
- the project feels ubiquitous inside its own bubble but invisible elsewhere
Interpretation:
- hype quality matters more than hype quantity
### 5. Chart manipulation smell
Warning signs:
- repeated long wicks without stable follow-through
- random explosive candles with no broader market pickup
- price repeatedly returns to the same area after dramatic spikes
- pattern looks designed to bait breakout traders
Interpretation:
- manufactured excitement often looks different from organic expansion
## Secondary warning signs
These do not prove scam by themselves, but they weaken the case:
- narrative changes every few days
- too many sectors/themes stapled together
- tokenomics explanation is confusing on purpose
- everything depends on one influencer wave
- no credible venue improvement despite heavy promotion
## Useful distinctions
### Scam-risk
Use when one or more of these are true:
- severe exit/liquidity concerns
- strong public warnings from multiple independent places
- fabricated legitimacy claims look credible
- wallet concentration plus active dump risk is severe
### Fake-hype / low-quality pump
Use when:
- the coin may still trade, but most of the fuel is shallow attention
- quality of discussion is poor
- market structure looks weak
- timing is bad and late buyers are likely exit liquidity
### Messy but tradable
Use when:
- structure is ugly, but not enough to call scam
- there is still credible liquidity and real attention
- risk is high, but the market is not obviously fake
## Output guidance
When scam risk is part of the analysis, include:
- **Suspicion level:** low / medium / high
- **Main red flags:** 2-5 bullets
- **What would reduce suspicion:** specific evidence, not vibes
- **Bottom line:** tradable speculation / watch-only / avoid
## Hard override rule
Even if the narrative and attention look strong, classify as **avoid / scam-risk** when exit risk or fabricated legitimacy is severe enough.

View File

@@ -0,0 +1,90 @@
# Search Workflow
Use this workflow when the user wants you to proactively discover meme-coin / 妖币 candidates instead of analyzing a known ticker.
## Goal
Produce a shortlist with enough evidence to answer:
- what deserves attention now
- what is merely noisy
- what should be avoided
## Default search strategy
Unless the user specifies otherwise, search for **liquid speculative candidates** first and avoid ultra-microcaps.
Run search in this order:
1. **Theme scan**
- Search current meme-coin themes by chain or narrative
- Examples:
- `Solana meme coins trending`
- `Base meme coin watchlist`
- `AI meme coin trending`
- `new meme coin listed today`
2. **Candidate extraction**
- Pull out repeated names that appear across multiple sources
- Prefer coins that appear in both market-oriented and community-oriented sources
3. **Candidate verification**
- For each candidate, search:
- `<coin> market cap liquidity`
- `<coin> holders tokenomics`
- `<coin> rug risk`
- `<coin> listed on exchange`
4. **Cross-check timing**
- Search whether the coin is already broadly saturated:
- `<coin> trending X`
- `<coin> breakout volume`
- `<coin> price surge`
- If it is already universally discussed, consider classifying it as late rather than early
## Source preference
Prefer a mix of:
- credible exchange announcements or listing pages
- market data summaries
- crypto news aggregation
- community/trading discussion summaries
Do not rely entirely on project websites or obvious promotion pages.
## Discovery rules
### Good candidate signs during search
- name appears repeatedly across different sources
- tied to a live narrative or active chain
- discussion suggests recent acceleration, not just old fame
- accessible enough that the user can realistically trade it
### Weak candidate signs during search
- only appears in promotional pages
- only appears on tiny venues
- no independent discussion or market data context
- most results are already about an explosive move that happened days ago
## Shortlist size
Default to **3-5 candidates**.
If the search returns many names:
- keep the most repeated
- keep the ones with the clearest narrative
- remove obviously illiquid or scammy names first
## Output shape for discovery mode
For each shortlisted candidate include:
- ticker / name
- chain / venue context if known
- why it entered the shortlist
- biggest risk
- tentative bucket: candidate runner / watch-only / avoid
Then give a final rank order.
## Notes
When evidence is weak, say so. Discovery mode is for narrowing attention, not pretending certainty.

View File

@@ -0,0 +1,143 @@
# User Data Layout
Store private coin-hunter data outside the skill directory.
## Root directory
Use:
```text
~/.coin-hunter/
```
This keeps personal accounts, positions, and watchlists out of packaged skill artifacts.
## Layout
```text
~/.coin-hunter/
├── config.json
├── accounts.json
├── positions.json
├── watchlist.json
├── notes.json
└── cache/
```
## File roles
### config.json
Store user-level defaults.
Suggested fields:
- `default_exchange`
- `default_quote_currency`
- `timezone`
- `preferred_chains`
Example:
```json
{
"default_exchange": "bybit",
"default_quote_currency": "USDT",
"timezone": "Asia/Shanghai",
"preferred_chains": ["solana", "base"]
}
```
### accounts.json
Store exchange accounts and balances.
Example:
```json
{
"accounts": [
{
"id": "bybit-main",
"exchange": "bybit",
"label": "Bybit Main",
"currency": "USDT",
"cash_balance": 0,
"available_cash": 0,
"updated_at": null,
"note": ""
}
]
}
```
### positions.json
Store coin positions.
Example:
```json
{
"positions": [
{
"account_id": "bybit-main",
"symbol": "BTCUSDT",
"base_asset": "BTC",
"quote_asset": "USDT",
"market_type": "spot",
"quantity": 0,
"avg_cost": 0,
"opened_at": null,
"updated_at": null,
"note": ""
}
]
}
```
### watchlist.json
Store watched coins.
Example:
```json
{
"watchlist": [
{
"symbol": "FARTCOIN",
"chain": "solana",
"contract_address": null,
"source": "manual",
"status": "watching",
"added_at": null,
"note": ""
}
]
}
```
### notes.json
Store discretionary notes and thesis fragments.
Example:
```json
{
"notes": [
{
"symbol": "FARTCOIN",
"title": "Why this stays on radar",
"body": "Good liquidity, strong meme spread, only for high-risk observation.",
"updated_at": null
}
]
}
```
### cache/
Store disposable API results or normalized snapshots. Never treat this as source-of-truth portfolio state.
## Rules
- Keep personal data only under `~/.coin-hunter/`
- Never write personal account or position data into `skills/coin-hunter/`
- Treat `cache/` as disposable
- Prefer stable IDs for accounts like `bybit-main`
- For meme coins, include `chain` and `contract_address` when known