Agent skill

Octane Development

by liberusoftware in liberusoftware/real-estate-laravel

A skill your agent uses when working with Laravel Octane, a long-running PHP worker server (Swoole, FrankenPHP, RoadRunner) where the application boots once and serves many requests instead of…

MITAuto-check passedBackend & APIs

Install Octane Development

skills CLI
$ npx skills add liberusoftware/real-estate-laravel --skill octane-development -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install liberusoftware/real-estate-laravel octane-development --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/liberusoftware/real-estate-laravel.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/octane-development .claude/skills/octane-development && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
octane-development
GitHub stars
112
Token cost
~1.8k tokens
SKILL.md length
839 words
Files
1
Skills in repo
3
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when working with Laravel Octane, a long-running PHP worker server (Swoole, FrankenPHP, RoadRunner) where the application boots once and serves many requests instead of…

  • Works in 3 steps: Confirm config('octane.server') matches… → Confirm no request-derived state lives… → Confirm a worker recycle limit…
  • Working with Laravel Octane
  • SKILL.md covers Detect the Driver First, State Isolation (all drivers), Memory (all drivers) and Concurrency (Swoole only), plus 5 more sections
  • Calls php

What it does

Octane Development is an agent skill from liberusoftware/real-estate-laravel. Use this skill when working with Laravel Octane, a long-running PHP worker server (Swoole, FrankenPHP, RoadRunner) where the application boots once and serves many requests instead of rebooting for each request like PHP-FPM. Trigger when installing Octane or starting its server; configuring or detecting the active driver for driver-specific code; using Octane::concurrently(), Octane::table(), the Octane cache, or shared in-memory state across workers; controlling worker memory growth; or testing Octane behavior…

Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Backend & APIs, covering Backend development and Real estate. It works with PHP and Laravel. The repository describes itself as: Real Estate / Estate Agent, solution for your Property Agency. Application written in Laravel 13 / PHP 8.5 using Filament 5. Support for Rightmove, Zoopla, OnTheMarket. The licence is MIT.

When your agent uses it

  • Working with Laravel Octane
  • A long-running PHP worker server (Swoole
  • RoadRunner) where the application boots once and serves many requests instead of rebooting for each request like PHP-FPM
  • Installing Octane

Example prompts

  • “/octane-development”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. Confirm config('octane.server') matches the driver assumed by any Swoole-only code.
  2. Confirm no request-derived state lives in a singleton or static without scoped, flush, or a reset.
  3. Confirm a worker recycle limit (max_requests or max_jobs) is configured.

What it can do on your machine

Read from SKILL.md and the folder at commit 8d7119e. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • php

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • laravel.com
    • frankenphp.dev
    • openswoole.com
    • docs.roadrunner.dev

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Octane Development loads about 1.8k tokens when it runs. Until then it costs about 149 tokens; SKILL.md has 839 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~149
When it runs · the whole SKILL.md, loaded when a task matches
~1.8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from liberusoftware/real-estate-laravel at commit 8d7119e, republished under its MIT licence (© liberusoftware). 839 words, ~1,805 tokens.

