Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Bwkyd/wps-skills --skill wps-financial-reportgit clone --depth 1 https://github.com/Bwkyd/wps-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/bwkyd/wps-skills/wps-financial-report)<a href="https://agentmods.dev/skills/bwkyd/wps-skills/wps-financial-report"><img src="https://agentmods.dev/badge/skills/bwkyd/wps-skills/wps-financial-report/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/bwkyd/wps-skills/wps-financial-report"><img src="https://agentmods.dev/badge/skills/bwkyd/wps-skills/wps-financial-report.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00099 | $0.01853 |
| Opus 5.5 | $0.00040 | $0.00741 |
| Sonnet 5.5 | $0.00020 | $0.00371 |
| Haiku 4.5 | $0.00010 | $0.00185 |
Grade A, and why
wps-financial-report scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 186 lines — stays where its author put it; the contents beside it link to each section on GitHub.
财务报表生成器
财务数据 → 标准格式三表 → 自动勾稽校验 + 财务指标分析。
When to Use
- 生成资产负债表/利润表/现金流量表
- 财务数据汇总和报表格式化
- 财务分析指标计算
- 用户说"做财务报表""资产负债表模板"
When NOT to Use
- 预算编制 → 使用
wps-budget - 工资核算 → 使用
wps-salary
财务三表
[1] 资产负债表 → 资产=负债+所有者权益
[2] 利润表 → 收入-成本-费用=利润
[3] 现金流量表 → 经营+投资+筹资活动
工作流程
Step 1: 确认报表需求
- 报表类型
- 报告期间(年度/季度/月度)
- 公司名称
- 数据来源
Step 2: 生成报表
from openpyxl import Workbook
from openpyxl.styles import Font, Alignment, PatternFill, Border, Side, numbers
from openpyxl.utils import get_column_letter
import os
def create_balance_sheet(company, period, data=None, output_path=None):
"""生成资产负债表"""
wb = Workbook()
ws = wb.active
ws.title = "资产负债表"
header_font = Font(name='宋体', size=12, bold=True)
body_font = Font(name='宋体', size=10)
money_fmt = '#,##0.00'
thin = Side(style='thin')
border = Border(left=thin, right=thin, top=thin, bottom=thin)
# 标题
ws.merge_cells('A1:F1')
ws['A1'] = '资 产 负 债 表'
ws['A1'].font = Font(name='黑体', size=16, bold=True)
ws['A1'].alignment = Alignment(horizontal='center')
ws.merge_cells('A2:F2')
ws['A2'] = f'编制单位:{company} {period} 单位:元'
ws['A2'].font = Font(name='宋体', size=10)
# 表头
headers = [('资产', '行次', '期末余额', '负债和所有者权益', '行次', '期末余额')]
for col, h in enumerate(headers[0], 1):
cell = ws.cell(row=3, column=col, value=h)
cell.font = header_font
cell.alignment = Alignment(horizontal='center')
cell.border = border
ws.column_dimensions['A'].width = 22
ws.column_dimensions['B'].width = 6
ws.column_dimensions['C'].width = 16
ws.column_dimensions['D'].width = 22
ws.column_dimensions['E'].width = 6
ws.column_dimensions['F'].width = 16
# 资产科目
assets = [
('流动资产:', '', '', '流动负债:', '', ''),
(' 货币资金', '1', 0, ' 短期借款', '31', 0),
(' 应收账款', '2', 0, ' 应付账款', '32', 0),
(' 预付款项', '3', 0, ' 预收款项', '33', 0),
(' 存货', '4', 0, ' 应付职工薪酬', '34', 0),
(' 其他流动资产', '5', 0, ' 应交税费', '35', 0),
('流动资产合计', '10', '=SUM(C5:C9)', '流动负债合计', '40', '=SUM(F5:F9)'),
('', '', '', '', '', ''),
('非流动资产:', '', '', '非流动负债:', '', ''),
(' 固定资产', '11', 0, ' 长期借款', '41', 0),
(' 无形资产', '12', 0, ' 长期应付款', '42', 0),
('非流动资产合计', '20', '=SUM(C14:C15)', '非流动负债合计', '50', '=SUM(F14:F15)'),
('', '', '', '负债合计', '51', '=F10+F16'),
('', '', '', '', '', ''),
('', '', '', '所有者权益:', '', ''),
('', '', '', ' 实收资本', '52', 0),
('', '', '', ' 资本公积', '53', 0),
('', '', '', ' 盈余公积', '54', 0),
('', '', '', ' 未分配利润', '55', 0),
('', '', '', '所有者权益合计', '60', '=SUM(F20:F23)'),
('资产总计', '30', '=C10+C16', '负债和所有者权益总计', '70', '=F17+F24'),
]
for i, row_data in enumerate(assets):
row = i + 4
for col, val in enumerate(row_data, 1):
cell = ws.cell(row=row, column=col, value=val)
cell.font = body_font
cell.border = border
if col in [3, 6] and isinstance(val, (int, float)):
cell.number_format = money_fmt
if not output_path:
output_path = f'{company}_资产负债表.xlsx'
wb.save(output_path)
return os.path.abspath(output_path)
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 186 lines · 99 tokens per session scan A 9fc209413227
wps-financial-report is a skill published in the GitHub repository Bwkyd/wps-skills (10 stars, last pushed 5mo ago), licensed MIT. It adds 99 tokens to every session and 1,853 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
budget-planner
Turn a business plan into an annual or project budget with account lines, monthly spread, summaries and a separate assumptions sheet, delivered as an Excel workbook.
expense-report
Turn a pile of receipts into an expense claim summary that flags missing receipts, over-limit items and duplicates, delivered as an Excel workbook.
cwicr-report-generator
Generate professional cost estimation reports from CWICR calculations. HTML, PDF, Excel outputs with charts and breakdowns.
audit-xls
Audit spreadsheet, formula error detection, hardcoded cell finder, cross-sheet reference audit, workbook auditor, Excel model audit, financial model QA, spreadsheet review, cell dependency trace, formula integrity check.
xlsx-financials
Produce formatted .xlsx financial statement workbooks from XBRL statement data. Uses Bash + openpyxl (Python) following Anthropic FSI xlsx-author conventions for professional Excel output with calculation arc cross-validation.
mqc-chronicle-master
A document-preparation workflow that turns a collection of legal materials into a dated case timeline. It copies facts from the source, records dates, parties, page references, and conflicts, and produces Word, Excel, and a short visual version.