{"id":256681,"date":"2025-11-01T11:16:36","date_gmt":"2025-11-01T11:16:36","guid":{"rendered":"https:\/\/cn.wordpress.org\/plugins\/ai-comment-checker\/"},"modified":"2025-12-03T16:01:29","modified_gmt":"2025-12-03T16:01:29","slug":"spamjudge","status":"publish","type":"plugin","link":"https:\/\/te.wordpress.org\/plugins\/spamjudge\/","author":23303828,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.1.0","stable_tag":"1.1.0","tested":"6.9.4","requires":"5.0","requires_php":"7.4","requires_plugins":null,"header_name":"SpamJudge","header_author":"cottboy","header_description":"Using AI large language models to automatically detect and filter spam comments","assets_banners_color":"","last_updated":"2025-12-03 16:01:29","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/www.joyfamily.top\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":190,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"cottboy","date":"2025-11-01 11:15:25"},"1.1.0":{"tag":"1.1.0","author":"cottboy","date":"2025-12-03 16:01:29"}},"upgrade_notice":{"1.0.0":"<p>Compatible with the \/v1\/responses endpoint, endpoint URL auto-completion, deprecation of &quot;temperature&quot;.<\/p>"},"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.1.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3388045,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3409453,"resolution":"2","location":"assets","locale":""}},"screenshots":{"1":"Log interface","2":"Settings interface"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[2353,2656,226124,599,6076],"plugin_category":[44,54],"plugin_contributors":[243856],"plugin_business_model":[],"class_list":["post-256681","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-anti-spam","plugin_tags-llm","plugin_tags-spam","plugin_tags-spam-comments","plugin_category-discussion-and-community","plugin_category-security-and-spam-protection","plugin_contributors-cottboy","plugin_committers-cottboy"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/spamjudge.svg","icon_2x":false,"generated":true},"screenshots":[{"src":"https:\/\/ps.w.org\/spamjudge\/assets\/screenshot-1.png?rev=3388045","caption":"Log interface"},{"src":"https:\/\/ps.w.org\/spamjudge\/assets\/screenshot-2.png?rev=3409453","caption":"Settings interface"}],"raw_content":"<!--section=description-->\n<p>SpamJudge uses AI large language models to automatically detect and filter spam comments.<\/p>\n\n<h4>Features<\/h4>\n\n<ul>\n<li>Supports any API compatible with the OpenAI format<\/li>\n<li>Supports both \/v1\/chat\/completions and \/v1\/response endpoints<\/li>\n<li>Customizable AI prompts to adjust scoring criteria based on the characteristics of the website<\/li>\n<li>Configurable score thresholds for flexible control over filtering intensity<\/li>\n<li>Detailed logging to track the processing of each comment<\/li>\n<\/ul>\n\n<h4>Workflow<\/h4>\n\n<ol>\n<li>Visitor submits a comment<\/li>\n<li>The plugin intercepts the comment and sends it to the AI for scoring<\/li>\n<li>The AI returns a score between 0 and 100 (0 = spam, 100 = high quality)<\/li>\n<li>The comment is automatically processed based on the score and threshold:\n\n<ul>\n<li>Score &gt;= threshold: approved<\/li>\n<li>Score &lt; threshold: moved to spam or moved to moderation based on settings<\/li>\n<li>Timeout\/error: moved to moderation or directly approved based on settings<\/li>\n<\/ul><\/li>\n<li>Detailed logs are recorded for administrators to review<\/li>\n<\/ol>\n\n<h4>Default system prompt in the current version<\/h4>\n\n<pre><code>You are a spam comment detection system. Your ONLY task is to output a single number between 0 and 100.\n\nSCORING RULES:\n- 0-20: Obvious spam (ads, malicious links, gibberish)\n- 21-40: Likely spam (suspicious links, bot-like comments)\n- 41-60: Uncertain (short comments, borderline content)\n- 61-80: Likely legitimate (relevant, thoughtful)\n- 81-100: Clearly legitimate (detailed, helpful, on-topic)\n\nCRITICAL INSTRUCTIONS:\n1. Output ONLY a number (0-100)\n2. NO explanations\n3. NO additional text\n4. NO punctuation\n5. Just the number\n\nExample valid outputs: 85\nExample INVALID outputs: \"Score: 85\", \"85 points\", \"I think it's 85\"\n\nIf you output anything other than a single number, the system will fail.\n<\/code><\/pre>\n\n<!--section=installation-->\n<h4>Automatic installation<\/h4>\n\n<ol>\n<li>Log in to the WordPress admin dashboard<\/li>\n<li>Navigate to \"Plugins\" &gt; \"Add New\"<\/li>\n<li>Search for \"SpamJudge\"<\/li>\n<li>Click \"Install Now\"<\/li>\n<li>After installation is complete, click \"Activate\"<\/li>\n<\/ol>\n\n<h4>Manual installation<\/h4>\n\n<ol>\n<li>Download the plugin zip file<\/li>\n<li>Log in to the WordPress admin dashboard<\/li>\n<li>Go to \"Plugins\" &gt; \"Add New\" &gt; \"Upload Plugin\"<\/li>\n<li>Select the downloaded zip file<\/li>\n<li>Click \"Install Now\"<\/li>\n<li>After the installation is complete, click \"Activate\"<\/li>\n<\/ol>\n\n<h4>FTP Installation<\/h4>\n\n<ol>\n<li>Unzip the plugin zip file<\/li>\n<li>Upload the <code>spamjudge<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory via FTP<\/li>\n<li>Log in to the WordPress admin dashboard<\/li>\n<li>Go to the \"Plugins\" page<\/li>\n<li>Locate \"SpamJudge\" and click \"Activate\"<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id='does%20it%20require%20payment%3F'><h3>Does it require payment?<\/h3><\/dt>\n<dd><p>The plugin itself is free, but you need an AI API key. Most AI API services require payment based on the number of tokens used.<\/p><\/dd>\n<dt id='where%20will%20the%20comment%20data%20be%20sent%3F'><h3>Where will the comment data be sent?<\/h3><\/dt>\n<dd><p>Comment data will be sent to the API you configure for scoring. Make sure to use a trusted API provider and review its privacy policy. The plugin itself does not collect or store any data on third-party servers.<\/p><\/dd>\n<dt id='how%20much%20additional%20wait%20time%20will%20be%20added%20when%20submitting%20a%20comment%3F'><h3>How much additional wait time will be added when submitting a comment?<\/h3><\/dt>\n<dd><p>It adds about 3 seconds, depending on the service provider and model used. Using a non-thinking model can effectively reduce wait time.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.0\uff082025-12-03\uff09<\/h4>\n\n<ul>\n<li>Compatible with the \/v1\/responses endpoint<\/li>\n<li>Endpoint URL auto-completion<\/li>\n<li>Deprecation of \"temperature\"<\/li>\n<\/ul>\n\n<h4>1.0.0\uff082025-11-01\uff09<\/h4>\n\n<ul>\n<li>First version<\/li>\n<\/ul>","raw_excerpt":"Using AI large language models to automatically detect and filter spam comments, supporting APIs compatible with the OpenAI format.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/256681","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=256681"}],"author":[{"embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/cottboy"}],"wp:attachment":[{"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=256681"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=256681"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=256681"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=256681"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=256681"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=256681"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}