Token导航 LogoToken导航TokenDH.com
Atom of Thoughts rs logo
运维云端未说明官方级别未说明来源级核验

Atom of Thoughts rs

MCP Server

原子思维推理服务器(AoT)是一个将复杂问题分解为独立原子思维单元的服务,通过管理这些单元之间的依赖关系来提供更强大的推理和验证能力。

工具数

3

提示词数

0

GitHub Stars

1

资源数

0
Rust云端部署Docker

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

olehbozhok

提供方

olehbozhok

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Atom of Thoughts(AoT)MCP服务器-Rust实现

![License](LICENSE)

将复杂问题分解为原子思维单元,以进行稳健推理

🧠 概述

Atom of Thoughts(AoT)是一个服务器,它将复杂问题分解为独立的原子思维单元,利用这些单元之间的依赖关系提供更稳健的推理和经过验证的见解。此Rust实现提供了一个MCP(模型上下文协议)服务器,该服务器可以与AI助手集成,以增强推理能力。

与传统的顺序思维不同,AoT通过允许原子思维单元相互形成依赖关系,创建可以验证、分解和收缩的推理图,从而实现了更强大的问题解决。

✨ 主要特点

  • 原子推理单元:用于不同推理阶段的五种不同原子类型
  • 分解收缩机制:将复杂原子分解为更简单的子原子,并在验证后收缩回来
  • 依赖项跟踪:管理推理单元之间的关系
  • 自动终止:当达到最大深度或发现高置信度结论时,停止推理
  • 信心评分:每个原子都有一个带有视觉反馈的置信度(0-1)
  • MCP集成:完整的模型上下文协议服务器实现
  • 两种服务器模式:全AoT(深度5)和AoT光(深度3,处理速度更快)
  • 命令接口:控制分解,检查终止,得出最佳结论

🚀 快速开始

先决条件

  • 1.70或更高版本
  • 货物(带有铁锈)

安装

# Clone the repository
git clone https://github.com/yourusername/Atom_of_Thoughts_rs.git
cd Atom_of_Thoughts_rs

# Build the project
cargo build --release

# Run tests to verify everything works
cargo test

运行MCP服务器

# Run in debug mode
cargo run

# Run release build for better performance
cargo run --release

服务器在stdio传输上运行,并已准备好接受MCP请求。

🐛 调试和记录

AoT服务器使用标准Rust log 板条箱 env_logger 用于灵活的测井控制。日志记录是通过环境变量配置的,支持多个日志级别。

环境变量

  • RUST_LOG:控制日志级别和筛选(标准 env_logger 变量)

- 例子: export RUST_LOG=debug - 水平: error, warn, info, debug, trace - 可以按板条箱过滤: export RUST_LOG=atom_of_thoughts_rs=debug,info

  • AOT_DEBUG:向后兼容性-映射到 RUST_LOG=debug 设置时

- 例子: export AOT_DEBUG=1 - 接受: 1, true, on, yes - 仅在以下情况下使用 RUST_LOG 尚未设置

日志输出

日志以以下格式写入标准错误(stderr):

[timestamp] LEVEL crate::module message

输出示例:

[2026-03-01T17:22:32Z INFO  atom_of_thoughts_rs::mcp] Starting MCP server
[2026-03-01T17:22:32Z DEBUG atom_of_thoughts_rs::mcp] ServerHandler::get_info called
[2026-03-01T17:22:33Z DEBUG atom_of_thoughts_rs] P1 | premise | Depth: 0 | Dependencies: none | Confidence: 90.00% | Verified: ✗
[2026-03-01T17:22:33Z INFO  atom_of_thoughts_rs] SERVER EVENT: atom_created - premise: P1

日志级别

  • error:阻止操作的关键错误
  • warn:关于潜在问题的警告(例如,达到的最大深度)
  • info:一般服务器事件、启动、验证、收缩
  • debug:Atom处理细节、分解事件、依赖关系
  • trace:详细的原子结构转储和详细的内部状态