Download SKILL.mdSave it as .claude/skills/octane-development/SKILL.md (or your agent's skills folder).
name
octane-development
description
Use this skill when working with Laravel Octane, a long-running PHP worker server (Swoole, FrankenPHP, RoadRunner) where the application boots once and serves many requests instead of rebooting for each request like PHP-FPM. Trigger when installing Octane or starting its server; configuring or detecting the active driver for driver-specific code; using Octane::concurrently(), Octane::table(), the Octane cache, or shared in-memory state across workers; controlling worker memory growth; or testing Octane behavior. Skip plain PHP-FPM applications with no persistent worker.
license
MIT
metadata.author
laravel

Laravel Octane

Octane boots the application container once and reuses it across requests in a long-running worker. Follow these rules to avoid Octane-specific bugs caused by PHP-FPM assumptions.

Always verify against the docs. Octane's APIs, configuration keys, and driver options change between versions. Before giving setup steps, configuration examples, or exact API syntax, call the Laravel Boost search-docs tool scoped to the installed laravel/octane version. Treat the rules below as durable patterns, and treat search-docs as the source of truth for specifics such as installation commands, Caddyfile and .rr.yaml configuration, server flags, and method signatures.

Detect the Driver First

Read config('octane.server') to determine the driver: swoole, roadrunner, or frankenphp. Guard Octane::concurrently(), Octane::table(), the octane cache store, and ticks or intervals behind this check, because they run on Swoole only.

State Isolation (all drivers)

Avoid storing request-specific state in singletons or static properties. State set during one request can survive into the next, which is the most common source of Octane bugs.

php
// Avoid: holds request 1's user for every later request
$this->app->singleton(UserContext::class);

// Prefer: flushed and re-resolved per request
$this->app->scoped(UserContext::class);
  • Scope, lazily resolve, or add to the flush list (config/octane.php) any service that holds data derived from $request, Auth::user(), or another per-request value.
  • Inject Request through method parameters or the request() helper inside methods. Do not capture it at construction, where it goes stale.
  • Reset any static state you must keep by listening for the RequestTerminated event, or list the service in flush. Octane already flushes core framework state such as authentication, sessions, and cookies. Your application code is your responsibility.

Memory (all drivers)

Free what you allocate. Workers are long-lived, so anything left referenced can accumulate until the worker crashes.

  • Set a max-requests or max-jobs recycle limit as the last line of defense against leaks.
  • Register event listeners in service providers, never inside request handlers, since the dispatcher keeps every one.
  • Clear static arrays in a lifecycle listener or flush the service. Never append to them in request handlers.
  • Watch for singletons that capture large objects (Eloquent models) in closures, since they are held forever.

Concurrency (Swoole only)

Guard the driver, then run closures in parallel:

php
[$users, $orders] = Octane::concurrently([
    fn () => User::all(),
    fn () => Order::pending()->get(),
]);
  • Pass scalar IDs and re-fetch models inside the closure. Do not capture $this or non-serializable state, because closures are serialized for task workers.
  • Expect results in input order. Catch exceptions inside closures when you need to transform or log the error before Octane rethrows it.

Swoole Tables and octane Cache (Swoole only)

  • Pre-size tables at boot ('name:maxRows'). You cannot resize them, and exceeding the maximum may fail silently. Treat them as volatile because data is lost on worker restart; do not use them as a Redis or database replacement.
  • Use incr() and decr() for atomic counters, since there are no transactions.
  • Use the octane cache store only for ephemeral, high-frequency data. It uses the same shared memory and is not durable caching.

Testing (all drivers)

  • Test correctness rather than parallelism when exercising concurrently(), tables, and ticks without a real server, since closures may run sequentially in tests.
  • Call $this->refreshApplication() between assertions to simulate the per-request scoped-binding flush and prove state does not leak.
  • Guard Swoole-specific tests with extension_loaded('swoole') || extension_loaded('openswoole') and skip them when neither extension is available.
Show full SKILL.md (324 more words)Show less

Common Pitfalls

These issues recur when developing applications on Octane. Guard against each one as you write code.

  • Avoid resolving config(), app('config'), or other container services in low-level worker boot code before the application is fully bootstrapped, especially when configuration is not cached. Resolve configuration after the application is booted, and never assume php artisan config:cache has run.
  • Never capture Auth::user() in a singleton, static property, or custom guard binding. It can leave one user logged in for later requests on the same worker, even after their cookie is cleared. Resolve authentication state per request and add stateful services to the flush list. See State Isolation.
  • Close per-request Redis, database, and HTTP client connections you open outside the framework's managed pools. Octane does not close them, so they can accumulate until the worker recycles. Reset them in a RequestTerminated listener.
  • Do not read PHP superglobals. $_GET, $_POST, and $_SERVER are not reliably populated under workers. Use the Request object instead.
  • Do not capture non-serializable values in a concurrently() closure. A PDO connection, Eloquent model, or $this can trigger a serialization error. Pass scalar IDs and re-fetch models inside the closure.
  • Fix PHP warnings emitted during request startup. On FrankenPHP, they can shut down the worker. Resolve the underlying warning rather than suppressing it.
  • Reload workers after changing code, providers, environment variables, or configuration. Workers hold the booted application in memory and pick up changes only after octane:reload, a restart, or running with --watch in local development.

References

Verify driver-specific details against the official docs, because versions and configuration keys change:

Verification

  1. Confirm config('octane.server') matches the driver assumed by any Swoole-only code.
  2. Confirm no request-derived state lives in a singleton or static without scoped, flush, or a reset.
  3. Confirm a worker recycle limit (max_requests or max_jobs) is configured.

© liberusoftware, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/octane-development of liberusoftware/real-estate-laravel.

Open the folder on GitHubat commit 8d7119e

Used in 2 other repositories

We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders. This page covers the copy in liberusoftware/real-estate-laravel, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Octane Development next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Octane Development compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Octane Development this skillliberusoftware/real-estate-laravel112—~1.8kAutomated safety check: PassMIT
Configuring Horizoncoollabsio/coolify63k4 repos~898Automated safety check: PassMIT
Fortify Developmentcoollabsio/coolify63k4 repos~1.9kAutomated safety check: PassMIT
Laravel Best Practicesanonaddy/anonaddy4.9k13 repos~1.2kAutomated safety check: PassMIT
Geoflowyaojingang/GEOFlow3.8k—~722Automated safety check: PassAGPL-3.0
Livewire Developmentcoollabsio/coolify63k—~964Automated safety check: PassMIT

Similar skills

  • Configuring Horizon

    coollabsio/coolify

    A skill your agent uses whenever the user mentions Horizon by name in a Laravel context.

    63k GitHub starsUsed in 4 repos~898 tokens
    Backend & APIsAuto-check passed
  • Fortify Development

    coollabsio/coolify

    ACTIVATE when the user works on authentication in Laravel. An agent skill from coollabsio/coolify.

    63k GitHub starsUsed in 4 repos~1.9k tokens
    Backend & APIsAuto-check passed
  • Laravel Best Practices

    anonaddy/anonaddy

    Apply this skill whenever writing, reviewing, or refactoring Laravel PHP code.

    4.9k GitHub starsUsed in 13 repos~1.2k tokens
    Backend & APIsAuto-check passed
  • Geoflow

    yaojingang/GEOFlow

    Operate/develop GEOFlow CLI/Laravel/admin/API, topics/专题 and topic tasks, theme libraries/replication, sites/leads/Agent, channel sync and legacy yao-geoflow-cli/design/template migration.

    3.8k GitHub stars~722 tokensUpdated today
    Backend & APIsAuto-check passed
  • Livewire Development

    coollabsio/coolify

    A skill your agent uses for any task or question involving Livewire.

    63k GitHub stars~964 tokensUpdated yesterday
    Backend & APIsAuto-check passed
  • Livewire Development

    yungifez/skuul

    A skill your agent uses for any task or question involving Livewire.

    409 GitHub starsUsed in 1 repo~1.9k tokens
    Backend & APIsAuto-check passed

More from liberusoftware/real-estate-laravel

  • Pest Testing

    liberusoftware/real-estate-laravel

    A skill your agent uses for Pest PHP testing in Laravel projects only.

    112 GitHub starsUsed in 1 repo~1.8k tokens
    Auto-check passed
  • Lerd

    liberusoftware/real-estate-laravel

    Manage the lerd local PHP development environment via MCP tools: run framework console commands (artisan, bin/console, etc.), manage services, start/stop queue workers, run composer, manage Node.js…

    112 GitHub stars~7.8k tokensUpdated 3 days ago
    Auto-check: warnings

Works with

Categories

Questions about Octane Development

What does Octane Development do?

A skill your agent uses when working with Laravel Octane, a long-running PHP worker server (Swoole, FrankenPHP, RoadRunner) where the application boots once and serves many requests instead of…. Octane Development is an agent skill from liberusoftware/real-estate-laravel. Use this skill when working with Laravel Octane, a long-running PHP worker server (Swoole, FrankenPHP, RoadRunner) where the application boots once and serves many requests instead of rebooting for each request like PHP-FPM.

When should I use Octane Development?

Octane Development fits situations like: working with Laravel Octane; A long-running PHP worker server (Swoole; roadRunner) where the application boots once and serves many requests instead of rebooting for each request like PHP-FPM; installing Octane.

How do I install Octane Development in Claude Code?

Run `npx skills add liberusoftware/real-estate-laravel --skill octane-development -a claude-code`. Or copy the skill folder (.claude/skills/octane-development in liberusoftware/real-estate-laravel) into .claude/skills/octane-development in your project. Claude Code loads it when a task matches its description.

How do I install Octane Development in Codex?

Run `npx skills add liberusoftware/real-estate-laravel --skill octane-development -a codex`. Or copy the skill folder (.claude/skills/octane-development in liberusoftware/real-estate-laravel) into .agents/skills/octane-development in your project. Codex loads it when a task matches its description.

Can I use Octane Development in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add liberusoftware/real-estate-laravel --skill octane-development -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/octane-development, .gemini/skills/octane-development, .github/skills/octane-development and .opencode/skills/octane-development in your project.

What does Octane Development need to run?

Going by SKILL.md and its folder, Octane Development needs the command-line tools its instructions call (php).

Does Octane Development access the network?

SKILL.md names 4 domains. As links in the text: laravel.com, frankenphp.dev, openswoole.com and docs.roadrunner.dev. This is read from the text; nothing was executed.

Is Octane Development safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Octane Development use?

Octane Development is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Octane Development use?

About 1.8k tokens (SKILL.md is roughly 7.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Octane Development?

Skills that share tags, products or a category with Octane Development: Configuring Horizon (coollabsio/coolify, 63k stars), Fortify Development (coollabsio/coolify, 63k stars), Laravel Best Practices (anonaddy/anonaddy, 4.9k stars) and Geoflow (yaojingang/GEOFlow, 3.8k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Octane Development?

liberusoftware (a GitHub organization) maintains it in liberusoftware/real-estate-laravel, which has 112 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 5, 2026.

Source: liberusoftware/real-estate-laravel on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.