AI-Powered
Content Generation

Generate entire layouts from your custom blocks, refine text with inline suggestions, or let AI complete your thoughts as you type.

Bring Context to Your Prompt Party

View Button

Fill several fields from one prompt
Tick the fields in the dialog and write one prompt. Copilot fills them all, streaming into the form. Attach files, or pull another page in as context with @page://.
Kirby Panel
Write the text and the description from the attached press release.

Skills

Your house rules, one mention away
Define brand voice and writing rules once. Editors type @skill://, pick from the typeahead, and the prompt follows them.
Kirby Panel
Write the teaser for "Luise Frey: Rooms of Silence" @skill://brand-voice @skill://

Inline Suggestions

Keep typing, Copilot finishes the sentence
Pause in a writer field and a grey continuation appears. Tab keeps it, anything else drops it.
Kirby Panel

Luise Frey photographs rooms after everyone has left them: a school gym on the first morning of the holidays, a ferry terminal at four in the morning.

Toolbar Buttons

Rewrite the selection where it sits
Select text in a writer or textarea field, press the Copilot button and say what should change. The result replaces the selection or follows it.
Kirby Panel

Luise Frey photographs rooms after everyone has left them: a school gym on the first morning of the holidays, a ferry terminal at four in the morning, the back office of a shop that closed last spring.

The twenty-eight prints in this exhibition were made over six winters in northern Germany and on the Faroe Islands. Frey works with a large-format camera and available light, which means exposures long enough for the dust to settle inside the frame.

Rooms of Silence is her first solo exhibition in Kassel. A conversation with the artist takes place on 14 November at 7 pm, admission free.

Make this shorter.
Replace

Blocks & Layouts

Whole layouts from your own blocks
Prompt once and Copilot fills the field with blocks or multi-column layouts built from your block blueprints, custom blocks included.
Kirby Panel

Text ×

Rooms After Everyone Has Left
H2

Luise Frey photographs rooms after everyone has left them: a school gym on the first morning of the holidays, a ferry terminal at four in the morning, the back office of a shop that closed last spring.

I wait until the dust has settled inside the frame.
Luise Frey

Generate Content for
Multiple Panel Fields

Demonstration of generating many fields at once in the Kirby Panel: paused

Drive Copilot
From PHP

Call AI providers from CLI commands, hooks, or custom workflows. The same Client that powers the Panel is available to your code.
  • Hooks & CLI
    Generate content on save or in batch from the command line
  • Two Output Modes
    Plain text or structured objects validated against a JSON schema
site/commands/generate-meta-descriptions.php
// Run: kirby generate-meta-descriptions

use JohannSchopplich\Copilot\AI\Client;
use Kirby\CLI\CLI;

return [
    'description' => 'Generate missing meta descriptions for blog posts',
    'command' => static function (CLI $cli): void {
        $client = Client::instance();

        foreach (page('blog')->children() as $post) {
            if ($post->meta_description()->isNotEmpty()) {
                continue;
            }

            $description = $client->generateText([
                ['role' => 'system', 'content' => 'Write a 155-character SEO description.'],
                ['role' => 'user', 'content' => $post->text()->kirbytext()],
            ]);

            $post->update(['meta_description' => $description]);
            $cli->out('✓ ' . $post->title());
        }

        $cli->success('Done');
    }
];

Do Not Take
Our Word for It

Install the plugin and try Copilot in the Panel yourself.