New to AI?
Start here. Do four steps. That is the training.
You do not need any AI knowledge. The page gives every command and every click — including how to get the DeepSeek key and point opencode at it.
Bring one task: “I want AI to ______.” If you get stuck, open “If it does not work” or search the step name.
For whoever is inviting someone — copy this message
New to AI? Start here: https://www.resonancetunes.com/training/ Do only the four setup steps on that page. It shows every click, including how to get the DeepSeek key and point opencode at it. Bring one task: “I want AI to ______.” If you get stuck, type the step name in the page search bar, or open “If it does not work.” No AI knowledge needed. You can also attend and watch without installing anything.
No step matches that. Try “Tavily”, “key”, “install”, “Notion”, or “backup”.
Start here
Two doors. Pick yours.
One URL each. Four or five steps. Fifteen minutes.
External · public, partners, clients
Set up on your own machine
- Write one task: “I want AI to ______.”
- Install opencode.
- Add about $10 of model credit and connect the key.
- Do the one task. That is the training.
Internal · RT team + contributors
Onboard, then set up the agent
- Complete the thresholds on /rtteam/.
- Run the backup script in the repo.
- Install opencode and connect your own key.
- Apply the safe config (Level 1).
- Pass the read-only test.
In-session setup
Install opencode. Get a key. Start working.
The whole thing in four sentences:
Install the app that talks to the AI. It’s called opencode.
Buy a prepaid card for the AI’s brain. That card is an API key from DeepSeek.
Give the app the card with one command: /connect.
Ask it to do one small job. That is the training.
Tap any step to open the exact commands and clicks.
1 Install opencodePut the app on your computer. Like installing any other app. +
Open Terminal — on a Mac, press Cmd + Space, type “Terminal”, press Enter. Paste this line and press Enter:
curl -fsSL https://opencode.ai/install | bash
Wait for it to finish, then check it worked:
opencode --version
You should see a version number. If you see command not found, close Terminal, open it again, and rerun the install line.
2
Get your DeepSeek API keyBuy $10 of credit and copy the key that starts with sk-.
+
opencode is open source. The model behind it is paid per use. DeepSeek is the cheapest option we use.
- Open platform.deepseek.com and sign in. Your free chat login may work; if not, sign up with the same email.
- In the left sidebar, open Billing or Top up. Add $10. This is prepaid API credit — it is separate from the free chat.
- Open API Keys → Create new API key. Name it something like
my-laptop-opencode. - Copy the key. It starts with
sk-and is shown once. - Put it in a password manager, then add it to opencode with
/connect.
/connect or a local env file; keep it off public pages.If you skip the top-up, every request fails with Insufficient Balance — the key is fine, the wallet is empty.
3
Point opencode at the keyHand the app the prepaid card with /connect.
+
Make a folder for AI work, then start opencode inside it:
mkdir -p ~/ai-lab cd ~/ai-lab opencode
Inside opencode, type this and press Enter:
/connect
- Choose DeepSeek from the list.
- Paste your
sk-...key and press Enter. - Type
/modelsand choose the listed DeepSeek Flash entry.
/connect is the moment you hand the app the prepaid card, so it can pay for answers.4 Test it, then do one real taskAsk for one small job and correct the answer once. +
First, a harmless test:
Reply with the single word: connected
If you get “connected”, the install, key, and model are working. Now your one task:
I want AI to [your task]. Ask me for anything you need, then do only that.
Read the answer. Correct it once. That is the training. You do not need to automate the whole workflow today — one task is the win.
? If it does not workThe six usual problems, and the fix for each. +
| What you see | What to do |
|---|---|
command not found | Close Terminal, open it again, rerun the install line. |
| “No models available” | Run /connect again. Check the credit is actually on DeepSeek. |
Insufficient Balance | Add $5–$10 to DeepSeek. The key is fine. |
Model not found | Run /models and pick the DeepSeek Flash entry that is listed. |
| Authentication error | The key was copied wrong or deleted. Create a new one. |
| You need to give the key to opencode | Run /connect and paste it there. That is how it automates work. If the key was posted publicly, rotate it. |
Optional: lock it down before real work
This config lets opencode read and search, allows writing only in reports/, and blocks deleting, sudo, and git push. Save it as ~/.config/opencode/opencode.json.
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"*": "ask",
"read": "allow",
"glob": "allow",
"grep": "allow",
"edit": {
"*": "deny",
"reports/**": "allow",
"docs/coo/**": "allow"
},
"bash": {
"*": "ask",
"git status *": "allow",
"git log *": "allow",
"git diff *": "allow",
"git commit *": "ask",
"git push *": "deny",
"rm *": "deny",
"sudo *": "deny",
"ssh *": "ask"
},
"external_directory": "ask",
"webfetch": "allow",
"websearch": "allow"
}
}
RT team: this is Level 1. Stay here until a backup and a successful test are done. Never use --auto on a server or production.
After setup
How to use it this week
You do not need a course to start. These five habits are the whole usage path.
Plain English
What the words mean
sk-. Keep it secret.Optional tools
Add a tool to opencode
Not required to finish the training. Add one when you need the extra ability. Search “Tavily” at the top of this page to jump straight here.
Tavily — web research with sourcesFree tier. About 5 minutes. Your key starts with tvly-.
+
What it is, plainly: Tavily is a search service built for AI. It returns pages and source URLs, so opencode can research and show its work instead of guessing.
What you need: a free Tavily account and Node.js (the wrapper uses npx). Check Node first:
node --version
No version number? Install Node.js from nodejs.org, then reopen Terminal.
1. Get the key
- Open tavily.com and sign up. The free tier is about 1,000 credits a month.
- Open the dashboard → API Keys → copy the key. It starts with
tvly-. - Keep a copy in a password manager. Put the key in
tavily.env(next step); do not paste it intoopencode.json.
2. Store the key in its own file
In Terminal, create the config folder and the key file:
mkdir -p ~/.config/opencode nano ~/.config/opencode/tavily.env
Put this one line in the file, with your real key:
TAVILY_API_KEY=tvly-your-key-here
Save with Ctrl + O, Enter, then exit with Ctrl + X. Lock the file:
chmod 600 ~/.config/opencode/tavily.env
3. Create the wrapper
This small script loads the key and starts Tavily. Create it:
nano ~/.config/opencode/mcp-tavily.sh
Paste this whole block:
#!/usr/bin/env bash set -euo pipefail ENV_FILE="$HOME/.config/opencode/tavily.env" if [ -f "$ENV_FILE" ]; then set -a . "$ENV_FILE" set +a fi exec npx -y tavily-mcp@latest
Save and exit, then make it executable:
chmod 700 ~/.config/opencode/mcp-tavily.sh
4. Tell opencode to use it
Open your opencode config:
nano ~/.config/opencode/opencode.json
Add this top-level block. Replace YOU with your Mac username. If the file already has other keys, add a comma after the previous block:
"mcp": {
"tavily": {
"type": "local",
"command": ["bash", "/Users/YOU/.config/opencode/mcp-tavily.sh"],
"enabled": true
}
}
5. Restart and test
Quit opencode completely, reopen it, and ask:
Search the web for Resonance Tunes ethical AI and show me the source URLs.
If it returns results with links, Tavily is working. If it says npx: command not found, install Node.js and reopen Terminal. If it says the key is invalid, delete the key in Tavily, create a new one, and update tavily.env.
Notion — use your notes as contextNo key needed. Export a page or ask opencode to read it. +
Notion is where the notes live. opencode reads local files, not your Notion account directly. The simple path:
- In Notion, open the page → ⋯ → Export → Markdown.
- Put the exported file in
~/ai-lab. - In opencode, say: “Read the file in this folder and summarise the decisions and open tasks.”
If you want a live Notion connection, ask opencode: “Set up a Notion MCP connector for this machine. Ask before installing anything.”
Fathom — meeting notes into tasksFree tier. Install the note-taker, then use the transcript. +
- Install Fathom from fathom.video and connect your calendar.
- After a call, copy the transcript or download it.
- Save it in
~/ai-laband ask opencode: “Turn this transcript into decisions, owners, and next actions.”
Ollama — a private local modelFree. Runs on your computer. Good for private or simple tasks. +
- Install Ollama from ollama.com.
- In Terminal:
ollama pull mistral. - In opencode, run
/connectand choose Ollama if it is listed; otherwise ask opencode to add the local Ollama provider.
Local models are slower and weaker than DeepSeek. Use them when the data must not leave your machine.
rclone — Google Drive and PhotosFree. Lets opencode read files you keep in Drive. +
- Install rclone from rclone.org.
- Run
rclone configand create a remote namedgdrive. - Check it:
rclone listremotesandrclone lsd gdrive:.
Do not sync or copy anything until you know which folder you want. Ask opencode to show the folder first.
Patterns, not personal archives
Projects you can build
Real patterns, written for your own use. Each card says how far the recipe goes, what to copy, and what to watch out for. No personal vaults, client data, or private metrics.
Obsidian second brainA vault on your own machine that the AI can read. Start with one folder. Partial +
How it works: notes, source documents, and images live in folders on your computer. AI tags them and answers from them, so you stop re-pasting the same context.
How to do it:
- Make three folders:
notes,sources,images. - Add one note and one image. Ask the AI to tag both and write a one-line summary.
- Add an image metadata file beside each image: title, topic, tone, rights, and where it can be used.
- Grow one folder at a time. Keep private material on a local model; send only what you would put on a slide to a public model.
Watch out: do not bulk-import your whole life on day one. Do not put names, birth data, client notes, or private photos into a public model. The archive is a marathon, not a weekend.
Voice memo → social postRecord on your phone; draft the caption; review; schedule. Ready +
How it works: a voice memo becomes a transcript, the transcript becomes a draft post, and a person approves it before it is scheduled.
How to do it:
- Record one thought. Keep it under two minutes.
- Transcribe with Whisper or your phone’s built-in transcript.
- Ask the AI for one post in your voice, one CTA, and no invented facts.
- Put it in a queue with three states: Draft, Ready, Posted. You move it to Ready.
Watch out: move processed audio into a processed/ folder so it never posts twice. One memo, one post. Never let the model publish without your approval.
Marketing autopilotQueue → direct LinkedIn or Facebook → stored post URL → watchdog. Ready +
How it works: a content queue publishes directly to the platform and stores the returned post URL. A watchdog alerts when the queue is empty or a posting window is missed.
How to do it:
- Use one queue with
Draft,Ready,Posted, and a date. - Call the platform API directly. Skip middleware that can silently queue posts.
- Store the post URL the platform returns. No URL means not posted.
- Alert if nothing has posted in 48 hours, or if fewer than five items are Ready.
Watch out: a 200 response is not proof of a post. OAuth tokens expire; check them. Never let a scheduler be the only evidence that something published.
AI image agentOne interface, free providers first, automatic fallback. Ready +
How it works: one request tries several image services in order — free tiers first, paid last — so a post never stalls because one provider is down or out of credit.
How to do it:
- Start with one free provider. Add a second as fallback before you need it.
- Keep prompts in a file so you can repeat a look.
- Stage approved images in one folder with the post it belongs to.
- Run an OCR or text check before publishing. Generated images often contain broken text.
Watch out: rate limits, watermarks, and license terms differ. Use demo data. Do not scrape or impersonate a living artist.
Meeting → motionTranscript becomes decisions, owners, dates, and one follow-up. Ready +
How it works: a meeting recording becomes a transcript, then a short list of decisions, owners, dates, and the next action. It is not a generic summary.
How to do it:
- Record with consent. Use Fathom, Read.ai, or your phone.
- Ask for four things only: decisions, owners, dates, next action.
- Draft the follow-up from those four things, not from the whole transcript.
Watch out: stop recording for sensitive Q&A. Do not paste client, investor, or personnel data into a public model. Tell the room it is recorded.
YouTube Shorts pipelineApproved clips → daily upload → stored video ID. Maintenance +
How it works: a list of approved clips is uploaded to YouTube on a schedule. The approved list is the gate; the uploader never guesses.
How to do it:
- Keep an approved list with the clip file and the date.
- Use OAuth with a refresh token. Check the token before the post, not after.
- Store the returned video ID. No ID means the upload failed.
Watch out: OAuth tokens expire and the failure is silent. Never auto-post a clip that is not on the approved list.
Agent workflows — research, jobs, inboxResearch → draft → human approval → submit. Advanced +
How it works: an agent researches, drafts, and prepares an application or reply. A person approves before anything is sent or submitted.
How to do it:
- Write the allowed actions down: read, search, draft. Not send, pay, or submit.
- Put every outbound action behind an approval step.
- Log what the agent did, where it went, and what it returned.
Watch out: never let an agent email an investor or funder, send money, or bypass a CAPTCHA. Automate the research; keep the yes for a human.
What you'll leave with
- opencode installed and running on your own machine
- One real task handed off before the hour ends
- A clear answer to "which AI should I ask for what"
- Your Notion notes connected, so the AI reads your own context
- Meeting capture with Fathom: a recording becomes a summary and an action list
- The recording, the notes, and the prompt templates we use
- One event wired end to end: the action, the event name, the property, and where to see it
What we'll build live
- opencode as the operations agent: files, research, writing, automation
- Which model for what: judgment, plumbing, private
- Notion connected — your notes become context
- Fathom connected — meetings become summaries and tasks
- A first look at Resonance Lens, our meeting-intelligence layer for teams
- Instrument one action: one event, one property, one place to see it
Pre-work — 10 minutes
- Bring a laptop.
- Walk through the four setup steps on this page — install opencode, get a DeepSeek API key, and point opencode at it.
- Write your one task in a sentence: "I want AI to ______."
Nothing else is required. You can attend and watch without installing anything.
Every tool has a free path
opencode is open source. Notion, Fathom, Tavily, Ollama and rclone all have free tiers or are free. DeepSeek's chat is free too; its API is a separate prepaid wallet, and only that wallet is needed to run opencode. No purchase is required to attend.
The series
Third Wednesday monthly, 8:00 PM UTC. One idea, one live build, one action.
Session files
The page above is the live version. These are offline copies for the session, for your team, or for upload to an AI.
- All-in-one pack (.zip)
- One-page setup PDF — print it or send it to a new user
- External setup (.md) — the 15-minute path for non-RT users
- Internal setup (.md) — the 20-minute path for the RT team
- Call scripts (.md) — word-for-word for a video call
- Safe config (.json) — optional write protection for opencode
- Series overview (.md) — best single file to upload to an AI
- Session 1 handout (.md) — pre-work, agenda, tools, token discipline
- 28 Oct preview (.ics)
- Full series (.ics)
Save your seat
It takes a minute. We'll send the link and the recording.
You're in.
We'll send the Google Meet link and the recording to the email you gave us.
One thing before Wednesday: write down the task you keep doing by hand. That's the whole preparation.
Internal · RT team + contributors
Same setup, plus the guardrails
The four steps above are the same. RT adds three things: the onboarding thresholds, a backup, and Level 1 write protection. Start at Level 1. Move up only after a backup and a successful test.
- Complete the thresholds on /rtteam/ — survey, agreement, skills, Slack, task sign-off.
- In the repo:
bash scripts/backup-before-opencode.sh. Keep the printed path. No backup, no edits. - Install opencode and run
/connectwith your own DeepSeek key. Never share another operator’s auth file. - Save the safe config from the optional block above to
~/.config/opencode/opencode.json. - Test:
“Read AGENTS.md and tell me the three most important safety rules. Do not change anything.”
rm; move to _quarantine/YYYY-MM-DD/; one living doc per topic; verify by reading back; never email investors or funders; never use --auto on a server or production.Open the internal onboarding hub → · Offline internal copy (.md)
For whoever runs the room
Video-call scripts
Two scripts. Read the one for the person in front of you. Screen-share this page. Keep it under fifteen minutes. No slides.
External training call — 7 minutes
“You only need two things: opencode, and a funded model. opencode is open source. The model is the part that costs money — about ten dollars to start.
Open www.resonancetunes.com/training/ and stay on this page. Every step we do is here — install, the DeepSeek key, and the command that connects them.
Open Terminal. Paste the install line. When it finishes, type opencode --version. If you see a number, you’re installed.
Next: platform.deepseek.com, add ten dollars, create an API key. In opencode, type /connect, choose DeepSeek, paste the key there; opencode stores it in its auth file.
Make a folder:mkdir -p ~/ai-lab, thencd ~/ai-lab, thenopencode.
Now give it your one task. Say: ‘I want AI to ______. Ask me for anything you need, then do only that.’ Read the answer. Correct it once. That’s the training. One task is the win.”
Close with: “Before next month: do one task, write down what worked, and bring the next task. Recording and notes go to the email you registered with.”
Internal RT onboarding call — 10 minutes
“Welcome in. Before tools, finish the thresholds on /rtteam/ — the survey, the agreement, your skills, Slack, and your task sign-off. That’s the container.
Now the AI setup. First, make a backup. In the repo, run bash scripts/backup-before-opencode.sh. Keep the folder it prints. No backup, no edits.
Install opencode with the one-line installer, then run /connect and use your own DeepSeek key. Never share another operator’s auth file.
Lock it down. Copy the safe config to~/.config/opencode/opencode.json. It lets the agent read and search, allows writing only inreports/anddocs/coo/, and blocks deleting andsudo.
Test it: open the repo, run opencode, and say ‘Read AGENTS.md and tell me the three most important safety rules. Do not change anything.’ If it edits anything, stop and tell me.
Your level today is Level 1. We move up one level at a time, after a backup and a successful test. Never use --auto on a server or production.
Three rules that are not optional: never delete — move to quarantine; one living doc per topic; verify by reading back, not by trusting the summary.”
Screen-share order: /rtteam/ → terminal backup → install → /connect → config file → read-only prompt.
If they get stuck — say this
| Symptom | Say |
|---|---|
command not found | “Close Terminal, open it again, run the install line once more.” |
| “No models available” | “Run /connect again and check the credit is on DeepSeek.” |
| “Insufficient balance” | “Add five dollars. The key is fine; the wallet is empty.” |
| “Model not found” | “Run /models and pick the DeepSeek Flash entry that is listed.” |
| They need to give the key to opencode | “Run /connect and paste it there. That is how it automates work. If the key was posted publicly, rotate it.” |
| Agent wants to delete | “Reject it. We move files to quarantine, never delete.” |
Chat-paste block for the call
START HERE https://www.resonancetunes.com/training/#setup INSTALL curl -fsSL https://opencode.ai/install | bash opencode --version CONNECT opencode → /connect → DeepSeek → paste your own key SAFE TEST mkdir -p ~/ai-lab && cd ~/ai-lab && opencode "Reply with the single word: connected" DOWNLOADS https://www.resonancetunes.com/assets/training/ RULES No rm. Move to _quarantine/. One living doc per topic. Verify by reading back.
Youth sessions
We're building sessions for young people: text-to-game, making music with AI, and building something real in an afternoon. Small groups, guided, with consent and care.
Leave an email and we'll tell you when the first one opens — no obligation, no list-sharing.
Register interest
For parents, guardians, educators, and youth organisers.
Noted.
We'll email you when the first youth session opens. Nothing else in the meantime.