# MyAgent **Repository Path**: LeeCodeStudent/my-agent ## Basic Information - **Project Name**: MyAgent - **Description**: nodejs开发的基于cmd命令的agent智能体 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-06 - **Last Updated**: 2026-04-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SimpleAI 🤖 基于 **ReAct 模式**的轻量级 AI 命令行助手,支持多轮连续对话和代码生成。 ## ✨ 特性 - 🔄 **ReAct 推理模式** - 思考 → 行动 → 观察 → 回复 - 💬 **多轮对话记忆** - 自动维护最近 20 轮上下文 - 📝 **代码生成与保存** - 自动识别并保存代码到文件 - ⚡ **流式输出** - 实时显示 AI 回复(打字机效果) - 🎨 **简单 CLI 界面** - 轻量、快捷、无依赖 ## 🚀 快速开始 ### 环境要求 - Node.js >= 18.0.0 - npm 或 yarn ### 安装 ```bash # 克隆项目 git clone cd simple-ai-agent # 安装依赖(包含 dotenv 用于环境变量配置) npm install ``` ### 配置 项目支持两种配置方式: #### 方式一:使用 .env 文件(推荐)✅ 在项目根目录创建 `.env` 文件: ```bash # 创建 .env 文件 touch .env ``` 添加您的 API Key: ```env ZHIPU_API_KEY=your-api-key-here ``` 详细配置说明请查看:[环境变量配置指南](./ENV_CONFIG.md) #### 方式二:直接修改 config.js(已不推荐) 编辑 `src/config.js` 文件: ```javascript module.exports = { apiKey: "your-api-key-here", // 替换为您的智谱 API Key // ... }; ``` ### 运行 ```bash # 启动程序 npm start # 或直接运行 node src/index.js ``` ## 📖 使用方法 ### 基本对话 ``` > 你好,请问你叫什么名字? ``` ### 代码生成 ``` > 帮我写一个快速排序算法 ``` AI 会自动: 1. 生成代码并流式显示 2. 检测代码块 3. 自动保存到 `./output/` 目录 ### 可用命令 | 命令 | 说明 | |------|------| | `help` / `?` | 显示帮助信息 | | `exit` / `quit` / `q` | 退出程序 | | `clear` / `cls` | 清除对话历史 | | `save` | 保存当前对话 | | `history` | 显示对话历史 | ## 📁 项目结构 ``` simple-ai-agent/ ├── .env # 环境变量配置(包含 API Key) ├── docs/ # 文档目录 │ ├── README.md # 项目详细文档 │ ├── PRD.md # 产品需求文档 │ ├── TEST_REPORT.md # 测试报告 │ └── ENV_CONFIG.md # 环境变量配置指南 ├── src/ │ ├── index.js # 程序入口 │ ├── config.js # 配置文件(支持环境变量) │ ├── agent/ │ │ └── react.js # ReAct 推理引擎 │ ├── chat/ │ │ └── client.js # AI API 调用 │ ├── memory/ │ │ └── history.js # 对话历史管理 │ ├── parser/ │ │ └── codeParser.js # 代码提取与保存 │ └── ui/ │ └── terminal.js # 终端界面 ├── test/ # 测试套件 │ └── run_all_tests.cjs # 测试运行器 ├── output/ # 生成的代码存放目录 ├── package.json ├── .gitignore # Git 忽略配置 └── README.md # 项目入口文档 ``` ## ⚙️ 配置说明 ### 环境变量配置(推荐) 在 `.env` 文件中配置: ```env # 必需 ZHIPU_API_KEY=your-api-key # 可选 MODEL=glm-4-flash MAX_HISTORY=20 OUTPUT_DIR=./output ``` 详细说明请查看:[环境变量配置指南](./ENV_CONFIG.md) ### 代码配置(已不推荐) 在 `src/config.js` 中可以自定义: ```javascript { model: "glm-4-flash", // AI 模型 apiKey: "your-key", // API Key(使用环境变量更安全) maxHistory: 20, // 最大历史记录数 temperature: 0.7, // 创造性参数 (0-1) maxTokens: 2048, // 最大 token 数 maxRetries: 3 // 最大重试次数 } ``` ## 🧪 测试 ```bash # 运行所有测试 npm test # 或直接运行测试文件 node test/run_all_tests.cjs ``` 详细测试报告请查看:[测试报告](./TEST_REPORT.md) ## 🔧 技术栈 - **运行环境**: Node.js (>= 18.0.0) - **编程语言**: JavaScript - **依赖管理**: dotenv - **AI 模型**: 智谱 GLM-4-Flash - **API**: REST + SSE 流式输出 ## 📝 后续扩展 - [ ] 插件系统 - 支持自定义工具 - [ ] 文件对话 - 读取本地文件 - [ ] Web 搜索 - 集成搜索引擎 - [ ] 多模型切换 - 支持不同 AI 模型 - [ ] 会话持久化 - 保存/加载会话 ## 🔒 安全建议 1. **使用 .env 文件**:将 API Key 保存在 `.env` 文件中,不要硬编码到代码 2. **不要提交 .env**:确保 `.gitignore` 包含 `.env` 文件 3. **定期更换 Key**:定期更换 API Key 提高安全性 4. **限制使用权限**:在智谱平台设置 API Key 的使用限制 ## ❓ 常见问题 ### Q: 程序提示 "API Key not found" **A**: 检查 `.env` 文件是否存在于项目根目录,并且包含有效的 `ZHIPU_API_KEY`。 详细解决步骤请查看:[环境变量配置指南 - 常见问题](./ENV_CONFIG.md#-常见问题) ### Q: 如何获取 API Key? **A**: 1. 访问 [智谱 AI 开放平台](https://open.bigmodel.cn/) 2. 注册/登录账号 3. 进入控制台 → API Keys → 创建新密钥 4. 复制生成的 API Key 并填入 `.env` 文件 ## 📄 License MIT License --- ⭐ 如果这个项目对您有帮助,请给个 Star!