Add forgejo repo create verb to coily ops forgejo repo #134

Open
opened 2026-05-28 06:20:15 +00:00 by coilysiren · 0 comments
Owner

Problem

coily ops forgejo repo exposes list / view / edit / fork / archive / delete but no create. When an agent needs to create a new Forgejo repo (e.g. standing up coilyco-flight-deck/website and coilyco-bridge/website), there is no CorleyOps-audited path. The fallback is raw curl against the Forgejo REST API with the /forgejo/api-token SecureString, which bypasses coily's argv validation + audit log.

Ask

Add coily ops forgejo repo create wrapping POST /api/v1/orgs/{org}/repos (and ideally POST /api/v1/user/repos for user-owned repos).

Suggested shape, mirroring the existing repo verbs:

coily ops forgejo repo create --owner <org-or-user> --name <name> [--private] [--default-branch main] [--description <text>]

Notes:

  • Default to private unless --public/--private=false is passed. Agent-chosen public visibility should be explicit, not the default ("public repos are indexed beyond recall").
  • Auth via the existing /forgejo/api-token resolution already used by the other HTTP repo verbs.

Why now

Creating the two CorleyCo website repos required dropping to curl because the CLI had no create verb. Routing repo creation through coily keeps the audit trail intact and removes the need to hand the API token to ad-hoc shell.

## Problem `coily ops forgejo repo` exposes `list / view / edit / fork / archive / delete` but **no `create`**. When an agent needs to create a new Forgejo repo (e.g. standing up `coilyco-flight-deck/website` and `coilyco-bridge/website`), there is no CorleyOps-audited path. The fallback is raw `curl` against the Forgejo REST API with the `/forgejo/api-token` SecureString, which bypasses coily's argv validation + audit log. ## Ask Add `coily ops forgejo repo create` wrapping `POST /api/v1/orgs/{org}/repos` (and ideally `POST /api/v1/user/repos` for user-owned repos). Suggested shape, mirroring the existing repo verbs: ``` coily ops forgejo repo create --owner <org-or-user> --name <name> [--private] [--default-branch main] [--description <text>] ``` Notes: - Default to `private` unless `--public`/`--private=false` is passed. Agent-chosen public visibility should be explicit, not the default ("public repos are indexed beyond recall"). - Auth via the existing `/forgejo/api-token` resolution already used by the other HTTP repo verbs. ## Why now Creating the two CorleyCo `website` repos required dropping to curl because the CLI had no create verb. Routing repo creation through coily keeps the audit trail intact and removes the need to hand the API token to ad-hoc shell.
coilysiren added
P3
and removed
P2
labels 2026-05-31 06:59:42 +00:00
Sign in to join this conversation.
No labels
P0
P1
P2
P3
P4
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
coilyco-bridge/coily#134
No description provided.