docs: add README with install, setup, and usage instructions
This commit is contained in:
@@ -0,0 +1,92 @@
|
|||||||
|
# gitea-connector
|
||||||
|
|
||||||
|
A Claude Code plugin for connecting to Seth's Gitea instance at `git.sethpc.xyz`. Sets up your credentials, installs a CLI, and teaches Claude Code your commit conventions — so you can focus on writing code instead of remembering how to push it.
|
||||||
|
|
||||||
|
## Install
|
||||||
|
|
||||||
|
Add this plugin to your Claude Code setup:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
claude plugin add /path/to/gitea-connector
|
||||||
|
```
|
||||||
|
|
||||||
|
Or clone it:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://git.sethpc.xyz/Seth/gitea-connector.git
|
||||||
|
claude plugin add ./gitea-connector
|
||||||
|
```
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
|
||||||
|
Run `/gitea-setup` in Claude Code. It'll walk you through everything:
|
||||||
|
|
||||||
|
1. Checks you have `curl`, `jq`, and `git` (the holy trinity)
|
||||||
|
2. Guides you through generating an API token on git.sethpc.xyz
|
||||||
|
3. Stores your credentials securely in `~/.config/gitea/`
|
||||||
|
4. Installs the `gitea` CLI to `~/bin/`
|
||||||
|
5. Validates your connection
|
||||||
|
|
||||||
|
The whole thing takes about 2 minutes. Less if you type fast.
|
||||||
|
|
||||||
|
## CLI Usage
|
||||||
|
|
||||||
|
After setup, you have the `gitea` command:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
gitea create my-project --private --description "Top secret stuff"
|
||||||
|
gitea remote my-project # wire up git origin
|
||||||
|
gitea push # push current branch
|
||||||
|
gitea list # see your repos
|
||||||
|
gitea delete old-project # delete (with confirmation)
|
||||||
|
```
|
||||||
|
|
||||||
|
## Commit Conventions
|
||||||
|
|
||||||
|
The plugin teaches Claude Code these conventions (override in your project's CLAUDE.md):
|
||||||
|
|
||||||
|
- **Conventional commits:** `feat:`, `fix:`, `docs:`, `refactor:`, `test:`, `chore:`
|
||||||
|
- **Commit immediately** — don't hoard changes
|
||||||
|
- **Always push** — unpushed commits are just elaborate local notes
|
||||||
|
- **No squashing** — history is sacred
|
||||||
|
- **One concern per commit** — no bundling unrelated changes
|
||||||
|
|
||||||
|
## Push Reminder Hook (opt-in)
|
||||||
|
|
||||||
|
Want a nudge after every commit? Edit `hooks/hooks.json` in the plugin directory:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"description": "Gitea connector hooks — push reminder after commits",
|
||||||
|
"hooks": {
|
||||||
|
"PostToolUse": [
|
||||||
|
{
|
||||||
|
"matcher": "Bash",
|
||||||
|
"hooks": [
|
||||||
|
{
|
||||||
|
"type": "command",
|
||||||
|
"command": "bash ${CLAUDE_PLUGIN_ROOT}/hooks/scripts/push-reminder.sh",
|
||||||
|
"timeout": 5
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## Config Files
|
||||||
|
|
||||||
|
All stored in `~/.config/gitea/`:
|
||||||
|
|
||||||
|
| File | Purpose |
|
||||||
|
|------|---------|
|
||||||
|
| `token` | Your Gitea API token |
|
||||||
|
| `username` | Your Gitea username |
|
||||||
|
| `host` | (Optional) Host override, defaults to `git.sethpc.xyz` |
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
- `curl`, `jq`, `git`
|
||||||
|
- A Gitea account on `git.sethpc.xyz` (talk to Seth)
|
||||||
|
- Claude Code
|
||||||
Reference in New Issue
Block a user