XED /Studio

AI-Agent-First Ghost Theme Factory — from preset to production in seconds.

Quick Start

git clone https://github.com/XED-dev/Studio.git
cd Studio/infactory-cli && npm install

# Build a Ghost theme
node bin/infactory.js build --preset=blog --zip

# Deploy to Ghost
INFACTORY_GHOST_URL=https://your.ghost.site \
INFACTORY_GHOST_KEY=id:secret \
node bin/infactory.js deploy --preset=blog

Requires: Node.js 18+ · Ghost CMS 6.x

What it does

XED /Studio turns YAML preset files into production-ready Ghost themes. Define your design tokens (colors, fonts, spacing), pick sections from the library, and deploy — all from the terminal. Built for AI coding agents, not mouse clicks.

Two components

ComponentPurpose
infactory-cliBuild Ghost themes from YAML presets. Scaffold, preview, deploy.
infactory-serverFactory Floor Controller on your Ghost host. REST API for remote agents.

Architecture

AI Agent (terminal)          Ghost Host
┌────────────────────┐  HTTPS   ┌───────────────────────┐
│ Claude Code      │ ─────→ │ inFactory Server     │
│ Gemini CLI       │ API-Key │  ├ Theme Build+Deploy │
│ any CLI agent    │         │  ├ Content CRUD       │
└────────────────────┘         │  ├ Image Migration    │
                              │  └ Ghost Restart      │
                              └───────────────────────┘

Why CLI-first?

FeatureXED /StudioOthers
CLI interface❌ Elementor, v0, Lovable
Ghost CMS native❌ WordPress or React only
AI agent as primary user❌ GUI-first, human-first
Open source (MIT)❌ Proprietary or GPL
Zero external deps for core❌ Heavy dependency trees

Built-in presets

PresetUse caseSections
blogPersonal blog, newsletter4
agencyDigital agency, studio4
saasB2B tool, startup5
studioPortfolio, multi-use4

Server API

EndpointWhat it does
POST /api/theme/buildBuild preset into Ghost theme ZIP
POST /api/theme/deployBuild + upload + activate on Ghost
POST /api/ghost/pagesCreate or update a Ghost page
POST /api/ghost/images/migrateMigrate all images of a page to Ghost
POST /api/system/restartRestart Ghost CMS
GET /api/healthServer + Ghost status

17 endpoints total. See full API reference.