feat: initial developer workspace setup

- Add repos.yaml registry for all host-uk packages
- Add packages/ directory with .gitkeep (contents git-ignored)
- Add README with quickstart and prerequisites
- Add CLAUDE.md for AI-assisted development

Use `core setup` to clone all repos into packages/

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Snider 2026-01-28 14:50:45 +00:00
commit 71e8c1b2ef
5 changed files with 290 additions and 0 deletions

20
.gitignore vendored Normal file
View file

@ -0,0 +1,20 @@
# Ignore all cloned packages (they have their own repos)
packages/*
!packages/.gitkeep
# IDE
.idea/
.vscode/
*.swp
*.swo
# OS
.DS_Store
Thumbs.db
# Environment
.env
.env.local
# Logs
*.log

51
CLAUDE.md Normal file
View file

@ -0,0 +1,51 @@
# CLAUDE.md
This file provides guidance to Claude Code when working in the developer workspace.
## What This Is
This is the **developer workspace orchestrator** for Host UK. It contains:
- `repos.yaml` - Registry of all packages
- `packages/` - Directory where repos are cloned (git-ignored)
The actual code lives in `packages/core-*/`. Each has its own CLAUDE.md.
## Commands
```bash
# Workspace setup
core setup # Clone all repos
core doctor # Check environment
# Multi-repo operations
core health # Quick status
core work # Full workflow
core commit # Claude-assisted commits
core push # Push changes
core pull # Pull updates
# GitHub integration
core issues # List issues
core reviews # List PRs
core ci # CI status
# Analysis
core impact core-php # Dependency analysis
```
## Working on Packages
```bash
cd packages/core-php
composer test # Run tests
composer lint # Fix style
```
## This Is a Workspace, Not Code
Don't add code here. This repo only contains:
- Configuration files
- The `packages/` directory structure
- Documentation
All actual development happens in `packages/core-*/`.

80
README.md Normal file
View file

@ -0,0 +1,80 @@
# Host UK Developer Workspace
This repository bootstraps a complete Host UK development environment.
## Quick Start
```bash
# 1. Clone this repo
git clone git@github.com:host-uk/core-devops.git
cd core-devops
# 2. Check your environment
core doctor
# 3. Clone all packages
core setup
# 4. Start developing
cd packages/core-php
composer install
```
## Prerequisites
Run `core doctor` to check your environment. You'll need:
- **Git** - Version control
- **GitHub CLI** (`gh`) - For issues, PRs, CI status
- **PHP 8.3+** - Laravel packages
- **Composer** - PHP dependencies
- **Node.js 20+** - Frontend builds
- **pnpm** - Package manager (preferred over npm)
Optional but recommended:
- **Claude Code** - AI-assisted development
- **Docker** - For FrankenPHP runtime
## Commands
```bash
core setup # Clone all repos into packages/
core setup --only foundation,module # Clone specific types
core doctor # Check environment health
core doctor --fix # Attempt to fix issues
# Once set up, standard core commands work:
core health # Status summary
core work # Commit and push workflow
core issues # View GitHub issues
```
## Structure
```
core-devops/
├── packages/ # Cloned repositories (git-ignored)
│ ├── core-php/
│ ├── core-tenant/
│ └── ...
├── repos.yaml # Package registry
└── README.md
```
## Updating
```bash
core pull # Pull updates for all repos
core pull --all # Pull even if not behind
```
## Troubleshooting
**"core: command not found"**
Install the Core CLI from https://github.com/Snider/Core
**"gh: command not found"**
Install GitHub CLI: `brew install gh` then `gh auth login`
**Clone failures**
Check your SSH keys: `ssh -T git@github.com`

2
packages/.gitkeep Normal file
View file

@ -0,0 +1,2 @@
# This directory contains cloned repositories
# Run `core setup` to populate this directory

137
repos.yaml Normal file
View file

@ -0,0 +1,137 @@
# Host UK Developer Workspace
# Clone this repo and run `core setup` to bootstrap your environment
version: 1
org: host-uk
base_path: ./packages
repos:
# Foundation
core-php:
type: foundation
description: Core PHP framework - events, modules, lifecycle
docs: true
ci: github-actions
# Infrastructure modules
core-tenant:
type: module
depends_on: [core-php]
description: Multi-tenancy, workspaces, users, namespaces
docs: true
core-admin:
type: module
depends_on: [core-php]
description: Admin panel, Livewire modals, Flux UI
docs: true
core-api:
type: module
depends_on: [core-php, core-tenant]
description: REST API, scopes, rate limiting, webhooks
docs: true
core-mcp:
type: module
depends_on: [core-php]
description: Model Context Protocol server framework
docs: true
# AI/Agent modules
core-agentic:
type: module
depends_on: [core-php, core-tenant, core-mcp]
description: AI agent orchestration, sessions, plans, tasks
docs: true
# Product modules
core-bio:
type: product
depends_on: [core-php, core-tenant]
description: BioHost - link-in-bio pages
docs: true
domain: bio.host.uk.com
core-social:
type: product
depends_on: [core-php, core-tenant]
description: SocialHost - social media scheduling
docs: true
domain: social.host.uk.com
core-analytics:
type: product
depends_on: [core-php, core-tenant]
description: AnalyticsHost - privacy-first analytics
docs: true
domain: analytics.host.uk.com
core-notify:
type: product
depends_on: [core-php, core-tenant]
description: NotifyHost - push notifications
docs: true
domain: notify.host.uk.com
core-trust:
type: product
depends_on: [core-php, core-tenant]
description: TrustHost - social proof widgets
docs: true
domain: trust.host.uk.com
core-support:
type: product
depends_on: [core-php, core-tenant]
description: Support - helpdesk, tickets, mailboxes
docs: true
# Utility modules
core-commerce:
type: module
depends_on: [core-php, core-tenant]
description: Billing, subscriptions, Stripe integration
docs: true
core-content:
type: module
depends_on: [core-php, core-tenant]
description: CMS, pages, blog posts
docs: true
core-tools:
type: module
depends_on: [core-php]
description: Developer utilities (hash, encode, etc.)
docs: true
core-uptelligence:
type: module
depends_on: [core-php, core-tenant]
description: Server monitoring, uptime checks
docs: true
core-developer:
type: module
depends_on: [core-php, core-tenant, core-api]
description: Developer portal, API docs, OAuth apps
docs: true
core-template:
type: template
depends_on: []
description: Starter template for new projects
docs: false
# This repo (meta)
core-devops:
type: meta
depends_on: []
description: Developer workspace orchestrator
docs: false
clone: false # Don't clone self
defaults:
ci: github-actions
license: EUPL-1.2
branch: main