Files
serverAppConfigs/AGENTS.md
T
Frank 90c4883f89 feat: add consistent deployment/update process (deploy.sh + docs + AGENTS.md)
- scripts/deploy.sh: target-aware deploy (dankclaw/dankserver). Pushes main,
  pulls on the target, installs/enables systemd unit, restarts service, and
  checks the health endpoint; --dry-run preview; pre-flight dirty-tree check
- docs/deployment.md: full deployment/update process with mermaid workflow,
  target map, manual update commands, service units, and troubleshooting
- AGENTS.md: add Deployment & Update Process section (deploy.sh usage, target
  map, mermaid workflow) and a Summary table row
- docs/index.md: crosslink deployment doc
2026-08-10 21:04:37 -07:00

2.6 KiB

AGENTS.md — vllmScripts Agent Rules

Overview

This project manages deployment scripts for two LLM inference servers. Dankclaw runs a ROCmFPX llama.cpp service. Dankserver runs a vLLM service. See docs/deployment.md for the full deployment and update process.

Git Workflow

All script edits must flow through git. Do not edit files on the remote machine directly.

Protocol

  1. Source the script from the target machine — fetch it from the server where it runs
  2. Place it in this repo — commit the fetched version
  3. Edit here — make all changes locally in the working tree
  4. Commit and push — push to origin (Gitea on dankclaw)
  5. Pull on the target — git pull on the remote machine before restarting
  6. Restart the service — use the updated script on the target

Deployment & Update Process

Use scripts/deploy.sh to deploy committed changes to a target. It pushes main, pulls on the target, restarts the service, and checks the health endpoint.

./scripts/deploy.sh dankclaw        # ROCmFPX llama.cpp (llama-server, port 8080)
./scripts/deploy.sh dankserver      # vLLM (vllm-qwen36, port 8000)
./scripts/deploy.sh dankclaw --dry-run   # preview without changes

Deployment workflow:

graph LR
    A[Edit locally] --> B[Commit]
    B --> C[Push to origin]
    C --> D[deploy.sh: pull on target]
    D --> E[restart service]
    E --> F[health check]

Target map:

Target Host Runtime Service Port
Dankclaw dank@dankclaw ROCmFPX llama.cpp llama-server 8080
Dankserver dank@dankserver vLLM (Docker) vllm-qwen36 8000

Why

Direct edits on the remote drift from version control. Future agents will not know what changed. Git is the single source of truth.

User request → Fetch script from remote → Commit here → Edit → Commit → Push → Pull on remote → Restart

Summary

Context Action
Editing a deployment script Work through git — fetch, commit, edit, push, pull, restart. Never edit on the remote directly.
Script exists only on remote Pull it into the repo first — commit the fetched version before making changes.
Unstaged local changes Commit or discard — check git status before starting work. Ask the user if unsure.
Deploying a committed change Run scripts/deploy.sh <target> — it pushes, pulls on the target, restarts the service, and checks health. See docs/deployment.md.
Tests exist Run them — verify tests pass after every change. Do not commit failing tests.