Communitygithub.com

Firefly III CLI

基於 CLI-Anything 規範的 Firefly III 命令列介面,用於個人財務管理。

Firefly III CLI 是什麼?

Firefly III CLI 是一個基於 CLI-Anything 規範的命令列工具,為 Firefly III 個人財務管理系統提供完整的指令列操作能力。它將 MCP 模式轉換為無狀態的 CLI 模式,有效避免 Node.js 殘留進程問題。該工具支援多種操作系統(Linux、macOS、Windows),並透過 pip 輕鬆安裝。透過環境變數或命令列參數配置 Firefly III 實例的 URL 和個人存取權杖 (PAT) 後,開發者即可對帳戶、交易、預算、類別、標籤、帳單、存錢筒等 20 多個資源群組執行 CRUD 操作。此外,還提供自動完成、搜尋、匯出、洞察報表和系統資訊查詢等高階功能。內建的預設過濾機制可精簡可用命令,提升 AI 代理人的操作效率。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/HKUDS/CLI-Anything/tree/main/skills/cli-anything-firefly-iii

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Firefly III CLI 是做什麼的?

基於 CLI-Anything 規範的 Firefly III 命令列介面。將 MCP 模式轉換為無狀態的 CLI 模式,以避免 Node.js 殘留進程問題。

安裝

pip install cli-anything-firefly-iii

先決條件

  • Python 3.10+
  • 正在執行的 Firefly III 實例
  • 個人存取權杖 (PAT)

設定

環境變數(建議)

export FIREFLY_III_BASE_URL="https://firefly.yourdomain.com"
export FIREFLY_III_PAT="your-personal-access-token"

命令列引數

cli-anything-firefly-iii --base-url https://firefly.yourdomain.com --pat your-token

命令群組

