--- title: Architecture description: CowAgent 2.0 system architecture and core design --- CowAgent 2.0 has evolved from a simple chatbot into a super intelligent assistant with Agent architecture, featuring autonomous thinking, task planning, long-term memory, and skill extensibility. ## System Architecture CowAgent's architecture consists of the following core modules: CowAgent Architecture ### Core Modules | Module | Description | | --- | --- | | **Channels** | Message channel layer for receiving and sending messages. Supports Web, Feishu, DingTalk, WeCom, WeChat Official Account, and more | | **Agent Core** | Agent engine including task planning, memory system, and skills engine | | **Tools** | Tool layer for Agent to access OS resources. 10+ built-in tools | | **Models** | Model layer with unified access to mainstream LLMs | ## Agent Mode Workflow When Agent mode is enabled, CowAgent runs as an autonomous agent with the following workflow: 1. **Receive Message** — Receive user input through channels 2. **Understand Intent** — Analyze task requirements and context 3. **Plan Task** — Break complex tasks into multiple steps 4. **Invoke Tools** — Select and execute appropriate tools for each step 5. **Update Memory** — Store important information in long-term memory 6. **Return Result** — Send execution results back to the user ## Workspace Directory Structure The Agent workspace is located at `~/cow` by default and stores system prompts, memory files, and skill files: ``` ~/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/ ``` Secret keys are stored separately in `~/.cow` directory for security: ``` ~/.cow/ └── .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` | Max context tokens | `40000` | | `agent_max_context_turns` | Max context turns | `30` | | `agent_max_steps` | Max decision steps per task | `15` |