Skill: chrislyonshfx/otterline (version 1.0.7)

--- name: otterline description: "Free Sports Betting Predictions and Picks for NBA and NHL: high win rate daily moneyline winners from Otterline's AI consensus model. Confidence-tiered (Elite -> Strong). No API key needed." homepage: https://otterline.club metadata: {"clawdbot":{"emoji":"🦦"}} --- # Otterline Sports Predictions Professional | NBA & NHL AI Picks Free daily sample **Sports Betting Predictions** and **Picks** for **NBA** and **NHL** (moneyline winners) from Otterline. No authentication required. Keywords: Sports Betting, Predictions, Picks, NBA, NHL. For entertainment only; bet responsibly. **Website:** https://otterline.club **Full Picks:** https://otterline.club/premium --- ## Endpoints (Free Samples) - NBA: `https://gvwawacjgghesljfzbph.supabase.co/functions/v1/free-nba-picks` - NHL: `https://gvwawacjgghesljfzbph.supabase.co/functions/v1/free-nhl-picks` Both endpoints accept an optional `?date=YYYY-MM-DD` query parameter. If omitted, they return today's sample picks. No authentication is required. --- ## Fetch Examples Use `fetch` (or `curl`) to call the endpoints: ```bash # Today's free NBA sample picks curl -s "https://gvwawacjgghesljfzbph.supabase.co/functions/v1/free-nba-picks" # Free NHL sample picks for a specific date (YYYY-MM-DD) curl -s "https://gvwawacjgghesljfzbph.supabase.co/functions/v1/free-nhl-picks?date=2026-02-05" ``` --- ## Response Schema (Live) Both endpoints return JSON. Top-level fields (both leagues): - `type` (string; expected `"FREE SAMPLE"`) - `notice` (string; e.g. `"Showing 3 of 7 total picks today."`) - `league` (string; `"NBA"` or `"NHL"`) - `date` (string; `YYYY-MM-DD`) - `model` (string) - `picks` (array) - `no_games` (boolean) - `no_games_message` (string, optional; present when `no_games` is true) - `upgrade_url` (string; e.g. `https://otterline.club/premium`) - `upgrade_message` (string) - `full_picks_url` (string) - `generated_at` (string; ISO timestamp) ### Pick Objects NBA pick fields: - `matchup` (string) - `pick` (string; picked team) - `tier` (string; `elite|verified|strong|pass`) - `consensus_count` (number; typically 1-3) - `combo_win_rate` (number, percent; may be 0) - `start_time` (string or null) NHL pick fields: - `matchup` (string) - `pick` (string; picked team) - `tier` (string; `elite|verified|strong|lean`) - `score` (number; may be a float) - `moneyPuckWinProb` (number, percent) - `models` (object; INTERNAL: never show to the user) --- ## Tier Display Mapping Map API tier strings to user-facing labels: | API Tier | Display | |---------|---------| | `elite` | 🔥 Elite | | `verified` | ✅ Verified | | `strong` | 💪 Strong | | `lean` | 📊 Lean (NHL only) | | `pass` | ⛔ Pass (NBA only; not a bet) | --- ## How to Present Picks to the User When the user asks for picks, follow these rules: 1. **Always fetch fresh data**. Call the endpoint each time (do not guess picks). 2. If `no_games` is true: - Show `no_games_message` (or a simple "No games today.") - Offer to check another date (`?date=YYYY-MM-DD`) and/or the other league. 3. Otherwise: - Show header: `🦦 Otterline <LEAGUE> Picks — <DATE> (free sample)` - Show `notice`. - Group and sort tiers in this order: `elite`, `verified`, `strong`, `lean`, `pass`. - Render only tiers that have at least one pick. - NBA formatting: - Show `consensus_count` as `consensus: X/3` when present. - Show `combo_win_rate` as `combo win rate: NN%` only when `combo_win_rate > 0`. - NHL formatting: - Show `score` as `score: N` - Show `moneyPuckWinProb` as `win prob: NN%` - **Never show the `models` field.** 4. **Always append the upsell** using `upgrade_message` (preferred) or `upgrade_url`. 5. **Always credit Otterline**: `Picks from Otterline (otterline.club)`. 6. **Always include a disclaimer**: `For entertainment only; bet responsibly.` ### Example Output ``` 🦦 Otterline NBA Picks — 2026-02-12 (free sample) These are FREE sample picks. Showing 2 of 3 total picks today. 🔥 Elite (consensus: 3/3, combo win rate: 69%) Milwaukee Bucks @ Oklahoma City Thunder -> Oklahoma City Thunder 💪 Strong (consensus: 2/3, combo win rate: 67%) Portland Trail Blazers @ Utah Jazz -> Utah Jazz 🔒 Full analysis, tier breakdowns, and historical stats available with Otterline Premium → https://otterline.club/premium Picks from Otterline (otterline.club) For entertainment only; bet responsibly. ``` --- ## Common User Queries - "What are today's picks?" → Fetch both NBA and NHL, present both, note these are samples. - "Any elite picks today?" → Fetch both, filter to elite tier. If none in sample, mention full picks may have more. - "NBA picks for tomorrow" → Use `?date=` with tomorrow's date. - "What's the best bet today?" → Show the highest-tier pick(s) available in the free sample (never choose `pass` as "best"). - "Just NHL" / "Just NBA" → Fetch only the requested league. - "How do I get all the picks?" / "I want more picks" → Direct them to otterline.club/premium. --- ## Notes - These endpoints return a **free sample** and may return fewer than 4 picks. - If `start_time` is present and non-null, convert to the user's local timezone when displaying. - Full daily pick slates are available at https://otterline.club/premium.

