Skip to main content
ClaudeWave
Skill6.9k repo starsupdated 3d ago

short-drama-delivery-audit

Internal deterministic delivery gate for meta-short-drama. Verifies real-provider image/video receipts, parent-owned paid-submission dispositions, runtime fallback evidence, decodability, and content-versus-final duration with ffprobe.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/opensquilla/opensquilla /tmp/short-drama-delivery-audit && cp -r /tmp/short-drama-delivery-audit/src/opensquilla/skills/bundled/short-drama-delivery-audit ~/.claude/skills/short-drama-delivery-audit
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# short-drama-delivery-audit

Internal machine-owned gate used immediately before `meta-short-drama`
publishes its final video. It does not call a model and never contacts a media
provider.

The helper parses the canonical `script.txt` to identify active shots and
their content durations. It then requires sanitized real-provider receipts
for the reference image, every active shot image, and every active shot video;
rejects placeholders, missing provider request/job IDs, and any runtime
fallback substitution; and uses `ffprobe` to confirm that shot MP4s and the
final MP4 are decodable and have the promised durations.

When Seedance rejects a shot under provider policy, its sidecar contains only
the bounded reason `provider_policy_rejected` and an allowlisted policy code.
The audit preserves those two fields, marks the shot not generated, and
reports `VIDEO_POLICY_REJECTED`; raw provider text, signed URLs, request IDs,
and secrets are discarded before this boundary.

The parent scheduler supplies one bounded disposition per paid step. The only
accepted values are `safe_no_submit`, `maybe_accepted`, and `receipt`. It also
supplies a separate bounded SHA-256 proof only when the exact bundled paid
subprocess emitted a sanitized receipt on this invocation and the emitted JSON
matched the resulting sidecar. A conclusive generated/policy receipt upgrades
the public asset disposition to `confirmed` only when that current-run proof
matches. The reserved runtime slots cannot be declared as plan steps.

When `safe_no_submit` accompanies a missing receipt and local fallback, the
audit preserves the degraded provenance but does not claim that the provider
may have billed the user. A `maybe_accepted`, `receipt`, missing, or malformed
disposition without a conclusive, current-run-proven receipt remains
fail-closed: the audit emits
`PAID_SUBMISSION_STATUS_UNKNOWN`, a sanitized asset-name list, and a static
instruction to check provider history before starting a replacement. Raw
fallback output, child failure text, and provider text never cross into the
verdict. A stale or forged workspace sidecar by itself is reported as
`RECEIPT_NOT_PROVEN_CURRENT_RUN` and can never become `confirmed`.

Receipt or media evidence for a shot absent from the canonical script is
reported as `UNEXPECTED_PAID_ASSET` and listed in `unexpected_paid_assets`.
An incomplete receipt for that unexpected asset also carries the same
fail-closed unknown-billing warning.

`OVERVIEW.DURATION_S` is story-content duration. The meta workflow adds a
fixed two-second title and two-second ending, so the expected final duration
is content duration plus four seconds. Small encoder timestamp differences are
tolerated, but a three-second final file cannot satisfy a seven-second expected
delivery.

## Inputs

- `with.run_dir`: runtime-owned short-drama output directory.
- `with.runtime.paid_submission_dispositions`: bounded JSON object produced by
  the parent scheduler under its reserved output key. It contains only static
  step IDs and fixed disposition values.
- `with.runtime.paid_submission_receipt_proofs`: bounded JSON object produced
  by the parent scheduler under a second reserved output key. It contains only
  static step IDs and canonical `sha256:<hex>` receipt digests from exact
  bundled subprocess output captured during this run.
- `with.runtime.fallback_outputs`: mapping of shot number to the corresponding
  fallback step output. A non-empty value proves that local substitution ran.

## Output

One JSON verdict with `status` (`verified`, `degraded`, or `blocked`),
`verified`, `media_provenance`, active shots, content/final durations,
whitelisted provider identifiers, per-asset `paid_submission_dispositions`,
`safe_no_submit_assets`, `may_have_been_billed`,
`paid_submission_status_unknown_assets`, `unexpected_paid_assets`,
`billing_guidance`, and bounded issue codes. Raw prompts, provider responses,
fallback output, signed URLs, and credentials are never emitted.
advanced-dubbing-studioSkill

Submit audio or video for multilingual dubbing, poll status, and download dubbed audio. Use when the user asks for dubbing, 多语言配音, 视频翻译配音, 译制片, or wants a source clip dubbed into another language.

ai-video-scriptSkill

Generate a structured short-video shooting script from a topic. Emits a strict, machine-parseable shot list (3 shots by default) with image prompt + video prompt + voiceover + on-screen text per shot. Trigger when the user asks for a video script, 分镜, 短视频文案, AI视频, 短剧脚本, or wants visual prompts ready for image/video generation.

cronSkill

Use when the user asks to schedule recurring tasks, one-off reminders, timers, or cron-style jobs through the OpenSquilla cron tool.

deep-researchSkill

Multi-round research with explicit methodology, evidence tracking, and citation-tagged synthesis. Trigger on 'deep dive', 'research report', 'literature review', 'investigate X across sources', 'multi-round investigation'. Distinct from the `summarize` skill, which is a single-pass condensation; this skill maintains a state file across iterations, tracks coverage, and produces a long-form report with per-claim citations. Three execution stages: plan (scope into sub-questions), iterate (record evidence per round), compile (synthesize report). The skill itself does not fetch the web — it tells the host agent which fetches to perform via OpenSquilla's existing web tools, and records what comes back.

docxSkill

Read, edit, or create Microsoft Word `.docx` files. Trigger this skill whenever the user mentions a Word document, .docx file, contract, report, brief, memo, or asks to extract text, modify an existing doc, generate one from a brief, or audit tracked changes. Three execution paths: text-and-structure extraction, in-place edit-by-run (preserves styles), and create-from-scratch with python-docx. Falls back to OOXML unzip-and-patch for layout work python-docx cannot reach.

git-diffSkill

Capture the current git diff (staged, working-tree, or staged file list) as text. Direct shell call for workflows that need repository diffs without an LLM agent loop.

githubSkill

GitHub operations via `gh` CLI: issues, PRs, CI runs, code review, API queries. Use when: (1) checking PR status or CI, (2) creating/commenting on issues, (3) listing/filtering PRs or issues, (4) viewing run logs. NOT for: complex web UI interactions requiring manual browser flows (use browser tooling when available), bulk operations across many repos (script with gh api), or when gh auth is not configured.

history-explorerSkill

Query the per-turn DecisionEntry log for skill co-occurrence patterns, meta-skill usage stats, and the router fixture corpus. Returns a JSON summary suitable for downstream LLM consumption. Used by meta-skill-creator's harvest step but also useful standalone for 'which skills did I use most this week?'