4.4 KiB
4.4 KiB
Gemini / AI Studio — Gitea Agent Onboarding
Identity
| Field | Value |
|---|---|
| Gitea Username | gemini |
| Gitea User ID | 12 |
| Full Name | Google AI Agent |
| gemini@hermes.local | |
| Org | Timmy_Foundation |
| Team | Workers (write: code, issues, pulls, actions) |
| Token Name | aistudio-agent |
| Token Scopes | write:issue, write:repository, read:organization, read:user, write:notification |
Auth Token
e76f5628771eecc3843df5ab4c27ffd6eac3a77e
Token file on Mac: ~/.timmy/gemini_gitea_token
API Base URL
Use Tailscale when available (tokens stay private):
http://100.126.61.75:3000/api/v1
Fallback (public):
http://143.198.27.163:3000/api/v1
Quick Start — Paste This Into AI Studio
You are "gemini", an AI agent with write access to Gitea repositories.
GITEA API: http://143.198.27.163:3000/api/v1
AUTH HEADER: Authorization: token e76f5628771eecc3843df5ab4c27ffd6eac3a77e
REPOS YOU CAN ACCESS (Timmy_Foundation org):
- timmy-home — Timmy's workspace, issues, uniwizard
- timmy-config — Configuration sidecar
- the-nexus — 3D world, frontend
- hermes-agent — Hermes harness fork
WHAT YOU CAN DO:
- Read/write issues and comments
- Create branches and push code
- Create and review pull requests
- Read org structure and notifications
IDENTITY RULES:
- Always authenticate as "gemini" — never use another user's token
- Sign your comments so humans know it's you
- Attribute your work honestly in commit messages
Example API Calls
List open issues
curl -s -H "Authorization: token e76f5628771eecc3843df5ab4c27ffd6eac3a77e" \
"http://143.198.27.163:3000/api/v1/repos/Timmy_Foundation/timmy-home/issues?state=open&limit=10"
Post a comment on an issue
curl -s -X POST \
-H "Authorization: token e76f5628771eecc3843df5ab4c27ffd6eac3a77e" \
-H "Content-Type: application/json" \
-d '{"body":"Hello from Gemini! 🔮"}' \
"http://143.198.27.163:3000/api/v1/repos/Timmy_Foundation/timmy-home/issues/112/comments"
Create a branch
curl -s -X POST \
-H "Authorization: token e76f5628771eecc3843df5ab4c27ffd6eac3a77e" \
-H "Content-Type: application/json" \
-d '{"new_branch_name":"gemini/my-feature","old_branch_name":"main"}' \
"http://143.198.27.163:3000/api/v1/repos/Timmy_Foundation/timmy-home/branches"
Create a file (commit directly)
curl -s -X POST \
-H "Authorization: token e76f5628771eecc3843df5ab4c27ffd6eac3a77e" \
-H "Content-Type: application/json" \
-d '{
"content": "'$(echo -n "file content here" | base64)'",
"message": "feat: add my-file.md",
"branch": "gemini/my-feature"
}' \
"http://143.198.27.163:3000/api/v1/repos/Timmy_Foundation/timmy-home/contents/path/to/my-file.md"
Create a pull request
curl -s -X POST \
-H "Authorization: token e76f5628771eecc3843df5ab4c27ffd6eac3a77e" \
-H "Content-Type: application/json" \
-d '{
"title": "feat: description of change",
"body": "## Summary\n\nWhat this PR does.",
"head": "gemini/my-feature",
"base": "main"
}' \
"http://143.198.27.163:3000/api/v1/repos/Timmy_Foundation/timmy-home/pulls"
Read a file from repo
curl -s -H "Authorization: token e76f5628771eecc3843df5ab4c27ffd6eac3a77e" \
"http://143.198.27.163:3000/api/v1/repos/Timmy_Foundation/timmy-home/contents/SOUL.md" \
| python3 -c "import json,sys,base64; print(base64.b64decode(json.load(sys.stdin)['content']).decode())"
Workflow Patterns
Pattern 1: Research & Report (comment on existing issue)
- Read the issue body
- Do the research/analysis
- Post results as a comment
Pattern 2: Code Contribution (branch + PR)
- Create a branch:
gemini/<feature-name> - Create/update files on that branch
- Open a PR against
main - Wait for review
Pattern 3: Issue Triage (create new issues)
curl -s -X POST \
-H "Authorization: token e76f5628771eecc3843df5ab4c27ffd6eac3a77e" \
-H "Content-Type: application/json" \
-d '{"title":"[RESEARCH] Topic","body":"## Context\n\n..."}' \
"http://143.198.27.163:3000/api/v1/repos/Timmy_Foundation/timmy-home/issues"
Notes
- Token was created 2026-03-30 via
gitea admin user generate-access-token - Gemini is in the Workers team — write access to all Timmy_Foundation repos
- The token does NOT have admin scope — cannot create users or manage the org
- Commits via the API will be attributed to
gemini <gemini@hermes.local>