[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-openai-industry":3,"mdc--1vlg0b-key":36,"related-repo-openai-industry":701,"related-org-openai-industry":824},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":25,"repoUrl":26,"updatedAt":27,"license":28,"forks":29,"topics":30,"repo":31,"sourceUrl":34,"mdContent":35},"industry","compare industry metrics across companies","Cross-company industry comparison across multiple tickers",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},"openai","OpenAI","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fopenai.png",[12,16,19,22],{"name":13,"slug":14,"type":15},"Finance","finance","tag",{"name":17,"slug":18,"type":15},"Data Analysis","data-analysis",{"name":20,"slug":21,"type":15},"Analytics","analytics",{"name":23,"slug":24,"type":15},"Equity Research","equity-research",3992,"https:\u002F\u002Fgithub.com\u002Fopenai\u002Fplugins","2026-06-30T19:00:57.102",null,465,[],{"repoUrl":26,"stars":25,"forks":29,"topics":32,"description":33},[],"OpenAI Plugins","https:\u002F\u002Fgithub.com\u002Fopenai\u002Fplugins\u002Ftree\u002FHEAD\u002Fplugins\u002Fdaloopa\u002Fskills\u002Findustry","---\nname: industry\ndescription: Cross-company industry comparison across multiple tickers\n---\n\nPerform an industry comparison across the companies named in the user's request. If no ticker or company is provided, ask for one before proceeding.\n\nThe user will provide multiple tickers separated by spaces (e.g., \"AAPL MSFT GOOG AMZN\").\n\n**Before starting, read `..\u002Fdata-access.md` for data access methods and `..\u002Fdesign-system.md` for formatting conventions.** Follow the data access detection logic and design system throughout this skill.\n\nFollow these steps:\n\n## 1. Company Lookups\nLook up all provided tickers using `discover_companies`. For each company, capture:\n- `company_id`\n- `latest_calendar_quarter` — use the earliest `latest_calendar_quarter` across all companies as the anchor for period calculations (see `..\u002Fdata-access.md` Section 1.5)\n- `latest_fiscal_quarter`\n- Note each company's fiscal year end — this is critical for calendar quarter alignment\n- Firm name for report attribution (default: \"Daloopa\") — see `..\u002Fdata-access.md` Section 4.5\n\n## 2. Comparable Financial Metrics\nCalculate 8 quarters backward from the anchor `latest_calendar_quarter`. For each company, find and pull these metrics:\n\n**Income Statement:**\n- Revenue\n- Gross Profit \u002F Gross Margin\n- Operating Income \u002F Operating Margin\n- EBITDA (if not reported, compute as Operating Income + D&A — label \"(calc.)\")\n- Net Income \u002F Net Margin\n- Diluted EPS\n- R&D Expense\n- Stock-Based Compensation (SBC)\n\n**Cash Flow:**\n- Operating Cash Flow\n- CapEx (Purchases of property, plant and equipment)\n- Free Cash Flow (compute as OCF - CapEx — label \"(calc.)\")\n- D&A (needed for EBITDA calc if not directly reported)\n\nFor any derived\u002Fcomputed metric, mark it with \"(calc.)\" so the reader knows it's not directly sourced.\n\n## 3. Company-Specific KPIs\nFirst, think about what KPIs matter for the specific industry being compared. Use the full sector taxonomy to guide discovery:\n\n- **SaaS\u002FCloud**: ARR, net revenue retention, RPO\u002FcRPO, customers >$100K, cloud gross margin\n- **Consumer Tech**: DAU\u002FMAU, ARPU, engagement metrics, installed base, paid subscribers\n- **E-commerce\u002FMarketplace**: GMV, take rate, active buyers\u002Fsellers, order frequency\n- **Retail**: same-store sales, store count, average ticket, transactions\n- **Telecom\u002FMedia**: subscribers, churn, ARPU, content spend\n- **Hardware**: units shipped, ASP, attach rate, installed base\n- **Financial Services**: AUM, NIM, loan growth, credit quality metrics, fee income ratio\n- **Pharma\u002FBiotech**: pipeline stage, patient starts, scripts, market share\n- **Industrials\u002FEnergy**: backlog, book-to-bill, utilization, production volumes, reserves\n\nFor each company, discover and pull the most relevant KPIs. Note which KPIs are common across the group (apples-to-apples comparison) and which are unique to specific companies. For mixed-sector comparisons, focus on the KPIs that apply to the largest revenue segments of each company.\n\n## 4. Normalize & Compare\n- **Calendar quarter alignment is critical.** Ensure all companies are compared on the same calendar quarters. Note each company's fiscal year end and map fiscal quarters to calendar quarters.\n- Build side-by-side comparison tables\n- Calculate margins for ALL 4 recent quarters (not just the latest) to show trends\n- Calculate YoY growth rates for each of the last 4 quarters\n\n## 5. Ranking & Analysis\n- Rank companies on each key metric (revenue growth, margins, FCF yield, etc.)\n- Identify the leader and laggard for each metric\n- Flag notable outliers (unusually high\u002Flow margins, accelerating\u002Fdecelerating growth)\n- Note any divergence in KPIs or business model differences\n- Compute R&D as % of revenue and SBC as % of revenue for each company — these reveal structural differences in how each company invests and compensates\n- Show YoY segment growth rates for the most recent quarter, not just absolute segment revenue\n- Flag one-time items that distort any quarter's comparison\n\n## 6. Document Search\nFor each company, search the most recent 2 quarters of filings across multiple queries. If any search returns empty, try alternative keywords before giving up.\n\n- **Competitive positioning**: Try \"competition\", \"market share\"; fallback to \"competitive\", \"leader\", \"position\"\n- **Industry trends**: Try \"industry\", \"market\", \"demand\"; fallback to \"secular\", \"trend\", \"adoption\"\n- **Strategic differentiation**: Try \"differentiate\", \"advantage\", \"moat\"; fallback to \"unique\", \"proprietary\", \"platform\"\n- **Growth strategy**: Try \"growth\", \"opportunity\", \"expansion\"; fallback to \"invest\", \"launch\", \"new market\"\n- **Macro \u002F headwinds**: Try \"macro\", \"headwind\"; fallback to \"tariff\", \"regulatory\", \"geopolitical\", \"inflation\"\n\nIf a company returns sparse results across all searches, try broader single-keyword searches (e.g., just \"competitive\" or just \"growth\") and search additional periods.\n\nFor each company, extract:\n- How management describes their competitive position\n- Key strategic priorities and investments\n- Industry or macro commentary that affects the whole group\n- Any direct references to competitors in the comparison set\n\nUse these findings to enrich the rankings analysis — numbers tell you who's winning, filings tell you why.\n\n## 7. Save Report\nSave to `reports\u002F{INDUSTRY_LABEL}_industry_comp.html` (where INDUSTRY_LABEL is derived from the tickers, e.g., \"AAPL_MSFT_GOOG_AMZN\") using the HTML report template from `..\u002Fdesign-system.md`. Write the full analysis as styled HTML with the design system CSS inlined. This is the final deliverable — no intermediate markdown step needed.\n\nThe report should include:\n- Summary header listing all companies compared, with fiscal year end dates\n- Side-by-side financial metrics table (last 4 calendar quarters, companies as columns, metrics as rows, Daloopa citations)\n- Trailing 4-quarter totals for revenue, operating income, net income, EPS, OCF, CapEx, FCF\n- **Margin trend table**: Gross margin, operating margin, net margin for ALL 4 quarters per company (not just latest quarter snapshot)\n- **Growth comparison table**: Revenue YoY and EPS YoY for each of the last 4 quarters per company\n- **R&D and SBC comparison**: R&D % of revenue and SBC % of revenue for each company (latest quarter + trend)\n- Segment revenue tables per company with YoY growth rates for each segment in the most recent quarter\n- KPI comparison (where applicable), noting common vs company-specific KPIs\n- **Cash flow comparison**: OCF, CapEx, FCF side-by-side with CapEx as % of revenue to highlight investment intensity differences\n- Rankings summary table\n- Key competitive insights from filings (with document citations)\n- Note on calendar quarter alignment and any fiscal year differences\n\nAll financial figures must use Daloopa citation format: `\u003Ca href=\"https:\u002F\u002Fdaloopa.com\u002Fsrc\u002F{fundamental_id}\">$X.XX million\u003C\u002Fa>`\n\nTell the user where the HTML report was saved.\n\nGive a clear competitive verdict: Who is winning and who is losing? Which company has the strongest competitive position and why? Which company looks most vulnerable? Are any of the companies structurally mispriced relative to peers (too cheap or too expensive given the fundamentals)? Don't hedge — rank them honestly.\n",{"data":37,"body":38},{"name":4,"description":6},{"type":39,"children":40},"root",[41,49,54,82,87,94,107,172,178,190,198,241,249,272,277,283,288,381,386,392,420,426,464,470,475,528,533,538,561,566,572,592,597,680,691,696],{"type":42,"tag":43,"props":44,"children":45},"element","p",{},[46],{"type":47,"value":48},"text","Perform an industry comparison across the companies named in the user's request. If no ticker or company is provided, ask for one before proceeding.",{"type":42,"tag":43,"props":50,"children":51},{},[52],{"type":47,"value":53},"The user will provide multiple tickers separated by spaces (e.g., \"AAPL MSFT GOOG AMZN\").",{"type":42,"tag":43,"props":55,"children":56},{},[57,80],{"type":42,"tag":58,"props":59,"children":60},"strong",{},[61,63,70,72,78],{"type":47,"value":62},"Before starting, read ",{"type":42,"tag":64,"props":65,"children":67},"code",{"className":66},[],[68],{"type":47,"value":69},"..\u002Fdata-access.md",{"type":47,"value":71}," for data access methods and ",{"type":42,"tag":64,"props":73,"children":75},{"className":74},[],[76],{"type":47,"value":77},"..\u002Fdesign-system.md",{"type":47,"value":79}," for formatting conventions.",{"type":47,"value":81}," Follow the data access detection logic and design system throughout this skill.",{"type":42,"tag":43,"props":83,"children":84},{},[85],{"type":47,"value":86},"Follow these steps:",{"type":42,"tag":88,"props":89,"children":91},"h2",{"id":90},"_1-company-lookups",[92],{"type":47,"value":93},"1. Company Lookups",{"type":42,"tag":43,"props":95,"children":96},{},[97,99,105],{"type":47,"value":98},"Look up all provided tickers using ",{"type":42,"tag":64,"props":100,"children":102},{"className":101},[],[103],{"type":47,"value":104},"discover_companies",{"type":47,"value":106},". For each company, capture:",{"type":42,"tag":108,"props":109,"children":110},"ul",{},[111,121,146,155,160],{"type":42,"tag":112,"props":113,"children":114},"li",{},[115],{"type":42,"tag":64,"props":116,"children":118},{"className":117},[],[119],{"type":47,"value":120},"company_id",{"type":42,"tag":112,"props":122,"children":123},{},[124,130,132,137,139,144],{"type":42,"tag":64,"props":125,"children":127},{"className":126},[],[128],{"type":47,"value":129},"latest_calendar_quarter",{"type":47,"value":131}," — use the earliest ",{"type":42,"tag":64,"props":133,"children":135},{"className":134},[],[136],{"type":47,"value":129},{"type":47,"value":138}," across all companies as the anchor for period calculations (see ",{"type":42,"tag":64,"props":140,"children":142},{"className":141},[],[143],{"type":47,"value":69},{"type":47,"value":145}," Section 1.5)",{"type":42,"tag":112,"props":147,"children":148},{},[149],{"type":42,"tag":64,"props":150,"children":152},{"className":151},[],[153],{"type":47,"value":154},"latest_fiscal_quarter",{"type":42,"tag":112,"props":156,"children":157},{},[158],{"type":47,"value":159},"Note each company's fiscal year end — this is critical for calendar quarter alignment",{"type":42,"tag":112,"props":161,"children":162},{},[163,165,170],{"type":47,"value":164},"Firm name for report attribution (default: \"Daloopa\") — see ",{"type":42,"tag":64,"props":166,"children":168},{"className":167},[],[169],{"type":47,"value":69},{"type":47,"value":171}," Section 4.5",{"type":42,"tag":88,"props":173,"children":175},{"id":174},"_2-comparable-financial-metrics",[176],{"type":47,"value":177},"2. Comparable Financial Metrics",{"type":42,"tag":43,"props":179,"children":180},{},[181,183,188],{"type":47,"value":182},"Calculate 8 quarters backward from the anchor ",{"type":42,"tag":64,"props":184,"children":186},{"className":185},[],[187],{"type":47,"value":129},{"type":47,"value":189},". For each company, find and pull these metrics:",{"type":42,"tag":43,"props":191,"children":192},{},[193],{"type":42,"tag":58,"props":194,"children":195},{},[196],{"type":47,"value":197},"Income Statement:",{"type":42,"tag":108,"props":199,"children":200},{},[201,206,211,216,221,226,231,236],{"type":42,"tag":112,"props":202,"children":203},{},[204],{"type":47,"value":205},"Revenue",{"type":42,"tag":112,"props":207,"children":208},{},[209],{"type":47,"value":210},"Gross Profit \u002F Gross Margin",{"type":42,"tag":112,"props":212,"children":213},{},[214],{"type":47,"value":215},"Operating Income \u002F Operating Margin",{"type":42,"tag":112,"props":217,"children":218},{},[219],{"type":47,"value":220},"EBITDA (if not reported, compute as Operating Income + D&A — label \"(calc.)\")",{"type":42,"tag":112,"props":222,"children":223},{},[224],{"type":47,"value":225},"Net Income \u002F Net Margin",{"type":42,"tag":112,"props":227,"children":228},{},[229],{"type":47,"value":230},"Diluted EPS",{"type":42,"tag":112,"props":232,"children":233},{},[234],{"type":47,"value":235},"R&D Expense",{"type":42,"tag":112,"props":237,"children":238},{},[239],{"type":47,"value":240},"Stock-Based Compensation (SBC)",{"type":42,"tag":43,"props":242,"children":243},{},[244],{"type":42,"tag":58,"props":245,"children":246},{},[247],{"type":47,"value":248},"Cash Flow:",{"type":42,"tag":108,"props":250,"children":251},{},[252,257,262,267],{"type":42,"tag":112,"props":253,"children":254},{},[255],{"type":47,"value":256},"Operating Cash Flow",{"type":42,"tag":112,"props":258,"children":259},{},[260],{"type":47,"value":261},"CapEx (Purchases of property, plant and equipment)",{"type":42,"tag":112,"props":263,"children":264},{},[265],{"type":47,"value":266},"Free Cash Flow (compute as OCF - CapEx — label \"(calc.)\")",{"type":42,"tag":112,"props":268,"children":269},{},[270],{"type":47,"value":271},"D&A (needed for EBITDA calc if not directly reported)",{"type":42,"tag":43,"props":273,"children":274},{},[275],{"type":47,"value":276},"For any derived\u002Fcomputed metric, mark it with \"(calc.)\" so the reader knows it's not directly sourced.",{"type":42,"tag":88,"props":278,"children":280},{"id":279},"_3-company-specific-kpis",[281],{"type":47,"value":282},"3. Company-Specific KPIs",{"type":42,"tag":43,"props":284,"children":285},{},[286],{"type":47,"value":287},"First, think about what KPIs matter for the specific industry being compared. Use the full sector taxonomy to guide discovery:",{"type":42,"tag":108,"props":289,"children":290},{},[291,301,311,321,331,341,351,361,371],{"type":42,"tag":112,"props":292,"children":293},{},[294,299],{"type":42,"tag":58,"props":295,"children":296},{},[297],{"type":47,"value":298},"SaaS\u002FCloud",{"type":47,"value":300},": ARR, net revenue retention, RPO\u002FcRPO, customers >$100K, cloud gross margin",{"type":42,"tag":112,"props":302,"children":303},{},[304,309],{"type":42,"tag":58,"props":305,"children":306},{},[307],{"type":47,"value":308},"Consumer Tech",{"type":47,"value":310},": DAU\u002FMAU, ARPU, engagement metrics, installed base, paid subscribers",{"type":42,"tag":112,"props":312,"children":313},{},[314,319],{"type":42,"tag":58,"props":315,"children":316},{},[317],{"type":47,"value":318},"E-commerce\u002FMarketplace",{"type":47,"value":320},": GMV, take rate, active buyers\u002Fsellers, order frequency",{"type":42,"tag":112,"props":322,"children":323},{},[324,329],{"type":42,"tag":58,"props":325,"children":326},{},[327],{"type":47,"value":328},"Retail",{"type":47,"value":330},": same-store sales, store count, average ticket, transactions",{"type":42,"tag":112,"props":332,"children":333},{},[334,339],{"type":42,"tag":58,"props":335,"children":336},{},[337],{"type":47,"value":338},"Telecom\u002FMedia",{"type":47,"value":340},": subscribers, churn, ARPU, content spend",{"type":42,"tag":112,"props":342,"children":343},{},[344,349],{"type":42,"tag":58,"props":345,"children":346},{},[347],{"type":47,"value":348},"Hardware",{"type":47,"value":350},": units shipped, ASP, attach rate, installed base",{"type":42,"tag":112,"props":352,"children":353},{},[354,359],{"type":42,"tag":58,"props":355,"children":356},{},[357],{"type":47,"value":358},"Financial Services",{"type":47,"value":360},": AUM, NIM, loan growth, credit quality metrics, fee income ratio",{"type":42,"tag":112,"props":362,"children":363},{},[364,369],{"type":42,"tag":58,"props":365,"children":366},{},[367],{"type":47,"value":368},"Pharma\u002FBiotech",{"type":47,"value":370},": pipeline stage, patient starts, scripts, market share",{"type":42,"tag":112,"props":372,"children":373},{},[374,379],{"type":42,"tag":58,"props":375,"children":376},{},[377],{"type":47,"value":378},"Industrials\u002FEnergy",{"type":47,"value":380},": backlog, book-to-bill, utilization, production volumes, reserves",{"type":42,"tag":43,"props":382,"children":383},{},[384],{"type":47,"value":385},"For each company, discover and pull the most relevant KPIs. Note which KPIs are common across the group (apples-to-apples comparison) and which are unique to specific companies. For mixed-sector comparisons, focus on the KPIs that apply to the largest revenue segments of each company.",{"type":42,"tag":88,"props":387,"children":389},{"id":388},"_4-normalize-compare",[390],{"type":47,"value":391},"4. Normalize & Compare",{"type":42,"tag":108,"props":393,"children":394},{},[395,405,410,415],{"type":42,"tag":112,"props":396,"children":397},{},[398,403],{"type":42,"tag":58,"props":399,"children":400},{},[401],{"type":47,"value":402},"Calendar quarter alignment is critical.",{"type":47,"value":404}," Ensure all companies are compared on the same calendar quarters. Note each company's fiscal year end and map fiscal quarters to calendar quarters.",{"type":42,"tag":112,"props":406,"children":407},{},[408],{"type":47,"value":409},"Build side-by-side comparison tables",{"type":42,"tag":112,"props":411,"children":412},{},[413],{"type":47,"value":414},"Calculate margins for ALL 4 recent quarters (not just the latest) to show trends",{"type":42,"tag":112,"props":416,"children":417},{},[418],{"type":47,"value":419},"Calculate YoY growth rates for each of the last 4 quarters",{"type":42,"tag":88,"props":421,"children":423},{"id":422},"_5-ranking-analysis",[424],{"type":47,"value":425},"5. Ranking & Analysis",{"type":42,"tag":108,"props":427,"children":428},{},[429,434,439,444,449,454,459],{"type":42,"tag":112,"props":430,"children":431},{},[432],{"type":47,"value":433},"Rank companies on each key metric (revenue growth, margins, FCF yield, etc.)",{"type":42,"tag":112,"props":435,"children":436},{},[437],{"type":47,"value":438},"Identify the leader and laggard for each metric",{"type":42,"tag":112,"props":440,"children":441},{},[442],{"type":47,"value":443},"Flag notable outliers (unusually high\u002Flow margins, accelerating\u002Fdecelerating growth)",{"type":42,"tag":112,"props":445,"children":446},{},[447],{"type":47,"value":448},"Note any divergence in KPIs or business model differences",{"type":42,"tag":112,"props":450,"children":451},{},[452],{"type":47,"value":453},"Compute R&D as % of revenue and SBC as % of revenue for each company — these reveal structural differences in how each company invests and compensates",{"type":42,"tag":112,"props":455,"children":456},{},[457],{"type":47,"value":458},"Show YoY segment growth rates for the most recent quarter, not just absolute segment revenue",{"type":42,"tag":112,"props":460,"children":461},{},[462],{"type":47,"value":463},"Flag one-time items that distort any quarter's comparison",{"type":42,"tag":88,"props":465,"children":467},{"id":466},"_6-document-search",[468],{"type":47,"value":469},"6. Document Search",{"type":42,"tag":43,"props":471,"children":472},{},[473],{"type":47,"value":474},"For each company, search the most recent 2 quarters of filings across multiple queries. If any search returns empty, try alternative keywords before giving up.",{"type":42,"tag":108,"props":476,"children":477},{},[478,488,498,508,518],{"type":42,"tag":112,"props":479,"children":480},{},[481,486],{"type":42,"tag":58,"props":482,"children":483},{},[484],{"type":47,"value":485},"Competitive positioning",{"type":47,"value":487},": Try \"competition\", \"market share\"; fallback to \"competitive\", \"leader\", \"position\"",{"type":42,"tag":112,"props":489,"children":490},{},[491,496],{"type":42,"tag":58,"props":492,"children":493},{},[494],{"type":47,"value":495},"Industry trends",{"type":47,"value":497},": Try \"industry\", \"market\", \"demand\"; fallback to \"secular\", \"trend\", \"adoption\"",{"type":42,"tag":112,"props":499,"children":500},{},[501,506],{"type":42,"tag":58,"props":502,"children":503},{},[504],{"type":47,"value":505},"Strategic differentiation",{"type":47,"value":507},": Try \"differentiate\", \"advantage\", \"moat\"; fallback to \"unique\", \"proprietary\", \"platform\"",{"type":42,"tag":112,"props":509,"children":510},{},[511,516],{"type":42,"tag":58,"props":512,"children":513},{},[514],{"type":47,"value":515},"Growth strategy",{"type":47,"value":517},": Try \"growth\", \"opportunity\", \"expansion\"; fallback to \"invest\", \"launch\", \"new market\"",{"type":42,"tag":112,"props":519,"children":520},{},[521,526],{"type":42,"tag":58,"props":522,"children":523},{},[524],{"type":47,"value":525},"Macro \u002F headwinds",{"type":47,"value":527},": Try \"macro\", \"headwind\"; fallback to \"tariff\", \"regulatory\", \"geopolitical\", \"inflation\"",{"type":42,"tag":43,"props":529,"children":530},{},[531],{"type":47,"value":532},"If a company returns sparse results across all searches, try broader single-keyword searches (e.g., just \"competitive\" or just \"growth\") and search additional periods.",{"type":42,"tag":43,"props":534,"children":535},{},[536],{"type":47,"value":537},"For each company, extract:",{"type":42,"tag":108,"props":539,"children":540},{},[541,546,551,556],{"type":42,"tag":112,"props":542,"children":543},{},[544],{"type":47,"value":545},"How management describes their competitive position",{"type":42,"tag":112,"props":547,"children":548},{},[549],{"type":47,"value":550},"Key strategic priorities and investments",{"type":42,"tag":112,"props":552,"children":553},{},[554],{"type":47,"value":555},"Industry or macro commentary that affects the whole group",{"type":42,"tag":112,"props":557,"children":558},{},[559],{"type":47,"value":560},"Any direct references to competitors in the comparison set",{"type":42,"tag":43,"props":562,"children":563},{},[564],{"type":47,"value":565},"Use these findings to enrich the rankings analysis — numbers tell you who's winning, filings tell you why.",{"type":42,"tag":88,"props":567,"children":569},{"id":568},"_7-save-report",[570],{"type":47,"value":571},"7. Save Report",{"type":42,"tag":43,"props":573,"children":574},{},[575,577,583,585,590],{"type":47,"value":576},"Save to ",{"type":42,"tag":64,"props":578,"children":580},{"className":579},[],[581],{"type":47,"value":582},"reports\u002F{INDUSTRY_LABEL}_industry_comp.html",{"type":47,"value":584}," (where INDUSTRY_LABEL is derived from the tickers, e.g., \"AAPL_MSFT_GOOG_AMZN\") using the HTML report template from ",{"type":42,"tag":64,"props":586,"children":588},{"className":587},[],[589],{"type":47,"value":77},{"type":47,"value":591},". Write the full analysis as styled HTML with the design system CSS inlined. This is the final deliverable — no intermediate markdown step needed.",{"type":42,"tag":43,"props":593,"children":594},{},[595],{"type":47,"value":596},"The report should include:",{"type":42,"tag":108,"props":598,"children":599},{},[600,605,610,615,625,635,645,650,655,665,670,675],{"type":42,"tag":112,"props":601,"children":602},{},[603],{"type":47,"value":604},"Summary header listing all companies compared, with fiscal year end dates",{"type":42,"tag":112,"props":606,"children":607},{},[608],{"type":47,"value":609},"Side-by-side financial metrics table (last 4 calendar quarters, companies as columns, metrics as rows, Daloopa citations)",{"type":42,"tag":112,"props":611,"children":612},{},[613],{"type":47,"value":614},"Trailing 4-quarter totals for revenue, operating income, net income, EPS, OCF, CapEx, FCF",{"type":42,"tag":112,"props":616,"children":617},{},[618,623],{"type":42,"tag":58,"props":619,"children":620},{},[621],{"type":47,"value":622},"Margin trend table",{"type":47,"value":624},": Gross margin, operating margin, net margin for ALL 4 quarters per company (not just latest quarter snapshot)",{"type":42,"tag":112,"props":626,"children":627},{},[628,633],{"type":42,"tag":58,"props":629,"children":630},{},[631],{"type":47,"value":632},"Growth comparison table",{"type":47,"value":634},": Revenue YoY and EPS YoY for each of the last 4 quarters per company",{"type":42,"tag":112,"props":636,"children":637},{},[638,643],{"type":42,"tag":58,"props":639,"children":640},{},[641],{"type":47,"value":642},"R&D and SBC comparison",{"type":47,"value":644},": R&D % of revenue and SBC % of revenue for each company (latest quarter + trend)",{"type":42,"tag":112,"props":646,"children":647},{},[648],{"type":47,"value":649},"Segment revenue tables per company with YoY growth rates for each segment in the most recent quarter",{"type":42,"tag":112,"props":651,"children":652},{},[653],{"type":47,"value":654},"KPI comparison (where applicable), noting common vs company-specific KPIs",{"type":42,"tag":112,"props":656,"children":657},{},[658,663],{"type":42,"tag":58,"props":659,"children":660},{},[661],{"type":47,"value":662},"Cash flow comparison",{"type":47,"value":664},": OCF, CapEx, FCF side-by-side with CapEx as % of revenue to highlight investment intensity differences",{"type":42,"tag":112,"props":666,"children":667},{},[668],{"type":47,"value":669},"Rankings summary table",{"type":42,"tag":112,"props":671,"children":672},{},[673],{"type":47,"value":674},"Key competitive insights from filings (with document citations)",{"type":42,"tag":112,"props":676,"children":677},{},[678],{"type":47,"value":679},"Note on calendar quarter alignment and any fiscal year differences",{"type":42,"tag":43,"props":681,"children":682},{},[683,685],{"type":47,"value":684},"All financial figures must use Daloopa citation format: ",{"type":42,"tag":64,"props":686,"children":688},{"className":687},[],[689],{"type":47,"value":690},"\u003Ca href=\"https:\u002F\u002Fdaloopa.com\u002Fsrc\u002F{fundamental_id}\">$X.XX million\u003C\u002Fa>",{"type":42,"tag":43,"props":692,"children":693},{},[694],{"type":47,"value":695},"Tell the user where the HTML report was saved.",{"type":42,"tag":43,"props":697,"children":698},{},[699],{"type":47,"value":700},"Give a clear competitive verdict: Who is winning and who is losing? Which company has the strongest competitive position and why? Which company looks most vulnerable? Are any of the companies structurally mispriced relative to peers (too cheap or too expensive given the fundamentals)? Don't hedge — rank them honestly.",{"items":702,"total":823},[703,721,737,749,769,791,811],{"slug":704,"name":704,"fn":705,"description":706,"org":707,"tags":708,"stars":25,"repoUrl":26,"updatedAt":27},"accessibility-and-inclusive-visualization","make data visualizations accessible","Make data visualizations accessible and inclusive. Use when the user needs chart or diagram accessibility guidance, text alternatives for complex visuals, color and contrast review, keyboard support, reduced-motion behavior for animation or parallax, or an accessibility QA workflow for exported figures, UML-like diagrams, and dashboards.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[709,712,715,718],{"name":710,"slug":711,"type":15},"Accessibility","accessibility",{"name":713,"slug":714,"type":15},"Charts","charts",{"name":716,"slug":717,"type":15},"Data Visualization","data-visualization",{"name":719,"slug":720,"type":15},"Design","design",{"slug":722,"name":722,"fn":723,"description":724,"org":725,"tags":726,"stars":25,"repoUrl":26,"updatedAt":736},"agent-browser","automate browser interactions for agents","Browser automation CLI for AI agents. Use when the user needs to interact with websites, verify dev server output, test web apps, navigate pages, fill forms, click buttons, take screenshots, extract data, or automate any browser task. Also triggers when a dev server starts so you can verify it visually.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[727,730,733],{"name":728,"slug":729,"type":15},"Agents","agents",{"name":731,"slug":732,"type":15},"Browser Automation","browser-automation",{"name":734,"slug":735,"type":15},"Testing","testing","2026-04-06T18:41:03.44016",{"slug":738,"name":738,"fn":739,"description":740,"org":741,"tags":742,"stars":25,"repoUrl":26,"updatedAt":748},"agent-browser-verify","verify dev server output with automated browser","Automated browser verification for dev servers. Triggers when a dev server starts to run a visual gut-check with agent-browser — verifies the page loads, checks for console errors, validates key UI elements, and reports pass\u002Ffail before continuing.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[743,744,747],{"name":731,"slug":732,"type":15},{"name":745,"slug":746,"type":15},"Local Development","local-development",{"name":734,"slug":735,"type":15},"2026-04-06T18:41:17.526867",{"slug":750,"name":750,"fn":751,"description":752,"org":753,"tags":754,"stars":25,"repoUrl":26,"updatedAt":768},"agents-sdk","build AI agents on Cloudflare Workers","Build AI agents on Cloudflare Workers using the Agents SDK. Load when creating stateful agents, durable workflows, real-time WebSocket apps, scheduled tasks, MCP servers, or chat applications. Covers Agent class, state management, callable RPC, Workflows integration, and React hooks. Biases towards retrieval from Cloudflare docs over pre-trained knowledge.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[755,756,759,762,765],{"name":728,"slug":729,"type":15},{"name":757,"slug":758,"type":15},"Cloudflare Workers","cloudflare-workers",{"name":760,"slug":761,"type":15},"SDK","sdk",{"name":763,"slug":764,"type":15},"Serverless","serverless",{"name":766,"slug":767,"type":15},"WebSockets","websockets","2026-04-06T18:39:51.717063",{"slug":770,"name":770,"fn":771,"description":772,"org":773,"tags":774,"stars":25,"repoUrl":26,"updatedAt":790},"ai-elements","build chat UIs with AI Elements","AI Elements component library guidance — pre-built React components for AI interfaces built on shadcn\u002Fui. Use when building chat UIs, message displays, tool call rendering, streaming responses, reasoning panels, or any AI-native interface with the AI SDK.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[775,778,781,784,787],{"name":776,"slug":777,"type":15},"Frontend","frontend",{"name":779,"slug":780,"type":15},"React","react",{"name":782,"slug":783,"type":15},"shadcn\u002Fui","shadcn-ui",{"name":785,"slug":786,"type":15},"UI Components","ui-components",{"name":788,"slug":789,"type":15},"Vercel","vercel","2026-04-06T18:40:59.619419",{"slug":792,"name":792,"fn":793,"description":794,"org":795,"tags":796,"stars":25,"repoUrl":26,"updatedAt":810},"ai-gateway","configure Vercel AI Gateway","Vercel AI Gateway expert guidance. Use when configuring model routing, provider failover, cost tracking, or managing multiple AI providers through a unified API.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[797,800,803,806,809],{"name":798,"slug":799,"type":15},"AI Infrastructure","ai-infrastructure",{"name":801,"slug":802,"type":15},"Cost Optimization","cost-optimization",{"name":804,"slug":805,"type":15},"LLM","llm",{"name":807,"slug":808,"type":15},"Performance","performance",{"name":788,"slug":789,"type":15},"2026-04-06T18:40:44.377464",{"slug":812,"name":812,"fn":813,"description":814,"org":815,"tags":816,"stars":25,"repoUrl":26,"updatedAt":822},"ai-generation-persistence","implement persistence patterns for AI generations","AI generation persistence patterns — unique IDs, addressable URLs, database storage, and cost tracking for every LLM generation",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[817,818,821],{"name":801,"slug":802,"type":15},{"name":819,"slug":820,"type":15},"Database","database",{"name":804,"slug":805,"type":15},"2026-04-06T18:41:08.513425",600,{"items":825,"total":1022},[826,847,870,887,903,920,939,951,965,979,991,1006],{"slug":827,"name":827,"fn":828,"description":829,"org":830,"tags":831,"stars":844,"repoUrl":845,"updatedAt":846},"prior-auth-packet-builder","build healthcare prior authorization packets","Build a concise prior authorization packet from local case files and payer policy docs.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[832,835,838,841],{"name":833,"slug":834,"type":15},"Documents","documents",{"name":836,"slug":837,"type":15},"Healthcare","healthcare",{"name":839,"slug":840,"type":15},"Insurance","insurance",{"name":842,"slug":843,"type":15},"Regulatory Compliance","regulatory-compliance",28169,"https:\u002F\u002Fgithub.com\u002Fopenai\u002Fopenai-agents-python","2026-04-16T05:11:39.180399",{"slug":848,"name":848,"fn":849,"description":850,"org":851,"tags":852,"stars":867,"repoUrl":868,"updatedAt":869},"aspnet-core","build ASP.NET Core web applications","Build, review, refactor, or architect ASP.NET Core web applications using current official guidance for .NET web development. Use when working on Blazor Web Apps, Razor Pages, MVC, Minimal APIs, controller-based Web APIs, SignalR, gRPC, middleware, dependency injection, configuration, authentication, authorization, testing, performance, deployment, or ASP.NET Core upgrades.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[853,856,858,861,864],{"name":854,"slug":855,"type":15},".NET","dotnet",{"name":857,"slug":848,"type":15},"ASP.NET Core",{"name":859,"slug":860,"type":15},"Blazor","blazor",{"name":862,"slug":863,"type":15},"C#","csharp",{"name":865,"slug":866,"type":15},"Web Development","web-development",23787,"https:\u002F\u002Fgithub.com\u002Fopenai\u002Fskills","2026-04-12T05:07:02.819491",{"slug":871,"name":871,"fn":872,"description":873,"org":874,"tags":875,"stars":867,"repoUrl":868,"updatedAt":886},"chatgpt-apps","build ChatGPT Apps SDK applications","Build, scaffold, refactor, and troubleshoot ChatGPT Apps SDK applications that combine an MCP server and widget UI. Use when Codex needs to design tools, register UI resources, wire the MCP Apps bridge or ChatGPT compatibility APIs, apply Apps SDK metadata or CSP or domain settings, or produce a docs-aligned project scaffold. Prefer a docs-first workflow by invoking the openai-docs skill or OpenAI developer docs MCP tools before generating code.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[876,879,882,885],{"name":877,"slug":878,"type":15},"Apps SDK","apps-sdk",{"name":880,"slug":881,"type":15},"ChatGPT","chatgpt",{"name":883,"slug":884,"type":15},"MCP","mcp",{"name":9,"slug":8,"type":15},"2026-04-12T05:07:05.468097",{"slug":888,"name":888,"fn":889,"description":890,"org":891,"tags":892,"stars":867,"repoUrl":868,"updatedAt":902},"cli-creator","build CLIs from API docs","Build a composable CLI for Codex from API docs, an OpenAPI spec, existing curl examples, an SDK, a web app, an admin tool, or a local script. Use when the user wants Codex to create a command-line tool that can run from any repo, expose composable read\u002Fwrite commands, return stable JSON, manage auth, and pair with a companion skill.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[893,896,899],{"name":894,"slug":895,"type":15},"API Development","api-development",{"name":897,"slug":898,"type":15},"CLI","cli",{"name":900,"slug":901,"type":15},"Codex","codex","2026-04-12T05:07:04.132762",{"slug":904,"name":904,"fn":905,"description":906,"org":907,"tags":908,"stars":867,"repoUrl":868,"updatedAt":919},"cloudflare-deploy","deploy projects to Cloudflare","Deploy applications and infrastructure to Cloudflare using Workers, Pages, and related platform services. Use when the user asks to deploy, host, publish, or set up a project on Cloudflare.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[909,912,915,916],{"name":910,"slug":911,"type":15},"Cloudflare","cloudflare",{"name":913,"slug":914,"type":15},"Cloudflare Pages","cloudflare-pages",{"name":757,"slug":758,"type":15},{"name":917,"slug":918,"type":15},"Deployment","deployment","2026-04-12T05:07:14.275118",{"slug":921,"name":921,"fn":922,"description":923,"org":924,"tags":925,"stars":867,"repoUrl":868,"updatedAt":938},"define-goal","define and set measurable project goals","Help the user define a concrete, measurable goal before starting work, especially when they ask to use the goal tool, create a goal, set an objective, clarify success criteria, or turn a fuzzy intention into a quantitative outcome. Use this skill for goal creation and goal refinement only; it does not manage durable snapshots, decision logs, or long-running execution artifacts.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[926,929,932,935],{"name":927,"slug":928,"type":15},"Productivity","productivity",{"name":930,"slug":931,"type":15},"Project Management","project-management",{"name":933,"slug":934,"type":15},"Strategy","strategy",{"name":936,"slug":937,"type":15},"Task Management","task-management","2026-05-23T06:17:16.870838",{"slug":940,"name":940,"fn":941,"description":942,"org":943,"tags":944,"stars":867,"repoUrl":868,"updatedAt":950},"figma","translate Figma designs into code","Use the Figma MCP server to fetch design context, screenshots, variables, and assets from Figma, and to translate Figma nodes into production code. Trigger when a task involves Figma URLs, node IDs, design-to-code implementation, or Figma MCP setup and troubleshooting.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[945,946,948,949],{"name":719,"slug":720,"type":15},{"name":947,"slug":940,"type":15},"Figma",{"name":776,"slug":777,"type":15},{"name":883,"slug":884,"type":15},"2026-04-12T05:06:47.939943",{"slug":952,"name":952,"fn":953,"description":954,"org":955,"tags":956,"stars":867,"repoUrl":868,"updatedAt":964},"figma-code-connect-components","connect Figma designs to code components","Connects Figma design components to code components using Code Connect mapping tools. Use when user says \"code connect\", \"connect this component to code\", \"map this component\", \"link component to code\", \"create code connect mapping\", or wants to establish mappings between Figma designs and code implementations. For canvas writes via `use_figma`, use `figma-use`.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[957,958,961,962,963],{"name":719,"slug":720,"type":15},{"name":959,"slug":960,"type":15},"Design System","design-system",{"name":947,"slug":940,"type":15},{"name":776,"slug":777,"type":15},{"name":785,"slug":786,"type":15},"2026-05-10T05:59:52.971881",{"slug":966,"name":966,"fn":967,"description":968,"org":969,"tags":970,"stars":867,"repoUrl":868,"updatedAt":978},"figma-create-design-system-rules","generate design system rules from Figma","Generates custom design system rules for the user's codebase. Use when user says \"create design system rules\", \"generate rules for my project\", \"set up design rules\", \"customize design system guidelines\", or wants to establish project-specific conventions for Figma-to-code workflows. Requires Figma MCP server connection.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[971,972,973,976,977],{"name":719,"slug":720,"type":15},{"name":959,"slug":960,"type":15},{"name":974,"slug":975,"type":15},"Documentation","documentation",{"name":947,"slug":940,"type":15},{"name":776,"slug":777,"type":15},"2026-05-16T06:07:47.821474",{"slug":980,"name":980,"fn":981,"description":982,"org":983,"tags":984,"stars":867,"repoUrl":868,"updatedAt":990},"figma-implement-design","translate Figma designs into application code","Translates Figma designs into production-ready application code with 1:1 visual fidelity. Use when implementing UI code from Figma files, when user mentions \"implement design\", \"generate code\", \"implement component\", provides Figma URLs, or asks to build components matching Figma specs. For Figma canvas writes via `use_figma`, use `figma-use`.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[985,986,987,988,989],{"name":719,"slug":720,"type":15},{"name":947,"slug":940,"type":15},{"name":776,"slug":777,"type":15},{"name":785,"slug":786,"type":15},{"name":865,"slug":866,"type":15},"2026-05-16T06:07:40.583615",{"slug":992,"name":992,"fn":993,"description":994,"org":995,"tags":996,"stars":867,"repoUrl":868,"updatedAt":1005},"hatch-pet","create animated pets for Codex","Create, repair, validate, visually QA, and package Codex-compatible animated pets and pet spritesheets from character art, generated images, company or prospect brand cues, or visual references. Use when a user wants a lightweight-worker Codex pet workflow, a non-pixel custom pet style, a prospect or company mascot pet, or a full 8x9 animated pet atlas with transparent unused cells, QA contact sheets, and pet.json packaging. This skill composes the installed $imagegen system skill for visual generation and uses bundled scripts for deterministic spritesheet assembly.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[997,1000,1001,1004],{"name":998,"slug":999,"type":15},"Animation","animation",{"name":900,"slug":901,"type":15},{"name":1002,"slug":1003,"type":15},"Creative","creative",{"name":719,"slug":720,"type":15},"2026-05-02T05:31:48.48485",{"slug":1007,"name":1007,"fn":1008,"description":1009,"org":1010,"tags":1011,"stars":867,"repoUrl":868,"updatedAt":1021},"imagegen","generate and edit raster images","Generate or edit raster images when the task benefits from AI-created bitmap visuals such as photos, illustrations, textures, sprites, mockups, or transparent-background cutouts. Use when Codex should create a brand-new image, transform an existing image, or derive visual variants from references, and the output should be a bitmap asset rather than repo-native code or vector. Do not use when the task is better handled by editing existing SVG\u002Fvector\u002Fcode-native assets, extending an established icon or logo system, or building the visual directly in HTML\u002FCSS\u002Fcanvas.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1012,1013,1014,1017,1020],{"name":1002,"slug":1003,"type":15},{"name":719,"slug":720,"type":15},{"name":1015,"slug":1016,"type":15},"Image Generation","image-generation",{"name":1018,"slug":1019,"type":15},"Images","images",{"name":9,"slug":8,"type":15},"2026-05-15T06:23:24.312127",675]