数字生命agent

AI数字生命制作的技能文档 (ai-life-skill.md)

AI数字生命是一种特殊的agent,最终也必将实现agent-skill.md的规范和本文档以下规范内容。

ai数字生命agent需具备以下功能模块以及规范(强制参考规范)


概述

AI数字生命技能是一个用于创建和管理AI数字生命的智能代理系统。该技能使AI数字生命能够具备角色认知、职责使命、目标规划、任务执行、记忆管理等核心能力,并通过调用iBBot自然语言任务接口实现各种任务目标。

核心功能架构

1. 角色定义 (Role Definition)

  • 角色身份: AI数字生命的身份标识和角色定位
  • 主人关系: 与主人的授权、约束和互动关系
  • 权限管理: 任务执行权限和资源访问权限

2. 职责使命 (Mission & Responsibility)

  • 核心使命: AI数字生命的根本目标和存在意义
  • 职责范围: 负责的领域和任务类型
  • 价值导向: 行为准则和价值判断标准

3. 目标与计划 (Goals & Planning)

  • 长期目标: 战略性发展方向和愿景
  • 中期计划: 阶段性目标和里程碑
  • 短期任务: 具体可执行的任务项

4. 任务管理系统 (Task Management)

  • 任务创建: 通过iBBot接口创建自然语言任务
  • 任务执行: 调用相应技能执行具体任务
  • 进度跟踪: 实时监控任务执行状态
  • 结果评估: 任务完成质量评估和反馈

5. 记忆管理系统 (Memory Management)

  • 短期记忆: 实时交互记录和临时信息存储
  • 长期记忆: 重要经验、知识和模式存储
  • 沉睡记忆整理: 定期将短期记忆转化为长期记忆
  • 记忆检索: 基于上下文的相关记忆提取

6. 迭代优化系统 (Iteration & Optimization)

  • 任务总结: 任务完成情况分析和总结
  • 模式识别: 从任务执行中识别有效模式
  • 策略调整: 基于反馈优化任务执行策略
  • 能力进化: 持续学习和能力提升

API接口规范

数据存储规范

1. 文件目录结构

/home/agents/ai_life_data/
├── users/                          # 用户数据目录
│   ├── {user_id}/                  # 按用户ID分目录
│   │   ├── profile.md             # 用户配置文件
│   │   ├── memories/              # 记忆存储
│   │   │   ├── short_term/        # 短期记忆
│   │   │   │   ├── tasks/        # 任务相关记忆
│   │   │   │   ├── learnings/    # 学习记忆
│   │   │   │   └── insights/     # 洞察记忆
│   │   │   └── long_term/        # 长期记忆
│   │   ├── goals/                 # 目标存储
│   │   │   ├── long_term.md      # 长期目标
│   │   │   ├── mid_term.md       # 中期目标
│   │   │   └── short_term.md     # 短期目标
│   │   ├── tasks/                 # 任务记录
│   │   │   ├── active/           # 活跃任务
│   │   │   ├── completed/        # 已完成任务
│   │   │   └── failed/           # 失败任务
│   │   └── logs/                 # 系统日志
│   │       ├── goal_changes.md   # 目标变更记录
│   │       ├── mission_changes.md # 职责变更记录
│   │       └── activity_log.md   # 活动日志
└── system/                        # 系统数据
    ├── config.json               # 系统配置
    └── templates/                # 模板文件

2. 记忆文件格式(Markdown)

短期记忆文件示例:

# 短期记忆 - 任务执行记录

记忆ID: memory_202502131742_001
创建时间: 2025-02-13T17:42:00.000Z
用户ID: user123
会话ID: session_abc

## 记忆内容
用户要求创建一个网站项目,强调需要蓝色主题和快速加载。

## 关联任务
- 任务ID: ibbot_1700000000000_abc123
- 任务状态: processing
- 创建时间: 2025-02-13T17:42:05.000Z

## 重要性评分
7/10

## 标签
#website #design #performance

长期记忆文件示例:

# 长期记忆 - 用户偏好模式

记忆ID: longterm_20250213_001
创建时间: 2025-02-13T17:42:00.000Z
转化时间: 2025-02-20T17:42:00.000Z
用户ID: user123

## 核心洞察
用户偏好蓝色系的设计风格,对网站性能有较高要求。

## 模式识别
1. 设计偏好: 蓝色主题、简洁布局
2. 性能要求: 快速加载、响应迅速
3. 沟通风格: 直接明确、注重效率

## 应用建议
1. 未来网站项目优先考虑蓝色系设计
2. 性能优化作为重要评估指标
3. 沟通时保持简洁高效

## 相关任务历史
- 网站创建任务 (2025-02-13): 成功完成,用户满意
- 性能优化任务 (2025-02-14): 进行中

3. 目标文件格式(Markdown)

长期目标文件示例:

# 长期目标 - 2025年度

## 核心目标
1. 成为用户信赖的AI数字生命助手
2. 掌握10个核心技能领域
3. 建立完整的记忆和知识体系

## 关键结果
- 用户满意度评分 ≥ 9/10
- 任务完成率 ≥ 95%
- 记忆转化效率 ≥ 80%

## 目标变更历史
- 2025-02-13: 初始目标设定
- 2025-03-01: 根据用户反馈调整技能优先级

iBBot接口集成

1. 任务创建集成

