From 0e57550b3ca857d8e2232a154395a492fda74a72 Mon Sep 17 00:00:00 2001 From: Bryce Date: Sat, 25 Apr 2026 19:41:40 -0700 Subject: [PATCH] stuff --- .opencode/skills/gitea-tea/SKILL.md | 127 ++++++++++++++++++++++++++++ AGENTS.md | 55 ++---------- 2 files changed, 132 insertions(+), 50 deletions(-) create mode 100644 .opencode/skills/gitea-tea/SKILL.md diff --git a/.opencode/skills/gitea-tea/SKILL.md b/.opencode/skills/gitea-tea/SKILL.md new file mode 100644 index 00000000..289a7131 --- /dev/null +++ b/.opencode/skills/gitea-tea/SKILL.md @@ -0,0 +1,127 @@ +--- +name: gitea-tea +description: Use tea CLI to create, manage, and checkout Gitea pull requests. Use this when opening a PR, managing PRs, or checking out PRs on the gitea remote (gitea.story-basking.ts.net). +--- + +# Gitea Tea CLI Skill + +This skill covers using `tea` (Gitea's official CLI) for pull request workflows in this project. + +## When to Use This Skill + +Use this skill when you need to: +- Create a PR from a working branch to master on the gitea remote +- Open, list, or view PRs +- Checkout a PR locally for review or iteration +- Manage PR state (close, reopen, merge) + +## Project Setup + +The gitea remote is `gitea.story-basking.ts.net` with repo slug `notid/integreat`. The default push remote is **gitea**, NOT origin and NOT deploy. + +In this project's environment: +- Gitea login is pre-configured for `gitea.story-basking.ts.net` +- Repo slug: `notid/integreat` +- Target branch for PRs: `master` +- The git remote named `gitea` points to this instance + +## Creating a PR + +Use `tea pulls create` to open a PR from the current branch to master. Always specify `-r notid/integreat -b master`: + +```bash +tea pulls create -r notid/integreat -b master --title "Title" --description "Body" +``` + +Common flags: +- `-t, --title` - PR title +- `-d, --description` - PR body/description (use heredoc or file for long descriptions) +- `-a, --assignees` - Comma-separated usernames to assign +- `-L, --labels` - Comma-separated labels to apply +- `-m, --milestone` - Milestone to assign + +**Writing a multiline description:** + +```bash +tea pulls create -r notid/integreat -b master \ + -t "feat: add feature" \ + -d "$(cat <<'EOF' +## Summary +- Bullet point one +- Bullet point two +EOF +)" +``` + +Or write the body to a temp file first and reference it. + +## Listing PRs + +```bash +tea pulls list -r notid/integreat # List open PRs +tea pulls list -r notid/integreat --state all # All PRs +tea pulls list -r notid/integreat --limit 10 -o simple # Limit output, simple format +``` + +## Opening a PR in Browser + +```bash +tea open pr -r notid/integreat +tea open pr create -r notid/integreat # Open web UI to create a PR +``` + +## Checking Out a PR Locally + +```bash +tea pulls checkout -r notid/integreat +``` + +This fetches and checks out the PR branch locally. + +## Managing PR State + +**Close a PR:** +```bash +tea pulls close -r notid/integreat --confirm +``` + +**Reopen a closed PR:** +```bash +tea pulls reopen -r notid/integreat --confirm +``` + +**Merge a PR:** +```bash +tea pulls merge -r notid/integreat --confirm +``` + +**Edit a PR (title, description, etc.):** +```bash +tea pulls edit -r notid/integreat --title "New title" --description "New body" +``` + +## Full PR Creation Workflow + +1. Ensure the branch is pushed to gitea: + ```bash + git push gitea + ``` + +2. Create the PR with tea: + ```bash + tea pulls create -r notid/integreat -b master \ + --title "feat: description of change" \ + --description "Detailed PR body here" + ``` + +3. Open the PR in browser to verify: + ```bash + tea open pr -r notid/integreat + ``` + +## Tips + +- Always use `-r notid/integreat` to specify the repo explicitly +- Use `-b master` to set the target branch (default may differ) +- The `--confirm` flag is required for destructive actions (close, merge) +- Use `-o simple`, `-o json`, `-o table`, etc. to control output format diff --git a/AGENTS.md b/AGENTS.md index 3dec65dd..ff89cd1e 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -1,54 +1,9 @@ -# Agent Instructions +## Pull Requests on Gitea -This project uses **bd** (beads) for issue tracking. Run `bd onboard` to get started. +This project uses **gitea story-basking.ts net** as the primary remote for PRs. Use `tea` (the Gitea CLI) to create and manage pull requests. The gitea remote is the one you push to, NOT origin and NOT deploy. -## Issue Tracking - -This project uses **bd (beads)** for issue tracking. -Run `bd prime` for workflow context, or install hooks (`bd hooks install`) for auto-injection. - -**Quick reference:** -- `bd ready` - Find unblocked work -- `bd create "Title" --type task --priority 2` - Create issue -- `bd close ` - Complete work -- `bd sync` - Sync with git (run at session end) - -For full workflow details: `bd prime` - -## Quick Reference - -```bash -bd ready # Find available work -bd show # View issue details -bd update --status in_progress # Claim work -bd close # Complete work -bd sync # Sync with git -``` - -## Landing the Plane (Session Completion) - -**When ending a work session**, you MUST complete ALL steps below. Work is NOT complete until `git push` succeeds. - -**MANDATORY WORKFLOW:** - -1. **File issues for remaining work** - Create issues for anything that needs follow-up -2. **Run quality gates** (if code changed) - Tests, linters, builds -3. **Update issue status** - Close finished work, update in-progress items -4. **PUSH TO REMOTE** - This is MANDATORY: - ```bash - git pull --rebase - bd sync - git push - git status # MUST show "up to date with origin" - ``` -5. **Clean up** - Clear stashes, prune remote branches -6. **Verify** - All changes committed AND pushed -7. **Hand off** - Provide context for next session - -**CRITICAL RULES:** -- Work is NOT complete until `git push` succeeds -- NEVER stop before pushing - that leaves work stranded locally -- NEVER say "ready to push when you are" - YOU must push -- If push fails, resolve and retry until it succeeds +**When opening a PR**, load and follow the **gitea-tea** skill. In short: +- Target branch is always `master` +- Use `tea pulls create -r notid/integreat -b master --title "..." --description "..."` Use 'bd' for task tracking