[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6G1R2XFCJVCVYWVR1ACNGW1":3,"skill-same:01M6G1R2XFCJVCVYWVR1ACNGW1":136},{"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":34,"publishedAt":52,"linkOnly":53,"markdownContent":54,"markdownBody":55,"frontMatter":56,"refName":63,"commitSha":64,"skillDirectory":65,"forksCount":66,"repositoryHtmlUrl":67,"repositoryHomepageUrl":6,"ownerHtmlUrl":68,"ownerBlogUrl":69,"ownerDescription":70,"updatedAt":71,"install":72,"resources":85},"01M6G1R2XFCJVCVYWVR1ACNGW1","campaign-analytics",null,"Analyzes campaign performance with multi-touch attribution, funnel conversion, and ROI calculation for marketing optimization","oabdelmaksoud\u002FAgention","oabdelmaksoud","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F50699149?v=4","01M6D5CVVN778ZCDP1WHS816SP","Omar Abdelmaksoud","01M6D8A4TE76V3DCSH3D94VG1V",2,"MIT","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fclaude-skills\u002Fmarketing-skill\u002Fcampaign-analytics\u002FSKILL.md",[18,23,26,31],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000013","分析与可视化","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000019","营销推广",{"categoryNo":27,"categoryName":28,"taxonomyType":29,"taxonomyTypeDesc":30},"01JBSEEDCAT000000000000033","数据分析师","PROFESSION","适用职业",{"categoryNo":32,"categoryName":33,"taxonomyType":29,"taxonomyTypeDesc":30},"01JBSEEDCAT000000000000035","市场营销",[35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],"analytics","campaign analytics","campaign","funnel","analyzer","calculation","with","multi","touch","modeling","conversion","performance","calculator","marketing","Optimization","attribution","roi","2026-11-10 10:12:30",false,"---\nname: campaign-analytics\ndescription: Analyzes campaign performance with multi-touch attribution, funnel conversion, and ROI calculation for marketing optimization\nlicense: MIT\nmetadata:\n  version: 1.0.0\n  author: Alireza Rezvani\n  category: marketing\n  domain: campaign-analytics\n  updated: 2026-02-06\n  python-tools: attribution_analyzer.py, funnel_analyzer.py, campaign_roi_calculator.py\n  tech-stack: marketing-analytics, attribution-modeling\n---\n\n# Campaign Analytics\n\nProduction-grade campaign performance analysis with multi-touch attribution modeling, funnel conversion analysis, and ROI calculation. Three Python CLI tools provide deterministic, repeatable analytics using standard library only -- no external dependencies, no API calls, no ML models.\n\n---\n\n## Table of Contents\n\n- [Capabilities](#capabilities)\n- [Input Requirements](#input-requirements)\n- [Output Formats](#output-formats)\n- [How to Use](#how-to-use)\n- [Scripts](#scripts)\n- [Reference Guides](#reference-guides)\n- [Best Practices](#best-practices)\n- [Limitations](#limitations)\n\n---\n\n## Capabilities\n\n- **Multi-Touch Attribution**: Five attribution models (first-touch, last-touch, linear, time-decay, position-based) with configurable parameters\n- **Funnel Conversion Analysis**: Stage-by-stage conversion rates, drop-off identification, bottleneck detection, and segment comparison\n- **Campaign ROI Calculation**: ROI, ROAS, CPA, CPL, CAC metrics with industry benchmarking and underperformance flagging\n- **A\u002FB Test Support**: Templates for structured A\u002FB test documentation and analysis\n- **Channel Comparison**: Cross-channel performance comparison with normalized metrics\n- **Executive Reporting**: Ready-to-use templates for campaign performance reports\n\n---\n\n## Input Requirements\n\nAll scripts accept a JSON file as positional input argument. See `assets\u002Fsample_campaign_data.json` for complete examples.\n\n### Attribution Analyzer\n\n```json\n{\n  \"journeys\": [\n    {\n      \"journey_id\": \"j1\",\n      \"touchpoints\": [\n        {\"channel\": \"organic_search\", \"timestamp\": \"2025-10-01T10:00:00\", \"interaction\": \"click\"},\n        {\"channel\": \"email\", \"timestamp\": \"2025-10-05T14:30:00\", \"interaction\": \"open\"},\n        {\"channel\": \"paid_search\", \"timestamp\": \"2025-10-08T09:15:00\", \"interaction\": \"click\"}\n      ],\n      \"converted\": true,\n      \"revenue\": 500.00\n    }\n  ]\n}\n```\n\n### Funnel Analyzer\n\n```json\n{\n  \"funnel\": {\n    \"stages\": [\"Awareness\", \"Interest\", \"Consideration\", \"Intent\", \"Purchase\"],\n    \"counts\": [10000, 5200, 2800, 1400, 420]\n  }\n}\n```\n\n### Campaign ROI Calculator\n\n```json\n{\n  \"campaigns\": [\n    {\n      \"name\": \"Spring Email Campaign\",\n      \"channel\": \"email\",\n      \"spend\": 5000.00,\n      \"revenue\": 25000.00,\n      \"impressions\": 50000,\n      \"clicks\": 2500,\n      \"leads\": 300,\n      \"customers\": 45\n    }\n  ]\n}\n```\n\n---\n\n## Output Formats\n\nAll scripts support two output formats via the `--format` flag:\n\n- `--format text` (default): Human-readable tables and summaries for review\n- `--format json`: Machine-readable JSON for integrations and pipelines\n\n---\n\n## How to Use\n\n### Attribution Analysis\n\n```bash\n# Run all 5 attribution models\npython scripts\u002Fattribution_analyzer.py campaign_data.json\n\n# Run a specific model\npython scripts\u002Fattribution_analyzer.py campaign_data.json --model time-decay\n\n# JSON output for pipeline integration\npython scripts\u002Fattribution_analyzer.py campaign_data.json --format json\n\n# Custom time-decay half-life (default: 7 days)\npython scripts\u002Fattribution_analyzer.py campaign_data.json --model time-decay --half-life 14\n```\n\n### Funnel Analysis\n\n```bash\n# Basic funnel analysis\npython scripts\u002Ffunnel_analyzer.py funnel_data.json\n\n# JSON output\npython scripts\u002Ffunnel_analyzer.py funnel_data.json --format json\n```\n\n### Campaign ROI Calculation\n\n```bash\n# Calculate ROI metrics for all campaigns\npython scripts\u002Fcampaign_roi_calculator.py campaign_data.json\n\n# JSON output\npython scripts\u002Fcampaign_roi_calculator.py campaign_data.json --format json\n```\n\n---\n\n## Scripts\n\n### 1. attribution_analyzer.py\n\nImplements five industry-standard attribution models to allocate conversion credit across marketing channels:\n\n| Model | Description | Best For |\n|-------|-------------|----------|\n| First-Touch | 100% credit to first interaction | Brand awareness campaigns |\n| Last-Touch | 100% credit to last interaction | Direct response campaigns |\n| Linear | Equal credit to all touchpoints | Balanced multi-channel evaluation |\n| Time-Decay | More credit to recent touchpoints | Short sales cycles |\n| Position-Based | 40\u002F20\u002F40 split (first\u002Fmiddle\u002Flast) | Full-funnel marketing |\n\n### 2. funnel_analyzer.py\n\nAnalyzes conversion funnels to identify bottlenecks and optimization opportunities:\n\n- Stage-to-stage conversion rates and drop-off percentages\n- Automatic bottleneck identification (largest absolute and relative drops)\n- Overall funnel conversion rate\n- Segment comparison when multiple segments are provided\n\n### 3. campaign_roi_calculator.py\n\nCalculates comprehensive ROI metrics with industry benchmarking:\n\n- **ROI**: Return on investment percentage\n- **ROAS**: Return on ad spend ratio\n- **CPA**: Cost per acquisition\n- **CPL**: Cost per lead\n- **CAC**: Customer acquisition cost\n- **CTR**: Click-through rate\n- **CVR**: Conversion rate (leads to customers)\n- Flags underperforming campaigns against industry benchmarks\n\n---\n\n## Reference Guides\n\n| Guide | Location | Purpose |\n|-------|----------|---------|\n| Attribution Models Guide | `references\u002Fattribution-models-guide.md` | Deep dive into 5 models with formulas, pros\u002Fcons, selection criteria |\n| Campaign Metrics Benchmarks | `references\u002Fcampaign-metrics-benchmarks.md` | Industry benchmarks by channel and vertical for CTR, CPC, CPM, CPA, ROAS |\n| Funnel Optimization Framework | `references\u002Ffunnel-optimization-framework.md` | Stage-by-stage optimization strategies, common bottlenecks, best practices |\n\n---\n\n## Best Practices\n\n1. **Use multiple attribution models** -- No single model tells the full story. Compare at least 3 models to triangulate channel value.\n2. **Set appropriate lookback windows** -- Match your time-decay half-life to your average sales cycle length.\n3. **Segment your funnels** -- Always compare segments (channel, cohort, geography) to identify what drives best performance.\n4. **Benchmark against your own history first** -- Industry benchmarks provide context, but your own historical data is the most relevant comparison.\n5. **Run ROI analysis at regular intervals** -- Weekly for active campaigns, monthly for strategic review.\n6. **Include all costs** -- Factor in creative, tooling, and labor costs alongside media spend for accurate ROI.\n7. **Document A\u002FB tests rigorously** -- Use the provided template to ensure statistical validity and clear decision criteria.\n\n---\n\n## Limitations\n\n- **No statistical significance testing** -- A\u002FB test analysis requires external tools for p-value calculations. Scripts provide descriptive metrics only.\n- **Standard library only** -- No advanced statistical or data processing libraries. Suitable for most campaign sizes but not optimized for datasets exceeding 100K journeys.\n- **Offline analysis** -- Scripts analyze static JSON snapshots. No real-time data connections or API integrations.\n- **Single-currency** -- All monetary values assumed to be in the same currency. No currency conversion support.\n- **Simplified time-decay** -- Uses exponential decay based on configurable half-life. Does not account for weekday\u002Fweekend or seasonal patterns.\n- **No cross-device tracking** -- Attribution operates on provided journey data as-is. Cross-device identity resolution must be handled upstream.\n\n## Proactive Triggers\n\n- **Attribution model not set** → Last-click attribution misses 60%+ of the journey. Use multi-touch.\n- **No baseline metrics documented** → Can't measure improvement without baselines.\n- **Data discrepancy between tools** → GA4 and ad platform numbers rarely match. Document the gap.\n- **Vanity metrics dominating reports** → Pageviews don't matter. Focus on conversion metrics.\n\n## Output Artifacts\n\n| When you ask for... | You get... |\n|---------------------|------------|\n| \"Campaign report\" | Cross-channel performance report with attribution analysis |\n| \"Channel comparison\" | Channel-by-channel ROI with budget reallocation recommendations |\n| \"What's working?\" | Top 5 performers + bottom 5 drains with specific actions |\n\n## Communication\n\nAll output passes quality verification:\n- Self-verify: source attribution, assumption audit, confidence scoring\n- Output format: Bottom Line → What (with confidence) → Why → How to Act\n- Results only. Every finding tagged: ? verified, ? medium, ? assumed.\n\n## Related Skills\n\n- **analytics-tracking**: For setting up tracking. NOT for analyzing data (that's this skill).\n- **ab-test-setup**: For designing experiments to test what analytics reveals.\n- **marketing-ops**: For routing insights to the right execution skill.\n- **paid-ads**: For optimizing ad spend based on analytics findings.\n","# Campaign Analytics\n\nProduction-grade campaign performance analysis with multi-touch attribution modeling, funnel conversion analysis, and ROI calculation. Three Python CLI tools provide deterministic, repeatable analytics using standard library only -- no external dependencies, no API calls, no ML models.\n\n---\n\n## Table of Contents\n\n- [Capabilities](#capabilities)\n- [Input Requirements](#input-requirements)\n- [Output Formats](#output-formats)\n- [How to Use](#how-to-use)\n- [Scripts](#scripts)\n- [Reference Guides](#reference-guides)\n- [Best Practices](#best-practices)\n- [Limitations](#limitations)\n\n---\n\n## Capabilities\n\n- **Multi-Touch Attribution**: Five attribution models (first-touch, last-touch, linear, time-decay, position-based) with configurable parameters\n- **Funnel Conversion Analysis**: Stage-by-stage conversion rates, drop-off identification, bottleneck detection, and segment comparison\n- **Campaign ROI Calculation**: ROI, ROAS, CPA, CPL, CAC metrics with industry benchmarking and underperformance flagging\n- **A\u002FB Test Support**: Templates for structured A\u002FB test documentation and analysis\n- **Channel Comparison**: Cross-channel performance comparison with normalized metrics\n- **Executive Reporting**: Ready-to-use templates for campaign performance reports\n\n---\n\n## Input Requirements\n\nAll scripts accept a JSON file as positional input argument. See `assets\u002Fsample_campaign_data.json` for complete examples.\n\n### Attribution Analyzer\n\n```json\n{\n  \"journeys\": [\n    {\n      \"journey_id\": \"j1\",\n      \"touchpoints\": [\n        {\"channel\": \"organic_search\", \"timestamp\": \"2025-10-01T10:00:00\", \"interaction\": \"click\"},\n        {\"channel\": \"email\", \"timestamp\": \"2025-10-05T14:30:00\", \"interaction\": \"open\"},\n        {\"channel\": \"paid_search\", \"timestamp\": \"2025-10-08T09:15:00\", \"interaction\": \"click\"}\n      ],\n      \"converted\": true,\n      \"revenue\": 500.00\n    }\n  ]\n}\n```\n\n### Funnel Analyzer\n\n```json\n{\n  \"funnel\": {\n    \"stages\": [\"Awareness\", \"Interest\", \"Consideration\", \"Intent\", \"Purchase\"],\n    \"counts\": [10000, 5200, 2800, 1400, 420]\n  }\n}\n```\n\n### Campaign ROI Calculator\n\n```json\n{\n  \"campaigns\": [\n    {\n      \"name\": \"Spring Email Campaign\",\n      \"channel\": \"email\",\n      \"spend\": 5000.00,\n      \"revenue\": 25000.00,\n      \"impressions\": 50000,\n      \"clicks\": 2500,\n      \"leads\": 300,\n      \"customers\": 45\n    }\n  ]\n}\n```\n\n---\n\n## Output Formats\n\nAll scripts support two output formats via the `--format` flag:\n\n- `--format text` (default): Human-readable tables and summaries for review\n- `--format json`: Machine-readable JSON for integrations and pipelines\n\n---\n\n## How to Use\n\n### Attribution Analysis\n\n```bash\n# Run all 5 attribution models\npython scripts\u002Fattribution_analyzer.py campaign_data.json\n\n# Run a specific model\npython scripts\u002Fattribution_analyzer.py campaign_data.json --model time-decay\n\n# JSON output for pipeline integration\npython scripts\u002Fattribution_analyzer.py campaign_data.json --format json\n\n# Custom time-decay half-life (default: 7 days)\npython scripts\u002Fattribution_analyzer.py campaign_data.json --model time-decay --half-life 14\n```\n\n### Funnel Analysis\n\n```bash\n# Basic funnel analysis\npython scripts\u002Ffunnel_analyzer.py funnel_data.json\n\n# JSON output\npython scripts\u002Ffunnel_analyzer.py funnel_data.json --format json\n```\n\n### Campaign ROI Calculation\n\n```bash\n# Calculate ROI metrics for all campaigns\npython scripts\u002Fcampaign_roi_calculator.py campaign_data.json\n\n# JSON output\npython scripts\u002Fcampaign_roi_calculator.py campaign_data.json --format json\n```\n\n---\n\n## Scripts\n\n### 1. attribution_analyzer.py\n\nImplements five industry-standard attribution models to allocate conversion credit across marketing channels:\n\n| Model | Description | Best For |\n|-------|-------------|----------|\n| First-Touch | 100% credit to first interaction | Brand awareness campaigns |\n| Last-Touch | 100% credit to last interaction | Direct response campaigns |\n| Linear | Equal credit to all touchpoints | Balanced multi-channel evaluation |\n| Time-Decay | More credit to recent touchpoints | Short sales cycles |\n| Position-Based | 40\u002F20\u002F40 split (first\u002Fmiddle\u002Flast) | Full-funnel marketing |\n\n### 2. funnel_analyzer.py\n\nAnalyzes conversion funnels to identify bottlenecks and optimization opportunities:\n\n- Stage-to-stage conversion rates and drop-off percentages\n- Automatic bottleneck identification (largest absolute and relative drops)\n- Overall funnel conversion rate\n- Segment comparison when multiple segments are provided\n\n### 3. campaign_roi_calculator.py\n\nCalculates comprehensive ROI metrics with industry benchmarking:\n\n- **ROI**: Return on investment percentage\n- **ROAS**: Return on ad spend ratio\n- **CPA**: Cost per acquisition\n- **CPL**: Cost per lead\n- **CAC**: Customer acquisition cost\n- **CTR**: Click-through rate\n- **CVR**: Conversion rate (leads to customers)\n- Flags underperforming campaigns against industry benchmarks\n\n---\n\n## Reference Guides\n\n| Guide | Location | Purpose |\n|-------|----------|---------|\n| Attribution Models Guide | `references\u002Fattribution-models-guide.md` | Deep dive into 5 models with formulas, pros\u002Fcons, selection criteria |\n| Campaign Metrics Benchmarks | `references\u002Fcampaign-metrics-benchmarks.md` | Industry benchmarks by channel and vertical for CTR, CPC, CPM, CPA, ROAS |\n| Funnel Optimization Framework | `references\u002Ffunnel-optimization-framework.md` | Stage-by-stage optimization strategies, common bottlenecks, best practices |\n\n---\n\n## Best Practices\n\n1. **Use multiple attribution models** -- No single model tells the full story. Compare at least 3 models to triangulate channel value.\n2. **Set appropriate lookback windows** -- Match your time-decay half-life to your average sales cycle length.\n3. **Segment your funnels** -- Always compare segments (channel, cohort, geography) to identify what drives best performance.\n4. **Benchmark against your own history first** -- Industry benchmarks provide context, but your own historical data is the most relevant comparison.\n5. **Run ROI analysis at regular intervals** -- Weekly for active campaigns, monthly for strategic review.\n6. **Include all costs** -- Factor in creative, tooling, and labor costs alongside media spend for accurate ROI.\n7. **Document A\u002FB tests rigorously** -- Use the provided template to ensure statistical validity and clear decision criteria.\n\n---\n\n## Limitations\n\n- **No statistical significance testing** -- A\u002FB test analysis requires external tools for p-value calculations. Scripts provide descriptive metrics only.\n- **Standard library only** -- No advanced statistical or data processing libraries. Suitable for most campaign sizes but not optimized for datasets exceeding 100K journeys.\n- **Offline analysis** -- Scripts analyze static JSON snapshots. No real-time data connections or API integrations.\n- **Single-currency** -- All monetary values assumed to be in the same currency. No currency conversion support.\n- **Simplified time-decay** -- Uses exponential decay based on configurable half-life. Does not account for weekday\u002Fweekend or seasonal patterns.\n- **No cross-device tracking** -- Attribution operates on provided journey data as-is. Cross-device identity resolution must be handled upstream.\n\n## Proactive Triggers\n\n- **Attribution model not set** → Last-click attribution misses 60%+ of the journey. Use multi-touch.\n- **No baseline metrics documented** → Can't measure improvement without baselines.\n- **Data discrepancy between tools** → GA4 and ad platform numbers rarely match. Document the gap.\n- **Vanity metrics dominating reports** → Pageviews don't matter. Focus on conversion metrics.\n\n## Output Artifacts\n\n| When you ask for... | You get... |\n|---------------------|------------|\n| \"Campaign report\" | Cross-channel performance report with attribution analysis |\n| \"Channel comparison\" | Channel-by-channel ROI with budget reallocation recommendations |\n| \"What's working?\" | Top 5 performers + bottom 5 drains with specific actions |\n\n## Communication\n\nAll output passes quality verification:\n- Self-verify: source attribution, assumption audit, confidence scoring\n- Output format: Bottom Line → What (with confidence) → Why → How to Act\n- Results only. Every finding tagged: ? verified, ? medium, ? assumed.\n\n## Related Skills\n\n- **analytics-tracking**: For setting up tracking. NOT for analyzing data (that's this skill).\n- **ab-test-setup**: For designing experiments to test what analytics reveals.\n- **marketing-ops**: For routing insights to the right execution skill.\n- **paid-ads**: For optimizing ad spend based on analytics findings.\n",{"name":5,"license":15,"metadata":57,"description":7},{"author":58,"domain":5,"updated":59,"version":60,"category":48,"tech-stack":61,"python-tools":62},"Alireza Rezvani",1770336000000,"1.0.0","marketing-analytics, attribution-modeling","attribution_analyzer.py, funnel_analyzer.py, campaign_roi_calculator.py","main","a318f48de3c5718e8ea2e9f6fae7790e8a759e85","upstream-sync\u002Fwork\u002Fclaude-skills\u002Fmarketing-skill\u002Fcampaign-analytics",0,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fo-abdelmaksoud\u002F","Full-Stack Engineer | AI Systems Architect | Building autonomous multi-agent systems","2026-03-08 21:23:03",{"source":8,"skillName":5,"commands":73,"prompt":83,"zipAvailable":84},[74,77,80],{"tool":75,"command":76},"npx","npx skills add oabdelmaksoud\u002FAgention --skill campaign-analytics",{"tool":78,"command":79},"bunx","bunx skills add oabdelmaksoud\u002FAgention --skill campaign-analytics",{"tool":81,"command":82},"pnpm","pnpm dlx skills add oabdelmaksoud\u002FAgention --skill campaign-analytics","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fclaude-skills\u002Fmarketing-skill\u002Fcampaign-analytics\u002FSKILL.md",true,[86,92,96,100,104,108,114,118,122,128,132],{"path":87,"resourceType":88,"resourceTypeDesc":89,"sizeBytes":90,"sourceHtmlUrl":91},"assets\u002Fab_test_template.md","ASSET","资产文件",3504,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fclaude-skills\u002Fmarketing-skill\u002Fcampaign-analytics\u002Fassets\u002Fab_test_template.md",{"path":93,"resourceType":88,"resourceTypeDesc":89,"sizeBytes":94,"sourceHtmlUrl":95},"assets\u002Fcampaign_report_template.md",4024,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fclaude-skills\u002Fmarketing-skill\u002Fcampaign-analytics\u002Fassets\u002Fcampaign_report_template.md",{"path":97,"resourceType":88,"resourceTypeDesc":89,"sizeBytes":98,"sourceHtmlUrl":99},"assets\u002Fchannel_comparison_template.md",4974,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fclaude-skills\u002Fmarketing-skill\u002Fcampaign-analytics\u002Fassets\u002Fchannel_comparison_template.md",{"path":101,"resourceType":88,"resourceTypeDesc":89,"sizeBytes":102,"sourceHtmlUrl":103},"assets\u002Fexpected_output.json",3865,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fclaude-skills\u002Fmarketing-skill\u002Fcampaign-analytics\u002Fassets\u002Fexpected_output.json",{"path":105,"resourceType":88,"resourceTypeDesc":89,"sizeBytes":106,"sourceHtmlUrl":107},"assets\u002Fsample_campaign_data.json",4730,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fclaude-skills\u002Fmarketing-skill\u002Fcampaign-analytics\u002Fassets\u002Fsample_campaign_data.json",{"path":109,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":112,"sourceHtmlUrl":113},"references\u002Fattribution-models-guide.md","REFERENCE","参考文档",9598,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fclaude-skills\u002Fmarketing-skill\u002Fcampaign-analytics\u002Freferences\u002Fattribution-models-guide.md",{"path":115,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":116,"sourceHtmlUrl":117},"references\u002Fcampaign-metrics-benchmarks.md",8991,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fclaude-skills\u002Fmarketing-skill\u002Fcampaign-analytics\u002Freferences\u002Fcampaign-metrics-benchmarks.md",{"path":119,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":120,"sourceHtmlUrl":121},"references\u002Ffunnel-optimization-framework.md",10949,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fclaude-skills\u002Fmarketing-skill\u002Fcampaign-analytics\u002Freferences\u002Ffunnel-optimization-framework.md",{"path":123,"resourceType":124,"resourceTypeDesc":125,"sizeBytes":126,"sourceHtmlUrl":127},"scripts\u002Fattribution_analyzer.py","SCRIPT","脚本",12499,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fclaude-skills\u002Fmarketing-skill\u002Fcampaign-analytics\u002Fscripts\u002Fattribution_analyzer.py",{"path":129,"resourceType":124,"resourceTypeDesc":125,"sizeBytes":130,"sourceHtmlUrl":131},"scripts\u002Fcampaign_roi_calculator.py",18172,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fclaude-skills\u002Fmarketing-skill\u002Fcampaign-analytics\u002Fscripts\u002Fcampaign_roi_calculator.py",{"path":133,"resourceType":124,"resourceTypeDesc":125,"sizeBytes":134,"sourceHtmlUrl":135},"scripts\u002Ffunnel_analyzer.py",10902,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fclaude-skills\u002Fmarketing-skill\u002Fcampaign-analytics\u002Fscripts\u002Ffunnel_analyzer.py",[137,158,172,203,227,247],{"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":146,"publishedAt":52},"01M6G2QFCBNBYAJF2KTK85G9A6","visa-doc-translate","Translate visa application documents (images) to English and create a bilingual PDF with original and translation","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Fvisa-doc-translate\u002FSKILL.md",[143],{"categoryNo":144,"categoryName":145,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000002","文档处理",[147,148,149,150,41,151,152,153,154,155,156,157],"translate","doc","visa doc translate","bilingual","english","application","PDF","translation","documents","create","images",{"skillNo":159,"name":160,"nameZh":6,"description":161,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":162,"categories":163,"keywords":164,"publishedAt":52},"01M6G2QB09TSK6BY4ME5X20EVQ","verification-loop","A comprehensive verification system for Claude Code sessions.","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Fverification-loop\u002FSKILL.md",[],[165,166,167,168,169,170,171],"verification","loop","verification loop","sessions","code","claude code sessions","system",{"skillNo":173,"name":174,"nameZh":6,"description":175,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":176,"categories":177,"keywords":187,"publishedAt":52},"01M6G2Q6V2F7G03VAAF27FXPJR","tdd-workflow","Use this skill when writing new features, fixing bugs, or refactoring code. Enforces test-driven development with 80%+ coverage including unit, integration, and E2E tests.","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Ftdd-workflow\u002FSKILL.md",[178,181,184],{"categoryNo":179,"categoryName":180,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":182,"categoryName":183,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":185,"categoryName":186,"taxonomyType":29,"taxonomyTypeDesc":30},"01JBSEEDCAT000000000000030","开发工程师",[188,189,190,191,192,193,194,195,196,169,197,198,199,200,41,201,202],"workflow","tdd","tdd workflow","use","unit","coverage","refactoring","e2e","integration","development","e2e tests","tests","driven","test","writing",{"skillNo":204,"name":205,"nameZh":6,"description":206,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":207,"categories":208,"keywords":209,"publishedAt":52},"01M6G2Q359YJRWAR2PFCEQAXF3","swiftui-patterns","SwiftUI architecture patterns, state management with @Observable, view composition, navigation, performance optimization, and modern iOS\u002FmacOS UI best practices.","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Fswiftui-patterns\u002FSKILL.md",[],[210,211,212,213,214,46,215,216,217,218,49,219,220,221,222,223,224,225,226,41],"patterns","swiftui","swiftui patterns","architecture","macos","state management","best practices","state","ui","ios","architecture patterns","Composition","performance optimization","view","management","swiftui architecture","navigation",{"skillNo":228,"name":229,"nameZh":6,"description":230,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":231,"categories":232,"keywords":234,"publishedAt":52},"01M6G2PY8B2FWZTWPZ84H83Y7C","swift-protocol-di-testing","Protocol-based dependency injection for testable Swift code — mock file system, network, and external APIs using focused protocols and Swift Testing.","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Fswift-protocol-di-testing\u002FSKILL.md",[233],{"categoryNo":179,"categoryName":180,"taxonomyType":21,"taxonomyTypeDesc":22},[235,236,237,238,169,239,240,241,242,171,243,244,245,246],"swift protocol di testing","protocol","swift","testing","protocols","file","network","injection","dependency","swift testing","dependency injection","mock",{"skillNo":248,"name":249,"nameZh":6,"description":250,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":251,"categories":252,"keywords":253,"publishedAt":52},"01M6G2PSCN2GXV9FFZDRRRWVB6","swift-concurrency-6-2","Swift 6.2 Approachable Concurrency — single-threaded by default, @concurrent for explicit background offloading, isolated conformances for main actor types.","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Fswift-concurrency-6-2\u002FSKILL.md",[],[254,255,256,237,257,63,258],"concurrency","swift concurrency","swift concurrency 6 2","default","types"]