Skip to content

chore: migrate docs site into monorepo (packages/docs) #68

Description

@badchars

Problem

The docs site lives in a separate repository (CyberStrikeus/docs, Astro-based). This causes documentation to fall behind because:

  • New agents, skills, providers, and features are added to the main repo but docs updates require a separate repo, separate PR, separate review
  • Small team — nobody remembers to update the other repo
  • No connection between feature PRs and their documentation
  • CI can't enforce "docs updated?" checks across repos

Proposal

Move the docs site into the monorepo as packages/docs/. Same Astro project, same domain, same output — just a different source location.

Benefits

  • Single PR — feature code + docs update in one commit
  • Workspace integrationbun turbo build includes docs
  • Review visibility — missing docs changes are visible in PR review
  • Shared context — AI assistants working on the codebase can update docs in the same session without repo switching
  • Consistent tooling — same linter, prettier, CI pipeline

Migration Steps

1. Move content into monorepo

# Clone docs repo
git clone https://github.com/CyberStrikeus/docs.git /tmp/cs-docs

# Copy into monorepo (without .git)
cp -r /tmp/cs-docs packages/docs
rm -rf packages/docs/.git

# Ensure package.json has correct name
# packages/docs/package.json → name: "@cyberstrike-io/docs"

2. Workspace & Turborepo config

// packages/docs/package.json
{
  "name": "@cyberstrike-io/docs",
  "private": true,
  "scripts": {
    "dev": "astro dev",
    "build": "astro build",
    "preview": "astro preview"
  }
}
// turbo.json — add docs build task
{
  "docs#build": {
    "dependsOn": ["^build"],
    "outputs": ["dist/**"]
  }
}

No changes needed in root package.json"workspaces": ["packages/*"] already includes packages/docs.

3. Coolify deployment update

Coolify currently builds from CyberStrikeus/docs. Update to:

Setting Old New
Source repo CyberStrikeus/docs CyberStrikeus/CyberStrike
Base directory / packages/docs
Build command bun run build (or similar) cd packages/docs && bun install && bun run build
Publish directory dist packages/docs/dist

Note: Exact Coolify settings depend on current config (git deploy, Dockerfile, or Nixpacks). Verify before applying.

4. Migrate existing docs repo content

Move any useful content from the monorepo's docs/ directory (currently only docs/skill-signing.md) into the Astro site's content structure.

5. Archive old repo

# Add redirect notice to README
gh repo edit CyberStrikeus/docs --description "MOVED → CyberStrikeus/CyberStrike/packages/docs"
gh repo archive CyberStrikeus/docs

6. DNS / Domain

No changes — same domain, same DNS records. Only the build source changes in Coolify.

Pre-migration checklist

Before starting, confirm:

  • Current Coolify build method (git repo / Dockerfile / Nixpacks)
  • Docs site domain (docs.cyberstrike.io?)
  • Any custom Astro plugins or API integrations in docs repo
  • Whether docs repo has any CI/CD workflows to migrate

Post-migration workflow

Every feature/fix PR that needs documentation:

  1. Code changes in packages/cyberstrike/
  2. Docs changes in packages/docs/
  3. Single PR, single review, single merge

Non-goals

  • Changing the docs framework (Astro stays)
  • Changing the hosting provider (Coolify stays)
  • Restructuring the docs content (separate task)

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions