第一次用 OpenClaw,我让它 3 分钟写了个小工具

装好了 OpenClaw,坐在终端前,光标一闪一闪,却不知道该敲什么?

这是很多新手的状态。工具装好了,模型配好了,甚至 help 命令都看过了,但真要让 AI Agent 干活的时候,反而不知道怎么开口。

今天这篇文章,就带你完成第一个真正有用的任务。不需要复杂的概念,不需要读文档,跟着做,3 分钟后你会得到一个能跑的小工具。

我们要做什么?

让 OpenClaw 帮我们写一个命令行待办清单工具(Todo CLI)。

功能很简单:

  • 添加待办:todo add "买牛奶"
  • 查看列表:todo list
  • 标记完成:todo done 1

够简单吧?但这个过程你会亲眼看到 OpenClaw 如何理解需求、创建文件、编写代码、测试运行------一次完整的工作闭环

第一步:打开终端,告诉它你要什么

进入你的工作目录,启动 OpenClaw。然后直接输入这段需求:

帮我写一个 Python 命令行待办事项工具,支持 add、list、done 三个命令,数据存在本地 JSON 文件里。代码要简洁,带基本的错误处理。

注意:不需要写"请""麻烦"这些客套话,直接说需求,像交代同事一样自然。

第二步:看着它自己干活

按下回车后,你会看到终端里开始滚动内容。OpenClaw 不会立刻写代码,它会先拆解任务

复制代码
1. 分析需求:需要命令行参数解析、JSON 持久化、三个子命令
2. 创建项目结构:todo.py 主文件,todo_data.json 数据文件
3. 编写代码
4. 本地测试验证

然后它开始创建文件。你会看到类似这样的输出:

复制代码
[Create] todo.py
[Edit]   todo.py  # 写入代码
[Run]    python todo.py list

这时候不要打断它。Agent 工具和 ChatGPT 不一样,它是在真实操作你的文件系统,中间过程可能在试错、测试、修 bug。给它 30 秒到 1 分钟。

第三步:任务完成,验收成果

当终端恢复可输入状态,说明它干完了。看看你的目录:

复制代码
workspace/
├── todo.py
└── todo_data.json

打开 todo.py,代码大概长这样:

python 复制代码
#!/usr/bin/env python3
import json
import os
import sys

DATA_FILE = "todo_data.json"

def load_todos():
    if not os.path.exists(DATA_FILE):
        return []
    with open(DATA_FILE, "r", encoding="utf-8") as f:
        return json.load(f)

def save_todos(todos):
    with open(DATA_FILE, "w", encoding="utf-8") as f:
        json.dump(todos, f, ensure_ascii=False, indent=2)

def add_todo(text):
    todos = load_todos()
    todos.append({"text": text, "done": False})
    save_todos(todos)
    print(f"已添加: {text}")

def list_todos():
    todos = load_todos()
    if not todos:
        print("暂无待办事项")
        return
    for i, item in enumerate(todos, 1):
        mark = "✓" if item["done"] else " "
        print(f"{i}. [{mark}] {item['text']}")

def done_todo(index):
    todos = load_todos()
    if 1 <= index <= len(todos):
        todos[index-1]["done"] = True
        save_todos(todos)
        print(f"已完成: {todos[index-1]['text']}")
    else:
        print("无效的序号")

def main():
    if len(sys.argv) < 2:
        print("用法: python todo.py [add|list|done] ...")
        return
    
    cmd = sys.argv[1]
    if cmd == "add" and len(sys.argv) >= 3:
        add_todo(sys.argv[2])
    elif cmd == "list":
        list_todos()
    elif cmd == "done" and len(sys.argv) >= 3:
        done_todo(int(sys.argv[2]))
    else:
        print("未知命令")

if __name__ == "__main__":
    main()

来,动手试一把:

bash 复制代码
python todo.py add "晚上写周报"
python todo.py add "预约体检"
python todo.py list
python todo.py done 1
python todo.py list

它真的能跑。

这 3 分钟里,到底发生了什么?

复盘一下刚才的流程,你会更理解 OpenClaw 这类工具的本质:

阶段 它做了什么 你做了什么
理解需求 解析自然语言,提取功能点 写一句需求
规划任务 拆成"建文件-写代码-测试"几步
执行操作 调用文件工具创建、编辑、运行
验证结果 自己跑一遍命令确认能工作 验收

核心区别就在这里 :Copilot 是给你代码建议,Cursor 是编辑器里辅助你,而 OpenClaw 是自己把活干完,从头到尾。

第一次使用,记住这 3 个小技巧

1. 任务要具体,边界要清晰

不要说"帮我写个工具",要说"写一个 Python 命令行工具,支持 add/list/done,数据存 JSON"。需求越清楚,它越不会跑偏。

2. 让它在工作目录里折腾

第一次用,建议专门建个 playground 文件夹,让 OpenClaw 在里面随便操作。这样你不担心它动到重要文件,心理负担小很多。

3. 中途别慌,看日志

如果看到它在反复修改同一段代码,或者报了个错又在继续,别急着 Ctrl+C。Agent 有自我纠错机制,很多时候它自己能搞定。实在卡死了,再手动介入。

下一步可以玩什么?

这个小工具跑通后,你可以试着给它加点难度:

  • "给 todo.py 加上优先级和截止日期"
  • "把它改成一个可以 pip 安装的 Python 包"
  • "用同样的逻辑,写一个记账本工具"

每一次,都是你熟悉 OpenClaw 工作方式的机会。

OpenClaw 这类工具的上手曲线其实很短:说出来 → 等它做 → 验收。难点从来不是操作,而是你敢不敢把第一句话敲下去。

现在,打开你的终端,把那句需求贴进去。3 分钟后,你也会有一个自己"指挥 AI 做出来"的小工具。

相关推荐
KJ_BioMed7 小时前
从PDB到高亲和力分子:De novo生成式计算化学Pipeline剖析
算法·生物医药·生物科研·科研干货·化合物设计
一个王同学8 小时前
从零到一 | CV转多模态大模型 | week17 | LLM 推理优化 & vLLM 详解
人工智能·深度学习·算法·机器学习·计算机视觉·vllm
Hyyy8 小时前
很多Desktop都在上的Computer Use是什么
前端·llm
妙码生花8 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(三十二):增加 admin_rule 模型及数据表迁移
数据库·go·ai编程
还是转转8 小时前
深入认识 Agent - 构建简单的 Agent 框架
ai·agent·函数调用
wenying_443237449 小时前
Python脚本—1.提取压缩包中的pdf文件
python·ai编程
旖-旎9 小时前
《LeetCode 53 最大子数组和 || LeetCode 918 环形子数组的最大和》
c++·算法·leetcode·动态规划
变量未定义~9 小时前
单调栈+倍增思想 皇家守卫【算法赛】、单调队列 附近最小
算法
QN1幻化引擎9 小时前
给 AI 做一次「意识体检」——基于 QN1 幻化引擎的灵鉴意识识别框架与 DalinX V5 实测
大数据·数据结构·人工智能·算法·架构
FantasticPerson9 小时前
30 · 输出样式(Output Styles):换一档「节目」,不换主持人
ai编程