Back to Codeberg

CLI support for milestones and projects #355

forgejo-contrib-forgejo-cli-issues-355.md

latest15.3 KB
Original Source

forgejo-contrib/forgejo-cli

Watch20

Star402

Fork

You've already forked forgejo-cli

51

CodeIssues 44Pull requests 8Releases 11Packages 2WikiActivity

CLI support for milestones and projects #355

New issue

Closed

opened 2026-03-14 22:23:52 +01:00 by stalecontext · 4 comments

stalecontext commented 2026-03-14 22:23:52 +01:00

Copy link

Summary

Currently, forgejo-cli has no commands for managing milestones or projects. Milestone fields are hardcoded to None in issue/PR creation and editing, and projects are not referenced at all.

Milestones

The Forgejo API supports full milestone CRUD. It would be great to have CLI commands like:

  • fj milestone list - list milestones for a repo
  • fj milestone create - create a milestone (title, description, due date)
  • fj milestone view <id> - view milestone details and progress
  • fj milestone edit <id> - edit title, description, due date, state
  • fj milestone delete <id> - delete a milestone
  • fj issue create --milestone <name-or-id> - assign milestone on issue creation
  • fj issue edit --milestone <name-or-id> - assign/change milestone on existing issues
  • fj pr create --milestone <name-or-id> - same for PRs
  • fj issue search --milestone <name> / fj pr search --milestone <name> - filter by milestone

Projects

Forgejo supports projects (kanban boards) at both the repo and org level. Related to #351 (which requests displaying project info on issues), but this is broader - full project management:

  • fj project list - list projects for a repo
  • fj project create - create a project (title, description, board type)
  • fj project view <id> - view project details and columns
  • fj project edit <id> - edit project
  • fj project delete <id> - delete a project
  • fj project columns <id> - list/manage columns
  • Assign issues/PRs to projects during creation or editing

Current state in the code

  • milestone: None is hardcoded in CreateIssueOption and EditIssueOption (issues.rs) and PR equivalents (prs.rs)
  • milestones: None is hardcoded in search queries
  • RepoFeatures already has a milestones: bool field but it only controls repo migration
  • No project support exists anywhere

Scope

This could be broken into phases:

  1. Milestone flags on existing commands (--milestone on issue/PR create, edit, search) - smallest useful increment
  2. Milestone subcommand (fj milestone list/create/view/edit/delete)
  3. Project subcommand (fj project list/create/view/edit/delete)

Happy to discuss prioritization or help with implementation.

Cyborus commented 2026-03-14 23:12:28 +01:00

Member

Copy link

Was this written using an LLM in any way? The replacement characters scattered throughout are very strange.

Was this written using an LLM in any way? The replacement characters scattered throughout are very strange.

👎 1

philkhn referenced this issue 2026-03-15 02:43:35 +01:00 Add milestone filtering to fj issue search and fj pr search #356

philkhn referenced this issue 2026-03-15 02:43:47 +01:00 Add fj milestone subcommand (list, view, create, edit, delete) #357

philkhn referenced this issue 2026-03-15 02:43:58 +01:00 Show milestone info in fj issue view and fj pr view output #358

stalecontext commented 2026-03-15 03:00:01 +01:00

Author

Copy link

@Cyborus wrote in #355 (comment):

Was this written using an LLM in any way? The replacement characters scattered throughout are very strange.

Fixed, sorry about that

@Cyborus wrote in https://codeberg.org/forgejo-contrib/forgejo-cli/issues/355#issuecomment-11651599: > Was this written using an LLM in any way? The replacement characters scattered throughout are very strange. Fixed, sorry about that

Cyborus commented 2026-03-15 03:27:32 +01:00

Member

Copy link

Please answer my question.

Please answer my question.

👎 1

stalecontext commented 2026-03-15 06:13:10 +01:00

Author

Copy link

@Cyborus wrote in #355 (comment):

Please answer my question.

Yes, I used Claude to help format the issue submission and make the issue. How come?

@Cyborus wrote in https://codeberg.org/forgejo-contrib/forgejo-cli/issues/355#issuecomment-11655952: > Please answer my question. Yes, I used Claude to help format the issue submission and make the issue. How come?

❤️ 1

Cyborus closed this issue 2026-03-15 06:18:09 +01:00

