Skip to main content

Open-source Python framework for building autonomous AI trading agents on GitHub repository momentum (paper mode).

Project description

Vorepo Agents Framework

Build autonomous AI trading agents for GitHub repository momentum. MIT · Paper-mode only · Python 3.10+

License: MIT Python 3.10+ Paper mode GitHub stars GitHub last commit GitHub issues


$ vorepo-agents top --limit 8

MICMARKI   2153     stars/24h  microsoft/markitdown
HARMONEY   2111     stars/24h  harry0703/MoneyPrinterTurbo
LUMUNDER   1512     stars/24h  Lum1104/Understand-Anything
CODBUILD   1125     stars/24h  codecrafters-io/build-your-own-x
COLCODEG   1108     stars/24h  colbymchenry/codegraph
NOUHERME   1050     stars/24h  NousResearch/hermes-agent
AFFEVERY   1011     stars/24h  affaan-m/everything-claude-code
MULANDRE    941     stars/24h  multica-ai/andrej-karpathy-skills

Live output from the public Vorepo API. Updated continuously.


Why this exists

When a GitHub repo gets hot — stars accelerating, contributors joining, real product traction landing — its mindshare moves before any market reflects it. vorepo-agents lets you:

  • See momentum the moment it shifts. Live star velocity, contributor growth, news mentions, all in one signal.
  • Stress-test your strategy over N runs against the live market in paper mode (real signals, simulated execution). Historical replay is on the roadmap.
  • Add qualitative LLM context on top of the quantitative signal. Feed Trending + Hacker News + Reddit news into RAG and let the model weigh the news against the velocity numbers.
  • Write your own strategy in ~50 lines by subclassing one base class.

Built as a thin client on the public Vorepo API. Adapted from Polymarket/agents (MIT). Same clean modular architecture, re-pointed at GitHub momentum instead of prediction markets. The on-chain stack was removed; Vorepo settles via a simple REST API.


Quickstart (2 minutes)

git clone https://github.com/Vorepo-com/vorepo-agents.git
cd vorepo-agents
python3 -m venv venv && source venv/bin/activate
pip install -e .

# list tradeable repos
vorepo-agents repos --limit 10

# top repos by 24h star velocity (the momentum signal)
vorepo-agents top --limit 10

# run a strategy in PAPER mode ($100 virtual)
vorepo-agents run --strategy momentum --balance 100 --top-n 5 --per-trade 10
# strategies: momentum | dip_buy | mean_reversion

# multi-run benchmark (N runs vs the live market, aggregated stats — not a historical replay)
vorepo-agents backtest --strategy momentum --runs 5

Sample agent.run_once() output:

{
  "strategy": "momentum",
  "actions_executed": 5,
  "portfolio": {
    "starting_balance": 100.0,
    "portfolio_value": 99.53,
    "pnl_pct": -0.47,
    "trades": 5
  }
}

Sample backtest output (5 runs aggregated):

{
  "strategy": "momentum",
  "runs": 5,
  "avg_pnl_pct": -0.31,
  "best_pnl_pct": 0.42,
  "worst_pnl_pct": -0.89,
  "stdev": 0.51
}

Use cases

  • Dev researchers quantifying "is this repo hot" hypothesis-free, with reproducible numbers.
  • Maintainers monitoring competitors and key dependencies for velocity inflection points.
  • Indie hackers paper-trading hunches on developer-trend cycles before they go mainstream.
  • AI engineers wiring repo-momentum signals into LLM pipelines and agent loops.
  • Educators teaching trading-system design and backtesting without real-money risk.

How it works

vorepo_agents/
  client.py              # VorepoClient — public Vorepo API (read)
  trader.py              # PaperTrader — simulated execution, virtual balance
  objects.py             # pydantic models (Repo, Quote, TradeResult)
  strategies/
    base.py              # Strategy interface (subclass + implement decide())
    momentum.py          # buy top-N by star velocity
    dip_buy.py           # buy dips that still have velocity
    mean_reversion.py    # buy oversold-vs-24h with healthy velocity
  connectors/
    news.py              # GitHub Trending + Hacker News + Reddit
  application/
    agent.py             # the autonomous decision loop
  backtest.py            # run a strategy N× vs live market, aggregate
  cli.py                 # command-line interface

Full architecture notes: docs/architecture.md.


