mirror of
https://github.com/zhayujie/chatgpt-on-wechat.git
synced 2026-03-03 08:54:50 +08:00
94 lines
4.7 KiB
Plaintext
94 lines
4.7 KiB
Plaintext
---
|
|
title: Architecture
|
|
description: CowAgent 2.0 system architecture and core design
|
|
---
|
|
|
|
# Architecture
|
|
|
|
CowAgent 2.0 is a comprehensive upgrade from a simple chatbot to an AI super assistant, built on an Agent architecture with autonomous thinking, task planning, long-term memory, and skill extension capabilities.
|
|
|
|
## System Architecture
|
|
|
|
```
|
|
┌──────────────────────────────────────────────────────┐
|
|
│ Channels │
|
|
│ Web │ Feishu │ DingTalk │ WeCom │ WeChat MP │
|
|
└───────────────────────┬──────────────────────────────┘
|
|
│
|
|
┌───────────────────────▼──────────────────────────────┐
|
|
│ Agent Core │
|
|
│ ┌─────────────┐ ┌──────────┐ ┌───────────────────┐ │
|
|
│ │ Task Planner│ │ Memory │ │ Skills Engine │ │
|
|
│ └──────┬──────┘ └────┬─────┘ └────────┬──────────┘ │
|
|
│ │ │ │ │
|
|
│ ┌──────▼─────────────▼────────────────▼──────────┐ │
|
|
│ │ Tools │ │
|
|
│ │ File R/W │ Bash │ Browser │ Scheduler │ ... │ │
|
|
│ └────────────────────────────────────────────────┘ │
|
|
└───────────────────────┬──────────────────────────────┘
|
|
│
|
|
┌───────────────────────▼──────────────────────────────┐
|
|
│ Models │
|
|
│ OpenAI │ Claude │ Gemini │ MiniMax │ GLM │ ... │
|
|
└──────────────────────────────────────────────────────┘
|
|
```
|
|
|
|
### Core Modules
|
|
|
|
| Module | Description |
|
|
| --- | --- |
|
|
| **Channels** | Message channel layer for receiving and sending messages, supporting Web, Feishu, DingTalk, WeCom, WeChat Official Accounts, etc. |
|
|
| **Agent Core** | The intelligent agent engine, including task planning, memory system, and skills engine |
|
|
| **Tools** | Tool layer through which the Agent accesses OS resources, with 10+ built-in tools |
|
|
| **Models** | Model layer supporting unified access to major domestic and international LLMs |
|
|
|
|
## Agent Mode
|
|
|
|
When Agent mode is enabled, CowAgent operates as an autonomous intelligent agent with the following workflow:
|
|
|
|
1. **Receive Message** - Receives user input through a channel
|
|
2. **Understand Intent** - Analyzes task requirements and context
|
|
3. **Plan Task** - Breaks complex tasks into multiple steps
|
|
4. **Call Tools** - Selects appropriate tools to execute each step
|
|
5. **Update Memory** - Stores important information in long-term memory
|
|
6. **Return Result** - Sends execution results back to the user
|
|
|
|
## Workspace
|
|
|
|
The Agent workspace defaults to `~/cow`, storing system prompts, memory files, skill files, etc.:
|
|
|
|
```
|
|
~/cow/
|
|
├── system.md # Agent system prompt
|
|
├── user.md # User profile
|
|
├── memory/ # Long-term memory storage
|
|
│ ├── core.md # Core memory
|
|
│ └── daily/ # Daily memory
|
|
├── skills/ # Custom skills
|
|
│ ├── skill-1/
|
|
│ └── skill-2/
|
|
└── .env # Secret keys for skills
|
|
```
|
|
|
|
## Core Configuration
|
|
|
|
Configure Agent mode parameters in `config.json`:
|
|
|
|
```json
|
|
{
|
|
"agent": true,
|
|
"agent_workspace": "~/cow",
|
|
"agent_max_context_tokens": 40000,
|
|
"agent_max_context_turns": 30,
|
|
"agent_max_steps": 15
|
|
}
|
|
```
|
|
|
|
| Parameter | Description | Default |
|
|
| --- | --- | --- |
|
|
| `agent` | Enable Agent mode | `true` |
|
|
| `agent_workspace` | Workspace path | `~/cow` |
|
|
| `agent_max_context_tokens` | Maximum context tokens | `40000` |
|
|
| `agent_max_context_turns` | Maximum context conversation turns | `30` |
|
|
| `agent_max_steps` | Maximum tool call steps per task | `15` |
|