命令群組說明對應 API
accounts帳戶管理 (CRUD)/api/v1/accounts
transactions交易管理 (CRUD)/api/v1/transactions
budgets預算管理 (CRUD + 限制)/api/v1/budgets
categories類別管理 (CRUD)/api/v1/categories
tags標籤管理 (CRUD)/api/v1/tags
bills帳單管理 (CRUD)/api/v1/bills
piggy-banks存錢筒管理 (CRUD + 事件)/api/v1/piggy-banks
autocomplete各種實體的自動完成/api/v1/autocomplete/*
currencies貨幣管理 (CRUD)/api/v1/currencies
recurrences週期性交易管理 (CRUD)/api/v1/recurrences
rules規則管理 (CRUD + 測試/執行)/api/v1/rules
rule-groups規則群組管理 (CRUD + 執行)/api/v1/rule-groups
summary財務摘要/api/v1/summary/*
webhooksWebhook 管理 (CRUD + 觸發)/api/v1/webhooks
insights洞察與報表/api/v1/insight/*
search搜尋/api/v1/search/*
export資料匯出/api/v1/data/export/*
info系統資訊/api/v1/about

使用範例

帳戶管理

# 列出所有帳戶
cli-anything-firefly-iii --json accounts list

# 列出資產帳戶
cli-anything-firefly-iii --json accounts list --type asset

# 取得帳戶詳細資訊
cli-anything-firefly-iii --json accounts get --id 123

# 建立帳戶
cli-anything-firefly-iii --json accounts create --name "現金" --type asset --currency-code USD

# 更新帳戶
cli-anything-firefly-iii --json accounts update --id 123 --name "新名稱"

# 刪除帳戶
cli-anything-firefly-iii accounts delete --id 123

交易管理

# 列出交易
cli-anything-firefly-iii --json transactions list --limit 10

# 依日期範圍列出交易
cli-anything-firefly-iii --json transactions list --start 2024-01-01 --end 2024-01-31

# 建立交易
cli-anything-firefly-iii --json transactions create \
  --description "雜貨" \
  --amount 50.00 \
  --source-account 1 \
  --category "食物"

# 更新交易
cli-anything-firefly-iii --json transactions update --id 456 --description "已更新"

# 刪除交易
cli-anything-firefly-iii transactions delete --id 456

預算管理

# 列出預算
cli-anything-firefly-iii --json budgets list

# 取得預算詳細資訊
cli-anything-firefly-iii --json budgets get --id 1

# 建立預算
cli-anything-firefly-iii --json budgets create --name "每月預算"

# 更新預算
cli-anything-firefly-iii --json budgets update --id 1 --name "新預算名稱"

# 刪除預算
cli-anything-firefly-iii budgets delete --id 1

# 列出預算限制
cli-anything-firefly-iii --json budgets limits --budget-id 1

# 建立預算限制
cli-anything-firefly-iii --json budgets limit-create --budget-id 1 --amount 1000 --start 2024-01-01 --end 2024-01-31

# 更新預算限制
cli-anything-firefly-iii --json budgets limit-update --id 1 --amount 1500

# 刪除預算限制
cli-anything-firefly-iii budgets limit-delete --id 1

類別管理

# 列出類別
cli-anything-firefly-iii --json categories list

# 取得類別
cli-anything-firefly-iii --json categories get --id 1

# 建立類別
cli-anything-firefly-iii --json categories create --name "食物"

# 更新類別
cli-anything-firefly-iii --json categories update --id 1 --name "食物與餐飲"

# 刪除類別
cli-anything-firefly-iii categories delete --id 1

標籤管理

# 列出標籤
cli-anything-firefly-iii --json tags list

# 取得標籤
cli-anything-firefly-iii --json tags get --id "uuid-here"

# 建立標籤
cli-anything-firefly-iii --json tags create --tag "重要"

# 更新標籤
cli-anything-firefly-iii --json tags update --id "uuid-here" --tag "重要-已更新"

# 刪除標籤
cli-anything-firefly-iii tags delete --id "uuid-here"

帳單管理

# 列出帳單
cli-anything-firefly-iii --json bills list

# 取得帳單
cli-anything-firefly-iii --json bills get --id 1

# 建立帳單
cli-anything-firefly-iii --json bills create \
  --name "Netflix" \
  --amount-min 15.99 \
  --amount-max 15.99 \
  --frequency monthly

# 更新帳單
cli-anything-firefly-iii --json bills update --id 1 --amount-min 19.99

# 刪除帳單
cli-anything-firefly-iii bills delete --id 1

存錢筒管理

# 列出存錢筒
cli-anything-firefly-iii --json piggy-banks list

# 取得存錢筒
cli-anything-firefly-iii --json piggy-banks get --id 1

# 建立存錢筒
cli-anything-firefly-iii --json piggy-banks create \
  --name "度假基金" \
  --account-id 1 \
  --target-amount 5000

# 更新存錢筒
cli-anything-firefly-iii --json piggy-banks update --id 1 --name "新名稱"

# 刪除存錢筒
cli-anything-firefly-iii piggy-banks delete --id 1

# 列出存錢筒事件
cli-anything-firefly-iii --json piggy-banks events --id 1

# 向存錢筒存入資金
cli-anything-firefly-iii --json piggy-banks add-money --id 1 --amount 100

自動完成

# 自動完成帳戶
cli-anything-firefly-iii --json autocomplete accounts --query "銀行"

# 自動完成類別
cli-anything-firefly-iii --json autocomplete categories --query "食物"

# 自動完成標籤
cli-anything-firefly-iii --json autocomplete tags --query "重要"

# 自動完成交易
cli-anything-firefly-iii --json autocomplete transactions --query "雜貨"

# 自動完成預算
cli-anything-firefly-iii --json autocomplete budgets --query "每月"

# 自動完成帳單
cli-anything-firefly-iii --json autocomplete bills --query "netflix"

# 自動完成存錢筒
cli-anything-firefly-iii --json autocomplete piggy-banks --query "度假"

# 自動完成貨幣
cli-anything-firefly-iii --json autocomplete currencies --query "dollar"

# 自動完成規則
cli-anything-firefly-iii --json autocomplete rules --query "自動"

# 自動完成規則群組
cli-anything-firefly-iii --json autocomplete rule-groups --query "財務"

# 自動完成週期性
cli-anything-firefly-iii --json autocomplete recurring --query "租金"

# 自動完成物件群組
cli-anything-firefly-iii --json autocomplete object-groups --query "群組"

# 自動完成交易類型
cli-anything-firefly-iii --json autocomplete transaction-types --query "with"

貨幣管理

# 列出貨幣
cli-anything-firefly-iii --json currencies list

# 取得貨幣
cli-anything-firefly-iii --json currencies get --id 1

# 建立貨幣
cli-anything-firefly-iii --json currencies create \
  --code "CNY" \
  --name "人民幣" \
  --symbol "¥"

# 更新貨幣
cli-anything-firefly-iii --json currencies update --id 1 --symbol "元"

# 刪除貨幣
cli-anything-firefly-iii currencies delete --id 1

# 取得匯率
cli-anything-firefly-iii --json currencies exchange-rates --from USD --to EUR

週期性交易管理

# 列出週期性交易
cli-anything-firefly-iii --json recurrences list

# 取得週期性交易
cli-anything-firefly-iii --json recurrences get --id 1

# 建立週期性交易
cli-anything-firefly-iii --json recurrences create \
  --title "租金付款" \
  --type withdrawal \
  --amount 1500 \
  --source-account 1 \
  --destination-account 2 \
  --frequency monthly

# 更新週期性交易
cli-anything-firefly-iii --json recurrences update --id 1 --amount 1600

# 刪除週期性交易
cli-anything-firefly-iii recurrences delete --id 1

規則管理

# 列出規則
cli-anything-firefly-iii --json rules list

# 取得規則
cli-anything-firefly-iii --json rules get --id 1

# 建立規則
cli-anything-firefly-iii --json rules create \
  --title "自動標記雜貨" \
  --trigger "description_contains" \
  --value "雜貨" \
  --action set_category \
  --action-value "食物"

# 更新規則
cli-anything-firefly-iii --json rules update --id 1 --title "新標題"

# 刪除規則
cli-anything-firefly-iii rules delete --id 1

# 測試規則
cli-anything-firefly-iii --json rules test --id 1

# 執行規則
cli-anything-firefly-iii --json rules execute --id 1

規則群組管理

# 列出規則群組
cli-anything-firefly-iii --json rule-groups list

# 取得規則群組
cli-anything-firefly-iii --json rule-groups get --id 1

# 建立規則群組
cli-anything-firefly-iii --json rule-groups create --title "財務規則"

# 更新規則群組
cli-anything-firefly-iii --json rule-groups update --id 1 --title "新標題"

# 刪除規則群組
cli-anything-firefly-iii rule-groups delete --id 1

# 執行規則群組
cli-anything-firefly-iii --json rule-groups execute --id 1

摘要報表

# 預設摘要集
cli-anything-firefly-iii --json summary default-set --start 2024-01-01 --end 2024-01-31

# 帳戶摘要
cli-anything-firefly-iii --json summary account-summary --start 2024-01-01 --end 2024-01-31

# 可用預算摘要
cli-anything-firefly-iii --json summary available-budget --start 2024-01-01 --end 2024-01-31

# 帳單摘要
cli-anything-firefly-iii --json summary bill-summary --start 2024-01-01 --end 2024-01-31

# 預算摘要
cli-anything-firefly-iii --json summary budget-summary --start 2024-01-01 --end 2024-01-31

# 類別摘要
cli-anything-firefly-iii --json summary category-summary --start 2024-01-01 --end 2024-01-31

# 標籤摘要
cli-anything-firefly-iii --json summary tag-summary --start 2024-01-01 --end 2024-01-31

# 轉帳摘要
cli-anything-firefly-iii --json summary transfer-summary --start 2024-01-01 --end 2024-01-31

Webhook 管理

# 列出 Webhook
cli-anything-firefly-iii --json webhooks list

# 取得 Webhook
cli-anything-firefly-iii --json webhooks get --id 1

# 建立 Webhook
cli-anything-firefly-iii --json webhooks create \
  --title "我的 Webhook" \
  --trigger create \
  --url "https://example.com/webhook" \
  --secret "my-secret"

# 更新 Webhook
cli-anything-firefly-iii --json webhooks update --id 1 --title "新標題"

# 刪除 Webhook
cli-anything-firefly-iii webhooks delete --id 1

# 手動觸發 Webhook
cli-anything-firefly-iii --json webhooks trigger --id 1

洞察與報表

# 支出報表(按類別)
cli-anything-firefly-iii --json insights expense \
  --start 2024-01-01 \
  --end 2024-01-31 \
  --group-by category

# 收入報表
cli-anything-firefly-iii --json insights income \
  --start 2024-01-01 \
  --end 2024-01-31

# 轉帳洞察
cli-anything-firefly-iii --json insights transfer \
  --start 2024-01-01 \
  --end 2024-01-31

# 帳戶概覽
cli-anything-firefly-iii --json insights overview \
  --start 2024-01-01 \
  --end 2024-01-31

搜尋

# 搜尋交易
cli-anything-firefly-iii --json search transactions --query "雜貨"

資料匯出

# 匯出交易
cli-anything-firefly-iii --json export transactions \
  --start 2024-01-01 \
  --end 2024-01-31

# 匯出帳戶
cli-anything-firefly-iii --json export accounts

# 匯出預算
cli-anything-firefly-iii --json export budgets

# 匯出類別
cli-anything-firefly-iii --json export categories

系統資訊

# 系統資訊
cli-anything-firefly-iii --json info about

# 連線狀態
cli-anything-firefly-iii info status

預設過濾

使用 --preset 參數過濾可用的命令:

# 預設預設
cli-anything-firefly-iii --preset default accounts list

# 完整預設
cli-anything-firefly-iii --preset full accounts list

# 預算預設
cli-anything-firefly-iii --preset budget budgets list

# 報表預設
cli-anything-firefly-iii --preset reporting insights expense --start 2024-01-01 --end 2024-01-31

可用的預設:

  • default:核心功能(帳戶、交易、類別、標籤、帳單、搜尋)
  • full:所有功能
  • basic:基本功能(帳戶、交易、類別、標籤、搜尋)
  • budget:預算相關(帳戶、預算、交易、摘要、洞察)
  • reporting:報表相關(帳戶、交易、類別、洞察、摘要、搜尋)
  • admin:管理員功能(關於、設定、貨幣、使用者、偏好設定)
  • automation:自動化(規則、週期性、Webhook、交易)

代理人指南

基本用法

  1. 使用 --json 取得結構化輸出:所有命令都支援 --json 旗標,回傳 JSON 格式資料
  2. 先呼叫 info status 檢查連線:在執行操作前,先確認 Firefly III 連線正常
  3. 使用預設減少命令數量:透過 --preset 過濾不必要的命令

常見工作流程

檢視帳戶餘額

# 1. 檢查連線
cli-anything-firefly-iii info status

# 2. 列出資產帳戶
cli-anything-firefly-iii --json accounts list --type asset

# 3. 檢視帳戶詳細資訊(取得餘額)
cli-anything-firefly-iii --json accounts get --id <account_id>

記錄支出

# 1. 尋找支出帳戶
cli-anything-firefly-iii --json accounts list --type expense

# 2. 建立交易
cli-anything-fi

…

[為翻譯已截斷]

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

cli-anything-adguardhome

>-

cli-anything-anygen

>-

cli-anything-audacity

>-

cli-anything-blender

>-

cli-anything-browser

Browser automation CLI using DOMShell MCP server. Maps Chrome

cli-anything-calibre

>-

cli-anything-ccswitch

CLI interface for CC Switch — manage AI coding tool configurations from the terminal

cli-anything-chromadb

>-

cli-anything-cloudanalyzer

Command-line interface for CloudAnalyzer — Agent-friendly harness for CloudAnalyzer, a QA platform for mapping, localization, and perception outputs. Supports 27 commands across 8 groups: point cloud evaluation, trajectory evaluation, ground segmentation QA, config-driven quality gates, baseline evolution, processing, visualization, and interactive REPL.

cli-anything-cloudcompare

Command-line interface for CloudCompare — Agent-friendly harness for CloudCompare, the open-source 3D point cloud and mesh processing software. Supports 41 commands across 9 groups: project management, session control, point cloud operations (subsample, filter, segment, analyze), mesh operations, distance computation (C2C, C2M), transformations (ICP, matrix), export (LAS/LAZ/PLY/PCD/OBJ/STL/E57), and interactive REPL.

cli-anything-comfyui

>-

cli-anything-dify-workflow

Wrapper for the Dify workflow DSL CLI. Create, inspect, validate, edit, and export Dify workflow files through a CLI-Anything harness.

cli-anything-drawio

>-

cli-anything-eez-studio

Use EEZ Studio from the command line: inspect and modify native .eez-project files, edit LVGL screens/widgets, manage SCPI commands, and invoke the real EEZ Studio backend for LVGL builds.

cli-anything-eth2-quickstart

>-

cli-anything-exa

>-

cli-anything-freecad

Complete CLI harness for FreeCAD parametric 3D CAD modeler (258 commands). Covers ALL workbenches: Part (29 primitives + boolean + mirror + loft + sweep), Sketcher (26 cmds: geometry + constraints + editing), PartDesign (38 cmds: pad/pocket/groove/fillet/chamfer/patterns/hole/datum), Assembly (11 cmds), Mesh (16 cmds), TechDraw (15 cmds: views + dimensions + PDF/SVG), Draft (33 cmds: 2D shapes + arrays + transforms), FEM (12 cmds), CAM/CNC (10 cmds), Surface (6 cmds), Spreadsheet (7 cmds), Import (13 formats), Export (17 formats), Measure (12 cmds), Materials (21 presets). Headless FreeCAD export to STEP/IGES/STL/OBJ/DXF/PDF/glTF/3MF.

cli-anything-gimp

>-

cli-anything-godot

>-

cli-anything-inkscape

>-

相關技能