AtlatestRepositoryfjo
1
;;; fjo - Forgejo/Codeberg management CLI and MCP server2
;;;3
;;; A dual-mode tool for managing repositories, issues, pull requests,4
;;; and releases on Forgejo/Codeberg instances. Usable as a CLI by humans5
;;; and as an MCP server by AI agents.7
(package8
name: "fjo"9
version: "0.2.3"10
sigil: "0.20"11
description: "Forgejo/Codeberg management CLI and MCP server"12
url: "https://codeberg.org/sigil/fjo"13
license: "BSD-3-Clause"14
authors: (list "David Wilson <[email protected]>")16
entry: '(fjo main)17
bundle-name: "fjo"19
configs: (list20
(config21
name: 'dev22
output-dir: "build/dev"23
debug?: #t24
optimize: 025
bundle?: #t)26
(config27
name: 'release28
output-dir: "build/release"29
debug?: #f30
optimize: 231
bundle?: #t32
backend: 'native))34
provides: (list35
mcp-server: #{ name: "fjo"36
args: #["serve"]37
env: #{ FORGEJO_URL: "https://codeberg.org" }38
secret-env: #{ FORGEJO_TOKEN: #t } })40
dependencies: (list41
;; Explicit sigil-lib pin. Two independent reasons, both measured:42
;; 1. Without it, sigil-lib is derived transitively and does not track43
;; the `sigil:` field, so a relock can silently leave the C runtime44
;; behind while `sigil deps install` exits 0.45
;; 2. sigil-lib's resolution does NOT respect its declared range: with46
;; no explicit pin, a fresh resolve records `ref: "^0.17"` alongside47
;; `version: "0.18.2"` in the same lock entry, on any toolchain,48
;; while sigil-stdlib in that same resolve correctly stays at 0.17.20.49
;; Verify in sigil.lock (the `version:`/`sha:` fields, not `ref:`).50
(from-git url: "codeberg:sigil/sigil"51
package: "sigil-lib" version: ">=0.21")52
(from-git url: "codeberg:sigil/sigil" package: "sigil-run" version: ">=0.21")53
;; sigil-mcp ^0.17, NOT ^0.16. The 0.16 line now contains BOTH a release54
;; requiring the 0.18 runtime (v0.16.5) and one requiring 0.17 (v0.16.6, a55
;; deliberate compatibility revert), so ^0.16 no longer determines which56
;; runtime you need. The 0.17 line is the unambiguous 0.18-runtime line.57
(from-git url: "codeberg:sigil/sigil-mcp" version: "^0.17")58
(from-git url: "codeberg:sigil/sigil-forgejo" version: "^0.10.0"))60
dev-dependencies: (list61
(from-git url: "codeberg:sigil/sigil" package: "sigil-test" version: ">=0.21")62
(from-git url: "codeberg:sigil/sigil" package: "sigil-test-runner" version: ">=0.21"))64
tasks: (list65
(task66
name: 'build67
description: "Compile fjo modules"68
steps: (list69
(compile-sigil-modules sources: "src/**/*.sgl"70
output-dir: (config-output-subdir "lib"))))))