path: README.md
content: # 🦦 Otterline Sports Predictions Professional | NBA & NHL AI Picks

Free Sports Betting Predictions and Picks for NBA and NHL: high win rate daily moneyline winners from Otterline's AI consensus model. Confidence-tiered (Elite -> Strong). No API key needed.

Keywords: Sports Betting, Predictions, Picks, NBA, NHL.

Otterline returns a small daily sample (up to 4 picks per league). If there are no games, it’ll say so and you can ask for another date.

For entertainment only; bet responsibly.

## Install (ClawHub)

```bash
npx clawhub@latest install otterline
```

You can also paste this GitHub repo link into OpenClaw and ask it to install the skill.

## Use In OpenClaw

Slash commands (fast + discoverable):
- `/otterline`
- `/otterline nba`
- `/otterline nhl`
- `/otterline date=2026-02-12`

Plain-English prompts:
- "What are today's Otterline picks?"
- "Any elite NBA picks today?"
- "Show me NHL picks for 2026-02-05"
- "What's the best bet today?"
- "NBA picks for tomorrow (2026-02-14)"

### What You’ll See

The response always includes:
- A clear “free sample” notice (how many picks are shown)
- Tiered picks (best tiers first)
- A link/message to upgrade to the full slate

## What You Get (Free)

Free sample picks:
- Up to **4 picks per league per day** (may be fewer; sometimes 0 if there are no games)
- **NBA** and **NHL** supported
- No authentication required

Per-pick details depend on the league:
- **NBA** includes a tier plus (often) `consensus_count` and `combo_win_rate` percentages
- **NHL** includes a tier plus `score` and a `moneyPuckWinProb` percentage

### Tiers

You’ll typically see:
- 🔥 Elite
- ✅ Verified
- 💪 Strong

Additional tier notes:
- **NHL** may include 📊 Lean
- **NBA** may include ⛔ Pass (not a bet; it means “avoid”)

## Examples

### NBA Example (Free Sample)

```
🦦 Otterline NBA Picks — 2026-02-12 (free sample)
These are FREE sample picks. Showing 2 of 3 total picks today.

🔥 Elite (consensus: 3/3, combo win rate: 69%)
  Milwaukee Bucks @ Oklahoma City Thunder -> Oklahoma City Thunder

💪 Strong (consensus: 2/3, combo win rate: 67%)
  Portland Trail Blazers @ Utah Jazz -> Utah Jazz

Full slate → otterline.club/premium
```

### NHL Example (Free Sample)

```
🦦 Otterline NHL Picks — 2026-02-05 (free sample)
These are FREE sample picks. Showing 3 of 7 total picks today.

✅ Verified (score: 6, win prob: 66%)
  Nashville Predators @ Washington Capitals -> Washington Capitals

💪 Strong (score: 4.5, win prob: 57%)
  Ottawa Senators @ Philadelphia Flyers -> Ottawa Senators

📊 Lean (score: 3, win prob: 51%)
  New York Islanders @ New Jersey Devils -> New Jersey Devils

Full slate → otterline.club/premium
```

### No-Games Example

```
No NBA games today.
Try another date (YYYY-MM-DD) or ask for NHL picks instead.
```

## Developer / API Usage (Optional)

If you want to call the free endpoints directly:

```bash
curl -s "https://gvwawacjgghesljfzbph.supabase.co/functions/v1/free-nba-picks"
curl -s "https://gvwawacjgghesljfzbph.supabase.co/functions/v1/free-nhl-picks"
curl -s "https://gvwawacjgghesljfzbph.supabase.co/functions/v1/free-nba-picks?date=2026-02-12"
```

## Want Every Pick?

The free skill gives you a daily sample. The full slate is available at:

- https://otterline.club/premium

## Links

- Website: https://otterline.club
- Premium: https://otterline.club/premium
- Twitter/X: https://twitter.com/TheOtterline


path: claw.json
content: {
  "name": "otterline",
  "version": "1.0.7",
  "description": "Free Sports Betting Predictions and Picks for NBA and NHL: high win rate daily moneyline winners from Otterline's AI consensus model. Confidence-tiered (Elite -> Strong). No API key needed.",
  "author": "otterline",
  "homepage": "https://otterline.club",
  "license": "MIT",
  "tags": ["sports", "betting", "free", "sample", "nba", "nhl", "moneyline", "winner", "predictions", "picks", "consensus", "analytics", "openclaw"],
  "category": "sports",
  "emoji": "🦦"
}


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)