mit einem Klick
input-router
// Use the input path to select the correct downstream grounding pipeline and continue execution until the selected grounding workflow is completed.
// Use the input path to select the correct downstream grounding pipeline and continue execution until the selected grounding workflow is completed.
Unpack a ZIP archive, inventory its files, run the corresponding child grounding skill for each supported child file, and then write a real archive-level grounded.md.
Convert a raw document into a structured grounding note for downstream research and summarization.
Run focused literature and web research from a grounded note. Use when a grounded note already exists and you want targeted research results, opened-link evidence, deeper per-paper analysis materials, optional downloaded literature, and a two-stage literature output (`lit_initial.md` then refined `lit.md`).
Review a research report draft with a structured scoring rubric, run a bounded repair loop when needed, and produce the final deliverable report.
Create a rich, evidence-preserving research report draft from a grounded note and its follow-up literature result. This is the main report-writing stage of the middle pipeline, not a compression memo.
Convert a meeting audio file into a transcript bundle, then use meeting-grounding to produce structured meeting grounding outputs.
| name | input-router |
| description | Use the input path to select the correct downstream grounding pipeline and continue execution until the selected grounding workflow is completed. |
Use this skill as the unified input entry layer for the system.
This skill is a system-level dispatcher. It does not implement document parsing, transcription, table extraction, PPT grounding, archive unpacking, or meeting summarization logic by itself.
However, it does not stop at routing analysis. After identifying the correct input type, it must immediately invoke the correct downstream skill and continue the task until that downstream grounding workflow is completed.
This skill must:
This skill must not directly implement the grounding logic that belongs to downstream skills. It must not:
grounded.md by bypassing the downstream skillThose tasks belong to the selected downstream skill.
Route inputs strictly by file extension or URL pattern.
If the input is a URL instead of a local file:
| URL Pattern | Route To | Output Type |
|---|---|---|
arxiv.org/abs/ or arxiv.org/pdf/ | remote-input | .pdf |
youtube.com/watch, youtu.be, youtube.com/shorts | remote-input | .mp4/.mkv |
bilibili.com/video, b23.tv | remote-input | .mp4/.mkv |
URL routing workflow:
remote-input skill to downloadmerge_failed: true, use audio_path instead of pathNote on merge failure: When
remote-inputreturnsmerge_failed: true, the actual file for downstream routing is the audio file (.webmetc.), which routes tomeeting-audio-groundinginstead ofmeeting-video-grounding.
For local files, route strictly by file extension:
| Extension | Route To |
|---|---|
.mp3, .wav, .m4a, .webm, .aac, .ogg | meeting-audio-grounding |
.mp4, .mov, .mkv | meeting-video-grounding |
.pdf, .docx, .md, .txt | document-grounding |
.xlsx, .csv | table-grounding |
.pptx | pptx-grounding |
.zip | archive-grounding |
Do not use filename semantics, directory names, or inferred task intent to override the extension-based mapping.
| URL Pattern | Route To | Local Output |
|---|---|---|
arxiv.org/abs/ or arxiv.org/pdf/ | remote-input | PDF in remote/arxiv/ |
youtube.com/watch, youtu.be, youtube.com/shorts | remote-input | Video in remote/youtube/ |
bilibili.com/video, b23.tv | remote-input | Video in remote/bilibili/ |
| Extension | Route To |
|---|---|
.mp3, .wav, .m4a, .webm, .aac, .ogg | meeting-audio-grounding |
.mp4, .mov, .mkv | meeting-video-grounding |
.pdf, .docx, .md, .txt | document-grounding |
.xlsx, .csv | table-grounding |
.pptx | pptx-grounding |
.zip | archive-grounding |
When using this skill, you must follow this workflow:
Detect input type:
URL handling:
remote-inputremote-input skillFile handling:
Continue:
https?://(?:www\.)?arxiv\.org/(abs|pdf)/https://arxiv.org/abs/2301.07041https://arxiv.org/pdf/2301.07041.pdfhttp://arxiv.org/abs/2301.07041https?://(?:www\.)?youtube\.com/(watch|shorts)/ or https?://youtu\.be/https://www.youtube.com/watch?v=dQw4w9WgXcQhttps://youtu.be/dQw4w9WgXcQhttps://www.youtube.com/shorts/abc123https?://(?:www\.)?bilibili\.com/video/ or https?://b23\.tv/https://bilibili.com/video/BV1xx411c7JZhttps://www.bilibili.com/video/av12345678https://b23.tv/abc123When downloading video from URL (YouTube or Bilibili), the downloader may produce separate video and audio files instead of a merged video file (merge failure). This happens when:
.mp4 file without audio + .webm audio fileAfter remote-input downloads video content:
Check return values for merge_failed field:
merge_failed: false → Use path as normal (video with audio)merge_failed: true → Use audio_path instead of pathReroute based on actual file type:
audio_path is used → route to meeting-audio-groundingpath is used → route based on extension (video → meeting-video-grounding)When merge_failed: true, the local file is typically a pure audio file (.webm, .mp3, etc.):
| Returned File Type | Route To |
|---|---|
.mp3, .wav, .m4a, .webm, .aac, .ogg | meeting-audio-grounding |
.mp4, .mov, .mkv (with audio) | meeting-video-grounding |
User: https://youtube.com/watch?v=xxx
↓
remote-input downloads video
↓
Returns: {
"path": "video.mp4", // video without audio
"audio_path": "audio.webm", // separate audio file
"merge_failed": true
}
↓
Since merge_failed=true, use audio_path
↓
audio.webm extension → .webm
↓
Route to: meeting-audio-grounding
The task is not complete after:
The task is complete only after:
remote-input has successfully downloaded the contentIf the input is neither a supported URL nor a supported file extension:
The router is an entry skill, not a stopping point.
For URL inputs:
remote-input; run itFor audio inputs, do not stop after saying meeting-audio-grounding; run it
For video inputs, do not stop after saying meeting-video-grounding; run it
For document inputs, do not stop after saying document-grounding; run it
For table inputs, do not stop after saying table-grounding; run it
For PPT inputs, do not stop after saying pptx-grounding; run it
For ZIP inputs, do not stop after saying archive-grounding; run it
From the user's perspective, this skill should behave like a unified input layer:
For URL inputs:
data/raw_inputs/remote/,For local file inputs:
The user should not need to manually re-enter another instruction just because the router has already identified the correct skill.