--- name: gitea description: View, create, and manage Gitea issues and pull requests using tea CLI. Use when working with issues, PRs, viewing issue details, creating pull requests, adding comments, merging PRs, or when the user mentions tea, gitea, issue numbers, or PR numbers. --- # Gitea CLI (tea) Command-line interface for interacting with Gitea repositories. ## Installation ```bash brew install tea ``` ## Authentication The `tea` CLI authenticates via `tea logins add`. Credentials are stored locally by tea. ```bash tea logins add # Interactive login tea logins add --url --token --name # Non-interactive tea logins list # Show configured logins tea logins default # Set default login ``` ## Configuration Config is stored at `~/Library/Application Support/tea/config.yml` (macOS). To avoid needing `--login` on every command, set defaults: ```yaml preferences: editor: false flag_defaults: remote: origin login: git.flowmade.one ``` ## Repository Detection `tea` automatically detects the repository from git remotes when run inside a git repository. Use `--remote ` to specify which remote to use. ## Common Commands ### Issues ```bash # List issues tea issues # Open issues (default) tea issues --state all # All issues tea issues --state closed # Closed issues # View issue details tea issues # Full issue details tea issues --comments # Include comments # Create issue tea issues create --title "" --description "<body>" tea issues create -t "<title>" -d "<body>" # Edit issue tea issues edit <number> --title "<new-title>" tea issues edit <number> --description "<new-body>" # Close/reopen tea issues close <number> tea issues reopen <number> # Labels tea issues edit <number> --labels "bug,help wanted" ``` ### Pull Requests ```bash # List PRs tea pulls # Open PRs (default) tea pulls --state all # All PRs tea pulls --state closed # Closed/merged PRs # View PR tea pulls <number> # PR details tea pulls <number> --comments # Include comments # View PR diff (tea doesn't have a diff command, use git) tea pulls checkout <number> # First checkout the PR branch git diff main...HEAD # Diff against main branch # Create PR tea pulls create --title "<title>" --description "<body>" tea pulls create -t "<title>" -d "<body>" tea pulls create -t "<title>" -d "Closes #<issue>" tea pulls create --head <branch> --base main -t "<title>" # Checkout PR locally tea pulls checkout <number> # Review/Approve tea pulls approve <number> # Approve PR (LGTM) tea pulls reject <number> # Request changes tea pulls review <number> # Interactive review # Merge tea pulls merge <number> # Default merge tea pulls merge <number> --style squash # Squash commits tea pulls merge <number> --style rebase # Rebase commits tea pulls merge <number> --style rebase-merge # Rebase then merge # Clean up after merge tea pulls clean <number> # Delete local & remote branch ``` ### Repository ```bash tea repos # List repos tea repos <owner>/<repo> # Repository info tea clone <owner>/<repo> # Clone repository ``` ### Comments ```bash # Add comment to issue or PR tea comment <number> "<comment body>" tea comment 3 "LGTM, ready to merge" # Multiline comments (use quoted strings with literal newlines) tea comment 3 "## Review Summary - Code looks good - Tests pass" ``` > **Warning**: Do not use heredoc syntax `$(cat <<'EOF'...EOF)` with `tea comment` - it causes the command to be backgrounded and fail silently. ### Notifications ```bash tea notifications # List notifications tea notifications --mine # Only participating ``` ## Output Formatting Most commands support `--output` or `-o` flag: - `-o simple` - Plain text - `-o table` - Tabular format (default) - `-o json` - Machine-readable JSON - `-o yaml` - YAML format - `-o csv` - CSV format ## Specifying Remote/Login ```bash tea issues --remote gitea # Use specific git remote tea issues --login myserver # Use specific login tea issues -r owner/repo # Specify repo directly ``` ## Tips - **View single issue**: Use `tea issues <number>` (NOT `tea issues view <number>` - there is no `view` subcommand) - **PR description flag**: Use `--description` or `-d` (NOT `--body` like gh CLI) - Always verify you're in the correct repository before running commands - Use `tea issues` to find issue numbers before viewing/editing - Reference issues in PR bodies with `Closes #N` for auto-linking - Use `--remote gitea` when you have multiple remotes (e.g., origin + gitea) - The `tea pulls checkout` command is handy for reviewing PRs locally ## Actions / CI ```bash # List workflow runs tea actions runs # List all workflow runs tea actions runs -o json # JSON output for parsing # List jobs for a run tea actions jobs <run-id> # Show jobs for a specific run tea actions jobs <run-id> -o json # JSON output # Get job logs tea actions logs <job-id> # Display logs for a job # Full workflow: find failed job logs tea actions runs # Find the run ID tea actions jobs <run-id> # Find the job ID tea actions logs <job-id> # View the logs ```