Compound
Calculate compound interest and investment growth using financial formulas. Use when you need to plan savings, compare rates, or project wealth.
Like a lobster shell, security has layers — review code before you run it.
License
SKILL.md
Compound — Compound Interest Calculator
Compound is a command-line compound interest calculator that helps you plan investments, compare interest rates, build amortization schedules, and project financial growth over time.
All calculation history is stored in ~/.compound/data.jsonl as JSONL records for future reference and comparison.
Prerequisites
- Python 3.8+ with standard library
bashshell
Commands
calculate
Calculate compound interest for a given principal, rate, and time period.
Environment Variables:
PRINCIPAL(required) — Initial investment amountRATE(required) — Annual interest rate as percentage (e.g., 5.5)YEARS(required) — Number of yearsFREQUENCY— Compounding frequency:daily,monthly,quarterly,annually(default: monthly)CONTRIBUTION— Regular contribution amount (default: 0)CONTRIB_FREQ— Contribution frequency:monthly,quarterly,annually(default: monthly)
Example:
PRINCIPAL=10000 RATE=7.5 YEARS=20 FREQUENCY=monthly bash scripts/script.sh calculate
compare
Compare multiple interest rate or compounding frequency scenarios side by side.
Environment Variables:
PRINCIPAL(required) — Initial investment amountRATES(required) — Comma-separated list of rates to compare (e.g., "3,5,7,10")YEARS(required) — Number of yearsFREQUENCY— Compounding frequency (default: monthly)
schedule
Generate a detailed payment/growth schedule showing balances at each period.
Environment Variables:
PRINCIPAL(required) — Initial investment amountRATE(required) — Annual interest rate as percentageYEARS(required) — Number of yearsFREQUENCY— Compounding frequency (default: monthly)CONTRIBUTION— Regular contribution amount (default: 0)
table
Display a year-by-year summary table of investment growth.
Environment Variables:
PRINCIPAL(required) — Initial investment amountRATE(required) — Annual interest rateYEARS(required) — Number of yearsCONTRIBUTION— Regular contribution (default: 0)
rate
Calculate the required interest rate to reach a financial goal.
Environment Variables:
PRINCIPAL(required) — Starting amountTARGET(required) — Target amountYEARS(required) — Time period in yearsFREQUENCY— Compounding frequency (default: monthly)
goal
Calculate how long it takes to reach a savings goal.
Environment Variables:
PRINCIPAL(required) — Starting amountTARGET(required) — Goal amountRATE(required) — Annual interest rateCONTRIBUTION— Regular contribution (default: 0)
chart
Generate an ASCII chart of investment growth over time.
Environment Variables:
PRINCIPAL(required) — Initial amountRATE(required) — Annual interest rateYEARS(required) — Number of yearsWIDTH— Chart width in characters (default: 60)HEIGHT— Chart height in lines (default: 20)
export
Export calculation history to a file.
Environment Variables:
OUTPUT— Output file path (default: stdout)FORMAT— Export format:json,csv,jsonl(default: json)CALC_ID— Specific calculation ID to export (default: all)
config
View or update default configuration settings.
Environment Variables:
KEY— Configuration key to setVALUE— Configuration value
history
View past calculations with their results.
Environment Variables:
LIMIT— Maximum entries to display (default: 20)SORT— Sort by:date,principal,rate,total(default: date)
help
Display usage information and available commands.
version
Display the current version of the compound tool.
Data Storage
All calculations are stored in ~/.compound/data.jsonl. Each line is a JSON object with fields:
id— Unique calculation identifiertimestamp— ISO 8601 creation timetype— Calculation type (calculate, compare, goal, etc.)params— Input parametersresult— Calculation results (final amount, interest earned, etc.)
Configuration
Config stored in ~/.compound/config.json:
default_frequency— Default compounding frequency (default: monthly)currency_symbol— Currency symbol for display (default: $)decimal_places— Number of decimal places (default: 2)
Powered by BytesAgain | bytesagain.com | hello@bytesagain.com
Files
2 totalComments
Loading comments…
