章节 01
导读 / 主楼:clido:终端原生多提供商AI编程助手
clido是一款本地优先、支持多提供商的CLI编码智能体,可在终端中直接运行,通过自然语言描述任务,利用AI和工具链自动完成编码工作,支持16个提供商和23种工具。
正文
clido是一款本地优先、支持多提供商的CLI编码智能体,可在终端中直接运行,通过自然语言描述任务,利用AI和工具链自动完成编码工作,支持16个提供商和23种工具。
章节 01
clido是一款本地优先、支持多提供商的CLI编码智能体,可在终端中直接运行,通过自然语言描述任务,利用AI和工具链自动完成编码工作,支持16个提供商和23种工具。
章节 02
bash\ncurl -fsSL https://clido.ai/install.sh | sh\n\n\n或者从源码构建(需要Rust 1.94+):\n\nbash\ngit clone https://github.com/clido-ai/clido-cli.git && cd clido-cli\ncargo install --path crates/clido-cli --locked\n\n\n### 首次配置\n\n首次运行时,clido会启动交互式向导(clido init),引导用户:\n\n1. 选择首选提供商\n2. 输入API密钥或基础URL\n3. 写入配置文件~/.config/clido/config.toml和凭证文件\n\n### 配置文件结构\n\n配置文件采用TOML格式,支持多profile:\n\ntoml\ndefault_profile = \"default\"\n\n[profile.default]\nprovider = \"anthropic\"\nmodel = \"claude-sonnet-4-5\"\n\n[profile.fast]\nprovider = \"anthropic\"\nmodel = \"claude-haiku-4-5\"\n\n[profile.local]\nprovider = \"local\"\nmodel = \"llama3\"\nbase_url = \"http://localhost:11434\"\n\n\n用户可以通过--profile fast或环境变量CLIDO_PROFILE=fast切换配置。\n\n### Profile管理\n\nclido提供完整的profile管理命令:\n\nbash\nclido profile list # 列出所有profile\nclido profile create myprofile # 创建新profile\nclido profile switch myprofile # 设为默认\nclido profile edit myprofile # 编辑profile\nclido profile delete myprofile # 删除profile\n\n\n在TUI中,按Ctrl+P可打开profile选择器,或使用/profile命令。\n\n## 实际应用场景\n\n### 场景一:快速原型开发\n\n开发者需要快速搭建一个REST API服务:\n\nbash\nclido \"创建一个Python FastAPI项目,包含用户注册和登录API,使用SQLite数据库,添加适当的错误处理和输入验证\"\n\n\nclido会:\n1. 创建项目目录结构\n2. 编写FastAPI应用代码\n3. 设置数据库模型\n4. 实现认证逻辑\n5. 添加测试用例\n\n### 场景二:代码重构\n\n需要对遗留代码进行现代化改造:\n\nbash\nclido \"将这个项目从Flask迁移到FastAPI,保持API兼容性,更新所有测试\"\n\n\nclido会分析现有代码,规划迁移步骤,逐步执行重构,并在每个关键步骤请求确认。\n\n### 场景三:自动化文档生成\n\n通过YAML工作流定义文档生成任务:\n\nbash\nclido --workflow generate-docs.yaml\n\n\n工作流可以包含:代码分析、API文档提取、示例生成、格式转换等步骤。\n\n### 场景四:多模型协作\n\n利用不同模型的优势:\n\nbash\n# 使用轻量级模型快速生成代码框架\nCLIDO_PROFILE=fast clido \"生成这个函数的单元测试框架\"\n\n# 使用强模型进行深度代码审查\nCLIDO_PROFILE=default clido \"审查这段代码的潜在问题和改进建议\"\n\n\n## 与同类工具对比\n\n| 特性 | clido | Claude Code | Cursor | GitHub Copilot |\n|------|-------|-------------|--------|----------------|\n| 运行环境 | 终端 | 终端 | IDE | IDE/编辑器 |\n| 提供商 | 16个 | Anthropic | 多提供商 | OpenAI |\n| 本地模型 | 支持 | 支持 | 支持 | 不支持 |\n| 工作流 | YAML | 无 | 无 | 无 |\n| 会话管理 | 内置 | 内置 | 内置 | 云端 |\n| 工具数量 | 23 | 丰富 | 中等 | 较少 |\n| 开源 | 是 | 否 | 否 | 否 |\n\nclido的优势在于其终端原生设计、多提供商灵活性、以及开源带来的可定制性。对于习惯命令行工作流的开发者,clido提供了更自然的交互方式。\n\n## 技术实现亮点\n\n### Rust实现\n\n采用Rust编写带来了几个好处:\n\n- 单二进制文件发布,无需依赖\n- 高性能,低资源占用\n- 内存安全,减少运行时错误\n- 跨平台支持\n\n### 生产级Agent Loop\n\nclido的智能体循环经过精心设计:\n\n- 输入验证:所有工具输入在执行前进行JSON Schema验证\n- 错误分类:失败按类型分类,支持智能重试\n- 资源限制:可配置调用上限,防止无限循环\n- 死循环检测:自动识别和终止停滞的任务\n\n### 安全模型\n\nclido的安全设计贯穿始终:\n\n- 破坏性操作需显式批准\n- 敏感信息存储在独立凭证文件(权限600)\n- API密钥解析优先级:环境变量 > 凭证文件 > 配置文件\n\n## 生态与社区\n\nclido作为开源项目,鼓励社区贡献:\n\n- 技能(Skills)系统允许用户分享领域特定的AI指令集\n- 工作流模板可以在社区中共享\n- 提供商适配器可以扩展以支持新的AI服务\n\n## 适用人群与场景\n\n### 最适合的用户\n\n- 终端重度用户:习惯在命令行完成大部分工作的开发者\n- DevOps工程师:需要自动化脚本和基础设施管理\n- 全栈开发者:需要快速原型和跨技术栈支持\n- AI工具爱好者:希望尝试不同提供商和模型\n\n### 典型使用场景\n\n- 快速项目脚手架生成\n- 代码审查和重构\n- 自动化文档生成\n- 测试用例编写\n- 配置文件管理\n- 批量文件处理\n\n## 总结与展望\n\nclido代表了AI编程助手向终端原生、多提供商、开源化方向演进的一个趋势。它不是为了取代IDE插件,而是为命令行工作流提供一等公民的AI支持。\n\n对于习惯终端环境的开发者,clido提供了一种更自然、更灵活的AI协作方式。它的多提供商支持让用户不会被锁定在单一服务,YAML工作流和Skills系统则提供了强大的可扩展性。\n\n随着AI能力的持续提升和终端工具生态的丰富,像clido这样的工具将在开发者工具链中占据越来越重要的位置。它不仅是编码助手,更是终端环境下的智能协作者。章节 03
clido:为终端而生的AI编程智能体\n\n项目概述\n\n在AI编程助手百花齐放的今天,大多数工具都集中在IDE插件或Web界面。而clido选择了一条不同的道路——它是一款本地优先、终端原生的AI编码智能体,专为喜欢在命令行工作的开发者设计。\n\nclido由clido-ai团队开发,采用Rust编写,以单二进制文件形式发布。它支持16个AI提供商,内置23种工具,可以通过YAML定义工作流,让开发者用自然语言描述任务,AI会自动调用工具链完成工作。\n\n核心理念与设计哲学\n\nclido的设计体现了几个关键理念:\n\nCLI优先\n\n与许多AI工具不同,clido从一开始就是为终端设计的。脚本编写和自动化是一等公民,所有功能都可以通过命令行直接访问,无需依赖图形界面。\n\n多提供商支持\n\nclido不绑定特定AI服务,支持16个不同的提供商,包括:\n\n- Anthropic(Claude系列)\n- OpenAI(GPT系列)\n- Google Gemini\n- DeepSeek\n- Mistral\n- xAI(Grok)\n- 本地模型(通过兼容端点)\n\n用户可以通过配置文件轻松切换不同提供商和模型。\n\n安全默认\n\nclido采用"安全优先"的设计原则:\n\n- 所有破坏性或会改变文件的操作都需要用户明确批准\n- 提供权限提示,让用户清楚了解AI将要执行的操作\n- 支持会话恢复,中断后可以无缝继续\n\n生产级智能体循环\n\nclido实现了健壮的生产级智能体循环:\n\n- 工具输入在执行前会针对JSON Schema进行验证\n- 失败携带类型化分类,支持智能重试策略\n- 可配置的调用上限和工具调用限制\n- 停滞和死循环检测\n- 可选的LLM调用间隔控制\n\n功能特性深度解析\n\n丰富的工具集\n\nclido内置23种工具,覆盖开发工作的各个方面:\n\n文件操作工具:\n- 读取文件内容\n- 编辑文件\n- 写入新文件\n- 搜索文件和目录\n\n代码执行工具:\n- 运行shell命令\n- 执行代码片段\n- 管理进程\n\n开发辅助工具:\n- 语义搜索\n- MCP(Model Context Protocol)集成\n- 检查点管理\n- 审计日志\n\n会话与记忆\n\nclido支持会话管理,可以:\n\n- 保存和恢复工作会话\n- 在会话间保持上下文连续性\n- 显示成本和用量信息(当用户关注时)\n\nYAML工作流\n\nclido支持通过YAML文件定义复杂的工作流,让重复性任务可以自动化执行。这对于标准化的开发流程(如代码审查、重构、文档生成)特别有用。\n\nSkills系统\n\nclido引入了"技能"概念——基于文件夹的可复用指令集。用户可以定义特定领域的技能包,在多个项目中复用,类似于自定义的AI助手能力扩展。\n\nTUI界面\n\n除了命令行交互,clido还提供文本用户界面(TUI),包括:\n\n- 计划/待办事项UX\n- 配置文件管理向导\n- 交互式设置流程\n\n配置与使用\n\n安装\n\nclido提供简单的安装脚本:\n\nbash\ncurl -fsSL https://clido.ai/install.sh | sh\n\n\n或者从源码构建(需要Rust 1.94+):\n\nbash\ngit clone https://github.com/clido-ai/clido-cli.git && cd clido-cli\ncargo install --path crates/clido-cli --locked\n\n\n首次配置\n\n首次运行时,clido会启动交互式向导(clido init),引导用户:\n\n1. 选择首选提供商\n2. 输入API密钥或基础URL\n3. 写入配置文件~/.config/clido/config.toml和凭证文件\n\n配置文件结构\n\n配置文件采用TOML格式,支持多profile:\n\ntoml\ndefault_profile = \"default\"\n\n[profile.default]\nprovider = \"anthropic\"\nmodel = \"claude-sonnet-4-5\"\n\n[profile.fast]\nprovider = \"anthropic\"\nmodel = \"claude-haiku-4-5\"\n\n[profile.local]\nprovider = \"local\"\nmodel = \"llama3\"\nbase_url = \"http://localhost:11434\"\n\n\n用户可以通过--profile fast或环境变量CLIDO_PROFILE=fast切换配置。\n\nProfile管理\n\nclido提供完整的profile管理命令:\n\nbash\nclido profile list 列出所有profile\nclido profile create myprofile 创建新profile\nclido profile switch myprofile 设为默认\nclido profile edit myprofile 编辑profile\nclido profile delete myprofile 删除profile\n\n\n在TUI中,按Ctrl+P可打开profile选择器,或使用/profile命令。\n\n实际应用场景\n\n场景一:快速原型开发\n\n开发者需要快速搭建一个REST API服务:\n\nbash\nclido \"创建一个Python FastAPI项目,包含用户注册和登录API,使用SQLite数据库,添加适当的错误处理和输入验证\"\n\n\nclido会:\n1. 创建项目目录结构\n2. 编写FastAPI应用代码\n3. 设置数据库模型\n4. 实现认证逻辑\n5. 添加测试用例\n\n场景二:代码重构\n\n需要对遗留代码进行现代化改造:\n\nbash\nclido \"将这个项目从Flask迁移到FastAPI,保持API兼容性,更新所有测试\"\n\n\nclido会分析现有代码,规划迁移步骤,逐步执行重构,并在每个关键步骤请求确认。\n\n场景三:自动化文档生成\n\n通过YAML工作流定义文档生成任务:\n\nbash\nclido --workflow generate-docs.yaml\n\n\n工作流可以包含:代码分析、API文档提取、示例生成、格式转换等步骤。\n\n场景四:多模型协作\n\n利用不同模型的优势:\n\nbash\n使用轻量级模型快速生成代码框架\nCLIDO_PROFILE=fast clido \"生成这个函数的单元测试框架\"\n\n使用强模型进行深度代码审查\nCLIDO_PROFILE=default clido \"审查这段代码的潜在问题和改进建议\"\n\n\n与同类工具对比\n\n| 特性 | clido | Claude Code | Cursor | GitHub Copilot |\n|------|-------|-------------|--------|----------------|\n| 运行环境 | 终端 | 终端 | IDE | IDE/编辑器 |\n| 提供商 | 16个 | Anthropic | 多提供商 | OpenAI |\n| 本地模型 | 支持 | 支持 | 支持 | 不支持 |\n| 工作流 | YAML | 无 | 无 | 无 |\n| 会话管理 | 内置 | 内置 | 内置 | 云端 |\n| 工具数量 | 23 | 丰富 | 中等 | 较少 |\n| 开源 | 是 | 否 | 否 | 否 |\n\nclido的优势在于其终端原生设计、多提供商灵活性、以及开源带来的可定制性。对于习惯命令行工作流的开发者,clido提供了更自然的交互方式。\n\n技术实现亮点\n\nRust实现\n\n采用Rust编写带来了几个好处:\n\n- 单二进制文件发布,无需依赖\n- 高性能,低资源占用\n- 内存安全,减少运行时错误\n- 跨平台支持\n\n生产级Agent Loop\n\nclido的智能体循环经过精心设计:\n\n- 输入验证:所有工具输入在执行前进行JSON Schema验证\n- 错误分类:失败按类型分类,支持智能重试\n- 资源限制:可配置调用上限,防止无限循环\n- 死循环检测:自动识别和终止停滞的任务\n\n安全模型\n\nclido的安全设计贯穿始终:\n\n- 破坏性操作需显式批准\n- 敏感信息存储在独立凭证文件(权限600)\n- API密钥解析优先级:环境变量 > 凭证文件 > 配置文件\n\n生态与社区\n\nclido作为开源项目,鼓励社区贡献:\n\n- 技能(Skills)系统允许用户分享领域特定的AI指令集\n- 工作流模板可以在社区中共享\n- 提供商适配器可以扩展以支持新的AI服务\n\n适用人群与场景\n\n最适合的用户\n\n- 终端重度用户:习惯在命令行完成大部分工作的开发者\n- DevOps工程师:需要自动化脚本和基础设施管理\n- 全栈开发者:需要快速原型和跨技术栈支持\n- AI工具爱好者:希望尝试不同提供商和模型\n\n典型使用场景\n\n- 快速项目脚手架生成\n- 代码审查和重构\n- 自动化文档生成\n- 测试用例编写\n- 配置文件管理\n- 批量文件处理\n\n总结与展望\n\nclido代表了AI编程助手向终端原生、多提供商、开源化方向演进的一个趋势。它不是为了取代IDE插件,而是为命令行工作流提供一等公民的AI支持。\n\n对于习惯终端环境的开发者,clido提供了一种更自然、更灵活的AI协作方式。它的多提供商支持让用户不会被锁定在单一服务,YAML工作流和Skills系统则提供了强大的可扩展性。\n\n随着AI能力的持续提升和终端工具生态的丰富,像clido这样的工具将在开发者工具链中占据越来越重要的位置。它不仅是编码助手,更是终端环境下的智能协作者。