Files
homelab-agents/QUICK-START.md
root 20bfcfe66c Update: Use 'source' instead of 'bash' for bootstrap
- Changed: bash <(...) → source <(...)
- Benefits: PATH updates immediately, no shell restart needed
- init-project available right after bootstrap completes
- Cleaner workflow for VPS setup
2025-11-23 22:06:41 +00:00

2.8 KiB

Quick Start: Setting Up Agents on a New VPS

Initial Setup (One-Time)

Run this once on your new VPS to bootstrap agents and helper tools:

source <(curl -s http://100.120.125.113:3000/pdm/homelab-agents/raw/branch/main/scripts/bootstrap-agents.sh)

This:

  • Clones homelab-agents to ~/.homelab-agents
  • Installs helper scripts to ~/.homelab-scripts
  • Sets up git configuration
  • Makes agents and commands available immediately (no shell restart needed!)

Creating a New Project

For each new project, use the init-project command:

# Create and initialize a new project (from your projects directory)
cd ~/projects
init-project my-new-app

This:

  • Creates my-new-app directory
  • Initializes git repository
  • Automatically configures Gitea remote
  • Copies agents to .claude/agents/
  • Sets git user config
  • Ready to start work

Working on a Project

cd ~/projects/my-new-app

# Do your work...
# Add files, make changes, etc.

# When done, close the session with the summary agent
# The agent will:
# - Commit all changes with descriptive message
# - Create session summary
# - Automatically push to Gitea

Agent Auto-Updates

Every time you run bootstrap:

source <(curl -s http://100.120.125.113:3000/pdm/homelab-agents/raw/branch/main/scripts/bootstrap-agents.sh)

It will:

  • Pull latest agent versions
  • Install latest helper scripts
  • Keep your tools synchronized

Available Commands

After bootstrap:

init-project <name>     # Initialize a new project with git remote

Available Agents

Current agents in the repository:

  • sysadmin-session-closer - Closes sessions and creates session summaries
  • Located at: ~/.homelab-agents/agents/ or .claude/agents/ in your project

Project Structure

Your typical VPS layout:

~/projects/
├── project-1/
│   ├── .git (remote: http://100.120.125.113:3000/pdm/project-1.git)
│   └── .claude/agents/ (agents for Claude Code)
├── project-2/
│   ├── .git (remote: http://100.120.125.113:3000/pdm/project-2.git)
│   └── .claude/agents/
└── project-3/
    ├── .git (remote: http://100.120.125.113:3000/pdm/project-3.git)
    └── .claude/agents/

Each project is independent with its own Gitea repository and local agents.

Workflow Summary

  1. Bootstrap (once): source <(curl -s ...bootstrap-agents.sh)
  2. Init Project: init-project my-app (agents copied automatically)
  3. Work: Create files, make changes
  4. Close Session: Use summary agent → auto-commits & pushes
  5. Resume: Clone from Gitea next time

For detailed information, see:

  • README.md - Overview and structure
  • scripts/README.md - Script documentation
  • agents/README.md - Available agents