roborev-respond

$npx mdskill add obra/dotfiles/roborev-respond

Add a comment to a roborev code review and close it

  • Solve the task of commenting and closing a roborev code review
  • Relies on the roborev CLI for job inspection and modification
  • Validates job IDs and skips panel members to avoid errors
  • Executes commands to record a comment and close the review

SKILL.md

.github/skills/roborev-respondView on GitHub ↗
---
name: roborev-respond
description: Add a comment to a roborev code review and close it
---

# roborev-respond

Record a comment on a roborev code review and close it.

## Usage

```
/roborev-respond <job_id> [message]
```

## IMPORTANT

This skill requires you to **execute bash commands** to record the comment and close the review. The task is not complete until you run both commands and see confirmation output.

These instructions are guidelines, not a rigid script. Use the conversation
context. Skip steps that are already satisfied. Defer to project-level
CLAUDE.md instructions when they conflict with these steps.

## Instructions

When the user invokes `/roborev-respond <job_id> [message]`:

### 1. Validate input

If no job_id is provided, inform the user that a job ID is required. Suggest `roborev status` or `roborev fix --list` to find job IDs. Discovery surfaces synthesis parents (and non-panel reviews), never individual panel members, so the job ID you comment on and close is the parent.

If a job_id is provided, inspect it before closing:

```bash
roborev show --job <job_id> --json
```

If `job.panel_role` is `"member"`, do **not** comment on or close that job.
Resolve the synthesis parent for the same `job.panel_run_uuid` if it is already
known from the conversation or discovery output; otherwise ask the user for the
synthesis parent ID. Only continue once the resolved job ID is a synthesis
parent or a non-panel review.

### 2. Record the comment and close the review

**If a message is provided**, immediately execute:
```bash
roborev comment --job <resolved_job_id> "<message>" && roborev close <resolved_job_id>
```

If the message contains quotes or special characters, escape them properly in the bash command.

**If no message is provided**, ask the user what they'd like to say, then execute the commands with their comment.

### 3. Verify success

Both commands will output confirmation. If either fails, report the error to the user. Common causes:
- The daemon is not running
- The job ID does not exist
- The repo is not initialized (suggest `roborev init`)
- The review is already closed (not an error, but worth noting to the user)

The comment is recorded in roborev's database and the review is closed. View results with `roborev show`.

## Examples

**With message provided:**

User: `/roborev-respond 1019 Fixed all issues`

Agent action:
```bash
roborev comment --job 1019 "Fixed all issues" && roborev close 1019
```
Then confirm: "Comment recorded and review #1019 closed."

---

**Without message:**

User: `/roborev-respond 1019`

Agent: "What would you like to say about review #1019?"

User: "The null check was a false positive"

Agent action:
```bash
roborev comment --job 1019 "The null check was a false positive" && roborev close 1019
```
Then confirm: "Comment recorded and review #1019 closed."

## See also

- `/roborev-fix` — fix a review's findings in code, then comment and close it

More from obra/dotfiles

SkillDescription
chronicle|
e2e-scenario-testingUse when verifying a running application end-to-end through its real interface — a web UI, a CLI, or a TUI — by writing and executing agent-run "scenario cards" against a freshly built instance with falsifiable assertions. Trigger on "test it end to end", "prove the UI actually works", "write/run a scenario", or after a change touches a user-facing surface that unit tests can't fully cover. Not for unit tests, pure code review, or API-only checks.
maintaining-documentationUse when documentation needs creating, checking, or maintaining — docs may have drifted from code, pre-release doc verification, updating docs after finishing code work, adding or enforcing project terminology, deciding where a new doc should live, or a routine re-audit of previously verified docs.
roborev-design-reviewRequest a design review for a commit and present the results
roborev-design-review-branchRequest a design review for all commits on the current branch and present the results
roborev-fixUse when the user asks to fix open reviews, invokes /roborev-fix, or provides job IDs; do not use when the user only pastes review findings with no request to discover or close reviews
roborev-refineIterative review-fix loop for the current branch — reviews via daemon, fixes inline, re-reviews until passing or max iterations reached
roborev-reviewRequest a code review for a commit and present the results
roborev-review-branchRequest a code review for all commits on the current branch and present the results
syncing-obsidianUse when reading or writing files in an Obsidian vault that is synced with obsync. Ensures changes are pulled before reading and pushed after writing. Also covers sync status, file history, version restore, and diagnosing sync issues.