Cyborus locked as Spam and limited conversation to collaborators 2026-03-15 06:18:40 +01:00

stalecontext referenced this issue from stalecontext/forgejo-cli-plus 2026-03-15 16:47:02 +01:00 Milestone support: subcommand, create/search/view integration #7

stalecontext referenced this issue from stalecontext/forgejo-cli-plus 2026-03-15 16:47:21 +01:00 feat: milestone support #8

stalecontext referenced this issue from a commit 2026-03-15 17:24:37 +01:00 feat: milestone support (#8)

okdas referenced this issue from stalecontext/forgejo-cli-plus 2026-03-27 21:38:26 +01:00 MacOS builds #25

This discussion has been locked. Commenting is limited to contributors.

No Branch/Tag specified

BranchesTags

main

renovate/lock-file-maintenance

renovate/serde-saphyr-0.x

docs/contributing

no-port-in-refspec

login/v16.next.forgejo.org

crates-io-publish

0.5.x

compile-time-fluent

0.4.x

localization-alias-demo

api_url_field

v0.5.0

v0.4.1

v0.4.0

v0.3.0

v0.2.0

v0.1.1

v0.1.0

v0.0.4

v0.0.3

v0.0.2

v0.0.1

Labels

Clear labels[ Kind/Breaking Breaking change that won't be backward compatible

](#)[ Kind/Bug Something is not working

](#)[ Kind/Design Discussion about UI/UX design

](#)[ Kind/Documentation Documentation changes

](#)[ Kind/Enhancement Improve existing functionality

](#)[ Kind/Feature New functionality

](#)[ Kind/Security This is security issue

](#)[ Kind/Testing Issue or pull request related to testing

](#)[ Kind/Upstream This is an issue with upstream software (Forgejo) that is probably not our fault

](#)

[ Priority

Critical The priority is critical

](#)[ Priority

High The priority is high

](#)[ Priority

Low The priority is low

](#)[ Priority

Medium The priority is medium

](#)

[ Reviewed

Confirmed Issue has been confirmed

](#)[ Reviewed

Duplicate This issue or pull request already exists

](#)[ Reviewed

Invalid Invalid issue

](#)[ Reviewed

Won't Fix This issue won't be fixed

](#)

[ Status

Abandoned Somebody has started to work on this but abandoned work

](#)[ Status

Blocked Something is blocking this issue or pull request

](#)[ Status

Need More Info Feedback is required to reproduce issue or to continue work

](#)

[ Suspicious

](#)

No labels Kind/Breaking Kind/Bug Kind/Design Kind/Documentation Kind/Enhancement Kind/Feature Kind/Security Kind/Testing Kind/Upstream [ Priority

Critical ](/forgejo-contrib/forgejo-cli/issues?labels=173012) [ Priority

High ](/forgejo-contrib/forgejo-cli/issues?labels=173013) [ Priority

Low ](/forgejo-contrib/forgejo-cli/issues?labels=173015) [ Priority

Medium ](/forgejo-contrib/forgejo-cli/issues?labels=173014) [ Reviewed

Confirmed ](/forgejo-contrib/forgejo-cli/issues?labels=173007) [ Reviewed

Duplicate ](/forgejo-contrib/forgejo-cli/issues?labels=173005) [ Reviewed

Invalid ](/forgejo-contrib/forgejo-cli/issues?labels=173006) [ Reviewed

Won't Fix ](/forgejo-contrib/forgejo-cli/issues?labels=173008) [ Status

Abandoned ](/forgejo-contrib/forgejo-cli/issues?labels=173011) [ Status

Blocked ](/forgejo-contrib/forgejo-cli/issues?labels=173010) [ Status

Need More Info ](/forgejo-contrib/forgejo-cli/issues?labels=173009) Suspicious

Milestone

Clear milestone

No items

No milestone

Projects

Clear projects

No items

No project

Assignees

Clear assignees

No assignees

2 participants

Notifications Subscribe

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

forgejo-contrib/forgejo-cli#355

WritePreview

Loading…

Add table

| Rows | | | Columns | |

CancelOK

Add a link

Url Description Hint: With a URL in your clipboard, you can paste directly into the editor to create a link.

CancelOK

CancelSave

Reference in a new issue

Repository

forgejo-contrib/forgejo-cli

Title

Body

Create issue

No description provided.

Delete branch "%!s()"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?

No Yes