AI-Trader Market Intel
HKUDS/AI-Trader
Reads AI-Trader's read-only market snapshots, grouped financial news and events board through its market-intel endpoints, for context before trading or posting.
Compares two dated research reports on one company to separate real factual change from price moves and rewording, then reports whether the investment thesis has drifted.
SKILL.md written in Chinese; this summary is our English description.
$ npx skills add xbtlin/ai-berkshire --skill thesis-drift -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install xbtlin/ai-berkshire thesis-drift --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/xbtlin/ai-berkshire.git skills-src && mkdir -p .claude/skills && cp -r skills-src/codex-skills/thesis-drift .claude/skills/thesis-drift && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "thesis-drift" agent skill from https://github.com/xbtlin/ai-berkshire/tree/main/codex-skills/thesis-drift into .claude/skills/thesis-drift/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "thesis-drift", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/xbtlin/ai-berkshire/tree/main/codex-skills/thesis-driftType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add xbtlin/ai-berkshire --skill thesis-drift -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install xbtlin/ai-berkshire thesis-drift --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/xbtlin/ai-berkshire.git skills-src && mkdir -p .agents/skills && cp -r skills-src/codex-skills/thesis-drift .agents/skills/thesis-drift && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "thesis-drift" agent skill from https://github.com/xbtlin/ai-berkshire/tree/main/codex-skills/thesis-drift into .agents/skills/thesis-drift/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "thesis-drift", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add xbtlin/ai-berkshire --skill thesis-drift -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install xbtlin/ai-berkshire thesis-drift --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/xbtlin/ai-berkshire.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/codex-skills/thesis-drift .cursor/skills/thesis-drift && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "thesis-drift" agent skill from https://github.com/xbtlin/ai-berkshire/tree/main/codex-skills/thesis-drift into .cursor/skills/thesis-drift/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "thesis-drift", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/xbtlin/ai-berkshire.git --path codex-skills/thesis-drift--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add xbtlin/ai-berkshire --skill thesis-drift -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install xbtlin/ai-berkshire thesis-drift --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/xbtlin/ai-berkshire.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/codex-skills/thesis-drift .gemini/skills/thesis-drift && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "thesis-drift" agent skill from https://github.com/xbtlin/ai-berkshire/tree/main/codex-skills/thesis-drift into .gemini/skills/thesis-drift/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "thesis-drift", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install xbtlin/ai-berkshire thesis-driftInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add xbtlin/ai-berkshire --skill thesis-drift -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/xbtlin/ai-berkshire.git skills-src && mkdir -p .github/skills && cp -r skills-src/codex-skills/thesis-drift .github/skills/thesis-drift && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "thesis-drift" agent skill from https://github.com/xbtlin/ai-berkshire/tree/main/codex-skills/thesis-drift into .github/skills/thesis-drift/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "thesis-drift", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add xbtlin/ai-berkshire --skill thesis-drift -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install xbtlin/ai-berkshire thesis-drift --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/xbtlin/ai-berkshire.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/codex-skills/thesis-drift .opencode/skills/thesis-drift && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "thesis-drift" agent skill from https://github.com/xbtlin/ai-berkshire/tree/main/codex-skills/thesis-drift into .opencode/skills/thesis-drift/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "thesis-drift", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
thesis-driftCompares two dated research reports on one company to separate real factual change from price moves and rewording, then reports whether the investment thesis has drifted.
The skill separates three kinds of change in a long-held position: facts that changed, such as revenue, margins, competition, management behavior or capital allocation; price changes from sentiment or valuation multiples; and wording changes where the evidence is the same. It recognizes drift only when the evidence changed. It depends on the structured output of a thesis tracker: a list of core assumptions, red lines, valuation anchors and a tracking log.
It works in three modes. Given two report paths, it compares those. Given only a company name, it looks for that company's thesis file in the reports folder along with earlier snapshots. With one report or none, it switches to a missing-baseline process, and if the reports cover different companies it stops and asks you to confirm. Evidence from both reports goes into one table, and dimensions it cannot extract are marked as impossible to judge rather than invented.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit a221a20. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
python3From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Investment Thesis Drift Check loads about 1.5k tokens when it runs. Until then it costs about 22 tokens; SKILL.md has 436 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from xbtlin/ai-berkshire at commit a221a20, republished under its MIT licence (© xbtlin). 436 words, ~1,500 tokens.
.claude/skills/thesis-drift/SKILL.md (or your agent's skills folder).This skill is generated from skills/thesis-drift.md so Claude Code and Codex users share one canonical workflow.
$ARGUMENTS as the user's request in the current Codex thread.tools/ in this repository. Prefer running commands from the repository root with paths like python3 tools/financial_rigor.py ...; if the current thread starts outside the repo, locate the actual checkout path first instead of assuming a fixed home-directory path.date command to confirm today's date; treat it as the baseline for "latest" data and state the data cutoff date in the report header. Never assume the current date from training data.AGENTS.md: cross-check financial data, use exact arithmetic tools for valuation/math, and clearly label uncertainty and source gaps.对 $ARGUMENTS 执行投资论文漂移检测。
支持输入格式:
公司名 旧报告路径 新报告路径 — 指定两份研究报告或论文快照进行对比公司名 reports/{公司名}-thesis-旧日期.md reports/{公司名}-thesis-新日期.md — 对比两份带日期的论文快照公司名 — 自动查找 reports/{公司名}-thesis.md 及同目录历史快照;如果没有基线则转入缺失基线处理"当事实改变时,我就改变想法。你呢?" —— 凯恩斯
"股价波动不是论文漂移,事实变了才是。" —— AI Berkshire
长期持仓最难的不是每天读新闻,而是区分三件事:
投资论文漂移检测的目标是:只在证据变化时承认论文变化。不能因为报告换了写法就制造漂移,也不能因为股价涨跌就误判基本面。
本 Skill 依赖 /thesis-tracker 输出的结构化维度:核心假设清单、红线清单、估值锚点、追踪记录表。没有这些结构时,先补齐基线,再做漂移检测。
解析 $ARGUMENTS:
reports/{公司名}-thesis.md 及历史快照,进入自动快照对比模式读取旧报告和新报告,提取:
如果报告缺少关键结构,先标注"结构缺失",但仍尽量从正文中抽取证据;抽取不到的维度标为"无法判断",不能编造结论。
把两份报告中的事实证据整理成同一张表:
| 维度 | 旧报告证据 | 新报告证据 | 数据来源 | 是否可验证 |
|---|---|---|---|---|
| 估值锚点 | ||||
| 核心假设 | ||||
| 红线 | ||||
| 管理层质量 | ||||
| 竞争护城河 |
只比较证据,不比较文风。 如果新旧报告只是同义改写、排序变化、语气变化,但事实数据和判断阈值没有变化,判定为 Unchanged。
所有数值变化必须使用 tools/financial_rigor.py 做精确计算,禁止 LLM 心算:
python3 tools/financial_rigor.py verify-valuation \
--price {当前价格} \
--eps {EPS} \
--bvps {每股净资产} \
--fcf-per-share {每股自由现金流}如需计算市值、百分比变化、目标价差异或情景估值,使用:
python3 tools/financial_rigor.py verify-market-cap --price {价格} --shares {股本} --reported {报告市值} --currency {币种}
python3 tools/financial_rigor.py cross-validate --field {字段} --values '{JSON}' --unit {单位}
python3 tools/financial_rigor.py three-scenario --price {价格} --eps {EPS} --shares {股本亿} --growth {乐观} {中性} {悲观} --pe {乐观PE} {中性PE} {悲观PE}
python3 tools/financial_rigor.py calc --expr '{精确算式}'关键财务数据必须至少两处独立来源交叉验证。来源不足、口径不一致、无法复核的数字必须标注为"低置信度 / 待核实"。
固定使用以下维度,不要临时增减:
| 维度 | 判定重点 | Improved | Unchanged | Weakened |
|---|---|---|---|---|
| 估值锚点 | 内在价值、PE/PB/FCF Yield、安全边际、目标价区间 | 安全边际扩大或内在价值上修且经工具验算 | 估值区间和安全边际无实质变化 | 安全边际收窄、内在价值下修或估值假设失效 |
| 核心假设清单 | 收入增速、利润率、现金流、用户/订单/产能等可验证假设 | 更多假设被新证据强化 | 假设状态与证据基本一致 | 假设边际弱化、受损或破裂 |
| 红线清单 | 诚信、监管、业务衰退、竞争突破、管理层异常动作 | 原有红线风险解除或显著下降 | 未触发且风险水平不变 | 红线被触发或触发概率上升 |
| 管理层质量 | 诚信、资本配置、回购分红、执行力、股东友好度 | 新行为提高信任度 | 行为延续旧判断 | 行为损害信任或资本配置变差 |
| 竞争护城河 | 市占率、定价权、网络效应、成本优势、替代威胁 | 护城河变宽或竞争优势被验证 | 格局无实质变化 | 护城河被削弱或竞对突破 |
每个维度只能给出三类结论:Improved / Unchanged / Weakened。
每个非 Unchanged 的结论必须引用导致变化的具体新证据:
如果找不到能解释变化的证据,必须判定为 Unchanged 或 无法判断,不能用措辞差异推断漂移。
一、对比对象与时间跨度
二、总体结论:论文是否漂移
三、维度漂移表
四、证据差异明细
五、估值与数值验算
六、建议动作迁移
七、不确定项与需补充来源
八、下次跟踪重点| 维度 | 旧判断 | 新判断 | 漂移方向 | 触发证据 | 置信度 |
|---|---|---|---|---|---|
| 估值锚点 | Improved / Unchanged / Weakened | 高/中/低 | |||
| 核心假设清单 | Improved / Unchanged / Weakened | 高/中/低 | |||
| 红线清单 | Improved / Unchanged / Weakened | 高/中/低 | |||
| 管理层质量 | Improved / Unchanged / Weakened | 高/中/低 | |||
| 竞争护城河 | Improved / Unchanged / Weakened | 高/中/低 |
Unchanged 行的触发证据写 —,不要为了填表编造证据。
在 reports/ 中查找:
reports/{公司名}-thesis.mdreports/{公司名}-thesis-*.mdreports/{公司名}/ 目录下包含 thesis、论文、追踪 的报告选择时间最早且结构完整的文件作为旧报告,时间最新的文件作为新报告。若用户指定日期,以用户指定为准。
对比前必须确认:
如果无法确认同一公司,停止并要求用户提供明确路径。
找到两份有效快照后,按模式A完整执行。
如果只找到一份报告或没有找到旧快照:
/thesis-tracker {公司名} 建立论文 建立结构化基线reports/{公司名}-thesis.md 作为未来漂移检测基线输出格式:
无法执行论文漂移检测:缺少历史基线。
已找到:
- 当前报告:{路径 / 未找到}
- 历史基线:未找到
建议:
1. 先运行 /thesis-tracker {公司名} 建立论文
2. 下次有新财报或重大事件后,再运行 /thesis-drift {公司名} 旧报告 新报告tools/financial_rigor.py© xbtlin, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in codex-skills/thesis-drift of xbtlin/ai-berkshire.
Open the folder on GitHubat commit a221a20
Investment Thesis Drift Check next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Investment Thesis Drift Check this skillxbtlin/ai-berkshire | 17k | — | ~1.5k | Automated safety check: Pass | MIT | |
| AI-Trader Market IntelHKUDS/AI-Trader | 23k | — | ~1.1k | Automated safety check: Pass | None | |
| Eastmoney Market DataHKUDS/Vibe-Trading | 35k | — | ~1k | Automated safety check: Pass | MIT | |
| Stock Deep Analysis Workflowwbh604/UZI-Skill | 7.1k | — | ~9.1k | Automated safety check: Notes | MIT | |
| Zhengxi Fund Manager Views Librarylyra81604/zhengxi-views | 1.8k | — | ~1.6k | Automated safety check: Pass | MIT | |
| SEC EDGAR Filings FetcherHKUDS/Vibe-Trading | 35k | — | ~1.4k | Automated safety check: Pass | MIT |
HKUDS/AI-Trader
Reads AI-Trader's read-only market snapshots, grouped financial news and events board through its market-intel endpoints, for context before trading or posting.
HKUDS/Vibe-Trading
Index of Eastmoney's free, no-token market data interfaces for China A-shares and Hong Kong stocks: fund flows, dragon-tiger lists, margin trading, reports and news.
wbh604/UZI-Skill
Runs a staged deep analysis of a single stock on China A-share, Hong Kong and US markets, ending in an HTML report with valuation models and investor-panel scores.
lyra81604/zhengxi-views
Answers questions with sourced quotes from one Chinese fund manager's public writings, applies his stated investment method and compares his words with real fund holdings.
HKUDS/Vibe-Trading
Fetches U.S. SEC EDGAR data: resolves tickers to CIK numbers, lists recent 10-K, 10-Q and 8-K filings with document URLs, and pulls XBRL financial series.
helsome/folio
Earnings analysis — pre- and post-earnings. An agent skill from helsome/folio.
xbtlin/ai-berkshire
Scans a long-running industry trend for supply chain chokepoints, aiming to find second- and third-layer suppliers that the market has not yet priced in.
xbtlin/ai-berkshire
Plans and writes a three-to-eight-part long-form article series that breaks down one company, built on fact-checked financials, valuation and management analysis.
xbtlin/ai-berkshire
Reads a company's filings and earnings call material in depth, rates how complete the sources are and extracts the key figures into a structured review.
xbtlin/ai-berkshire
Runs four parallel analyst personas over one earnings report, then an editor and reader-review pass turn the findings into a publishable article.
xbtlin/ai-berkshire
A four-step research framework for finding and tracking high-growth core companies in one industry: map the sector, ask core questions, verify, then hold to the turning point.
xbtlin/ai-berkshire
A research rule set for pulling company financials from prioritized sources by market and cross-checking every key figure against two independent sources.
Categories
Compares two dated research reports on one company to separate real factual change from price moves and rewording, then reports whether the investment thesis has drifted. The skill separates three kinds of change in a long-held position: facts that changed, such as revenue, margins, competition, management behavior or capital allocation; price changes from sentiment or valuation multiples; and wording changes where the evidence is the same. It recognizes drift only when the evidence changed.
Investment Thesis Drift Check fits situations like: comparing an old and a new research report on the same company; deciding whether a stock's fall means the thesis changed; auditing a history of thesis snapshots for real versus cosmetic changes; preparing a periodic review of a long-term holding.
Run `npx skills add xbtlin/ai-berkshire --skill thesis-drift -a claude-code`. Or copy the skill folder (codex-skills/thesis-drift in xbtlin/ai-berkshire) into .claude/skills/thesis-drift in your project. Claude Code loads it when a task matches its description.
Run `npx skills add xbtlin/ai-berkshire --skill thesis-drift -a codex`. Or copy the skill folder (codex-skills/thesis-drift in xbtlin/ai-berkshire) into .agents/skills/thesis-drift in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add xbtlin/ai-berkshire --skill thesis-drift -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/thesis-drift, .gemini/skills/thesis-drift, .github/skills/thesis-drift and .opencode/skills/thesis-drift in your project.
Going by SKILL.md and its folder, Investment Thesis Drift Check needs the command-line tools its instructions call (python3). Our summary lists: Dated thesis report files, ideally produced by a thesis tracker.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Investment Thesis Drift Check is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.5k tokens (SKILL.md is roughly 6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Investment Thesis Drift Check: AI-Trader Market Intel (HKUDS/AI-Trader, 23k stars), Eastmoney Market Data (HKUDS/Vibe-Trading, 35k stars), Stock Deep Analysis Workflow (wbh604/UZI-Skill, 7.1k stars) and Zhengxi Fund Manager Views Library (lyra81604/zhengxi-views, 1.8k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
xbtlin (a GitHub user) maintains it in xbtlin/ai-berkshire, which has 16,664 GitHub stars. The repository holds 22 skills in this directory. The repository was last updated on October 8, 2026.
Source: xbtlin/ai-berkshire on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.