计划执行与检查节点
executing-plans
按既定实施计划完成工作,保持过程检查和反馈。
ib-portfolio【效率与协作】Get portfolio positions from Interactive Brokers. Use when user asks about their portfolio, positions, holdings, or what stocks they own. Requires TWS or IB Gateway running locally.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Fetch current portfolio positions from Interactive Brokers.
TWS or IB Gateway must be running locally with API enabled:
IB_PORT env var — default port when --port is omitted (e.g. IB_PORT=4001 for a Gateway container). Precedence: --port flag > IB_PORT > built-in default. Set it in the shell or a .env file.Port fallback: If the configured port fails, automatically retry on the other port. If the retry succeeds, save to memory which account type worked (live/paper) and reuse it for all IB skill calls in this and future sessions — until the user explicitly asks for the other account. If both ports fail, ask the user to verify that TWS or IB Gateway is running with API access enabled.
Note: If
uvis not installed orpyproject.tomlis not found, replaceuv run pythonwithpythonin all commands below.
uv run python scripts/portfolio.py [--port PORT]
--port - IB port (default: 7497 for paper trading)--account - Specific IB account ID (optional, defaults to first account)Returns JSON with:
connected - Whether connection succeededpositions - Array of positions with symbol, quantity, avg_cost, market_value, unrealized_pnlIf not connected, explain that TWS/Gateway needs to be running.
ib-asyncAll timestamps and time-based calculations must use the America/New_York timezone. All JSON output must include generated_at (NY time string) and data_delay fields.