interview-tightener
Tighten an interview by 20-30% without losing meaning.
Skill by explicit09
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/explicit09-interview-tightener
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/interview-tightener
What's inside
- Skill name
interview-tightener- Description
- Tighten an interview by 20-30% without losing meaning. Removes filler, dead air, and tangents while preserving editorial spine.
- License
- Apache-2.0
- Instructions
- 143 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (2)
- SKILL.md
- dead_air_filter.py · scripts/
SKILL.md (first lines)
# Interview tightener
You are tightening an existing interview. The goal is **20-30%
shorter**, with the editorial spine intact and the pacing
noticeably crisper. You do this by removing three things, in order
of priority:
1. **Dead air** > 1.0s (use the audio-energy index)
2. **Filler clusters** (um/uh/repeated false-starts)
3. **Production/meta-direction chatter** ("you can just say...",
restart/setup talk, planning the next question, instructions about
how to answer)
4. **Low-score tangents** (`find_beat(kind="tangent", min_score < 0.5)`)
Don't cut content for length alone. If the source is 60 minutes of
gold, the tightened version is 60 minutes. The 20-30% target is a
ceiling, not a quota.
## The 4-step playbook
### 1. Map the cuts
Call `bash` with the `dead_air_filter.py` script bundled with this
skill (resolved against the absolute path the L2 load returned —
typically `<skill-root>/scripts/dead_air_filter.py`):
```bash
python3 <skill-root>/scripts/dead_air_filter.py \
/tmp/montage-real/yt-test/index/audio-energy/raw/<asset>.json
```
It returns a JSON list of `{start_s, end_s, duration_s, reason}`
trim candidates. Reasons: `dead_air`, `filler_cluster`. Sort by
duration desc — the longest cuts give the most return-per-edit.
If topic, gaze, shot, or frame-quality sidecars exist, use them as veto
signals before cutting: preserve topic-boundary pauses, direct-address
moments, sharp close-ups, and motion-heavy shots unless the transcript
confirms they are dead time. Montage's wider index corpus is useful here
because pacing is not just silence math.
### 2. Add tangent candidates
```
find_beat(kind="tangent")
```
Filter to score < 0.5. For each, call `inspect_moment` and check the
`dependencies` field. If the tangent is a dependency for a later
high-score beat, **don't cut it** — it's setup. Otherwise add it to
the cut list.
Also scan editorial-moments/topic/transcript around the same ranges for
in-interview production chatter. If someone stops the interview to plan
the intro, coach an answer, discuss whether to restart, or talk about
recording structure, add that range to the cut list even if it is spoken
content rather than silence. Verify the surrounding question and answer
still connect after the removal.
### 3. Apply the cuts
Sort all cuts by start_s ascending. Apply them via `apply_edl` with
`Trim Clip` ops anchored by `transcript_snippet` (the snippet from
the cut's surrounding transcript) OR by `clip_uuid` (look up via
`view_timeline`). Commit them in batches of ~5 ops per `apply_edl`
call so a single bad anchor doesn't roll back the whole batch.
After every batch, call `view_timeline` and report:
```
Cut batch 3/8: -47s of dead air, -12s of filler.
Running total: removed 4m 18s (8.2% of original).
```
### 4. Render + report
Once the cut list is exhausted, ask the user to confirm the timeline is
ready for final render unless they already gave explicit render approval
in the same turn. Then render `scope="timeline"`, poll until done, and
ask the user to review the finished output before treating it as
deliverable. Final report:
```
Tightened from 47:30 to 36:18 (-23.6%).
Removed:
- 4m 12s dead air (54 cuts)
- 1m 48s filler clusters (37 cuts)
- 5m 12s low-score tangents (3 cuts)
```
## Editorial conventions
- **Floor on dead-air detection**: 1.0s. Below that you're cutting
natural breath rhythm.
- **Filler cluster definition**: 2+ filler tokens within 1s of each
other. Single ums in clean speech are kept.
- **Don't cross speaker boundaries** with a single trim. Each cut
should land entirely within one speaker's turn.
- **Preserve laughter** — it's social glue. Even if it reads as
"dead air" by RMS, audio-energy's `is_laugh` flag (when the
indexer populates it) is your override.
- **Trim is one-way**: `Trim Clip` only narrows. Use `Untrim Clip`
if you need to widen back. Mistakes are recoverable.
## When NOT to use this skill
- The interview already feels tight. Run `view_episode` and look at
`mean_segment_s` — anything < 8s suggests the speaker is already
pacy, and there's not 30% to cut without damaging meaning.
- The asset is < 5 minutes. Cut-pacing matters less than the
individual edit decisions; the tightener's batch approach is
overkill.
## You are done when...
Persist until ALL of these are true. A "20% tightened" report with
half the cuts un-applied is a lie — finish the cut list before
handing back.From explicit09/montage, Apache-2.0.
More from explicit09/montage
- 0.523score
color-corrector
explicit09
Analyze footage color/exposure problems and apply clip-level graph-native color correction or LUTs through EDL ops.
SkillBFreshness: BClaude Code +9 - 0.517score
podcast-episode-producer
explicit09
End-to-end production of a published podcast episode from raw recording.
SkillBFreshness: BClaude Code +9 - 0.504score
generated-explainer
explicit09
Use when the user wants a generated educational, technical, mathematical, or visual-essay video rather than an edit built primarily from recorded footage.
SkillBFreshness: BClaude Code +9 - 0.476score
pacing-optimizer
explicit09
Optimize pacing by removing dead zones, preserving intentional pauses, and applying safe speed changes based on content type and speech rate.
SkillCFreshness: CClaude Code +9 - 0.476score
auto-cutter
explicit09
Extract the real episode from a long raw recording, then apply conservative mechanical cleanup for silence, fillers, and false starts.
SkillCFreshness: CClaude Code +9 - 0.476score
beat-sync-editor
explicit09
Edit footage to music by creating beat-aligned cut plans, motivated transitions, speed accents, and verification of timing tolerance.
SkillCFreshness: CClaude Code +9 - 0.476score
drawn-artifacts
explicit09
Generate charts, data visualizations, animated counters, and polished motion-graphic assets with open-source generators (matplotlib, Manim, Lottie, Motion…
SkillCFreshness: CClaude Code +9 - 0.476score
meeting-highlights
explicit09
Create concise meeting highlight cuts and reports focused on decisions, action items, blockers, and executive-ready context.
SkillCFreshness: CClaude Code +9 - 0.476score
overlay-animation
explicit09
Plan generated motion-graphic overlay assets as Montage media overlays, with per-slot briefs, exact durations, and EDL insertion hints.
SkillCFreshness: CClaude Code +9 - 0.476score
podcast-editor
explicit09
Polish podcast or interview audio/video by tightening silence, removing filler, applying speed only where safe, balancing speakers, and verifying loudness.
SkillCFreshness: CClaude Code +9 - 0.474score
b-roll-suggester
explicit09
Find visual cutaways for spoken content from an EXISTING IN-PROJECT B-roll library (separate cutaway assets imported alongside the primary recording).
SkillCFreshness: CClaude Code +9 - 0.471score
multicam-director
explicit09
Sync N camera angles by waveform, then auto-direct a flattened single-track program cut from the diarized transcript, applied graph-natively through EDL ops.
SkillCFreshness: CClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Jun 7, 2026 (4 months ago)
- Last release
- Jun 10, 2026 (4 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/explicit09/montage
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from explicit09
- 0.523score
color-corrector
explicit09
Analyze footage color/exposure problems and apply clip-level graph-native color correction or LUTs through EDL ops.
SkillBFreshness: BClaude Code +9 - 0.517score
podcast-episode-producer
explicit09
End-to-end production of a published podcast episode from raw recording.
SkillBFreshness: BClaude Code +9 - 0.504score
generated-explainer
explicit09
Use when the user wants a generated educational, technical, mathematical, or visual-essay video rather than an edit built primarily from recorded footage.
SkillBFreshness: BClaude Code +9 - 0.476score
auto-cutter
explicit09
Extract the real episode from a long raw recording, then apply conservative mechanical cleanup for silence, fillers, and false starts.
SkillCFreshness: CClaude Code +9 - 0.476score
beat-sync-editor
explicit09
Edit footage to music by creating beat-aligned cut plans, motivated transitions, speed accents, and verification of timing tolerance.
SkillCFreshness: CClaude Code +9 - 0.476score
drawn-artifacts
explicit09
Generate charts, data visualizations, animated counters, and polished motion-graphic assets with open-source generators (matplotlib, Manim, Lottie, Motion…
SkillCFreshness: CClaude Code +9
Cite this page
interview-tightener skill. Agent Mart. https://agentmart.dev/skills/explicit09-interview-tightener (last updated 2026-10-24)