← 返回 Skills 市场
rgstephens

FargoRate

作者 Greg Stephens · GitHub ↗ · v0.4.0 · MIT-0
cross-platform ✓ 安全检测通过
506
总下载
2
收藏
1
当前安装
8
版本数
在 OpenClaw 中安装
/install fargo
功能描述
Look up pool player ratings and handicap data from FargoRate. Use when the user asks about a pool player's rating, FargoRate ID, match odds, race-to recommen...
使用说明 (SKILL.md)

FargoRate

Look up pool player ratings, match odds, and handicap data from FargoRate using the fargo CLI tool.


Commands

search — Search players by name or FargoRate ID

fargo search \x3Cname or id>
fargo search "John Smith"
fargo search 12345

lookup — Lookup a player by FargoRate ID

Alias for search that accepts a single ID.

fargo lookup \x3Cid>
fargo lookup 12345

bulk — Lookup multiple players at once

fargo bulk \x3Cid1> [id2 ...]
fargo bulk --group \x3Cname>
fargo bulk 12345 67890 11111

# Use a saved group (see `group` command)
fargo bulk --db --group monday-league
Flag Description
--group \x3Cname> Use a saved group of player IDs instead of listing them (requires --db)

Uses the configured custom list ID (see setup). Defaults to the built-in list ID.

odds — Calculate match odds

fargo odds \x3Crating1> \x3Crating2> \x3Crace1> \x3Crace2>
# Player rated 550 (races to 7) vs player rated 480 (races to 9)
fargo odds 550 480 7 9

races — Get recommended race lengths

fargo races \x3Crating1> \x3Crating2> [--type 0|1|2] [--length N]
Flag Default Description
--type 1 Race type: 0=Scotch Doubles, 1=Singles, 2=Team
--length Fix the total race length; omit to auto-recommend
# Recommended singles race lengths for two players
fargo races 550 480

# Scotch doubles race recommendation
fargo races 550 480 --type 0

# Singles races that fit within a total of 15 games
fargo races 550 480 --length 15

top — View top 10 ranked players

fargo top [--ranking World|US] [--gender M|F]
Flag Default Description
--ranking World World or US
--gender M M or F
fargo top
fargo top --ranking US --gender F

setup — Configure the tool

fargo setup [--list-id ID]

Saves a custom list ID used by the bulk command to ~/.nanobot/workspace/fargorate/config.json.

# Interactive prompt
fargo setup

# Non-interactive
fargo setup --list-id myCustomListId

group — Manage named groups of player IDs

Groups let you save a named list of FargoRate IDs so you don't have to type them every time. All group commands require --db.

# Create or replace a group
fargo --db group set monday-league 12345 67890 11111

# List all groups
fargo --db group list

# Show members of a group (shows cached name/rating if player has been looked up)
fargo --db group show monday-league

# Delete a group
fargo --db group delete monday-league

Groups can then be used with bulk:

fargo --db bulk --group monday-league
fargo --changes --db bulk --group monday-league

Version

fargo --version

Global Flags

These flags work with every command:

Flag Description
--json Output raw JSON as received from the API
--db [path] Save retrieved player data into a SQLite database
--changes Only output players whose rating or robustness changed (requires --db)

Database (--db)

The --db flag enables a local SQLite database that persists player data across runs. It works with search, lookup, and bulk — any command that retrieves player records from the API.

Usage

# Use the default database file (fargo.db in the current directory)
fargo --db search "John Smith"
fargo --db bulk 12345 67890

# Use a custom path (requires = syntax)
fargo --db=~/data/fargo.db search "John Smith"

# Combine with --json (outputs raw JSON AND updates the database)
fargo --json --db search "John Smith"

Behavior

  • The database file is created automatically if it does not exist.
  • Player rows are inserted or updated on each run — existing records are refreshed, new ones added.
  • previous_rating is updated automatically whenever the rating changes.
  • A row is appended to rating_history only when the player is new or their rating has changed, avoiding duplicate history entries.

Schema

CREATE TABLE players (
    id                      TEXT PRIMARY KEY,
    first_name              TEXT NOT NULL,
    last_name               TEXT NOT NULL,
    location                TEXT,
    rating                  INTEGER NOT NULL DEFAULT 0,
    previous_rating         INTEGER NOT NULL DEFAULT 0,
    provisional_rating      INTEGER NOT NULL DEFAULT 0,
    robustness              INTEGER NOT NULL DEFAULT 0,
    last_update_timestamp   DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    email                   TEXT,
    mobile                  TEXT,
    telegram                TEXT,
    discord                 TEXT,
    preferred_communication TEXT CHECK(preferred_communication IN ('email','mobile','telegram','discord'))
);

CREATE TABLE rating_history (
    id                 INTEGER PRIMARY KEY AUTOINCREMENT,
    player_id          TEXT NOT NULL REFERENCES players(id) ON DELETE CASCADE,
    timestamp          DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    rating             INTEGER NOT NULL,
    provisional_rating INTEGER NOT NULL,
    robustness         INTEGER NOT NULL
);