Write your own strategy

from vorepo_agents.strategies.base import Strategy, Action

class MyStrategy(Strategy):
    name = "my_strategy"

    def decide(self) -> list[Action]:
        repos = self.client.get_repos(category="ai-ml", limit=50)
        picks = [r for r in repos if (r.star_velocity_24h or 0) > 100]
        return [
            Action(side="buy", ticker=r.ticker, usdc_amount=10.0,
                   reason=f"{r.full_repo_name} hot")
            for r in picks[:3]
        ]

Then run it via the Agent:

from vorepo_agents.application.agent import Agent
from vorepo_agents.trader import PaperTrader

agent = Agent(strategy=MyStrategy(), trader=PaperTrader(starting_balance=100))
print(agent.run_once())

LLM-powered strategies (optional)

pip install -r requirements-llm.txt

Then feed GitHub Trending + Hacker News + Reddit news through Chroma RAG into an LLM to add qualitative context on top of the quantitative velocity signal. Worked examples in docs/llm_strategy.md.


Why paper-only

This framework ships paper-trading only. No wallet keys, no real money, no live order endpoint. Wiring it to a funded account is intentionally left to you, and is subject to Vorepo's Terms of Service.

We follow (and go further than) the Polymarket/agents safety pattern: their live order is commented out behind a ToS notice. Ours simply isn't shipped.


What this framework does NOT contain

By design, this is a client for the public Vorepo API. It does not contain, and cannot reveal, Vorepo's pricing methodology, internal constants, or platform-side execution logic. Those are proprietary and out of scope. This framework only consumes documented public endpoints.


Roadmap

  • Historical-replay backtester (deterministic replays of past market data, beyond the live-market multi-run aggregation already shipping).
  • More signal connectors: Lobsters, dev.to trending, npm / PyPI / crates.io download velocity, package-manager-level signals.
  • Strategy plugin system — load custom strategies from PyPI packages.
  • Notebook-friendly API for Jupyter exploration.

Open an issue or thumbs-up an existing one. Community drives priorities.


Contributing

PRs welcome. Fork, branch, tests, PR. See CONTRIBUTING.md. Good first issues:

  • New strategies (category-rotation, LLM-scored, time-of-day).
  • New signal connectors (Lobsters, dev.to, package managers).
  • Backtesting harness improvements.
  • Edge-case test coverage.

License

MIT. See LICENSE and NOTICE for the Polymarket attribution.


Stay in the loop

The Vorepo platform that powers this framework is pre-launch. Early access and new-strategy announcements go to vorepo.com/waitlist.html first.


Vorepo Agents Framework is an independent open-source project. Not financial advice. Trading involves risk; this framework ships in simulation mode for education and research.

Project details


Download files

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

Source Distribution

vorepo_agents-0.3.7.tar.gz (22.0 kB view details)

Uploaded Source

Built Distribution

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

vorepo_agents-0.3.7-py3-none-any.whl (22.7 kB view details)

Uploaded Python 3

File details

Details for the file vorepo_agents-0.3.7.tar.gz.

File metadata

  • Download URL: vorepo_agents-0.3.7.tar.gz
  • Upload date:
  • Size: 22.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for vorepo_agents-0.3.7.tar.gz
Algorithm Hash digest
SHA256 a1f6aa82e3fe6a72bc9eee0ff4c7388063d99d2995ed851236fe9a318b13325c
MD5 359a896b7aa9d23860632fe09195da47
BLAKE2b-256 2c188a193fb5cdb6e473ebd7cb36f87d65e5e1a4ac53e64ca7d6d2a210f0b9bc

See more details on using hashes here.

File details

Details for the file vorepo_agents-0.3.7-py3-none-any.whl.

File metadata

  • Download URL: vorepo_agents-0.3.7-py3-none-any.whl
  • Upload date:
  • Size: 22.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for vorepo_agents-0.3.7-py3-none-any.whl
Algorithm Hash digest
SHA256 804425045ca1f6bf482023bddafdc21c97890ae0115929ad58f2f47fd401ee34
MD5 3ce43d8d7a760493989ef49ccbf5e7cf
BLAKE2b-256 c88ecbf5e2551074e023ce619cfb66fe09c603e8b0d9886040b50253555b343b

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 Pingdom Monitoring Sentry Error logging StatusPage Status page