Model or dataset
BruceLanLan/augur avatar
BruceLanLan/augur

Augur: 18 Persona Agents Vote on One Stock, Then a Weighted Consensus Decides

🦉 Augur — 多智能体投资分析系统。13位虚拟投资大师独立分析,加权共识机制,Bloomberg风格Web仪表盘。

594 stars95 forksPythonMIT

At a glance

What is it?
Augur is an MIT-licensed Python tool that runs a roster of named investor personas against a ticker, blends their scores into a weighted consensus with a Kelly sizing hint, and exposes the whole thing through a CLI, an MCP server and a Bloomberg-style dashboard. The interesting part is the persona plumbing; the part to check before adopting is where the numbers actually come from.
Who is it for?
Adopt Augur if you want a structured way to force several disagreeing analytical frames onto the same ticker and you are comfortable reading its output as a debate aid rather than a valuation. Skip it if you need auditable, deterministic numbers: the README describes persona scoring, factor breakdowns and a Kelly suggestion without stating which model computes them, where the market data comes from, or how reproducible a run is.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 3 days ago.
What is it written in?
Mainly Python, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

The problem Augur addresses: one analyst, one frame

A single analyst looking at a ticker applies one mental model. A value investor checks the balance sheet and the moat. A macro investor checks rates and cycle position. Neither frame is wrong, and neither sees what the other sees. Augur's premise, stated in its README, is to put Buffett, Dalio, Duan Yongping and Cathie Wood in the same room and let them disagree on purpose: the disagreement is the product. The tool then compresses that disagreement into a number, an Augur score from 0 to 10, a BUY / NEUTRAL / SELL signal, and a bull-versus-neutral-versus-bearish split that the README illustrates as a distribution such as 13 Bullish / 5 Neutral / 0 Bearish. The intended user is someone who already has an opinion and wants it stress-tested against named, documented styles rather than against a generic sentiment score. It is not a screener and it is not a portfolio optimiser, even though it ships a portfolio command.

How the persona roster and weighted consensus actually fit together

The repository organises personas into four schools plus a special-strategy bucket: classic value (Buffett, Graham, Munger, Fisher), growth and innovation (Lynch, Wood, Thiel, Aschenbrenner), macro and cycles (Dalio, Soros, Marks, ARPS Crypto/Gold), Chinese value (Duan Yongping, Zhang Lei, Li Lu, Dan Bin, plus a BTC-focused persona), and one named Serenity covering AI compute supply chains. The README notes that the Chinese personas converse in Chinese throughout, which matters if you are piping output into an English-only downstream tool. Each persona is implemented as a Hermes Skill under src/skills/, so a persona is addressable on its own, not only as part of the crowd. Consensus is described as weighted: you can enable a subset of personas in the dashboard settings and the README states the weights are automatically renormalised, so dropping a persona does not silently deflate the score. The committee feature adds a second layer, five presets such as classic value (Buffett, Graham, Munger, Fisher) or macro all-weather (Dalio, Soros, Marks, ARPS), each producing independent opinions plus a final ruling. Note the count discrepancy in the project's own material: the repository description says 13 virtual investors while the README and its badges say 18. Treat the roster as documented in the README and verify the rest against src/skills/ before you build anything on top of a fixed count.

Running it: install, first commands and the workspace file

Installation is a clone plus an editable pip install with the data extra: git clone https://github.com/BruceLanLan/augur.git && cd augur, then pip install -e ".[data]", then augur serve --open to launch the dashboard. For a terminal-only workflow the README gives augur analyze AAPL for the full consensus, augur analyze AAPL --persona buffett to isolate one voice, augur consensus NVDA for the weighted score plus a Kelly position suggestion, and augur workflow TSLA --steps fetch,analyze,consensus,committee to chain steps in one call. The workflow pipeline is documented as six stages (fetch, analyze, consensus, committee, debate, sentiment) with the notable property that a failing step does not abort the run, and the step list follows your active profile. Dashboard configuration lives in ~/.augur/workspace.yaml, which holds layout presets (analyst, trader, committee, minimal), named profiles and the enabled persona subset, and is portable between machines. If you want the agent integration instead of the UI, augur mcp-server starts a stdio MCP server, and the README's Claude Desktop example registers it as a server named augur with command augur and args ["mcp-server"]. Thirteen MCP tools are listed, including mcp_augur_analyze, mcp_augur_consensus, mcp_augur_workspace_get and mcp_augur_workspace_set. The last pair is the unusual part: an external agent can read and rewrite your local workspace config, so scope that server's permissions deliberately.

