Skip to main content

openInvest

An investment runtime built for AI agents. Your agent knows you — openInvest knows investing.

openInvest runs a 4-role LLM investment committee (Macro Strategist, Quant Analyst, Risk Officer, CIO) that debates any asset and returns a BUY / ACCUMULATE / HOLD / TRIM / SELL verdict with a written memo — plus portfolio tracking, a decision ledger, and full decision-accounting (which advice you followed, what happened after).

It is not a chatbot. Conversation, memory, and personalization stay in your agent (Claude Code, Codex, Hermes, OpenClaw, Cursor, or any script); openInvest provides the investing capabilities behind it.

Install & run

# no install needed — uvx fetches and caches it
INVEST_HOME=~/openInvest uvx openinvest status

# or install it
pip install openinvest

INVEST_HOME is your data directory (portfolio, ledgers, .env). All state lives there — the package itself is stateless.

First-time setup

uvx openinvest init          # interactive onboarding (or `--from-stdin` for agents)
uvx openinvest doctor        # health check

As an MCP server (recommended for agents)

18 tools — portfolio read/write, live prices, decision ledger, and the committee — over stdio (or openinvest-mcp --http for a remote streamable-HTTP server, BETA):

claude mcp add openinvest -e INVEST_HOME=~/openInvest -- uvx openinvest-mcp

Read tools carry readOnlyHint; money-moving tools (buy, sell, deposit, withdraw) carry destructiveHint, so MCP clients gate them behind confirmation.

As an agent plugin (Claude Code / Codex / Hermes)

Skills (committee orchestration protocol) + MCP server, bundled:

# Claude Code
/plugin marketplace add longsizhuo/openInvest
/plugin install invest@openinvest

# Codex
codex plugin marketplace add longsizhuo/openInvest

# Hermes Agent
hermes plugins install longsizhuo/openInvest --enable

What it does

  • Investment committee — 4 LLM roles debate any yfinance symbol (equities, ETFs, crypto, commodities, any currency). Two execution paths: Coordinator (your agent plays the roles — no API key) or Direct (backend LLM, needs DEEPSEEK_API_KEY).
  • Portfolio management — multi-currency cash + holdings with an append-only, fcntl-locked ledger. Never places real orders.
  • Decision accounting — every verdict is joined at read time with rule interventions, your executions (or refusals, with reasons), and post-hoc PnL. Ask it: "How often did I actually follow the committee?"
  • Discipline ledger — counterfactual PnL of what the safety rules blocked.

CLI

uvx openinvest status                    # portfolio + live P&L
uvx openinvest run_committee GC=F        # one-shot committee verdict
uvx openinvest decisions --days 90       # decision ledger + adoption rate
uvx openinvest record_execution 2026-07-03/GC=F --rejected --reason "too pricey"
uvx openinvest buy --symbol AAPL --units 10 --price 210 --currency USD

Disclaimer

LLM-driven decision support — not investment advice. LLMs make mistakes and get overconfident. openInvest never auto-trades; its ledger is a local SQLite record with no connection to any brokerage or payment system. Past performance does not predict future returns.

Links

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

openinvest-0.28.1.tar.gz (418.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

openinvest-0.28.1-py3-none-any.whl (537.2 kB view details)

Uploaded Python 3

File details

Details for the file openinvest-0.28.1.tar.gz.

File metadata

  • Download URL: openinvest-0.28.1.tar.gz
  • Upload date:
  • Size: 418.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for openinvest-0.28.1.tar.gz
Algorithm Hash digest
SHA256 692fa1fe4f895e6f6851e64858173d8705d27b613d6bd3ef3a2ff30f4799ded6
MD5 4488b2c2ceb7f67b7f15adeabd5ee601
BLAKE2b-256 16c1215b6fea0b392d49c3fd15c604db2018df2a36b8754ab06852351b531cb4

See more details on using hashes here.

File details

Details for the file openinvest-0.28.1-py3-none-any.whl.

File metadata

  • Download URL: openinvest-0.28.1-py3-none-any.whl
  • Upload date:
  • Size: 537.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for openinvest-0.28.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8427e73a9e937973bc17587fdaff1d0794e02397e94c3fc2ecf8bec0bd1599c9
MD5 263e7546fe05f9edf83b1e5202ae9e7c
BLAKE2b-256 022ee5e16f76645f3799d98c945837e2c85c56cd2a26f9de8becf07cdbcbadc2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page