[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6K3WADA3KX7PS50R0ZMPH39":3,"skill-same:01M6K3WADA3KX7PS50R0ZMPH39":58},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":30,"linkOnly":31,"markdownContent":32,"markdownBody":33,"frontMatter":34,"refName":37,"commitSha":38,"skillDirectory":39,"forksCount":40,"repositoryHtmlUrl":41,"repositoryHomepageUrl":6,"ownerHtmlUrl":42,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":43,"install":44,"resources":57},"01M6K3WADA3KX7PS50R0ZMPH39","revenue-forecast-scenario",null,"Build scenario-based revenue outlooks with assumptions, downside cases, and budget implications for city leadership.","BrianPillmore\u002FMayorGPT","BrianPillmore","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F89977304?v=4","01M6K3S5PAA7GX17DJCHR5QFZ2","01M6K3S5TAA6HKGD1BY6VTV0QB",1,"MIT","https:\u002F\u002Fgithub.com\u002FBrianPillmore\u002FMayorGPT\u002Fblob\u002Fmaster\u002Fskills\u002Ffinance\u002Frevenue-forecast-scenario\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27,28,29],"forecast","scenario","revenue","revenue forecast","forecast scenario","revenue forecast scenario","Budget","build","leadership","with","for","source","2026-11-10 10:12:30",false,"---\nname: revenue-forecast-scenario\ndescription: Build scenario-based revenue outlooks with assumptions, downside cases, and budget implications for city leadership.\nargument-hint: [revenue-source]\n---\n\n## Purpose\nCreate a defensible multi-year revenue outlook by source (property tax, sales\u002Flocal option tax, franchise fees, permits, charges, intergovernmental, interest) with explicit drivers and scenarios, so the budget can distinguish recurring capacity from one-time money.\n\n## Required inputs\n- Five to ten years of actuals by revenue source, budget vs. actual accuracy history, and the current-year YTD.\n- Drivers: assessed value and levy limits (tax caps, rate rollbacks), taxable sales base, building permit pipeline, population\u002Fhouseholds, state shared revenue formulas, interest rates, fee schedules.\n- Known changes: annexations, expiring TIF or abatements, new or expiring local taxes, state legislation, large taxpayers, and one-time receipts.\n\n## Workflow\n1. Clean the history: remove one-time items (settlements, asset sales, FEMA, ARPA-type funds, catch-up payments) and adjust for rate\u002Ffee changes to find the underlying trend.\n2. Identify the legal mechanics for each source: property tax levy limits and delay between valuation and collection; sales tax collection and remittance lag; state formulas and their annual revision; earmarked or restricted revenues that cannot support general operations.\n3. Build base case with a driver-based formula (for example, assessed value growth times rate under the limit; taxable sales growth with inflation and population). Avoid mere linear extrapolation.\n4. Build downside (recession or loss of a large taxpayer, with a historical analog such as the city's own worst year), and upside. Provide probability language without false precision.\n5. Add concentration risk: top ten taxpayers' share, single-industry reliance, and online\u002Fremote sales shifts.\n6. Link to expenditures: compare recurring revenue growth to recurring cost growth (wages, benefits, pension, healthcare, debt service, contracts). Present the structural gap by year.\n7. Quantify budget response options: hiring pause, deferred capital, fee changes, reserve use (one-time only), levy increase subject to limits and voter approval, and service reductions. State what each yields and when.\n8. Set monitoring triggers: indicators (monthly sales tax, permit counts, delinquency) with thresholds that trigger mid-year action.\n\n## Output structure\n| Source | Last actual | Base | Downside | Upside | Key driver\u002Fassumption | Legal constraint | Recurring or one-time |\nYears: current plus three to five projected. Add a structural-balance table (recurring revenue minus recurring expenditure, by scenario) and a trigger list.\n\n## Red flags \u002F escalate\n- Budget revenue above the most recent actual without a documented driver.\n- Reliance on one-time revenue for recurring expenditure (\"funding cliff\").\n- Levy-limit or voter-approval constraints that cap growth below cost growth.\n- Expiring grants or ARPA-type funds that fund permanent positions.\n- Pending court cases or state legislation that could change a revenue stream (coordinate with the city attorney and the legislative-tracker skill).\n\n## Common mistakes\n- Using a single growth rate for all sources.\n- Forgetting the timing lag between assessment and collection.\n- Treating interest income as stable.\n- Presenting a downside no worse than last year.\n- Confusing cash receipts with accrued revenue.\n\n## State-law variance\nTax limits, authorized local taxes, shared-revenue rules, and voter approval requirements differ widely by state.\n","## Purpose\nCreate a defensible multi-year revenue outlook by source (property tax, sales\u002Flocal option tax, franchise fees, permits, charges, intergovernmental, interest) with explicit drivers and scenarios, so the budget can distinguish recurring capacity from one-time money.\n\n## Required inputs\n- Five to ten years of actuals by revenue source, budget vs. actual accuracy history, and the current-year YTD.\n- Drivers: assessed value and levy limits (tax caps, rate rollbacks), taxable sales base, building permit pipeline, population\u002Fhouseholds, state shared revenue formulas, interest rates, fee schedules.\n- Known changes: annexations, expiring TIF or abatements, new or expiring local taxes, state legislation, large taxpayers, and one-time receipts.\n\n## Workflow\n1. Clean the history: remove one-time items (settlements, asset sales, FEMA, ARPA-type funds, catch-up payments) and adjust for rate\u002Ffee changes to find the underlying trend.\n2. Identify the legal mechanics for each source: property tax levy limits and delay between valuation and collection; sales tax collection and remittance lag; state formulas and their annual revision; earmarked or restricted revenues that cannot support general operations.\n3. Build base case with a driver-based formula (for example, assessed value growth times rate under the limit; taxable sales growth with inflation and population). Avoid mere linear extrapolation.\n4. Build downside (recession or loss of a large taxpayer, with a historical analog such as the city's own worst year), and upside. Provide probability language without false precision.\n5. Add concentration risk: top ten taxpayers' share, single-industry reliance, and online\u002Fremote sales shifts.\n6. Link to expenditures: compare recurring revenue growth to recurring cost growth (wages, benefits, pension, healthcare, debt service, contracts). Present the structural gap by year.\n7. Quantify budget response options: hiring pause, deferred capital, fee changes, reserve use (one-time only), levy increase subject to limits and voter approval, and service reductions. State what each yields and when.\n8. Set monitoring triggers: indicators (monthly sales tax, permit counts, delinquency) with thresholds that trigger mid-year action.\n\n## Output structure\n| Source | Last actual | Base | Downside | Upside | Key driver\u002Fassumption | Legal constraint | Recurring or one-time |\nYears: current plus three to five projected. Add a structural-balance table (recurring revenue minus recurring expenditure, by scenario) and a trigger list.\n\n## Red flags \u002F escalate\n- Budget revenue above the most recent actual without a documented driver.\n- Reliance on one-time revenue for recurring expenditure (\"funding cliff\").\n- Levy-limit or voter-approval constraints that cap growth below cost growth.\n- Expiring grants or ARPA-type funds that fund permanent positions.\n- Pending court cases or state legislation that could change a revenue stream (coordinate with the city attorney and the legislative-tracker skill).\n\n## Common mistakes\n- Using a single growth rate for all sources.\n- Forgetting the timing lag between assessment and collection.\n- Treating interest income as stable.\n- Presenting a downside no worse than last year.\n- Confusing cash receipts with accrued revenue.\n\n## State-law variance\nTax limits, authorized local taxes, shared-revenue rules, and voter approval requirements differ widely by state.\n",{"name":5,"description":7,"argument-hint":35},[36],"revenue-source","master","edf1fceb08dc8ba63f1ad9159df28c1e0ef449fb","skills\u002Ffinance\u002Frevenue-forecast-scenario",0,"https:\u002F\u002Fgithub.com\u002FBrianPillmore\u002FMayorGPT","https:\u002F\u002Fgithub.com\u002FBrianPillmore","2026-11-02 04:58:40",{"source":8,"skillName":5,"commands":45,"prompt":55,"zipAvailable":56},[46,49,52],{"tool":47,"command":48},"npx","npx skills add BrianPillmore\u002FMayorGPT --skill revenue-forecast-scenario",{"tool":50,"command":51},"bunx","bunx skills add BrianPillmore\u002FMayorGPT --skill revenue-forecast-scenario",{"tool":53,"command":54},"pnpm","pnpm dlx skills add BrianPillmore\u002FMayorGPT --skill revenue-forecast-scenario","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FBrianPillmore\u002FMayorGPT\u002Fblob\u002Fmaster\u002Fskills\u002Ffinance\u002Frevenue-forecast-scenario\u002FSKILL.md",true,[],[59,77,90,122,141,155],{"skillNo":60,"name":61,"nameZh":6,"description":62,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":63,"categories":64,"keywords":65,"publishedAt":30},"01M6K466QB0Q2EVZRJ5X1XY21C","town-hall-kit","Prepare a town hall kit with agenda, ground rules, likely questions, follow-up method, and message priorities.","https:\u002F\u002Fgithub.com\u002FBrianPillmore\u002FMayorGPT\u002Fblob\u002Fmaster\u002Fskills\u002Fpublic-engagement\u002Ftown-hall-kit\u002FSKILL.md",[],[66,67,68,69,27,70,71,72,73,74,75,76],"town hall kit","kit","follow-up","questions","event","agenda","prepare","priorities","message","Rules","up",{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":83,"publishedAt":30},"01M6K462B8XJ2FFYH8BAXR0ZM5","speechwriter","Draft remarks for the mayor, council, manager, or department head in a strong but grounded municipal voice.","https:\u002F\u002Fgithub.com\u002FBrianPillmore\u002FMayorGPT\u002Fblob\u002Fmaster\u002Fskills\u002Fpublic-engagement\u002Fspeechwriter\u002FSKILL.md",[],[79,84,85,86,87,88,70,89,28],"draft","council","voice","but","head","manager",{"skillNo":91,"name":92,"nameZh":6,"description":93,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":94,"categories":95,"keywords":106,"publishedAt":30},"01M6K45Z8MYT7FVMV48WE0MACS","social-post-series","Generate a multi-post city social media series with tone control, accessibility, and channel fit.","https:\u002F\u002Fgithub.com\u002FBrianPillmore\u002FMayorGPT\u002Fblob\u002Fmaster\u002Fskills\u002Fpublic-engagement\u002Fsocial-post-series\u002FSKILL.md",[96,101],{"categoryNo":97,"categoryName":98,"taxonomyType":99,"taxonomyTypeDesc":100},"01JBSEEDCAT000000000000019","营销推广","SCENARIO","使用场景",{"categoryNo":102,"categoryName":103,"taxonomyType":104,"taxonomyTypeDesc":105},"01JBSEEDCAT000000000000035","市场营销","PROFESSION","适用职业",[107,108,109,110,111,112,113,27,114,115,116,117,118,119,120,121],"social post","series","post","social","social post series","fit","multi","social media","control","accessibility","generate","Media","channel","campaign","tone",{"skillNo":123,"name":124,"nameZh":6,"description":125,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":126,"categories":127,"keywords":131,"publishedAt":30},"01M6K45W3AWHA1GMZV2PRDYJBS","public-comment-summarizer","Synthesize hearing or meeting comments into themes, misconceptions, unanswered questions, and response options.","https:\u002F\u002Fgithub.com\u002FBrianPillmore\u002FMayorGPT\u002Fblob\u002Fmaster\u002Fskills\u002Fpublic-engagement\u002Fpublic-comment-summarizer\u002FSKILL.md",[128],{"categoryNo":129,"categoryName":130,"taxonomyType":104,"taxonomyTypeDesc":105},"01JBSEEDCAT000000000000034","行政与办公人员",[132,133,134,135,136,137,138,69,139,140],"public","public comment summarizer","public comment","summarizer","options","synthesize","themes","comments","meeting",{"skillNo":142,"name":143,"nameZh":6,"description":144,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":145,"categories":146,"keywords":147,"publishedAt":30},"01M6K45QWBXSDMGQTA1E9NC43M","press-release-writer","Write a city press release that is accurate, readable, and aligned with legal and operational review needs.","https:\u002F\u002Fgithub.com\u002FBrianPillmore\u002FMayorGPT\u002Fblob\u002Fmaster\u002Fskills\u002Fpublic-engagement\u002Fpress-release-writer\u002FSKILL.md",[],[148,149,150,151,152,153,154,27],"press release writer","press release","writer","release","review","write","legal",{"skillNo":156,"name":157,"nameZh":6,"description":158,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":159,"categories":160,"keywords":162,"publishedAt":30},"01M6K45JXZRSW4XXH78FTRBB2A","meeting-notice-drafter","Draft a legally sufficient public notice for any city council, board, commission, or committee meeting — covering required content, posting deadlines, and special-meeting or emergency-meeting rules.","https:\u002F\u002Fgithub.com\u002FBrianPillmore\u002FMayorGPT\u002Fblob\u002Fmaster\u002Fskills\u002Fpublic-engagement\u002Fmeeting-notice-drafter\u002FSKILL.md",[161],{"categoryNo":129,"categoryName":130,"taxonomyType":104,"taxonomyTypeDesc":105},[163,140,164,165,75,132,166,84,167,168,28,85],"meeting notice drafter","notice","content","board","posting","type"]