家庭账本管理技能 - 日常记账、人情往来、借款报销
Scanned 9/9/2026
Install to Claude Code
npx -y skills add Lord1Egypt/awesome-skill-forge --skill family-ledger --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Family Ledger?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/lord1egypt-family-ledger)More formats (shields.io, HTML) on the badges page.
---
name: family-ledger
version: 1.0.0
description: 家庭账本管理技能 - 日常记账、人情往来、借款报销
metadata: {"openclaw":{"emoji":"📒","homepage":"","keywords":["账本","记账","家庭账本","收支"],"author":"设计虱"}}
---
# Family Ledger - 家庭账本
记账技能,全家人可以通过不同渠道使用。
---
## 账本文件位置
```
~/.openclaw/workspace/shared/ledger/
├── daily.json # 日常账本
├── social.json # 人情账本
└── borrow.json # 借款报销账本
```
---
## 日常账本 (daily.json)
### 字段
| 字段 | 类型 | 说明 |
|------|------|------|
| date | string | 日期,格式 YYYY-MM-DD |
| type | string | 类型:收入 / 支出 |
| amount | number | 金额 |
| category | string | 类别 |
| recorded_by | string | 记录人:设计虱 / 大脸鱼 |
| house | string | 房屋(可选):军龙苑/保利大都会/东方文创园/洛铜嘉苑/龙锦嘉园 |
| child | string | 孩子(教育类别可选):根据用户设置 |
| note | string | 备注 |
### 类别
支出:餐饮、交通、购物、工资、房租、水电、通讯、医疗、教育、娱乐、房屋维护、其他
收入:工资、奖金、投资、兼职、礼金、其他
### 教育类别特殊处理
当备注中包含教育相关关键词时(书本费、辅导书、辅导班、兴趣班、文具、学费、培训等):
- 自动归类为"教育"
- 新增 child 字段记录是给哪个孩子
**孩子信息初始化**:
- 首次记录教育类费用时,询问用户"家里有几个孩子?他们的昵称是什么?"
- 只有一个孩子 → 默认记录在该孩子名下
- 多个孩子 → 引导用户以后记录时说明是哪个孩子(如"记一笔教育账:200 学而思 给老大")
**当前用户孩子信息**:
- 果果(唯一孩子)
- 家庭关系:大脸鱼是果果的妈妈,大脸鱼记教育账也记到果果名下
### 房屋与类别联动
当备注中包含以下地点时:
- 军龙苑、保利大都会、东方文创园、洛铜嘉苑、龙锦嘉园
- 自动归类为"房屋维护",并在 house 字段记录房屋名
---
## 人情账本 (人情.json)
### 字段
| 字段 | 类型 | 说明 |
|------|------|------|
| date | string | 日期,格式 YYYY-MM-DD |
| type | string | 类型:压岁钱 / 随礼 / 其他 |
| target | string | 给谁(谁收钱) |
| giver | string | 谁给的 |
| giver_child | string | 给出方的孩子名字 |
| amount | number | 金额 |
| note | string | 备注 |
---
## 借款报销账本 (borrow.json)
### 字段
| 字段 | 类型 | 说明 |
|------|------|------|
| date | string | 日期,格式 YYYY-MM-DD |
| type | string | 类型:借款 / 报销 |
| direction | string | 方向:借出 / 借入 / 报销给我 / 我报销 |
| person | string | 相关人 |
| amount | number | 金额 |
| due_date | string | 应还/应报销日期(可选) |
| status | string | 状态:未还 / 已还 / 待报销 / 已报销 |
| note | string | 备注 |
---
## 用户ID映射
飞书用户ID与记录人对应关系:
```
~/.openclaw/workspace/shared/ledger/user-mapping.json
```
文件内容示例:
```json
{
"ou_7d82888fe950c222c78c4ba7e7ec9ab7": "设计虱",
"ou_2d8827e13291607774e7d518d1b5bfe0": "大脸鱼"
}
```
技能自动从消息元数据中读取 sender_id,转换为记录人名称。
---
## 指令格式
### 记一笔账
**自动判断账本类型**:
- 包含"餐饮/交通/购物/工资/房租/水电/通讯/医疗/教育/娱乐/房屋维护" → 日常账
- 包含"压岁钱/随礼/人情" → 人情账
- 包含"借/还/报销" → 借款账
**时间处理**:
- 用户没说时间 → 默认今天(2026-03-22)
- 用户说了时间 → 按用户说的
**示例**:
```
记一笔账:50元 餐饮 午餐(自动使用当天日期)
记一笔账:2026-03-20 500 压岁钱 给儿子 张三 张小明
记一笔账:借出 李四 1000 借钱看病
# 如果用户提到房屋名称,需要确认:
用户:记一笔账:200 军龙苑 物业费
助手:你说的"军龙苑"是房屋名称吗?是否要记录为房屋维护?还有其他房产需要录入吗?
用户:是的,没有了
助手:已记录...
# 如果用户提到教育相关费用,需要确认孩子:
用户:记一笔账:500 学而思
助手:这是教育类费用,请问是给哪个孩子报的?家里有几个孩子,他们的昵称是什么?
用户:一个孩子,小明
助手:已记录,教育-小明...
用户:记一笔账:300 兴趣班
助手:请问是给哪个孩子报的?(之前记录有:小明)
用户:还是小明
助手:已记录,教育-小明...
```
### 查询记录
```
查日常账 [时间]
例如:查日常账 2026年3月
```
```
查人情账 [时间]
例如:查人情账 今年
```
```
查借款账 [状态]
例如:查借款账 未还
```
### 统计汇总
```
统计日常账 [时间] [类别]
例如:统计日常账 2026年3月 餐饮
```
```
统计人情账 [时间]
例如:统计人情账 今年
```
```
统计借款账
例如:统计借款账
```
---
## 实现方式
通过读写 JSON 文件实现。
- 读:使用 read 工具读取 JSON 文件
- 写:使用 write 工具覆盖写入 JSON 文件(追加记录时先读后写)
---
## 注意事项
1. 日期格式统一为 YYYY-MM-DD
2. 金额为数字,单位 元
3. 状态更新需要明确说明
4. 查询时支持模糊匹配(如查询"彤彤家"会匹配包含"彤彤"的记录)
5. **时间默认值**:用户未指定日期时,自动使用当前日期(动态获取)
6. **账本类型自动判断**:
- 日常类关键词(餐饮/交通/购物/工资/房租/水电/通讯/医疗/教育/娱乐/房屋维护)→ 日常账
- 人情类关键词(压岁钱/随礼/人情)→ 人情账
- 借款类关键词(借/还/报销)→ 借款账
7. **房屋名称确认**:当用户提到的内容可能包含房屋名称(军龙苑/保利大都会/东方文创园/洛铜嘉苑/龙锦嘉园)时,询问用户确认后再记录。确认后可询问:"还有其他房产需要录入吗?"
- 首次确认后,后续自动识别为房屋名称,无需再确认
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!