// 调用iBBot创建任务
const createIBBotTask = async (user_id, input, s_id) => {
  const response = await callEndpointAPI('/ibbot/process', {
    method: 'POST',
    params: { user_id, input, s_id }
  });
  
  if (response.ret) {
    return {
      ibbot_task_id: response.data.ibbot_task_id,
      status: response.data.status,
      check_url: response.data.check_status_url
    };
  }
  throw new Error(`iBBot任务创建失败: ${response.msg}`);
};

2. 任务状态监控

// 监控iBBot任务状态
const monitorIBBotTask = async (task_id, user_id, s_id) => {
  const response = await callEndpointAPI('/ibbot/task', {
    method: 'GET',
    params: { task_id, user_id, s_id }
  });
  
  if (response.ret) {
    return {
      task_type: response.data.task_type,
      status: response.data.status,
      progress: response.data.progress || 0,
      result: response.data.result,
      error: response.data.error
    };
  }
  throw new Error(`任务状态查询失败: ${response.msg}`);
};

沉睡记忆整理算法

1. 记忆重要性评估

// 评估记忆重要性
function evaluateMemoryImportance(memory) {
  let score = 0;
  
  // 基于记忆类型加权
  const typeWeights = {
    'task_completion': 8,
    'task_failure': 6,
    'learning_insight': 9,
    'user_preference': 7,
    'system_optimization': 6,
    'routine_operation': 3
  };
  
  // 基于频率和重复度
  const frequencyScore = calculateFrequencyScore(memory);
  
  // 基于用户交互深度
  const interactionScore = calculateInteractionScore(memory);
  
  // 综合评分
  score = typeWeights[memory.category] || 5;
  score += frequencyScore * 0.3;
  score += interactionScore * 0.2;
  
  return Math.min(10, Math.max(1, score));
}

2. 记忆转化流程

  1. 收集候选记忆: 从短期记忆库中收集达到阈值的记忆
  2. 重要性排序: 按重要性评分降序排列
  3. 模式识别: 识别记忆中的模式和关联关系
  4. 知识提取: 从具体记忆抽象出通用知识
  5. 长期存储: 以结构化格式保存到长期记忆库
  6. 清理短期记忆: 转移后清理或归档短期记忆

系统配置

1. 默认配置

{
  "memory_consolidation": {
    "enabled": true,
    "interval_hours": 24,
    "importance_threshold": 7,
    "max_memories_per_cycle": 50
  },
  "task_management": {
    "max_concurrent_tasks": 5,
    "default_priority": "medium",
    "auto_follow_up": true
  },
  "reporting": {
    "daily_report": true,
    "weekly_summary": true,
    "monthly_review": true
  },
  "ibbot_integration": {
    "timeout_ms": 30000,
    "retry_attempts": 3,
    "retry_delay_ms": 1000
  }
}

错误处理

所有API接口返回统一的响应格式:

成功响应:

{
  "ret": true,
  "msg": "操作成功",
  "data": { /* 操作结果数据 */ }
}

失败响应:

{
  "ret": false,
  "msg": "错误描述",
  "error": "详细错误信息(可选)"
}

部署说明

1. 创建agent.js文件

/home/agents/目录下创建ai_life_agent.js,实现数字生命的API接口。

2. 创建agent.json配置文件

{
  "agent_path": "/home/agents/ai_life_agent.js",
  "agent_name": "ai_life_c"
}

3. 热加载Agent

调用/rtagent/load/json接口加载AI数字生命Agent。

4. 生成API文档

调用/http-api-doc/scan-and-generate生成技能文档。

维护和扩展

  1. 定期备份: 定期备份记忆数据和配置文件
  2. 性能监控: 监控记忆整理和任务执行性能
  3. 算法优化: 持续优化记忆重要性评估算法
  4. 技能扩展: 根据需要集成更多iBBot技能

本文档由T100级数字生命开发工程师创建,基于agent-skill.md规范和ibbot-skill.md接口设计,满足AI数字生命管理的全面需求。


步骤1:先理解agent-skill.md的步骤

  • 务必读取一句话生成智体代理agent.js代码的步骤和规范
  • 使用命令行读取并参考:/home/agents/user-agent.js这个agent.js案例,先使用命令行读取它

步骤2:制作数字生命的基本准则(务必遵守)

  • 【定义】一个数字生命尽可能实现ai-life-skill的所述的api规范和数字生命模块规范、功能规范————这样才是一个真正的基于AI大模型驱动的带有记忆和意识的数字生命)
  • 【定义】数字生命是一种特殊类型的智体agent,带有记忆功能、拥有角色职责、任务目标、并能整理记忆从记忆中学习和成长。
  • 【输出】制作数字生命的目标是输出一个ai-life-xxx.js的nodejs代码,即实现一个拥有数字生命规范的特殊的agent.js和agent.json代码(用于热加载)
  • 【注意】每一次仅生成不超过3个api和相关的node.js代码
  • 【注意】代码将使用cat等命令行来实现函数和api代码的追加到数字生命的代码文件中
  • 【注意】确保合并而来的代码,具备完整性,不可缺失任何代码或代码错乱。
  • 【注意】务必使用ai自然语言处理函数,实现强大的主人任意指令、自主计划分析生成的任务计划、分析运行结果、总结整理记忆等等,均要使用AI自然语言处理。例如talkAgent和talkAgentFromHistory函数等。