AtlatestRepositoryfjo
1# fjo
2
3A Forgejo/Codeberg management tool built with [Sigil](https://codeberg.org/sigil/sigil). Works as both a CLI for humans and an MCP server for AI agents.
4
5## CLI Usage
6
7```
8fjo repos list sigil # List repos in org
9fjo repos info sigil kiln # Repo details
10fjo repos create sigil new-repo "desc" # Create repo
11fjo topics list sigil kiln # List topics
12fjo topics set sigil kiln app ci # Set topics
13fjo topics add sigil kiln library # Add topic
14fjo issues list sigil kiln # List issues
15fjo issues get sigil kiln 42 # Get issue details
16fjo issues create sigil kiln "Bug title" # Create issue
17fjo prs list sigil kiln # List pull requests
18fjo prs get sigil kiln 7 # Get PR details
19fjo releases list sigil sigil # List releases
20```
22## MCP Server
24Start with `fjo serve`. Exposes these tools:
26- `fjo/repos-list`, `fjo/repos-info`, `fjo/repos-create`
27- `fjo/topics-list`, `fjo/topics-set`, `fjo/topics-add`
28- `fjo/issues-list`, `fjo/issues-get`, `fjo/issues-create`, `fjo/issues-comment`
29- `fjo/pulls-list`, `fjo/pulls-get`, `fjo/pulls-create`, `fjo/pulls-merge`
30- `fjo/releases-list`, `fjo/releases-create`
32## Configuration
34fjo reads a `.env-fjo` file from the working directory at startup if present.
35This is the standard convention for Sigil MCP servers — credentials live in a
36dotenv file rather than in the MCP server configuration.
38Create a `.env-fjo` in your project root:
40```
41FORGEJO_TOKEN=your-api-token-here
42FORGEJO_URL=https://codeberg.org
43```
45Environment variables set through other means (shell export, MCP config) take
46precedence over the dotenv file.
48| Variable | Description | Default |
49|----------|-------------|---------|
50| `FORGEJO_TOKEN` | API token (required) | — |
51| `FORGEJO_URL` | Instance base URL | `https://codeberg.org` |
53## Building
55```bash
56sigil deps install
57sigil build
58```
60The bundled binary is at `build/dev/bin/fjo`.
62## Dependencies
64- [sigil-forgejo](https://codeberg.org/sigil/sigil-forgejo) — Forgejo API client library
66## License
68BSD-3-Clause