Awesome-omni-skill gitea
Gitea operations via gitea-mcp and tea CLI. Use when user mentions: gitea, tea, or when git remote shows a Gitea instance.
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tools/gitea" ~/.claude/skills/diegosouzapw-awesome-omni-skill-gitea && rm -rf "$T"
manifest:
skills/tools/gitea/SKILL.mdsource content
Gitea Skill
This plugin provides two ways to interact with Gitea:
- gitea-mcp (preferred) - MCP server providing 80+ tools for direct API integration
- tea CLI (fallback) - Command-line interface for Gitea operations
When to Use This Skill
Activate this skill when:
- User mentions "gitea", "tea", or Gitea-related operations
- Working with repositories hosted on Gitea instances (not GitHub/GitLab)
- Managing issues, pull requests, releases, or repos
- Automating Gitea workflows
Detection: Run
git remote -v to check if the remote URL points to a Gitea instance (doesn't contain github.com or gitlab).
Tool Selection Priority
1. Try gitea-mcp First (Preferred)
The MCP server provides 80+ tools for:
- Repository management (create, fork, list, search)
- Issues and PRs (CRUD, comments, reviews)
- Branches, tags, and releases
- File operations (read/write)
- Actions (workflows, secrets, runs)
- Organizations and teams
- Wiki pages
Requirements:
environment variable setGITEA_ACCESS_TOKEN
binary installed and in PATHgitea-mcp
2. Fall Back to tea CLI When:
is not setGITEA_ACCESS_TOKEN- gitea-mcp tools return authentication errors
- MCP server is not available
- User explicitly requests tea CLI
3. If Both Fail, Offer to Install
If both gitea-mcp and tea CLI are unavailable or fail:
- Inform the user about the issue
- Ask if they want help installing the requirements
- Refer to the plugin README for installation instructions
Authentication
For gitea-mcp (environment variable)
export GITEA_ACCESS_TOKEN=your_token export GITEA_HOST=https://your-gitea-instance.com # optional, default: https://gitea.com
For tea CLI (interactive login)
# Check existing logins tea login list # Add new login (interactive) tea login add
Generate tokens: Gitea web UI → Settings → Applications → Generate New Token
Behavioral Guidelines
- Try MCP First: Attempt gitea-mcp tools before falling back to tea CLI
- Before PR Creation: Check for uncommitted changes with
git status - Before CI Operations: Verify pipeline status before triggering new runs
- Machine-Readable Output: When using tea CLI, use
or-o json
flags for automation-o yaml - Custom SSH Remotes: Always use
flag when remote URL is non-standard (see below)--repo owner/repo
Handling Custom SSH Remotes
Problem: tea CLI auto-detects the repository from git remote URLs, but fails with custom SSH aliases like:
ngit@gitea:owner/repo.gitgit@custom-host:owner/repo.git- Any non-standard SSH URL format
Error:
Error: path segment [0] is empty
Solution: Always specify the repo explicitly with
--repo owner/repo:
# Check remote URL format first git remote -v # If remote uses custom SSH alias (e.g., ngit@gitea:...), always use --repo tea pr create --repo owner/repo --title "Title" --description "Description" tea issue list --repo owner/repo tea pr list --repo owner/repo # Standard URLs (git@gitea.com:...) work without --repo tea pr create --title "Title" --description "Description"
Detection: Run
git remote -v at the start. If the URL doesn't match standard patterns (git@gitea.com: or https://gitea.com/), extract owner/repo from the path and use --repo for all tea commands.
tea CLI Reference (Fallback)
Use these commands when gitea-mcp is unavailable or returns errors.
Pull Requests
| Operation | Command |
|---|---|
| Create PR | |
| List PRs | |
| List open PRs | |
| View PR | |
| Checkout PR | |
| Merge PR | |
| Close PR | |
| Reopen PR | |
| Review PR | |
| Clean merged branches | |
Issues
| Operation | Command |
|---|---|
| Create issue | |
| List issues | |
| List open issues | |
| List closed issues | |
| View issue | |
| Close issue | |
| Reopen issue | |
| Add comment | |
| Edit issue | |
Repositories
| Operation | Command |
|---|---|
| Clone repo | |
| Fork repo | |
| Create repo | |
| Create from template | |
| List repos | |
| Search repos | |
Releases
| Operation | Command |
|---|---|
| List releases | |
| Create release | |
| Delete release | |
Labels
| Operation | Command |
|---|---|
| List labels | |
| Create label | |
| Delete label | |
| Export labels | |
Milestones
| Operation | Command |
|---|---|
| List milestones | |
| Create milestone | |
| Close milestone | |
Organizations
| Operation | Command |
|---|---|
| List orgs | |
| View org | |
Notifications
| Operation | Command |
|---|---|
| List notifications | |
| Mark as read | |
Time Tracking
| Operation | Command |
|---|---|
| List time entries | |
| Add time | |
| Delete time | |
Authentication
| Operation | Command |
|---|---|
| List logins | |
| Add login | |
| Set default | |
| Delete login | |
Output Formats
Tea supports multiple output formats for automation:
# JSON output tea issue list -o json tea pr list -o json # YAML output tea issue list -o yaml # Simple/minimal output tea issue list -o simple
Common Workflows
Create a Pull Request
# Check for uncommitted changes first git status # Check remote URL format git remote -v # If using custom SSH remote (e.g., ngit@gitea:...), use --repo explicitly tea pr create --repo owner/repo --title "Add new feature" --description "This PR adds..." # For standard remotes, --repo is optional tea pr create --title "Add new feature" --description "This PR adds..." # Or interactively tea pr create
Work on an Issue
# View the issue tea issue view 42 # Checkout related PR if exists tea pr checkout 42 # Add a comment tea issue comment 42 "Working on this now" # Close when done tea issue close 42
Quick Repository Setup
# Clone a repository tea repo clone owner/repo # Or fork first then clone tea repo fork owner/repo tea repo clone your-username/repo
CI/Actions Secrets
# List secrets tea repo secrets list # Add a secret tea repo secrets add <name> <value> # Delete a secret tea repo secrets delete <name>
Global Flags
| Flag | Description |
|---|---|
| Use a specific login |
| Override repository |
| Output format (simple, table, csv, tsv, yaml, json) |
| Use specific git remote |
Installation
# macOS brew install tea # Arch Linux pacman -S tea # Alpine apk add tea # From binary # Download from https://dl.gitea.com/tea/ # Docker docker pull gitea/tea
Resources
- Official Repository: https://gitea.com/gitea/tea
- Documentation: https://docs.gitea.com/usage/command-line
- Downloads: https://dl.gitea.com/tea/