Skip to content

工具概述

TPCLAW 智能体通过工具与世界交互。工具是智能体的能力延伸,让智能体能够感知、行动、学习和进化。

智能体工具能力模型

TPCLAW 将智能体的核心能力抽象为四大原始工具,并通过技能系统扩展专业能力。

能力架构图

能力关系图

四大原始能力

工具能力说明类比
read记忆获取/读取信息,感知世界人类的感官与记忆
write创造创建新内容,生成知识人类的创造力
edit进化修改/改进现有内容,自我迭代人类的学习与成长
bash行动执行命令,与世界交互人类的行动力

技能系统(skill)

工具能力说明类比
skill学习/专长调用预定义技能,获得特定领域专业能力人类的专业技能培训

skill 相当于"学习"或"专长"——智能体通过 skill 工具扩展核心能力,获得特定领域的专业知识,就像人类通过学习获得专业技能一样。

工具分类

内置工具

内置工具是智能体的基础能力,开箱即用:

工具能力说明
read记忆读取文件内容、搜索内容、列出目录
write创造写入内容到文件,支持创建、覆盖、追加
edit进化文件编辑,支持搜索替换、插入删除
bash行动执行 Shell 命令,与系统交互
skill学习调用预定义技能,扩展专业能力
browser-use行动浏览器自动化,网页导航与交互

内置技能

内置技能是预定义的专业能力,通过 skill 工具调用:

技能说明
agent-message智能体消息发送,跨智能体协作
message-send消息发送到 IM 通道(飞书/钉钉/企业微信)
cron-task定时任务管理,周期性自动化操作
feishu-api飞书 API 调用,消息发送、文档操作等

能力详解

记忆(read)

记忆是智能体感知世界的基础:

┌─────────────────────────────────────────────────────────────┐
│                        记忆能力                             │
├─────────────────────────────────────────────────────────────┤
│  • 读取文件内容 - 获取知识                                   │
│  • 搜索文件内容 - 查找信息                                   │
│  • 列出目录结构 - 了解环境                                   │
│  • 获取文件信息 - 感知状态                                   │
└─────────────────────────────────────────────────────────────┘

创造(write)

创造是智能体生成知识的能力:

┌─────────────────────────────────────────────────────────────┐
│                        创造能力                             │
├─────────────────────────────────────────────────────────────┤
│  • 创建新文件 - 生成新知识                                   │
│  • 覆盖现有文件 - 更新知识                                   │
│  • 追加内容 - 扩展知识                                       │
│  • 创建目录结构 - 组织知识                                   │
└─────────────────────────────────────────────────────────────┘

进化(edit)

进化是智能体自我迭代的能力:

┌─────────────────────────────────────────────────────────────┐
│                        进化能力                             │
├─────────────────────────────────────────────────────────────┤
│  • 搜索替换 - 修正错误                                       │
│  • 插入内容 - 添加新知识                                     │
│  • 删除内容 - 移除过时信息                                   │
│  • 撤销操作 - 回滚变更                                       │
└─────────────────────────────────────────────────────────────┘

行动(bash)

行动是智能体与世界交互的能力:

┌─────────────────────────────────────────────────────────────┐
│                        行动能力                             │
├─────────────────────────────────────────────────────────────┤
│  • 执行系统命令 - 操作系统                                   │
│  • 运行脚本 - 自动化任务                                     │
│  • 网络操作 - 访问网络                                       │
│  • 开发工具 - 编译、测试、部署                               │
└─────────────────────────────────────────────────────────────┘

学习(skill)

学习是智能体获得专业能力的方式:

┌─────────────────────────────────────────────────────────────┐
│                        学习能力                             │
├─────────────────────────────────────────────────────────────┤
│  • 调用预定义技能 - 获得专业能力                             │
│  • 执行复杂任务流程 - 处理专业场景                           │
│  • 复用知识和能力 - 知识传承                                 │
│  • 扩展新技能 - 持续学习                                     │
└─────────────────────────────────────────────────────────────┘

工具协作

智能体通过组合使用多个工具完成复杂任务:

┌─────────────────────────────────────────────────────────────┐
│                     工具协作示例                             │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  任务:分析代码并生成报告                                    │
│                                                             │
│  1. [read] 读取代码文件                                      │
│        ↓                                                    │
│  2. [skill] 调用代码分析技能                                 │
│        ↓                                                    │
│  3. [write] 创建报告文件                                     │
│        ↓                                                    │
│  4. [edit] 完善报告内容                                      │
│        ↓                                                    │
│  5. [skill] 发送报告到飞书                                   │
│                                                             │
└─────────────────────────────────────────────────────────────┘

工具配置

工具在智能体配置文件中定义:

yaml
agents:
  main:
    tools:
      # 内置工具
      - type: builtin
        name: read
        config:
          workDir: "${global.root_dir}/workspace"

      - type: builtin
        name: write
        config:
          workDir: "${global.root_dir}/workspace"

      - type: builtin
        name: edit
        config:
          workDir: "${global.root_dir}/workspace"

      - type: builtin
        name: bash
        config:
          workDir: "${global.root_dir}/workspace"
          timeout: 60

      - type: builtin
        name: skill
        config:
          userDirs:
            - "${global.root_dir}/workspace/skills"

      # 内置技能
      - type: builtin
        name: agent-message

      - type: builtin
        name: message-send

      - type: builtin
        name: cron-task

      - type: builtin
        name: feishu-api

自定义工具

TPCLAW 支持通过以下方式扩展工具:

1. 自定义技能

workspace/skills/ 目录创建技能文件:

markdown
---
name: my-skill
description: 自定义技能说明
parameters:
  param1:
    type: string
    required: true
---

# 技能内容

技能执行步骤和说明...

2. 自定义组件

开发自定义工具组件(Go 语言):

go
func NewMyTool() component.Node {
    return &MyTool{}
}

详见 自定义组件

相关文档

基于 Apache-2.0 许可发布