klytos-plugin-developmentlisted
Install: claude install-skill joseconti/klytos
# Klytos Plugin Development Guide
## Architecture Overview
Klytos is an **AI-First CMS** controlled via MCP (Model Context Protocol). Plugins extend core functionality through a WordPress-inspired hook system (actions + filters) WITHOUT modifying core files.
**Key principle**: Every feature should be exposed as an MCP tool FIRST, admin UI second.
---
## Plugin Identification (IMMUTABLE CONTRACT)
A Klytos plugin is identified by a directory `plugins/{plugin-id}/` containing a PHP file named `{plugin-id}.php` with a `Plugin Name:` header in its docblock. This contract can NEVER change.
### Minimum Viable Plugin
```php
<?php
// plugins/hello-world/hello-world.php
/**
* Plugin Name: Hello World
*/
```
That's it. Klytos discovers it, lists it in admin, and allows activation.
---
## Plugin Structure
```
plugins/{plugin-id}/
├── {plugin-id}.php ← REQUIRED: identification + entry point (PHP header)
├── klytos-plugin.json ← OPTIONAL: extended metadata
├── install.php ← Optional: runs on first activation
├── deactivate.php ← Optional: runs on deactivation
├── uninstall.php ← Optional: removes plugin data permanently
├── admin/ ← Optional: admin page views
├── assets/ ← Optional: CSS, JS, images (publicly accessible)
├── lang/ ← Optional: translation files
├── src/ ← Optional: PHP source classes
└── migrations/ ← Optional: data migrations
```
---
## PHP Header (Canonical Ident