用法示例

# Basic debug logging
export RUST_LOG=debug
cargo run

# Filter by crate for cleaner output
export RUST_LOG=atom_of_thoughts_rs=debug
cargo run

# Backward compatibility with AOT_DEBUG
export AOT_DEBUG=1
cargo run

# Different log levels
export RUST_LOG=error    # Only errors
export RUST_LOG=info     # Default informational messages
export RUST_LOG=debug    # Debug information
export RUST_LOG=trace    # Very verbose output

🧩 原子类型

AoT使用五种不同的原子类型,每种原子在推理过程中都有特定的作用:

原子类型符号颜色用途
前提🔍蓝色解决问题的基本假设或给定信息
推理🧠绿色基于其他原子的逻辑推理过程
假设💡黄色建议的解决方案或中间结论
验证Magenta评估其他原子(尤其是假设)有效性的过程
结论🏆红色已验证的假设或最终问题解决方案

每个原子都有:

  • atomId:唯一标识符(例如“P1”、“H2”、“C3”)
  • 内容:原子的文本描述
  • 依赖项:此原子所依赖的原子ID列表
  • 自信:置信度得分在0.0和1.0之间
  • 已验证:此原子是否已验证
  • 深度:分解树中的深度级别(0=根)

🔧 MCP工具

服务器公开了三个MCP工具:

1.AoT工具(全面实施)

名字: AoT\ 描述:用于复杂推理任务的完整Atom of Thoughts实现。

何时使用:

  • 解决需要复杂推理的问题
  • 生成需要从多个角度验证的假设
  • 在关键任务中得出高置信度结论
  • 需要多个验证步骤的决策
  • 尽量减少逻辑错误

参数:

  • atomId:原子的唯一标识符(必需)
  • content:原子的实际含量(必填)
  • atomType:原子类型:“前提”、“推理”、“假设”、“验证”、“结论”(必填)
  • dependencies:此原子所依赖的其他原子的ID列表(必填,可以是空数组)
  • confidence:置信水平在0-1之间(必填)
  • isVerified:此原子是否已验证(可选,默认为false)
  • depth:分解收缩机制中的深度级别(可选,自动计算)

最大深度:5个级别

重要说明:

  • 结论必须得到验证(isVerified: true)出现在 best_conclusion 结果
  • 要验证结论,请使用以下命令创建它 isVerified: true 或者创建一个依赖于它的验证原子
  • 验证原子 isVerified: true 自动验证其列表中列出的原子 dependencies
  • atomcommands 该工具使用使用创建的原子 AoT 工具(不是 AoT-light)

2.AoT轻型工具(快速加工)

名字: AoT-light\ 描述:轻量级版本,处理速度更快,结果更快。

何时使用:

  • 快速头脑风暴会议
  • 解决时间敏感问题
  • 更简单的推理任务
  • 使用完整AoT之前的初步探索
  • 学习或演示目的

主要区别:

  • 最大深度较低(3而不是5)
  • 简化验证过程
  • 高置信度假设的即时结论建议
  • 减少计算开销
  • 针对速度而非详尽分析进行了优化

参数:与完整的AoT工具相同

重要说明:

  • AoT light使用独立于完整AoT的服务器实例
  • 用AoT光产生的原子对 atomcommands 工具
  • 对于分解特征或 best_conclusion 对于AoT轻原子,请使用完整的AoT工具
  • 高置信度假设(置信度≥0.8)触发自动结论建议

3.原子命令工具(高级控制)

名字: atomcommands\ 描述:控制分解收缩机制和自动终止的命令工具。

命令:

  • decompose:将指定原子分解为更小的子原子
  • complete_decomposition:完成正在进行的分解过程
  • termination_status:检查当前AoT流程的终止状态
  • best_conclusion:以最高的置信度得出经过验证的结论
  • set_max_depth:更改最大深度限制

