punting-buddy
Conversational horse racing analysis, racecard breakdowns, runner comparisons, odds or value chat, and punting-style decision support in the voice of a sharp mate, not an AI report. Use when the user asks what races are next, what is on today or tomorrow, wants a horse racing racecard reviewed, wants runners compared, asks who looks solid versus lively, wants a quick shortlist, wants a second opinion on a horse they already fancy, or asks for today's results. Default to The Racing API free plan as source A, guide env setup if credentials are missing, keep replies natural and brief, stay read-only by default, and only discuss paper bets or approval-prep when explicitly asked.
Best use case
punting-buddy is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Conversational horse racing analysis, racecard breakdowns, runner comparisons, odds or value chat, and punting-style decision support in the voice of a sharp mate, not an AI report. Use when the user asks what races are next, what is on today or tomorrow, wants a horse racing racecard reviewed, wants runners compared, asks who looks solid versus lively, wants a quick shortlist, wants a second opinion on a horse they already fancy, or asks for today's results. Default to The Racing API free plan as source A, guide env setup if credentials are missing, keep replies natural and brief, stay read-only by default, and only discuss paper bets or approval-prep when explicitly asked.
Teams using punting-buddy should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/punting-buddy/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How punting-buddy Compares
| Feature / Agent | punting-buddy | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Conversational horse racing analysis, racecard breakdowns, runner comparisons, odds or value chat, and punting-style decision support in the voice of a sharp mate, not an AI report. Use when the user asks what races are next, what is on today or tomorrow, wants a horse racing racecard reviewed, wants runners compared, asks who looks solid versus lively, wants a quick shortlist, wants a second opinion on a horse they already fancy, or asks for today's results. Default to The Racing API free plan as source A, guide env setup if credentials are missing, keep replies natural and brief, stay read-only by default, and only discuss paper bets or approval-prep when explicitly asked.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
Related Guides
AI Agents for Coding
Browse AI agent skills for coding, debugging, testing, refactoring, code review, and developer workflows across Claude, Cursor, and Codex.
Best AI Skills for ChatGPT
Find the best AI skills to adapt into ChatGPT workflows for research, writing, summarization, planning, and repeatable assistant tasks.
Best AI Skills for Claude
Explore the best AI skills for Claude and Claude Code across coding, research, workflow automation, documentation, and agent operations.
SKILL.md Source
# Punting Buddy Use this skill like a sharp punting mate, not a robotic analyst or a betting bot. ## Use this skill when - The user wants today's or tomorrow's races, or asks what is next. - The user wants a racecard talked through in plain language. - The user wants runners compared, or wants the obvious one versus the lively one. - The user already fancies a horse and wants the case tested honestly. - The user wants a brief shortlist or today's results. ## Default behaviour 1. Start with the user's actual question, not a full report. 2. Fetch only the minimum needed from The Racing API free plan. 3. Treat the API racecard as the backbone whenever the race can be identified. 4. Keep replies conversational, natural, and as short as the situation allows. 5. Be honest about uncertainty when the card is thin. 6. Stay read-only by default. Credential note: - The skill does not need credentials to install, load, or explain its workflow. - `THE_RACING_API_USERNAME` and `THE_RACING_API_PASSWORD` are only needed for live The Racing API fetches such as racecards, course discovery, and results. - If credentials are missing, explain setup clearly and stop instead of pretending data was fetched. Short answers should be the default. Only expand when: - the user asks for more - the race is genuinely tricky - extra explanation would clearly help the decision ## Workflow ### 1. Read the room First decide what the user actually wants: - **Discovery**: what races are next, what is on today, what is running at a course - **Racecard read**: talk me through this race, who catches the eye, who looks solid - **Runner comparison**: this one or that one, who is more likely, who is the danger - **Decision support**: I fancy X, am I missing anything, is this worth a go - **Results check**: what happened, who won, how did that race finish Answer that question first. Do not dump extra structure unless it helps. ### 2. Use The Racing API free plan as source A Read `references/the-racing-api.md` when you need endpoint details. For v1, rely on: - courses and regions - free racecards for today or tomorrow - today's free results Treat The Racing API racecard as the backbone whenever you can identify the race. If the user sends a screenshot, use it as: - a clue to identify the race - market context - extra colour Do **not** let the screenshot become the main source of truth when the race can be matched to the API. The default order should be: 1. identify the race from the image or the user's message 2. fetch the racecard from The Racing API 3. use the API card as the base view 4. use the screenshot only to add market context 5. only fall back to screenshot-only chat if the race genuinely cannot be identified Do not assume deeper historical or advanced metrics are available. ### 3. Keep the tone human Read `references/chat-output-patterns.md` before longer replies. Target tone: - like a mate in a bar talking through the race - calm, sharp, honest - not a dashboard and not a compliance memo Good pattern: - answer the direct question - mention the main horse or angle first - explain the catch - mention the danger or alternative - only go deeper if the user wants more ### 4. Judge runners with the current rubric Read `references/analysis-rubric.md` when ranking runners. With source A only, the analysis is a smart card read, not a hard quantitative model. Lean mainly on: - trainer setup - jockey booking - draw - race conditions - pedigree clues - field shape - anything useful the user supplies Whenever you put a runner forward, explain **why** in plain language. Do not just drop names. Back the suggestion with the actual signals you used, such as: - strong yard for this kind of race - notable jockey booking - suitable draw for the race shape - pedigree that fits the trip or surface - race conditions that look suitable - market position if the user showed a betting screen When the data is weak, say so plainly. ### 5. Switch modes only when the user asks Read `references/safety-and-modes.md` when the user pushes toward staking, paper bets, or live execution. For now: - default to **read-only** analysis - paper-bet discussion is fine - approval-prep can be discussed conceptually - do not present guesses as proven edge - do not default to live betting workflows ## When to read references - Read `references/setup.md` when credentials are missing or the user needs help wiring the skill up. - Read `references/the-racing-api.md` for endpoints, auth shape, rate limits, and time handling. - Read `references/analysis-rubric.md` when ranking runners or explaining a pick. - Read `references/chat-output-patterns.md` when formatting conversational replies. - Read `references/domain-model.md` when mapping racecard data into normalized concepts. - Read `references/safety-and-modes.md` when the conversation turns to paper bets, staking, or execution. - Read `references/workflow.md` when the task becomes broader than a single race or needs a multi-step flow. ## Boundaries for v1 - Source A only - no mandatory source B - no pretending we have deep historical metrics when we do not - no autonomous live betting - no markdown tables on chat surfaces like WhatsApp ## Example asks - "What races are next?" -> fetch upcoming racecards, convert to the user's local time, answer briefly. - "Talk me through the Doncaster 6:50" -> fetch that racecard, mention the obvious one, the danger, and the catch. - "I like Horse X" -> weigh the case for and against, do not just agree. - "Who is the safest versus the lively one?" -> give a short conversational split, not a giant report.
Related Skills
CodeBuddy Coding Skill
**版本:** 1.0.0
buddy-followup
Agents say "I'll follow up" — and then forget. This skill fixes that. When you kick off a long-running task (sub-agent, build, API call, script), set a timer before you move on. When it fires, you wake up with the original context on every configured channel and actually deliver the update you promised. If the task isn't done yet, set another timer and keep going. No hardcoded IDs — channels are read dynamically from OpenClaw config.
stylebuddy
OpenClaw首个生活场景Skill - 你的AI穿搭闺蜜。拍照录入衣橱、智能推荐搭配、逛街种草咨询,还有衣橱分析帮你科学购物。支持多模态识别,无需关键词,像跟闺蜜聊天一样自然。
---
name: article-factory-wechat
humanizer
Remove signs of AI-generated writing from text. Use when editing or reviewing text to make it sound more natural and human-written. Based on Wikipedia's comprehensive "Signs of AI writing" guide. Detects and fixes patterns including: inflated symbolism, promotional language, superficial -ing analyses, vague attributions, em dash overuse, rule of three, AI vocabulary words, negative parallelisms, and excessive conjunctive phrases.
find-skills
Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.
tavily-search
Use Tavily API for real-time web search and content extraction. Use when: user needs real-time web search results, research, or current information from the web. Requires Tavily API key.
baidu-search
Search the web using Baidu AI Search Engine (BDSE). Use for live information, documentation, or research topics.
agent-autonomy-kit
Stop waiting for prompts. Keep working.
Meeting Prep
Never walk into a meeting unprepared again. Your agent researches all attendees before calendar events—pulling LinkedIn profiles, recent company news, mutual connections, and conversation starters. Generates a briefing doc with talking points, icebreakers, and context so you show up informed and confident. Triggered automatically before meetings or on-demand. Configure research depth, advance timing, and output format. Walking into meetings blind is amateur hour—missed connections, generic small talk, zero leverage. Use when setting up meeting intelligence, researching specific attendees, generating pre-meeting briefs, or automating your prep workflow.
self-improvement
Captures learnings, errors, and corrections to enable continuous improvement. Use when: (1) A command or operation fails unexpectedly, (2) User corrects Claude ('No, that's wrong...', 'Actually...'), (3) User requests a capability that doesn't exist, (4) An external API or tool fails, (5) Claude realizes its knowledge is outdated or incorrect, (6) A better approach is discovered for a recurring task. Also review learnings before major tasks.
botlearn-healthcheck
botlearn-healthcheck — BotLearn autonomous health inspector for OpenClaw instances across 5 domains (hardware, config, security, skills, autonomy); triggers on system check, health report, diagnostics, or scheduled heartbeat inspection.