{"adoption": {"forks": 169, "observed_at": "2026-08-28T04:03:12.773083+00:00", "stars": 1009}, "canonical_url": "https://ross.abutalabs.com/products/phishguard-scaffold", "card": {"archived": false, "artifact_type": "library", "description": "Joint Semantic Detection and Dissemination Control of Phishing Attacks on Social Media via LLama- Based Modeling", "domain": ["security", "social-media", "machine-learning", "artificial-intelligence"], "enriched": true, "function": ["machine-learning", "deep-learning", "nlp", "llm-training", "rag", "security"], "health_score": 60, "homepage": null, "language": "Python", "license": null, "license_family": "other", "maturity": "active", "member_repos": ["wang-rui/phishguard-scaffold"], "name": "wang-rui/phishguard-scaffold", "platform": ["python"], "pushed_at": "2026-02-15T00:03:07+00:00", "repo": "wang-rui/phishguard-scaffold", "stars": 1009, "tags": ["phishing-detection", "llama", "social-media", "propagation-control", "adversarial-training", "graph-intervention", "research-framework", "natural-language-processing"], "topics": [], "urls": [], "use_cases": ["detect phishing tweets on social media", "fine-tune LLaMA for phishing classification", "simulate phishing message propagation on social networks", "select intervention nodes to minimize phishing spread", "run adversarial robustness training for phishing detectors", "evaluate phishing detection accuracy and AUC on Twitter data"], "what_it_is": "PhishGuard is a Python research framework that jointly performs phishing detection and dissemination control on social media using LLaMA-based semantic modeling. It combines LoRA fine-tuning, adversarial training, and graph-based intervention strategies to classify phishing content and minimize its spread.", "when_to_avoid": ["you need a production-ready phishing filter with a supported license", "you require a plug-and-play API without training your own models", "you work outside social media text or lack GPU resources for LLaMA fine-tuning"], "when_to_choose": ["you need a research-grade pipeline combining phishing detection with propagation control", "you want to fine-tune LLaMA with LoRA for social media phishing classification", "you need graph-based intervention strategies like independent cascade and greedy node selection"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/phishguard-scaffold", "repo": "wang-rui/phishguard-scaffold", "role": "main", "score": 47}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:12.773083+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:12:05.342700+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1a3aa9b9a958abb53ee1a489e5b805a2342ca488c1ccf2dd63ae3a6f19ead0ba", "fetched_at": "2026-08-28T04:03:12.773083+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wang-rui/phishguard-scaffold"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:12.773083+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:12:05.342700+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1a3aa9b9a958abb53ee1a489e5b805a2342ca488c1ccf2dd63ae3a6f19ead0ba", "fetched_at": "2026-08-28T04:03:12.773083+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wang-rui/phishguard-scaffold"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:12:05.342700+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1a3aa9b9a958abb53ee1a489e5b805a2342ca488c1ccf2dd63ae3a6f19ead0ba", "fetched_at": "2026-08-28T04:03:12.773083+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wang-rui/phishguard-scaffold"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:03:12.773083+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:12.773083+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:12.773083+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:12:05.342700+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1a3aa9b9a958abb53ee1a489e5b805a2342ca488c1ccf2dd63ae3a6f19ead0ba", "fetched_at": "2026-08-28T04:03:12.773083+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wang-rui/phishguard-scaffold"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:12.773083+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:12.773083+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:12:05.342700+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1a3aa9b9a958abb53ee1a489e5b805a2342ca488c1ccf2dd63ae3a6f19ead0ba", "fetched_at": "2026-08-28T04:03:12.773083+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wang-rui/phishguard-scaffold"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:12.773083+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:12.773083+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:12.773083+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:12:05.342700+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1a3aa9b9a958abb53ee1a489e5b805a2342ca488c1ccf2dd63ae3a6f19ead0ba", "fetched_at": "2026-08-28T04:03:12.773083+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wang-rui/phishguard-scaffold"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:12.773083+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:12.773083+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:12:05.342700+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1a3aa9b9a958abb53ee1a489e5b805a2342ca488c1ccf2dd63ae3a6f19ead0ba", "fetched_at": "2026-08-28T04:03:12.773083+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wang-rui/phishguard-scaffold"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:12:05.342700+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1a3aa9b9a958abb53ee1a489e5b805a2342ca488c1ccf2dd63ae3a6f19ead0ba", "fetched_at": "2026-08-28T04:03:12.773083+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wang-rui/phishguard-scaffold"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:12:05.342700+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1a3aa9b9a958abb53ee1a489e5b805a2342ca488c1ccf2dd63ae3a6f19ead0ba", "fetched_at": "2026-08-28T04:03:12.773083+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wang-rui/phishguard-scaffold"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:12:05.342700+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1a3aa9b9a958abb53ee1a489e5b805a2342ca488c1ccf2dd63ae3a6f19ead0ba", "fetched_at": "2026-08-28T04:03:12.773083+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wang-rui/phishguard-scaffold"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 67, "longevity": 25, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 360, "days_push": 200, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 47, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}