WaitingForMacGuffin

SkillDB 作者 sonderspot v1.3.0

Oscar prediction market intelligence from waitingformacguffin.com. Get live odds, whale activity, price movements, precursor awards, order book depth, and frontrunner changes across all 19 Oscar categories. Use when user asks about Oscar markets, betting odds, nominees, or wants a market update.

源码 ↗

安装 / 下载方式

TotalClaw CLI推荐
totalclaw install skilldb:sonderspot~waitingformacguffin
cURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/skilldb%3Asonderspot~waitingformacguffin/file -o waitingformacguffin.md
Git 仓库获取源码
git clone https://github.com/openclaw/skills/commit/6ddc0b8b6c93e00487020eee8a23b364a59fb8aa
# WaitingForMacGuffin -- Oscar Market Intelligence

## Welcome Message

When a user first installs this skill or greets you, introduce yourself:

"Hey! You've just unlocked Oscar market intelligence from WaitingForMacGuffin.com -- live odds, whale trades, and data-driven analysis across all 19 Academy Award categories.

Here's what I can do:

- **Market pulse** -- "What's happening in Oscar markets?" (whale trades, price moves, frontrunner changes)
- **Deep dive** -- "Tell me about Chalamet" or "Best Picture odds" (full nominee profile with trends, precursors, order book)
- **Bet picks** -- "Give me your best Oscar bets" (risk-tiered recommendations with ROI and portfolio options)
- **Precursor sim** -- "DGA just announced, what's the play with $500?" (slippage-aware portfolio with EV and position sizing)

What are you curious about?"

---

