openInvest — плагин

Комитет из четырех ИИ-ролей разбирает портфель, пишет журнал решений и гоняет бэктесты без заглядывания вперед

  • 140 ★ репозитория
  • Последний коммит
  • MIT
Плагин

Широкий доступ

Почему такой уровень

  • Скилл `invest-ibkr` в бете торгует на реальном счете без подтверждения каждой сделки
  • Каталоги `memory/` и `db/` хранят позиции, стратегию и профиль, при публичном форке они попадут в коммиты
  • Для запусков по расписанию в секреты репозитория кладутся ключ API и пароль приложения почты
Все причины и проверки

longsizhuo/openinvest

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add plugins/openinvest

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Скилл `invest-ibkr` в бете торгует на реальном счете без подтверждения каждой сделки
  • Каталоги `memory/` и `db/` хранят позиции, стратегию и профиль, при публичном форке они попадут в коммиты
  • Для запусков по расписанию в секреты репозитория кладутся ключ API и пароль приложения почты

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

openInvest — движок инвестиционных решений, который вы запускаете у себя и подключаете к Claude Code, Codex, Hermes Agent или OpenClaw плагином со скиллами. Внутри работает комитет из четырех ролей. Макростратег задает рамку допустимых потерь. Квант-аналитик читает только индикаторы, и состав портфеля от него скрыт. Роль `Risk Officer` видит портфель, а индикаторы скрыты уже от нее. Директор по инвестициям сводит их отчеты в вердикт BUY, ACCUMULATE, HOLD, TRIM или SELL с уровнем уверенности. После первого круга квант и `Risk Officer` получают отчеты друг друга и оспаривают их, затем вердикт попадает в журнал. Ордера движок не отправляет: действие остается за человеком. Состояние портфеля хранится в Markdown-файлах каталога `memory/`. Автор публикует и свои неудачные результаты. По его замерам направленные вердикты без HOLD угадали движение в 42,2% случаев на 56 решениях, то есть хуже случайного выбора, а HOLD составил 56% решений. Ценность проекта автор видит в дисциплине и прозрачности, а прогноза не обещает.

Для кого. Частным инвесторам, которые ведут портфель через агента в терминале и хотят видеть, из чего сложился каждый вердикт.

Подходит, если

  • Решение по бумаге хочется прогнать через несколько независимых ролей и сохранить журнал рассуждений
  • Правило портфеля нужно проверить на истории, не давая модели подсматривать будущее
  • Отчет комитета должен приходить на почту каждый день из приватного форка на GitHub Actions
  • Агент забыл, почему принял прошлое решение, и нужна запись с обоснованием
  • Перед миграцией на другую машину нужна копия позиций, стратегии и журнала

Не подходит, если

  • Нужен прогноз доходности: автор опубликовал тесты, где ни один признак не прошел проверку как торговый сигнал
  • Ордера должны уходить без человека: комитет выдает вердикт, а сделку подтверждает пользователь
  • Форк публичный: файлы состояния с позициями попадают в коммиты, поэтому форк должен быть приватным

Пример запроса к агенту

Проведи комитет по моему золоту, покажи вердикт каждой роли и итог директора, ордеров не отправляй

Ограничения

Нужен Python 3.13. В режиме скилла рассуждает ваш агент, отдельный ключ API не тратится, но для запусков по расписанию в GitHub Actions задаются `LLM_API_KEY` и данные почты. Встроенный веб-интерфейс убран 5 июля 2026 года, остались CLI и MCP. Позиции лежат в каталогах `memory/` и `db/`, их нет в git, поэтому копию делает скилл `invest-backup`. Отдельный скилл `invest-ibkr` помечен бетой: он торгует на реальном счете Interactive Brokers без подтверждения каждой сделки, и автор не рекомендует его никому.

Как отключить. Удалите плагин через меню `/plugin` в Claude Code, в Codex и Hermes — командами управления их плагинами. MCP-сервер снимите командой `claude mcp remove openinvest`. Каталог `~/openInvest` с вашими данными удаляйте отдельно, предварительно сделав копию.

Частые вопросы

Отправляет ли openInvest ордера на биржу?

Нет, комитет выдает вердикт, а сделку совершает человек. Исключение — бета-скилл `invest-ibkr`, который отдельно включается для счета Interactive Brokers и торгует без подтверждения каждой сделки.

Как поставить openInvest в Codex?

Выполните `codex plugin marketplace add longsizhuo/openInvest`, затем `codex plugin add invest@openinvest`. Мастер первичной настройки запускается фразой `set up invest`.

Нужен ли ключ API для работы комитета?

В режиме скилла нет: рассуждает ваш агент. Для запусков по расписанию в GitHub Actions нужны `LLM_API_KEY` или `DEEPSEEK_API_KEY`, а для писем — данные почты.

