PHPackages                             mauricerenck/darkvisitors - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Security](/categories/security)
4. /
5. mauricerenck/darkvisitors

ActiveKirby-plugin[Security](/categories/security)

mauricerenck/darkvisitors
=========================

Kirby robots.txt plugin for blocking AI Crawlers and Bots

1.2.1(1mo ago)19394MITPHPPHP &gt;=8.0.0CI passing

Since Apr 18Pushed 6mo ago2 watchersCompare

[ Source](https://github.com/mauricerenck/dark-visitors)[ Packagist](https://packagist.org/packages/mauricerenck/darkvisitors)[ Docs](https://github.com/mauricerenck/dark-visitors)[ RSS](/packages/mauricerenck-darkvisitors/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (8)Dependencies (8)Versions (9)Used By (0)

Dark Visitors
=============

[](#dark-visitors)

Dark Visitors is a plugin for Kirby that blocks unwanted AI Crawlers from your website using robots.txt. It uses the Dark Visitors API to identify and block unwanted visitors.

It also allows you to add custom rules and your sitemaps to your robots.txt file.

Installation
------------

[](#installation)

```
composer require mauricerenck/darkvisitors
```

Or download the [latest release](https://github.com/mauricerenck/dark-visitors/releases) unzip it, copy it to `site/plugins/dark-visitors`

Get the access token
--------------------

[](#get-the-access-token)

You need a Dark Visitors access token to use this plugin. Go to  create an account and your own Project. Open your project and get your access token under settings.

Usage
-----

[](#usage)

Edit your `config.php` and add the following line:

```
'mauricerenck.dark-visitors.token' => 'YOUR TOKEN'
```

### AI crawlers

[](#ai-crawlers)

Set which types of AI crawlers you want to block:

```
'mauricerenck.dark-visitors.aiTypes' => ['AI Assistant', 'AI Data Scraper', 'AI Search Crawler'],
```

### Your custom rules

[](#your-custom-rules)

Add your custom rules to the robots.txt file:

```
'mauricerenck.dark-visitors.agents' => [
    [
        'userAgents' => ['Googlebot', 'Bingbot'],
        'disallow' => ['/admin'],
    ],
    [
        'userAgents' => ['Bingbot'],
        'allow' => ['/microsoft'],
    ],
],
```

Setting your custom rules will overwrite the default rules, which are:

```
[
    'userAgents' => ['*'],
    'disallow' => ['/kirby', '/site'],
];
```

### Sitemaps

[](#sitemaps)

Add your sitemaps to the robots.txt file:

```
'mauricerenck.dark-visitors.sitemaps' => [
    'Sitemap: https://your-site.tld/sitemap.xml',
    'Sitemap: https://your-site.tld/sitemap2.xml',
],
```

### Tracking/Analytics

[](#trackinganalytics)

Darkvisitors offers a tracking feature. If you want to use it, you can enable it in the config:

```
'mauricerenck.dark-visitors.analytics' => true,
```

Learn more about robots.txt and AI crawlers
-------------------------------------------

[](#learn-more-about-robotstxt-and-ai-crawlers)

- [Google: Robots.txt specifications](https://developers.google.com/search/docs/advanced/robots/robots_txt)
- [Dark Visitors](https://darkvisitors.com/)

###  Health Score

44

—

FairBetter than 90% of packages

Maintenance78

Regular maintenance activity

Popularity23

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 66.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~116 days

Recently: every ~190 days

Total

8

Last Release

33d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/964547?v=4)[Maurice Renck](/maintainers/mauricerenck)[@mauricerenck](https://github.com/mauricerenck)

---

Top Contributors

[![mauricerenck](https://avatars.githubusercontent.com/u/964547?v=4)](https://github.com/mauricerenck "mauricerenck (14 commits)")[![semantic-release-bot](https://avatars.githubusercontent.com/u/32174276?v=4)](https://github.com/semantic-release-bot "semantic-release-bot (7 commits)")

---

Tags

aikirbykirby-5kirby-cmskirby4kirby5privacy

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/mauricerenck-darkvisitors/health.svg)

```
[![Health](https://phpackages.com/badges/mauricerenck-darkvisitors/health.svg)](https://phpackages.com/packages/mauricerenck-darkvisitors)
```

###  Alternatives

[phpro/grumphp

A composer plugin that enables source code quality checks.

4.3k17.0M1.1k](/packages/phpro-grumphp)[getkirby/cms

The Kirby core

1.5k606.6k541](/packages/getkirby-cms)[amphp/pipeline

Asynchronous iterators and operators.

8042.8M56](/packages/amphp-pipeline)[kelunik/acme

ACME library written in PHP.

120611.8k3](/packages/kelunik-acme)[medienbaecker/kirby-modules

Easily add modules to your pages

895.6k1](/packages/medienbaecker-kirby-modules)[phel-lang/phel-lang

Phel is a functional programming language that compiles to PHP

5196.5k22](/packages/phel-lang-phel-lang)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
