Homelab Automation a0acb5b7fe Fix SSH agent persistence with systemd user service (ROBUST)
PROBLEM: Step 7 ~/.bashrc method still not persistent - agent dies on logout

ROOT CAUSE: ~/.bashrc approach relies on shell process lifecycle
- Agent dies when last shell exits
- Socket files get cleaned up
- User must manually restart on next login

NEW SOLUTION: Systemd user service keeps agent truly persistent
- Agent runs as systemd service (survives logout/reboot)
- Single socket location managed by systemd
- Auto-starts on user login
- Works across all shells and sessions
- No manual intervention needed

IMPROVEMENTS:
- Added systemd-based setup as recommended method
- Kept ~/.bashrc method as fallback (for systems without systemd)
- Added comprehensive diagnostic script
- Added troubleshooting for common issues
- Quick reference commands for management

The systemd method is production-grade and used in enterprise environments.
SSH agent now persists forever (until explicitly stopped).
2025-12-13 22:24:14 +00:00

Homelab Agents

Central storage for AI agent prompts shared across all VPS instances.

Quick Start

For new VPS instances, run this once:

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

This sets up everything you need. See QUICK-START.md for detailed instructions.

Structure

  • agents/ - Agent prompt definitions
  • scripts/ - Helper scripts (bootstrap-agents.sh, init-project, etc.)
  • templates/ - Template files for agents and session summaries

Available Agents

  • finish-up - Automatically closes and documents dev sessions
    • Use at end of sessions to commit and push work
    • Generates comprehensive session summaries with VPS hostname
    • Handles git workflows automatically via SSH

Usage

First Time on a VPS

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

Create a New Project

Step 1: Create repository on Gitea Go to http://100.120.125.113:3000/repo/create

  • Repository name: my-project
  • Click Create

Step 2: Initialize project locally

init-project my-project
cd my-project
# Start working...

Each project automatically gets:

  • Git repo with SSH remote configured (git@100.120.125.113:pdm/my-project.git)
  • Agents available at .claude/agents/
  • Git user info set up

Close a Session

Use the summary agent from your project:

.claude/agents/finish-up.md

The agent will:

  • Create comprehensive session summary
  • Commit all changes
  • Push to Gitea via SSH automatically

Documentation

Repository Information

Workflow Summary

  1. Bootstrap VPS: source <(curl -s ...bootstrap-agents.sh)
  2. Create repo on Gitea: http://100.120.125.113:3000/repo/create
  3. Init project: init-project my-project
  4. Work on project
  5. Close session with agent
  6. Agent auto-commits and pushes via SSH
Description
Central storage for AI agent prompts
Readme 194 KiB
Languages
Shell 100%