Skip to main content
PROMPT SPACE
C
Freedeveloper-toolsUniversal

codeberg

Full-featured Gitea API integration for managing Codeberg repositories, releases, and multi-file commits.

skill install https://www.promptspace.in/skills/codeberg

Fully 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.

  1. Open Claude > Settings > Capabilities
  2. Ensure Cloud code execution and file creation is enabled
  3. Under Domain allowlist, add codeberg.org
  4. If using the proxy, also add your ngrok domain, e.g. your-domain.ngrok-free.dev
  5. 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

Sync my local changes to Codeberg and create a new release tagged 'v1.2.0'.

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.

Frequently asked questions

This skill provides a programmatic bridge to the Gitea/Forgejo API, automating complex Git operations like atomic multi-file commits and SHA management that often cause errors when handled via raw LLM prompting.
codeberg — AI Agent Skill | PromptSpace