#
CLI Reference
Reference for every fjx command, grouped by top-level subcommand. Generated from the Cliffy command tree at version 0.3.0.
Run fjx <command> --help for the live version at any time.
#
issue
Issue operations
#
list
List issues, optionally filtered by label or assignee
Options:
-l,--label— Filter by label (repeatable)-s,--state— Issue state: open|closed|all-a,--assignee— Filter by assignee username
#
view <id>
View an issue by number
#
label <id>
Add or remove labels on an issue, returns the updated issue
Options:
-A,--add— Label to add (repeatable)-r,--remove— Label to remove (repeatable)
#
pr
Pull request operations
#
create
Create a pull request. fjx prepends an fjx-managed header (Refs: #<N>) above a --- separator; --body-file is the agent-managed section below. Issue link is hard-required: --issue, or fall back to the current issue in cache.
Options:
-t,--title— PR title-H,--head— Head branch-b,--base— Base branch-i,--issue— Issue this PR refers to. Defaults to current issue in cache.-f,--body-file— Path to file containing the agent-managed PR body (below the---separator)
#
list
List pull requests, optionally filtered by label or assignee
Options:
-l,--label— Filter by label (repeatable)-s,--state— PR state: open|closed|all-a,--assignee— Filter by assignee username
#
view <id>
View a pull request by number
#
label <id>
Add or remove labels on a pull request, returns the updated PR
Options:
-A,--add— Label to add (repeatable)-r,--remove— Label to remove (repeatable)
#
comment
Comment operations
#
list <id>
List comments on an issue or PR
Options:
-s,--since— Only comments updated at or after this ISO timestamp
#
create
Create a comment on an issue or PR, returns the new comment with its ID
Options:
-i,--issue— Issue number-p,--pr— PR number-f,--body-file— Path to file containing the comment body
#
edit <comment-id>
Edit a comment by ID, returns the updated comment
Options:
-f,--body-file— Path to file containing the new body
#
view <comment-id>
View a comment by ID
#
label
Label operations
#
list
List all repo and org labels (populates cache)
#
pm
PM workflow subcommands
#
next
Select next best issue to work on.
#
brief <id>
Upsert the pm:brief comment on an issue by audience-scoped marker. Read-only when no --body-file provided.
Options:
-a,--audience— Brief audience role-f,--body-file— Path to file containing the brief body
#
ledger [id]
Upsert the agent-pm:ledger comment. Defaults to current issue from cache if no ID provided. Read-only when no --body-file provided.
Options:
-f,--body-file— Path to file containing the ledger body
#
sweep
Fetch issues and PRs updated since pm.last_swept_at, output candidates with their unprocessed comments. Sets pm.last_swept_at on success.
#
tick
Run one PM cycle: sweep, plan, apply. Processes every open issue. Open issues with a merged PR are surfaced in close_candidates; use pm close <N> to finalize each one.
Options:
--plan-only— Emit the plan as JSON without applying it--brief-context-file— Supply Context bullets for a brief refresh. Format: role=path/to/file.md. Each non-empty line of the file becomes one bullet. Repeatable.
#
close <id>
Finalize an issue: set ledger Status: closed, append a closed Activity entry, close the issue on Forgejo, remove the issue's worktree if present. Emits notes verbatim so the operator can decide what to promote to wiki/.
#
assign <assignee> <id>
Assign an issue to a Forgejo user.
#
prompt [name]
Print a pm workflow prompt to stdout. Omit
#
dev
Developer workflow subcommands
#
next
Select next best issue to work on.
#
claim <id>
Mark an issue as in-progress: add agent/working, assign to agent-dev. Idempotent. Creates initial dev ledger if absent.
#
done <id>
Mark a PR ready: assign the PR to $FJX_OWNER, transition the linked issue to agent/review, and assign the issue to agent-pm for routing. Idempotent.
#
ledger [id]
Upsert the agent-dev:ledger comment. Defaults to current issue from cache if no ID provided. Read-only when no --body-file provided.
Options:
-f,--body-file— Path to file containing the ledger body (agent-managed section only)-s,--status— Ledger status (required when writing). fjx computes checkpoint from current time.
#
prompt [name]
Print a dev workflow prompt to stdout. Omit
#
qa
QA workflow subcommands
#
next
Select next best issue to work on.
#
claim <id>
Mark an issue as under QA: assign to agent-qa. Idempotent. Creates initial QA ledger if absent.
#
ledger [id]
Upsert the agent-qa:ledger comment. Defaults to current issue from cache if no ID provided. Read-only when no --body-file provided.
Options:
-f,--body-file— Path to file containing the ledger body (agent-managed section only)-s,--status— Ledger status (required when writing). fjx computes checkpoint from current time.
#
checks <id>
List Forgejo Actions workflow runs for a PR's head commit
#
prompt [name]
Print a qa workflow prompt to stdout. Omit
#
wiki
Wiki page operations
#
list
List wiki page metadata. Empty array if no wiki yet.
#
view <slug>
View a wiki page by slug, with decoded content.
#
set <slug>
Upsert a wiki page: create on 404, patch otherwise. Skips the write (returns action=unchanged) if content already matches and no --title rename is requested.
Options:
-f,--body-file— Path to file containing the page content (markdown)-t,--title— Page title. Omit on edit to keep unchanged; required on create (defaults to slug).-m,--message— Commit message
#
revisions <slug>
List commit revisions for a wiki page.
#
init
Scaffold Claude Code wrappers (.claude/agents, .claude/commands) that delegate to fjx <role> prompt. Idempotent. Use --force to overwrite differing files.
Options:
-f,--force— Overwrite existing files that differ from the stub-C,--root— Project root to scaffold into (default: cwd)
#
usage
Print the fjx usage guide to stdout.