teahubxyzandClaude Opus 5.5 fb8acb0af9 mcp: Teahub MCP 2.0, typed and with the tools agents kept asking for
One file, 29 tools, every one acting with the caller's own Gitea token.
Parameters are typed (patterns, ranges, enums), so FastMCP refuses a bad
argument before Gitea is asked anything and publishes the limits in each
tool's schema.

New: tea_pull_get/create/review/merge, tea_labels and tea_label,
tea_commit (up to 50 files, text or base64), tea_branch_create,
tea_repo_edit (including archived), tea_hook_create (one per URL),
tea_secret_set and tea_variable_set.

Fixed:
- unknown labels are refused instead of silently dropped
- a file update is chosen from a 404 on the path, not from matching "404"
  in an error message; paths with spaces are percent-encoded
- tea_org_add_member names its team; there is no default
- org repositories are private by default, like user repositories
- "more" and "truncated" come from X-Total-Count, so they are true
- tea_issue_comments pages client-side: Gitea's endpoint is unpaged
- tea_actions reads /actions/tasks: 1.24 has no /actions/runs, so the
  old tool always got a 404
- a Gitea that does not answer is named as such instead of a masked error

Tests run against a fake Gitea (27). The same code was run against
teahub.xyz with a temporary token in scratch repositories that were then
deleted.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CYHXFvWMCs1GUmRmpySqQ6
2026-10-14 18:04:07 -07:00
…

Teahub v1 (Green Tea)

Teahub is Git + tea (Gitea) + Time. This repository is the spine of the v1 prod instance at https://teahub.xyz, rebuilt fresh on 2026-10-14. Nothing was copied from the hb-5 era; pieces are ported only when a card needs them, and each port is a commit here.

  • AGENTS.md — the map for agents (where you are, how to move).
  • docs/decisions.md — append-only decisions ledger.
  • docs/rebuild.md — every step the rebuild needed beyond "clone + bootstrap"; the measure of portability.
  • mcp/ — Green Tea MCP, the Teahub MCP (FastMCP) against this Gitea. Every tool acts as the signed-in user.
  • Time (the automation layer) lives at https://github.com/teahubxyz/time, mirrored here as teahubxyz/time.

Logins: GitHub (now), nostr (next). Prod holds no secrets beyond Gitea's own keys, the GitHub OAuth client, and the MCP's OAuth client.

S
Description
Teahub v1 (Green Tea): the spine, rebuilt fresh on prod. Pieces ported from the hb-5 era only when a card needs them.
Readme
1.6 MiB
0 Stars 1 Watchers 0 Forks
Languages
Python 76.2%
JavaScript 9.9%
CSS 8%
Go Template 3.7%
HTML 1.3%
Other 0.9%