Files
holocron/plugins/gitea/skills/gitea-labels-milestones
Defame1297 1a971ee003 fix(gitea): restore routing and sourcing content the retrofit dropped
gitea-issues asserted flatly that a merge never closes an issue, contradicting
gitea-prs' references/merging.md, which documents that closing keywords in
commits landing on the default branch do close one. The qualifier that made the
claim true had been deleted; both sides now agree.

gitea-releases had lost an epistemic hedge and its verification step, leaving
conventions.md asserting unconfirmed tag auto-creation as fact. Nothing in the
research corpus sources it, so the hedge and the verify-afterward instruction are
back rather than upgraded.

Descriptions were cut 50-240 chars under the 400 budget and shed routing with
them: gitea-workflow's boundary named no target, gitea-prs lost the issue/PR
number-space directive the suite is built around at 163/400, gitea-releases lost
its boundary and every trigger. Restored, inside budget. Also restores
delete_branch's hard-refusal strength and gitea-files' Read/Write/Edit pointer.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EJJrm5YmacbwMdzZpXcoti
2026-08-31 19:46:32 +00:00
..

gitea-labels-milestones

Read and write Gitea labels and milestones, and resolve label/milestone identity for the skills that apply them to issues and PRs.

What it does

This skill handles label and milestone CRUD (label_read/label_write, milestone_read/milestone_write) — listing repo or org labels, creating/editing/deleting a label, resolving a label name to the numeric ID required to apply it to an issue or PR, and listing/creating/updating/closing/deleting a milestone. It also owns label inference: mapping conversation context (bug report, feature request, urgency language) to this repo's Kind/*/Priority/*/Status/* taxonomy.

Composition

This is a cross-cutting shared skill. gitea-issues and gitea-prs both compose it whenever they need to apply a label or assign a milestone, rather than duplicating label/milestone logic: they call in for name/title → ID resolution, then their own issue_write/pull_request_write calls apply the resolved IDs. The split is deliberate — identity resolution lives here once, and the write that attaches an ID to a specific issue or PR lives with the skill that owns that object.

That relationship is documented here rather than in the skill description, which is preloaded into every session and carries routing information only: an agent reaches this skill because the user asked about labels or milestones, not because two other skills call it.

Usage

/gitea-labels-milestones

Describe the label or milestone task: list labels, resolve a name to an ID, create/edit/delete a label, or list/create/update/close/delete a milestone. For applying already-resolved labels or a milestone to a specific issue or PR, use gitea-issues or gitea-prs instead.

Files

File Purpose
SKILL.md Skill instructions for agents — dispatch table and Gotchas
references/labels.md Execution detail for label_read/label_write
references/milestones.md Execution detail for milestone_read/milestone_write
references/label-inference.md Context-pattern → Kind/*/Priority/*/Status/* label inference guide
references/sources.md Research sources backing the label/milestone guidance