Generate With AI
in the Kirby Panel
the selected text from the toolbar, or take an inline suggestion as you type.
Bring Context to Your
Prompt Party
Skills
Blocks & Layouts
Text ×
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 Leipzig. A conversation with the artist takes place on 14 November at 7 pm, admission free.
Inline Suggestions
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.
Luise Frey photographs rooms
Toolbar Buttons
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 Leipzig. A conversation with the artist takes place on 14 November at 7 pm, admission free.
You Choose What
the Agent May Do
Your Agent Prepares,
You Publish
- Review FirstAgents write into unsaved changes, and each write links to the changed content in the Panel. Publishing and deleting are permissions you tick yourself.
- Every Connection in ViewThe Agents view lists each connected agent with its permissions and when it was last active. Revoke one there and it loses access at once.
Drive Copilot
From PHP
- Hooks & CLIGenerate content on save or in batch from the command line.
- Two Output ModesPlain text or structured objects validated against a JSON schema.
// 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');
}
];