Where the design shows strain

The README is strong on surface area and thin on provenance. It advertises SEC EDGAR as the source of real financial statement data, but it does not state which market data provider backs augur fetch, what the refresh interval is, or how the tool behaves when a ticker is not covered. The 2,461 passing tests badge tells you the suite exists; it does not tell you what percentage of the analysis path is covered by deterministic assertions versus model output. The scoring layer is the real opacity. The README says the comparison view shows which specific factors (PE, moat, momentum and so on) a persona used to reach a score, which implies a factor table exists, but it never states whether the same ticker and the same persona produce the same score on two consecutive runs. For an LLM-driven system that is the question that decides whether the tool is a research aid or a signal generator, and the material does not answer it. There is also a scope mismatch worth naming: a Kelly position sizing suggestion is presented next to a consensus score, which invites users to treat a qualitative debate as a quantitative edge. Kelly sizing is only as good as the probability estimate fed into it, and the README does not describe how that probability is derived.

A real alternative and the difference that matters

If you want reproducible, deterministic factor output for a ticker, a conventional quantitative screener or factor library is the better instrument. The difference is not quality, it is kind. A screener computes PE, ROE, momentum and quality metrics from a fixed data pipeline, and the same input yields the same output, which is what makes backtests meaningful. Augur's augur backtest AAPL --days 30 command is documented as using real historical data, but the scores being replayed come from persona reasoning, so the backtest measures the consistency of the persona layer, not the predictive power of a factor model. Conversely, a screener cannot tell you that a Buffett-style frame and a Wood-style frame disagree on the same balance sheet, which is exactly the output Augur is built to produce. The honest use of Augur is upstream of a screener: use it to generate the questions and the disagreement map, then use deterministic numbers to answer them.

Maintenance, licence and upgrade cost

The project is MIT licensed, which permits commercial use, modification and redistribution provided the copyright notice and permission notice are retained; that is a summary of the licence identifier, not legal advice, and you should read the LICENSE file for the actual terms. The README shows a single maintenance command, augur update, described as git pull plus reinstall and explicitly limited to installations made by git clone, so a pip install from a wheel has no documented in-place upgrade path. There is a release badge for v10.15.0 but no releases were retrieved for this review, so the cadence between versions is not something the supplied material establishes. The upgrade surface is wider than a typical library: persona definitions live in src/skills/, workspace state lives in ~/.augur/workspace.yaml, and if you have wired the MCP server into Claude Desktop or Hermes you have a second config file to keep in sync. The last push recorded is 2026-07-28, which suggests active development, and active development plus a skill-based persona layout means persona behaviour can shift between versions without a breaking API change. Pin a commit if you care about reproducibility. augur doctor is the documented starting point when something breaks.

Editorial conclusion

Adopt Augur if you want a structured way to force several disagreeing analytical frames onto the same ticker and you are comfortable reading its output as a debate aid rather than a valuation. Skip it if you need auditable, deterministic numbers: the README describes persona scoring, factor breakdowns and a Kelly suggestion without stating which model computes them, where the market data comes from, or how reproducible a run is. Before you trust a single signal, run augur fetch AAPL and augur analyze AAPL --persona buffett on the same ticker twice and compare the factor tables, then read the guidance step's documentation, since the README says it is off by default. The MIT licence gives you room to fork the persona definitions in src/skills/, which is the part worth owning.

Official sources

  1. BruceLanLan/augur on GitHub
  2. Issues
  3. License: MIT
  4. Project website
  5. README
Community notes

Community notes