Communitygithub.com

umairmsm/wp-operate

Stage 8 of a wp-site-kit WordPress build and everything after launch - backups with an off-machine copy, restore drills, the disaster-recovery runbook, credentials inventory, update policy, alerts, and working from more than one machine (bridge file, workstation doctor, encrypted state bundle, rescuing unpushed work). Use for "backup", "restore", "move to a new machine/server", "update plugins", "what if the server dies", "work from the cloud box", "set up a second machine".

What is wp-operate?

wp-operate is a Claude Code agent skill that stage 8 of a wp-site-kit WordPress build and everything after launch - backups with an off-machine copy, restore drills, the disaster-recovery runbook, credentials inventory, update policy, alerts, and working from more than one machine (bridge file, workstation doctor, encrypted state bundle, rescuing unpushed work). Use for "backup", "restore", "move to a new machine/server", "update plugins", "what if the server dies", "work from the cloud box", "set up a second machine".

Works with✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/umairmsm/wp-site-kit/tree/HEAD/skills/wp-operate

Ask in your favorite AI

Open a new chat with this agent skill pre-loaded.

Documentation

Stage 8: Operate

Goal: the site survives a lost laptop, a dead server, a bad update and a change of machine, and nobody has to remember how.

Steps

  1. Backups.
    • Run scripts/backup.sh weekly, and before risky work. It packs the DB, uploads, every git branch and stash, and the Claude memory.
    • Use --encrypt before the zip leaves the machine, and keep one copy off it.
    • Live: the host's daily backups, plus the dumps the deploy and content scripts take.
  2. Write down where everything lives in the project's docs/reference/DISASTER_RECOVERY.md, section 0. Include the photo originals folder: it is not in git.
  3. Restore drill. Restore once per quarter onto a spare machine or a fresh DDEV project, time it, and log it in §5. A backup you have never restored is a hope, not a backup.
  4. Credentials: every secret has a row in CREDENTIALS_INVENTORY.md (name, where it lives, who has it, when it was rotated). Rotate anything an agent has seen.
  5. Routines: weekly, monthly and yearly checks, the update policy and alerts in docs/reference/OPERATIONS.md. Plugin updates go to staging first.
  6. More than one machine? Follow references/multi-machine.md:
    • docs/team/BRIDGE.md holds roles, rules and the handoff log;
    • scripts/workstation-doctor.sh checks parity;
    • scripts/make-state-bundle.sh carries the git-ignored config, encrypted.

Gate (tick in SITE_STATUS.md)

  • Backups scheduled, with an off-machine copy
  • Restore drill done (date, minutes)
  • Update and alert routines written in OPERATIONS.md

Lessons

  • The backup script once pointed at the wrong Claude memory folder. The sessions ran from the parent folder, so the memory lived under a different path. The script derives the path but accepts CLAUDE_MEM= for this case.
  • A cloud build box had a branch and stashes that existed nowhere else, and the box could not push. Pull them out with git bundle over ssh before the box stops or is deleted.
  • Visual baselines made on one OS fail on another. Keep them in the pinned Docker image.
  • A free plan or credit that ends on a date is a deadline for an exit drill: a week before, prove you can rebuild on the next machine from git + the state bundle + a backup.

Individual skills in this repo

This repo contains 7 individual skills — each has its own dedicated page.

umairmsm/wp-build

Stage 3 of a wp-site-kit WordPress build - local DDEV site, the core must-use plugin (modules), the presentation-only child theme with skins, the content model (custom post types, meta, WP_Query, render functions), and the enquiry pipeline that saves leads before forwarding. Use when building or changing features, templates, content types, forms or plugin modules on a wp-site-kit site.

umairmsm/wp-content

Stage 4 of a wp-site-kit WordPress build - real copy and photos. Content truth (facts only from the owner), AI drafts and owner approval, claims audits, banned words and fake proof, legal pages, the photo pipeline (dedupe, real-only, EXIF strip, WebP sizes, alt text, AI image register), and recorded content changes. Use for "write the copy", "add photos", "the owner sent new photos", "check for duplicates", "update prices or text on the live site", "legal pages".

umairmsm/wp-design

Stage 2 of a wp-site-kit WordPress build - design direction, a static HTML/CSS prototype with design tokens, owner sign-off with screenshots, self-hosted fonts, and porting the approved look into a swappable WordPress skin. Use for "design the site", "new look", "redesign", "change colours or fonts", "make a new skin", "port the prototype to WordPress".

umairmsm/wp-kickoff

Stage 1 of a wp-site-kit WordPress build. Use when starting a new WordPress website or taking over or rebuilding an existing one - discovery brief, stack decision, creating the project with bin/wp-site-new, locked decisions, private repo and credentials inventory. Triggers - "new WordPress site", "start a client website", "rebuild this site", "take over this WordPress site".

umairmsm/wp-seo

Stage 5 of a wp-site-kit WordPress build - titles and descriptions, canonical URLs, one schema owner and JSON-LD, sitemaps, robots.txt and llms.txt, AI crawler access, redirects (301 vs 302), legacy URL maps, Search Console, and adding languages one pilot at a time with Polylang (hreflang, .po/.mo strings, native review). Use for "SEO", "schema", "redirect", "old URLs", "translate the site", "add French/Spanish", "hreflang", "canonical".

umairmsm/wp-ship

Stage 7 of a wp-site-kit WordPress build - staging behind Cloudflare Access, server hardening, safe deploys from a commit (scripts/deploy-safe.sh), database content changes, the launch audit, DNS cutover without breaking a running business, and the first week after launch. Use for "deploy", "set up staging", "go live", "launch", "cutover", "move DNS", "harden the server".

umairmsm/wp-site

Start here for any WordPress website built with wp-site-kit, from an empty folder to a live site. Use when someone says "build a WordPress site", "new website for a client", "where are we on the site", "what is next before launch", or asks to continue a site project. Finds the current stage from SITE_STATUS.md, applies the hard rules, and hands over to the right stage skill.

Related Skills