[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"tool-virattt--dexter":3,"similar-virattt--dexter":177},{"id":4,"github_repo":5,"name":6,"description_en":7,"description_zh":8,"ai_summary_zh":8,"readme_en":9,"readme_zh":10,"quickstart_zh":11,"use_case_zh":12,"hero_image_url":13,"owner_login":14,"owner_name":15,"owner_avatar_url":16,"owner_bio":17,"owner_company":18,"owner_location":19,"owner_email":18,"owner_twitter":14,"owner_website":18,"owner_url":20,"languages":21,"stars":34,"forks":35,"last_commit_at":36,"license":18,"difficulty_score":37,"env_os":38,"env_gpu":39,"env_ram":39,"env_deps":40,"category_tags":49,"github_topics":18,"view_count":37,"oss_zip_url":18,"oss_zip_packed_at":18,"status":52,"created_at":53,"updated_at":54,"faqs":55,"releases":91},10084,"virattt\u002Fdexter","dexter","An autonomous agent for deep financial research","Dexter 是一款专为深度金融研究打造的自主智能体。它不仅能理解复杂的金融问题，还能像专业分析师一样独立思考、制定计划并执行任务。面对用户提出的投资分析或财报查询需求，Dexter 会自动将大问题拆解为清晰的步骤，调用实时市场数据（如资产负债表、现金流等）进行检索，并通过自我反思机制不断验证和优化结果，最终输出有据可依的专业结论。\n\n这款工具主要解决了传统金融研究中信息搜集繁琐、数据分析耗时以及难以实时整合多源数据的痛点。它特别适合金融从业者、量化研究人员以及希望构建垂直领域 AI 应用的开发者使用。对于普通投资者而言，它也是一个强大的辅助决策助手。\n\nDexter 的技术亮点在于其“思考 - 规划 - 学习”的闭环工作流。它不仅具备智能任务拆解能力，能自动选择最合适的工具获取数据，还内置了安全机制，包括循环检测和步骤限制，防止程序无限运行。此外，它支持通过 WhatsApp 交互，并兼容多种大模型接口与本地部署方案，让高质量的金融数据分析变得更加触手可及。","# Dexter 🤖\n\nDexter is an autonomous financial research agent that thinks, plans, and learns as it works. It performs analysis using task planning, self-reflection, and real-time market data. Think Claude Code, but built specifically for financial research.\n\n\u003Cimg width=\"665\" height=\"452\" alt=\"Screenshot 2026-04-02 at 4 16 57 PM\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fvirattt_dexter_readme_eed624c9a26f.png\" \u002F>\n\n## Table of Contents\n\n- [👋 Overview](#-overview)\n- [✅ Prerequisites](#-prerequisites)\n- [💻 How to Install](#-how-to-install)\n- [🚀 How to Run](#-how-to-run)\n- [📊 How to Evaluate](#-how-to-evaluate)\n- [🐛 How to Debug](#-how-to-debug)\n- [📱 How to Use with WhatsApp](#-how-to-use-with-whatsapp)\n- [🤝 How to Contribute](#-how-to-contribute)\n- [📄 License](#-license)\n\n\n## 👋 Overview\n\nDexter takes complex financial questions and turns them into clear, step-by-step research plans. It runs those tasks using live market data, checks its own work, and refines the results until it has a confident, data-backed answer.  \n\n**Key Capabilities:**\n- **Intelligent Task Planning**: Automatically decomposes complex queries into structured research steps\n- **Autonomous Execution**: Selects and executes the right tools to gather financial data\n- **Self-Validation**: Checks its own work and iterates until tasks are complete\n- **Real-Time Financial Data**: Access to income statements, balance sheets, and cash flow statements\n- **Safety Features**: Built-in loop detection and step limits to prevent runaway execution\n\n[![Twitter Follow](https:\u002F\u002Fimg.shields.io\u002Ftwitter\u002Ffollow\u002Fvirattt?style=social)](https:\u002F\u002Ftwitter.com\u002Fvirattt) [![Discord](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDiscord-Join%20Server-5865F2?style=social&logo=discord)](https:\u002F\u002Fdiscord.gg\u002FjpGHv2XB6T)\n\n\u003Cimg width=\"1042\" height=\"638\" alt=\"Screenshot 2026-02-18 at 12 21 25 PM\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fvirattt_dexter_readme_cdd85a193284.png\" \u002F>\n\n\n## ✅ Prerequisites\n\n- [Bun](https:\u002F\u002Fbun.com) runtime (v1.0 or higher)\n- OpenAI API key (get [here](https:\u002F\u002Fplatform.openai.com\u002Fapi-keys))\n- Financial Datasets API key (get [here](https:\u002F\u002Ffinancialdatasets.ai))\n- Exa API key (get [here](https:\u002F\u002Fexa.ai)) - optional, for web search\n\n#### Installing Bun\n\nIf you don't have Bun installed, you can install it using curl:\n\n**macOS\u002FLinux:**\n```bash\ncurl -fsSL https:\u002F\u002Fbun.com\u002Finstall | bash\n```\n\n**Windows:**\n```bash\npowershell -c \"irm bun.sh\u002Finstall.ps1|iex\"\n```\n\nAfter installation, restart your terminal and verify Bun is installed:\n```bash\nbun --version\n```\n\n## 💻 How to Install\n\n1. Clone the repository:\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fvirattt\u002Fdexter.git\ncd dexter\n```\n\n2. Install dependencies with Bun:\n```bash\nbun install\n```\n\n3. Set up your environment variables:\n```bash\n# Copy the example environment file\ncp env.example .env\n\n# Edit .env and add your API keys (if using cloud providers)\n# OPENAI_API_KEY=your-openai-api-key\n# ANTHROPIC_API_KEY=your-anthropic-api-key (optional)\n# GOOGLE_API_KEY=your-google-api-key (optional)\n# XAI_API_KEY=your-xai-api-key (optional)\n# OPENROUTER_API_KEY=your-openrouter-api-key (optional)\n\n# Institutional-grade market data for agents\n# FINANCIAL_DATASETS_API_KEY=your-financial-datasets-api-key\n\n# (Optional) If using Ollama locally\n# OLLAMA_BASE_URL=http:\u002F\u002F127.0.0.1:11434\n\n# Web Search (Exa preferred, Tavily fallback)\n# EXASEARCH_API_KEY=your-exa-api-key\n# TAVILY_API_KEY=your-tavily-api-key\n```\n\n## 🚀 How to Run\n\nRun Dexter in interactive mode:\n```bash\nbun start\n```\n\nOr with watch mode for development:\n```bash\nbun dev\n```\n\n## 📊 How to Evaluate\n\nDexter includes an evaluation suite that tests the agent against a dataset of financial questions. Evals use LangSmith for tracking and an LLM-as-judge approach for scoring correctness.\n\n**Run on all questions:**\n```bash\nbun run src\u002Fevals\u002Frun.ts\n```\n\n**Run on a random sample of data:**\n```bash\nbun run src\u002Fevals\u002Frun.ts --sample 10\n```\n\nThe eval runner displays a real-time UI showing progress, current question, and running accuracy statistics. Results are logged to LangSmith for analysis.\n\n## 🐛 How to Debug\n\nDexter logs all tool calls to a scratchpad file for debugging and history tracking. Each query creates a new JSONL file in `.dexter\u002Fscratchpad\u002F`.\n\n**Scratchpad location:**\n```\n.dexter\u002Fscratchpad\u002F\n├── 2026-01-30-111400_9a8f10723f79.jsonl\n├── 2026-01-30-143022_a1b2c3d4e5f6.jsonl\n└── ...\n```\n\nEach file contains newline-delimited JSON entries tracking:\n- **init**: The original query\n- **tool_result**: Each tool call with arguments, raw result, and LLM summary\n- **thinking**: Agent reasoning steps\n\n**Example scratchpad entry:**\n```json\n{\"type\":\"tool_result\",\"timestamp\":\"2026-01-30T11:14:05.123Z\",\"toolName\":\"get_income_statements\",\"args\":{\"ticker\":\"AAPL\",\"period\":\"annual\",\"limit\":5},\"result\":{...},\"llmSummary\":\"Retrieved 5 years of Apple annual income statements showing revenue growth from $274B to $394B\"}\n```\n\nThis makes it easy to inspect exactly what data the agent gathered and how it interpreted results.\n\n## 📱 How to Use with WhatsApp\n\nChat with Dexter through WhatsApp by linking your phone to the gateway. Messages you send to yourself are processed by Dexter and responses are sent back to the same chat.\n\n**Quick start:**\n```bash\n# Link your WhatsApp account (scan QR code)\nbun run gateway:login\n\n# Start the gateway\nbun run gateway\n```\n\nThen open WhatsApp, go to your own chat (message yourself), and ask Dexter a question.\n\nFor detailed setup instructions, configuration options, and troubleshooting, see the [WhatsApp Gateway README](src\u002Fgateway\u002Fchannels\u002Fwhatsapp\u002FREADME.md).\n\n## 🤝 How to Contribute\n\n1. Fork the repository\n2. Create a feature branch\n3. Commit your changes\n4. Push to the branch\n5. Create a Pull Request\n\n**Important**: Please keep your pull requests small and focused.  This will make it easier to review and merge.\n\n\n## 📄 License\n\nThis project is licensed under the MIT License.\n","# 德克斯特 🤖\n\n德克斯特是一款自主的金融研究智能体，它在工作过程中会思考、规划并不断学习。它利用任务规划、自我反思和实时市场数据来进行分析。可以把它想象成Claude Code，但专为金融研究而打造。\n\n\u003Cimg width=\"665\" height=\"452\" alt=\"Screenshot 2026-04-02 at 4 16 57 PM\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fvirattt_dexter_readme_eed624c9a26f.png\" \u002F>\n\n## 目录\n\n- [👋 概述](#-overview)\n- [✅ 前置条件](#-prerequisites)\n- [💻 安装方法](#-how-to-install)\n- [🚀 运行方法](#-how-to-run)\n- [📊 评估方法](#-how-to-evaluate)\n- [🐛 调试方法](#-how-to-debug)\n- [📱 如何通过WhatsApp使用](#-how-to-use-with-whatsapp)\n- [🤝 如何贡献](#-how-to-contribute)\n- [📄 许可证](#-license)\n\n\n## 👋 概述\n\n德克斯特能够将复杂的金融问题转化为清晰、分步的研究计划。它利用实时市场数据执行这些任务，检查自身的工作，并不断优化结果，直到得出一个有充分数据支持的可靠答案。\n\n**主要功能：**\n- **智能任务规划**：自动将复杂查询分解为结构化的研究步骤\n- **自主执行**：选择并调用合适的工具来收集金融数据\n- **自我验证**：检查自身工作，并迭代直至任务完成\n- **实时金融数据**：可访问损益表、资产负债表和现金流量表\n- **安全特性**：内置循环检测和步骤限制，防止失控执行\n\n[![Twitter Follow](https:\u002F\u002Fimg.shields.io\u002Ftwitter\u002Ffollow\u002Fvirattt?style=social)](https:\u002F\u002Ftwitter.com\u002Fvirattt) [![Discord](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDiscord-Join%20Server-5865F2?style=social&logo=discord)](https:\u002F\u002Fdiscord.gg\u002FjpGHv2XB6T)\n\n\u003Cimg width=\"1042\" height=\"638\" alt=\"Screenshot 2026-02-18 at 12 21 25 PM\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fvirattt_dexter_readme_cdd85a193284.png\" \u002F>\n\n\n## ✅ 前置条件\n\n- Bun（v1.0或更高版本）运行时\n- OpenAI API密钥（[此处](https:\u002F\u002Fplatform.openai.com\u002Fapi-keys)获取）\n- Financial Datasets API密钥（[此处](https:\u002F\u002Ffinancialdatasets.ai)获取）\n- Exa API密钥（[此处](https:\u002F\u002Fexa.ai)获取）——可选，用于网络搜索\n\n#### 安装Bun\n\n如果您尚未安装Bun，可以通过curl进行安装：\n\n**macOS\u002FLinux:**\n```bash\ncurl -fsSL https:\u002F\u002Fbun.com\u002Finstall | bash\n```\n\n**Windows:**\n```bash\npowershell -c \"irm bun.sh\u002Finstall.ps1|iex\"\n```\n\n安装完成后，请重启终端并验证Bun是否已正确安装：\n```bash\nbun --version\n```\n\n## 💻 安装方法\n\n1. 克隆仓库：\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fvirattt\u002Fdexter.git\ncd dexter\n```\n\n2. 使用Bun安装依赖：\n```bash\nbun install\n```\n\n3. 设置环境变量：\n```bash\n# 复制示例环境文件\ncp env.example .env\n\n# 编辑.env文件，添加您的API密钥（如果使用云服务提供商）\n# OPENAI_API_KEY=your-openai-api-key\n# ANTHROPIC_API_KEY=your-anthropic-api-key（可选）\n# GOOGLE_API_KEY=your-google-api-key（可选）\n# XAI_API_KEY=your-xai-api-key（可选）\n# OPENROUTER_API_KEY=your-openrouter-api-key（可选）\n\n# 机构级市场数据接口\n# FINANCIAL_DATASETS_API_KEY=your-financial-datasets-api-key\n\n# （可选）如果本地使用Ollama\n# OLLAMA_BASE_URL=http:\u002F\u002F127.0.0.1:11434\n\n# 网络搜索（优先使用Exa，备用Tavily）\n# EXASEARCH_API_KEY=your-exa-api-key\n# TAVILY_API_KEY=your-tavily-api-key\n```\n\n## 🚀 运行方法\n\n以交互模式运行德克斯特：\n```bash\nbun start\n```\n\n或者使用开发模式：\n```bash\nbun dev\n```\n\n## 📊 评估方法\n\n德克斯特包含一个评估套件，用于根据一组金融问题数据集测试该智能体。评估使用LangSmith进行跟踪，并采用“LLM作为裁判”的方式来评分正确性。\n\n**对所有问题进行评估：**\n```bash\nbun run src\u002Fevals\u002Frun.ts\n```\n\n**对随机样本数据进行评估：**\n```bash\nbun run src\u002Fevals\u002Frun.ts --sample 10\n```\n\n评估运行程序会显示一个实时UI界面，展示进度、当前问题以及实时准确率统计信息。评估结果会被记录到LangSmith中，供后续分析。\n\n## 🐛 调试方法\n\n德克斯特会将所有工具调用记录到一个临时文件中，以便于调试和历史追踪。每次查询都会在`.dexter\u002Fscratchpad\u002F`目录下创建一个新的JSONL文件。\n\n**临时文件位置：**\n```\n.dexter\u002Fscratchpad\u002F\n├── 2026-01-30-111400_9a8f10723f79.jsonl\n├── 2026-01-30-143022_a1b2c3d4e5f6.jsonl\n└── ...\n```\n\n每个文件包含以换行符分隔的JSON条目，记录以下内容：\n- **init**：原始查询\n- **tool_result**：每次工具调用的参数、原始结果以及LLM总结\n- **thinking**：智能体的推理步骤\n\n**临时文件示例条目：**\n```json\n{\"type\":\"tool_result\",\"timestamp\":\"2026-01-30T11:14:05.123Z\",\"toolName\":\"get_income_statements\",\"args\":{\"ticker\":\"AAPL\",\"period\":\"annual\",\"limit\":5},\"result\":{...},\"llmSummary\":\"检索到苹果公司过去5年的年度损益表，显示营收从2740亿美元增长至3940亿美元\"}\n```\n\n这使得您可以轻松查看智能体具体收集了哪些数据，以及它是如何解释这些结果的。\n\n## 📱 通过WhatsApp使用\n\n您可以通过将手机与网关连接，在WhatsApp上与德克斯特聊天。您发送给自己的消息将由德克斯特处理，回复也会发回同一聊天窗口。\n\n**快速入门：**\n```bash\n# 链接您的WhatsApp账号（扫描二维码）\nbun run gateway:login\n\n# 启动网关\nbun run gateway\n```\n\n然后打开WhatsApp，进入自己的聊天界面（给自己发送消息），并向德克斯特提问。\n\n有关详细的设置说明、配置选项和故障排除，请参阅[WhatsApp网关README](src\u002Fgateway\u002Fchannels\u002Fwhatsapp\u002FREADME.md)。\n\n## 🤝 如何贡献\n\n1. 分支仓库\n2. 创建功能分支\n3. 提交更改\n4. 推送到分支\n5. 创建拉取请求\n\n**重要提示**：请尽量保持您的拉取请求简洁且目标明确，这样更便于审查和合并。\n\n\n## 📄 许可证\n\n本项目采用MIT许可证授权。","# Dexter 快速上手指南\n\nDexter 是一个自主金融研究智能体，能够像人类分析师一样思考、规划和学习。它通过任务规划、自我反思和实时市场数据，将复杂的金融问题转化为清晰的逐步研究计划，并提供基于数据的可靠答案。\n\n## 环境准备\n\n在开始之前，请确保您的系统满足以下要求并准备好必要的 API 密钥：\n\n### 系统要求\n- **运行时环境**: [Bun](https:\u002F\u002Fbun.com) (v1.0 或更高版本)\n- **操作系统**: macOS, Linux 或 Windows\n\n### 前置依赖与 API 密钥\n您需要获取以下服务的 API 密钥（部分为可选）：\n- **OpenAI API Key**: 用于驱动核心大模型逻辑 ([获取地址](https:\u002F\u002Fplatform.openai.com\u002Fapi-keys))\n- **Financial Datasets API Key**: 用于获取专业的财务报表数据（利润表、资产负债表等）([获取地址](https:\u002F\u002Ffinancialdatasets.ai))\n- **Exa API Key** (可选): 用于增强网络搜索能力 ([获取地址](https:\u002F\u002Fexa.ai))\n\n### 安装 Bun\n如果尚未安装 Bun，请使用以下命令安装：\n\n**macOS\u002FLinux:**\n```bash\ncurl -fsSL https:\u002F\u002Fbun.com\u002Finstall | bash\n```\n\n**Windows:**\n```bash\npowershell -c \"irm bun.sh\u002Finstall.ps1|iex\"\n```\n\n安装完成后，重启终端并验证版本：\n```bash\nbun --version\n```\n\n## 安装步骤\n\n1. **克隆项目仓库**\n   ```bash\n   git clone https:\u002F\u002Fgithub.com\u002Fvirattt\u002Fdexter.git\n   cd dexter\n   ```\n\n2. **安装依赖**\n   使用 Bun 安装项目所需依赖：\n   ```bash\n   bun install\n   ```\n\n3. **配置环境变量**\n   复制示例配置文件并填入您的 API 密钥：\n   ```bash\n   cp env.example .env\n   ```\n   \n   编辑 `.env` 文件，取消注释并填入对应的密钥：\n   ```bash\n   # 核心大模型密钥 (必填)\n   OPENAI_API_KEY=your-openai-api-key\n   \n   # 金融数据源密钥 (必填)\n   FINANCIAL_DATASETS_API_KEY=your-financial-datasets-api-key\n   \n   # 网络搜索密钥 (可选，推荐 Exa)\n   EXASEARCH_API_KEY=your-exa-api-key\n   \n   # 其他可选模型密钥 (Anthropic, Google, XAI, OpenRouter 等)\n   # ANTHROPIC_API_KEY=...\n   # OLLAMA_BASE_URL=http:\u002F\u002F127.0.0.1:11434 (如需本地运行)\n   ```\n\n## 基本使用\n\n### 交互式运行\n启动 Dexter 进入交互模式，您可以直接输入金融问题进行查询：\n```bash\nbun start\n```\n\n### 开发模式\n如果您正在修改代码并希望自动重载，可以使用监视模式：\n```bash\nbun dev\n```\n\n### 使用示例\n启动后，在终端提示符下输入自然语言问题，例如：\n> \"分析苹果公司过去五年的收入增长趋势，并对比其主要竞争对手。\"\n\nDexter 将自动拆解任务、调用工具获取实时财报数据、进行自我验证，并最终输出详细的分析报告。\n\n### 调试与日志\nDexter 会将所有工具调用和思考过程记录到 `.dexter\u002Fscratchpad\u002F` 目录下的 JSONL 文件中。每个查询生成一个独立文件，方便您追踪智能体的决策路径和数据来源。","一位股票分析师需要在周五收盘前，快速完成对一家新兴科技公司（如“极光科技”）的深度尽职调查，以评估其下一季度的投资价值。\n\n### 没有 dexter 时\n- **数据收集碎片化**：分析师需手动在多个财经网站、财报 PDF 和新闻源之间切换，耗时数小时才能拼凑出完整的财务图景。\n- **逻辑验证靠人工**：面对复杂的现金流与负债关系，全靠人脑交叉验证，极易因疲劳导致计算错误或遗漏关键风险点。\n- **动态响应滞后**：一旦盘中出现突发新闻，重新梳理数据链条需要大量重复劳动，难以在交易时间内给出即时判断。\n- **研究深度受限**：受限于时间压力，往往只能关注表面营收数据，难以深入挖掘资产负债表背后的隐性债务或运营效率问题。\n\n### 使用 dexter 后\n- **全自动任务拆解**：dexter 自动将“评估极光科技”拆解为获取最新财报、检索竞品对比、分析现金流趋势等结构化步骤，并行执行。\n- **智能自我纠错**：在提取数据过程中，dexter 会自动交叉核对收入陈述与现金流量表，发现不一致时主动迭代查询，确保数据逻辑闭环。\n- **实时市场感知**：dexter 直接调用实时市场数据接口，能在几分钟内整合最新股价波动与突发新闻，即时更新研究结论。\n- **深度洞察输出**：基于完整的资产负债表和利润表，dexter 能自动生成包含隐性风险评估和运营效率分析的深度报告，辅助决策。\n\ndexter 将原本需要半天的手工调研压缩为分钟级的自主智能分析，让金融研究者从繁琐的数据搬运工转型为真正的策略决策者。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fvirattt_dexter_eed624c9.png","virattt","Virat Singh","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fvirattt_d37d5b30.png","Building 🎧",null,"New York, NY","https:\u002F\u002Fgithub.com\u002Fvirattt",[22,26,30],{"name":23,"color":24,"percentage":25},"TypeScript","#3178c6",99.4,{"name":27,"color":28,"percentage":29},"Shell","#89e051",0.4,{"name":31,"color":32,"percentage":33},"JavaScript","#f1e05a",0.2,21387,2581,"2026-04-20T04:24:51",2,"Linux, macOS, Windows","未说明",{"notes":41,"python":42,"dependencies":43},"该项目不使用 Python，而是基于 Bun (JavaScript\u002FTypeScript) 运行时。运行需要配置多个外部服务的 API 密钥（如 OpenAI、Financial Datasets、Exa）。支持通过 WhatsApp 进行交互，需额外运行网关服务。评估功能依赖 LangSmith 平台。","不需要 (使用 Bun 运行时)",[44,45,46,47,48],"Bun runtime (v1.0+)","OpenAI API","Financial Datasets API","Exa API (可选)","LangSmith (用于评估)",[50,51],"语言模型","Agent","ready","2026-03-27T02:49:30.150509","2026-04-20T19:22:53.717343",[56,61,66,71,76,81,86],{"id":57,"question_zh":58,"answer_zh":59,"source_url":60},45289,"为什么无法连接到金融 API 并报错 'Invalid schema for response_format'？","这是一个已知的架构验证错误。维护者已经发布了修复补丁。请拉取最新的代码更新（pull the latest），问题即可解决。","https:\u002F\u002Fgithub.com\u002Fvirattt\u002Fdexter\u002Fissues\u002F23",{"id":62,"question_zh":63,"answer_zh":64,"source_url":65},45290,"如何在 Dexter 中使用 Deepseek 模型？需要专门的集成吗？","目前可以通过 OpenRouter 使用 Deepseek 模型，无需等待官方直接集成。如果您觉得配置 OpenRouter 复杂，社区成员也建议可以直接通过修改代码添加对 Deepseek 原生 API 的支持，因为其在 UX 上更简单（直接使用 platform.deepseek.com 的 API Key）。","https:\u002F\u002Fgithub.com\u002Fvirattt\u002Fdexter\u002Fissues\u002F111",{"id":67,"question_zh":68,"answer_zh":69,"source_url":70},45291,"如何设置 Base URL 以连接非官方提供商（如 Ollama 或 LiteLLM）？","早期版本可能不支持直接设置 Base URL。社区已提交相关 PR（如 #62 和 #52）来增加对任意 OpenAI 兼容端点的支持。如果您需要连接本地模型（如 Ollama），请检查是否已合并了允许自定义 Base URL 的最新版本，或者手动应用相关的 PR 补丁。","https:\u002F\u002Fgithub.com\u002Fvirattt\u002Fdexter\u002Fissues\u002F49",{"id":72,"question_zh":73,"answer_zh":74,"source_url":75},45292,"遇到 '403 Forbidden' 错误且不知道是哪个 API 产生的，如何解决？","该错误通常来自 LangSmith 追踪功能，原因是 LangChain 尝试发送跟踪数据但 API Key 无效或未配置。如果您不需要 LangSmith，可以在 .env 文件中设置 `LANGSMITH_TRACING=false` 来禁用它，错误便会消失。维护者也计划更新日志以明确标识错误来源。","https:\u002F\u002Fgithub.com\u002Fvirattt\u002Fdexter\u002Fissues\u002F100",{"id":77,"question_zh":78,"answer_zh":79,"source_url":80},45293,"运行 'bun start' 后程序立即退出，无法正常启动怎么办？","这是 Ink 框架中进程退出的已知问题。有三种解决方法：\n1. 修改 package.json 中的脚本，将 `bun run src\u002Findex.tsx` 改为 `bun src\u002Findex.tsx`（去掉 run）。\n2. 使用 `npx tsx src\u002Findex.tsx` 代替 `bun start`。\n3. 等待官方修复，核心方案是在代码中 await `waitUntilExit()` 以保持进程存活。","https:\u002F\u002Fgithub.com\u002Fvirattt\u002Fdexter\u002Fissues\u002F73",{"id":82,"question_zh":83,"answer_zh":84,"source_url":85},45294,"如何在 Linux 下修复 Backspace 键删除字符时光标停止移动的问题？","这是一个特定于 Linux 的回退问题。解决方案是对 Ink 的键解析进行小型隔离补丁，以区分 Backspace 和 Delete 键。具体实现包括修改键解析逻辑，使 Backspace 删除光标前的字符，Delete 删除光标后的字符，并通过 patch-package 在安装时自动应用此补丁。","https:\u002F\u002Fgithub.com\u002Fvirattt\u002Fdexter\u002Fissues\u002F70",{"id":87,"question_zh":88,"answer_zh":89,"source_url":90},45295,"系统是否支持从本地数据集读取数据以避免 API 调用和费用？","目前的架构设计是通过缓存层（repository layer）来实现类似功能。对于历史数据，系统会检查缓存；如果存在则直接返回，避免重复 API 调用。但对于实时数据（如当前股价），为了保证新鲜度不会缓存。未来可能会增加直接加载本地 CSV\u002FJSON 文件的功能，但目前主要依赖智能缓存机制。","https:\u002F\u002Fgithub.com\u002Fvirattt\u002Fdexter\u002Fissues\u002F96",[92,97,102,107,112,117,122,127,132,137,142,147,152,157,162,167,172],{"id":93,"version":94,"summary_zh":95,"released_at":96},360163,"v2026.4.8","### 变更\n\n- 添加提示栏，支持 `\u002F` 斜杠命令匹配及 Esc 键行为\n- 改进提示栏样式\n- 优化 CLI 渲染效果，并通过减少根组件的重新渲染、更高效地更新工具和工作界面来降低闪烁\n- 将斜杠命令及其匹配逻辑集中管理，以实现自动补全功能（包括 `model`、`rules`、`clear`、`memory`、`heartbeat`、`history`、`help`）\n- 在内幕交易查询中添加可选的 `name` 筛选条件\n\n### 修复\n\n- 修复网关心跳路径上定时任务（cron）消息过于频繁的问题\n- 修复网关心跳抑制行为","2026-04-08T20:09:15",{"id":98,"version":99,"summary_zh":100,"released_at":101},360164,"v2026.4.1","### 变更\n\n- 通过 `.dexter\u002FRULES.md` 添加可选的用户研究规则（存在时会加载到系统提示中）。\n- 使用**按端点设置的 TTL**在本地缓存金融 API 响应，以便重复查询在数据仍为最新时直接从磁盘读取，而非再次发起网络请求。\n- 改进**金融搜索**的聚合功能：对嵌套子工具调用设置**15 秒超时**，并为 `get_financials` 和 `get_market_data` 的关键结果（如财务报表、比率、预测等）提供**Markdown 表格风格**的摘要。\n- 更新**股票筛选器**的模型逻辑：使用 **`in`** 进行成员资格判断，用 **`gte` + `lte`** 来建模范围条件，而非单一的 `between` 操作符；同时明确标注**小数与百分比**字段的区别（例如，利润率以 `0.15` 表示 15%）。\n\n### 修复\n\n- 无特别说明；本次发布主要集中在行为优化和用户体验改进方面。\n","2026-04-01T18:32:58",{"id":103,"version":104,"summary_zh":105,"released_at":106},360165,"v2026.3.31","### 变更\n\n- 通过微压缩结合全 LLM 驱动的压缩，优化智能体上下文管理，以在长时间研究会话中保留进度。\n- 为安全的只读工具添加并发执行功能，减少多工具同时运行时的等待时间。\n- 增加运行中消息队列机制，使智能体在工作时也能接收并处理新的用户消息。\n- 改进模型调用方式，支持消息数组流式传输，并为不支持稳定流式的提供商提供回退机制。\n- 更新工具注册表元数据，添加简洁的提示描述，并明确每项工具的并发安全性。\n- 改善 CLI 和聊天界面的用户体验，新增队列消息指示器、压缩事件提示以及更清晰的工具加载动画生命周期。\n- 更新核心依赖库（LangChain 栈、Playwright 及相关包），以适配更新的提供商和运行时行为。\n\n### 修复\n\n- 修复运行时切换模型后模型与提供商的同步问题，确保后续轮次使用正确的配置。\n- 修正定时任务工具的 Schema 示例，避免工具描述中因 JSON 大括号导致的解析问题。\n- 修复被中断（按下 Esc 键）时的提前退出行为，并防止中断运行中出现过时的工具加载动画。","2026-03-31T19:37:17",{"id":108,"version":109,"summary_zh":110,"released_at":111},360166,"v2026.3.25","### 变更\n\n- 将财务搜索和指标合并为一个 `get_financials` 工具。\n- 新增 `get_market_data`，并将其用于路由内幕交易和新闻数据。\n- 添加股票筛选器，支持 `screen_stocks`、行业\u002F板块过滤，并为 POST 请求提供 API 支持。\n- 重写内存模块（包括召回、索引、时间衰减、MMR 以及会话感知相关功能）。\n- 引入 Cron 定时任务调度，并通过它来运行心跳机制。\n- 为心跳机制实现隔离的会话行为（更小的上下文，类似 OpenClaw 的设计）。\n- 更新依赖项。\n\n### 修复\n\n- 修复心跳机制的行为问题。\n- 修复提供商错误标签问题（#180）。\n- 将测试框架统一调整为使用 Vitest 的导入方式，而非 bun:test。","2026-03-25T20:13:10",{"id":113,"version":114,"summary_zh":115,"released_at":116},360167,"v2026.3.18","### 变更\n\n- 通过 Financial Datasets API 添加实时财报子工具，用于获取最新财报快照及业绩超\u002F未达标情况。\n- 改进 WhatsApp 网关工具的规范化处理，并添加测试用例。\n- 为 WhatsApp 增加用户聊天和机器人聊天模式。\n- 改进 `env.example` 文件中 API 密钥描述的占位符。\n- 修复 Gemini 工具模式兼容性问题（避免 `exclusiveMinimum` 错误）。\n\n### 修复\n\n- 修复内存搜索：在 FTS 查询中使用 OR 条件，并降低 `minScore`，以确保搜索能够返回结果。\n- 修复内存功能：使搜索成为内存召回的唯一可信来源。\n","2026-03-18T18:52:07",{"id":118,"version":119,"summary_zh":120,"released_at":121},360168,"v2026.3.14","### 变更\n\n- 添加 WhatsApp 网关设置向导，支持自聊模式和机器人电话模式\n- 通过 better-sqlite3 新增 Node.js 运行时支持（此前需使用 Bun）\n- 改进内存搜索功能，支持 OR 查询，并降低触发阈值以提升召回率\n- 简化内存工具，采用更合理的默认设置（默认将内容追加到长期记忆中）\n- 更新 Google 模型：新增 Gemini 3.1 Pro，移除 Gemini 3 Pro\n\n### 修复\n\n- 修复内存搜索在多词查询时无结果返回的问题","2026-03-14T13:49:39",{"id":123,"version":124,"summary_zh":125,"released_at":126},360169,"v2026.3.8","### 变更\n\n- 添加持久化 Markdown 内存，集成 SQLite 混合检索与代理刷新功能\n- 新增 x_search 工具和 x-research 技能，用于公众情绪研究\n- 为 WhatsApp 网关添加群聊支持（基于提及的激活机制、群组上下文）\n- 增加对 gpt-5.4 模型的支持\n- 更新隐藏文件的存放位置至项目根目录\n- 默认关闭 LangSmith 追踪功能\n\n### 修复\n\n- 修复网关，使其使用用户设置（.dexter\u002Fsettings.json）中的模型和提供商，而非硬编码的 gpt-5.4\u002Fopenai","2026-03-08T17:58:58",{"id":128,"version":129,"summary_zh":130,"released_at":131},360170,"v2026.3.5","### 变更\n\n- 增加心跳工具和网关心跳（盘中定期检查）\n- 增加财务指标、价格和关键比率的实时数据支持\n- 移除网关消息中的“Dexter”前缀","2026-03-05T21:39:13",{"id":133,"version":134,"summary_zh":135,"released_at":136},360171,"v2026.2.25","### 变更\n\n- 添加支持市值的股票价格工具\n- 改进聊天历史上下文（getRecentTurns、buildHistoryContext）\n- 改进大模型错误的错误处理","2026-02-25T22:02:34",{"id":138,"version":139,"summary_zh":140,"released_at":141},360172,"v2026.2.24","### 变更\n\n- 使用网络搜索获取股票价格（当前及历史）；使用 financial_search 获取财务指标、监管文件、分析师预测及其他财务数据\n- 简化金融工具：将价格、新闻和公司基本信息整合到 financial_search 和 web_search 的路由中\n- 在未配置 Exa 时，为网络搜索添加 Tavily 备用方案\n\n### 修复\n\n- （无）\n","2026-02-25T11:11:10",{"id":143,"version":144,"summary_zh":145,"released_at":146},360173,"v2026.2.17","### Changes\n\n- Add Sonnet 4.6 to model selector\n- Update Read Filings tool with improved handling\n- Update README\n","2026-02-18T00:58:45",{"id":148,"version":149,"summary_zh":150,"released_at":151},360174,"v2026.2.16","### Changes\n\n- Improve Read Filings tool with structured planning: first LLM call returns ticker, filing types, and limit; filings metadata and item types are fetched in parallel\n- Add support for multiple filing types per request in get_filings (filing_type is now an array)\n- Add item descriptions to filing item type prompts and cache item types in memory for reuse\n- Cap Read Filings at 3 concurrent filing reads and improve error handling and query escaping in prompts\n- Improve cache request labels to include all params (e.g. interval, limit) for easier debugging","2026-02-16T23:10:32",{"id":153,"version":154,"summary_zh":155,"released_at":156},360175,"v2026.2.13","### Changes\n\n- Add WhatsApp gateway: link via QR, self-chat with Dexter; access control, routing, and session store\n- Run WhatsApp gateway under Node (tsx) for Baileys stability; handle history catch-up messages (mark read, skip reply)\n- Add Perplexity as optional web search provider\n- Add `web_fetch` tool for fetching and summarizing web content\n- Refactor agent into run context and tool executor modules\n- Centralize LLM provider registry into single source of truth\n- Improve model selector and show metadata only for longer tasks\n- Clean up WhatsApp reply markdown (bold formatting)\n\n### Fixes\n\n- Fix issue #100\n- Increase Perplexity max_tokens to 4096\n","2026-02-13T20:32:41",{"id":158,"version":159,"summary_zh":160,"released_at":161},360176,"v2026.2.11","### Changes\n\n- Add web_fetch tool for fetching and parsing web pages with caching\n- Refactor agent into run context and tool executor modules\n- Centralize LLM provider registry into a single source of truth\n- Show task metadata only for higher-duration tasks in history view\n- Improve error messages with API source in provider errors\n\n### Fixes\n\n- None","2026-02-11T20:46:53",{"id":163,"version":164,"summary_zh":165,"released_at":166},360177,"v2026.2.10","### Changes\n\n- Add DeepSeek as LLM provider with DeepSeek V3 and DeepSeek R1 models\n- Add Moonshot AI as LLM provider with Kimi K2.5 model\n- Remove unused SEC filing constants module","2026-02-10T16:43:03",{"id":168,"version":169,"summary_zh":170,"released_at":171},360178,"v2026.2.6","### Changes\n\n- Add local file cache for financial API responses (prices, crypto, SEC filings) to eliminate redundant network calls for historical data\n- Add Anthropic prompt caching via `cache_control` for ~90% input token cost savings on repeated calls\n- Add performance metrics display showing token usage, duration, and tokens\u002Fsecond after each query\n- Add GitHub Actions CI workflow running typecheck and tests on push\u002FPR\n\n### Fixes\n\n- Fix Exa search client version incompatibility between exa-js 2.x and @langchain\u002Fexa","2026-02-06T18:49:43",{"id":173,"version":174,"summary_zh":175,"released_at":176},360179,"v2026.2.5","### Changes\n\n- Initial browser implementation with Playwright for web scraping and page interaction\n- Improve context compaction for better token efficiency\n- Show more granular browser events in the UI\n- Add Claude Opus 4.6 model support\n- Add model display name to model selector\n- Add progress channel to show intermediate agent steps\n- Show ThinkingView for model reasoning visibility\n- Update intro component\n- Add release script for CalVer-based GitHub releases\n\n### Fixes\n\n- Fix empty tool call issue","2026-02-06T02:36:27",[178,190,199,207,215,223],{"id":179,"name":180,"github_repo":181,"description_zh":182,"stars":183,"difficulty_score":184,"last_commit_at":185,"category_tags":186,"status":52},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[51,187,188,189],"开发框架","图像","数据工具",{"id":191,"name":192,"github_repo":193,"description_zh":194,"stars":195,"difficulty_score":37,"last_commit_at":196,"category_tags":197,"status":52},9989,"n8n","n8n-io\u002Fn8n","n8n 是一款面向技术团队的公平代码（fair-code）工作流自动化平台，旨在让用户在享受低代码快速构建便利的同时，保留编写自定义代码的灵活性。它主要解决了传统自动化工具要么过于封闭难以扩展、要么完全依赖手写代码效率低下的痛点，帮助用户轻松连接 400 多种应用与服务，实现复杂业务流程的自动化。\n\nn8n 特别适合开发者、工程师以及具备一定技术背景的业务人员使用。其核心亮点在于“按需编码”：既可以通过直观的可视化界面拖拽节点搭建流程，也能随时插入 JavaScript 或 Python 代码、调用 npm 包来处理复杂逻辑。此外，n8n 原生集成了基于 LangChain 的 AI 能力，支持用户利用自有数据和模型构建智能体工作流。在部署方面，n8n 提供极高的自由度，支持完全自托管以保障数据隐私和控制权，也提供云端服务选项。凭借活跃的社区生态和数百个现成模板，n8n 让构建强大且可控的自动化系统变得简单高效。",184740,"2026-04-19T23:22:26",[189,187,51,188,198],"插件",{"id":200,"name":201,"github_repo":202,"description_zh":203,"stars":204,"difficulty_score":184,"last_commit_at":205,"category_tags":206,"status":52},10095,"AutoGPT","Significant-Gravitas\u002FAutoGPT","AutoGPT 是一个旨在让每个人都能轻松使用和构建 AI 的强大平台，核心功能是帮助用户创建、部署和管理能够自动执行复杂任务的连续型 AI 智能体。它解决了传统 AI 应用中需要频繁人工干预、难以自动化长流程工作的痛点，让用户只需设定目标，AI 即可自主规划步骤、调用工具并持续运行直至完成任务。\n\n无论是开发者、研究人员，还是希望提升工作效率的普通用户，都能从 AutoGPT 中受益。开发者可利用其低代码界面快速定制专属智能体；研究人员能基于开源架构探索多智能体协作机制；而非技术背景用户也可直接选用预置的智能体模板，立即投入实际工作场景。\n\nAutoGPT 的技术亮点在于其模块化“积木式”工作流设计——用户通过连接功能块即可构建复杂逻辑，每个块负责单一动作，灵活且易于调试。同时，平台支持本地自托管与云端部署两种模式，兼顾数据隐私与使用便捷性。配合完善的文档和一键安装脚本，即使是初次接触的用户也能在几分钟内启动自己的第一个 AI 智能体。AutoGPT 正致力于降低 AI 应用门槛，让人人都能成为 AI 的创造者与受益者。",183572,"2026-04-20T04:47:55",[51,50,198,187,188],{"id":208,"name":209,"github_repo":210,"description_zh":211,"stars":212,"difficulty_score":184,"last_commit_at":213,"category_tags":214,"status":52},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[187,188,51],{"id":216,"name":217,"github_repo":218,"description_zh":219,"stars":220,"difficulty_score":37,"last_commit_at":221,"category_tags":222,"status":52},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",161147,"2026-04-19T23:31:47",[187,51,50],{"id":224,"name":225,"github_repo":226,"description_zh":227,"stars":228,"difficulty_score":229,"last_commit_at":230,"category_tags":231,"status":52},8272,"opencode","anomalyco\u002Fopencode","OpenCode 是一款开源的 AI 编程助手（Coding Agent），旨在像一位智能搭档一样融入您的开发流程。它不仅仅是一个代码补全插件，而是一个能够理解项目上下文、自主规划任务并执行复杂编码操作的智能体。无论是生成全新功能、重构现有代码，还是排查难以定位的 Bug，OpenCode 都能通过自然语言交互高效完成，显著减少开发者在重复性劳动和上下文切换上的时间消耗。\n\n这款工具专为软件开发者、工程师及技术研究人员设计，特别适合希望利用大模型能力来提升编码效率、加速原型开发或处理遗留代码维护的专业人群。其核心亮点在于完全开源的架构，这意味着用户可以审查代码逻辑、自定义行为策略，甚至私有化部署以保障数据安全，彻底打破了传统闭源 AI 助手的“黑盒”限制。\n\n在技术体验上，OpenCode 提供了灵活的终端界面（Terminal UI）和正在测试中的桌面应用程序，支持 macOS、Windows 及 Linux 全平台。它兼容多种包管理工具，安装便捷，并能无缝集成到现有的开发环境中。无论您是追求极致控制权的资深极客，还是渴望提升产出的独立开发者，OpenCode 都提供了一个透明、可信",144296,1,"2026-04-16T14:50:03",[51,198]]