codeberg
Full-featured Gitea API integration for managing Codeberg repositories, releases, and multi-file commits.
skill install https://www.promptspace.in/skills/codebergFully Programmatic Codeberg Management
The Codeberg Skill empowers your AI agent to interact with Codeberg (Gitea-based) repositories with the same level of depth as a human developer. While most AI tools are optimized strictly for GitHub, this skill provides a specialized bridge for the Forgejo/Gitea ecosystem, enabling sophisticated Git operations directly through the Gitea REST API v1.
Advanced Repository Control
Moving beyond simple text generation, this skill allows your agent to perform active repository management. It handles technical complexities that often fail with raw prompting, such as:
- Automated SHA Management: Prevents merge conflicts by automatically fetching and managing object SHAs for file updates.
- Complex Batch Commits: Implements the 5-step Git Trees API workflow to push multiple files in a single atomic commit.
- Release Orchestration: Create releases, manage tags, and upload binary assets programmatically.
- Smart Request Routing: Features a built-in proxy-first architecture to keep your API tokens on your local machine for maximum security.
Why It's Better Than Prompting
Direct API prompting often leads to errors in Base64 encoding, path formatting, and state management. This skill provides the agent with a reliable execution framework, ensuring that file transfers, branch management, and repository searches are performed according to Gitea's specific standards. It includes automatic fallback logic and localized token handling that standard LLM contexts cannot replicate.
Single account or multi-account
The skill is intentionally single-account to minimize exposure. If the skill file is ever shared or leaked, only one account is at risk.
- Single account: Fill in your API token directly in the skill config. No proxy required, works out of the box.
- Multi-account: Configure additional accounts in Tunnel-Proxy (https://codeberg.org/Vokuar/Tunnel-Proxy). Each account's token stays on your machine and never touches the skill file. The proxy handles routing between accounts automatically.
Proxy setup (recommended)
Run Tunnel-Proxy locally and tunnel it via ngrok so Claude can reach it from anywhere. Full setup instructions for Windows, macOS, Linux, and Termux including autostart are available at:
https://codeberg.org/Vokuar/Tunnel-Proxy
The proxy secret is defined as PROXY_SECRET near the top of proxy.py. Set the same value in the skill config under PROXY_SECRET.
If you prefer not to run a proxy, fill in the TOKEN field in the skill config directly and leave the proxy fields as placeholders. The skill will detect this and skip the proxy ping automatically.
Allow domains in Claude settings
Claude's sandbox blocks outbound requests by default. You need to allowlist any domain Claude needs to reach.
- Open Claude > Settings > Capabilities
- Ensure Cloud code execution and file creation is enabled
- Under Domain allowlist, add
codeberg.org - If using the proxy, also add your ngrok domain, e.g.
your-domain.ngrok-free.dev - Click Add after each
Recommended token scopes
When generating your Codeberg API token, name it something descriptive like Claude Local Proxy. repository and user are required. The rest are optional depending on what operations you need.
- repository: Read and write (files, branches, commits, releases, tags) — required
- user: Read and write (repo listing, identity, creating repos via the API) — required
- issue: Read and write (issues, comments, labels, milestones) — optional
- notification: Read and write (notifications and subscriptions) — optional
- misc: Read (Gitea metadata and signing keys) — optional
- activitypub: Read and write — optional
- organization: No access
- package: No access
Supported tools and frameworks
- Platform: Codeberg.org and any self-hosted Gitea/Forgejo instance
- API: Gitea REST API v1
- Auth: Direct Personal Access Token (single account) or Proxy Secret with per-account token routing (multi-account via Tunnel-Proxy)
- Data: Full JSON support with Base64 content handling
Use cases
- Automate multi-file commits using Gitea Git Trees API workflows.
- Manage repository releases, tags, and binary asset uploads.
- Sync local code changes to Codeberg with automated SHA conflict resolution.
- Search and inspect repository structures via Gitea REST API v1.
- Route API calls through a local proxy to keep access tokens secure.
Example
Prompt
Output
Successfully committed 3 files to 'main' branch in vokuar/web-app via Git Trees API. New commit SHA: 7f8a2c1 Release 'v1.0.4' created with attached binary: dist/app.zip.
Known limitations
- Large file transfers may hit timeout limits during Base64 encoding. - LFS (Large File Storage) management is not fully supported via REST. - Batch commits require a 5-step API sequence.