Orchestrate agile development workflows for Gitea repositories using the tea CLI...
A skill that guides agents through structured agile development workflows for Gitea repositories by intelligently invoking commands in sequence. Uses checkpoint-based flow control to auto-progress between steps while pausing at key decision points.
Use this skill when:
Do NOT use this skill when:
/status directly)/review-code directly)Before using this skill:
tea login)context-network/backlog/context-network/backlog/by-status/*.mdWORKFLOW TYPES
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
TASK CYCLE (Primary) DAILY SPRINT
āāāāāāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāāāā
sync Morning: Start:
ā sync --last 1d sync --all
next ā [CHECKPOINT] status --brief groom --all
ā groom --ready plan sprint-goals
implement status
ā Evening:
[CHECKPOINT] checklist End:
ā discovery sync --sprint
review-code sync --last 1d retrospective
review-tests audit --sprint
ā maintenance --deep
[CHECKPOINT]
ā
apply-recommendations (if issues)
ā
pr-prep ā [CHECKPOINT]
ā
pr-complete
ā
update-backlog & status
ā
END
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
The skill determines current workflow state automatically. No manual tracking needed.
| Signal | How to Check | Indicates |
|---|---|---|
| Worktree exists | git worktree list |
Task in progress |
| Task branch active | git branch --show-current matches task/* |
Active implementation |
| Uncommitted changes | git status --porcelain |
Active coding |
| PR exists | tea pulls list --state open |
In review |
| PR merged | tea pulls + check state |
Ready for cleanup |
STATE DETECTION LOGIC
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Check ā State ā Next Step
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
No worktree, no in-progress ā IDLE ā sync, next
Worktree exists, uncommitted ā IMPLEMENTING ā continue implement
Worktree exists, all committed ā READY_REVIEW ā review-code
PR open, CI pending ā AWAITING_CI ā wait or address
PR open, CI pass ā READY_MERGE ā pr-complete
PR merged, worktree exists ā CLEANUP ā pr-complete
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
For detailed detection algorithms, see references/state-detection.md.
# Auto-detect state and continue from where you are
/gitea-workflow
# Start specific workflow phase
/gitea-workflow --phase task-cycle
/gitea-workflow --phase daily-morning
/gitea-workflow --phase daily-evening
/gitea-workflow --phase sprint-start
/gitea-workflow --phase sprint-end
# Resume work on specific task
/gitea-workflow --task TASK-123
# Preview what would happen without executing
/gitea-workflow --dry-run
The primary workflow for completing a single task from selection to merge.
Ensure context network matches actual project state.
Run: sync --last 1d --dry-run
Purpose: Detect drift between documented and actual state
Output: Sync report showing completions, partial work, divergences
Identify the next task to work on.
Run: next
Purpose: Find highest priority ready task
Output: Task ID, title, branch name suggestion
CHECKPOINT: TASK_SELECTED
Test-driven development in isolated worktree.
Run: implement [TASK-ID]
Purpose: Create worktree, write tests first, implement, verify
Output: Working implementation with passing tests
CHECKPOINT: IMPL_COMPLETE
Quality validation of implementation.
Run: review-code --uncommitted
Run: review-tests --uncommitted
Purpose: Identify quality issues, security concerns, test gaps
Output: Review reports with issues and recommendations
CHECKPOINT: REVIEWS_DONE
Address review findings intelligently.
Run: apply-recommendations [review-output]
Purpose: Apply quick fixes now, defer complex changes to tasks
Output: Applied fixes + created follow-up tasks
Create pull request with full documentation.
Run: pr-prep
Purpose: Validate, document, and create PR
Output: PR created with description, tests verified
CHECKPOINT: PR_CREATED
Merge and cleanup.
Run: pr-complete [PR-NUMBER]
Purpose: Merge PR, delete branch, remove worktree, update status
Output: Task marked complete, cleanup done
Persist progress to source-of-truth documentation.
Run: Part of pr-complete (Phase 6)
Purpose: Update epic file (task ā complete), unblock dependents, update project status
Output: Backlog and project status reflect actual progress
Why this step matters: Without it, completed tasks remain marked "ready" in backlog files and project status stays stale. Internal tracking files are session-scoped; the backlog and status files are the persistent source of truth.
For detailed task-cycle instructions, see references/phases/task-cycle.md.
Quick sequences for start and end of workday.
Run sequence:
1. sync --last 1d --dry-run # What actually happened yesterday
2. status --brief --sprint # Current sprint health
3. groom --ready-only # What's ready to work on
Output: Clear picture of today's priorities
Run sequence:
1. checklist # Ensure nothing lost
2. discovery # Capture learnings
3. sync --last 1d # Update task statuses
Output: Knowledge preserved, state synchronized
For detailed daily instructions, see references/phases/daily.md.
Ceremonies for sprint boundaries.
Run sequence:
1. sync --all # Full reality alignment
2. groom --all # Comprehensive grooming
3. plan sprint-goals # Architecture and goals
4. status --detailed # Baseline metrics
Output: Sprint plan with groomed, ready backlog
Run sequence:
1. sync --sprint # Final sprint sync
2. retrospective # Capture learnings
3. audit --scope sprint # Quality review
4. status --metrics # Sprint metrics
5. maintenance --deep # Context network cleanup
Output: Sprint closed, learnings captured, ready for next
For detailed sprint instructions, see references/phases/sprint.md.
Checkpoints are pauses for human decision-making.
At each checkpoint:
| Response | Action |
|---|---|
| "continue" / "proceed" / "yes" | Move to next step |
| "stop" / "pause" | Save state, exit workflow |
| "back" | Re-run previous step |
| "skip" | Skip current step (use cautiously) |
| Custom input | May adjust next step parameters |
Some checkpoints can auto-continue when conditions are met:
| Checkpoint | Auto-Continue If |
|---|---|
| IMPL_COMPLETE | All tests pass, build succeeds |
| REVIEWS_DONE | No critical or high severity issues |
| PR_CREATED | CI passes (verified via API), required approvals obtained |
For detailed checkpoint handling, see references/checkpoint-handling.md.
Each workflow step uses embedded command instructions:
| Command | Reference | Purpose |
|---|---|---|
| sync | references/commands/sync.md | Reality synchronization |
| groom | references/commands/groom.md | Task refinement |
| next | references/commands/next.md | Task selection |
| implement | references/commands/implement.md | TDD implementation |
| review-code | references/commands/review-code.md | Code quality review |
| review-tests | references/commands/review-tests.md | Test quality review |
| apply-recommendations | references/commands/apply-recommendations.md | Triage and apply fixes |
| pr-prep | references/commands/pr-prep.md | PR creation |
| pr-complete | references/commands/pr-complete.md | PR merge and cleanup |
| discovery | references/commands/discovery.md | Learning capture |
| retrospective | references/commands/retrospective.md | Post-work analysis |
| maintenance | references/commands/maintenance.md | Context network cleanup |
Scenario: Start of day, implement next available task
Invocation:
/gitea-workflow --phase task-cycle
Flow:
Agent: Detecting current state...
No worktree found, checking ready tasks...
Agent: Running sync --last 1d --dry-run
[Sync output: 0 tasks completed but undocumented]
Agent: Running next
Found: TASK-042 - Add user preferences endpoint
Priority: High | Size: Small | Branch: task/TASK-042-preferences
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā CHECKPOINT: Task Selection ā
ā āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā£
ā Selected: TASK-042 ā
ā Proceed with implementation? ā
ā ā
ā [continue] [stop] [other task] ā
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
User: continue
Agent: Creating worktree at .worktrees/TASK-042/
Running implement TASK-042
[Implementation proceeds with TDD...]
Tests: 12 passing
Coverage: 87%
Build: Success
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā CHECKPOINT: Implementation Complete ā
ā āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā£
ā All tests passing, ready for review ā
ā Proceed to code review? ā
ā ā
ā [continue] [stop] ā
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
[Flow continues through review, PR, merge...]
Gitea uses external CI systems (Drone, Woodpecker, Jenkins, etc.). To check CI status:
scripts/gitea-ci-status.sh to query commit statuses| Operation | Tea CLI Command |
|---|---|
| List open PRs | tea pulls list --state open |
| Create PR | tea pulls create --title "..." --description "..." --base main --head branch |
| View PR | tea pulls |
| Merge PR (squash) | tea pulls merge --style squash |
| Merge PR (merge) | tea pulls merge --style merge |
| Merge PR (rebase) | tea pulls merge --style rebase |
| Approve PR | tea pulls approve |
| List issues | tea issues list |
For operations not available in the tea CLI, use the provided API scripts:
scripts/gitea-ci-status.sh - Check CI status via Gitea APIscripts/gitea-pr-checks.sh - Get PR review/approval statustea CLI for PR operations)