plugins/lisa-agy/skills/github-journey/SKILL.md
Parse a GitHub Issue's Validation Journey section, execute the verification steps using appropriate tools (curl, test commands, database queries), capture evidence at each marker, and post results via lisa:github-evidence. The GitHub counterpart of lisa:jira-journey.
npx skillsauth add codyswanngt/lisa github-journeyInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Parse a GitHub Issue's Validation Journey, execute the verification steps using the appropriate tools for the change type, capture evidence at each [EVIDENCE: <name>] marker, and post to the issue + GitHub PR.
$ARGUMENTS: <ISSUE_REF> [PR_NUMBER]
ISSUE_REF (required): GitHub issue ref — org/repo#<number> or full GitHub issue URL.PR_NUMBER (optional): GitHub PR number for the implementation PR. If omitted, the skill auto-detects the PR from lisa:github-read-issue's linked-PR list (preferring the most recent open PR).gh CLI authenticated.gh issue view <number> --repo <org>/<repo> --json body --jq '.body'
Extract the ## Validation Journey section (plus its ### Prerequisites, ### Steps, and ### Assertions sub-sections). Parse each step into a structured form: { index, text, evidence_marker (or null) }.
If the issue has no Validation Journey, stop and instruct the caller to run /github-add-journey <issue-ref> first.
Before starting the journey, verify each prerequisite:
curl localhost:<port>/health, pg_isready, etc.).### Prerequisites.Execute each step sequentially. Determine the verification approach based on the step text and the issue's change type (inferred from type: label, component: labels, and the body):
evidence/NN-name.txt (or .json).At each [EVIDENCE: name] marker, capture stdout/stderr to a numbered file:
{NN}-{evidence-name}.txt (or .json for structured data):
NN: zero-padded sequential number (01, 02, 03...).evidence-name: the value from [EVIDENCE: <name>] (kebab-case).Example:
evidence/
01-health-check.json
02-schema-after-migration.txt
03-rate-limit-response.txt
comment.md
Compose evidence/comment.md with:
### Assertions line to "PASS / FAIL".This template generator is shared with lisa:jira-journey (the JIRA path renders the same content as wiki markup). When the markdown comment is the canonical artifact, both vendors stay aligned.
Use lisa:github-evidence to post everything:
# Equivalent of: bash scripts/post-evidence.sh — but invoked via the Skill tool
Invoke the skill with <ISSUE_REF> ./evidence <PR_NUMBER>. It uploads the files to the pr-assets release, edits the PR's ## Evidence section, and posts a comment on the issue. The build-intake owner performs the direct claimed → done lifecycle transition after success.
Confirm:
pr-<PR>-NN-name.{txt,json}.## Evidence section with code-block embeds.comment.md.status:in-progress directly to the configured done label.| Change Type | Verification Method | Evidence Format |
|---|---|---|
| API endpoint | curl -s localhost:PORT/endpoint | JSON response |
| Database migration | psql -c "\d table" or migration output | Schema text |
| Background job | Trigger + check state | Log output |
| Library/utility | bun run test -- path/to/test | Test output |
| Security fix | Reproduce + verify fix | Request/response |
| Auth/authz | Multi-role verification | Status codes per role |
Ensure the command succeeded and produced output. Use 2>&1 to capture both stdout and stderr.
The issue may not have a Validation Journey section — run /github-add-journey <ISSUE_REF> first.
tools
--- name: harper-realtime description: This skill should be used when adding or troubleshooting Harper (HarperDB/Fabric) real-time behavior: MQTT topics, WebSocket resource subscriptions, resource publish/subscribe handlers, SSE-style streaming routes, and local subscriber verification. Pairs with harper-resources, harper-config-yaml, harper-schema-graphql, and harper-build-and-deploy. --- # Harper Realtime ## Overview Harper exposes live data through the same Resource model used for REST and
tools
--- name: harper-realtime description: This skill should be used when adding or troubleshooting Harper (HarperDB/Fabric) real-time behavior: MQTT topics, WebSocket resource subscriptions, resource publish/subscribe handlers, SSE-style streaming routes, and local subscriber verification. Pairs with harper-resources, harper-config-yaml, harper-schema-graphql, and harper-build-and-deploy. --- # Harper Realtime ## Overview Harper exposes live data through the same Resource model used for REST and
tools
--- name: harper-realtime description: This skill should be used when adding or troubleshooting Harper (HarperDB/Fabric) real-time behavior: MQTT topics, WebSocket resource subscriptions, resource publish/subscribe handlers, SSE-style streaming routes, and local subscriber verification. Pairs with harper-resources, harper-config-yaml, harper-schema-graphql, and harper-build-and-deploy. --- # Harper Realtime ## Overview Harper exposes live data through the same Resource model used for REST and
tools
--- name: harper-realtime description: This skill should be used when adding or troubleshooting Harper (HarperDB/Fabric) real-time behavior: MQTT topics, WebSocket resource subscriptions, resource publish/subscribe handlers, SSE-style streaming routes, and local subscriber verification. Pairs with harper-resources, harper-config-yaml, harper-schema-graphql, and harper-build-and-deploy. --- # Harper Realtime ## Overview Harper exposes live data through the same Resource model used for REST and