agentsclimarketplace

Ib gateway

Skill luyangkk/ib-suite/skills/ib-suite/ib-gateway

Read-only Interactive Brokers (IBKR) diagnostics as portable AI-agent skills: account health, positions, daily P&L, trade history, dividends, options Greeks, and a P0–P3 graded portfolio report. Never places orders.

Install
npx -y skills add luyangkk/ib-suite --skill ib-gateway

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 17 days oldThe repository was created 17 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Read-only pull of Interactive Brokers account, position, execution, bar and dividend data from IB Gateway or Flex into a local snapshot + Parquet lake.

SKILL.md

1.8 KB, 316 tokens by cl100k_base, as published. Nobody here has run it

ib-gateway

Read-only data ingestion for the IB analyst toolchain. This skill never places or modifies orders; it connects with readonly=True and only reads.

Prerequisites

Config and the shared venv are owned by the ib-suite index skill (see its first-run setup). Start IB Gateway (paper on 4002 / live on 4001) with API access, and tick Read-Only API in Gateway settings as an extra guard.

Commands

/ib-sync — snapshot current account + positions

{baseDir}/../.venv/bin/python {baseDir}/scripts/ib_sync.py --config .ib-suite/config.yaml

Writes data/snapshots/<account>/<ts>.json (instantaneous state) and appends data/timeseries/positions_history.parquet (history).

Flex history (dividends, trades > 7 days old)

{baseDir}/../.venv/bin/python -c "import sys; sys.path.insert(0,'{baseDir}/scripts'); \
import flex_fetch; print(flex_fetch.fetch_flex_report('$FLEX_TOKEN','$FLEX_QUERY_ID'))"

Notes

  • Same clientId allows only one active Gateway connection — pick a unique id in config.yaml.
  • Base currency follows the account's BASE; override only via config.yaml.
  • All committed fixtures are desensitized. Never commit real config.yaml or live snapshots.

What ships with it: 6 files

60.8 KB alongside SKILL.md, 4 of them executable

scripts/

Keep looking

Skills are one crate of 326,984. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.