From fondo-pack
Optimizes Fondo accounting workflows: faster month-end closes via auto-rules and batch CPA responses, plus efficient data export caching.
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin fondo-packThis skill is limited to using the following tools:
Speed up Fondo workflows: faster month-end close (target: 15 days), reduced back-and-forth with CPA team, and efficient data export processing.
Guides Fondo monthly bookkeeping close: answer CPA categorization questions, review financial statements (P&L, balance sheet, cash flow), and handle errors for month-end reporting.
Manages month-end financial close processes using sequenced checklists by day, dependencies, and status tracking for calendars, progress, and blockers.
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Share bugs, ideas, or general feedback.
Speed up Fondo workflows: faster month-end close (target: 15 days), reduced back-and-forth with CPA team, and efficient data export processing.
| Bottleneck | Current | Target | How |
|---|---|---|---|
| Uncategorized transactions | 3-5 days wait | Same day | Set up auto-categorization rules |
| CPA questions | 2-3 day response | 1 day | Batch-answer in single session |
| Missing receipts | 5+ days | 0 days | Use Brex/Ramp auto-receipt capture |
| Bank reconciliation | 2 days | Automated | Ensure Plaid connection is stable |
Dashboard > Settings > Categorization Rules
Examples:
"AWS" → Cloud Infrastructure (R&D)
"GitHub" → Software Tools (R&D)
"Gusto" → Payroll
"WeWork" → Office/Rent
"United Airlines" → Travel
"Uber Eats" → Meals (50% deductible)
Instead of replying to each question individually:
// Cache Fondo exports to avoid repeated downloads
const CACHE_DIR = '.cache/fondo';
const CACHE_TTL = 24 * 60 * 60 * 1000; // 24 hours
async function getCachedExport(reportType: string, dateRange: string) {
const cacheKey = `${reportType}-${dateRange}.csv`;
const cachePath = `${CACHE_DIR}/${cacheKey}`;
if (fs.existsSync(cachePath)) {
const stat = fs.statSync(cachePath);
if (Date.now() - stat.mtimeMs < CACHE_TTL) {
return fs.readFileSync(cachePath, 'utf-8');
}
}
// Download fresh from Dashboard > Reports > Export
console.log(`Cache miss: download ${reportType} for ${dateRange} from Fondo Dashboard`);
return null;
}
For cost optimization, see fondo-cost-tuning.