Real-time Oscar prediction market data from [waitingformacguffin.com](https://waitingformacguffin.com). Two API endpoints provide market intelligence at different granularities.

**Base URL**: `https://waitingformacguffin.com`

No authentication required. All data is public and read-only.

---

## Tool 1: Oscar Brief

**When to use**: User asks "What's happening in Oscar markets?", "Any updates?", "Oscar brief", or wants a quick market summary.

**What it returns**: Filtered signals only -- price moves, whale trades ($1K+), frontrunner changes, news sentiment. If markets are quiet, says so (never fabricates activity).

### API Call

```bash
curl -s "https://waitingformacguffin.com/api/oscar/brief?hours=24&sensitivity=medium"
```

### Parameters

| Param | Type | Default | Description |
|-------|------|---------|-------------|
| `hours` | number | 24 | Lookback period (1-168) |
| `sensitivity` | string | "medium" | "low" (>7pt moves, >$5K trades), "medium" (>3pt, >$1K), "high" (>1pt, >$500) |
| `categories` | string | big 6 | Comma-separated category slugs. Omit for big 6 (best-picture, best-director, best-actor, best-actress, supporting-actor, supporting-actress) |

### Response Structure

```json
{
  "signals": [
    {
      "type": "price_move | whale_trade | frontrunner_change | news_sentiment",
      "category": "best-actor",
      "categoryName": "Best Actor",
      "severity": "major | significant | notable | info",
      "headline": "Chalamet ▼ 5pts to 62c",
      "details": "Best Actor: Chalamet moved from 67c to 62c in the last 24h",
      "timestamp": "2026-02-18T12:00:00Z"
    }
  ],
  "market_snapshot": {
    "frontrunners": { "best-picture": { "name": "...", "price": 45 } },
    "whale_trade_count_24h": 7,
    "overall_sentiment": "quiet | active | volatile",
    "whale_leaderboard": [
      {
        "rank": 1,
        "nominee": "Jessie Buckley",
        "category": "best-actress",
        "categoryName": "Best Actress",
        "totalVolumeUsd": 4850.00,
        "tradeCount": 1,
        "yesVolumeUsd": 4850.00,
        "noVolumeUsd": 0,
        "sentiment": "bullish | bearish | mixed"
      }
    ]
  }
}
```

The `whale_leaderboard` ranks nominees by total whale trade volume within the lookback window. Use it to answer questions like "who has the most whale activity?" or "where is the smart money going?". To get all 19 categories, pass `categories=` with all slugs (see Available Categories below).

### How to Present Results

- Lead with the `overall_sentiment` and `whale_trade_count_24h`
- List frontrunners with prices
- Show signals grouped by severity (major first)
- If `signals` is empty, say "Markets are quiet -- no significant moves"
- Use severity icons: major = !!!, significant = !!, notable = !, info = i
- When asked about whale activity rankings, use `whale_leaderboard` -- present as a ranked list with nominee, category, volume, trade count, and sentiment

### Example

```bash
# Default brief (24h, medium sensitivity, big 6 categories)
curl -s "https://waitingformacguffin.com/api/oscar/brief"

# Last 48 hours, high sensitivity, all categories
curl -s "https://waitingformacguffin.com/api/oscar/brief?hours=48&sensitivity=high&categories=best-picture,best-director,best-actor,best-actress,supporting-actor,supporting-actress,best-cinematography,best-original-screenplay,best-adapted-screenplay,best-international-feature,best-film-editing,best-costume-design,best-original-song,best-original-score,best-production-design,best-sound,best-documentary-feature,best-makeup-hairstyling,best-visual-effects"
```

---

## Tool 2: Oscar Research

**When to use**: User asks "Tell me about Chalamet", "Should I bet on X?", "What are the Best Picture odds?", or wants detailed research on a specific nominee or category.

**What it returns**: Deep dive with odds, 7-day trend, precursor wins, whale activity, order book depth + slippage, news, and a data-driven assessment.

### API Call

```bash
curl -s "https://waitingformacguffin.com/api/oscar/research?query=Chalamet"
```

### Parameters

| Param | Type | Default | Description |
|-------|------|---------|-------------|
| `query` | string | (required) | Nominee name, film title, or category slug. Supports fuzzy matching. |
| `include_orderbook` | boolean | true | Include order book depth and slippage analysis |
| `budget_for_slippage` | number | 500 | USD amount for slippage calculation (100-100000) |
| `category` | string | (optional) | Category slug to narrow disambiguation |

### Query Resolution

The query is fuzzy-matched automatically:
1. **Category slug or name**: "best-picture" or "Best Picture" returns category overview
2. **Exact name**: "Timothee Chalamet" (case-insensitive)
3. **Substring**: "Chalamet" finds "Timothee Chalamet"
4. **Diacritics-normalized**: "Timothee" matches "Timothee"
5. **Film title**: matches against the film database
6. **Typo correction**: "Chalmet" resolves via Levenshtein (edit distance <= 3)

### Three Response Modes

**1. Nominee deep-dive** (`mode: "nominee"`) -- single match:

```json
{
  "mode": "nominee",
  "nominee": { "name": "Timothee Chalamet", "category": "best-actor", "categoryName": "Best Actor", "ticker": "KXOSCARACTO-26-TIM" },
  "odds": { "current": 62, "impliedProbability": "62%", "trend7d": -5, "trendDirection": "falling", "rank": 1, "categorySize": 9 },
  "risk": {
    "tier": "lean", "tier_emoji": "🟠",
    "win_pct": 62, "loss_pct": 38,
    "roi_pct": 61, "payout_per_100": 161,
    "gap_to_second": 40,
    "runner_up": { "name": "Sean Penn", "price": 22 }
  },
  "category_volatility": "low",
  "category_volatility_reason": "Category tends to follow precursors and consensus",
  "precursors": { "wins": ["globe", "cc"], "winCount": 2, "results": [...] },
  "whaleActivity": { "tradeCount": 3, "totalVolumeUsd": 20200, "sentiment": "mixed", "directionRatio": 0.59, "recentTrades": [...] },
  "orderBook": { "bestAsk": 62, "depthAtBest": 847, "slippageAnalysis": [{ "budgetUsd": 500, "avgFillPrice": 62.4, "slippagePct": 0.6, "assessment": "healthy" }] },
  "news": [{ "title": "...", "source": "THR", "sentiment": "negative" }],
  "assessment": { "summary": "...", "edgeIndicator": "strong_value | fair_value | overpriced | uncertain", "risks": [...], "catalysts": [...] }
}
```

**2. Category overview** (`mode: "category"`) -- query is a category:

```json
{
  "mode": "category",
  "categoryName": "Best Picture",
  "nominees": [
    { "rank": 1, "name": "One Battle After Another", "price": 45, "trend7d": 3, "trendDirection": "rising" },
    { "rank": 2, "name": "Sinners", "price": 22, "trend7d": -2, "trendDirection": "falling" }
  ]
}
```

**3. Disambiguation** (`mode: "disambiguation"`) -- multiple matches:

```json
{
  "mode": "disambiguation",
  "query": "Wicked",
  "matches": [
    { "name": "Wicked: For Good", "category": "best-picture", "categoryName": "Best Picture" },
    { "name": "Wicked: For Good", "category": "best-adapted-screenplay", "categoryName": "Best Adapted Screenplay" }
  ],
  "hint": "Narrow with category param"
}
```

When you get disambiguation, ask the user which category they mean, then re-cal