← All skills
ai-multimodal
60 / 100 · Review before installing
Check before installing. Some of what it can do is expected: a media skill usually calls an AI service over the internet.
By duongthinh03/portfolio (GitHub) · media · 83 stars · scanned at commit b12fa58
Process and generate multimedia content using Google Gemini API. Capabilities include analyze audio files (transcription with timestamps, summarization, speech understanding, music/sound analysis up to 9.5 hours), understand images (captioning, object detection, OCR, visual Q&A, segmentation), process videos (scene detection, Q&A, temporal analysis, YouTube URLs, up to 6 hours), extract from documents (PDF tables, forms, charts, diagrams, multi-page), generate images (text-to-image with Imagen …
Works with any agent that supports SKILL.md skills.
What this skill can do
Runs commands on your computer
The author does not mention this.
Found in 25 places.
Show 17 more
- .agents/skills/ai-multimodal/scripts/media_optimizer.py, line 71
stderr=subprocess.DEVNULL, - .agents/skills/ai-multimodal/scripts/media_optimizer.py, line 74
except (subprocess.CalledProcessError, FileNotFoundError, Exception): - .agents/skills/ai-multimodal/scripts/media_optimizer.py, line 93
result = subprocess.run(cmd, capture_output=True, text=True, check=True) - .agents/skills/ai-multimodal/scripts/media_optimizer.py, line 114
except (subprocess.CalledProcessError, json.JSONDecodeError, Exception): - .agents/skills/ai-multimodal/scripts/media_optimizer.py, line 181
subprocess.run(cmd, check=True, capture_output=not verbose) - .agents/skills/ai-multimodal/scripts/media_optimizer.py, line 196
except subprocess.CalledProcessError as e: - .agents/skills/ai-multimodal/scripts/media_optimizer.py, line 238
subprocess.run(cmd, check=True, capture_output=not verbose) - .agents/skills/ai-multimodal/scripts/media_optimizer.py, line 249
except subprocess.CalledProcessError as e: - .agents/skills/ai-multimodal/scripts/media_optimizer.py, line 350
subprocess.run(cmd, check=True, capture_output=not verbose) - .agents/skills/ai-multimodal/scripts/media_optimizer.py, line 352
except subprocess.CalledProcessError as e: - .agents/skills/ai-multimodal/scripts/tests/test_failures.log, line 195
subprocess.run(['ffmpeg', '-version'], - .agents/skills/ai-multimodal/scripts/tests/test_failures.log, line 210
result = subprocess.run(cmd, capture_output=True, text=True, check=True) - .agents/skills/ai-multimodal/scripts/tests/test_media_optimizer.py, line 38
@patch('subprocess.run') - .agents/skills/ai-multimodal/scripts/tests/test_media_optimizer.py, line 44
@patch('subprocess.run') - .agents/skills/ai-multimodal/scripts/tests/test_media_optimizer.py, line 50
@patch('subprocess.run') - .agents/skills/ai-multimodal/scripts/tests/test_media_optimizer.py, line 61
@patch('subprocess.run') - .agents/skills/ai-multimodal/scripts/tests/test_media_optimizer.py, line 105
@patch('subprocess.run')
and 5 more places
Downloads and installs other software
The author does not mention this.
Found in 6 places.
Show 3 more
Can call paid AI services billed to you
This is disclosed by the author in the skill's SKILL.md or README. Expected for a media skill.
Found in 25 places.
Show 17 more
- .agents/skills/ai-multimodal/plans/251120-2323-google-models-update/phase-04-video-generation.md, line 140
from google import genai - .agents/skills/ai-multimodal/plans/251120-2323-google-models-update/phase-04-video-generation.md, line 141
from google.genai import types - .agents/skills/ai-multimodal/plans/251120-2323-google-models-update/phase-05-script-enhancement.md, line 197
from google.genai import types - .agents/skills/ai-multimodal/plans/251120-2323-google-models-update/phase-05-script-enhancement.md, line 222
from google.genai import types - .agents/skills/ai-multimodal/plans/251120-2323-google-models-update/phase-05-script-enhancement.md, line 266
from google.genai import types - .agents/skills/ai-multimodal/plans/251120-2323-google-models-update/phase-07-testing.md, line 361
from google import genai - .agents/skills/ai-multimodal/plans/251120-2323-google-models-update/phase-07-testing.md, line 384
from google import genai - .agents/skills/ai-multimodal/references/audio-processing.md, line 34
from google import genai - .agents/skills/ai-multimodal/references/audio-processing.md, line 143
from google.genai import types - .agents/skills/ai-multimodal/references/image-generation.md, line 86
from google import genai - .agents/skills/ai-multimodal/references/image-generation.md, line 87
from google.genai import types - .agents/skills/ai-multimodal/references/video-analysis.md, line 41
from google import genai - .agents/skills/ai-multimodal/references/video-analysis.md, line 69
from google.genai import types - .agents/skills/ai-multimodal/references/video-generation.md, line 67
from google import genai - .agents/skills/ai-multimodal/references/video-generation.md, line 68
from google.genai import types - .agents/skills/ai-multimodal/references/vision-understanding.md, line 42
from google import genai - .agents/skills/ai-multimodal/references/vision-understanding.md, line 151
from google.genai import types
and 5 more places
Sends data to these websites: generativelanguage.googleapis.com
The author does not mention this. Expected for a media skill.
Found in 25 places.
Show 17 more
- .agents/skills/ai-multimodal/plans/251120-2323-google-models-update/phase-04-video-generation.md, line 140
from google import genai - .agents/skills/ai-multimodal/plans/251120-2323-google-models-update/phase-04-video-generation.md, line 141
from google.genai import types - .agents/skills/ai-multimodal/plans/251120-2323-google-models-update/phase-05-script-enhancement.md, line 197
from google.genai import types - .agents/skills/ai-multimodal/plans/251120-2323-google-models-update/phase-05-script-enhancement.md, line 222
from google.genai import types - .agents/skills/ai-multimodal/plans/251120-2323-google-models-update/phase-05-script-enhancement.md, line 266
from google.genai import types - .agents/skills/ai-multimodal/plans/251120-2323-google-models-update/phase-07-testing.md, line 361
from google import genai - .agents/skills/ai-multimodal/plans/251120-2323-google-models-update/phase-07-testing.md, line 384
from google import genai - .agents/skills/ai-multimodal/references/audio-processing.md, line 34
from google import genai - .agents/skills/ai-multimodal/references/audio-processing.md, line 143
from google.genai import types - .agents/skills/ai-multimodal/references/image-generation.md, line 86
from google import genai - .agents/skills/ai-multimodal/references/image-generation.md, line 87
from google.genai import types - .agents/skills/ai-multimodal/references/video-analysis.md, line 41
from google import genai - .agents/skills/ai-multimodal/references/video-analysis.md, line 69
from google.genai import types - .agents/skills/ai-multimodal/references/video-generation.md, line 67
from google import genai - .agents/skills/ai-multimodal/references/video-generation.md, line 68
from google.genai import types - .agents/skills/ai-multimodal/references/vision-understanding.md, line 42
from google import genai - .agents/skills/ai-multimodal/references/vision-understanding.md, line 151
from google.genai import types
and 5 more places
Changes files outside its own folder
The author does not mention this.
Found in 2 places.
Safer alternatives
Low-risk skills in the same category (media) that look related. Check that one does what you need.
Install
Paste this into your terminal. It downloads exactly the version we scanned, not whatever is newest.
if [ -e ~/.agents/skills/'ai-multimodal' ] || [ -L ~/.agents/skills/'ai-multimodal' ]; then echo 'A skill folder named ai-multimodal already exists — not replacing it' >&2; false; else d=$(mktemp -d) && git clone --quiet --filter=blob:none --no-checkout 'https://github.com/duongthinh03/portfolio' "$d" && git -C "$d" checkout --quiet 'b12fa58d4453e934443f01f11c72a7461d53e4bf' -- '.agents/skills/ai-multimodal' && mkdir -p ~/.agents/skills && cp -R "$d"/'.agents/skills/ai-multimodal' ~/.agents/skills/'ai-multimodal' && rm -rf "$d"; fi
Codex reads ~/.agents/skills directly. For Claude Code, Cursor, Copilot, Gemini CLI, Antigravity or OpenCode, also link it. For Claude Code: ln -s ~/.agents/skills/'ai-multimodal' ~/.claude/skills/'ai-multimodal' (other agents: ~/.cursor/skills, ~/.copilot/skills, ~/.gemini/skills, ~/.gemini/config/skills, ~/.config/opencode/skills). Or install through the finder skill, which does both.
Badge for your README
The badge for duongthinh03/portfolio shows the score of its lowest-scoring skill.

[](https://zalavijaysinh.github.io/skilltrust/repos/duongthinh03/portfolio/)
Score history
| Date | Version | Score |
|---|
| 2026-11-07 | b12fa58 | 60 |
Also found in
Identical copies of this skill exist at:
- duongthinh03/portfolio/.claude/skills/ai-multimodal