3.4 KiB
3.4 KiB
| name | description |
|---|---|
| forgejo-instance-setup | Set up and work with a Forgejo instance from scratch. Use when creating accounts, configuring tea CLI, generating tokens, or setting up repository workflows on self-hosted Forgejo/Gitea instances. |
Forgejo Instance Setup Skill
This skill provides step-by-step guidance for setting up and working with a Forgejo instance from scratch.
Directory Structure
forgejo-instance-setup/
├── SKILL.md # This file - main instructions
├── scripts/ # Helper scripts (optional)
├── references/ # Detailed reference docs
└── assets/ # Templates and resources
Quick Start
1. Create an Account
Via Web UI:
- Go to your Forgejo instance URL (e.g.,
https://vmd185580.tailf38284.ts.net) - Click Sign Up or Register
- Fill in username, email, password
- Complete CAPTCHA if required
Note: Regular users cannot create accounts via API — use the web UI.
2. Install tea CLI
Linux (amd64):
curl -sL https://github.com/tea-org/tea/releases/latest/download/tea-linux-amd64.tar.gz | tar xz -C /tmp
sudo mv /tmp/tea /usr/local/bin/
sudo chmod +x /usr/local/bin/tea
Verify:
tea --version
# Expected: Version: [1m0.12.0[0m golang: 1.25.7 go-sdk: v0.23.2
3. Configure Login
- Log in to Forgejo web UI → Settings → Application
- Click Add Access Token
- Fill in:
- Token name: e.g.,
tea-cli - Scopes (minimum):
read:user,write:repository
- Token name: e.g.,
- Copy the generated token
Save to config (~/.config/tea/config.yml):
logins:
- name: <instance-name>
url: https://<your-forgejo-instance>
token: <your-token-here>
default: true
ssh_host: <your-forgejo-instance>
user: <username>
created: <unix-timestamp>
Test connection:
tea whoami
# Expected output: # <username>
Common Tasks
Create a Repository
tea repos create --name my-repo \
--description "My project" \
--init
Clone a Repository
tea clone username/my-repo
# or with token in URL:
git clone https://username:<token>@<instance>/username/my-repo.git
Push Changes
git add .
git commit -m "Update"
git push origin main
Troubleshooting
Token Scope Errors
If you see token does not have at least one of required scope(s):
- Go to Forgejo → Settings → Application
- Edit your token or create a new one
- Add required scopes (see table below)
Connection Timeouts
- Check instance reachability:
ping <instance> - Check TLS:
curl -v https://<instance> - Check API:
curl https://<instance>/api/v1/version
Wrong Login Used
tea whoami --login <instance-name>
Scope Reference
| Scope | Description |
|---|---|
read:user |
View user profile and followers |
write:repository |
Create, update, delete repositories |
read:repository |
Read repository contents (public) |
Example Workflow
# 1. Create repo
tea repos create --name krallen-skills \
--description "Forgejo instance skills" \
--init
# 2. Clone locally
git clone https://<instance>/username/krallen-skills.git
# 3. Add content and push
cd krallen-skills
echo "# Krallen Skills" > README.md
git add .
git commit -m "Initial commit"
git push origin main