Как подключить openInvest как MCP-сервер без плагина?

Выполните `claude mcp add openinvest -e INVEST_HOME=~/openInvest -- uvx openinvest-mcp`. Тот же сервер подходит для любого клиента MCP, а флаг `--http` включает удаленный режим в бете.

Где хранятся данные о позициях?

В каталогах `memory/` и `db/` внутри `INVEST_HOME`. Их нет в git, поэтому резервную копию делает скилл `invest-backup`.

Обсуждение

Вопросов и отзывов пока нет.

Плагины
Российский стек

Нативный плагин Т-Инвестиций для агента OpenClaw: портфель и рыночные данные из коробки, сделки только по явному флагу allowTrading

ПлагинШирокий доступ

Навык-рубрика оценки открытого проекта глазами инвестора: пять измерений, жесткие вето и режим диагностики для владельцев.

СкиллМинимальный доступ343Звезды репозитория

investor-agent отдает агенту котировки, историю цен, опционы, календарь отчетов и индекс страха и жадности без ключа.

MCP-серверРасширенный доступ349Звезды репозитория

InvestSkill дает ассистенту 34 готовые схемы разбора американских акций: от оценки компании до проверки портфеля

СкиллРасширенный доступ285Звезды репозитория

Личный «семейный офис» в терминале: типизированные калькуляторы портфеля, локальная база и агенты для Claude Code и Codex.

ПлагинРасширенный доступ336Звезды репозитория
Российский стек

CLI и скилл для доступа агента к счету Т-Инвестиций: портфель, доходность, скринеры облигаций и заявки с подтверждением

СкиллШирокий доступ48Звезды репозитория

Коротко о README

Проект подан как инструмент аудита решений. Дальше идут сравнение с восемью эталонными портфелями, таблица опровергнутых гипотез, быстрый старт для четырех агентов и серверный запуск на GitHub Actions. Отдельный раздел посвящен схеме комитета с запретом на обмен контекстом между ролями.

Бейдж для README

Исходный SKILL.md

---
name: invest-setup
version: 0.6.0 # x-release-please-version
description: First-time openInvest installation and onboarding. **ONLY use when** user explicitly says "set up invest" / "init invest" / "帮我初始化 invest", OR when `invest` skill's `doctor` returns `status="needs_setup"`. **NOT for daily usage** — once onboarding is done, the `invest` skill takes over (portfolio viewing, committee analysis, buy/sell tracking). Wraps `run.sh init --from-stdin` with the canonical 3-question flow.
platforms: [linux, macos]
metadata:
  hermes:
    tags: [investing, setup, onboarding, 初始化, 投资]
---

# Invest Setup Skill

> `<skill-dir>` is this skill's own directory — the folder that holds this SKILL.md (Claude Code
> shows it as the skill's base directory; Hermes / Codex / OpenClaw install it inside the plugin).
> `run.sh` below always means `<skill-dir>/scripts/run.sh`.

**Single responsibility**: turn an empty openInvest deployment into a working one.
**Triggers only on the user's first-time setup** — run once, then step aside (the
`invest` skill takes over all day-to-day interaction).

## When to Use

- User explicitly says "set up invest" / "initialize invest" / "帮我初始化 invest"
- The `invest` skill's `doctor` returns `status: "needs_setup"` (memory / user_profile missing)
- User wants to reconfigure (explicitly says "reset" / "重新配置"; requires `--force`): on an existing install `--force` only updates name and risk tolerance in user.md — holdings, tracking, strategy and history stay as they are; change allocations with `set_allocations`, caps and tracking with `track_asset` / `untrack_asset`
- v1 → v2 schema migration: `doctor`'s `portfolio_schema` check says `needs_migration` (an
  install made by an older version; `status` shows cash 0). Run the exact command in that
  check's `hint` — it backs up portfolio.md and converts it. Do **not** rerun `init` for this

## When NOT to Use

- User is already onboarded (`doctor` returns `status: "ready"`) → **switch to the `invest` skill**
- User wants to view holdings / P&L / run the committee → use the `invest` skill
- User wants to track a new asset but is already onboarded → the `invest` skill's `POST /api/holdings` endpoint
- User wants to commit / push code → that's a git operation, unrelated to setup

If you (the agent) entered this skill by mistake, **exit immediately** and tell the
user to use the `invest` skill instead.

## Two onboarding paths

| Path | Scenario | Flow |
|------|------|------|
| **A. Fresh deployment** (default) | User's first time with openInvest; data lives on this machine | "Flow (4 steps)" below |
| **B. Connect to an existing hub** | User already runs openInvest on another machine (a server) and wants this machine to share the same data (multi-device) | "Path B" below, 2 minutes |

Сообщить о проблеме