{"owner":"php","repo":"frankenphp","hasSkills":true,"totalSkillsCount":1,"totalTokensCount":1211,"categories":["root-instruction"],"hasMcp":false,"mcpConfig":null,"found":["llms.txt"],"skills":{"llms.txt":"# FrankenPHP\n\n> FrankenPHP is a modern PHP application server written in Go and powered by [Caddy](https://caddyserver.com). It runs PHP applications with automatic HTTPS, HTTP/2 and HTTP/3, an in-memory worker mode, real-time updates via [Mercure](https://mercure.rocks), hot reload, and a static-binary deployment story.\n\nThis index points AI agents and crawlers at the canonical English documentation. All URLs are absolute. Each Markdown source file carries SEO and LLM-friendly YAML frontmatter (`title`, `description`).\n\n## Core concepts\n\n- [FrankenPHP Classic Mode](https://frankenphp.dev/docs/classic/): drop-in replacement for PHP-FPM and Apache mod_php using a fixed or autoscaling thread pool.\n- [FrankenPHP Worker Mode](https://frankenphp.dev/docs/worker/): keep your PHP application bootstrapped in memory between requests for lower latency.\n- [Configuring FrankenPHP](https://frankenphp.dev/docs/config/): Caddyfile, JSON, environment variables, and `php.ini` configuration.\n- [FrankenPHP Internals](https://frankenphp.dev/docs/internals/): thread types, the state machine, the Go/C/PHP CGO boundary, auto-scaling, and per-thread environment sandboxing.\n- [FrankenPHP Security Model](https://frankenphp.dev/docs/security/): trust boundaries between Go, C, and PHP (which inputs are untrusted, what the runtime is responsible for, and what is out of scope).\n\n## Setup and build\n\n- [FrankenPHP Docker Image](https://frankenphp.dev/docs/docker/): build custom images, install PHP extensions and Caddy modules, run as non-root, harden with distroless.\n- [Compile FrankenPHP From Sources](https://frankenphp.dev/docs/compile/): build on Linux, macOS and FreeBSD with PHP linked as a dynamic library.\n- [Static Build](https://frankenphp.dev/docs/static/): create a single self-contained FrankenPHP binary with embedded PHP and Caddy.\n- [Embedding PHP Apps as Standalone Binaries](https://frankenphp.dev/docs/embed/): ship a pure-PHP, Symfony or Laravel app as one static executable.\n- [Building Images with GitHub Actions](https://frankenphp.dev/docs/github-actions/): automate Docker image builds and publication.\n\n## Worker mode and extensions\n\n- [FrankenPHP Worker Mode](https://frankenphp.dev/docs/worker/): supervisor configuration, restart policies, and integration with Symfony Runtime and Laravel Octane.\n- [Extension Workers](https://frankenphp.dev/docs/extension-workers/): dedicated PHP thread pool from a Go extension for queues, schedulers, and event listeners.\n- [Writing PHP Extensions in Go](https://frankenphp.dev/docs/extensions/): extension generator, types API, calling PHP from Go, classes, methods, and constants.\n- [Use as a Go library](https://frankenphp.dev/docs/library/): embed PHP in any Go program, serve scripts through net/http, and scope workers to server instances.\n\n## Frameworks\n\n- [Laravel with FrankenPHP](https://frankenphp.dev/docs/laravel/): Docker, local install, Laravel Octane integration, and standalone binaries.\n- [Symfony with FrankenPHP](https://frankenphp.dev/docs/symfony/): Symfony Docker, worker mode, hot reload, AssetMapper, and X-Sendfile.\n- [WordPress with FrankenPHP](https://frankenphp.dev/docs/wordpress/): minimal install, production Caddyfile, hot reload via Mercure.\n- [Migrating from Nginx and PHP-FPM](https://frankenphp.dev/docs/migrate/): step-by-step migration of an existing PHP stack.\n\n## Real-time and performance features\n\n- [Mercure Real-Time Hub](https://frankenphp.dev/docs/mercure/): built-in Mercure hub for pushing real-time events to browsers over HTTP.\n- [HTTP 103 Early Hints](https://frankenphp.dev/docs/early-hints/): preload critical assets before the final response.\n- [Hot Reload](https://frankenphp.dev/docs/hot-reload/): refresh PHP, templates, and frontend assets without manual reload.\n- [X-Sendfile and X-Accel-Redirect](https://frankenphp.dev/docs/x-sendfile/): delegate large file delivery to the web server after running PHP.\n- [Performance Tuning](https://frankenphp.dev/docs/performance/): thread count, worker mode, glibc vs musl, Go runtime, OPcache, Caddyfile options.\n\n## Production and observability\n\n- [Deploying FrankenPHP in Production](https://frankenphp.dev/docs/production/): Docker Compose deployments with TLS, reverse proxy, and multi-node setups.\n- [Known Issues](https://frankenphp.dev/docs/known-issues/): unsupported PHP extensions, musl caveats, Docker TLS gotchas.\n- [Observability Overview](https://frankenphp.dev/docs/observability/): Prometheus metrics, structured logs, and the Ember TUI dashboard.\n- [Prometheus Metrics](https://frankenphp.dev/docs/metrics/): exposed metrics for threads, workers, queues, crashes, and restarts.\n- [Logging](https://frankenphp.dev/docs/logging/): structured logging with `frankenphp_log()` and `error_log()` routed through Caddy.\n\n## Project\n\n- [GitHub Repository](https://github.com/php/frankenphp)\n- [Docker Hub](https://hub.docker.com/r/dunglas/frankenphp)\n- [README](https://github.com/php/frankenphp/blob/main/README.md)\n- [Contributing Guide](https://github.com/php/frankenphp/blob/main/CONTRIBUTING.md)\n"},"files":{"llms.txt":"# FrankenPHP\n\n> FrankenPHP is a modern PHP application server written in Go and powered by [Caddy](https://caddyserver.com). It runs PHP applications with automatic HTTPS, HTTP/2 and HTTP/3, an in-memory worker mode, real-time updates via [Mercure](https://mercure.rocks), hot reload, and a static-binary deployment story.\n\nThis index points AI agents and crawlers at the canonical English documentation. All URLs are absolute. Each Markdown source file carries SEO and LLM-friendly YAML frontmatter (`title`, `description`).\n\n## Core concepts\n\n- [FrankenPHP Classic Mode](https://frankenphp.dev/docs/classic/): drop-in replacement for PHP-FPM and Apache mod_php using a fixed or autoscaling thread pool.\n- [FrankenPHP Worker Mode](https://frankenphp.dev/docs/worker/): keep your PHP application bootstrapped in memory between requests for lower latency.\n- [Configuring FrankenPHP](https://frankenphp.dev/docs/config/): Caddyfile, JSON, environment variables, and `php.ini` configuration.\n- [FrankenPHP Internals](https://frankenphp.dev/docs/internals/): thread types, the state machine, the Go/C/PHP CGO boundary, auto-scaling, and per-thread environment sandboxing.\n- [FrankenPHP Security Model](https://frankenphp.dev/docs/security/): trust boundaries between Go, C, and PHP (which inputs are untrusted, what the runtime is responsible for, and what is out of scope).\n\n## Setup and build\n\n- [FrankenPHP Docker Image](https://frankenphp.dev/docs/docker/): build custom images, install PHP extensions and Caddy modules, run as non-root, harden with distroless.\n- [Compile FrankenPHP From Sources](https://frankenphp.dev/docs/compile/): build on Linux, macOS and FreeBSD with PHP linked as a dynamic library.\n- [Static Build](https://frankenphp.dev/docs/static/): create a single self-contained FrankenPHP binary with embedded PHP and Caddy.\n- [Embedding PHP Apps as Standalone Binaries](https://frankenphp.dev/docs/embed/): ship a pure-PHP, Symfony or Laravel app as one static executable.\n- [Building Images with GitHub Actions](https://frankenphp.dev/docs/github-actions/): automate Docker image builds and publication.\n\n## Worker mode and extensions\n\n- [FrankenPHP Worker Mode](https://frankenphp.dev/docs/worker/): supervisor configuration, restart policies, and integration with Symfony Runtime and Laravel Octane.\n- [Extension Workers](https://frankenphp.dev/docs/extension-workers/): dedicated PHP thread pool from a Go extension for queues, schedulers, and event listeners.\n- [Writing PHP Extensions in Go](https://frankenphp.dev/docs/extensions/): extension generator, types API, calling PHP from Go, classes, methods, and constants.\n- [Use as a Go library](https://frankenphp.dev/docs/library/): embed PHP in any Go program, serve scripts through net/http, and scope workers to server instances.\n\n## Frameworks\n\n- [Laravel with FrankenPHP](https://frankenphp.dev/docs/laravel/): Docker, local install, Laravel Octane integration, and standalone binaries.\n- [Symfony with FrankenPHP](https://frankenphp.dev/docs/symfony/): Symfony Docker, worker mode, hot reload, AssetMapper, and X-Sendfile.\n- [WordPress with FrankenPHP](https://frankenphp.dev/docs/wordpress/): minimal install, production Caddyfile, hot reload via Mercure.\n- [Migrating from Nginx and PHP-FPM](https://frankenphp.dev/docs/migrate/): step-by-step migration of an existing PHP stack.\n\n## Real-time and performance features\n\n- [Mercure Real-Time Hub](https://frankenphp.dev/docs/mercure/): built-in Mercure hub for pushing real-time events to browsers over HTTP.\n- [HTTP 103 Early Hints](https://frankenphp.dev/docs/early-hints/): preload critical assets before the final response.\n- [Hot Reload](https://frankenphp.dev/docs/hot-reload/): refresh PHP, templates, and frontend assets without manual reload.\n- [X-Sendfile and X-Accel-Redirect](https://frankenphp.dev/docs/x-sendfile/): delegate large file delivery to the web server after running PHP.\n- [Performance Tuning](https://frankenphp.dev/docs/performance/): thread count, worker mode, glibc vs musl, Go runtime, OPcache, Caddyfile options.\n\n## Production and observability\n\n- [Deploying FrankenPHP in Production](https://frankenphp.dev/docs/production/): Docker Compose deployments with TLS, reverse proxy, and multi-node setups.\n- [Known Issues](https://frankenphp.dev/docs/known-issues/): unsupported PHP extensions, musl caveats, Docker TLS gotchas.\n- [Observability Overview](https://frankenphp.dev/docs/observability/): Prometheus metrics, structured logs, and the Ember TUI dashboard.\n- [Prometheus Metrics](https://frankenphp.dev/docs/metrics/): exposed metrics for threads, workers, queues, crashes, and restarts.\n- [Logging](https://frankenphp.dev/docs/logging/): structured logging with `frankenphp_log()` and `error_log()` routed through Caddy.\n\n## Project\n\n- [GitHub Repository](https://github.com/php/frankenphp)\n- [Docker Hub](https://hub.docker.com/r/dunglas/frankenphp)\n- [README](https://github.com/php/frankenphp/blob/main/README.md)\n- [Contributing Guide](https://github.com/php/frankenphp/blob/main/CONTRIBUTING.md)\n"},"items":[{"name":"llms.txt","path":"llms.txt","rawUrl":"https://raw.githubusercontent.com/php/frankenphp/HEAD/llms.txt","title":"LLM Index & Context Digest","category":"root-instruction","format":"text","content":"# FrankenPHP\n\n> FrankenPHP is a modern PHP application server written in Go and powered by [Caddy](https://caddyserver.com). It runs PHP applications with automatic HTTPS, HTTP/2 and HTTP/3, an in-memory worker mode, real-time updates via [Mercure](https://mercure.rocks), hot reload, and a static-binary deployment story.\n\nThis index points AI agents and crawlers at the canonical English documentation. All URLs are absolute. Each Markdown source file carries SEO and LLM-friendly YAML frontmatter (`title`, `description`).\n\n## Core concepts\n\n- [FrankenPHP Classic Mode](https://frankenphp.dev/docs/classic/): drop-in replacement for PHP-FPM and Apache mod_php using a fixed or autoscaling thread pool.\n- [FrankenPHP Worker Mode](https://frankenphp.dev/docs/worker/): keep your PHP application bootstrapped in memory between requests for lower latency.\n- [Configuring FrankenPHP](https://frankenphp.dev/docs/config/): Caddyfile, JSON, environment variables, and `php.ini` configuration.\n- [FrankenPHP Internals](https://frankenphp.dev/docs/internals/): thread types, the state machine, the Go/C/PHP CGO boundary, auto-scaling, and per-thread environment sandboxing.\n- [FrankenPHP Security Model](https://frankenphp.dev/docs/security/): trust boundaries between Go, C, and PHP (which inputs are untrusted, what the runtime is responsible for, and what is out of scope).\n\n## Setup and build\n\n- [FrankenPHP Docker Image](https://frankenphp.dev/docs/docker/): build custom images, install PHP extensions and Caddy modules, run as non-root, harden with distroless.\n- [Compile FrankenPHP From Sources](https://frankenphp.dev/docs/compile/): build on Linux, macOS and FreeBSD with PHP linked as a dynamic library.\n- [Static Build](https://frankenphp.dev/docs/static/): create a single self-contained FrankenPHP binary with embedded PHP and Caddy.\n- [Embedding PHP Apps as Standalone Binaries](https://frankenphp.dev/docs/embed/): ship a pure-PHP, Symfony or Laravel app as one static executable.\n- [Building Images with GitHub Actions](https://frankenphp.dev/docs/github-actions/): automate Docker image builds and publication.\n\n## Worker mode and extensions\n\n- [FrankenPHP Worker Mode](https://frankenphp.dev/docs/worker/): supervisor configuration, restart policies, and integration with Symfony Runtime and Laravel Octane.\n- [Extension Workers](https://frankenphp.dev/docs/extension-workers/): dedicated PHP thread pool from a Go extension for queues, schedulers, and event listeners.\n- [Writing PHP Extensions in Go](https://frankenphp.dev/docs/extensions/): extension generator, types API, calling PHP from Go, classes, methods, and constants.\n- [Use as a Go library](https://frankenphp.dev/docs/library/): embed PHP in any Go program, serve scripts through net/http, and scope workers to server instances.\n\n## Frameworks\n\n- [Laravel with FrankenPHP](https://frankenphp.dev/docs/laravel/): Docker, local install, Laravel Octane integration, and standalone binaries.\n- [Symfony with FrankenPHP](https://frankenphp.dev/docs/symfony/): Symfony Docker, worker mode, hot reload, AssetMapper, and X-Sendfile.\n- [WordPress with FrankenPHP](https://frankenphp.dev/docs/wordpress/): minimal install, production Caddyfile, hot reload via Mercure.\n- [Migrating from Nginx and PHP-FPM](https://frankenphp.dev/docs/migrate/): step-by-step migration of an existing PHP stack.\n\n## Real-time and performance features\n\n- [Mercure Real-Time Hub](https://frankenphp.dev/docs/mercure/): built-in Mercure hub for pushing real-time events to browsers over HTTP.\n- [HTTP 103 Early Hints](https://frankenphp.dev/docs/early-hints/): preload critical assets before the final response.\n- [Hot Reload](https://frankenphp.dev/docs/hot-reload/): refresh PHP, templates, and frontend assets without manual reload.\n- [X-Sendfile and X-Accel-Redirect](https://frankenphp.dev/docs/x-sendfile/): delegate large file delivery to the web server after running PHP.\n- [Performance Tuning](https://frankenphp.dev/docs/performance/): thread count, worker mode, glibc vs musl, Go runtime, OPcache, Caddyfile options.\n\n## Production and observability\n\n- [Deploying FrankenPHP in Production](https://frankenphp.dev/docs/production/): Docker Compose deployments with TLS, reverse proxy, and multi-node setups.\n- [Known Issues](https://frankenphp.dev/docs/known-issues/): unsupported PHP extensions, musl caveats, Docker TLS gotchas.\n- [Observability Overview](https://frankenphp.dev/docs/observability/): Prometheus metrics, structured logs, and the Ember TUI dashboard.\n- [Prometheus Metrics](https://frankenphp.dev/docs/metrics/): exposed metrics for threads, workers, queues, crashes, and restarts.\n- [Logging](https://frankenphp.dev/docs/logging/): structured logging with `frankenphp_log()` and `error_log()` routed through Caddy.\n\n## Project\n\n- [GitHub Repository](https://github.com/php/frankenphp)\n- [Docker Hub](https://hub.docker.com/r/dunglas/frankenphp)\n- [README](https://github.com/php/frankenphp/blob/main/README.md)\n- [Contributing Guide](https://github.com/php/frankenphp/blob/main/CONTRIBUTING.md)\n","isInternal":false,"tokens":1211,"sizeBytes":5071}],"systemPromptSnippet":"<yakaai_skills repo=\"php/frankenphp\">\n<!-- File: llms.txt (Tokens: ~1211 | Category: root-instruction) -->\n# FrankenPHP\n\n> FrankenPHP is a modern PHP application server written in Go and powered by [Caddy](https://caddyserver.com). It runs PHP applications with automatic HTTPS, HTTP/2 and HTTP/3, an in-memory worker mode, real-time updates via [Mercure](https://mercure.rocks), hot reload, and a static-binary deployment story.\n\nThis index points AI agents and crawlers at the canonical English documentation. All URLs are absolute. Each Markdown source file carries SEO and LLM-friendly YAML frontmatter (`title`, `description`).\n\n## Core concepts\n\n- [FrankenPHP Classic Mode](https://frankenphp.dev/docs/classic/): drop-in replacement for PHP-FPM and Apache mod_php using a fixed or autoscaling thread pool.\n- [FrankenPHP Worker Mode](https://frankenphp.dev/docs/worker/): keep your PHP application bootstrapped in memory between requests for lower latency.\n- [Configuring FrankenPHP](https://frankenphp.dev/docs/config/): Caddyfile, JSON, environment variables, and `php.ini` configuration.\n- [FrankenPHP Internals](https://frankenphp.dev/docs/internals/): thread types, the state machine, the Go/C/PHP CGO boundary, auto-scaling, and per-thread environment sandboxing.\n- [FrankenPHP Security Model](https://frankenphp.dev/docs/security/): trust boundaries between Go, C, and PHP (which inputs are untrusted, what the runtime is responsible for, and what is out of scope).\n\n## Setup and build\n\n- [FrankenPHP Docker Image](https://frankenphp.dev/docs/docker/): build custom images, install PHP extensions and Caddy modules, run as non-root, harden with distroless.\n- [Compile FrankenPHP From Sources](https://frankenphp.dev/docs/compile/): build on Linux, macOS and FreeBSD with PHP linked as a dynamic library.\n- [Static Build](https://frankenphp.dev/docs/static/): create a single self-contained FrankenPHP binary with embedded PHP and Caddy.\n- [Embedding PHP Apps as Standalone Binaries](https://frankenphp.dev/docs/embed/): ship a pure-PHP, Symfony or Laravel app as one static executable.\n- [Building Images with GitHub Actions](https://frankenphp.dev/docs/github-actions/): automate Docker image builds and publication.\n\n## Worker mode and extensions\n\n- [FrankenPHP Worker Mode](https://frankenphp.dev/docs/worker/): supervisor configuration, restart policies, and integration with Symfony Runtime and Laravel Octane.\n- [Extension Workers](https://frankenphp.dev/docs/extension-workers/): dedicated PHP thread pool from a Go extension for queues, schedulers, and event listeners.\n- [Writing PHP Extensions in Go](https://frankenphp.dev/docs/extensions/): extension generator, types API, calling PHP from Go, classes, methods, and constants.\n- [Use as a Go library](https://frankenphp.dev/docs/library/): embed PHP in any Go program, serve scripts through net/http, and scope workers to server instances.\n\n## Frameworks\n\n- [Laravel with FrankenPHP](https://frankenphp.dev/docs/laravel/): Docker, local install, Laravel Octane integration, and standalone binaries.\n- [Symfony with FrankenPHP](https://frankenphp.dev/docs/symfony/): Symfony Docker, worker mode, hot reload, AssetMapper, and X-Sendfile.\n- [WordPress with FrankenPHP](https://frankenphp.dev/docs/wordpress/): minimal install, production Caddyfile, hot reload via Mercure.\n- [Migrating from Nginx and PHP-FPM](https://frankenphp.dev/docs/migrate/): step-by-step migration of an existing PHP stack.\n\n## Real-time and performance features\n\n- [Mercure Real-Time Hub](https://frankenphp.dev/docs/mercure/): built-in Mercure hub for pushing real-time events to browsers over HTTP.\n- [HTTP 103 Early Hints](https://frankenphp.dev/docs/early-hints/): preload critical assets before the final response.\n- [Hot Reload](https://frankenphp.dev/docs/hot-reload/): refresh PHP, templates, and frontend assets without manual reload.\n- [X-Sendfile and X-Accel-Redirect](https://frankenphp.dev/docs/x-sendfile/): delegate large file delivery to the web server after running PHP.\n- [Performance Tuning](https://frankenphp.dev/docs/performance/): thread count, worker mode, glibc vs musl, Go runtime, OPcache, Caddyfile options.\n\n## Production and observability\n\n- [Deploying FrankenPHP in Production](https://frankenphp.dev/docs/production/): Docker Compose deployments with TLS, reverse proxy, and multi-node setups.\n- [Known Issues](https://frankenphp.dev/docs/known-issues/): unsupported PHP extensions, musl caveats, Docker TLS gotchas.\n- [Observability Overview](https://frankenphp.dev/docs/observability/): Prometheus metrics, structured logs, and the Ember TUI dashboard.\n- [Prometheus Metrics](https://frankenphp.dev/docs/metrics/): exposed metrics for threads, workers, queues, crashes, and restarts.\n- [Logging](https://frankenphp.dev/docs/logging/): structured logging with `frankenphp_log()` and `error_log()` routed through Caddy.\n\n## Project\n\n- [GitHub Repository](https://github.com/php/frankenphp)\n- [Docker Hub](https://hub.docker.com/r/dunglas/frankenphp)\n- [README](https://github.com/php/frankenphp/blob/main/README.md)\n- [Contributing Guide](https://github.com/php/frankenphp/blob/main/CONTRIBUTING.md)\n</yakaai_skills>"}