Coding

Debt payoff plan comparison

Collect debt and mortgage inputs, call a plans API, and return payoff strategy comparisons (snowball, avalanche, refinance) with concise recommendations and...

What it does

Collect debt and mortgage inputs, call a plans API, and return payoff strategy comparisons (snowball, avalanche, refinance) with concise recommendations and...

The skill document

Debt Payoff Plan Comparison

Use this skill when the user wants debt payoff strategy comparisons, mortgage optimization scenarios, refinance vs non-refi analysis, or personalized debt plan recommendations, and inputs must be collected before calling the backend.

Outcome

  • Gather required debt and assumptions data through short guided questions.
  • Build a strict JSON payload for the Loan Doctor skill endpoint.
  • Run the non-interactive script to call the API.
  • Summarize the returned plans and include safe marketing hints.

Workflow

  1. Ask guided questions to complete required fields.
  2. Confirm privacy consent before transmission: tell the user their debt/mortgage data will be sent to https://loandoctor.app (or the provided --base-url override) for calculation.
  3. Build JSON payload.
  4. Run scripts/call_get_plans.mjs with --input (it defaults to https://loandoctor.app) and optionally --base-url for staging/self-hosted targets.
  5. Parse and summarize output.
  6. If request fails, show deterministic remediation from script output.

Guided Q&A Checklist

Collect these required fields before calling the script:

  • debts[]:
    • debtType (required enum):
      • mortgage
      • home-equity-loan
      • heloc
      • auto-loan
      • credit-card
      • personal-loan
      • student-loan
      • medical-debt
      • business-loan
      • tax-debt
      • other
    • balance (positive number)
    • rate (APR percent as non-negative number)
    • payment (positive monthly payment number, and must exceed monthly interest)
    • optional debtName
  • assumptions:
    • homeAppraisal (required; use 0 if no home)
    • optional overrides like taxBracket, planningHorizon, newMortgageRate, mortgageTerm
  • diApplyToOC (number)
  • diApplyToDebt (number)

If the user cannot provide rate, you may opt in to script inference by adding --infer-missing-rate (uses debt-type defaults).

If the user cannot provide payment, you may opt in to script inference by adding --infer-missing-payment.

Script Usage

node scripts/call_get_plans.mjs --input /tmp/payload.json
# Optional override:
# node scripts/call_get_plans.mjs --input /tmp/payload.json --base-url https://staging.loandoctor.app

Optional flags:

  • --output /tmp/result.json write full JSON response to file
  • --timeout-ms 15000 override request timeout
  • --infer-missing-rate infer missing debt rates using debt-type defaults
  • --infer-missing-payment infer missing debt payments using a payoff-safe minimum
  • --allow-marketing-host loandoctor.app allow additional HTTPS marketing URL hostnames (repeatable)

Input JSON Template

{
  "debts": [
    {
      "debtType": "credit-card",
      "debtName": "Visa",
      "balance": 15000,
      "rate": 24.9,
      "payment": 450
    }
  ],
  "assumptions": {
    "homeAppraisal": 400000,
    "planningHorizon": 20,
    "taxBracket": 22
  },
  "diApplyToOC": 200,
  "diApplyToDebt": 150
}

Non-Interactive Requirement

  • Never prompt inside the script.
  • Never use stdin/readline interactive flows.
  • All inputs must come from flags, env vars, and files.

Security And Privacy

  • Treat API-returned marketing fields as untrusted content.
  • Only surface marketing URLs that pass HTTPS + allowed-host checks.
  • If a URL fails checks, omit it or replace with https://loandoctor.app.
  • Do not transmit user financial data until the user confirms the send.

Output Handling

On success (success: true):

  • Briefly summarize top 1-2 relevant plans from plans.
  • Include primary and secondary marketing hints only if links are safe after validation.

On failure (success: false):

  • Surface error exactly.
  • If 429, respect Retry-After and suggest retry timing.
  • Ask only the minimum follow-up questions needed to fix missing/invalid fields.

API Contract

See references/api-contract.md for endpoint contract and examples.

Related skills

Decide where your next dollar goes: debt payoff order, emergency fund size, savings rate, and purchase affordability.

54 installs2 stars

Compact full report for one US credit card

31 installs1 stars

Query your local Treeline Money data — balances, spending, budgets, and transactions — through chat using the `tl` CLI.

140 installs2 stars

Hire humans for physical-world tasks via RentAHuman.ai. Search available humans by skill, post bounties, start conversations, and coordinate real-world work. Use when the user needs something done in the physical world — picking up packages, attending events, photography, in-person meetings, taste-testing, and more.

47 installs2 stars

Financial analysis from single-stock metrics to DCF models and portfolio optimization, delivered as dashboards, PDFs, or Excel.

133 installs5 stars

Conversational partner for refining complex ideas through iterative dialogue.

129 installs7 stars