Skip to content

Building Your Own CueCam Tools - A Video Outreach App with Claude

CueCam is a teleprompter script-writing app with a special ability - a url schema that allows other tools to generate scripts.
I wanted to find new people to tell about my work by creating short video intros. So I decided to build a tool with Claude Code that finds new friends, shows me their stuff, and generates a ‘hello’ video script.
You probably have different needs, but you can use a similar approach.

TLDR:

CueCam has a handy option in its url schema: cuecam://script/[your-script-content]
This means you can create an AI tool to bootstrap personalised outreach messages with a CueCam script.

Do I have to write code?

Hopefully not? The robot should be able to do most of it!
Chances are you’ll end up troubleshooting something or other - for example YouTube API configuration - but you might not have to write any code yourself.

What are we building?

We’re putting together an outreach engine that
finds people to tell about our work
creates an outreach email, connection request or comment
creates a CueCam script if I want to send a video
improves over time as it learns our tone of voice and outreach preferences
[optional] show’s how much I’m paying, and gamifies the experience
Here’s what my version looks like. I hit “Discover New Prospects” to get a list of new prospects for the day. Emails are generated for me.

streak

An email - we have suggested email, the ability
email
W can generate a CueCam script (this one is not good).
script
And here’s what that looks like when it opens in CueCam. Now we can hit record and make a quick video, automatically share any pictures or videos, and sketch on things using Video Pencil on the iPad.
inside-cuecam
Ready?

What are we using?

This is a chance to try out , a command line tool that can set up and edit a codebase to build software based on your prompts.
You’ll be running commands in a terminal which could be unnerving if you haven’t done it before, but it’s not that difficult and will make you feel like a hacker.

Getting started

Follow the instructions that you’re most comfortable with on the Claude Website.
It will look like this (but you should click into the website - don’t just run random commands like this from the internet if you don’t know what they mean!)
install-claude

So what’s the plan?

Here’s my initial prompt, which I think gives you the picture.

▐▛███▜▌ Claude Code v2.0.37
▝▜█████▛▘ Sonnet 4.5 · Claude Pro
▘▘ ▝▝ /Users/mf/code/cuecam/outreach

> This project is for outreach to media, influencers and small creators. I want to create a project that leverages an LLM to do research online, find contact information and provide me with a daily list of prospective contacts, including a preview of any relevant content, and a suggested email.
My main project is at https://cuecam-presenter.com - I'm the solo developer and content creator for my platform. How do we start?
Then it started asking questions and I answered them. I picked my preferred tech stack but you can probably just pick the default (node or python probably). Here you see me adding some of the emotions of it. I have a tendency to specify the odd ‘how’ (cron job) but I ended up reneging on a lot of this and it wasn’t a problem.
tech-stack
It’s gonna start generating a webapp for you. Here it’s setting up my database.
migrations
I’m actually not going to go into too much detail here, as you will likely want something a little different.
The great thing about this process is that you can try it out very quickly, and then refine it as you go on.
I soon realised I needed different behaviours and discovery for Reddit vs LinkedIn vs YouTube, so some stuff is done via the Google Search API, other stuff via YouTube’s API.
It will want to set up environment keys for API access, but it’s easy to ask it how!
You can keep requests high level - e.g. for the ‘streaks’ thing, I just said ‘can you gamify this a bit to keep me coming back?`. Then once I started using it on my phone I realised I wanted to say ‘add pull to refresh’.
You’ll say things like “There’s not much feedback when searching for leads” and it will add a progress indicator. I initially wanted it to open an email backend but in the end I went for a mailto: link (filling in the email address, subject and body).

Generating CueCam Scripts

Here’s what I said to get the video scripts.
> add a new button to the lead panels to create a video script. this should be split into paragraphs representing teleprompter cue cards. there should be a paragraph that includes the link. the first should be like "hi (lead name), I'm ... I found your..." etc... with a view to including this video in a short email as an introduction. Cards are separated by two newlines.
And tell it how to open the result in CueCam:
Scripts can be opened in the CueCam Mac app using the url scheme `cuecam://script/[percent escaped script]`
This should be all it needs.
I subsequently asked mine to make the script editable and take my edits into account in future. I didn’t like the way it started with “Hi it’s Mike from CueCam”, for example.

The results

With all AI-generated content, you’re going to get some superficially amazing-looking results that, when you try to actually use them, are trash.
I use the AI-generated emails as a jumping-off point to get me writing.
Time will tell how much better it gets at writing like me, but I have low expectations.
The way LLMs work makes them naturally rambly and verbose - they need a lot of words to “think”.
I’d rather my writing be punchy and to-the-point.
The way LLMs work makes them naturally veer towards cliches and predictability.
This is the opposite of what it takes to tell a good story. An AI is just not going to create anything surprising, or express some hitherto unarticulated truth about the human condition - it’s just mushing together what people say on the internet into something that looks plausible.
I like the motivation it’s giving me.
I like how I can see how much I’m spending.
I like how it’s saving me doing my least favourite thing by looking for new people and telling me a bit about their content or background. It’s giving me people to look at. It’s filtering out people I can’t email. So I can take it from there.
That works for me. You’re likely facing a different problem, but that’s the beauty of this approach - you can personalise the tool to solve your own issues, you don’t have to wait for somebody else to build it.

Caveats to this process

This is a personal tool, and the output is ultimately piped through a human - I’m the one sending the email, posting the comment, making the connection request. As long as the app can keep track of who I’ve contacted, it doesn’t need to be super stable or maintainable.
My output is new friends, not some product that other people can use!
A lot of people are trying to build products that they can sell using this process, but I’m skeptical. This adds layers of security considerations and many other complexities that can be avoided by working locally.

Health Warning

This process is addictive.
You can get a quick fix really easily.
It’s a huge rush to generate a useful tool in a morning.
But at some point, you’ll probably have to fix something yourself.
That’s when the walls come crashing down.
It’s too easy to rely on the robot and stop checking its work. But then when you do, you’ll see its code is not good for humans to maintain. It’s full of the trickiest type of bugs that emerge from almost-identical code popping up in multiple places. My app ended up full of techniques that were made obsolete years ago.
People will tell you this can be managed with LLM configuration files - pasting in (or generating) coding standards and stuff like that, but I think it’s gonna be very hit and miss due to the way LLMs work.
I’ve read pieces by people who got carried away with this approach to software development and a big project sounds like a nightmare of micromanaging multiple robots, and not being able to trust that the next change doesn’t reintroduce bugs that were already fixed. You end up telling it ‘make unit tests’, ‘keep a bug tracker and make sure you don’t cause regressions’ and all this stuff ends up ballooning complexity and creating diminishing returns.
So my advice is to keep it to a small project that doesn’t need to be correct without human intervention.

We can talk about this more

I have a Discord over at
This post is also a live stream, which you can watch at the top. I’m sure to have gone on some tangents.

Try CueCam

I’m making this to promote my product, which you can try on your Mac.


Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.