# @ai-assistant/cli AI Terminal Assistant 的命令行界面 - 直接从终端与 AI 交互。 ## 📦 安装 ```bash # 全局安装 pnpm add -g @ai-assistant/cli # 或直接使用 npx/bunx 运行 npx @ai-assistant/cli bunx @ai-assistant/cli ``` ## 🌟 功能特性 - **双模式** - 服务器模式和客户端附加模式 - **交互式对话** - 带语法高亮的丰富终端界面 - **流式响应** - 实时 AI 响应 - **文件附件** - 支持将文件附加到消息 - **命令历史** - 浏览之前的命令 - **自动补全** - Tab 键补全命令 - **彩色输出** - 美观的终端格式 - **会话管理** - 持久化对话历史 ## 🚀 快速开始 ### 服务器模式 启动本地 AI 服务器: ```bash # 在默认端口 3000 启动服务器 ai-assist serve # 在自定义端口启动 ai-assist serve --port 8080 # 使用特定模型 ai-assist serve --model claude-haiku-3-20251120 # 启用详细日志 ai-assist serve --verbose ``` ### 客户端模式 连接到运行中的 AI 服务器: ```bash # 连接到本地服务器 ai-assist attach # 连接到远程服务器 ai-assist attach https://ai-server.example.com # 带身份验证连接 ai-assist attach https://ai-server.example.com --token YOUR_TOKEN # 连接到特定会话 ai-assist attach --session my-session-id ``` ## 📚 命令 ### 全局选项 ```bash ai-assist [command] [options] 选项: -h, --help 显示帮助 -v, --version 显示版本 --config 配置文件路径 --verbose 启用详细日志 ``` ### 服务器命令 ```bash ai-assist serve [options] 选项: -p, --port 服务器端口(默认:3000) -h, --host 服务器主机(默认:localhost) --api-key Anthropic API 密钥(或使用 ANTHROPIC_API_KEY 环境变量) --model 使用的 AI 模型 --max-tokens 最大响应令牌数 --no-auth 禁用身份验证 --cors-origin CORS 允许的来源 ``` ### 附加命令 ```bash ai-assist attach [server-url] [options] 参数: server-url 服务器 URL(默认:http://localhost:3000) 选项: -s, --session 要附加的会话 ID -t, --token 身份验证令牌 --no-history 不加载会话历史 --stream 启用流模式 ``` ## ⌨️ 交互式命令 连接后,可以在对话界面中使用这些命令: ``` /help 显示可用命令 /clear 清屏 /history 显示消息历史 /attach 将文件附加到下一条消息 /model 切换 AI 模型 /session new 开始新会话 /session list 列出可用会话 /session switch 切换到另一个会话 /export 导出对话到文件 /quit 退出 CLI ``` ## 🎨 终端界面功能 ### 消息显示 - **用户消息** - 以青色 `>` 前缀显示 - **AI 响应** - 带语法高亮的格式化显示 - **代码块** - 基于语言的语法高亮 - **Markdown** - 终端格式渲染 - **进度指示器** - 处理时的动画加载 ### 键盘快捷键 - `↑/↓` - 浏览消息历史 - `Tab` - 自动补全命令 - `Ctrl+C` - 取消当前操作 - `Ctrl+D` - 退出(同 /quit) - `Ctrl+L` - 清屏(同 /clear) - `PgUp/PgDn` - 滚动长响应 ## 🔧 配置 ### 配置文件 创建 `~/.ai-assistant/config.json`: ```json { "defaultServer": "http://localhost:3000", "apiKey": "sk-ant-xxxxx", "model": "claude-sonnet-4-20250514", "theme": "dark", "editor": "vim", "history": { "enabled": true, "maxSize": 1000 }, "display": { "showTimestamps": true, "syntax_highlighting": true, "word_wrap": true, "max_width": 120 } } ``` ### 环境变量 ```bash # API 配置 export ANTHROPIC_API_KEY=sk-ant-xxxxx export AI_MODEL=claude-sonnet-4-20250514 # CLI 配置 export AI_CLI_SERVER=http://localhost:3000 export AI_CLI_SESSION=my-session export AI_CLI_TOKEN=auth-token # 显示配置 export AI_CLI_COLOR=true export AI_CLI_EDITOR=vim ``` ## 🔌 脚本和自动化 ### 管道输入 ```bash # 发送单条消息 echo "什么是 TypeScript?" | ai-assist attach # 处理文件 cat code.ts | ai-assist attach --message "审查这段代码" # 与其他命令链接 git diff | ai-assist attach --message "解释这些更改" ``` ### 脚本模式 ```bash #!/bin/bash # 创建批处理脚本 ai-assist attach < debug.log ``` ### 常见问题 1. **"无法连接到服务器"** - 检查服务器是否正在运行 - 验证服务器 URL 和端口 - 检查防火墙设置 2. **"身份验证失败"** - 验证 API 密钥是否设置 - 检查令牌是否过期 - 确保服务器身份验证已配置 3. **"会话未找到"** - 会话可能已过期 - 使用 `/session list` 查看可用会话 - 使用 `/session new` 创建新会话 ## 🤝 贡献 欢迎贡献!请查看主仓库的贡献指南。 ## 📄 许可证 MIT 许可证 - 查看 [LICENSE](../../LICENSE) 了解详情。 ## 🔗 链接 - [主仓库](https://github.com/username/ai-terminal-assistant) - [文档](https://docs.example.com/cli) - [问题跟踪](https://github.com/username/ai-terminal-assistant/issues)