# Send AgentLedger 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. Then review README.md for any prerequisites, environment setup, or post-install checks. 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. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "agentledger",
    "name": "AgentLedger",
    "source": "tencent",
    "type": "skill",
    "category": "AI 智能",
    "sourceUrl": "https://clawhub.ai/c-goro/agentledger",
    "canonicalUrl": "https://clawhub.ai/c-goro/agentledger",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/agentledger",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=agentledger",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md",
      "README.md",
      "package.json",
      "cli.js",
      "ledger.js",
      "budget.js"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "agentledger",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-29T13:49:00.979Z",
      "expiresAt": "2026-05-06T13:49:00.979Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=agentledger",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=agentledger",
        "contentDisposition": "attachment; filename=\"agentledger-1.1.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "agentledger"
      },
      "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/agentledger"
    },
    "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/agentledger",
    "downloadUrl": "https://openagent3.xyz/downloads/agentledger",
    "agentUrl": "https://openagent3.xyz/skills/agentledger/agent",
    "manifestUrl": "https://openagent3.xyz/skills/agentledger/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/agentledger/agent.md"
  }
}
```
## Documentation

### Overview

AgentLedger is an accounting skill that logs every transaction you make, tracks spending across multiple accounts, and provides detailed reports. Use this to maintain a complete financial record of your purchases.

Important: Always log transactions immediately after making purchases. This skill is designed for AI agents to track their own expenses (API costs, tool subscriptions, etc.).

### 1. Log a Transaction

When you make any purchase, immediately log it:

// In Node.js context, require the ledger
const AgentLedger = require('./src/ledger.js');
const ledger = new AgentLedger();

// Log a transaction
await ledger.logTransaction({
  amount: 29.99,
  currency: 'USD',
  vendor: 'OpenAI',
  description: 'GPT-4 API credits',
  category: 'API/Services',
  account: 'privacy-card-1',
  context: 'Needed additional tokens for user project analysis',
  receiptUrl: 'https://platform.openai.com/receipts/xyz',
  confirmationId: 'sub_1234567890'
});

CLI Usage (supports both positional and named parameters):

# Positional style
node src/cli.js log 29.99 "OpenAI" "GPT-4 API credits" --category="API/Services"

# Named parameter style  
node src/cli.js log --amount=29.99 --vendor="OpenAI" --description="GPT-4 API credits" --category="API/Services" --context="Monthly API refill"

### 2. Check Current Spending

// Get spending summary
const summary = await ledger.getSummary('this-month');
console.log(\`Total spent this month: $${summary.total}\`);

// Check specific category
const apiSpending = await ledger.getCategorySpending('API/Services', 'this-month');

### 3. Generate Reports

// Monthly report
const report = await ledger.generateReport('monthly', { month: '2024-01' });

// Custom date range
const customReport = await ledger.generateReport('custom', {
  startDate: '2024-01-01',
  endDate: '2024-01-31'
});

### 4. Budget Management

// Set monthly budget for API services
await ledger.setBudget('API/Services', 500, 'monthly');

// Check budget status
const budgetStatus = await ledger.checkBudget('API/Services');
if (budgetStatus.isNearLimit) {
  console.log(\`Warning: ${budgetStatus.percentUsed}% of API budget used\`);
}

### Categories

Use these predefined categories for consistent tracking:

API/Services - API credits, SaaS subscriptions
Infrastructure - Hosting, domains, CDN
Marketing - Ads, social media tools
Tools - Software licenses, utilities
Subscriptions - Recurring monthly/yearly services
Other - Miscellaneous expenses

### Privacy.com Cards

The ledger automatically detects Privacy.com card data if available:

// If you have Privacy.com JSON exports in workspace/privacy/
await ledger.importPrivacyTransactions('./privacy/card-1.json');

### Manual Account Setup

// Register a new payment method
await ledger.addAccount({
  id: 'stripe-main',
  name: 'Main Stripe Account',
  type: 'credit_card',
  currency: 'USD'
});

### Natural Language Queries

Ask questions like:

"How much did I spend on API keys this month?"
"What was that $20 charge from yesterday?"
"Show me all infrastructure costs from last quarter"
"Am I over budget on marketing spend?"

The CLI handles these queries:

node src/cli.js query "API spending this month"
node src/cli.js find "OpenAI" --last-week

### Time Periods

Supported natural language time periods:

today, yesterday
this-week, last-week
this-month, last-month
this-quarter, last-quarter
this-year, last-year
last-30-days, last-90-days

### Data Export

// Export to CSV
await ledger.exportTransactions('csv', './exports/transactions.csv');

// Export to JSON
await ledger.exportTransactions('json', './exports/transactions.json');

### Essential Commands for AI Agents

# Initialize (run once)
node src/cli.js init

# Log transactions (supports both styles)
node src/cli.js log 29.99 "OpenAI" "API credits" --category="API/Services"
node src/cli.js log --amount=29.99 --vendor="OpenAI" --description="API credits" --category="API/Services"

# Check current spending
node src/cli.js summary                    # This month
node src/cli.js summary --period="today"   # Today only
node src/cli.js summary --period="this-week" # This week

# Set and check budgets
node src/cli.js budget set "API/Services" 500    # Set monthly budget
node src/cli.js budget status                    # Check all budgets

# Generate detailed reports  
node src/cli.js report monthly
node src/cli.js report --type=category
node src/cli.js report --type=vendor

# Search transactions
node src/cli.js find "OpenAI"                    # Search by vendor
node src/cli.js find "API" --category="API/Services"  # Search by category
node src/cli.js find --min-amount=50             # Find large expenses

# Export data
node src/cli.js export csv                       # Export to CSV
node src/cli.js export --format=json            # Export to JSON

# Natural language queries
node src/cli.js query "How much did I spend on APIs this month?"
node src/cli.js query "What was that $25 charge?"

# Import from Privacy.com
node src/cli.js import privacy ./privacy-export.json

### File Storage

Transactions: workspace/ledger/transactions.json
Accounts: workspace/ledger/accounts.json
Budgets: workspace/ledger/budgets.json
Settings: workspace/ledger/settings.json

### Best Practices

Log immediately - Don't wait, log every purchase as it happens
Add context - Explain why the purchase was necessary
Use consistent categories - Stick to the predefined categories
Include receipts - Store confirmation numbers and receipt URLs
Set budgets - Establish spending limits for each category
Review regularly - Generate monthly reports to track spending patterns

### Error Handling & Edge Cases

The ledger handles common errors gracefully:

### Input Validation

Negative amounts: Rejected (use positive amounts only)
Missing required fields: Clear error messages with usage examples
Invalid currency: Accepted (no validation - assumes user knows what they're doing)
Very long descriptions: Handled without truncation

### Data Safety

Automatic backups: Created before each save operation
Corrupted data recovery: Automatic recovery from .backup files
Empty periods: Gracefully shows $0.00 totals
Multi-currency: Properly separated in summaries and reports

### Example Error Recovery

# If you see "Could not load transactions" message:
# The system automatically tries to recover from backup
# Your data should be restored automatically

# Manual backup check
ls workspace/ledger/*.backup  # Check if backups exist

### Security & Privacy

Local storage only: All data stays in workspace/ledger/ JSON files
No external API calls: Core functionality works offline
No sensitive data: Never store actual card numbers or passwords
Account aliases: Use descriptive IDs like privacy-card-1 or company-amex
Receipt URLs: Store links to receipts, not receipt content itself
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: c-goro
- Version: 1.1.1
## 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-04-29T13:49:00.979Z
- Expires at: 2026-05-06T13:49:00.979Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/agentledger)
- [Send to Agent page](https://openagent3.xyz/skills/agentledger/agent)
- [JSON manifest](https://openagent3.xyz/skills/agentledger/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/agentledger/agent.md)
- [Download page](https://openagent3.xyz/downloads/agentledger)