[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M718VZB1Y350YE4QYMFSGSGY":3,"skill-same:01M718VZB1Y350YE4QYMFSGSGY":110},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":26,"publishedAt":47,"linkOnly":48,"markdownContent":49,"markdownBody":50,"frontMatter":51,"refName":54,"commitSha":55,"skillDirectory":56,"forksCount":57,"repositoryHtmlUrl":58,"repositoryHomepageUrl":6,"ownerHtmlUrl":59,"ownerBlogUrl":60,"ownerDescription":6,"updatedAt":61,"install":62,"resources":75},"01M718VZB1Y350YE4QYMFSGSGY","month-end-prep",null,"Reconciles the accounting ledger (MYOB, NetSuite, QuickBooks, Xero, or Zoho Books) against PayPal, Shopify, Square, and Stripe settlements, flags transactions that need attention, suspicious duplicates, and missing receipts, then writes a plain-English P&L narrative and exports a close packet (xlsx + one-page PDF). This is the first link of the \u002Fclose-month command; a request to close the month or the books routes there, and the command runs this skill before refreshing the forecast and distributing the packet. Use this skill directly only when the owner wants the reconciliation alone, with no forecast refresh and no distribution: \"just reconcile, no packet,\" \"what's missing from the books,\" \"flag the duplicates and missing receipts,\" or \"write the P&L narrative for this month.\"","anthropics\u002Fknowledge-work-plugins","anthropics","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F76263028?v=4","01M697XGDPXJAVQ8391V2BCYTE","Anthropic","01M7188MPC48111TN566QNQE3X",35656,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Fmonth-end-prep\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000002","文档处理","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000004","电子表格",[27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],"prep","month end prep","end","distribution","when","books","one-page","close","narrative","english","PDF","reconciliation","xero","netsuite","duplicates","only","command","transactions","suspicious","xlsx","2026-11-10 10:12:30",false,"---\nname: month-end-prep\ndescription: >\n  Reconciles the accounting ledger (MYOB, NetSuite, QuickBooks, Xero, or Zoho\n  Books) against PayPal, Shopify, Square, and Stripe settlements, flags\n  transactions that need attention, suspicious duplicates, and missing\n  receipts, then writes a plain-English P&L narrative and exports a close\n  packet (xlsx + one-page PDF). This is the first link of the \u002Fclose-month\n  command; a request to close the month or the books routes there, and the\n  command runs this skill before refreshing the forecast and distributing\n  the packet. Use this skill directly only when the owner wants the\n  reconciliation alone, with no forecast refresh and no distribution: \"just\n  reconcile, no packet,\" \"what's missing from the books,\" \"flag the\n  duplicates and missing receipts,\" or \"write the P&L narrative for this\n  month.\"\nallowed-tools: Read, WebFetch\n---\n\n# Month End Prep\n\n## Quick start\n\nConnect your bookkeeping ledger and at least one payment processor, then say \"let's\nclose the month.\" Claude walks you through each step of the checklist, pausing for\nyour input at each gate before moving forward.\n\nAny connected ledger runs the close. Each has a reference file for its reads and\nits \"needs attention\" signal: [reference\u002Fquickbooks-reconcile.md](reference\u002Fquickbooks-reconcile.md),\n[reference\u002Fxero-reconcile.md](reference\u002Fxero-reconcile.md),\n[reference\u002Fzoho-books-reconcile.md](reference\u002Fzoho-books-reconcile.md); NetSuite and MYOB\nare in [reference\u002Fv2_sources.md](reference\u002Fv2_sources.md). Ledgers are peers\n(`..\u002F..\u002Fshared\u002Fconnector-neutrality.md`): if two are connected, ask which holds the\nbooks being closed, read the other only for what it uniquely holds, and never sum a\nfigure across both.\n\nEvery amount is in the business's currency (`..\u002F..\u002Fshared\u002Fcurrency-and-locale.md`).\nThe thresholds below (0.50, 0.01, 25) are in that currency.\n\nIf a connector is missing, Claude falls back to asking for a CSV export — it won't\nsilently skip a step.\n\n## Workflow\n\nWork through these steps in order. Each step has a completion state; don't advance\nuntil the current step is settled.\n\n### Step 1 — Agree on the target month\n\nAsk the user which month to close. Default to the prior calendar month if they don't\nspecify. Confirm before pulling any data.\n\n### Step 2 — Pull the ledger's P&L and register\n\nFetch:\n- Profit & Loss report for the target month (revenue, COGS, gross margin, operating\n  expenses, net income)\n- The register, as the ledger's reference file defines it. QuickBooks: the\n  transaction list, every income and expense line. Xero: bills, invoices, and the\n  bank-transaction queue, with that scope stated in the packet. Zoho Books: invoices,\n  expenses, and purchase orders, with the P&L itself coming from an export because the\n  connector has no report endpoint.\n\nFlag immediately, using the ledger's own \"needs attention\" signal:\n- **QuickBooks** — uncategorized lines (\"Uncategorized,\" blank, \"Ask My Accountant\")\n  and its Needs Review flag\n- **Xero** — bank lines still unreconciled at month end\n- **Zoho Books** — the `uncategorized_transactions` count on each bank account\n\nPresent the count (\"14 transactions need attention\") and list them for the user to\nresolve in the ledger before proceeding. Don't advance with open items unless the\nuser explicitly says \"skip for now.\"\n\nSee [reference\u002Fquickbooks-reconcile.md](reference\u002Fquickbooks-reconcile.md),\n[reference\u002Fxero-reconcile.md](reference\u002Fxero-reconcile.md), and\n[reference\u002Fzoho-books-reconcile.md](reference\u002Fzoho-books-reconcile.md) for field\nmappings and API notes.\n\n### Step 3 — Pull payment processor settlements\n\nFetch settlement reports from PayPal, Square, Stripe, or Shopify — whichever are\nconnected — for the same calendar month.\n\n**Check the bank feed first.** When a processor pays out through a bank feed, the\npayout is already a ledger line and the question is whether it has been matched.\nFind unreconciled bank lines naming a processor and list them per processor as the\naction items before doing any CSV match. This applies to any ledger that carries a\nbank feed with a reconciled state — the usual case in Xero, and QuickBooks bank-feed\nlines when the connector exposes them. MYOB holds no bank side, and Zoho Books exposes\nbalances but no bank-transaction list, so a MYOB or Zoho Books close goes straight to\nthe CSV match below.\n\n**Compare net to net, or every line looks broken.** The ledger records the net bank\ndeposit; the processor's report shows the gross sale. Match those directly and every\nrow shows a discrepancy the exact size of the fee. Use the processor's **net payout**\n(gross minus fees) — see [reference\u002Fgotchas.md](reference\u002Fgotchas.md).\n\nMatch each settlement deposit against the ledger's bank deposit line:\n- **Match** — amount and date agree within 2 days → mark as reconciled\n- **Difference \u003C 0.50** — rounding\u002Ffee; note but don't flag\n- **Difference ≥ 0.50** — flag with the delta amount\n- **Settlement exists, no ledger deposit** — flag as \"missing in the ledger\"\n- **Ledger deposit exists, no settlement** — flag as \"deposit not in processor data\"\n\nSee [reference\u002Fpaypal-settlements.md](reference\u002Fpaypal-settlements.md) for settlement\nreport field mappings (PayPal, Square, Stripe) and\n[reference\u002Fv2_sources.md](reference\u002Fv2_sources.md) for Shopify.\n\n### Step 4 — Detect suspicious duplicates\n\nScan the register for likely duplicate charges or deposits. Flag a transaction as a\nsuspicious duplicate when **all three** match:\n- Same amount (within 0.01)\n- Same vendor or customer name\n- Posted within 5 calendar days of each other\n\nScan what the ledger actually holds. In QuickBooks that is the transaction list,\nwith split rows grouped by transaction id first. In Xero a bill keyed twice makes two\nunpaid documents and no bank line, so scan bills and invoices (same contact, same\ntotal, within 5 days, both unpaid or one paid inside the window) rather than bank\nlines — the mapping is in [reference\u002Fxero-reconcile.md](reference\u002Fxero-reconcile.md).\nZoho Books is the same shape: scan invoices and expenses as documents\n([reference\u002Fzoho-books-reconcile.md](reference\u002Fzoho-books-reconcile.md)).\n\nPresent flagged pairs to the user. They decide whether each is legitimate (e.g., a\nrecurring weekly subscription) or a real duplicate to void.\n\n**The 5-day window is a filter, not a guarantee.** It catches the same charge keyed\ntwice without drowning the owner in recurring weekly bills, but a real double payment\nthree weeks apart slips through. Say what was scanned (\"repeats within 5 days\"), and\nwiden the window for a vendor they're suspicious about rather than calling it clean.\n\nSee [reference\u002Fgotchas.md](reference\u002Fgotchas.md) for common false-positive patterns\nand how to distinguish them.\n\n### Step 5 — Receipts check\n\nCheck the ledger first: an attachment on the transaction counts as a receipt on file\n(`AttachmentCount` in QuickBooks; `has_attachments` in Xero, returned only with\n`include_line_items=true`; `has_attachment` on Zoho Books invoices and expenses). Then,\nif the Desktop connector is available, scan the\nreceipts folder (ask the user for the path; default `~\u002FDocuments\u002FReceipts`) for the\ntarget month.\n\nFor each expense transaction above 25 with no attached document:\n- Check for a matching receipt file (match by amount ± 0.50 and date within 3 days)\n- **Matched** → note as \"receipt on file\"\n- **Not matched** → flag as \"missing receipt\"\n\nList missing receipts. The user can supply the file or mark as \"receipt not required\"\n(e.g., a recurring auto-pay with no receipt).\n\nIf Desktop connector is not available, ask the user to confirm which expenses they have\nreceipts for — don't silently skip this step.\n\n### Step 5a — Payroll cross-check\n\nRuns only when a payroll connector is connected (Gusto or QuickBooks Payroll — peers,\nwhichever is connected). Otherwise skip it and say the packet carries no payroll column.\n\nPull what was actually paid in the month, totals only:\n\n- **Gusto** — `list_payrolls` with `include=totals`, keeping the payrolls whose\n  `check_date` falls in the target month. From each `totals`: `gross_pay`,\n  `employer_taxes`, `employee_taxes`, `net_pay`. Then `list_contractor_payments` for\n  the same date range with `group_by_date=true`, taking `total.wages` and\n  `total.reimbursements`. Contractor totals cover US contractors only — say so in the\n  packet footnote.\n- **QuickBooks Payroll** — `qbo_payroll_get_company_last_payroll_run` for the most\n  recent run; earlier runs in the month come from the payroll summary export.\n  (Confirm before the first close.)\n\nCross-check against the ledger: net pay plus employer taxes plus contractor wages should\nappear as the month's payroll expense lines. A difference above 0.50 is a reconciliation\nitem — usually a run posted to the wrong month, or a payroll journal not yet posted.\n\n**Totals only, never people.** The packet carries the month's totals and the count of\nruns. No employee name, rate, or per-person amount leaves the connector — that is\npayroll data, and `payroll-prep` is where it belongs. See\n[reference\u002Fv2_sources.md](reference\u002Fv2_sources.md) for the field mapping.\n\n### Step 6 — Owner sign-off gate\n\nPresent a summary before going further:\n\n```\nNeeds attention (uncategorized or unreconciled):  X of X resolved\nSettlement discrepancies:                        X flagged, X resolved\nSuspicious duplicates:                           X flagged, X cleared\nMissing receipts:                                X outstanding\nPayroll cross-check:                             matched \u002F X difference \u002F no payroll connector\n```\n\nAsk: \"Ready to write the P&L summary and export the close packet?\"\n\n**Do not proceed to Steps 7–8 without explicit confirmation.**\n\n### Step 7 — Write the P&L narrative\n\nWrite a plain-English summary of the month — the kind an owner would share with their\nspouse or accountant, not a CFO memo. Aim for 150–250 words.\n\nStructure:\n1. **Headline** — one sentence: \"March came in at AUD 12,400 net, up 6% from February.\" Currency code, never a bare symbol.\n2. **Revenue** — what drove the number; name products, services, or customers if\n   the data shows concentration.\n3. **Gross margin** — whether it held, rose, or compressed, and the main reason why.\n4. **Key expenses** — any line that moved more than 10% MoM or is outside the normal\n   range; one sentence each.\n5. **Bottom line** — net income vs. prior month; ask if they have a target to compare.\n6. **Watch list** — 1–3 things to monitor next month.\n\nAvoid jargon; define anything that isn't plain English (\"MoM\" = month over month).\n\nSee [reference\u002Fexamples\u002Fpl-narrative.md](reference\u002Fexamples\u002Fpl-narrative.md) for a\nworked example.\n\n### Step 8 — Export the close packet\n\nProduce two files:\n\n**`close-packet-[YYYY-MM].xlsx`** — three sheets, four when a payroll connector is connected:\n- `P&L` — the ledger's P&L data, formatted\n- `Reconciliation` — matched and flagged transactions side by side\n- `Action Items` — any outstanding flags (uncategorized, missing receipts, etc.)\n- `Payroll` — the Step 5a totals beside the ledger's payroll expense, with the delta\n\n**`close-packet-[YYYY-MM]-summary.pdf`** — one page:\n- Month and business name at the top\n- Key figures (revenue, gross margin %, net income)\n- The P&L narrative from Step 7\n- Count of open action items, if any\n\nSave both to the Desktop (or a path the user specifies). Confirm the file locations.\n\nSee [reference\u002Fclose-packet-format.md](reference\u002Fclose-packet-format.md) for column\nspecs and PDF layout details.\n\nAlso deliver the close as a page, per the owner's stored output preference —\nnever default to a markdown file. Check the `## Business context` block's\n`Output preference` (shared style guide rule, `..\u002F..\u002Fshared\u002Fartifact-style.md`):\n\n- **Visual artifact (the default):** render the close as an HTML page in the\n  house style — additive to the chat summary and the files, never a\n  replacement. Revenue, gross margin percent, and net income are stat tiles\n  with their month-over-month change as context lines; the reconciliation\n  results are a table with tabular-nums amounts; each flag carries a status\n  pill — good for reconciled, warn for missing receipts and uncategorized\n  items, critical for unresolved settlement gaps and duplicates; the P&L\n  narrative and the open-items checklist each get a panel.\n- **docx \u002F md \u002F notion \u002F canva preference:** deliver the same content in that\n  form — a DOCX or markdown file, a Notion page created via the connector\n  (named destination, never overwriting), or a Canva Doc created via the Canva\n  connector (a new design each run, named with the date; tables become\n  lists); fall back to the visual artifact if Notion or Canva is not\n  connected — and say that is why. The packet xlsx and PDF keep their\n  formats.\n- **Best for skill:** use the visual artifact — the close is reviewed on\n  screen before the packet goes to the accountant.\n\n### Step 9 — After the close\n\nSay in one line what closed and what is still open. Then offer the single most\nrelevant next step, plus at most two others nearby:\n\n- \"Cash forecast\" runs `cash-flow-snapshot` off the freshly closed numbers.\n- \"Build me a report\" runs `report-builder` to publish and distribute the packet.\n- \"Taxes\" runs `\u002Ftax-prep` when quarter or year end is near — offered only when the\n  business context says Country is US, since that chain's tax math is US federal.\n\nMax three offers. Never repeat an offer the owner declined this session.\n\n## Approval gates\n\n- **Never run reconciliation on a month that has been filed.** Confirm the books are\n  still open before pulling data.\n- **Never void or modify a ledger transaction directly.** Surface flags; the owner\n  makes changes in the ledger.\n- **Always pause at Step 6** before producing outputs. Unresolved flags must be\n  acknowledged or explicitly skipped.\n- **Never reproduce per-person pay, SSNs, or bank numbers** in the close package\n  beyond the journal totals (`..\u002F..\u002Fshared\u002Fpersonal-data.md`).\n\n## Graceful degradation\n\n| Missing connector | Fallback |\n|---|---|\n| QuickBooks | Ask for **two separate exports** — the Profit & Loss report, and the Transaction Detail by Account report. One file will not carry both; asking for \"a QB export\" gets you one of them and a second round trip |\n| Xero | Ask for **two exports** — the Profit and Loss report, and the Account Transactions report with all accounts selected — plus the unreconciled line count from the bank reconciliation screen, which no export carries |\n| NetSuite or MYOB | Ask for the P&L and the transaction detail for the month as two exports; MYOB holds no bank balances, so the bank side comes from a statement |\n| Zoho Books | Even when connected, ask for the **Profit and Loss** export (no report endpoint) and a **bank statement** (no bank-transaction feed); the register and the uncategorised count come from the connector. Not connected: add the Account Transactions export |\n| Payment processor | Ask for a settlement CSV from the processor's website. It must include the fee column, not just the gross amount, or the net-to-net match in Step 3 can't be done |\n| Payment processor connected but returns zero payouts for the period | Treat as a data gap, not a clean zero. Say the connector returned nothing for the month, ask for the same settlement CSV (fee column included), and name the gap in the report rather than reconciling against an empty set |\n| Payroll connector (Gusto, QuickBooks Payroll) | Skip Step 5a. The packet has no Payroll sheet and the summary says \"no payroll connector\"; the ledger's payroll expense lines still appear in the P&L unchecked |\n| Desktop (receipts) | Ask the user to confirm receipt status for each flagged expense |\n\n## More sources\n\nRead `reference\u002Fv2_sources.md` for the mapping:\n\n- **Shopify** — settlement reconciliation as a first-class leg. Orders, payouts, and fees each land differently, and it's a common source of unexplained gaps\n- **NetSuite** — a ledger of record, common at the larger end of the segment; reports and SuiteQL supply the P&L and register\n- **Xero** — a ledger of record with its own register shape (bills, invoices, bank queue) and its own attention signal (unreconciled bank lines); mapped in `reference\u002Fxero-reconcile.md`\n- **MYOB** — P&L and AR\u002FAP balances; no bank balances, so the bank side of the close comes from a statement\n- **Zoho Books** — a ledger of record with a document register (invoices, expenses, purchase orders), bank balances with an uncategorised count as the attention signal, and no report or bank-feed endpoints, so the P&L and the payout match come from exports; mapped in `reference\u002Fzoho-books-reconcile.md`\n- **Ramp, Expensify** — card and expense detail, which closes the gap between what was spent and what was coded\n- **Gusto, QuickBooks Payroll** — payroll actually run: gross pay, employer taxes, net pay, and contractor payments as month totals, so Step 5a reconciles the ledger's payroll expense against what was paid rather than what was planned. Totals only; no per-person data enters the packet\n\nSame close sequence, same packet. More sources reconciled.\n\n**QuickBooks summary fields lie.** Read `..\u002F..\u002Fshared\u002Fquickbooks-report-traps.md` before quoting any total from a QuickBooks summary object: the AP aging summary nets vendor credits into its buckets and can show a negative overdue figure, and the P&L summary can report expenses as zero against real rows. Total the rows, or use the detail call.\n\n## Reference files\n\n- [reference\u002Fquickbooks-reconcile.md](reference\u002Fquickbooks-reconcile.md) — QB field\n  mappings, API pagination, common data issues\n- [reference\u002Fxero-reconcile.md](reference\u002Fxero-reconcile.md) — Xero register\n  definition, unreconciled-line signal, document-level duplicate scan, attachments\n- [reference\u002Fzoho-books-reconcile.md](reference\u002Fzoho-books-reconcile.md) — Zoho Books\n  register definition, uncategorised-count signal, what needs an export\n- [reference\u002Fpaypal-settlements.md](reference\u002Fpaypal-settlements.md) — settlement\n  report structure for PayPal, Square, and Stripe\n- [reference\u002Fclose-packet-format.md](reference\u002Fclose-packet-format.md) — xlsx column\n  specs, PDF layout, file naming convention\n- [reference\u002Fgotchas.md](reference\u002Fgotchas.md) — duplicate false positives, split\n  transactions, partial-month edge cases\n- [reference\u002Fexamples\u002Fpl-narrative.md](reference\u002Fexamples\u002Fpl-narrative.md) — worked\n  P&L narrative example\n\n## Using a tool that isn't listed\n\nThe connectors named in this skill are the tested paths, not a wall. If the owner wants this flow to use a tool that isn't connected or listed, offer `build-connector` — it checks the connector directory first and connects through Zapier otherwise, never hand-building against a raw API. Once the connection exists, the tool joins this skill like any other optional connector, under the same approval gates.\n","# Month End Prep\n\n## Quick start\n\nConnect your bookkeeping ledger and at least one payment processor, then say \"let's\nclose the month.\" Claude walks you through each step of the checklist, pausing for\nyour input at each gate before moving forward.\n\nAny connected ledger runs the close. Each has a reference file for its reads and\nits \"needs attention\" signal: [reference\u002Fquickbooks-reconcile.md](reference\u002Fquickbooks-reconcile.md),\n[reference\u002Fxero-reconcile.md](reference\u002Fxero-reconcile.md),\n[reference\u002Fzoho-books-reconcile.md](reference\u002Fzoho-books-reconcile.md); NetSuite and MYOB\nare in [reference\u002Fv2_sources.md](reference\u002Fv2_sources.md). Ledgers are peers\n(`..\u002F..\u002Fshared\u002Fconnector-neutrality.md`): if two are connected, ask which holds the\nbooks being closed, read the other only for what it uniquely holds, and never sum a\nfigure across both.\n\nEvery amount is in the business's currency (`..\u002F..\u002Fshared\u002Fcurrency-and-locale.md`).\nThe thresholds below (0.50, 0.01, 25) are in that currency.\n\nIf a connector is missing, Claude falls back to asking for a CSV export — it won't\nsilently skip a step.\n\n## Workflow\n\nWork through these steps in order. Each step has a completion state; don't advance\nuntil the current step is settled.\n\n### Step 1 — Agree on the target month\n\nAsk the user which month to close. Default to the prior calendar month if they don't\nspecify. Confirm before pulling any data.\n\n### Step 2 — Pull the ledger's P&L and register\n\nFetch:\n- Profit & Loss report for the target month (revenue, COGS, gross margin, operating\n  expenses, net income)\n- The register, as the ledger's reference file defines it. QuickBooks: the\n  transaction list, every income and expense line. Xero: bills, invoices, and the\n  bank-transaction queue, with that scope stated in the packet. Zoho Books: invoices,\n  expenses, and purchase orders, with the P&L itself coming from an export because the\n  connector has no report endpoint.\n\nFlag immediately, using the ledger's own \"needs attention\" signal:\n- **QuickBooks** — uncategorized lines (\"Uncategorized,\" blank, \"Ask My Accountant\")\n  and its Needs Review flag\n- **Xero** — bank lines still unreconciled at month end\n- **Zoho Books** — the `uncategorized_transactions` count on each bank account\n\nPresent the count (\"14 transactions need attention\") and list them for the user to\nresolve in the ledger before proceeding. Don't advance with open items unless the\nuser explicitly says \"skip for now.\"\n\nSee [reference\u002Fquickbooks-reconcile.md](reference\u002Fquickbooks-reconcile.md),\n[reference\u002Fxero-reconcile.md](reference\u002Fxero-reconcile.md), and\n[reference\u002Fzoho-books-reconcile.md](reference\u002Fzoho-books-reconcile.md) for field\nmappings and API notes.\n\n### Step 3 — Pull payment processor settlements\n\nFetch settlement reports from PayPal, Square, Stripe, or Shopify — whichever are\nconnected — for the same calendar month.\n\n**Check the bank feed first.** When a processor pays out through a bank feed, the\npayout is already a ledger line and the question is whether it has been matched.\nFind unreconciled bank lines naming a processor and list them per processor as the\naction items before doing any CSV match. This applies to any ledger that carries a\nbank feed with a reconciled state — the usual case in Xero, and QuickBooks bank-feed\nlines when the connector exposes them. MYOB holds no bank side, and Zoho Books exposes\nbalances but no bank-transaction list, so a MYOB or Zoho Books close goes straight to\nthe CSV match below.\n\n**Compare net to net, or every line looks broken.** The ledger records the net bank\ndeposit; the processor's report shows the gross sale. Match those directly and every\nrow shows a discrepancy the exact size of the fee. Use the processor's **net payout**\n(gross minus fees) — see [reference\u002Fgotchas.md](reference\u002Fgotchas.md).\n\nMatch each settlement deposit against the ledger's bank deposit line:\n- **Match** — amount and date agree within 2 days → mark as reconciled\n- **Difference \u003C 0.50** — rounding\u002Ffee; note but don't flag\n- **Difference ≥ 0.50** — flag with the delta amount\n- **Settlement exists, no ledger deposit** — flag as \"missing in the ledger\"\n- **Ledger deposit exists, no settlement** — flag as \"deposit not in processor data\"\n\nSee [reference\u002Fpaypal-settlements.md](reference\u002Fpaypal-settlements.md) for settlement\nreport field mappings (PayPal, Square, Stripe) and\n[reference\u002Fv2_sources.md](reference\u002Fv2_sources.md) for Shopify.\n\n### Step 4 — Detect suspicious duplicates\n\nScan the register for likely duplicate charges or deposits. Flag a transaction as a\nsuspicious duplicate when **all three** match:\n- Same amount (within 0.01)\n- Same vendor or customer name\n- Posted within 5 calendar days of each other\n\nScan what the ledger actually holds. In QuickBooks that is the transaction list,\nwith split rows grouped by transaction id first. In Xero a bill keyed twice makes two\nunpaid documents and no bank line, so scan bills and invoices (same contact, same\ntotal, within 5 days, both unpaid or one paid inside the window) rather than bank\nlines — the mapping is in [reference\u002Fxero-reconcile.md](reference\u002Fxero-reconcile.md).\nZoho Books is the same shape: scan invoices and expenses as documents\n([reference\u002Fzoho-books-reconcile.md](reference\u002Fzoho-books-reconcile.md)).\n\nPresent flagged pairs to the user. They decide whether each is legitimate (e.g., a\nrecurring weekly subscription) or a real duplicate to void.\n\n**The 5-day window is a filter, not a guarantee.** It catches the same charge keyed\ntwice without drowning the owner in recurring weekly bills, but a real double payment\nthree weeks apart slips through. Say what was scanned (\"repeats within 5 days\"), and\nwiden the window for a vendor they're suspicious about rather than calling it clean.\n\nSee [reference\u002Fgotchas.md](reference\u002Fgotchas.md) for common false-positive patterns\nand how to distinguish them.\n\n### Step 5 — Receipts check\n\nCheck the ledger first: an attachment on the transaction counts as a receipt on file\n(`AttachmentCount` in QuickBooks; `has_attachments` in Xero, returned only with\n`include_line_items=true`; `has_attachment` on Zoho Books invoices and expenses). Then,\nif the Desktop connector is available, scan the\nreceipts folder (ask the user for the path; default `~\u002FDocuments\u002FReceipts`) for the\ntarget month.\n\nFor each expense transaction above 25 with no attached document:\n- Check for a matching receipt file (match by amount ± 0.50 and date within 3 days)\n- **Matched** → note as \"receipt on file\"\n- **Not matched** → flag as \"missing receipt\"\n\nList missing receipts. The user can supply the file or mark as \"receipt not required\"\n(e.g., a recurring auto-pay with no receipt).\n\nIf Desktop connector is not available, ask the user to confirm which expenses they have\nreceipts for — don't silently skip this step.\n\n### Step 5a — Payroll cross-check\n\nRuns only when a payroll connector is connected (Gusto or QuickBooks Payroll — peers,\nwhichever is connected). Otherwise skip it and say the packet carries no payroll column.\n\nPull what was actually paid in the month, totals only:\n\n- **Gusto** — `list_payrolls` with `include=totals`, keeping the payrolls whose\n  `check_date` falls in the target month. From each `totals`: `gross_pay`,\n  `employer_taxes`, `employee_taxes`, `net_pay`. Then `list_contractor_payments` for\n  the same date range with `group_by_date=true`, taking `total.wages` and\n  `total.reimbursements`. Contractor totals cover US contractors only — say so in the\n  packet footnote.\n- **QuickBooks Payroll** — `qbo_payroll_get_company_last_payroll_run` for the most\n  recent run; earlier runs in the month come from the payroll summary export.\n  (Confirm before the first close.)\n\nCross-check against the ledger: net pay plus employer taxes plus contractor wages should\nappear as the month's payroll expense lines. A difference above 0.50 is a reconciliation\nitem — usually a run posted to the wrong month, or a payroll journal not yet posted.\n\n**Totals only, never people.** The packet carries the month's totals and the count of\nruns. No employee name, rate, or per-person amount leaves the connector — that is\npayroll data, and `payroll-prep` is where it belongs. See\n[reference\u002Fv2_sources.md](reference\u002Fv2_sources.md) for the field mapping.\n\n### Step 6 — Owner sign-off gate\n\nPresent a summary before going further:\n\n```\nNeeds attention (uncategorized or unreconciled):  X of X resolved\nSettlement discrepancies:                        X flagged, X resolved\nSuspicious duplicates:                           X flagged, X cleared\nMissing receipts:                                X outstanding\nPayroll cross-check:                             matched \u002F X difference \u002F no payroll connector\n```\n\nAsk: \"Ready to write the P&L summary and export the close packet?\"\n\n**Do not proceed to Steps 7–8 without explicit confirmation.**\n\n### Step 7 — Write the P&L narrative\n\nWrite a plain-English summary of the month — the kind an owner would share with their\nspouse or accountant, not a CFO memo. Aim for 150–250 words.\n\nStructure:\n1. **Headline** — one sentence: \"March came in at AUD 12,400 net, up 6% from February.\" Currency code, never a bare symbol.\n2. **Revenue** — what drove the number; name products, services, or customers if\n   the data shows concentration.\n3. **Gross margin** — whether it held, rose, or compressed, and the main reason why.\n4. **Key expenses** — any line that moved more than 10% MoM or is outside the normal\n   range; one sentence each.\n5. **Bottom line** — net income vs. prior month; ask if they have a target to compare.\n6. **Watch list** — 1–3 things to monitor next month.\n\nAvoid jargon; define anything that isn't plain English (\"MoM\" = month over month).\n\nSee [reference\u002Fexamples\u002Fpl-narrative.md](reference\u002Fexamples\u002Fpl-narrative.md) for a\nworked example.\n\n### Step 8 — Export the close packet\n\nProduce two files:\n\n**`close-packet-[YYYY-MM].xlsx`** — three sheets, four when a payroll connector is connected:\n- `P&L` — the ledger's P&L data, formatted\n- `Reconciliation` — matched and flagged transactions side by side\n- `Action Items` — any outstanding flags (uncategorized, missing receipts, etc.)\n- `Payroll` — the Step 5a totals beside the ledger's payroll expense, with the delta\n\n**`close-packet-[YYYY-MM]-summary.pdf`** — one page:\n- Month and business name at the top\n- Key figures (revenue, gross margin %, net income)\n- The P&L narrative from Step 7\n- Count of open action items, if any\n\nSave both to the Desktop (or a path the user specifies). Confirm the file locations.\n\nSee [reference\u002Fclose-packet-format.md](reference\u002Fclose-packet-format.md) for column\nspecs and PDF layout details.\n\nAlso deliver the close as a page, per the owner's stored output preference —\nnever default to a markdown file. Check the `## Business context` block's\n`Output preference` (shared style guide rule, `..\u002F..\u002Fshared\u002Fartifact-style.md`):\n\n- **Visual artifact (the default):** render the close as an HTML page in the\n  house style — additive to the chat summary and the files, never a\n  replacement. Revenue, gross margin percent, and net income are stat tiles\n  with their month-over-month change as context lines; the reconciliation\n  results are a table with tabular-nums amounts; each flag carries a status\n  pill — good for reconciled, warn for missing receipts and uncategorized\n  items, critical for unresolved settlement gaps and duplicates; the P&L\n  narrative and the open-items checklist each get a panel.\n- **docx \u002F md \u002F notion \u002F canva preference:** deliver the same content in that\n  form — a DOCX or markdown file, a Notion page created via the connector\n  (named destination, never overwriting), or a Canva Doc created via the Canva\n  connector (a new design each run, named with the date; tables become\n  lists); fall back to the visual artifact if Notion or Canva is not\n  connected — and say that is why. The packet xlsx and PDF keep their\n  formats.\n- **Best for skill:** use the visual artifact — the close is reviewed on\n  screen before the packet goes to the accountant.\n\n### Step 9 — After the close\n\nSay in one line what closed and what is still open. Then offer the single most\nrelevant next step, plus at most two others nearby:\n\n- \"Cash forecast\" runs `cash-flow-snapshot` off the freshly closed numbers.\n- \"Build me a report\" runs `report-builder` to publish and distribute the packet.\n- \"Taxes\" runs `\u002Ftax-prep` when quarter or year end is near — offered only when the\n  business context says Country is US, since that chain's tax math is US federal.\n\nMax three offers. Never repeat an offer the owner declined this session.\n\n## Approval gates\n\n- **Never run reconciliation on a month that has been filed.** Confirm the books are\n  still open before pulling data.\n- **Never void or modify a ledger transaction directly.** Surface flags; the owner\n  makes changes in the ledger.\n- **Always pause at Step 6** before producing outputs. Unresolved flags must be\n  acknowledged or explicitly skipped.\n- **Never reproduce per-person pay, SSNs, or bank numbers** in the close package\n  beyond the journal totals (`..\u002F..\u002Fshared\u002Fpersonal-data.md`).\n\n## Graceful degradation\n\n| Missing connector | Fallback |\n|---|---|\n| QuickBooks | Ask for **two separate exports** — the Profit & Loss report, and the Transaction Detail by Account report. One file will not carry both; asking for \"a QB export\" gets you one of them and a second round trip |\n| Xero | Ask for **two exports** — the Profit and Loss report, and the Account Transactions report with all accounts selected — plus the unreconciled line count from the bank reconciliation screen, which no export carries |\n| NetSuite or MYOB | Ask for the P&L and the transaction detail for the month as two exports; MYOB holds no bank balances, so the bank side comes from a statement |\n| Zoho Books | Even when connected, ask for the **Profit and Loss** export (no report endpoint) and a **bank statement** (no bank-transaction feed); the register and the uncategorised count come from the connector. Not connected: add the Account Transactions export |\n| Payment processor | Ask for a settlement CSV from the processor's website. It must include the fee column, not just the gross amount, or the net-to-net match in Step 3 can't be done |\n| Payment processor connected but returns zero payouts for the period | Treat as a data gap, not a clean zero. Say the connector returned nothing for the month, ask for the same settlement CSV (fee column included), and name the gap in the report rather than reconciling against an empty set |\n| Payroll connector (Gusto, QuickBooks Payroll) | Skip Step 5a. The packet has no Payroll sheet and the summary says \"no payroll connector\"; the ledger's payroll expense lines still appear in the P&L unchecked |\n| Desktop (receipts) | Ask the user to confirm receipt status for each flagged expense |\n\n## More sources\n\nRead `reference\u002Fv2_sources.md` for the mapping:\n\n- **Shopify** — settlement reconciliation as a first-class leg. Orders, payouts, and fees each land differently, and it's a common source of unexplained gaps\n- **NetSuite** — a ledger of record, common at the larger end of the segment; reports and SuiteQL supply the P&L and register\n- **Xero** — a ledger of record with its own register shape (bills, invoices, bank queue) and its own attention signal (unreconciled bank lines); mapped in `reference\u002Fxero-reconcile.md`\n- **MYOB** — P&L and AR\u002FAP balances; no bank balances, so the bank side of the close comes from a statement\n- **Zoho Books** — a ledger of record with a document register (invoices, expenses, purchase orders), bank balances with an uncategorised count as the attention signal, and no report or bank-feed endpoints, so the P&L and the payout match come from exports; mapped in `reference\u002Fzoho-books-reconcile.md`\n- **Ramp, Expensify** — card and expense detail, which closes the gap between what was spent and what was coded\n- **Gusto, QuickBooks Payroll** — payroll actually run: gross pay, employer taxes, net pay, and contractor payments as month totals, so Step 5a reconciles the ledger's payroll expense against what was paid rather than what was planned. Totals only; no per-person data enters the packet\n\nSame close sequence, same packet. More sources reconciled.\n\n**QuickBooks summary fields lie.** Read `..\u002F..\u002Fshared\u002Fquickbooks-report-traps.md` before quoting any total from a QuickBooks summary object: the AP aging summary nets vendor credits into its buckets and can show a negative overdue figure, and the P&L summary can report expenses as zero against real rows. Total the rows, or use the detail call.\n\n## Reference files\n\n- [reference\u002Fquickbooks-reconcile.md](reference\u002Fquickbooks-reconcile.md) — QB field\n  mappings, API pagination, common data issues\n- [reference\u002Fxero-reconcile.md](reference\u002Fxero-reconcile.md) — Xero register\n  definition, unreconciled-line signal, document-level duplicate scan, attachments\n- [reference\u002Fzoho-books-reconcile.md](reference\u002Fzoho-books-reconcile.md) — Zoho Books\n  register definition, uncategorised-count signal, what needs an export\n- [reference\u002Fpaypal-settlements.md](reference\u002Fpaypal-settlements.md) — settlement\n  report structure for PayPal, Square, and Stripe\n- [reference\u002Fclose-packet-format.md](reference\u002Fclose-packet-format.md) — xlsx column\n  specs, PDF layout, file naming convention\n- [reference\u002Fgotchas.md](reference\u002Fgotchas.md) — duplicate false positives, split\n  transactions, partial-month edge cases\n- [reference\u002Fexamples\u002Fpl-narrative.md](reference\u002Fexamples\u002Fpl-narrative.md) — worked\n  P&L narrative example\n\n## Using a tool that isn't listed\n\nThe connectors named in this skill are the tested paths, not a wall. If the owner wants this flow to use a tool that isn't connected or listed, offer `build-connector` — it checks the connector directory first and connects through Zapier otherwise, never hand-building against a raw API. Once the connection exists, the tool joins this skill like any other optional connector, under the same approval gates.\n",{"name":5,"description":52,"allowed-tools":53},"Reconciles the accounting ledger (MYOB, NetSuite, QuickBooks, Xero, or Zoho Books) against PayPal, Shopify, Square, and Stripe settlements, flags transactions that need attention, suspicious duplicates, and missing receipts, then writes a plain-English P&L narrative and exports a close packet (xlsx + one-page PDF). This is the first link of the \u002Fclose-month command; a request to close the month or the books routes there, and the command runs this skill before refreshing the forecast and distributing the packet. Use this skill directly only when the owner wants the reconciliation alone, with no forecast refresh and no distribution: \"just reconcile, no packet,\" \"what's missing from the books,\" \"flag the duplicates and missing receipts,\" or \"write the P&L narrative for this month.\"\n","Read, WebFetch","main","e605d8ddbfb688da57dfaaceebd93f12a64ef1d3","small-business\u002Fskills\u002Fmonth-end-prep",3945,"https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins","https:\u002F\u002Fgithub.com\u002Fanthropics","https:\u002F\u002Fanthropic.com","2026-11-13 23:29:50",{"source":8,"skillName":5,"commands":63,"prompt":73,"zipAvailable":74},[64,67,70],{"tool":65,"command":66},"npx","npx skills add anthropics\u002Fknowledge-work-plugins --skill month-end-prep",{"tool":68,"command":69},"bunx","bunx skills add anthropics\u002Fknowledge-work-plugins --skill month-end-prep",{"tool":71,"command":72},"pnpm","pnpm dlx skills add anthropics\u002Fknowledge-work-plugins --skill month-end-prep","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Fmonth-end-prep\u002FSKILL.md",true,[76,82,86,90,94,98,102,106],{"path":77,"resourceType":78,"resourceTypeDesc":79,"sizeBytes":80,"sourceHtmlUrl":81},"reference\u002Fclose-packet-format.md","REFERENCE","参考文档",4618,"https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Fmonth-end-prep\u002Freference\u002Fclose-packet-format.md",{"path":83,"resourceType":78,"resourceTypeDesc":79,"sizeBytes":84,"sourceHtmlUrl":85},"reference\u002Fexamples\u002Fpl-narrative.md",2089,"https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Fmonth-end-prep\u002Freference\u002Fexamples\u002Fpl-narrative.md",{"path":87,"resourceType":78,"resourceTypeDesc":79,"sizeBytes":88,"sourceHtmlUrl":89},"reference\u002Fgotchas.md",4004,"https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Fmonth-end-prep\u002Freference\u002Fgotchas.md",{"path":91,"resourceType":78,"resourceTypeDesc":79,"sizeBytes":92,"sourceHtmlUrl":93},"reference\u002Fpaypal-settlements.md",3822,"https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Fmonth-end-prep\u002Freference\u002Fpaypal-settlements.md",{"path":95,"resourceType":78,"resourceTypeDesc":79,"sizeBytes":96,"sourceHtmlUrl":97},"reference\u002Fquickbooks-reconcile.md",2821,"https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Fmonth-end-prep\u002Freference\u002Fquickbooks-reconcile.md",{"path":99,"resourceType":78,"resourceTypeDesc":79,"sizeBytes":100,"sourceHtmlUrl":101},"reference\u002Fv2_sources.md",6207,"https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Fmonth-end-prep\u002Freference\u002Fv2_sources.md",{"path":103,"resourceType":78,"resourceTypeDesc":79,"sizeBytes":104,"sourceHtmlUrl":105},"reference\u002Fxero-reconcile.md",7259,"https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Fmonth-end-prep\u002Freference\u002Fxero-reconcile.md",{"path":107,"resourceType":78,"resourceTypeDesc":79,"sizeBytes":108,"sourceHtmlUrl":109},"reference\u002Fzoho-books-reconcile.md",6846,"https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Fmonth-end-prep\u002Freference\u002Fzoho-books-reconcile.md",[111,137,157,179,208,234],{"skillNo":112,"name":113,"nameZh":6,"description":114,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":115,"categories":116,"keywords":117,"publishedAt":47},"01M718Y97HCGW12Q53PSJDY03W","ticket-deflector","Reads a forwarded customer email or ticket, pulls order and refund status from a payments connector (PayPal, Square, or Stripe) or Shopify, account history from the CRM, and open tickets from a support desk (Zoho Desk), drafts a tone-matched reply in the owner's writing voice, and can issue a refund through the payments connector with explicit owner approval. With Shopify connected it also runs a proactive order-triage mode that surfaces orders needing attention — unfulfilled past the promised window, payment problems, pending refunds, stuck shipments — and drafts the next action for each before the customer has to ask. Use when the user says \"draft a response,\" \"answer this customer,\" \"where's my order,\" \"I want a refund,\" \"check my orders,\" or \"anything about to blow up.\"","https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Fticket-deflector\u002FSKILL.md",[],[118,119,120,121,122,123,124,31,125,126,127,128,129,130,131,132,133,134,135,136],"ticket","ticket deflector","mode","up","payments","open","writing","workflow","ask","Connector","text","mail","window","next","customer","support","crm","past","read",{"skillNo":138,"name":139,"nameZh":6,"description":140,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":141,"categories":142,"keywords":143,"publishedAt":47},"01M718Y55HFAN5705ME5VEDZ9K","tax-season-organizer","Prepares tax-season materials for the owner's accountant, not tax advice. US federal tax; a non-US business gets its closed-books packet instead. Two modes: (1) quarterly estimated tax from YTD net income in the ledger (MYOB, NetSuite, QuickBooks, Xero, or Zoho Books); (2) year-end 1099 prep, scanning the ledger, PayPal, and Stripe for contractors paid over USD 600 into a 1099-NEC list with missing W-9 flags.\nAny tax request routes first to \u002Ftax-prep, which confirms the books are closed and reconciled before running this skill. Use this skill directly only when the owner says the period's books are already closed: \"books are closed, now do the 1099s,\" \"run the quarterly estimate off the closed numbers,\" or \"just the contractor W-9 list.\"","https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Ftax-season-organizer\u002FSKILL.md",[],[144,145,146,147,40,148,29,149,42,150,31,32,39,151,152,153,136,154,155,156],"tax season organizer","tax","us federal","which","paid","usd","now","scanning","run","request","flags","list","stripe",{"skillNo":158,"name":159,"nameZh":6,"description":160,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":161,"categories":162,"keywords":163,"publishedAt":47},"01M718Y13VVPHDD9NTDBVFJ2AZ","tax-prep","Prepares tax materials as a two-link chain — month-end-prep confirms the books are closed and reconciled first, then tax-season-organizer calculates the quarterly estimated payment or builds the year-end 1099-NEC list and accountant packet from those closed numbers. Requires a ledger (MYOB, NetSuite, QuickBooks, Xero, or Zoho Books); uses Gusto, PayPal, and Stripe when connected, else CSV upload. US federal tax math; a non-US business gets the closed-books packet. Prep material for a CPA, never tax advice, nothing filed. Trigger on \"quarterly taxes,\" \"estimated tax payment,\" \"how much should I set aside,\" \"1099s,\" \"1099-NEC,\" \"W-9s,\" \"year-end tax prep,\" \"get my books ready for my accountant,\" any phrasing that suggests a tax deadline is coming, or a question about net profit or YTD income that sounds like worry about a tax bill. An owner who says the period's books are already closed routes to tax-season-organizer directly.","https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Ftax-prep\u002FSKILL.md",[],[164,145,27,165,146,166,167,40,168,169,170,171,172,173,174,29,175,176,177,178],"tax prep","SET","as","ready","never","zoho books","get","chain","profit","for","trigger","material","question","paypal","business",{"skillNo":180,"name":181,"nameZh":6,"description":182,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":183,"categories":184,"keywords":190,"publishedAt":47},"01M718XWTWQZ01GYSG9T8RW8TW","speed-to-lead","Makes sure no inbound lead goes unanswered. Watches web forms, the shared inbox, and the CRM for new inquiries, qualifies each one against the owner's criteria, drafts a reply in the owner's voice with real meeting times for the owner to approve and send, routes anything hot to a human right away, and logs the whole thing to the CRM. Never sends on its own. Built to run on a schedule so overnight inquiries are drafted and sorted by morning, and works from forwarded or pasted inquiries when no connector is available. Use this whenever the owner is worried about inbound leads or response time — including phrasings like \"leads are going cold,\" \"did anyone answer that inquiry,\" \"I keep missing form submissions,\" \"nothing falls through the cracks,\" \"handle my inbound,\" \"respond to this lead,\" or \"we lose people because nobody gets back fast enough.\" Reach for it for a single unanswered inquiry as readily as for a standing setup.","https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Fspeed-to-lead\u002FSKILL.md",[185],{"categoryNo":186,"categoryName":187,"taxonomyType":188,"taxonomyTypeDesc":189},"01JBSEEDCAT000000000000034","行政与办公人员","PROFESSION","适用职业",[191,192,193,194,195,196,168,197,198,199,200,201,202,203,31,204,205,127,206,207],"speed to lead","lead","speed","shared","back","cold","time","inbox","send","respond","new","web forms","people","schedule","logs","sure","human",{"skillNo":209,"name":210,"nameZh":6,"description":211,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":212,"categories":213,"keywords":217,"publishedAt":47},"01M718XQYMN1KY3TPS33967FK0","social-content-engine","Runs the owner's content operation as a standing thing rather than a one-off: keeps a rolling posting calendar, learns the owner's voice, generates on-brand Canva graphics, writes captions that sound like them, repurposes one asset into every channel format, and stages posts for approval instead of publishing on its own. Pulls product photos and prices from Shopify when connected; with no connectors, drafts the calendar and asset briefs for manual posting. Use this whenever the owner talks about posting, content, or social — including \"I need to post more,\" \"we've gone quiet on Instagram,\" \"what should we post this month,\" \"make the content,\" \"give me a month of posts,\" \"write this in my voice,\" \"repurpose this,\" or \"set up our content calendar.\" Reach for it for a single post as readily as for a full quarter. One handoff: a finished, approved campaign brief goes to canva-creator; this skill owns the standing operation.","https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Fsocial-content-engine\u002FSKILL.md",[214],{"categoryNo":215,"categoryName":216,"taxonomyType":188,"taxonomyTypeDesc":189},"01JBSEEDCAT000000000000036","内容创作者",[218,219,220,221,222,223,165,224,225,226,227,121,228,31,229,230,231,136,232,233],"social","social content engine","engine","content engine","social content","content","brief","posts","Captions","prices","campaign","me","product","calendar","write","drafts",{"skillNo":235,"name":236,"nameZh":6,"description":237,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":238,"categories":239,"keywords":240,"publishedAt":47},"01M718XMPJVH0EVRVP998BVZPC","smb-router","The front door to the Small Business plugin. Listens to what the owner needs right now — vague or specific — and routes them to the best skill or slash command for the moment. Also serves as a guide: explains what's available, suggests what to try next, and adapts recommendations based on stored business context. Trigger whenever the owner asks \"what can you do,\" \"help me with my business,\" \"what should I focus on,\" \"I don't know where to start,\" or any open-ended business request that doesn't clearly match a single skill.","https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fknowledge-work-plugins\u002Fblob\u002Fmain\u002Fsmall-business\u002Fskills\u002Fsmb-router\u002FSKILL.md",[],[241,242,243,166,244,173,174,245,123,246,150,178,247,248,249,250,251,229,252,131],"router","smb","smb router","do","front","single","you","vague","can","with","plugin","focus"]