# Send Spend Pulse to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "spend-pulse",
    "name": "Spend Pulse",
    "source": "tencent",
    "type": "skill",
    "category": "通讯协作",
    "sourceUrl": "https://clawhub.ai/jbornhorst1524/spend-pulse",
    "canonicalUrl": "https://clawhub.ai/jbornhorst1524/spend-pulse",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/spend-pulse",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=spend-pulse",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "spend-pulse",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-01T10:03:22.762Z",
      "expiresAt": "2026-05-08T10:03:22.762Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=spend-pulse",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=spend-pulse",
        "contentDisposition": "attachment; filename=\"spend-pulse-0.1.2.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "spend-pulse"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/spend-pulse"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/spend-pulse",
    "downloadUrl": "https://openagent3.xyz/downloads/spend-pulse",
    "agentUrl": "https://openagent3.xyz/skills/spend-pulse/agent",
    "manifestUrl": "https://openagent3.xyz/skills/spend-pulse/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/spend-pulse/agent.md"
  }
}
```
## Documentation

### Spend Pulse

Proactive spending alerts via Plaid. Track credit card spending against a monthly budget with pace-based alerts.

### Installation

# Install globally
npm install -g spend-pulse

# Or from source
git clone https://github.com/jbornhorst1524/spend-pulse.git
cd spend-pulse
npm install && npm run build && npm link

Verify installation:

spend-pulse --version

### First-Time Setup

Run the interactive setup wizard:

spend-pulse setup

This will:

Prompt for Plaid API credentials (get them at https://dashboard.plaid.com/developers/keys)
Ask to choose Sandbox (test data) or Development (real bank) mode
Set monthly spending budget
Open browser for Plaid Link bank authentication
Store credentials securely in macOS Keychain

For Sandbox testing, use these Plaid test credentials when the bank login appears:

Username: user_good
Password: pass_good

After setup, run initial sync:

spend-pulse sync

### spend-pulse check — Primary Command

Returns alert decision with full context. This is the main command to use.

should_alert: true
reasons:
  - 3 new transactions
  - end of month approaching
month: "2026-01"
budget: 8000
spent: 6801.29
remaining: 1198.71
day_of_month: 30
days_in_month: 31
days_remaining: 1
expected_spend: 7200.00
pace: under
pace_delta: -398.71
pace_percent: -6
pace_source: last_month
oneline: "Jan: $6.8k of $8k (85%) | $1.2k left | 1 days | > On track"
new_transactions: 3
new_items:
  - merchant: Whole Foods
    amount: 47.50
    category: Groceries
  - merchant: Amazon
    amount: 125.00
    category: Shopping

Alert triggers (should_alert: true when any apply):

New transactions since last check
Over pace (spending faster than expected)
Remaining budget < $500
End of month (last 3 days)
First of month (new month started)

### spend-pulse sync

Pull latest transactions from Plaid. Run before check for fresh data.

synced: 16
new: 3
account: "Amex Gold (...1234)"
total_this_month: 6801.29

### spend-pulse status [--oneline]

Full spending summary, or quick one-liner:

spend-pulse status --oneline
# Jan: $6.8k of $8k (85%) | $1.2k left | 1 days | > On track

### spend-pulse recent [--days N] [--count N]

Recent transactions (default: last 5 days).

### spend-pulse config [key] [value]

View or modify settings:

spend-pulse config                  # show all
spend-pulse config target 8000      # set monthly budget
spend-pulse config timezone America/Chicago

### spend-pulse link [--status] [--remove <id>]

Manage linked bank accounts:

spend-pulse link --status    # show linked accounts
spend-pulse link             # add another account
spend-pulse link --remove <item_id>

### spend-pulse chart [-o <path>]

Generate a cumulative spending chart as a PNG image showing:

Current month spending (solid blue line with gradient fill, ends with a dot at today)
Last month spending (dashed gray line, full month)
Budget target (dashed amber horizontal line)

spend-pulse chart                    # Writes to ~/.spend-pulse/chart.png
spend-pulse chart -o /tmp/chart.png  # Custom output path

Outputs the file path to stdout so you can capture it and attach to messages.

### spend-pulse check --chart

Generate a chart alongside the alert check. Adds chart_path to the YAML output:

should_alert: true
chart_path: /Users/you/.spend-pulse/chart.png
# ... rest of check output

### Recommended Workflow

# 1. Sync latest transactions
spend-pulse sync

# 2. Check if alert needed, generate chart
spend-pulse check --chart

If should_alert: true: Compose a brief, friendly spending update using the data. Attach the chart image from chart_path — it shows current vs. last month spending at a glance.

If should_alert: false: Stay quiet unless the user asks about spending.

### Composing Messages

Use the oneline field as the core message, then add context. Always attach the chart image when available — it communicates pace visually better than any text can.

Under pace (positive):

"Quick spending pulse: Jan at $6.8k of $8k, $1.2k left with 1 day to go. Under pace by 12% — nice work!"
[attach chart.png]

On track:

"January update: $5.5k of $8k (69%) with 10 days left. Right on pace. Recent: $125 Amazon, $47 Whole Foods."
[attach chart.png]

Over pace (heads up):

"Heads up — January's at $7.2k of $8k with 5 days to go. About 10% over pace. The travel charges added up."
[attach chart.png]

Over budget:

"January budget: $8.5k spent, about $500 over the $8k target. Something to keep in mind for February."
[attach chart.png]

Guidelines:

Tone: helpful friend, not nagging accountant
Keep text under 280 characters when possible
Mention 1-2 notable items from new_items if interesting
Use reasons array for context
Always include the chart image — it's designed to be readable on a phone screen

### Pace Explained

Spend Pulse paces against last month's actual cumulative spend curve when available, falling back to a linear budget ramp when no prior month data exists.

expected_spend: Where you were at this point last month (or linear ramp fallback)
spent: Actual spending
pace_delta: Difference (negative = under, positive = over)
pace: under | on_track | over
pace_source: last_month (curve-based) or linear (ramp fallback)

This means early-month bills (rent, subscriptions) won't trigger false "over pace" alerts if you had similar bills last month.

Example: Day 15, last month you'd spent $4.2k by this point → expected ~$4.2k.

### Upgrading to Real Bank Data

After testing with Sandbox, upgrade to Development mode for real transactions:

spend-pulse setup --upgrade

This clears sandbox data and connects your real bank account.

### Troubleshooting

"Plaid credentials not found": Run spend-pulse setup to configure.

"Access token not found": Run spend-pulse setup to re-authenticate.

"No accounts found": Check spend-pulse link --status and add account if needed.

Stale data: Run spend-pulse sync to refresh from Plaid.
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: jbornhorst1524
- Version: 0.1.2
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-05-01T10:03:22.762Z
- Expires at: 2026-05-08T10:03:22.762Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/spend-pulse)
- [Send to Agent page](https://openagent3.xyz/skills/spend-pulse/agent)
- [JSON manifest](https://openagent3.xyz/skills/spend-pulse/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/spend-pulse/agent.md)
- [Download page](https://openagent3.xyz/downloads/spend-pulse)