参数:

  • command:要执行的命令(必需)
  • atomId:原子ID(必需 decompose 命令)
  • decompositionId:分解过程的ID(需要 complete_decomposition)
  • maxDepth:最大深度值(要求 set_max_depth)

重要说明:

  • best_conclusion 仅返回经过验证的结论(isVerified: true)
  • atomcommands 适用于完整的AoT服务器,而不是AoT轻型服务器
  • 使用 best_conclusion 使用AoT轻原子,使用完整的AoT工具重新创建它们
  • 结论必须经过验证才能出现在结果中(集 isVerified: true 或使用验证原子)

🌀 分解收缩机制

分解过程

  1. 开始分解:将一个复杂的原子(通常是一个假设)分解为更简单的子原子
  2. 添加子原子:自动或手动将原子添加到分解中
  3. 计算深度:子原子获得深度=父原子深度+1
  4. 完全分解:将分解标记为准备收缩

收缩过程

  1. 验证:当验证原子验证假设时
  2. 检查条件:必须验证所有亚原子并完成分解
  3. 计算置信度:亚原子的平均置信度
  4. 更新原始:原始原子获得更新的置信度并标记为已验证
  5. 建议结论:如果验证的假设置信度≥0.8,则提出结论

自动功能

  • 自动添加到分解中:新原子自动添加到当前分解中
  • 自动终止:当达到最大深度或发现强有力的结论时终止(置信度≥0.9)
  • 自动结论:对置信度≥0.8的已验证假设提出结论
  • 自动验证:验证原子会自动验证其依赖关系

📋 用法示例

示例1:基本推理链

{
  "atomId": "P1",
  "content": "The user wants to find restaurants near them",
  "atomType": "premise",
  "dependencies": [],
  "confidence": 0.9
}
{
  "atomId": "R1",
  "content": "We need to get the user's location first",
  "atomType": "reasoning",
  "dependencies": ["P1"],
  "confidence": 0.8
}
{
  "atomId": "H1",
  "content": "Ask the user for their location or use IP geolocation",
  "atomType": "hypothesis",
  "dependencies": ["R1"],
  "confidence": 0.7
}

示例2:验证和结论

{
  "atomId": "V1",
  "content": "IP geolocation is less accurate but faster; asking is more accurate but requires interaction",
  "atomType": "verification",
  "dependencies": ["H1"],
  "confidence": 0.85,
  "isVerified": true
}
{
  "atomId": "C1",
  "content": "Use IP geolocation for quick results, then ask for precise location if needed",
  "atomType": "conclusion",
  "dependencies": ["H1"],
  "confidence": 0.77
}

示例3:分解命令

{
  "command": "decompose",
  "atomId": "H1"
}

示例4:获取终止状态

{
  "command": "termination_status"
}

🧪 测试

该项目包括全面的单元测试:

# Run all tests
cargo test

# Run tests with output visible
cargo test -- --nocapture

# Run specific test
cargo test test_decomposition_flow

# Run all tests and show output
cargo test -- --show-output

测试覆盖范围包括:

  • 原子类型功能
  • 服务器初始化
  • 原子处理和验证
  • 分解流程
  • 验证和收缩
  • 终止逻辑
  • 最佳结论检索
  • 轻量级服务器功能

🏗️ 项目结构

Atom_of_Thoughts_rs/
├── Cargo.toml           # Rust dependencies and metadata
├── Cargo.lock           # Dependency lock file
├── README.md            # This file
├── AGENTS.md            # Agent guidelines and conventions
├── memory.ms            # Project information and design notes
├── refference.ts        # TypeScript reference implementation
├── src/
│   ├── lib.rs           # Core library implementation
│   └── main.rs          # Binary entry point with logging setup
└── target/              # Build artifacts (generated)

关键组件 lib.rs:

  1. 数据结构:

- AtomType:具有五种原子类型的枚举 - AtomData:具有所有字段的核心原子结构 - DecompositionState:跟踪分解进度 - TerminationStatus:终止条件和原因

  1. 核心服务器:

- AtomOfThoughtsServer:完整实施,最大深度5 - AtomOfThoughtsLightServer:轻量级版本,最大深度为3

  1. 错误处理:

- AtomError:带有描述性消息的全面错误枚举 - Result:键入别名 Result

  1. MCP集成:

- AtomOfThoughtsMcpHandler:带有三个工具的MCP服务器处理程序 - AtomRequest:原子创建请求的架构 - AtomCommandsRequest:命令请求的架构

  1. 核心算法:

- 分解管理 - 收缩触发 - 置信度计算 - 终止检查 - 依赖性验证

  1. 记录系统:

- 标准 log 板条箱 env_logger 整合 - 环境变量控制日志级别(RUST_LOG) - 向后兼容 AOT_DEBUG 变量 - 多个日志级别:错误、警告、信息、调试、跟踪 - 带有时间戳和机箱/模块信息的结构化日志输出

🔍 发展

代码风格

  • 遵循Rust 2024版本
  • 用途 cargo fmt 格式一致
  • cargo clippy -- -D warnings 对于linting
  • 带有文档注释的综合文档

建筑

# Debug build
cargo build

# Release build
cargo build --release

# Type checking without building
cargo check

# Generate documentation
cargo doc --open

依赖项

  • rmcp:模型上下文协议实现(v0.17)
  • Serde/Serde JSON:JSON序列化
  • 无论如何:错误处理
  • 这个错误:自定义错误类型
  • 东京:异步运行时
  • 计时:日期时间处理
  • 彩色的:终端输出着色
  • 日志:测井立面
  • env_logger:基于环境的日志记录配置

📊 输出格式

原子以彩色、格式化的输出显示:

┌────────────────────────────────────────────────────────────────────────────────┐
│ 💡 HYPOTHESIS:H1 [Depth: 0/5] (✓ Verified) │
├────────────────────────────────────────────────────────────────────────────────┤
│ Ask the user for their location or use IP geolocation                          │
│ Confidence: [████████████████░░░░] 80%                                         │
│ Dependencies: R1                                                               │
└────────────────────────────────────────────────────────────────────────────────┘

特征:

  • 基于原子类型的彩色标题
  • 置信条可视化
  • 深度信息
  • 验证状态
  • 依赖关系列表

🎯 何时使用AoT

理想用例

  1. 复杂决策:多种因素,结果不确定
  2. 问题解决:将复杂问题分解为可管理的部分
  3. 假设检验:生成和验证多个假设
  4. 风险评估:用置信度评分评估不同的情景
  5. 规划:在每个阶段进行逐步推理和验证

比较:AoT与AoT灯

宽高比AoT(满)AoT灯
最大深度53
处理全面快速
验证多步骤立即
用例关键决策快速推理
输出详细信息完整分析仅为必需
自动功能全部启用简化

🤝 贡献

  1. 分叉存储库
  2. 创建要素分支: git checkout -b feature/amazing-feature
  3. 进行更改
  4. 运行测试: cargo test
  5. 格式代码: cargo fmt
  6. 检查棉绒: cargo clippy -- -D warnings
  7. 提交更改: git commit -m 'Add amazing feature'
  8. 推送到分支: git push origin feature/amazing-feature
  9. 打开拉取请求

开发指南

  • 遵循现有的代码风格和约定
  • 添加新功能的测试
  • 根据需要更新文档
  • 保持提交的重点和原子性
  • 提交消息中的引用问题

📄 许可证

此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。

🙏 致谢

  • 基于原始的思想原子概念
  • 使用模型上下文协议(MCP)进行AI工具集成
  • 受认知架构中分解收缩机制的启发

📚 资源

______________________________________________________________________

Built with ❤️ using Rust

Decompose. Reason. Validate.

目录标签

目录标签

Rust云端部署Docker推理服务本地部署问题分解验证逻辑AI辅助Rust实现

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP