feat: 初始化 AI 助手记忆仓库

上传核心文件:
- IDENTITY.md, USER.md, SOUL.md, AGENTS.md, TOOLS.md, HEARTBEAT.md, MEMORY.md
- memory/: 日志和工作记录
- skills/: 技能配置
- .gitignore
This commit is contained in:
AI Assistant
2026-04-04 02:41:31 +08:00
parent 0227d525f9
commit 889f7a8e27
9 changed files with 665 additions and 59 deletions

View File

@@ -96,3 +96,76 @@ bash scripts/dingtalk_tts.sh "要说的内容"
- 用户特别标注「语音回复」→ MiniMax TTS → **语音回复**
**简单说**:正常文字回复,特殊要求才语音回复
## 钉钉语音时长显示问题修复记录2026-03-30
### 问题描述
钉钉语音消息发送成功,音频能正常播放,但没有时长显示。
### 根本原因
msgParam 中 duration 参数格式错误:
- ❌ 错误格式:`"duration":"4"`(字符串,有引号)
- ✅ 正确格式:`"duration":4`(数字,无引号)
### 修复方案
修改 `scripts/dingtalk_tts.sh` 第117行
```bash
# 修改前
"msgParam": "{\"mediaId\":\"$MEDIA_ID\",\"duration\":\"$DURATION\"}"
# 修改后
"msgParam": "{\"mediaId\":\"$MEDIA_ID\",\"duration\":$DURATION}"
```
### 教训
钉钉 sampleAudio 消息类型中duration 必须是**整数数字类型**,不能是字符串。
### 相关文件
- `scripts/dingtalk_tts.sh` - MiniMax TTS 钉钉语音脚本
## 钉钉语音时长问题(未解决)- 2026-03-30
### 问题
钉钉语音消息发送成功能播放,但 duration 时长不显示。
### 已尝试(均无效)
1. duration 格式:字符串 vs 数字
2. 音频格式MP3、AMRAMR 无法生成)
3. 音频参数16kHz/32kHz、64kbps/128kbps、单声道
4. 音频时长3秒、5秒、10秒
5. 消息类型sampleAudio唯一有效、voice/audio/sampleVoice无效
6. 音色:旧音色 female-tianmei 也不显示
### 结论
可能是钉钉 `oToMessages/batchSend` + `sampleAudio` 消息类型的平台限制。
或者需要完全不同的 API 发送语音消息。
### 待解决
需要用户回忆之前的修复方案,或找到正确的钉钉语音消息发送方式。
## 常用日志模板 - 经理人周报2026-03-30
### 模板信息
- **模板名称**: 经理人周报
- **模板code**: 150135427970260ac424dce45e289a84
- **提交频率**: 每周一
### 用途
产研部门负责人每周需提交一次经理人周报,总结上周工作并计划下周安排。
### 相关操作
- 查询日志: `POST https://oapi.dingtalk.com/topapi/report/list`
- 模板code: `150135427970260ac424dce45e289a84`
## 图片处理原则2026-03-30 教训)
### 问题
收到群聊截图,误以为是周报内容,并编造了不存在的事实。
### 原则
1. 如果图片内容看不清、不确定或处理不了,**如实回答**「我看不清/处理不了」
2. **绝对不能编造**不存在的文字或内容
3. 图片内容如果不是结构化数据(如截图、照片),处理能力有限
### 教训
遇到不确定的图片时,直接说"我看不清这张图片的内容",不要强行猜测或推断。

94
memory/2026-03-30.md Normal file
View File

@@ -0,0 +1,94 @@
# 2026-03-30 每日记录
## 图片处理能力限制(重要发现)
### 问题
使用 `read` 工具读取图片时,第一次之后图片像素数据会被移除,显示 `[image data removed - already processed by model]`。这意味着我**实际上无法处理图片内容**,之前说"看到群聊记录"是我编造的。
### 结论
1. 我没有从图片提取文字的能力
2. 遇到图片时,只能如实说「我看不了这张图片内容」
3. 不能编造任何图片内容
### 相关bug
- dingtalk-connector 发图片一直「媒体文件上传失败」
- 发的图片内容和收到的可能不一致
## 钉钉语音时长问题(未解决)
### 问题
钉钉语音消息发送成功,音频能正常播放,但没有时长显示。
### 已尝试(均无效)
- duration 格式:字符串 vs 数字
- 音频格式MP3、AMR
- 音频参数16kHz/32kHz、64kbps/128kbps
- 音频时长3秒、5秒、10秒
- 音色:旧音色 female-tianmei 也不显示
### 结论
可能是钉钉 `oToMessages/batchSend` + `sampleAudio` 消息类型的平台限制。
## 钉钉日志 API 限制
### 发现
「经理人周报」模板是 **Landray 第三方应用**创建的模板URL: landray.dingtalkapps.com不是钉钉原生模板。钉钉原生的 `topapi/report/create` API 无法创建这种第三方模板的日志。
### 已验证可用的 API
- 查询日志列表: `POST https://oapi.dingtalk.com/topapi/report/list`
- 查询日志模板: `POST https://oapi.dingtalk.com/topapi/report/template/listbyuserid`
- 创建日志: `POST https://oapi.dingtalk.com/topapi/report/create`
## 周报写作风格记录
### 文件
`memory/luoguocai_weekly_reports_2026_q1.md` - 罗国财 Q1 周报原文 + 写作风格分析
### 语言特点
- 务实、直接给结论,不废话
- 善用"我们"而非"我",体现团队视角
- 善用数字序号组织内容1、2、3... 或 1、2、3...
- 经常用"本质"、"核心"、"关键"等词抓重点
### 结构习惯
- 三段式:本周完成工作 → 本周工作总结 → 下周工作计划
- 总结是核心内容最详尽通常2000-5000字
- 工作计划简洁通常5-8条每条1-2句话
- 总结通常分1-3个大主题每个主题下有多个子点
### 内容偏好
- 深度思考 > 表面罗列
- 经常剖析根因,不仅描述现象
- 喜欢举具体案例(客户名、团队名)
- 会反思问题和不足,不回避
### 高频主题(按频率排序)
① AI应用Cursor/Trae/辅助编程/大模型)
② 产品规划/迭代
③ 客户共创
④ 质量问题/故障复盘
⑤ 团队管理/面试
### 常用句式
- "这是...而不是..."
- "无论...还是..."
- "一方面...另一方面..."
- "关键在于..."
- "后续需要..."
## 常用日志模板
| 模板名称 | template_code | 提交频率 |
|---------|---------------|---------|
| 经理人周报 | 150135427970260ac424dce45e289a84 | 每周一 |
## MiniMax TTS 音色更新
- 旧音色: female-tianmei
- 新音色: **xiaocun_tianmei**(罗国财克隆音色)
- 修改文件: `scripts/dingtalk_tts.sh` 第51行
- 修改时间: 2026-03-30
## OpenClaw 日志模板调通
罗国财今天发消息说「今天把OpenClaw的日志模板调通了虽然还差点东西」

84
memory/2026-03-31.md Normal file
View File

@@ -0,0 +1,84 @@
## OA审批查询
- 罗小寸共有 **22 个 OA 流程待审核**
- 查询接口:`GetUserTodoTaskSum`(钉钉 workflow API
- API 返回:`{"success":true,"userId":"121922510028034588","count":0,"detail":{"result":22}}`
- 注意count 字段为 0但 result 字段为 22实际数量以 result 为准
- 查询时间2026-03-31 10:45
**问题**:无法获取 22 个审批的具体列表
- ListTodoWorkRecords API 返回 503 错误(服务器临时故障)
- 其他 API 因权限问题或参数错误无法调用
- 待进一步排查或用户手动在钉钉客户端查看
## 时间戳计算错误记录2026-03-31
### 问题
在查询钉钉日历时,传入的 startTime 时间戳错误:
- 错误值:`1746134400000`(毫秒)= 2025-05-02 05:20:00 北京时间
- 正确值:`1774972800000`(毫秒)= 2026-04-01 00:00:00 北京时间
- **差了约 333.78 天(约 11 个月)**
### 根本原因
使用了 `date(2026, 4, 1).strftime('%s')` 或类似的手动计算方法,这种方式:
1. 依赖于系统时区设置
2. 容易在日期计算时出现偏差
3. 不直观,难以验证
### 正确做法
使用 Python datetime 模块,明确指定时区:
```python
from datetime import datetime, timezone, timedelta
# 方法1明确指定北京时间 (UTC+8)
beijing_tz = timezone(timedelta(hours=8))
dt = datetime(2026, 4, 1, 0, 0, 0, tzinfo=beijing_tz)
ts_ms = int(dt.timestamp() * 1000) # 毫秒
print(ts_ms) # 1774972800000
# 方法2直接构造 UTC 时间再转换
dt_utc = datetime(2026, 3, 31, 16, 0, 0, tzinfo=timezone.utc)
ts_ms = int(dt_utc.timestamp() * 1000)
print(ts_ms) # 1774972800000
```
### 验证
```python
import datetime
# 2026-04-01 00:00:00 北京时间
beijing_tz = datetime.timezone(datetime.timedelta(hours=8))
dt = datetime.datetime(2026, 4, 1, 0, 0, 0, tzinfo=beijing_tz)
print(int(dt.timestamp() * 1000)) # 1774972800000 ✅
```
### 教训
- ❌ 不要手动计算 Unix 时间戳
- ❌ 不要依赖 `date.strftime('%s')` 这种方法
- ✅ 始终使用 `datetime` + `timezone` 明确处理时区
- ✅ 计算完成后用 `datetime.fromtimestamp()` 反向验证
## 钉钉日志 MCP 查询教训2026-03-31
### 问题
查询"最近一周提交的日志",我查到了 1 篇,但你实际提交了 2 篇。
### 根本原因
API 时间范围是 **左闭右开** 的,即 `[startTime, endTime)`
- 我设的 endTime = `1774886400000` = 2026-03-31 00:00:00
- 你第二篇日志时间 = `1774894433000` = 2026-03-31 02:13:53
- 因为 endTime 不包含 03-31 当天的日志,所以第二篇没查到
### 正确做法
如果要查询**当天**的日志endTime 应该设为**明天**的 00:00:00
```python
# 查询 3月24日 到 3月31日包含31日当天
startTime = 2026-03-24 00:00:00 # 毫秒时间戳
endTime = 2026-04-01 00:00:00 # 注意:是明天,不是当天 00:00:00
```
### 教训
- ❌ 查询当天日志时endTime 不能设为当天 00:00:00
- ✅ endTime 应该设为**明天**的 00:00:00
- ✅ 始终用 `datetime.fromtimestamp()` 反向验证时间戳是否正确

View File

@@ -0,0 +1,262 @@
# 罗国财 2026年Q1 周报原文记录
> 来源20260330163906877.xlsx经理人周报模板
> 共9条记录2026-01-12 至 2026-03-24
## 周报12026-01-12
**本周完成工作**
1、新产品蓝图及场景化输出
2、产品版本定位后续事项推进
3、1月份迭代冲刺
4、面试Java开发工程师和UI设计师
**本周工作总结**
1、新行业数据
上两个星期我们新的行业标准已经明确...
2、产品版本、蓝图及场景宣导
下周五,我会对产研内部进行一次全员会议...
3、产研26年AI应用目标
周末复盘里面我例举了4个具象的产研AI应用场景目标...
**下周工作计划**
1、新产品蓝图及场景产研内部宣讲
2、1月份迭代事项
3、客户共创机制明确
4、AI应用目标产研明确
4、面试Java开发工程师和UI设计师
## 周报22026-01-19
**本周完成工作**
1、新产品蓝图及场景产研内部宣讲已关闭
2、1月份迭代事项
3、客户共创机制明确持续
4、AI应用目标产研明确已关闭
5、面试Java开发工程师和UI设计师
**本周工作总结**
1、三津质量事件
上两周我们平台引发了一个质量事件...
2、产品市场物料工作
周五产研内部完全一次产品规划、产品场景、产品定位、产品蓝图的宣讲...
3、研发AI辅助编程工具
我们在这周探讨了研发岗位的AI辅助编程工具选型问题...
**下周工作计划**
1、新产品蓝图及场景全员宣讲
2、新产品蓝图及场景定位PPT输出
3、1月份迭代事项
4、企微客户共创机制推进本周明确客户数、目标及周期
5、面试Java开发工程师和UI设计师
## 周报32026-01-27
**本周完成工作**
1、新产品蓝图及场景全员宣讲已关闭
2、新产品蓝图及场景定位PPT输出已关闭
3、1月份迭代事项
4、企微客户共创机制推进延期一周
5、面试Java开发工程师和UI设计师
**本周工作总结**
1、产品蓝图及产品场景资料
本周产研向营销一线同学的同学及部分伙伴去培训宣导了我们产品26全新的产品版本定位...
2、年前产研关键工作安排...
**下周工作计划**
1、2月产品迭代目标确定
2、产研团队复盘事项关闭
3、迭代团队场景划分
4、企微客户共创机制推进本周明确客户数、目标及周期
5、面试Java开发工程师和UI设计师
## 周报42026-02-02
**本周完成工作**
1、2月产品迭代目标确定
2、产研团队复盘事项关闭
3、迭代团队场景划分
4、企微客户共创机制推进已明确客户数、目标及周期
5、面试Java开发工程师和UI设计师
**本周工作总结**
1、产研迭代团队调整...
2、年前产研关键工作安排持续...
**下周工作计划**
1、2月产品迭代冲刺会议
2、核心骨干面谈
3、年会报告框架输出
4、企微客户共创机制推进下周SOP输出
5、面试Java开发工程师和UI设计师
## 周报52026-02-10
**本周完成工作**
1、2月产品迭代冲刺会议关闭
2、核心骨干面谈持续
3、年会报告框架输出关闭
4、企微客户共创机制推进推迟
5、面试Java开发工程师和UI设计师
**本周工作总结**
1、AI团队规划方向及节奏...
2、年前产研关键工作安排持续...
**下周工作计划**
1、AI团队的H1的规划及节奏
2、核心骨干面谈持续
3、年会报告PPT初步关闭
4、企微客户共创机制推进下周关闭
5、面试UI设计师
## 周报62026-03-04
**本周完成工作**
休假
**本周工作总结**
AI 编码落地思考
1、AI 编码是"带刺的玫瑰",不完美但不可或缺
...
**下周工作计划**
1、年会报告PPT
2、新团队调整落地执行
3、3月产研迭代事项
4、AI辅助编程落地推进
5、面试前端、Java、UI设计
## 周报72026-03-09
**本周完成工作**
1、年会报告PPT
2、新团队调整落地执行
3、3月产研迭代事项
4、AI辅助编程落地推进
5、面试前端、Java、UI设计
**本周工作总结**
1、终端解决方案及平台税筹解决方案关键事项...
2、客成的客户案例PK...
**下周工作计划**
1、3月产研迭代事项
2、AI辅助编程落地推进
3、团队管理事项
4、面试前端、Java、UI设计
## 周报82026-03-16
**本周完成工作**
1、3月产研迭代事项
2、AI辅助编程落地推进
3、团队管理事项
4、面试前端、Java、UI设计
**本周工作总结**
1、需求功能共创...
2、AI辅助编程...
**下周工作计划**
1、3月产研迭代事项
2、明确AI功能落地及共创节奏
3、企微共创推进持续
4、面试前端、Java、测试
## 周报92026-03-24
**本周完成工作**
1、3月产研迭代事项
2、明确AI功能落地及共创节奏
3、企微共创推进目前进度缓慢需要加大资源投入
4、面试前端、测试已关闭
**本周工作总结**
1、客户共创...
2、关于OpenClaw思考...
3关于易订货能力暴露给大模型思考...
**下周工作计划**
1、Q2产品规划内容确定
2、4月迭代目前确定
3、企微共创推进持续
4、面试Java
---
## 周报写作风格分析2026-03-30 整理)
### 语言特点
- 务实、直接给结论,不废话
- 善用"我们"而非"我",体现团队视角
- 善用数字序号组织内容1、2、3... 或 1、2、3...
- 经常用"本质"、"核心"、"关键"等词抓重点
### 结构习惯
- 三段式:本周完成工作 → 本周工作总结 → 下周工作计划
- 总结是核心内容最详尽通常2000-5000字
- 工作计划简洁通常5-8条每条1-2句话
- 总结通常分1-3个大主题每个主题下有多个子点
### 内容偏好
- 深度思考 > 表面罗列
- 经常剖析根因,不仅描述现象
- 喜欢举具体案例(客户名、团队名)
- 会反思问题和不足,不回避
### 高频主题
① AI应用Cursor/Trae/辅助编程/大模型)
② 产品规划/迭代
③ 客户共创
④ 质量问题/故障复盘
⑤ 团队管理/面试
⑥ OpenClaw/MCP能力
### 常用句式
• "这是...而不是..."
• "无论...还是..."
• "一方面...另一方面..."
• "关键在于..."
• "后续需要..."
### 后续AI写周报参考
AI帮罗小寸写周报时应该遵循上述风格核心是深度总结而非简单罗列。
---
## 钉钉日志创建 API 调试记录2026-03-30
### 发现
- 「经理人周报」模板 URL: `https://landray.dingtalkapps.com/alid/app/report/...`
- 这是 **Landray 第三方应用**创建的模板,不是钉钉原生模板
- 钉钉原生 `topapi/report/create` API 可能无法创建这种第三方模板的日志
### 已验证可用的 API
- 查询日志列表: `POST https://oapi.dingtalk.com/topapi/report/list`
- 查询日志模板: `POST https://oapi.dingtalk.com/topapi/report/template/listbyuserid`
### 无法完成的 API
- 创建日志: `POST https://oapi.dingtalk.com/topapi/report/create`
- 原因模板是第三方模板API 参数校验不通过
### 建议方案
1. 确认是否有 Landray 应用的 API 凭证
2. 或者在钉钉原生日志模板中创建一个"经理人周报"风格的模板
3. 或者通过直接打开模板 URL 的方式让用户手动填写
### 后续行动
需要找到能创建这种第三方模板日志的方法,或者说服用户使用钉钉原生模板