官方文档
| 文档 | 位置 | 说明 |
|---|---|---|
| README | nanobot/README.md |
项目概览、安装、快速开始 |
| Architecture | nanobot/docs/architecture.md |
架构设计文档 |
| Concepts | nanobot/docs/concepts.md |
核心概念说明 |
| Configuration | nanobot/docs/configuration.md |
配置参考 |
| Development | nanobot/docs/development.md |
开发指南 |
| Deployment | nanobot/docs/deployment.md |
部署指南 |
| Quick Start | nanobot/docs/quick-start.md |
快速开始 |
| Channel Plugin Guide | nanobot/docs/channel-plugin-guide.md |
渠道插件开发指南 |
| Chat Apps | nanobot/docs/chat-apps.md |
聊天应用接入 |
| Chat Commands | nanobot/docs/chat-commands.md |
聊天命令参考 |
| Memory | nanobot/docs/memory.md |
记忆系统文档 |
| Providers | nanobot/docs/providers.md |
Provider 配置 |
| Provider Cookbook | nanobot/docs/provider-cookbook.md |
Provider 配置示例 |
| WebSocket | nanobot/docs/websocket.md |
WebSocket 协议 |
| WebUI | nanobot/docs/webui.md |
WebUI 使用说明 |
| OpenAI API | nanobot/docs/openai-api.md |
OpenAI 兼容 API |
| CLI Reference | nanobot/docs/cli-reference.md |
CLI 命令参考 |
| Troubleshooting | nanobot/docs/troubleshooting.md |
故障排除 |
| Python SDK | nanobot/docs/python-sdk.md |
Python SDK 使用 |
| My Tool | nanobot/docs/my-tool.md |
自定义工具开发 |
| Image Generation | nanobot/docs/image-generation.md |
图片生成 |
Agent 设计文档
| 文档 | 位置 | 说明 |
|---|---|---|
| Design Constraints | nanobot/.agent/design.md |
架构约束和设计原则 |
| Security Boundaries | nanobot/.agent/security.md |
安全边界定义 |
| Common Gotchas | nanobot/.agent/gotchas.md |
常见陷阱和注意事项 |
核心源码索引
Agent 核心
| 文件 | 说明 | 关键类/函数 |
|---|---|---|
nanobot/nanobot/agent/loop.py |
Agent 主循环 | AgentLoop, TurnContext, TurnState |
nanobot/nanobot/agent/runner.py |
LLM 执行引擎 | AgentRunner, AgentRunSpec, AgentRunResult |
nanobot/nanobot/agent/context.py |
上下文构建 | ContextBuilder |
nanobot/nanobot/agent/memory.py |
记忆系统 | MemoryStore, Consolidator |
nanobot/nanobot/agent/hook.py |
Agent 钩子 | AgentHook, CompositeHook |
nanobot/nanobot/agent/skills.py |
技能加载 | SkillsLoader |
nanobot/nanobot/agent/subagent.py |
子Agent管理 | SubagentManager |
nanobot/nanobot/agent/autocompact.py |
自动压缩 | AutoCompact |
nanobot/nanobot/agent/cron_turns.py |
Cron 轮次协调 | CronTurnCoordinator |
nanobot/nanobot/agent/model_presets.py |
模型预设 | build_runtime_preset_snapshot |
消息总线
| 文件 | 说明 | 关键类/函数 |
|---|---|---|
nanobot/nanobot/bus/queue.py |
消息队列 | MessageBus |
nanobot/nanobot/bus/events.py |
消息事件 | InboundMessage, OutboundMessage |
nanobot/nanobot/bus/progress.py |
进度回调 | build_bus_progress_callback |
nanobot/nanobot/bus/runtime_events.py |
运行时事件 | RuntimeEventBus |
Provider 系统
| 文件 | 说明 | 关键类/函数 |
|---|---|---|
nanobot/nanobot/providers/base.py |
Provider 基类 | LLMProvider, LLMResponse, ToolCallRequest |
nanobot/nanobot/providers/factory.py |
Provider 工厂 | make_provider, ProviderSnapshot |
nanobot/nanobot/providers/registry.py |
Provider 注册 | 模型发现和列表 |
nanobot/nanobot/providers/anthropic_provider.py |
Anthropic | 扩展思考、提示缓存 |
nanobot/nanobot/providers/openai_compat_provider.py |
OpenAI 兼容 | 通用 OpenAI API |
nanobot/nanobot/providers/fallback_provider.py |
回退链 | FallbackProvider |
工具系统
| 文件 | 说明 | 关键类/函数 |
|---|---|---|
nanobot/nanobot/agent/tools/base.py |
Tool 基类 | Tool, Schema, tool_parameters |
nanobot/nanobot/agent/tools/registry.py |
工具注册表 | ToolRegistry |
nanobot/nanobot/agent/tools/loader.py |
工具加载器 | ToolLoader |
nanobot/nanobot/agent/tools/filesystem.py |
文件系统工具 | ReadFileTool, WriteFileTool, EditFileTool |
nanobot/nanobot/agent/tools/shell.py |
Shell 工具 | ExecTool |
nanobot/nanobot/agent/tools/sandbox.py |
沙箱后端 | Docker/Podman/本地沙箱 |
nanobot/nanobot/agent/tools/web.py |
Web 工具 | WebFetchTool |
nanobot/nanobot/agent/tools/search.py |
搜索工具 | WebSearchTool |
nanobot/nanobot/agent/tools/mcp.py |
MCP 工具 | MCP 服务器连接和工具代理 |
nanobot/nanobot/agent/tools/spawn.py |
子Agent生成 | SpawnTool |
渠道系统
| 文件 | 说明 | 关键类/函数 |
|---|---|---|
nanobot/nanobot/channels/base.py |
渠道基类 | BaseChannel |
nanobot/nanobot/channels/manager.py |
渠道管理 | ChannelManager |
nanobot/nanobot/channels/registry.py |
渠道发现 | discover_channel_names |
会话与配置
| 文件 | 说明 | 关键类/函数 |
|---|---|---|
nanobot/nanobot/session/manager.py |
会话管理 | Session, SessionManager |
nanobot/nanobot/session/goal_state.py |
持续目标 | goal_state_runtime_lines |
nanobot/nanobot/config/schema.py |
配置模型 | Config, AgentDefaults, ChannelsConfig |
nanobot/nanobot/config/loader.py |
配置加载 | load_config |
nanobot/nanobot/config/paths.py |
路径工具 | 配置和数据目录路径 |
安全
| 文件 | 说明 | 关键类/函数 |
|---|---|---|
nanobot/nanobot/security/network.py |
网络安全 | SSRF 检测 |
nanobot/nanobot/security/workspace_access.py |
工作区访问 | WorkspaceScopeResolver |
nanobot/nanobot/security/workspace_policy.py |
工作区策略 | 路径验证 |
模板文件
| 模板 | 位置 | 说明 |
|---|---|---|
| identity.md | nanobot/templates/agent/identity.md |
Agent 身份模板 |
| tool_contract.md | nanobot/templates/agent/tool_contract.md |
工具使用规范模板 |
| platform_policy.md | nanobot/templates/agent/platform_policy.md |
平台策略模板 |
| skills_section.md | nanobot/templates/agent/skills_section.md |
技能摘要模板 |
| dream.md | nanobot/templates/agent/dream.md |
Dream 巩固提示模板 |
| consolidator_archive.md | nanobot/templates/agent/consolidator_archive.md |
巩固归档模板 |
| max_iterations_message.md | nanobot/templates/agent/max_iterations_message.md |
迭代上限消息模板 |
环境变量参考
| 变量 | 默认值 | 说明 |
|---|---|---|
NANOBOT_MAX_CONCURRENT_REQUESTS |
3 | 最大并发请求数 (≤0=无限制) |
NANOBOT_LLM_TIMEOUT_S |
300 | LLM 调用超时(秒) (≤0=禁用) |
NANOBOT_STREAM_IDLE_TIMEOUT_S |
90 | 流式空闲超时(秒) |
学习文档章节索引
| 章节 | 文件 | 内容 |
|---|---|---|
| 00 | 00-overview | 项目概览、架构全景、学习路线 |
| 01 | 01-module-agent-loop.md | AgentLoop + AgentRunner 核心引擎 |
| 02 | 02-module-message-bus.md | MessageBus 异步通信中枢 |
| 03 | 03-module-providers.md | LLM Provider 抽象与重试机制 |
| 04 | 04-module-channels.md | 聊天渠道集成架构 |
| 05 | 05-module-tools.md | 工具系统与注册机制 |
| 06 | 06-module-memory.md | 记忆存储与 Dream 巩固 |
| 07 | 07-module-session.md | 会话管理与历史回放 |
| 08 | 08-module-context.md | 上下文构建与技能加载 |
| 09 | 09-module-config-security.md | 配置系统与安全边界 |