orbit-host-sharedlisted
Install: claude install-skill adityaarsharma/orbit
# 🪐 orbit-host-shared — Shared hosting compat
Shared hosting is where 60% of WP sites still live. Plugins that work on the dev's M2 Pro break on a 64MB shared plan. This skill catches the patterns.
---
## What this skill checks
### 1. Memory budget
**Whitepaper intent:** Shared hosts default to 64MB or 128MB PHP memory. WP core takes ~30MB at idle. That leaves ~30-90MB for the entire plugin stack. A plugin allocating 200MB of objects on activation kills the site.
```php
// Detect available memory
$limit = ini_get( 'memory_limit' );
$bytes = wp_convert_hr_to_bytes( $limit );
if ( $bytes < 128 * MB_IN_BYTES ) {
// Low-memory mode: smaller batch sizes, no in-memory caching
}
```
### 2. Execution-time budget
30s default `max_execution_time`. Long-running operations (mass migrations, big DB queries) MUST chunk.
```php
// ❌ Process all 50,000 users in one request
foreach ( get_users() as $u ) { ... } // 60 sec — dies
// ✅ Chunk via cron
wp_schedule_single_event( time(), 'my_plugin_process_chunk', [ 0, 500 ] );
```
### 3. No `exec()` / `shell_exec()`
Shared hosts disable these via `disable_functions`. Plugins using them break silently.
```php
// ❌ Will fail on most shared hosts
exec( 'gzip ' . $file );
// ✅ Use PHP-native or wp_remote
$gzipped = gzencode( file_get_contents( $file ) );
file_put_contents( $file . '.gz', $gzipped );
```
### 4. No Redis / Memcached
Default shared hosting = no persistent object cache. `wp_cache_*` falls back to in-process only. If your p