gloomberb
键盘驱动的开源金融终端,用命令替代鼠标管理投资组合
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
键盘驱动的开源金融终端,用命令替代鼠标管理投资组合
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象这样一个场景:凌晨三点,美股财报季正如火如荼——一位独立交易者正盯着一块漆黑的终端窗口,手指在键盘上飞舞,毫秒级切换着苹果的期权链、纳斯达克的恐慌指数、比特币的资金费率。他的工具不是彭博终端那每月2000美元的订阅,而是一个开源的、键盘驱动的终端程序。这就是 Gloomberb,一个试图把专业级金融数据塞进开源终端的项目。
图1:Gloomberb 项目 Logo
彭博终端(Bloomberg Terminal)是金融行业最具标志性的数据终端,其核心壁垒不在算法,而在于它聚合了数百个数据源、覆盖股票/债券/外汇/大宗商品的完整生态,以及几乎无法被复制的数据授权协议。对于普通投资者、独立交易者和小型研究机构而言,每年近三万美元的订阅费是一个极高的门槛。
开源社区长期存在对平价彭博替代品的需求。Gloomberb 正是这个方向上的一次重要尝试——作者 Vincent L. wt(GitHub @vincelwt)希望用开源方式复现彭博的核心体验:键盘驱动、数据密集、信息分层。项目于2026年3月开源,采用 MIT 许可证,目前在 GitHub 上拥有604颗星。
Gloomberb 的使用方式高度键盘化。用户通过 Ctrl+P 唤起命令面板,然后用简短的命令码导航:
| 命令 | 功能 |
|---|---|
DES AAPL | 查看苹果公司详细信息 |
GP NVDA | 显示英伟达股价图表 |
TOP | 今日市场热点新闻排行 |
MOST | 市场涨幅/跌幅最大的品种 |
PF | 投资组合与关注列表 |
KELLY AAPL | 凯利公式仓位计算 |
HELP | 完整快捷键列表 |
系统功能可分为四大板块:
证券研究 —— 提供报价、图表、财务数据、SEC文件、股东结构、内部人交易、期权链、分析师评级、估值对比等完整的研究工具链。这一块直接对标彭博的 DES、GP、FA 等核心功能。
市场追踪 —— 热点新闻、突发快讯、行业板块动态、全球指数、外汇汇率、宏观事件、收益率曲线、市场情绪(恐慌指数/贪婪指数),以及 Polymarket 预测市场的直接浏览。Gloomberb 甚至支持 Substack 订阅源聚合,将分散的财经自媒体内容集中到终端里。
投资组合管理 —— 支持多个投资组合和关注列表,集成券商连接、告警设置、笔记记录,以及基于 AI 的股票筛选功能。其中 AI 筛选允许用户用自然语言描述筛选条件,系统自动生成对应查询。
Gloom Cloud —— 一个内置的聊天界面,用户可以在终端里直接与 AI 对话,讨论持仓策略、查询市场数据背后的逻辑。
所有命令都支持结构化输出:--json、--csv、--ndjson 三种格式,方便将数据导入 Python 脚本、Excel 或其他分析工具做二次处理。
Gloomberb 的技术栈选择非常有趣,是一个 Bun runtime + React 组件 + OpenTUI 终端渲染的三层混合架构。
运行时层:整个应用基于 Bun 构建(package.json 中 bun 是唯一的运行时依赖)。项目入口点为 src/cli/entry.ts,由 bin/gloomberb shell 脚本调用 bun src/cli/entry.ts 启动。
桌面应用层:通过 electrobun 框架实现 macOS 桌面应用封装,支持代码签名、DMG 打包和 notarize 公证流程。Electrobun 是一个类似 Electron 但更轻量的桌面应用框架,其 build 配置在 electrobun.config.ts 中定义,支持 macOS 原生渲染和 Windows CEF 渲染两种模式。
终端渲染层:TUI(终端用户界面)由 OpenTUI 提供支持,这是一个将 React 组件渲染到终端的开源库。项目在 src/react/ 目录下维护了自己的 React 组件层,结合 @tanstack/react-virtual 实现虚拟滚动处理大数据量列表。
插件系统 —— Gloomberb 实现了完整的插件架构(src/plugins/),核心功能本身就是以插件形式存在的。插件目录 ~/.gloomberb/plugins/ 存放第三方插件,每个插件实现 GloomPlugin 接口,通过 setup() 方法在运行时注册命令、标签页和数据列。
数据层 —— 数据持久化使用 SQLite(src/data/sqlite/),提供会话存储、配置持久化、资源缓存和 Ticker 数据仓库。src/api-client/ 封装了与后端的数据通信,包括认证(auth.ts)、WebSocket 实时推送(socket.ts)、请求错误处理(errors.ts)。src/brokers/ 目录处理券商连接,支持券商账户直接接入。
依赖生态:
有趣的是,项目还维护了对 @opentui/core 和 electrobun 的补丁文件(patches/),修改了第三方库的内部行为以适配 Gloomberb 的需求,说明作者对依赖链有较深的定制能力。
图2:Gloomberb Windows 版 Logo
安装 Gloomberb 有三种途径:
推荐使用 Kitty、Ghostty 或 WezTerm 等现代终端以获得最佳渲染效果(OpenTUI 对这些终端做了优化)。桌面应用需要 macOS 系统,Windows 版需要打包后分发。
首次运行需要配置券商账户或 Gloom Cloud API key。命令 gloomberb api list 可查看可用 API,gloomberb api invoke <command> 直接调用。
必须指出 Gloomberb 与彭博终端之间的差距。彭博的核心资产不是 UI,而是数据授权协议——全球数十家交易所、评级机构、新闻社与彭博签署了独家的数据分发协议,这些数据根本无法通过开源爬虫复制。Gloomberb 的数据来源(推测为免费数据源如 Yahoo Finance、IEX Cloud 或用户自行接入的券商 API)在数据深度和实时性上必然受限。
此外,项目对 Windows 的支持目前还不够成熟。Electrobun 配置中 Windows 使用 CEF(Chromium Embedded Framework)渲染,而 macOS 使用原生渲染,两端体验可能存在差异。Linux 桌面版支持状态也未明确说明。
Gloomberb 的出现是开源金融数据工具趋势的一个缩影。从 FreeBSD 时代的 curl 金融数据脚本,到 Python 的 pandas-datareader,再到如今的终端金融终端,开源社区一直在降低专业金融数据的获取门槛。
604星的项目规模不算大,但其键盘优先的设计哲学值得称道——在信息过载的时代,减少鼠标点击本身就是效率。插件生态的开放也意味着 Gloomberb 可能演化为一个金融终端平台,而非单一应用。
作者 Vincent L. wt 在 AGENTS.md 中对 AI agent 的行为规范有明确要求,体现了对代码质量和测试的重视。这种工程化意识对于一个面向金融数据的产品尤为重要——错误的数据可能直接导致交易损失。
Gloomberb 不是彭博终端的开源替代品(那是一个不现实的目标),但它是一个有价值的探索:如果你需要的是一个键盘驱动、高度可定制、支持插件扩展的终端金融工具,Gloomberb 值得关注。
数据来源:GitHub 仓库(vincelwt/gloomberb),最后更新 2026-06-20,Stars 604,MIT 许可证。