{
  "markdown": "<a name=\"readme-top\"></a>\n\n<!-- readme-section:hero -->\n<div align=\"center\">\n\n<img src=\"assets/banner.png\" alt=\"AlphaCouncil Agent\" width=\"100%\" />\n\n### An investment-research council you can inspect\n\n**One request becomes sourced evidence, competing method views, a bull/bear challenge, and a portfolio-manager verdict.**\n\n**English** · [中文](README.zh-CN.md) · [日本語](README.ja.md)\n\n<p>\n  <img src=\"https://img.shields.io/github/actions/workflow/status/Zhao73/alphacouncil-agent/check.yml?style=for-the-badge&label=build&logo=githubactions&logoColor=white&color=1a7a6a\" alt=\"build\" />\n  <img src=\"https://img.shields.io/badge/License-MIT-c9a227?style=for-the-badge\" alt=\"MIT\" />\n  <img src=\"https://img.shields.io/badge/Node-%3E%3D18-339933?style=for-the-badge&logo=node.js&logoColor=white\" alt=\"node\" />\n  <img src=\"https://img.shields.io/github/stars/Zhao73/alphacouncil-agent?style=for-the-badge&logo=github&color=0d4d4d\" alt=\"stars\" />\n</p>\n<p>\n  <img src=\"https://img.shields.io/badge/OpenAI_Codex-412991?style=for-the-badge&logo=openai&logoColor=white\" alt=\"OpenAI Codex\" />\n  <img src=\"https://img.shields.io/badge/Claude_Code-D97757?style=for-the-badge&logo=anthropic&logoColor=white\" alt=\"Claude Code\" />\n  <img src=\"https://img.shields.io/badge/OpenCode-1a7a6a?style=for-the-badge\" alt=\"OpenCode\" />\n  <img src=\"https://img.shields.io/badge/Grok_Build-000000?style=for-the-badge&logo=x&logoColor=white\" alt=\"Grok Build\" />\n  <img src=\"https://img.shields.io/badge/ChatGPT_Work-dev_mode-412991?style=for-the-badge&logo=openai&logoColor=white\" alt=\"ChatGPT Work developer mode\" />\n</p>\n<p>\n  <img src=\"https://img.shields.io/badge/MCP-compatible-000000?style=for-the-badge\" alt=\"MCP compatible\" />\n  <img src=\"https://img.shields.io/badge/data_check-no_vendor_key-2ea043?style=for-the-badge\" alt=\"Core data check needs no vendor key\" />\n  <img src=\"https://img.shields.io/badge/runtime_dependencies-zero-2ea043?style=for-the-badge\" alt=\"Zero runtime dependencies\" />\n</p>\n\n[Install](#install-in-codex) · [Try the data layer](#free-first-run) · [See how calls expand](#choose-the-depth-before-it-runs) · [Read a report](docs/examples/final_report.SOX.zh.md)\n\n</div>\n\n**v1.7:** concise setup with remembered choices, conclusions first, expanded daily history and full method-dependency checks. Fresh confirmation is still required. [Upgrade details and data-source boundaries](docs/releases/v1.7.0.md).\n\n<!-- readme-section:demo -->\n<div align=\"center\">\n\n**Question → sourced evidence → frozen method stances → Bull/Bear challenge → PM decision + saved audit**\n\n[Historical UI recording (MP4)](assets/demo.mp4) · [Historical report artifact (SOX, Chinese)](docs/examples/final_report.SOX.zh.md)\n\n<sub>The recording predates the current 26-seat candidate. It demonstrates an earlier interface only—not current timing, method fidelity, data accuracy, four-code-host validation, or ChatGPT Work validation.</sub>\n\n</div>\n\n<!-- readme-section:promise -->\n## One question. An inspectable case.\n\nAlphaCouncil turns a ticker question into a reviewable research process. Parallel evidence workers gather public sources, selected investment-method seats interpret the same dated facts, bull and bear challenge the case, and a portfolio manager records the decision and its invalidation conditions. Missing inputs stay visible instead of being filled with guesses.\n\nThe same repository supports **Codex, Claude Code, OpenCode, and Grok Build**, plus a tool-only **ChatGPT Work developer-mode gateway**. It classifies companies, ETFs, and market indices before research so a basket is not analyzed as if it were an operating company.\n\n<!-- readme-section:install -->\n## Install in Codex\n\nPrerequisite: Node.js 18 or newer. Install with these two shell commands:\n\n```bash\ncodex plugin marketplace add Zhao73/alphacouncil-agent\ncodex plugin add alphacouncil-agent@alphacouncil\n```\n\nPlugins load when Codex starts. Fully quit and restart Codex, open a new session, then enter this in the Codex composer:\n\n```text\n@alphacouncil-agent analyze AAPL\n```\n\nFor ChatGPT Work developer mode, Claude Code, OpenCode, Grok Build, Windows, troubleshooting, and the optional global npm command, use the **[complete install guide](docs/INSTALL.md)**.\n\n<!-- readme-section:first-run -->\n## Free first run\n\nCheck the keyless public-data layer before starting a council:\n\n```text\n# Codex\n@alphacouncil-agent AAPL news\n\n# Claude Code, OpenCode, or Grok Build\n/alpha AAPL news\n```\n\nThis check starts no council workers and requires no data-vendor key. For bounded research in Codex, use `@alphacouncil-agent AAPL quick`; on the three slash-command hosts, use `/alpha AAPL quick`.\n\n<!-- readme-section:call-structure -->\n## Choose the depth before it runs\n\nAlphaCouncil shows the work plan first. Full research asks separately for method seats, evidence breadth, and depth; the user confirms them before workers start. Full tiers use **15 / 30 / 60** minute ceilings—never a hidden token or currency estimate.\n\n| Run | Model-call structure | Time ceiling |\n|---|---|---:|\n| Data check | Keyless tools only; no council workers and no additional model fan-out | Outside the council tiers |\n| Quick research | 4 evidence workers in parallel → 1–4 method seats in parallel → Bull and Bear in parallel → PM | 10 minutes |\n| Full — fast | 8 core or exactly 11 all-scope evidence workers start together; each selected method stance is frozen deterministically before one isolated explanation worker; 3 debate rounds → PM | 15 minutes |\n| Full — normal | Same confirmed roster, frozen-stance sequence, 3 debate rounds, and PM, with a larger depth envelope | 30 minutes |\n| Full — slow | Same confirmed roster and stages with the largest depth envelope | 60 minutes |\n\nThese are queue-to-terminal persistence ceilings, not measured completion times. They guarantee\nan explicit terminal record even when work is incomplete; a successful live fast run within 15\nminutes has not yet been demonstrated across the four hosts.\nFast keeps the full contract but uses an auditable stage-aware reasoning profile and one shared\nlifecycle budget per primary/retry/repair chain; retries cannot silently double a seat's cap.\n\nWhen an instrument classification and typed-fact coverage are already available, the selector also\nshows an eight-family **advisory method match** derived from all 26 physical pack manifests. An\nexplicit objective and holding horizon additionally calibrate the match and separate directional,\nnon-voting risk, and context-only contributions; `out_of_scope` is never a negative vote. For a\none-year directional request, the PM maps sourced base-case total return to one published rating\nrubric instead of counting conservative method seats; the server binds the frozen price/currency\nand recomputes that return from a same-currency target plus income. An `out_of_scope` seat remains visible in\nthe method bench but is structurally absent from the PM rating path. It is only a prefill: every pack remains\nselectable, no run starts without explicit confirmation, and a missing classification produces no\nguessed default. The output represents AI-generated method simulations—not human experts,\nindependent models, or a promise of profit. See\n[method-panel recommendation and seat evidence](docs/reference/method-panel-evidence.md).\n\nOnly the slow run with all methods and all evidence workers enables the additional verification path; the other full tiers do not claim that extra check.\n\n<!-- readme-section:benefits -->\n## What you gain\n\n| Benefit | What it changes |\n|---|---|\n| **A council, not one answer** | Evidence specialists, method seats, opposing cases, and a PM expose where agreement comes from. |\n| **A stance before the story** | Each selected full-run method stance is fixed from structured inputs before its isolated explanation is written. |\n| **Claims you can trace** | Material report claims must point to source IDs; missing evidence remains a stated gap. |\n| **Disagreement that survives synthesis** | Three cross-examination rounds and persisted minority or opposing reports keep the losing case available for review. |\n| **The right research path for the asset** | Companies use issuer evidence; ETFs use dated holdings look-through; indices use aggregate methodology. The first data check is keyless. |\n\n<!-- readme-section:comparison -->\n## How the architecture differs\n\nThis compares workflow shapes, not named products. A particular tool may implement a different design.\n\n| Review concern | Single-model reply or common shared-context flow | AlphaCouncil |\n|---|---|---|\n| Correlated errors | One shared context can carry an early mistake into every later step | Evidence seats and opposing paths run in isolated workers; they may still use the same provider or model and are **not independent models** |\n| Position formation | The position can be composed together with its explanation | A structured stance is frozen before explanatory prose |\n| Source trace | Traceability depends on the prompt and host | Every material claim is required to carry a source ID |\n| Minority view | Dissent can be folded into the final summary | Minority and opposing reports remain surfaced as review artifacts |\n\n<!-- readme-section:honesty -->\n## What the seats are—and are not\n\nThe method-seat formulas are **AI-authored reconstructions of published methods, pending human review**. The named practitioners have not reviewed or endorsed these seats. They are not impersonations, independent models, or validated replicas. A stance is a structured argument to check against its inputs and sources—not a validated investment model.\n\nCurrent source evidence boundary: 26 provisional method seats, 0 validated method models, 0/8\nregistered-and-completed canonical evaluation runs, and 0/4 live-host end-to-end runs. Passing source tests\ndoes not change those zeros.\n\n<!-- readme-section:disclaimer -->\n## Disclaimer\n\nAlphaCouncil is for **education and research only**. It is not investment advice, a recommendation, or a solicitation. AI-generated analysis can be incomplete, outdated, or wrong. Verify the evidence yourself and consult a licensed professional before making an investment decision. The authors accept no liability for losses.\n\n<!-- readme-section:reference-fold -->\n## Go deeper\n\n- [Detailed English product, usage, tools, and architecture reference](docs/reference/README.en.md)\n- [Complete four-host installation guide](docs/INSTALL.md)\n- [Report contract](docs/report-contract.md) and [complete example report](docs/examples/final_report.SOX.zh.md)\n- [Roadmap](docs/roadmap.md), [security model](SECURITY.md), [attribution](docs/attribution.md), and [changelog](CHANGELOG.md)\n- [Standalone terminal client](terminal/README.md): language → ticker → model → methods, with clickable evidence and debate. Developer entry: `npm run terminal` after `npm ci --prefix terminal`.\n- Existing local viewers: `npm run tui` and `npm run gui`\n\nRuntime outputs are written outside the repository under `~/.alphacouncil-agent/runs/<run_id>/`.\n\n<div align=\"center\">\n\n<img src=\"assets/logo.png\" alt=\"AlphaCouncil\" width=\"120\" />\n\n**Evidence first. Disagreement visible. Decisions reviewable.**\n\n<a href=\"#readme-top\">↑ Back to top</a>\n\n</div>\n",
  "bytes": 11231,
  "sha": "ca708535f133cedff32e588bde9521169877986bdfdf965516112a07c651d13d",
  "repo_slug": "zhao73/alphacouncil-agent",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_zhao73_alphacouncil_agent_346d3334/readme"
}