数据库安装
- 作者仓库星标 39
- 作者更新于 实时读取
- 作者仓库 awesome-omni-skill
- 领域
- AI 智能
- 兼容 Agent
-
- Claude Code
- Cursor
- Cline
- Codex
- Windsurf
- Gemini CLI
- +20
- 信任分
- 88 / 100 · 社区维护
- 作者 / 版本 / 许可
- @diegosouzapw · 未声明 license
- Token 消耗评级
- 低消耗
- 接入复杂程度
- 需简单配置
- 是否需要外部 API Key
- 需要 · Stripe
- 兼容的系统
- macOS · Linux · Windows
- 底层运行要求
- Node.js
- 文件与系统权限
-
- 只读
- 允许写入 / 修改
- 网络行为
- 允许外网请求
- 安装命令数
- 26 条
档案由构建时根据 SKILL.md 与安装命令自动衍生,可能与作者实际意图存在差异。
需要注意: 未限定 allowed-tools,默认拥有全部工具权限。
---
name: heath-ledger
description: AI bookkeeping agent for Mercury bank accounts. Pulls transactions, categorizes them (rule-based…
category: AI 智能
runtime: Node.js
---
# heath-ledger 输出预览
## PART A: 任务判断
- 适用问题:提示词、Agent 工作流、模型评估或自动化推理。
- 输入要求:目标材料、限制条件、期望输出和验收方式。
- 证据边界:围绕“Quick Start / Setup Flow / Mercury API Key (Required)”读取原文规则,不把推断写成作者承诺。
## PART B: 执行结果
- **01** 任务判断:确认你的需求是否属于提示词、Agent 工作流、模型评估或自动化推理,并标出输入、限制和预期结果。
- **02** 执行计划:优先按“Quick Start / Setup Flow / Mercury API Key (Required)”拆成步骤,说明每一步会读取什么、修改什么、产出什么。
- **03** 交付结果:给出可复制的命令、文件改动、检查清单或内容草稿,并说明如何继续迭代。
- **04** 风险边界:结合 读取文件、写入/修改文件、会按任务需要访问外部网络、需要准备 Stripe API Key 给出执行前确认项。
## Running Rules
- 读取文件、写入/修改文件;会按任务需要访问外部网络;需要准备 Stripe API Key。
- 先小样例验证,再放大到真实任务。
- 交付时同时给结果、检查口径和下一步迭代建议。 原文没有稳定的斜杠命令要求。安装验证后通常全局生效,直接在对话里点名这个 Skill 并描述任务即可。
告诉 Agent 目标文件或材料、期望结果、不可改范围、是否允许联网或执行命令。本 Skill 的权限画像是:读取文件、写入/修改文件。
先用一个小任务确认它会围绕“Quick Start / Setup Flow / Mercury API Key (Required)”工作;涉及文件或命令时,先看 diff、日志、预览或测试结果。
检查最终产物是否包含明确结果、必要证据和下一步动作;如果输出泛泛而谈,就补充输入、边界和验收标准后重跑。
---
name: heath-ledger
description: AI bookkeeping agent for Mercury bank accounts. Pulls transactions, categorizes them (rule-based…
category: AI 智能
source: diegosouzapw/awesome-omni-skill
---
# heath-ledger
## 什么时候使用
- 把 AI / Agent方向的常用动作沉淀成 Agent 可调用的技能 适合处理AI Agent、提示词、模型评估与自动化推理,核心价值是把输入、判断、执行、验证和交付边界固定下来,避免 Agent 泛泛回答。 把任务拆成可执行、可检查…
- 面向提示词、Agent 工作流、模型评估或自动化推理,优先处理能明确输入、步骤和验收标准的工作。
## 需要提供什么
- 目标材料、目录范围、期望结果和不可改动内容。
- 是否允许联网、执行命令、读写文件或调用外部服务。
## 执行规则
- 围绕「Quick Start / Setup Flow / Mercury API Key (Required)」组织步骤,不把推断写成作者事实。
- 读取文件、写入/修改文件;会按任务需要访问外部网络;需要准备 Stripe API Key。
- 先跑小样例,确认结果可检查后再扩大任务范围。
## 输出要求
- 给出最终产物、关键证据、验证方式和下一步动作。
- 信息不足时标记 unknown,不编造命令、平台或依赖。 作者原文负责流程事实;仓库文件负责来源和命令;流狐只补充适用场景、限制和质量判断。
skill "heath-ledger" {
输入层 -> 用户目标 + 目标文件 + 禁止范围 + 验收标准
上下文层 -> Quick Start / Setup Flow / Mercury API Key (Required)
规则层 -> SKILL.md 触发条件 / 执行顺序 / 输出格式
运行层 -> Node.js | 读取文件、写入/修改文件 | 会按任务需要访问外部网络
安全层 -> 需要准备 Stripe API Key + 小任务验证 + diff / 日志复核
输出层 -> 可复制结果 + 检查清单 + 下一步迭代
} Heath Ledger
AI bookkeeping skill for Mercury bank accounts.
Quick Start
scripts/init_db.mjs— creates DB + seeds ~90 universal vendor→category rulesscripts/connect_mercury.sh <MERCURY_API_TOKEN> [entity_name]— discovers accounts- (Optional)
scripts/connect_stripe.sh <entity_id> <stripe_api_key>— connect Stripe for exact revenue + fees - (If Stripe connected)
scripts/pull_stripe_revenue.sh <entity_id> <start_date> <end_date>— pull monthly revenue data scripts/pull_transactions.sh <entity_id> <start_date> <end_date>scripts/categorize.sh <entity_id>— rule-based first, AI for unknowns- Review ambiguous items, correct with
scripts/set_category.sh scripts/generate_books.sh <entity_id> <start_date> <end_date> [output_path]
Setup Flow
Mercury API Key (Required)
Get from Mercury Dashboard → Settings → API Tokens. The token gives read-only access to transactions.
Stripe API Key (Optional but Recommended)
Without Stripe API: Mercury shows net Stripe deposits (revenue minus fees). The system estimates gross revenue using a configurable fee rate (default 2.3% + $0.30).
With Stripe API: You get exact gross revenue, exact fees, and proper refund tracking. Always prefer this when available.
To connect: scripts/connect_stripe.sh <entity_id> <stripe_api_key>
Then pull data: scripts/pull_stripe_revenue.sh <entity_id> <start_date> <end_date>
The P&L generator automatically uses Stripe data when available, falling back to Mercury estimates otherwise.
Entity Settings
Configure per-entity via the entity_settings table:
| Setting | Default | Description |
|---|---|---|
accounting_basis |
accrual |
accrual or cash — cash basis uses posted dates only |
month_offset |
1 |
Fiscal year month offset (1 = calendar year) |
stripe_fee_rate |
0.023 |
Stripe percentage fee for gross-up calculation |
stripe_fee_fixed |
0.30 |
Stripe fixed fee per transaction |
amortization_monthly |
null |
Monthly amortization amount for acquired assets |
Workflow
- Connect Mercury —
scripts/connect_mercury.sh <token> [name]discovers accounts, creates entity - Pull transactions —
scripts/pull_transactions.sh <entity_id> <start_date> <end_date> - Categorize —
scripts/categorize.sh <entity_id> [max_transactions]— rule-based first, then AI for unknowns - Review ambiguous — Script outputs low-confidence items. Ask user, then update with
scripts/set_category.sh <transaction_id> <category> [subcategory] - Generate books —
scripts/generate_books.sh <entity_id> <start_date> <end_date> [output_path]
Scripts Reference
All scripts are in scripts/. Run with bash or node. Database is SQLite at data/heath.db.
| Script | Purpose |
|---|---|
init_db.mjs |
Create/migrate SQLite database + seed rules |
connect_mercury.sh |
Connect Mercury API, discover accounts |
pull_transactions.sh |
Pull transactions for date range |
categorize.sh |
Categorize transactions (rules + AI) |
set_category.sh |
Manually set category for a transaction |
add_rule.sh |
Add/update a categorization rule |
generate_books.sh |
Generate Excel workbook |
list_entities.sh |
List all entities |
connect_stripe.sh |
Connect Stripe API to an entity |
pull_stripe_revenue.sh |
Pull Stripe balance transactions by month |
status.sh |
Show entity status (accounts, tx counts) |
Chart of Accounts
See references/chart-of-accounts.md for the full chart with P&L sections and cash flow classifications.
Learning & Compounding System
Heath Ledger gets smarter over time through a layered rule system:
Rule Hierarchy
- Entity-specific rules (highest priority) — per-company overrides
- Global rules (
entity_id = NULL) — apply to all entities - Seed rules — universal vendor mappings shipped with the skill
- AI categorization — used when no rule matches
How Learning Works
- Every manual correction creates or updates a categorization rule
- Rules track
usage_count— heavily-used rules are more reliable sourcefield tracks provenance:seed,ai,human,manual- Human-confirmed rules get
confidence: 0.95-1.0 - AI-generated rules start at
0.85and can be promoted - Entity-specific rules can be promoted to global when they prove universal
The Compounding Effect
After categorizing 5,000 transactions across 2 entities, the system now auto-categorizes **95%** of transactions without AI. Each new entity benefits from all previous learnings.
Known Limitations
Stripe Net vs Gross (Without Stripe API)
Mercury deposits from Stripe are net amounts (revenue minus ~2.9% + $0.30 fees). Without the Stripe API:
- We estimate gross revenue using configurable fee rates
- This creates "synthetic" Stripe Fee entries
- Accuracy depends on your actual Stripe fee rate (varies by plan, card type, international)
- Solution: Connect Stripe API for exact numbers
Deel Fee Splitting
Deel combines platform fees and contractor payroll in one transaction stream. Pattern:
- Small fixed amounts (~$2-5) → Deel Platform Fee → categorize as "Software expenses"
- Larger variable amounts → Contractor Payroll → categorize as "Wages & Salaries"
- The system learns this pattern but may need initial human guidance
Mercury API Limitations
- Only returns posted transactions (not pending)
- Some counterparty names are truncated or normalized differently
- Wire descriptions may include reference numbers that create duplicate rules
Multi-Currency
- Wise transfers create both a debit (USD) and may show FX fees separately
- International wire fees from Mercury appear as separate line items
- FX gains/losses are not tracked (would need multi-currency ledger)
AI Categorization
The categorize.sh script calls the host agent's model via stdin/stdout JSON protocol. It sends transaction batches and expects category assignments back. The script writes a prompt to stdout that the agent should process and return results for.
When AI confidence < 0.85, transactions are flagged as ambiguous for user review.
Key Details
- Cash or accrual basis — configurable per entity
- Multiple entities supported — each with own connections and rules
- Rules persist — categorization rules saved to SQLite, reused across runs
- Seed rules — ~90 universal vendor mappings loaded on init
- Excel output — 4-tab workbook: P&L, Balance Sheet, Cash Flow, Transaction Detail
先判断是否适合
作者设计意图
作者的方法与取舍
边界和复核