Files
hermes-skills/gitea/SKILL.md

90 lines
3.5 KiB
Markdown

---
name: gitea
description: "Push Hermes skill updates to the local Gitea instance at 10.0.0.61:3000. Clone, copy, commit, push workflow."
version: 1.1.0
author: Hermes Agent
license: MIT
platforms: [linux]
metadata:
hermes:
tags: [gitea, git, skills, push, version-control]
---
# Gitea — Local Git Hosting for Hermes Skills
Push skill updates to the local Gitea instance at `http://10.0.0.61:3000`.
## Quick Reference
| Setting | Value |
|---------|-------|
| URL | `http://10.0.0.61:3000` |
| Repo | `SpeedyFoxAi/hermes-skills` |
| Clone URL | `http://10.0.0.61:3000/SpeedyFoxAi/hermes-skills.git` |
| Auth URL | `http://TOKEN@10.0.0.61:3000/SpeedyFoxAi/hermes-skills.git` |
| Token | `2c6cacb89b8124a98a52206fdbee51cefcd46844` |
| Local clone | `/tmp/hermes-skills` |
| Skill source | `~/.hermes/profiles/general/skills/` |
## Versioning
Every skill in the repo MUST have a `version:` field in its YAML frontmatter.
Before pushing, always check and bump the version:
| Change type | Bump | Example |
|---|---|---|
| Fixes, clarifications, pitfall additions | patch | 1.0.0 → 1.0.1 |
| New features, new sections, new references | minor | 1.0.0 → 1.1.0 |
| Rewrites, major restructuring | major | 1.0.0 → 2.0.0 |
## Workflow
### Push Updated Skills
```bash
# 1. Clone (or pull if already cloned)
cd /tmp && git clone http://10.0.0.61:3000/SpeedyFoxAi/hermes-skills.git
# Or: cd /tmp/hermes-skills && git pull origin main
# 2. Copy updated skill files from the active profile
cp ~/.hermes/profiles/general/skills/<category>/<skill-name>/SKILL.md /tmp/hermes-skills/<skill-name>/SKILL.md
# 3. Bump the version in the copied SKILL.md frontmatter
# Edit /tmp/hermes-skills/<skill-name>/SKILL.md and increment version:
# - patch: fixes, clarifications, pitfall additions
# - minor: new features, new sections, new references
# - major: rewrites, major restructuring
# 4. Commit with version in message
cd /tmp/hermes-skills
git add <skill-name>/SKILL.md
git commit -m "<skill-name>: v<new-version> — <brief description>"
# 5. Push with token
git remote set-url origin http://2c6cacb89b8124a98a52206fdbee51cefcd46844@10.0.0.61:3000/SpeedyFoxAi/hermes-skills.git
git push origin main
```
### Add a New Skill to the Repo
```bash
cd /tmp/hermes-skills
mkdir <skill-name>
cp ~/.hermes/profiles/general/skills/<category>/<skill-name>/SKILL.md <skill-name>/SKILL.md
# Verify the SKILL.md has a version: field in its frontmatter.
# New skills should start at 1.0.0.
git add <skill-name>/
git commit -m "Add <skill-name> v1.0.0"
git push origin main
```
## Pitfalls
- **Token in URL is required for push.** The repo is public-read but write-protected. Always set the remote URL with the token before pushing: `git remote set-url origin http://TOKEN@10.0.0.61:3000/SpeedyFoxAi/hermes-skills.git`
- **Git identity must be set.** The clone in `/tmp` won't have user.email/user.name configured. Set them before committing: `git config user.email "n8n@hermes-main.local" && git config user.name "Hermes Agent"`
- **Skill directory names in the repo are flat** — e.g. `ask-claude/SKILL.md`, not `autonomous-ai-agents/ask-claude/SKILL.md`. The category hierarchy exists in `~/.hermes/profiles/general/skills/` but the Gitea repo uses flat skill names.
- **Clone is disposable.** `/tmp/hermes-skills` is a working copy. Don't store anything there you need to keep. Re-clone if the directory is missing or stale.
- **No credential helper needed.** The token-in-URL pattern works for one-shot pushes. Don't store the token in git config or credential files.