Files
gpustack-ui/AGENTS.md
T
lofyerandClaude Opus 4.8 c6643f2bc9 docs(agents): document downstream fork sync workflow
Describe the upstream->private mirror chain, the v<version>-lofyer branch
naming for appearance customizations, and how to run scripts/sync-github.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 20:56:50 +08:00

1.7 KiB

Agent Instructions

This project keeps a single source of truth for agent/contributor conventions in CLAUDE.md. Read CLAUDE.md and follow it.

@CLAUDE.md

Downstream fork workflow

This repo is a downstream fork that customizes the product appearance on top of upstream gpustack/gpustack-ui. The mirror chain is:

upstream  https://github.com/gpustack/gpustack-ui.git
   |  (fetch)
origin    ssh://git@192.168.0.23:11022/root/gpustack-ui.git   (private registry, also https://git.digiman.live)

Goal

Track upstream releases. When upstream changes, we pull it in, then apply our own appearance/customization changes on a dedicated branch so we keep our look-and-feel on top of the latest upstream product.

Branch naming

Customization work lives on v<upstream-version>-lofyer branches (e.g. v2.2.0-lofyer). Each time upstream ships a new version we want to follow, create a new v<version>-lofyer branch from the corresponding upstream tag/branch and re-apply (or rebase) our customizations onto it.

Syncing from upstream

scripts/sync-github mirrors upstream into the private origin (full mirror, force push of all branches + tags). It auto-configures the upstream remote on first run.

# preview only, no push
DRY_RUN=1 ./scripts/sync-github

# real sync (force-pushes every upstream branch + tag to origin)
./scripts/sync-github

# also delete origin branches that no longer exist upstream (true mirror, destructive)
PRUNE_BRANCHES=1 ./scripts/sync-github

Env knobs: UPSTREAM_URL, ORIGIN_REMOTE, UPSTREAM_REMOTE, PRUNE_BRANCHES, DRY_RUN. After syncing, branch a fresh v<version>-lofyer off the updated upstream ref and apply the appearance changes there.