--- name: gitea-api description: Interact with Gitea via REST API (no tea CLI). Use for repo creation, issues, PRs, releases, branches, user info, and cloning on any Gitea instance. --- # Gitea API Skill REST-based Gitea control without `tea`. ## Setup Create config file at: `~/.clawdbot/credentials/gitea/config.json` ```json { "url": "https://git.fiorinis.com", "token": "your-personal-access-token" } ``` You can override with env vars: ```bash export GITEA_URL="https://git.fiorinis.com" export GITEA_TOKEN="your-token" ``` Token scope should include at least `repo`. ## Use Run via wrapper (works in bash chat commands): ```bash bash scripts/gitea.sh [args] ``` ## Commands ```bash # list repos bash scripts/gitea.sh repos # create repo bash scripts/gitea.sh create --name my-repo --description "My repo" bash scripts/gitea.sh create --name my-repo --private bash scripts/gitea.sh create --org Home --name my-repo # issues bash scripts/gitea.sh issues --owner Home --repo my-repo bash scripts/gitea.sh issue --owner Home --repo my-repo --title "Bug" --body "Details" # pull requests bash scripts/gitea.sh pulls --owner Home --repo my-repo bash scripts/gitea.sh pr --owner Home --repo my-repo --head feat-1 --base main --title "Add feat" # releases bash scripts/gitea.sh release --owner Home --repo my-repo --tag v1.0.0 --name "Release 1.0.0" # branches bash scripts/gitea.sh branches --owner Home --repo my-repo # user info bash scripts/gitea.sh user # current user bash scripts/gitea.sh user luke # specific user # clone bash scripts/gitea.sh clone Home/my-repo bash scripts/gitea.sh clone Home/my-repo ./my-repo ``` ## Notes - Works with Gitea/Forgejo-compatible APIs. - Config lookup order: 1. `/home/node/.openclaw/workspace/.clawdbot/credentials/gitea/config.json` 2. `~/.clawdbot/credentials/gitea/config.json` 3. env var overrides (`GITEA_URL`, `GITEA_TOKEN`) - Do not commit tokens.