--- name: gitea description: > Use this skill when the user asks to work with their Gitea server: "покажи мои репозитории", "создай репозиторий", "открой issue", "закрой issue", "создай pull request", "смерджи PR", "добавь вебхук", "покажи релизы", "создай ветку", "покажи коммиты", "сравни ветки", "список организаций", "переключись на work gitea", "gitea", "list repos", "create issue", "open PR", "merge pull request", "create release", "add webhook", "list branches", "gitea notifications", "check gitea connection". metadata: version: "0.2.0" --- # Gitea Platform Assistant Full Gitea REST API integration. All tools: `mcp__gitea__`. ## First Use Always start by checking the connection and listing available instances: ``` mcp__gitea__list_instances() → shows configured instances + default mcp__gitea__get_current_user() → verifies auth works ``` If these fail, tell the user to fill in `config.json` in the plugin folder. ## Instance Selection Every tool has an optional `instance` parameter (defaults to `""` = use default from config). When user says "на work" / "на home" / "on the work server" → pass `instance="work"` (or relevant name). When no instance is specified → pass `instance=""` (uses config default). ## Tool Categories ### Meta & Health - `list_instances()` — show all configured instances - `get_server_info(instance)` — Gitea version - `get_current_user(instance)` — authenticated user ### Repositories - `list_my_repos(limit, page, instance)` - `search_repos(query, instance)` - `get_repo(owner, repo, instance)` - `create_repo(name, description, private, auto_init, default_branch, instance)` - `create_org_repo(org, name, ..., instance)` - `update_repo(owner, repo, ..., instance)` - `delete_repo(owner, repo, instance)` ⚠️ permanent - `fork_repo(owner, repo, organization, new_repo_name, instance)` - `set_repo_topics(owner, repo, topics, instance)` ### Branches & Tags - `list_branches(owner, repo, instance)` - `get_branch(owner, repo, branch, instance)` - `create_branch(owner, repo, new_branch_name, old_branch_name, instance)` - `delete_branch(owner, repo, branch, instance)` ⚠️ - `list_tags(owner, repo, instance)` ### Files - `list_directory(owner, repo, path, ref, instance)` — browse repo tree - `get_file(owner, repo, filepath, ref, instance)` — returns content + sha - `create_file(owner, repo, filepath, content, message, branch, instance)` — plain text input, auto-encoded - `update_file(owner, repo, filepath, content, message, sha, branch, instance)` — requires sha from get_file - `delete_file(owner, repo, filepath, message, sha, branch, instance)` — requires sha ### Issues - `list_issues(owner, repo, state, type, labels, assignee, limit, instance)` - `get_issue(owner, repo, index, instance)` - `create_issue(owner, repo, title, body, assignees, labels, instance)` - `update_issue(owner, repo, index, title, body, state, instance)` - `close_issue / reopen_issue(owner, repo, index, instance)` - `list_issue_comments / add_issue_comment / edit_issue_comment / delete_issue_comment` ### Labels & Milestones - `list_labels / create_label(name, color #rrggbb) / add_issue_labels` - `list_milestones / create_milestone(title, due_on)` ### Pull Requests - `list_pull_requests(owner, repo, state, instance)` - `get_pull_request(owner, repo, index, instance)` - `create_pull_request(owner, repo, title, head, base, body, instance)` - `merge_pull_request(owner, repo, index, merge_style, instance)` — merge_style: merge|rebase|squash - `get_pr_diff(owner, repo, index, instance)` — returns diff text - `list_pr_reviews / create_pr_review(state: APPROVED|COMMENT|REQUEST_CHANGES)` ### Releases - `list_releases / get_latest_release / create_release / delete_release` ### Webhooks - `list_repo_webhooks / create_repo_webhook(url, events) / delete_repo_webhook` ### Users & Organizations - `get_current_user / get_user(username) / search_users(query)` - `list_my_orgs / get_org / list_org_repos / list_org_members / list_org_teams` ### Commits & Activity - `list_commits(owner, repo, sha, path, limit)` - `compare_branches(owner, repo, base, head)` — diff + commit list - `list_repo_contributors` ### Notifications - `list_notifications(all) / mark_all_notifications_read`