CREATE TABLE fargo_groups (
    name       TEXT PRIMARY KEY,
    created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE fargo_group_members (
    group_name TEXT NOT NULL REFERENCES fargo_groups(name) ON DELETE CASCADE,
    player_id  TEXT NOT NULL,
    PRIMARY KEY (group_name, player_id)
);

Note: Contact fields (email, mobile, telegram, discord, preferred_communication) are stored in the database but are not populated by the FargoRate API. They can be set directly in the database and are included in --changes output when a player's rating changes.


Change Detection (--changes)

The --changes flag filters output to only players whose rating or robustness changed since the last run. It requires --db and works with search, lookup, and bulk.

All fetched players are still written to the database on every run — --changes only affects what is printed.

Examples

# Report only players whose rating or robustness changed
fargo --changes --db search "John Smith"
fargo --changes --db bulk 12345 67890 11111

# Custom DB path
fargo --changes --db=~/data/fargo.db bulk 12345 67890

# Machine-readable JSON output of changes (useful for bots)
fargo --changes --json --db search "John Smith"

Example output

1 change(s) detected:

Name       : John Smith
ID         : 12345
Rating     : 480 → 495 (provisional: 0)
Robustness : 200 → 215
Location   : Phoenix AZ
Email      : [email protected]
Preferred  : email
---

New players (not previously in the database) are marked [NEW] and show their current values without a arrow.

JSON output example (--json --changes)

[
  {
    "firstName": "John",
    "lastName": "Smith",
    "id": "12345",
    "rating": 495,
    "provisionalRating": 0,
    "robustness": 215,
    "location": "Phoenix AZ",
    "isNew": false,
    "previousRating": 480,
    "previousRobustness": 200,
    "email": "[email protected]",
    "preferredCommunication": "email"
  }
]

Contact fields (email, mobile, telegram, discord, preferredCommunication) are omitted from JSON output when empty.

When no changes are detected, the output is:

No changes detected.
安全使用建议
This skill is a CLI wrapper and appears coherent, but because it installs and runs a third‑party binary you should: 1) inspect the Homebrew tap (rgstephens/fargo) and its GitHub repo/release artifacts before installing; 2) run the fargo binary in a sandbox or review its source to confirm it doesn't transmit local contact data (SKILL.md's 'local-only' claim is not verifiable here); 3) be cautious where you place the SQLite DB (it will store contact fields if you provide them) and avoid putting sensitive credentials or personal data into the tool unless you've verified the binary's behavior.
功能分析
Type: OpenClaw Skill Name: fargo Version: 0.4.0 The 'fargo' skill is a legitimate utility for looking up pool player ratings and match odds via a CLI tool. It uses a local SQLite database for persistence and includes standard configuration and search commands without any evidence of data exfiltration, malicious execution, or prompt injection.
能力评估
Purpose & Capability
Name/description, required binary ('fargo'), and the listed commands all align: the skill is a thin wrapper around a FargoRate CLI and the requested resources are expected.
Instruction Scope
The runtime instructions explicitly read/write a local config (~/.nanobot/workspace/fargorate/config.json) and can create a SQLite DB (default file fargo.db or user-specified path). This is reasonable for a CLI that caches player data, but the DB schema includes contact fields (email, mobile, telegram, discord) — SKILL.md asserts these are 'local-only' but that claim cannot be verified from an instruction-only skill.
Install Mechanism
Install is via Homebrew using a third‑party tap (rgstephens/fargo). Using a brew tap is a standard approach, but it pulls a binary from an external source you should review (tap owner/repo) before installing to ensure integrity.
Credentials
No environment variables, secrets, or unrelated credentials are requested. The permissions requested are limited to writing a local config/DB and running the fargo binary, which match the skill's purpose.
Persistence & Privilege
Skill is not marked always:true and does not request system-wide configuration or other skills' credentials. It persists its own config/DB as expected for a CLI cache.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install fargo
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /fargo 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v0.4.0
- Skill name updated from "fargorate" to "fargo". - Version bumped to 0.4.0. - No feature or command changes; documentation now uses the new skill name. - All usage and install instructions in SKILL.md reflect the updated name.
v0.3.6
- Homebrew is now the recommended installation method; install.sh has been removed. - Updated installation instructions: users should install with Homebrew (`brew install rgstephens/fargo/fargo`) instead of the previous curl-based script. - Metadata updated to reflect Homebrew-based installation process. - No changes to commands, usage, or core functionality.
v0.3.3
fargo-skill v0.3.3 - Updated SKILL.md to reflect latest version number (0.3.3). - No command changes or new features; documentation only.
v0.3.2
- Bumped version to 0.3.2 in SKILL.md. - No other content or functionality changes.
v0.3.1
## fargo-skill 0.3.1 Changelog - Updated documentation in SKILL.md to reflect current features and usage. - Version number incremented to 0.3.1 in SKILL.md. - No code or functional changes; this release is documentation-only.
v0.3.0
fargo-skill 0.3.0 - Updated skill version to 0.3.0 in SKILL.md. - No changes to functionality or documentation content. - No interface or command updates in this release.
v0.2.5
- Added version and homepage metadata to SKILL.md for improved integration and visibility. - Expanded description to clarify database usage and privacy details. - Updated installation metadata to a structured YAML format for better compatibility. - No changes to functionality or CLI usage; documentation and metadata improvements only.
v0.2.0
- Initial public release of the fargo-skill at version 0.2.0. - Added SKILL.md with a detailed description, usage instructions, and documentation for all CLI commands. - Supports searching pool player ratings, match odds, handicaps, top player lists, group management, and rating change detection using the `fargo` CLI tool. - Database integration via `--db` flag to persist player data, track rating/robustness changes, and manage groups of player IDs. - Includes global flags for JSON output and change-only reporting. - Provides installation and versioning instructions for the tool.
元数据
Slug fargo
版本 0.4.0
许可证 MIT-0
累计安装 1
当前安装数 1
历史版本数 8
常见问题

FargoRate 是什么?

Look up pool player ratings and handicap data from FargoRate. Use when the user asks about a pool player's rating, FargoRate ID, match odds, race-to recommen... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 506 次。

如何安装 FargoRate?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install fargo」即可一键安装,无需额外配置。

FargoRate 是免费的吗?

是的,FargoRate 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

FargoRate 支持哪些平台?

FargoRate 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 FargoRate?

由 Greg Stephens(@rgstephens)开发并维护,当前版本 v0.4.0。

💬 留言讨论