# claude-server **Repository Path**: pxing/claude-server ## Basic Information - **Project Name**: claude-server - **Description**: No description available - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-26 - **Last Updated**: 2026-05-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AI Agent Server 通用型智能体服务端,通过 Skills 机制让业务人员可扩展为专属智能体。带 Web 控制台,支持流式输出、任务追踪、上下文压缩和子智能体分发。 ## Phase 1 — 最小闭环 已实现的功能: - [x] 对话循环 (think → act → observe → reflect) - [x] 流式 SSE 输出 - [x] 5 个内置工具 (read / write / bash / ls / grep) - [x] 任务追踪系统 (规划 / 追踪 / 防跑偏校验) - [x] 上下文管理 (构建 / 四级压缩) - [x] LLM Router (Anthropic Claude 流式调用) - [x] Session 管理 (CRUD) - [x] Web 控制台 (React + TailwindCSS) - [x] REST API (Chat / Sessions / Tasks) ## 快速开始 ### 前置条件 - Python 3.11+ - Node.js 20+ - Anthropic API Key ### 后端 ```bash cd backend pip install -r requirements.txt cp .env.example .env # 填入 ANTHROPIC_API_KEY python -m uvicorn main:app --reload --port 8000 ``` ### 前端 ```bash cd frontend npm install npm run dev ``` 打开 http://localhost:5173 即可使用。 ## 项目结构 ``` backend/ ├── main.py # FastAPI 入口 ├── requirements.txt # Python 依赖 ├── pytest.ini # 测试配置 ├── app/ │ ├── config.py # 配置管理 (pydantic-settings) │ ├── models.py # Pydantic 数据模型 │ ├── database.py # SQLite 数据库 (aiosqlite) │ ├── api/ │ │ ├── chat.py # POST /api/chat/completions (SSE) │ │ ├── sessions.py # CRUD /api/sessions │ │ └── tasks.py # GET/PATCH /api/tasks │ ├── core/ │ │ ├── dialogue_loop.py # Think → Act → Observe → Reflect │ │ ├── llm_router.py # Anthropic Claude 封装 │ │ ├── context_manager.py # 上下文构建 + 压缩 │ │ ├── task_system.py # 任务规划/追踪/校验 │ │ └── session_manager.py # 会话管理 │ └── tools/ │ ├── registry.py # 工具注册中心 │ ├── base.py # 工具基类 │ ├── read_tool.py # 读取文件 │ ├── write_tool.py # 写入文件 │ ├── bash_tool.py # 执行命令 │ ├── ls_tool.py # 列出目录 │ └── grep_tool.py # 搜索文件 frontend/ ├── src/ │ ├── types.ts # TypeScript 类型定义 │ ├── utils/api.ts # API 客户端 (SSE) │ ├── hooks/ │ │ ├── useChat.ts # 流式聊天 Hook │ │ └── useTasks.ts # 任务轮询 Hook │ └── components/ │ ├── ChatView.tsx # 聊天主区域 │ ├── MessageList.tsx # 消息列表 │ ├── MessageBubble.tsx # 消息气泡 │ ├── MessageInput.tsx # 输入框 │ ├── SidePanel.tsx # 右侧面板容器 │ ├── TaskPanel.tsx # 任务面板 │ ├── SkillPanel.tsx # Skill 面板 │ ├── ContextPanel.tsx # 上下文面板 │ └── StatusBar.tsx # 状态栏 ``` ## API 端点 | 端点 | 方法 | 说明 | |:---|:---|:---| | `/api/health` | GET | 健康检查 | | `/api/chat/completions` | POST | 发送消息 (SSE 流式) | | `/api/sessions` | GET | 列出会话 | | `/api/sessions` | POST | 创建会话 | | `/api/sessions/{id}` | GET | 获取会话 | | `/api/sessions/{id}` | DELETE | 删除会话 | | `/api/tasks/{session_id}` | GET | 获取任务列表 | | `/api/tasks/{task_id}` | PATCH | 更新任务状态 | ## 测试 ```bash cd backend python -m pytest tests/ -v ``` ## License MIT