Source profileQuality 87/100

HKUDS/CLI-Anything/skills/cli-anything-firefly-iii/SKILL.md

cli-anything-firefly-iii

Firefly III CLI - Personal finance management via CLI-Anything

Source repository stars
46,599
Declared platforms
0
Static risk flags
1
Last source update
2026-08-03
Source checked
2026-08-04

Decision brief

What it does—and where it fits

Firefly III command-line interface based on CLI-Anything specification. Converts MCP mode to stateless CLI mode to avoid Node residual process issues.

Best for

    Not for

    • Connection Issues
    • Authentication Issues

    Compatibility matrix

    Platform support, with evidence labels

    PlatformStatusEvidenceWhat to check
    CodexNot declaredNo explicit evidencePortability before use
    Claude CodeNot declaredNo explicit evidencePortability before use
    CursorNot declaredNo explicit evidencePortability before use
    Gemini CLINot declaredNo explicit evidencePortability before use
    Open the compatibility checker

    Installation

    Inspect first. Install second.

    The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

    Source-detected install commandSource
    npx skills add https://github.com/HKUDS/CLI-Anything --skill "skills/cli-anything-firefly-iii"
    Safe inspection promptEditorial

    Inspect the Agent Skill "cli-anything-firefly-iii" from https://github.com/HKUDS/CLI-Anything/blob/39634a640cf20bc603b4faae4d31069c44821a9a/skills/cli-anything-firefly-iii/SKILL.md at commit 39634a640cf20bc603b4faae4d31069c44821a9a. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

    Workflow

    What the source asks the agent to do

    1. 01

      Usage Examples

      Review the “Usage Examples” section in the pinned source before continuing.

      Review and apply the “Usage Examples” source section.
    2. 02

      Basic Usage

      1. Use --json for structured output: All commands support --json flag, returning JSON format data 2. Call info status first to check connection: Confirm Firefly III connection is normal before executing operations 3. Use presets to reduce command count: Filter unnecessary comman…

      Use --json for structured output: All commands support --json flag, returning JSON format dataCall info status first to check connection: Confirm Firefly III connection is normal before executing operationsUse presets to reduce command count: Filter unnecessary commands via --preset
    3. 03

      Installation

      Review the “Installation” section in the pinned source before continuing.

      Review and apply the “Installation” source section.
    4. 04

      Prerequisites

      Python 3.10+

      Python 3.10+Running Firefly III instancePersonal Access Token (PAT)
    5. 05

      Configuration

      Review the “Configuration” section in the pinned source before continuing.

      Review and apply the “Configuration” source section.

    Permission review

    Static risk signals and limitations

    Network access

    medium · line 23

    The documentation includes network, browsing, or remote request actions.

    export FIREFLY_III_BASE_URL="https://firefly.yourdomain.com"

    Network access

    medium · line 30

    The documentation includes network, browsing, or remote request actions.

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

    Evidence record

    Why each signal appears

    EvidenceSourceComputedTestedEditorial
    SignalValueEvidence typeMeaning
    Quality score87/100ComputedDocumentation, specificity, maintenance, and trust rules
    Repository stars46,599SourceRepository attention, not individual Skill quality
    Compatibility0 platformsSourceDeclared in the catalog source record
    Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

    Pinned source

    Provenance and original SKILL.md

    Repository
    HKUDS/CLI-Anything
    Skill path
    skills/cli-anything-firefly-iii/SKILL.md
    Commit
    39634a640cf20bc603b4faae4d31069c44821a9a
    License
    Apache-2.0
    Collected
    2026-08-04
    Default branch
    main
    View the original SKILL.md

    Firefly III CLI

    Firefly III command-line interface based on CLI-Anything specification. Converts MCP mode to stateless CLI mode to avoid Node residual process issues.

    Installation

    pip install cli-anything-firefly-iii
    

    Prerequisites

    • Python 3.10+
    • Running Firefly III instance
    • Personal Access Token (PAT)

    Configuration

    Environment Variables (Recommended)

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

    Command Line Arguments

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

    Command Groups

    Command GroupDescriptionCorresponding API
    accountsAccount management (CRUD)/api/v1/accounts
    transactionsTransaction management (CRUD)/api/v1/transactions
    budgetsBudget management (CRUD + limits)/api/v1/budgets
    categoriesCategory management (CRUD)/api/v1/categories
    tagsTag management (CRUD)/api/v1/tags
    billsBill management (CRUD)/api/v1/bills
    piggy-banksPiggy bank management (CRUD + events)/api/v1/piggy-banks
    autocompleteAutocomplete for various entities/api/v1/autocomplete/*
    currenciesCurrency management (CRUD)/api/v1/currencies
    recurrencesRecurring transaction management (CRUD)/api/v1/recurrences
    rulesRule management (CRUD + test/execute)/api/v1/rules
    rule-groupsRule group management (CRUD + execute)/api/v1/rule-groups
    summaryFinancial summaries/api/v1/summary/*
    webhooksWebhook management (CRUD + trigger)/api/v1/webhooks
    insightsInsights and reports/api/v1/insight/*
    searchSearch/api/v1/search/*
    exportData export/api/v1/data/export/*
    infoSystem information/api/v1/about

    Usage Examples

    Account Management

    # List all accounts
    cli-anything-firefly-iii --json accounts list
    
    # List asset accounts
    cli-anything-firefly-iii --json accounts list --type asset
    
    # Get account details
    cli-anything-firefly-iii --json accounts get --id 123
    
    # Create account
    cli-anything-firefly-iii --json accounts create --name "Cash" --type asset --currency-code USD
    
    # Update account
    cli-anything-firefly-iii --json accounts update --id 123 --name "New Name"
    
    # Delete account
    cli-anything-firefly-iii accounts delete --id 123
    

    Transaction Management

    # List transactions
    cli-anything-firefly-iii --json transactions list --limit 10
    
    # List transactions with date range
    cli-anything-firefly-iii --json transactions list --start 2024-01-01 --end 2024-01-31
    
    # Create transaction
    cli-anything-firefly-iii --json transactions create \
      --description "Grocery" \
      --amount 50.00 \
      --source-account 1 \
      --category "Food"
    
    # Update transaction
    cli-anything-firefly-iii --json transactions update --id 456 --description "Updated"
    
    # Delete transaction
    cli-anything-firefly-iii transactions delete --id 456
    

    Budget Management

    # List budgets
    cli-anything-firefly-iii --json budgets list
    
    # Get budget details
    cli-anything-firefly-iii --json budgets get --id 1
    
    # Create budget
    cli-anything-firefly-iii --json budgets create --name "Monthly Budget"
    
    # Update budget
    cli-anything-firefly-iii --json budgets update --id 1 --name "New Budget Name"
    
    # Delete budget
    cli-anything-firefly-iii budgets delete --id 1
    
    # List budget limits
    cli-anything-firefly-iii --json budgets limits --budget-id 1
    
    # Create budget limit
    cli-anything-firefly-iii --json budgets limit-create --budget-id 1 --amount 1000 --start 2024-01-01 --end 2024-01-31
    
    # Update budget limit
    cli-anything-firefly-iii --json budgets limit-update --id 1 --amount 1500
    
    # Delete budget limit
    cli-anything-firefly-iii budgets limit-delete --id 1
    

    Category Management

    # List categories
    cli-anything-firefly-iii --json categories list
    
    # Get category
    cli-anything-firefly-iii --json categories get --id 1
    
    # Create category
    cli-anything-firefly-iii --json categories create --name "Food"
    
    # Update category
    cli-anything-firefly-iii --json categories update --id 1 --name "Food & Dining"
    
    # Delete category
    cli-anything-firefly-iii categories delete --id 1
    

    Tag Management

    # List tags
    cli-anything-firefly-iii --json tags list
    
    # Get tag
    cli-anything-firefly-iii --json tags get --id "uuid-here"
    
    # Create tag
    cli-anything-firefly-iii --json tags create --tag "important"
    
    # Update tag
    cli-anything-firefly-iii --json tags update --id "uuid-here" --tag "important-updated"
    
    # Delete tag
    cli-anything-firefly-iii tags delete --id "uuid-here"
    

    Bill Management

    # List bills
    cli-anything-firefly-iii --json bills list
    
    # Get bill
    cli-anything-firefly-iii --json bills get --id 1
    
    # Create bill
    cli-anything-firefly-iii --json bills create \
      --name "Netflix" \
      --amount-min 15.99 \
      --amount-max 15.99 \
      --frequency monthly
    
    # Update bill
    cli-anything-firefly-iii --json bills update --id 1 --amount-min 19.99
    
    # Delete bill
    cli-anything-firefly-iii bills delete --id 1
    

    Piggy Bank Management

    # List piggy banks
    cli-anything-firefly-iii --json piggy-banks list
    
    # Get piggy bank
    cli-anything-firefly-iii --json piggy-banks get --id 1
    
    # Create piggy bank
    cli-anything-firefly-iii --json piggy-banks create \
      --name "Vacation Fund" \
      --account-id 1 \
      --target-amount 5000
    
    # Update piggy bank
    cli-anything-firefly-iii --json piggy-banks update --id 1 --name "New Name"
    
    # Delete piggy bank
    cli-anything-firefly-iii piggy-banks delete --id 1
    
    # List piggy bank events
    cli-anything-firefly-iii --json piggy-banks events --id 1
    
    # Add money to piggy bank
    cli-anything-firefly-iii --json piggy-banks add-money --id 1 --amount 100
    

    Autocomplete

    # Autocomplete accounts
    cli-anything-firefly-iii --json autocomplete accounts --query "bank"
    
    # Autocomplete categories
    cli-anything-firefly-iii --json autocomplete categories --query "food"
    
    # Autocomplete tags
    cli-anything-firefly-iii --json autocomplete tags --query "important"
    
    # Autocomplete transactions
    cli-anything-firefly-iii --json autocomplete transactions --query "grocery"
    
    # Autocomplete budgets
    cli-anything-firefly-iii --json autocomplete budgets --query "monthly"
    
    # Autocomplete bills
    cli-anything-firefly-iii --json autocomplete bills --query "netflix"
    
    # Autocomplete piggy banks
    cli-anything-firefly-iii --json autocomplete piggy-banks --query "vacation"
    
    # Autocomplete currencies
    cli-anything-firefly-iii --json autocomplete currencies --query "dollar"
    
    # Autocomplete rules
    cli-anything-firefly-iii --json autocomplete rules --query "auto"
    
    # Autocomplete rule groups
    cli-anything-firefly-iii --json autocomplete rule-groups --query "finances"
    
    # Autocomplete recurring
    cli-anything-firefly-iii --json autocomplete recurring --query "rent"
    
    # Autocomplete object groups
    cli-anything-firefly-iii --json autocomplete object-groups --query "group"
    
    # Autocomplete transaction types
    cli-anything-firefly-iii --json autocomplete transaction-types --query "with"
    

    Currency Management

    # List currencies
    cli-anything-firefly-iii --json currencies list
    
    # Get currency
    cli-anything-firefly-iii --json currencies get --id 1
    
    # Create currency
    cli-anything-firefly-iii --json currencies create \
      --code "CNY" \
      --name "Chinese Yuan" \
      --symbol "¥"
    
    # Update currency
    cli-anything-firefly-iii --json currencies update --id 1 --symbol "元"
    
    # Delete currency
    cli-anything-firefly-iii currencies delete --id 1
    
    # Get exchange rates
    cli-anything-firefly-iii --json currencies exchange-rates --from USD --to EUR
    

    Recurring Transaction Management

    # List recurring transactions
    cli-anything-firefly-iii --json recurrences list
    
    # Get recurring transaction
    cli-anything-firefly-iii --json recurrences get --id 1
    
    # Create recurring transaction
    cli-anything-firefly-iii --json recurrences create \
      --title "Rent Payment" \
      --type withdrawal \
      --amount 1500 \
      --source-account 1 \
      --destination-account 2 \
      --frequency monthly
    
    # Update recurring transaction
    cli-anything-firefly-iii --json recurrences update --id 1 --amount 1600
    
    # Delete recurring transaction
    cli-anything-firefly-iii recurrences delete --id 1
    

    Rule Management

    # List rules
    cli-anything-firefly-iii --json rules list
    
    # Get rule
    cli-anything-firefly-iii --json rules get --id 1
    
    # Create rule
    cli-anything-firefly-iii --json rules create \
      --title "Auto-tag groceries" \
      --trigger "description_contains" \
      --value "grocery" \
      --action set_category \
      --action-value "Food"
    
    # Update rule
    cli-anything-firefly-iii --json rules update --id 1 --title "New Title"
    
    # Delete rule
    cli-anything-firefly-iii rules delete --id 1
    
    # Test rule
    cli-anything-firefly-iii --json rules test --id 1
    
    # Execute rule
    cli-anything-firefly-iii --json rules execute --id 1
    

    Rule Group Management

    # List rule groups
    cli-anything-firefly-iii --json rule-groups list
    
    # Get rule group
    cli-anything-firefly-iii --json rule-groups get --id 1
    
    # Create rule group
    cli-anything-firefly-iii --json rule-groups create --title "Finance Rules"
    
    # Update rule group
    cli-anything-firefly-iii --json rule-groups update --id 1 --title "New Title"
    
    # Delete rule group
    cli-anything-firefly-iii rule-groups delete --id 1
    
    # Execute rule group
    cli-anything-firefly-iii --json rule-groups execute --id 1
    

    Summary Reports

    # Default summary set
    cli-anything-firefly-iii --json summary default-set --start 2024-01-01 --end 2024-01-31
    
    # Account summary
    cli-anything-firefly-iii --json summary account-summary --start 2024-01-01 --end 2024-01-31
    
    # Available budget summary
    cli-anything-firefly-iii --json summary available-budget --start 2024-01-01 --end 2024-01-31
    
    # Bill summary
    cli-anything-firefly-iii --json summary bill-summary --start 2024-01-01 --end 2024-01-31
    
    # Budget summary
    cli-anything-firefly-iii --json summary budget-summary --start 2024-01-01 --end 2024-01-31
    
    # Category summary
    cli-anything-firefly-iii --json summary category-summary --start 2024-01-01 --end 2024-01-31
    
    # Tag summary
    cli-anything-firefly-iii --json summary tag-summary --start 2024-01-01 --end 2024-01-31
    
    # Transfer summary
    cli-anything-firefly-iii --json summary transfer-summary --start 2024-01-01 --end 2024-01-31
    

    Webhook Management

    # List webhooks
    cli-anything-firefly-iii --json webhooks list
    
    # Get webhook
    cli-anything-firefly-iii --json webhooks get --id 1
    
    # Create webhook
    cli-anything-firefly-iii --json webhooks create \
      --title "My Webhook" \
      --trigger create \
      --url "https://example.com/webhook" \
      --secret "my-secret"
    
    # Update webhook
    cli-anything-firefly-iii --json webhooks update --id 1 --title "New Title"
    
    # Delete webhook
    cli-anything-firefly-iii webhooks delete --id 1
    
    # Trigger webhook manually
    cli-anything-firefly-iii --json webhooks trigger --id 1
    

    Insights and Reports

    # Expense report (by category)
    cli-anything-firefly-iii --json insights expense \
      --start 2024-01-01 \
      --end 2024-01-31 \
      --group-by category
    
    # Income report
    cli-anything-firefly-iii --json insights income \
      --start 2024-01-01 \
      --end 2024-01-31
    
    # Transfer insights
    cli-anything-firefly-iii --json insights transfer \
      --start 2024-01-01 \
      --end 2024-01-31
    
    # Account overview
    cli-anything-firefly-iii --json insights overview \
      --start 2024-01-01 \
      --end 2024-01-31
    

    Search

    # Search transactions
    cli-anything-firefly-iii --json search transactions --query "grocery"
    

    Data Export

    # Export transactions
    cli-anything-firefly-iii --json export transactions \
      --start 2024-01-01 \
      --end 2024-01-31
    
    # Export accounts
    cli-anything-firefly-iii --json export accounts
    
    # Export budgets
    cli-anything-firefly-iii --json export budgets
    
    # Export categories
    cli-anything-firefly-iii --json export categories
    

    System Information

    # System information
    cli-anything-firefly-iii --json info about
    
    # Connection status
    cli-anything-firefly-iii info status
    

    Preset Filtering

    Use --preset parameter to filter available commands:

    # Default preset
    cli-anything-firefly-iii --preset default accounts list
    
    # Full preset
    cli-anything-firefly-iii --preset full accounts list
    
    # Budget preset
    cli-anything-firefly-iii --preset budget budgets list
    
    # Reporting preset
    cli-anything-firefly-iii --preset reporting insights expense --start 2024-01-01 --end 2024-01-31
    

    Available presets:

    • default: Core features (accounts, transactions, categories, tags, bills, search)
    • full: All features
    • basic: Basic features (accounts, transactions, categories, tags, search)
    • budget: Budget-related (accounts, budgets, transactions, summary, insight)
    • reporting: Reporting-related (accounts, transactions, categories, insight, summary, search)
    • admin: Admin features (about, configuration, currencies, users, preferences)
    • automation: Automation (rules, recurrences, webhooks, transactions)

    Agent Guidelines

    Basic Usage

    1. Use --json for structured output: All commands support --json flag, returning JSON format data
    2. Call info status first to check connection: Confirm Firefly III connection is normal before executing operations
    3. Use presets to reduce command count: Filter unnecessary commands via --preset

    Common Workflows

    View Account Balances

    # 1. Check connection
    cli-anything-firefly-iii info status
    
    # 2. List asset accounts
    cli-anything-firefly-iii --json accounts list --type asset
    
    # 3. View account details (get balance)
    cli-anything-firefly-iii --json accounts get --id <account_id>
    

    Record Expense

    # 1. Find expense accounts
    cli-anything-firefly-iii --json accounts list --type expense
    
    # 2. Create transaction
    cli-anything-firefly-iii --json transactions create \
      --description "Lunch" \
      --amount 15.50 \
      --source-account <asset_account_id> \
      --destination-account <expense_account_id> \
      --category "Food"
    

    Set Up Recurring Budget

    # 1. Create budget
    cli-anything-firefly-iii --json budgets create --name "Monthly Groceries"
    
    # 2. Set budget limit
    cli-anything-firefly-iii --json budgets limit-create \
      --budget-id <budget_id> \
      --amount 500 \
      --start 2024-01-01 \
      --end 2024-01-31
    

    Create Automation Rule

    # 1. List rule groups
    cli-anything-firefly-iii --json rule-groups list
    
    # 2. Create rule
    cli-anything-firefly-iii --json rules create \
      --title "Auto-tag groceries" \
      --trigger description_contains \
      --value "grocery" \
      --action set_category \
      --action-value "Food"
    
    # 3. Execute rule to apply to existing transactions
    cli-anything-firefly-iii --json rules execute --id <rule_id>
    

    Monthly Financial Report

    # 1. Expense report
    cli-anything-firefly-iii --json insights expense \
      --start 2024-01-01 \
      --end 2024-01-31 \
      --group-by category
    
    # 2. Income report
    cli-anything-firefly-iii --json insights income \
      --start 2024-01-01 \
      --end 2024-01-31
    
    # 3. Budget summary
    cli-anything-firefly-iii --json summary budget-summary \
      --start 2024-01-01 \
      --end 2024-01-31
    
    # 4. Export data
    cli-anything-firefly-iii --json export transactions \
      --start 2024-01-01 \
      --end 2024-01-31
    

    Error Handling

    Common errors and solutions:

    1. Connection failed: Check if FIREFLY_III_BASE_URL is correct
    2. Authentication failed: Check if FIREFLY_III_PAT is valid
    3. Resource not found: Check if ID is correct
    4. Parameter error: Check if required parameters are provided
    5. Validation error: Check API documentation for valid parameter values

    Best Practices

    1. Use environment variables for credentials: Avoid exposing PAT in command line
    2. Use --json for scripting: Facilitates parsing and processing output
    3. Use presets to control permissions: Choose appropriate preset based on scenario
    4. Query before modifying: Avoid accidental operations
    5. Use autocomplete for quick lookups: Great for finding existing entities

    Troubleshooting

    Connection Issues

    Error: Cannot connect to Firefly III instance
    
    • Check if Firefly III instance is running
    • Check network connection
    • Check if base URL is correct

    Authentication Issues

    Error: Authentication failed: Personal Access Token is invalid
    
    • Check if PAT is correct
    • Generate new PAT in Firefly III Options > Profile > OAuth
    • Ensure PAT has not expired

    Parameter Validation Errors

    Error: Request parameter error: [details]
    
    • Check required parameters are provided
    • Verify date formats (YYYY-MM-DD)
    • Verify currency codes (ISO 4217)
    • Verify enum values match allowed choices

    Comparison with MCP Version

    FeatureMCP VersionCLI-Anything Version
    Process LifecycleLong-runningSingle call, immediate exit
    Memory UsageContinuousOn-demand, released after
    CommunicationStdio/SSECommand args + stdout
    State ManagementStatefulStateless
    Preset FilteringSupportedSupported
    JSON OutputBuilt-in--json flag
    Full API CoveragePartialFull API coverage

    API Coverage

    This CLI covers the following Firefly III API endpoints:

    • /api/v1/about - System information
    • /api/v1/accounts - Account management (full CRUD)
    • /api/v1/transactions - Transaction management (full CRUD)
    • /api/v1/budgets - Budget management (full CRUD + limits)
    • /api/v1/categories - Category management (full CRUD)
    • /api/v1/tags - Tag management (full CRUD)
    • /api/v1/bills - Bill management (full CRUD)
    • /api/v1/piggy-banks - Piggy bank management (full CRUD + events)
    • /api/v1/autocomplete/* - All autocomplete endpoints
    • /api/v1/currencies - Currency management (full CRUD)
    • /api/v1/recurrences - Recurring transaction management (full CRUD)
    • /api/v1/rules - Rule management (full CRUD + test/execute)
    • /api/v1/rule-groups - Rule group management (full CRUD + execute)
    • /api/v1/summary/* - Summary endpoints
    • /api/v1/webhooks - Webhook management (full CRUD + trigger)
    • /api/v1/insight/* - Insight endpoints
    • /api/v1/search/* - Search endpoints
    • /api/v1/data/export/* - Export endpoints
    • /api/v1/chart/* - Chart endpoints
    • /api/v1/configuration - Configuration
    • /api/v1/preferences - User preferences
    • /api/v1/available_budgets - Available budgets
    • /api/v1/object-groups - Object groups
    • /api/v1/links - Transaction links
    • /api/v1/attachments - Attachments
    • /api/v1/currency_exchange_rates - Exchange rates
    • /api/v1/data/bulk - Bulk operations
    • /api/v1/user-groups - User groups (read-only)
    • /api/v1/users - User management (admin)

    License

    MIT License