7 Ultron skills for creative teams (full setup guide)
These 7 Ultron skills run an entire content engine end to end, research, writing, voice consistency, video, audio, ad intelligence, and persistent
These 7 Ultron skills run an entire content engine end to end, research, writing, voice consistency, video, audio, ad intelligence, and persistent memory, and this is the full walkthrough with every skill file included.
If you caught the reel breaking down the 7 Ultron skills running a whole content engine, this is the full walkthrough. Every skill file, every setting, every step. No vague one-liners, no skipped steps.
By the end you'll have Ultron set up, all 7 skills ready to call, and a real production system covering research, writing, voice consistency, video, audio, ad intelligence, and persistent memory.
Step 1: set up Ultron
Ultron is a full AI operating system that builds and runs software, agents, and content for you. It works in your browser, reads and writes files on your machine, and runs heavy jobs like video renders and audio stitching natively, all in one place. There is nothing to install and no terminal to open.
Create your Ultron account, sign in, and you are ready. Every skill in this guide runs inside Ultron with no separate downloads and no external services to wire up.
Step 2: how skills work
A skill is a folder with one markdown file inside (SKILL.md). Ultron reads that file to learn a repeatable job, so you build the SKILL.md once and it runs the same way every time.
Each one starts with YAML frontmatter:
name: voice-dna
description: Analyze writing samples and extract a reusable voice profile. Use when the user wants to capture their writing voice.
tools: Read, Write
(skill instructions go here)
The description is the most important field. Ultron reads it to decide when the skill is relevant, so include the trigger words you'll actually type.
How to add a skill
Open Ultron, go to Settings, Capabilities, Skills, Create skill. Paste the SKILL.md content and save. For skills that read and write files or run renders, Ultron handles that natively, so all seven work without any extra setup.
Which skills run where
All seven run natively inside Ultron, including the video renders and audio stitching that used to need a separate desktop app. Nothing here is locked to one surface.
The 7 skills, in order
Listed in the order they appeared in the reel. Skill 7 (Persistent Memory) is the one worth not skipping. It is honestly one of the most useful.
You don't have to install all 7. Pick the 2 or 3 that solve a real problem in your week.
1. Video
What it does. Generates a finished MP4 from a script or brief. Text animations, transitions, brand colours. Best for data viz, text-heavy reels, templated formats.
Setup. Nothing to install. Ultron scaffolds the video project the first time you use it.
Cost. Included in Ultron. Around 500MB of disk space for the project files.
One honest note. The auto-generated edit is still pretty basic. Treat it as a starting point, not the final cut. Always add your own personality on top: voiceover, captions in your style, sound effects, b-roll. Ultron handles the structure. You handle the soul.
Full SKILL.md (copy this whole block into one SKILL.md file):
Prompt
---
name: video
description: Generate a programmatic video from a script or brief. Renders MP4 in 9:16 or 16:9 with text animations and brand styling. Use when the user asks to make a video, create a reel, or render a video from a script.
tools: Bash, Read, Write
---
# Ultron video
You are an Ultron video engineer. Generate a programmatic video from the provided script or brief.
## Step 1: ensure project exists
If a video-project/ folder doesn't exist in the working directory, scaffold one with Ultron's video engine using the blank TypeScript-strict template.
## Step 2: parse the brief
Extract from the user's input:
1. Main message or headline
2. Key talking points or scenes
3. Duration (default 60s for 9:16, 30s for 16:9)
4. Aspect ratio (9:16 for reels, 16:9 for YouTube)
5. Brand colours (default cream #FAF7F2, slate #2E4057)
## Step 3: write src/Composition.tsx
A component built on the video engine primitives (absolute-fill layers, per-scene sequences, video config, frame interpolation, current-frame hook). Divide the script into sequences (one per scene). Animate text with interpolation. Apply brand colours.
## Step 4: register in src/Root.tsx
Register the composition with id "MyVideo", durationInFrames at fps * total seconds, width/height set for the chosen aspect ratio (1080x1920 for 9:16, 1920x1080 for 16:9).
## Step 5: render
Have Ultron render the composition to output.mp4. Render takes 2 to 5 minutes on typical hardware.
## Step 6: report
Print the file path of the rendered MP4 to the user.
2. Competitor ads extractor
What it does. Pulls every active Meta and LinkedIn ad your competitors are running. Diffs week-over-week (new, scaling, killed) and extracts hook patterns and offer structures. Stop guessing what's working.
Setup.
Create a competitors list. Save it as competitors.json, or paste it inline when you run the skill the first time
Cost. Included in Ultron. Start with 3 to 10 brands and scale up once you're running this every week.
Full SKILL.md:
2. Competitor ads extractor
---
name: competitor-ads-extractor
description: Pulls Meta and LinkedIn ads for a list of competitor brands, diffs week-over-week, extracts hook patterns and offer structures. Use when the user asks about competitor ads, ad library, or weekly ad scan.
tools: Bash, Read, Write
---
# Competitor ads extractor
## Inputs
Read the competitors list from competitors.json. If none exists, ask the user for 3 to 10 competitor brand URLs and create the file.
## Run
For each competitor:
1. Have Ultron pull the active Meta ads for facebook_page_url (country "AU", active status only).
2. Have Ultron pull the active LinkedIn company ads for linkedin_company_url.
3. Save raw output to runs/YYYY-MM-DD/<brand>.json
## Diff
Compare today's run to the most recent previous run. For each brand surface:
- New ads launched this week (in today, not in last)
- Scaling ads (live in both, longer run-time, more variants)
- Killed ads (in last, not in today)
## Synthesise
Group new and scaling ads across competitors. Output a markdown brief with:
1. Hook patterns. First 5-10 words of every ad. Cluster by pattern (question, stat, callout, fear, curiosity).
2. Offer structures. Headline + CTA + price point. Note free trials, lead magnets, tripwires.
3. Visual formats. Static, carousel, video, UGC, talking head.
4. What's working. Brands with 3+ scaling ads of the same hook style.
5. Steal list. Top 5 hooks worth adapting.
## Output
Save brief to briefs/YYYY-MM-DD-brief.md. Print the steal list to chat.
3. Deep research
What it does. Takes a topic. Runs multiple web searches, reads top sources, returns one tight brief with executive summary, cited findings, gaps, and 5 ready-to-film content angles. Real URLs, no hallucinations.
Setup. Nothing to install. Ultron searches the live web natively.
Cost. Included in Ultron.
Full SKILL.md:
Prompt
---
name: deep-research
description: Researches a topic using web search, synthesises findings with citations, and generates 5 content angles. Use when the user asks for research, a brief, sources on a topic, or content angles.
tools: Bash, Read, Write
---
# Deep research
## Input
Topic from user. If vague, ask one clarifying question (audience, depth, recency window).
## Search
Run 3 Ultron web searches with different angles. Use advanced depth, up to 8 results each, and include a synthesised answer.
Query angles:
1. Plain topic plus current year
2. Topic plus "data," "stats," or "study"
3. Topic plus "what nobody talks about" or "underrated"
## Read deeper
For the 3 to 5 highest-scoring URLs, have Ultron extract the full page contents.
## Synthesise
Output a markdown brief with:
1. Executive summary. 3 to 5 sentences on the current state of play.
2. Key findings. 5 to 8 bullets, each cited as [source](url).
3. Counterpoints. Anything contradicting consensus.
4. Gaps. What's missing or stale in public coverage.
5. Five content angles. Each with a hook line, format (reel, carousel, long-form), and 1-line payoff.
## Output
Save to briefs/YYYY-MM-DD-<slug>.md. Print executive summary and 5 angles to chat.
4. Voice DNA
What it does. Reads 10 to 20 samples of your writing (captions, posts, newsletters, transcripts) and extracts the specific signals that make your voice yours. Saves a reusable profile that every other content skill reads.
Install this one first. Every other skill on this list works better with it.
Setup. No keys, no extras. Runs entirely on Ultron.
Cost. Included in Ultron.
Full SKILL.md:
Prompt
---
name: voice-dna
description: Analyze 10-20 samples of the user's writing and produce a structured voice profile other skills can read. Use when the user says /voice-dna or wants to capture their writing voice.
tools: Read, Write
---
# Voice DNA
You are extracting a reusable voice signature from a user's existing writing. The output is a reference document, not a vibe summary. Be analytical. Pull concrete examples and quote them verbatim.
## Step 1: gather samples
Ask the user how they want to provide samples:
- Paste 10 to 20 pieces directly in chat
- Or give a folder path. Read every .md and .txt file in it.
If fewer than 10 samples, warn the profile will be thinner than ideal but proceed.
## Step 2: analyze across all samples
1. Sentence length. Average words per sentence. Range. Sentence-fragment frequency as %.
2. Vocabulary level. Formality on a 1-10 scale with justification. Top 20 distinctive words and bigrams. Skip stopwords.
3. Tonal markers. Place voice on three axes: formal-casual, warm-edgy, contrarian-agreeable. Quote evidence per axis.
4. Pacing. Hook openers, mid-piece pivots, sign-offs. Quote 3-5 examples of each.
5. Anti-patterns. Words and moves the user never uses. Cross-check common tics: em dashes, "in today's world," "let's dive in," "the truth is," exclamation points, hashtags.
6. Signature moves. 5 to 10 repeatable patterns unique to this voice. Quote one occurrence each.
7. Audience address. Frequency of "you" vs "we" vs "I." Direct vs indirect.
8. Emotional range. Which emotions show up, which are absent. One quoted example per emotion present.
## Step 3: write the profile
Save to ~/.ultron/voice-profile.md. Overwrite if it exists.
Sections in order: Snapshot (one paragraph another skill can paste at the top of a system prompt), Sentence Mechanics, Vocabulary, Tonal Markers, Pacing, Signature Moves, Anti-patterns, Audience Address, Emotional Range, Reference Lines (5 fully-quoted lines that best capture the voice).
## Step 4: confirm
Print the file path and the snapshot section. Tell the user to rerun /voice-dna any time their voice evolves.
5. Podcast
What it does. Paste a long-form piece. Ultron writes a two-host conversation, voices each line, and stitches the audio. You get an 8 to 12 minute podcast episode without recording.
Setup. Nothing to install. Ultron generates the voices and stitches the audio natively.
Default voice pairs:
Warm + analytical: a warm host and an analytical host
Energetic + grounded: an energetic host and a grounded host
Cost. Included in Ultron.
Full SKILL.md:
Prompt
---
name: podcast
description: Turn any long-form text into a two-host podcast episode. Generates a conversational script, voices each line, and stitches the audio into a finished MP3. Use when the user wants to convert a blog post, newsletter, or article into podcast audio.
tools: Bash, Read, Write
---
# Ultron two-host podcast
## Inputs
User gives a file path or pasted text. If unclear, ask which.
## Voices (defaults)
HOST_A: warm voice
HOST_B: analytical voice
## Step 1: read the source
Read the file or use the pasted text directly.
## Step 2: generate the script
Write a natural two-host conversation, ~1500 to 1800 words (8 to 12 min at 150 wpm).
Structure:
- Cold open. Host A hooks the topic in one sentence.
- Intro. Both hosts greet, name the show, set up.
- Body. 3 to 5 segments. Each = Host A introduces, Host B reacts/challenges/builds, 4 to 8 exchanges.
- Mini-debate. At least one moment of respectful disagreement.
- Wrap. Key takeaway from each host. Sign-off.
Format every line on its own row, prefixed exactly [HOST A] or [HOST B]. No stage directions, no music cues, no host names inside dialogue.
Save script to ./podcasts/script_<timestamp>.txt
## Step 3: voice each line
Create ./podcasts/audio_<timestamp>/ as a working folder.
For each line: use the matching voice, strip the [HOST X] prefix, save as 0001.mp3, 0002.mp3, etc. (zero-padded for concat order).
Have Ultron voice the text to an MP3 at 44.1kHz 128kbps using the multilingual voice model, and save the response as the indexed MP3.
If a line fails, retry once, then skip and log.
## Step 4: stitch the audio
Build filelist.txt inside the audio folder, one line per clip:
file '0001.mp3'
file '0002.mp3'
Then have Ultron concatenate the clips in order into ../episode_<timestamp>.mp3
## Step 5: report
Tell the user: final file path, episode length, approximate character count used, path to script file in case they want to tweak.
6. Content engine
What it does. Takes one pillar piece (article, transcript, podcast). Produces 8 platform-ready formats in one pass: LinkedIn post, X thread, Instagram caption, email newsletter, short-form video script, blog intro, pull-quote carousel, cold outreach. Reads your Voice DNA profile so every format sounds like you.
Setup. Install Voice DNA first (skill #4). Content Engine reads ~/.ultron/voice-profile.md on every run. No keys, no extras.
Cost. Included in Ultron.
Full SKILL.md:
Prompt
---
name: content-engine
description: Turn one pillar piece into 8 platform-ready formats (LinkedIn, X thread, IG caption, email, short-form script, blog intro, pull-quote carousel, cold outreach). Use when the user wants to repurpose a piece or spin one article into multi-platform content.
tools: Read, Write
---
# Content engine
Voice consistency comes from the profile. Hook variation comes from you.
## Step 1: load voice
Read ~/.ultron/voice-profile.md if it exists. Apply the snapshot, signature moves, and anti-patterns to every output.
If missing, surface this warning before proceeding: "No voice profile found. Run /voice-dna first for best results. Continuing with neutral defaults."
## Step 2: get the pillar piece
Ask the user to paste content or give a file path. Read the full piece before drafting.
## Step 3: extract candidate hooks
Pull 2 to 3 hook candidates from the pillar. Look for: most contrarian claim, most specific number or proof, most relatable pain point, most surprising reframe. List them at the top of working notes. Different hooks go to different formats so the 8 outputs don't all open the same way.
## Step 4: draft 8 formats
Hard rule: each format gets a different opening hook.
1. LinkedIn post. ~1300 chars. Hook + body with line breaks every 1-2 sentences + CTA. No hashtags. No emojis unless voice profile uses them.
2. X/Twitter thread. 5 to 7 posts, each under 280 chars. Post 1 = hook. Post 2 = setup. 3-6 = payoff. Final = takeaway or CTA. No "Thread:" or "1/" prefix unless voice uses them.
3. Instagram caption. All lowercase except "I" and proper nouns. 2 to 3 emojis. Casual register. 4 to 8 short paragraphs. Hook opener, soft CTA close.
4. Email newsletter. Subject under 50 chars, curiosity-led. Body 200 to 400 words. Hook paragraph, story or context, lesson, sign-off.
5. Short-form video script. 45 to 75 seconds spoken (110 to 180 words). 4-beat structure: hook, context, reveal, CTA. Plain spoken text only.
6. Blog intro. First 200 words that earn the click-through. Hook with promised payoff. Stakes by word 75. Tease framework by word 150. End on forward-pull line.
7. Pull-quote carousel. 5 to 7 slides, max 20 words per slide. Slide 1 = hook quote. Final = takeaway or CTA. Quotes drawn from pillar, not invented.
8. Cold outreach angle. 60-word DM or email opener. Specific to one persona implied by the pillar. Lead with relevance, end on a low-friction ask.
## Step 5: save outputs
Create ./content-engine-output/<timestamp>/ (timestamp YYYY-MM-DD-HHMM). Write each format to its own file: 01-linkedin.md, 02-twitter-thread.md, 03-instagram.md, 04-email.md, 05-short-form-script.md, 06-blog-intro.md, 07-carousel.md, 08-cold-outreach.md. Also write 00-hooks.md with the candidate hooks and which hook went where.
## Step 6: print to chat
Paste all 8 outputs in chat. Lead with candidate hooks, then the 8 formats. If voice-profile.md was missing, repeat the warning at the bottom.
7. Persistent memory (the one missed in the reel)
What it does. Saves everything you tell Ultron across sessions and quietly reinjects the relevant bits next time. You stop re-explaining your business, your voice, last week's decisions every time. A long-term notebook Ultron reads from before answering.
Setup. Nothing to install. Ultron remembers across sessions natively. You now have save_memory, search_memory, and list_memories as tools Ultron can call.
Verify it works. In a fresh session: "Remember that my brand voice is warm and approachable, and my main offer is a $497 automation sprint." Close the session. Open a new one. Ask: "What's my brand voice and main offer?" If wired correctly, Ultron pulls the facts back without you re-pasting.
Cost. Included in Ultron.
A note: Ultron already has a built-in auto-memory system (markdown files in your project memory folder) that handles a lot of this for free. Persistent memory adds cross-project search, semantic retrieval, and a queryable knowledge graph that the built-in system doesn't.
No SKILL.md needed. Persistent memory is native to Ultron, not a skill. The setup above is the entire thing.
Putting it all together
Say you're Maya, a marketing consultant trying to publish across 4 platforms a week. The chain you'd run:
/voice-dna once at the start to lock in your voice profile
/deep-research [topic] for the brief on what you're posting about that week
/content-engine [brief] to spin out 8 platform formats, all in your voice
/podcast [article] to turn the long-form version into a podcast
/video [script] to render a video version of the short-form script
/competitor-ads-extractor weekly to see what's working in your niche
Persistent memory humming in the background, keeping context alive across every session
All of it runs inside Ultron, so there are no separate tool subscriptions to juggle and nothing to stitch together by hand.
Setup checklist
0 of 9
Tick in order. Skip what you don't need yet.
If you only do one thing today, run Voice DNA. It's the multiplier on every other skill.
Run this on autopilot.
Everything in this guide becomes an agent inside Ultron: set it up once, keep it running. You review, it executes.