Sync site with current dstalk repo structure
Reflect the plugin-host architecture: dstalk-core.dll now hosts 9 functional plugins (deepseek, anthropic, network, lsp, session, context, config, file-io, tools), with dstalk-cli + SDL3 dstalk-gui both consuming the same C ABI. Update badges, hero stats, terminal demo, features, architecture diagram, tech-stack table, roadmap, and contributor section across index.html and en.html accordingly. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
95
index.html
95
index.html
@@ -3,10 +3,10 @@
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="dstalk 是基于 DeepSeek V4、兼容 OpenAI / Anthropic API 的 C/C++ AI 编程 CLI,采用 dstalk-core.dll + 多前端解耦架构。">
|
||||
<meta name="description" content="dstalk 是基于 DeepSeek V4、兼容 OpenAI / Anthropic API 的 C/C++ AI 编程 CLI,采用 dstalk-core.dll 插件宿主 + 多前端解耦架构。">
|
||||
<meta name="theme-color" content="#0b1020">
|
||||
<meta property="og:title" content="dstalk — C/C++ AI 编程 CLI">
|
||||
<meta property="og:description" content="DeepSeek V4 驱动,C ABI 可嵌入,CLI 当前可用,GUI、插件与 LSP 持续推进。">
|
||||
<meta property="og:description" content="DeepSeek V4 驱动,C ABI 可嵌入,dstalk-core.dll 作为插件宿主,9 个功能插件覆盖 AI、网络、会话、LSP 与工具。">
|
||||
<meta property="og:type" content="website">
|
||||
<link rel="alternate" hreflang="zh-CN" href="https://dstalk.top/">
|
||||
<link rel="alternate" hreflang="en" href="https://dstalk.top/en.html">
|
||||
@@ -213,7 +213,7 @@
|
||||
<div>
|
||||
<div class="eyebrow">dstalk.top 是 dstalk 项目的官方网站</div>
|
||||
<h1><span>ds</span>talk</h1>
|
||||
<p class="lead">基于 DeepSeek V4 大模型、兼容 OpenAI / Anthropic API 的 AI 编程 CLI。核心采用 C11 / C++20 编写,以 dstalk-core.dll 暴露稳定 C ABI,让 CLI、GUI 和第三方工具共享同一套 AI 编程能力。</p>
|
||||
<p class="lead">基于 DeepSeek V4 大模型、兼容 OpenAI / Anthropic API 的 AI 编程 CLI。核心采用 C11 / C++20 编写,以 dstalk-core.dll 作为插件宿主暴露稳定 C ABI,9 个功能插件 (AI、网络、LSP、会话、文件、工具等) 编译为独立 DLL,通过统一接口接入 CLI、SDL3 GUI 与第三方宿主。</p>
|
||||
<div class="actions">
|
||||
<a class="btn btn-primary" href="#quickstart">开始使用</a>
|
||||
<a class="btn btn-secondary" href="https://git.pulsareon.com/pulsareon/dstalk">查看源代码</a>
|
||||
@@ -221,13 +221,14 @@
|
||||
<div class="badges" aria-label="项目标签">
|
||||
<span class="badge">v0.1.0</span>
|
||||
<span class="badge">C11 / C++20</span>
|
||||
<span class="badge">CDLL + C ABI</span>
|
||||
<span class="badge">插件宿主 + C ABI</span>
|
||||
<span class="badge">9 个插件</span>
|
||||
<span class="badge">GPL v3.0</span>
|
||||
</div>
|
||||
<div class="stats" aria-label="项目状态">
|
||||
<span class="stat"><strong>当前阶段</strong>Phase 1</span>
|
||||
<span class="stat"><strong>核心</strong>dstalk-core.dll</span>
|
||||
<span class="stat"><strong>前端</strong>CLI 当前可用</span>
|
||||
<span class="stat"><strong>核心</strong>dstalk-core.dll (插件宿主)</span>
|
||||
<span class="stat"><strong>前端</strong>CLI + SDL3 GUI</span>
|
||||
<span class="stat"><strong>插件</strong>deepseek · anthropic · network · lsp · session · context · config · file-io · tools</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="terminal" aria-label="dstalk 命令行示例">
|
||||
@@ -238,11 +239,12 @@ dstalk v0.1.0 | DeepSeek V4 | /help 查看帮助
|
||||
|
||||
> 帮我解释 dstalk-core 的职责
|
||||
<span class="dim">思考中...</span>
|
||||
AI: dstalk-core 负责配置、会话、文件 I/O、HTTP 通信
|
||||
和 DeepSeek API 适配,前端只处理输入与渲染。
|
||||
AI: dstalk-core 是插件宿主,负责插件加载、服务注册、
|
||||
事件总线和配置管理;AI、网络、会话、LSP、文件 IO
|
||||
等能力都由独立插件提供,前端只处理输入与渲染。
|
||||
|
||||
> /file read dstalk-core/src/api.cpp
|
||||
<span class="dim">--- dstalk-core/src/api.cpp ---</span></code></pre>
|
||||
> /file read dstalk-core/include/dstalk/dstalk_api.h
|
||||
<span class="dim">--- dstalk-core/include/dstalk/dstalk_api.h ---</span></code></pre>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
@@ -250,15 +252,15 @@ AI: dstalk-core 负责配置、会话、文件 I/O、HTTP 通信
|
||||
<section id="features" class="container section">
|
||||
<div class="section-head">
|
||||
<h2>为什么 dstalk 用 C/C++ 重新做 AI 编程助手?</h2>
|
||||
<p>dstalk 对标 Claude Code、OpenCode、KiloCode,但选择系统级实现和 CDLL 架构,重点优化启动速度、运行时依赖、可嵌入能力和长期驻留体验。</p>
|
||||
<p>dstalk 对标 Claude Code、OpenCode、KiloCode,但选择系统级实现和插件宿主架构,重点优化启动速度、运行时依赖、可嵌入能力和长期驻留体验。</p>
|
||||
</div>
|
||||
<div class="cards">
|
||||
<article class="card"><div class="icon">C</div><h3>零 Node.js 运行时</h3><p>核心以 C11 / C++20 构建,目标是毫秒级启动和更低内存占用,适合终端长期交互。</p></article>
|
||||
<article class="card"><div class="icon">ABI</div><h3>稳定 C ABI</h3><p>公开 dstalk_init、dstalk_chat、dstalk_file_read 等 C 函数,方便 C/C++、Python、Rust、C#、Go 嵌入。</p></article>
|
||||
<article class="card"><div class="icon">AI</div><h3>多 API 兼容</h3><p>以 DeepSeek V4 为核心,同时兼容 OpenAI / Anthropic 风格接口,通过配置切换 base_url、api_key 与模型。</p></article>
|
||||
<article class="card"><div class="icon">CLI</div><h3>命令行优先</h3><p>当前 CLI 使用 ANSI 终端 UI,支持自然语言对话、模型切换、文件读写、会话保存与恢复。</p></article>
|
||||
<article class="card"><div class="icon">DLL</div><h3>核心与前端解耦</h3><p>CLI 和 GUI 不持有业务逻辑,统一调用 dstalk-core.dll,后续可以扩展更多宿主。</p></article>
|
||||
<article class="card"><div class="icon">OSS</div><h3>开源可改造</h3><p>项目采用 GNU GPL v3.0,适合学习、二次开发和围绕本地工作流做深度定制。</p></article>
|
||||
<article class="card"><div class="icon">AI</div><h3>多 API 兼容</h3><p>内置 DeepSeek 与 Anthropic 两个 AI 插件,兼容 OpenAI 风格接口;通过 config.toml 中的 ai.provider 一键切换。</p></article>
|
||||
<article class="card"><div class="icon">CLI</div><h3>CLI 与 GUI 双前端</h3><p>dstalk-cli 提供 ANSI 终端 UI,dstalk-gui 基于 SDL3 跨平台窗口,共享同一组核心能力。</p></article>
|
||||
<article class="card"><div class="icon">PLG</div><h3>插件化宿主</h3><p>核心仅做插件加载、服务注册、事件总线和配置管理;AI、网络、LSP、会话等能力均为独立 DLL,可以替换或扩展。</p></article>
|
||||
<article class="card"><div class="icon">OSS</div><h3>开源可改造</h3><p>项目采用 GNU GPL v3.0,附带示例插件、单元测试与教程文档,适合学习、二次开发和本地工作流定制。</p></article>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
@@ -297,24 +299,28 @@ build/dstalk-cli/dstalk-cli.exe config.toml</code></pre>
|
||||
|
||||
<section id="architecture" class="container section">
|
||||
<div class="section-head">
|
||||
<h2>CDLL + 多前端解耦架构</h2>
|
||||
<p>dstalk-core.dll 提供网络通讯、AI 接口适配、文件读写和会话管理;前端层只负责交互体验。GUI 目录已预留,根 CMake 当前先启用 CLI 与核心库。</p>
|
||||
<h2>插件宿主 + 多前端解耦架构</h2>
|
||||
<p>dstalk-core.dll 作为插件宿主,负责插件加载、服务注册、事件总线和配置管理;AI、网络、LSP、会话、文件 IO、工具等 9 个功能插件编译为独立 DLL,前端只通过 C ABI 触达核心能力。GUI 通过 CMake 选项 DSTALK_BUILD_GUI 启用。</p>
|
||||
</div>
|
||||
<div class="terminal architecture">
|
||||
<div class="terminal-top"><span class="dot"></span><span class="dot"></span><span class="dot"></span><span class="terminal-title">architecture</span></div>
|
||||
<pre><code>┌─────────────────────────────────────────────┐
|
||||
│ Frontends │
|
||||
│ dstalk-cli (ANSI UI) dstalk-gui (SDL3) │
|
||||
│ 当前构建启用 路线图推进 │
|
||||
└───────────────┬─────────────────────────────┘
|
||||
│ C ABI
|
||||
┌───────────────▼─────────────────────────────┐
|
||||
│ dstalk-core.dll │
|
||||
│ API / Session / File I/O / AI Adapter │
|
||||
└───────┬──────────────┬──────────────┬────────┘
|
||||
│ │ │
|
||||
Boost.JSON HTTP Client OpenSSL TLS
|
||||
Boost.Asio / Beast</code></pre>
|
||||
<pre><code>┌─────────────────────────────────────────────────────┐
|
||||
│ Frontends │
|
||||
│ dstalk-cli (ANSI UI) dstalk-gui (SDL3) │
|
||||
└───────────────────────┬─────────────────────────────┘
|
||||
│ C ABI
|
||||
┌───────────────────────▼─────────────────────────────┐
|
||||
│ dstalk-core.dll — Plugin Host │
|
||||
│ Plugin Loader · Service Registry · Event Bus · │
|
||||
│ Config Manager │
|
||||
└──┬───────┬───────┬───────┬───────┬───────┬──────────┘
|
||||
▼ ▼ ▼ ▼ ▼ ▼
|
||||
deepseek anthropic network lsp session context
|
||||
(ai) (ai) (http) client
|
||||
▼ ▼ ▼
|
||||
config file-io tools
|
||||
│ │ │
|
||||
└── Boost.JSON / Boost.Asio / Beast / OpenSSL TLS ──┘</code></pre>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
@@ -326,11 +332,15 @@ build/dstalk-cli/dstalk-cli.exe config.toml</code></pre>
|
||||
<div class="panel table-wrap">
|
||||
<table>
|
||||
<tr><th>模块</th><th>当前技术</th><th>状态</th></tr>
|
||||
<tr><td>核心库</td><td>C11 / C++20,dstalk-core.dll,公开 C ABI</td><td><span class="ok">已启用</span></td></tr>
|
||||
<tr><td>核心库</td><td>C11 / C++20,dstalk-core.dll,插件宿主,公开 C ABI</td><td><span class="ok">已启用</span></td></tr>
|
||||
<tr><td>CLI 前端</td><td>ANSI 终端 UI,调用 dstalk/dstalk_api.h</td><td><span class="ok">已启用</span></td></tr>
|
||||
<tr><td>GUI 前端</td><td>SDL3 图形化前端</td><td><span class="todo">路线图</span></td></tr>
|
||||
<tr><td>GUI 前端</td><td>SDL3 图形化前端,CMake 选项 DSTALK_BUILD_GUI 启用</td><td><span class="ok">已就位</span></td></tr>
|
||||
<tr><td>插件</td><td>9 个功能插件 (deepseek · anthropic · network · lsp · session · context · config · file-io · tools),独立 DLL</td><td><span class="ok">已启用</span></td></tr>
|
||||
<tr><td>测试</td><td>tests/ 提供 host_api_test 与 smoke_test,CTest 集成</td><td><span class="ok">已启用</span></td></tr>
|
||||
<tr><td>文档</td><td>docs/tutorial、docs/reference (commands、plugin-abi)</td><td><span class="ok">已发布</span></td></tr>
|
||||
<tr><td>示例</td><td>examples/example_plugin 展示插件开发模板</td><td><span class="ok">已提供</span></td></tr>
|
||||
<tr><td>依赖管理</td><td>Conan2,boost/1.86.0,openssl/3.4.1</td><td><span class="ok">已配置</span></td></tr>
|
||||
<tr><td>构建系统</td><td>CMake 3.21+,Ninja,LLVM/Clang</td><td><span class="ok">已配置</span></td></tr>
|
||||
<tr><td>构建系统</td><td>CMake 3.21+,Ninja,LLVM/Clang,CMakePresets</td><td><span class="ok">已配置</span></td></tr>
|
||||
<tr><td>许可证</td><td>GNU GPL v3.0</td><td><span class="ok">已确认</span></td></tr>
|
||||
</table>
|
||||
</div>
|
||||
@@ -384,15 +394,16 @@ int dstalk_file_write(const char* path, const char* content);</code></pre>
|
||||
<section id="roadmap" class="container section">
|
||||
<div class="section-head">
|
||||
<h2>路线图</h2>
|
||||
<p>官网按 dstalk 当前 README 的阶段说明呈现,避免把规划功能误写成已完成能力。</p>
|
||||
<p>插件宿主、CLI、SDL3 GUI、9 个核心插件、测试与文档已经就位;后续聚焦在能力深化与生态扩展。</p>
|
||||
</div>
|
||||
<div class="panel table-wrap">
|
||||
<table>
|
||||
<tr><th>阶段</th><th>内容</th><th>状态</th></tr>
|
||||
<tr><td>Phase 1</td><td>项目骨架、CMake 构建、DLL 导出、前端主循环</td><td><span class="ok">当前阶段</span></td></tr>
|
||||
<tr><td>Phase 2</td><td>HTTPS 网络层、DeepSeek API 对接、基本对话</td><td><span class="todo">推进中</span></td></tr>
|
||||
<tr><td>Phase 3</td><td>流式输出、多轮会话、文件读写工具、CLI 体验对齐</td><td><span class="todo">计划中</span></td></tr>
|
||||
<tr><td>Phase 4</td><td>SDL3 GUI 完善、插件系统、LSP 集成</td><td><span class="todo">计划中</span></td></tr>
|
||||
<tr><td>骨架</td><td>项目骨架、CMake/Ninja 构建、Conan 依赖、DLL 导出、前端主循环</td><td><span class="ok">已完成</span></td></tr>
|
||||
<tr><td>插件宿主</td><td>插件加载、服务注册、事件总线、配置管理;9 个核心插件 (deepseek · anthropic · network · lsp · session · context · config · file-io · tools)</td><td><span class="ok">已完成</span></td></tr>
|
||||
<tr><td>对话能力</td><td>HTTPS 网络层、DeepSeek / Anthropic API 适配、流式输出、多轮会话、文件读写工具</td><td><span class="ok">已可用</span></td></tr>
|
||||
<tr><td>GUI 前端</td><td>SDL3 图形化窗口 (DSTALK_BUILD_GUI),与 CLI 共享插件宿主</td><td><span class="todo">推进中</span></td></tr>
|
||||
<tr><td>下一阶段</td><td>LSP 集成深化、第三方插件 SDK、跨平台分发与文档持续完善</td><td><span class="todo">计划中</span></td></tr>
|
||||
</table>
|
||||
</div>
|
||||
</section>
|
||||
@@ -403,9 +414,9 @@ int dstalk_file_write(const char* path, const char* content);</code></pre>
|
||||
<p>dstalk 是开放项目,欢迎对 C/C++、命令行体验、AI API 适配、GUI、文档和测试感兴趣的开发者一起参与。</p>
|
||||
</div>
|
||||
<div class="cards">
|
||||
<article class="card"><div class="icon">PR</div><h3>提交代码改进</h3><p>可以从构建脚本、错误处理、CLI 交互、流式输出、文件工具和跨平台兼容性开始。</p></article>
|
||||
<article class="card"><div class="icon">DOC</div><h3>完善文档示例</h3><p>欢迎补充安装说明、配置模板、API 调用示例和真实使用场景,降低新用户上手成本。</p></article>
|
||||
<article class="card"><div class="icon">IDEA</div><h3>参与路线图讨论</h3><p>如果你关注 SDL3 GUI、插件系统、LSP 集成或多模型适配,欢迎提出设计建议和 issue。</p></article>
|
||||
<article class="card"><div class="icon">PR</div><h3>提交代码改进</h3><p>核心、CLI、SDL3 GUI 与 9 个插件 (AI、网络、LSP、会话、文件、工具等) 都欢迎补丁,跨平台兼容与构建脚本也有空间。</p></article>
|
||||
<article class="card"><div class="icon">PLG</div><h3>开发新插件</h3><p>参考 examples/example_plugin 和 docs/reference/plugin-abi.md,通过 C ABI 注册新服务,把自己的模型、工具或数据源接入 dstalk。</p></article>
|
||||
<article class="card"><div class="icon">DOC</div><h3>完善文档与测试</h3><p>docs/tutorial、docs/reference 已经成形,欢迎补充教程、命令速查、插件 ABI 说明,以及 host_api_test / smoke_test 的覆盖面。</p></article>
|
||||
</div>
|
||||
<div class="actions">
|
||||
<a class="btn btn-primary" href="https://git.pulsareon.com/pulsareon/dstalk">前往源码仓库</a>
|
||||
|
||||
Reference in New Issue
Block a user