快速入门与配置

CLI 初始化项目

安装完成 OpenClaw 后,使用 CLI 工具初始化一个新项目是最快捷的起步方式。在终端中执行以下命令:

openclaw init my-chatbot

该命令会在当前目录下创建 my-chatbot 文件夹,并自动生成项目骨架代码和默认配置文件。初始化过程中,CLI 会以交互方式询问以下信息:

  1. 项目名称:默认使用输入的目录名
  2. 使用的 AI 模型:可选择 Anthropic Claude 或 OpenAI GPT
  3. 默认平台:可选择 Telegram、Discord 或使用内置 Web Chat
  4. 包管理器:支持 npm、yarn 和 pnpm

回答完这些问题后,项目即创建完成。

项目结构说明

初始化后的项目结构如下:

my-chatbot/
├── openclaw.config.ts      # 主配置文件,配置模型、机器人、插件等
├── bots/                     # 机器人实例目录
│   └── my-bot.ts             # 示例机器人逻辑文件
├── plugins/                  # 自定义插件目录
│   └── hello-world.ts        # 示例插件文件
├── prompts/                  # 提示词模板目录
│   └── system.md             # 系统提示词模板
├── data/                     # 运行时数据目录(会话、日志等)
├── .env                      # 环境变量文件(API Key 等敏感信息)
├── package.json              # 项目依赖配置
├── tsconfig.json             # TypeScript 配置
└── README.md                 # 项目说明文档

各文件/目录的作用如下:

文件/目录作用是否需要手动修改
openclaw.config.ts项目核心配置,定义模型、机器人、通道、插件等
bots/存放机器人行为逻辑文件按需
plugins/存放自定义插件按需
prompts/存放系统提示词和角色模板推荐修改
.env存放 API Key 等敏感环境变量
data/运行时数据存储,由框架自动管理

主配置文件详解

openclaw.config.ts 是 OpenClaw 项目的核心配置文件,几乎所有行为都在这里定义。以下是一个完整的配置示例:

import { defineConfig } from 'openclaw';

export default defineConfig({
  // AI 模型配置
  model: {
    provider: 'anthropic',
    model: 'claude-sonnet-4-20250514',
    apiKey: process.env.ANTHROPIC_API_KEY,
    maxTokens: 4096,
    temperature: 0.7,
  },

  // 机器人实例列表
  bots: [
    {
      name: 'my-assistant',
      platform: 'telegram',
      token: process.env.TELEGRAM_BOT_TOKEN,
      systemPrompt: '你是一个友好的 AI 助手,用中文回答用户的问题。',
      allowGroups: true,
      adminIds: ['123456789'],
    },
  ],

  // 插件配置
  plugins: [
    {
      name: 'logger',
      package: '@openclaw/plugin-logger',
      options: { level: 'info' },
    },
  ],

  // 会话管理
  session: {
    strategy: 'memory',     // 可选: memory | redis | database
    ttl: 1800,              // 会话超时时间(秒)
    maxContext: 20,         // 最大上下文轮数
  },
});

配置项说明:

  • model.provider:大模型提供商,目前支持 anthropicopenai
  • model.model:具体模型名称,如 claude-sonnet-4-20250514gpt-4o
  • model.maxTokens:每次生成的最大 token 数
  • bots[].platform:机器人部署的平台,支持 telegramdiscordwecomlarkdingtalkslack
  • bots[].systemPrompt:系统提示词,定义机器人的角色和行为风格
  • session.strategy:会话存储策略,memory 适合开发,redis 适合生产

配置你的第一个机器人

以下示例配置了一个基于 Claude 模型的 Telegram 客服机器人:

import { defineConfig } from 'openclaw';

export default defineConfig({
  model: {
    provider: 'anthropic',
    model: 'claude-sonnet-4-20250514',
    apiKey: process.env.ANTHROPIC_API_KEY,
  },
  bots: [
    {
      name: 'customer-service',
      platform: 'telegram',
      token: process.env.TELEGRAM_BOT_TOKEN,
      systemPrompt: `你是一家电商公司的客服代表。
你的职责是:解答用户咨询、处理订单问题、提供退换货指导。
请始终保持礼貌和专业,使用中文回复。`,
      temperature: 0.5,
    },
  ],
});

配置完成后,在项目根目录创建 .env 文件填入真实的 API Key:

ANTHROPIC_API_KEY=sk-ant-xxxxxxxxxxxx
TELEGRAM_BOT_TOKEN=7234567890:AAHxxxxxxxxxxxx

启动开发模式

一切准备就绪后,运行以下命令启动开发服务器:

openclaw dev

启动成功后,终端会显示类似以下输出:

[OpenClaw] Development server starting...
[OpenClaw] Model: claude-sonnet-4-20250514 (anthropic)
[OpenClaw] Platform: telegram | Bot: customer-service
[OpenClaw] Web Chat: http://localhost:3000
[OpenClaw] Press Ctrl+C to stop

Web Chat 界面测试

OpenClaw 内置了 Web Chat 界面,方便在开发阶段快速测试。打开浏览器访问 http://localhost:3000,即可看到一个简洁的聊天界面。你可以直接在界面上输入消息,观察机器人的回复效果。Web Chat 模式无需配置任何外部平台,是最快捷的测试方式。

在下一章中,我们将深入了解 OpenClaw 的系统架构和核心概念,帮助你从原理层面理解框架的工作方式。