wavecap-review

majiayu000's avatarfrom majiayu000

Review and correct WaveCap transcriptions. Use when the user wants to mark transcriptions as verified, add corrections, or manage the review workflow.

0stars🔀0forks📁View on GitHub🕐Updated Jan 5, 2026

When & Why to Use This Skill

The WaveCap Review skill streamlines the post-transcription quality assurance workflow by enabling users to verify, correct, and manage automated speech-to-text outputs. It solves the problem of transcription inaccuracies and manual oversight by providing a structured interface to filter low-confidence segments, update review statuses, and maintain a high-fidelity audit trail for all transcription edits.

Use Cases

  • Quality Assurance: Identify and retrieve transcriptions with low confidence scores (e.g., below 0.7) to manually correct errors and ensure text accuracy.
  • Workflow Management: Transition transcription statuses from 'pending' to 'verified' or 'corrected' to signal readiness for downstream publishing or archiving.
  • Audit Tracking: Log reviewer names and timestamps for every correction to maintain accountability and track progress in professional transcription projects.
  • Batch Review: Efficiently process large volumes of unreviewed audio data by filtering for pending items and performing bulk status updates.
namewavecap-review
descriptionReview and correct WaveCap transcriptions. Use when the user wants to mark transcriptions as verified, add corrections, or manage the review workflow.

WaveCap Review Skill

Use this skill to manage the transcription review workflow in WaveCap.

Authentication Required

Review operations require editor authentication:

# Get auth token
TOKEN=$(curl -s -X POST http://localhost:8000/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{"password": "YOUR_EDITOR_PASSWORD"}' | jq -r '.token')

Review Status Values

  • pending - Not yet reviewed (default)
  • corrected - Reviewed and corrected
  • verified - Reviewed and confirmed accurate

Update Transcription Review

Mark as Verified (transcript is accurate)

curl -s -X PATCH "http://localhost:8000/api/transcriptions/{TRANSCRIPTION_ID}/review" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "reviewStatus": "verified",
    "reviewer": "your_name"
  }' | jq

Mark as Corrected (provide corrected text)

curl -s -X PATCH "http://localhost:8000/api/transcriptions/{TRANSCRIPTION_ID}/review" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "correctedText": "The corrected transcription text here",
    "reviewStatus": "corrected",
    "reviewer": "your_name"
  }' | jq

Clear Review (reset to pending)

curl -s -X PATCH "http://localhost:8000/api/transcriptions/{TRANSCRIPTION_ID}/review" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "correctedText": null,
    "reviewStatus": "pending",
    "reviewer": null
  }' | jq

Find Transcriptions to Review

Get pending transcriptions (unreviewed)

curl -s "http://localhost:8000/api/streams/{STREAM_ID}/transcriptions?limit=50" | \
  jq '[.transcriptions[] | select(.reviewStatus == "pending")] | .[:10]'

Get low-confidence transcriptions (likely need review)

curl -s "http://localhost:8000/api/streams/{STREAM_ID}/transcriptions?limit=100" | \
  jq '[.transcriptions[] | select(.confidence < 0.7 and .reviewStatus == "pending")] | sort_by(.confidence) | .[:10] | .[] | {id, text, confidence}'

Count by review status

curl -s "http://localhost:8000/api/streams/{STREAM_ID}/transcriptions?limit=500" | \
  jq '.transcriptions | group_by(.reviewStatus) | map({status: .[0].reviewStatus, count: length})'

Review Response Format

After updating a review, the response contains the updated transcription:

{
  "id": "transcription-uuid",
  "streamId": "stream-id",
  "text": "original transcription",
  "correctedText": "corrected transcription",
  "reviewStatus": "corrected",
  "reviewedAt": "2025-01-15T12:30:00Z",
  "reviewedBy": "reviewer_name",
  ...
}

Batch Review Workflow

For reviewing multiple transcriptions:

# 1. Get pending transcriptions with low confidence
PENDING=$(curl -s "http://localhost:8000/api/streams/{STREAM_ID}/transcriptions?limit=100" | \
  jq -r '[.transcriptions[] | select(.confidence < 0.8 and .reviewStatus == "pending")] | .[].id')

# 2. Loop through and review each
for ID in $PENDING; do
  echo "Reviewing: $ID"
  # Get the transcription
  curl -s "http://localhost:8000/api/streams/{STREAM_ID}/transcriptions?limit=500" | \
    jq --arg id "$ID" '.transcriptions[] | select(.id == $id) | {text, confidence, recordingUrl}'

  # Mark as verified (or prompt for correction)
  # curl -s -X PATCH "http://localhost:8000/api/transcriptions/$ID/review" ...
done

Tips

  • Always include a reviewer name for audit trail
  • Use correctedText: null to clear a previous correction
  • Low confidence scores (< 0.7) often indicate transcription errors
  • The reviewedAt timestamp is set automatically by the server
wavecap-review – AI Agent Skills | Claude Skills