repo, sync & audit
Repository helpers, GitHub sync, and the audit log — full CLI reference.
repo (read-only)
Helpers run against the checked-out repository, not the hyper-pm data worktree.
repo commit-authors
JSON { "items": [{ "name", "email", "loginGuess?" }] } — unique authors by email (most recent first), with optional GitHub login guess.
No required flags.
repo suggest-assignee-login
JSON { "loginGuess": string | null }.
| Flag | Required | Description |
|---|---|---|
--email <e> | yes | Email to match |
--name <n> | no | Extra hint when email alone is ambiguous |
sync
By default, sync reconciles the hyper-pm-data branch over git (fetch / merge / push) with no GitHub Issues API and no GITHUB_TOKEN. JSON includes gitDataOnly, dataBranchFetch, dataBranchMerge, dataBranchPush, optional dataBranchPushDetail, and pushAttempts.
| Flag | Default | Description |
|---|---|---|
--with-github | off | Full GitHub mirror: push issues, inbound updates, PR timeline (auth; sync not off) |
--skip-network | off | Skip all sync network work (git and GitHub); legacy --no-github is accepted |
--git-data | off | Legacy no-op (default is already git-only) |
With --with-github, requires GITHUB_TOKEN or gh (gh auth token must succeed). JSON then includes githubSync and the usual dataBranchPush fields after GitHub work.
Outbound sets issue labels (hyper-pm, ticket, plus ticket labels — GitHub’s 50-character label limit applies) and embeds planning fields in a fenced JSON block after the description.
Inbound compares issue labels and that fence to the projection and records inbound updates. PR timeline activity (for tickets that are not done / cancelled and have Refs / Closes / Fixes references) may append GithubPrActivity events (extra API calls per linked PR). A GithubPrActivity with kind: "opened" moves the ticket to in_progress when replayed. Config values outbound and full both run this full pipeline when you pass --with-github.
Detailed behavior: GitHub sync.
sync honors persisted config; global --sync can override the effective mode for the invocation — see Global options.
audit
Lists durable events from the JSONL log with optional filters.
| Flag | Description |
|---|---|
--limit <n> | Keep only the most recent n matching events |
--type <t> | Filter by event type (exact string; see table below) |
--entity-id <id> | Rows whose payload id, entityId, or ticketId matches |
--text-style <s> | With --format text: tsv (default), plain, or plain-links |
Valid --type values
EpicCreated · EpicUpdated · EpicDeleted · StoryCreated · StoryUpdated · StoryDeleted · TicketCreated · TicketUpdated · TicketDeleted · TicketCommentAdded · SyncCursor · GithubInboundUpdate · GithubIssueLinked · GithubPrActivity
GithubPrActivity payloads include ticketId, prNumber, kind (opened | updated | commented | reviewed | merged | closed | ready_for_review), sourceId, occurredAt, and optionally reviewState / url.
Text output styles
With --format text, --text-style selects:
| Style | Output |
|---|---|
tsv | Tab-separated: ts, type, actor, id (extra columns for GithubPrActivity) |
plain | One English sentence per event |
plain-links | Like plain plus a tab and compact JSON (ids and URLs; no ticket body/title). When githubRepo resolves, includes issueHtmlUrl / pullHtmlUrl when applicable |
With --format json, the result includes events and any invalidLines skipped during parse; --text-style is ignored.
Background: Event log.