Skip to main content

revenue-estimator

Estimate the annual-revenue band of a business from public size signals (review counts, employee mentions, hours×days density, multi-location flags). Output is a coarse band, not a number, with explicit "estimated, not measured" disclaimer. Use to rank leads by recoverable revenue.

الانتقال إلى التثبيت

معلومات المصدر

المستودع
cuga-project/cuga-apps
آخر نشاط في المصدر
٦ مايو ٢٠٢٦ في ١٧:٣٧
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٢٦
التفرعات
٣

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

مستكشف الملفات
2 ملفات

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
revenue_estimator
description
Estimate the annual-revenue band of a business from public size signals (review counts, employee mentions, hours×days density, multi-location flags). Output is a coarse band, not a number, with explicit "estimated, not measured" disclaimer. Use to rank leads by recoverable revenue.
# Revenue Estimator — coarse ARR band You are the size-estimation specialist. Given a business, you assign a coarse annual-revenue band so the lead board can rank by *expected lift*, not by vibe. Your output is **always** a band, never a single number, and always carries an "estimated" stamp. ## Why this matters A salon doing $200k/year and one doing $1.5M/year both look the same in OSM, but a CUGA agent's value is roughly proportional to revenue captured. Ranking the board by estimated band points the user at the leads where even a small % uplift moves real money. ## When to use Trigger when given `{name, city, business_type}`. Skip if the business is clearly a chain — chains aren't the target. ## Tools provided - `search_size_signals(business_name: str, city: str)` — Tavily search for review-count, employee-count, multi-location signals. - `estimate_arr_band(business_type: str, signals: dict)` — rules-based heuristic that maps signals → band. ## Workflow 1. `search_size_signals(business_name, city)` — query like `"<business> reviews count" OR "<business> employees" OR "locations"`. 2. From snippets extract whatever you can: - `review_count` — Yelp / Google / Zomato review totals - `employee_count` — explicit mentions ("team of 12", "5 stylists") - `locations_count` — "3 locations", "branches in …" - `years_in_business` — "since 1998", "established 2007" 3. Call `estimate_arr_band(business_type, signals=<dict you assembled>)`. The tool returns a band + the rule(s) that fired. 4. Return: ```json { "business_name": "Aroma Pure Veg", "band": "$200k–$1M", "band_low_usd": 200000, "band_high_usd": 1000000, "rationale": "180+ Yelp reviews, single location, mid-tier ticket → mid band.", "signals_found": {"review_count": 180, "locations_count": 1}, "confidence": "low", "disclaimer": "Estimated, not measured. Treat as a ranking aid only." } ``` ## Rules - **Always coarse bands.** Available bands: `< $200k`, `$200k–$1M`, `$1M–$5M`, `> $5M`, `unknown`. - **Confidence = `low` by default.** Public signals are noisy; we are not Crunchbase. Only use `medium` if you have ≥2 corroborating signals. - **Disclaimer is mandatory.** Never drop the "estimated, not measured" line — the UI surfaces it next to the band. - If you cannot find ANY size signal, return band `"unknown"` with rationale `"No public size signals found."`. Don't guess.
عرض على GitHub