Issues and CI runs
Issues from the terminal
An issue is the unit of work in Skalpai. Feedback collected from users is
triaged in the web UI; whatever is worth doing becomes an issue, and
sklp issue lets you create, retitle, move and mirror it without leaving the
shell.
Every subcommand needs sklp auth login and a project: --project <id>, or
SKLP_PROJECT in the environment (issue list --stack excepted). Most accept
--json for the raw API payload.
| Value | Allowed |
|---|---|
--type | bug, feature, task, other |
--status | backlog, in_progress, done, wontfix |
Create and list
export SKLP_PROJECT=<project-id>
sklp issue new "Login loops after token refresh" --type bug --body "Steps: ..."
sklp issue new "Crash on export" --attach trace.txt --attach screen.png
sklp issue list --status in_progress --type bug
sklp issue list --stack <stack-id> --plain # TSV, no header
sklp issue show <id>--attach is repeatable. list --stack spans every project of the stack and
adds a project column; --limit caps the rows. References:
issue new,
issue list,
issue show.
Edit and move
sklp issue edit <id> --title "Login loop on refresh" --type bug
sklp issue status <id> in_progress
sklp issue status <id> wontfix --reason "duplicate of 812"--reason records why an issue was closed. References:
issue edit,
issue status.
From feedback to issue
sklp issue promote <feedback-id> turns a triaged feedback into an issue,
with optional --title, --body, --type and --status overrides.
sklp issue promote <feedback-id> --type feature --status backlogReference: issue promote.
GitHub mirror
An issue can carry a mirror issue on GitHub. The Skalpai issue stays the
source of truth; the gh-* verbs only drive the mirror's state.
| Command | Effect |
|---|---|
sklp issue gh-link <id> | open a GitHub issue mirroring this one |
sklp issue gh-close <id> | close the GitHub issue |
sklp issue gh-reopen <id> | reopen it |
sklp issue gh-unlink <id> | drop the link, leave the GitHub issue as is |
sklp issue gh-link <id> --title "Login loop on refresh"
sklp issue gh-close <id>Following CI
CI runs on the pull request, dispatched by the Skalpai app, not on GitHub
Actions. sklp ci follows a run from the terminal, by run id or by branch.
sklp ci status --branch feat/login # latest run for that branch
sklp ci status <run-id> --json
sklp ci watch --branch feat/login # replay and tail logs until it endsstatus prints the current state; watch replays the logs so far and tails
them until the run completes. Both take --project (or SKLP_PROJECT).
References: ci status,
ci watch.