<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Santhosh Nagaraj S</title>
    <description>The latest articles on DEV Community by Santhosh Nagaraj S (@yolossn).</description>
    <link>https://dev.to/yolossn</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4232353%2Fe33fd9b0-6736-4811-b981-abd961f9e3a0.jpg</url>
      <title>DEV Community: Santhosh Nagaraj S</title>
      <link>https://dev.to/yolossn</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/yolossn"/>
    <language>en</language>
    <item>
      <title>My friend makes music for a living. Five AI teammates now run his studio's back office.</title>
      <dc:creator>Santhosh Nagaraj S</dc:creator>
      <pubDate>Sat, 07 Nov 2026 17:44:21 +0000</pubDate>
      <link>https://dev.to/yolossn/my-friend-makes-music-for-a-living-five-ai-teammates-now-run-his-studios-back-office-22bp</link>
      <guid>https://dev.to/yolossn/my-friend-makes-music-for-a-living-five-ai-teammates-now-run-his-studios-back-office-22bp</guid>
      <description>&lt;p&gt;&lt;em&gt;How I used Switch to give SoundStory, a small team of musicians who write custom songs for people's biggest moments, a back office made of AI agents, so they could get back to making music.&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Built for the WeMakeDevs × DevTools Academy × Switch &lt;strong&gt;Flip the Switch&lt;/strong&gt; hackathon.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  The studio that was drowning in messages
&lt;/h2&gt;

&lt;p&gt;My friend is a musician. With a few others (a lyricist, a composer, a singer or two) he runs &lt;strong&gt;SoundStory&lt;/strong&gt;, a studio that turns personal memories into custom songs. A customer tells them who the song is for, the occasion, and the moments they want it to capture. The team writes original lyrics, composes the music and records the vocals, then delivers a song made specifically for that person—not a playlist or a generic dedication.&lt;/p&gt;

&lt;p&gt;An anniversary gift might become a song about a couple's first meeting and the small rituals they share. A retirement tribute might celebrate a parent's years of work and the ways they showed up for their family. The customer's story is the starting point; SoundStory's musicians turn it into something they can play at the celebration and keep afterwards.&lt;/p&gt;

&lt;p&gt;It's a beautiful business, and it's growing. That growth is the problem.&lt;/p&gt;

&lt;p&gt;Every order brings a pile of small jobs that have nothing to do with music:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;reading a long, emotional story and pulling out what matters;&lt;/li&gt;
&lt;li&gt;checking whether the payment screenshot is real and whether the money actually arrived;&lt;/li&gt;
&lt;li&gt;working backwards from the occasion date: when must the lyrics be ready, and when the first cut?&lt;/li&gt;
&lt;li&gt;briefing the lyricist so the song is about &lt;em&gt;this&lt;/em&gt; couple and not every couple;&lt;/li&gt;
&lt;li&gt;replying to the customer warmly and quickly, without promising something the team can't deliver;&lt;/li&gt;
&lt;li&gt;remembering, three weeks later, what was agreed and who is waiting on whom.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;They are musicians. They want to spend their evenings at the keyboard, not scrolling through chat threads asking "did they pay?" and "when is it due again?". As more people reached out, the business around the music became too much. Some days it ate into the music itself.&lt;/p&gt;

&lt;p&gt;So when the &lt;strong&gt;Flip the Switch&lt;/strong&gt; hackathon asked for &lt;em&gt;a workflow where AI agents and people in a team chat get real work done together&lt;/em&gt;, I knew who I was building for, and what:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;The humans make the song. The agents run the studio around it.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;SoundStory doesn't need help writing songs. That's the part they're brilliant at and the part they love. They need help with &lt;em&gt;everything else&lt;/em&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Hiring five AI teammates
&lt;/h2&gt;

&lt;p&gt;Instead of one big "AI assistant", I gave the studio a small back office: five agents, each with one job, its own name in the team chat, and a clear list of things it's &lt;strong&gt;not allowed&lt;/strong&gt; to do.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Teammate&lt;/th&gt;
&lt;th&gt;Their job&lt;/th&gt;
&lt;th&gt;Never allowed to&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Studio Manager&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;The coordinator. Opens a private room for each order, hands work to one teammate at a time, and posts a status summary&lt;/td&gt;
&lt;td&gt;Invent people, approvals or facts&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Accounts Desk&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Reads the payment evidence and says exactly what a human must check&lt;/td&gt;
&lt;td&gt;Mark anything "paid"&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Project Manager&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Plans backwards from the occasion date: brief, lyrics, first cut, preview, delivery&lt;/td&gt;
&lt;td&gt;Assign people nobody named&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Creative Director&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Turns the customer's story into a brief for the lyricist and composer&lt;/td&gt;
&lt;td&gt;Write lyrics or music&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Customer Liaison&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Drafts every message to the customer, labelled &lt;strong&gt;DRAFT – not sent&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;Contact the customer&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;There's no orchestration code behind them. Each teammate is an agent in Switch with a page of plain-English instructions, and they coordinate the way people do: by talking to each other in the chat.&lt;/p&gt;




&lt;h2&gt;
  
  
  What happens when a story arrives
&lt;/h2&gt;

&lt;p&gt;Take Karthik's order: he wants to surprise his wife Nila with a Tamil song for their fifth wedding anniversary. They met at a friend's wedding in Coimbatore, bonded over filter coffee and old Ilaiyaraaja songs, and took their first trip together to Munnar—a hill town in Kerala—in the rain. He wants the song to thank Nila for five years of laughter.&lt;/p&gt;

&lt;p&gt;Those details are the material the studio has to work with. The brief needs to preserve who did what and why it matters; the customer draft needs to check which memory Karthik wants at the centre of the song. Here's how that order moves through StudioMate.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Customer fills the order form → #new-orders channel
  → a human says "go"
  → Studio Manager opens a private room for the order
  → Accounts Desk → Project Manager → Creative Director → Customer Liaison
  → Status summary
  → The team decides: payment · artists · what the customer receives
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;The story lands.&lt;/strong&gt; Karthik fills in the order form, and the order appears in the team's &lt;code&gt;#new-orders&lt;/code&gt; channel. No AI has touched it yet.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;A human says "go".&lt;/strong&gt; Someone on the team replies in the thread: &lt;em&gt;"Studio Manager, please take this order."&lt;/em&gt; The agents never pick up work on their own.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The order gets its own room.&lt;/strong&gt; The Studio Manager opens a private room for Karthik's order, invites the team and the four other agents, and posts an order card: who it's for, the occasion, the language, the delivery date, and a payment status of &lt;strong&gt;UNVERIFIED&lt;/strong&gt; until a human checks it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The team works, one at a time, in the open.&lt;/strong&gt; The Studio Manager tags each teammate in turn. Each one does its job, posts the result under its own name, and hands back. Everyone on the team can follow along in one room.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The &lt;strong&gt;Project Manager&lt;/strong&gt; planned backwards from the anniversary: lyrics in a week, a first cut three weeks out. It refused to guess who would do the work. Every owner says &lt;strong&gt;UNASSIGNED&lt;/strong&gt; until the team picks someone, and it flagged that each artist only gets about seven days.&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;Creative Director&lt;/strong&gt; wrote the brief a lyricist would actually want to read. Its emotional centre: &lt;em&gt;"a song of gratitude to Nila for five years of shared laughter and companionship."&lt;/em&gt; It also listed what to avoid: generic love-song clichés, and getting Coimbatore, Munnar or Ilaiyaraaja wrong.&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;Customer Liaison&lt;/strong&gt; wrote the kind of message a good studio sends, and then didn't send it. It asked Karthik what &lt;em&gt;feel&lt;/em&gt; he wanted for the lyrics, and suggested: &lt;em&gt;"We felt Munnar in the rain is the heart of your story… does that feel right to you?"&lt;/em&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;One summary, then quiet.&lt;/strong&gt; The Studio Manager posts one update (where the order stands, who owns the next step, the deadline, what's blocking it) and then waits for a human.&lt;/p&gt;

&lt;p&gt;Later, when someone on the team wrote &lt;em&gt;"the payment is correct, I verified it"&lt;/em&gt;, the next customer draft noted &lt;em&gt;"Payment verified by user ✓"&lt;/em&gt;. The agent recorded a human's decision. It didn't make one.&lt;/p&gt;

&lt;p&gt;Work that used to eat an evening of messages was done in &lt;strong&gt;under two minutes&lt;/strong&gt;, and nobody on the team had to type it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxxb0h4ufoqe8nucq5k5l.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxxb0h4ufoqe8nucq5k5l.jpg" alt="The Studio Manager hands off to the Creative Director, who posts the artist brief, then to the Customer Liaison" width="800" height="370"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Each teammate posts under its own name and hands back to the Studio Manager.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fso3a2r46d1s8v8ze0w16.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fso3a2r46d1s8v8ze0w16.jpg" alt="The Customer Liaison's draft, labelled &amp;quot;DRAFT – not sent&amp;quot;, asking about the lyric feel and the heart of the story" width="800" height="370"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;The customer draft asks about the song, not the studio's internals, and waits for a human to send it.&lt;/em&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  The moment it clicked
&lt;/h2&gt;

&lt;p&gt;Once the whole flow worked, I showed it to my friend and his team.&lt;/p&gt;

&lt;p&gt;I expected polite interest. Instead they were &lt;strong&gt;genuinely surprised&lt;/strong&gt;, first by the quality. The brief picked out exactly the details they would have circled themselves: the filter coffee, Ilaiyaraaja, Munnar in the rain. The customer draft didn't sound like a bot. It asked the questions they actually ask: &lt;em&gt;what feel do you want for the lyrics, and is this the moment the song should be about?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Then by the restraint. The agents didn't pretend the payment had arrived. They didn't pick a singer. They didn't message the customer. They did the tedious part well and handed every decision back to the people who should make it.&lt;/p&gt;

&lt;p&gt;What struck them most was what it meant for their week. They love doing what they do best, &lt;strong&gt;making music&lt;/strong&gt;, and running the business around it had quietly become too much. A back office that handles the reading, planning, chasing and drafting, while leaving every real decision with them, changed how they thought about what AI could do for a small creative business.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"Honestly, I thought it would just spit out some lyrics. But it read the story the way we read it: it caught Munnar, the filter coffee, Ilaiyaraaja. And it didn't decide anything for us. That's the part we've been drowning in. If this takes the messages off our plate, we can go back to making music."&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Why Switch is the heart of it
&lt;/h2&gt;

&lt;p&gt;Without Switch, these five teammates would be five text files in a folder. Switch is what turns them into colleagues:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;What the studio needs&lt;/th&gt;
&lt;th&gt;How Switch provides it&lt;/th&gt;
&lt;th&gt;What it would take otherwise&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Five separate teammates, each with its own name and instructions, posting as themselves&lt;/td&gt;
&lt;td&gt;Switch Console creates each agent and gives it its own identity in the chat&lt;/td&gt;
&lt;td&gt;One shared bot account, or five terminal windows that can't see each other&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;A mention reaching the right teammate, with the conversation so far&lt;/td&gt;
&lt;td&gt;Switch routes @-mentions to the right agent, with that room's context&lt;/td&gt;
&lt;td&gt;A home-made router, webhook server and context store&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;A private room for each order, with the right people in it&lt;/td&gt;
&lt;td&gt;The Studio Manager uses Switch's room tools to create the room and invite the team&lt;/td&gt;
&lt;td&gt;Custom chat-API code holding admin credentials&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Working in the chat app the team already uses&lt;/td&gt;
&lt;td&gt;The same agents connect to Mattermost, Slack, Teams, Discord or &lt;strong&gt;Telegram&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;Rebuilding the integration for each app&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;This is close to the "Level 2" example in Switch's own README: &lt;em&gt;"a bootstrap channel where anyone asks a manager agent to start a piece of work. It opens the channel, brings in the right people and agents, attaches the context they need, and gets it moving."&lt;/em&gt; For SoundStory, that channel is &lt;code&gt;#new-orders&lt;/code&gt; and that manager is the Studio Manager.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why Mattermost here, and Telegram next.&lt;/strong&gt; SoundStory's team coordinates on Telegram. I built the demo on Mattermost because a local Switch server comes with it: free, private, and no admin rights needed. Moving SoundStory over means connecting Telegram in Switch and adding the same five teammates to their groups. The instructions and the workflow stay the same.&lt;/p&gt;




&lt;h2&gt;
  
  
  Teaching agents to be good colleagues
&lt;/h2&gt;

&lt;p&gt;With no orchestration code, every behaviour comes from plain-English instructions. Each rule below exists because I watched a run go wrong.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hand the work back.&lt;/strong&gt; The chain kept stalling after the first teammate, because agents only wake up when someone mentions them. Now every specialist ends its reply by tagging the Studio Manager, and nobody else.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Deliver, don't ask.&lt;/strong&gt; The Accounts Desk once replied &lt;em&gt;"Can you share the payment evidence?"&lt;/em&gt; and the whole order sat still. Now each teammate works with what's in the room, lists anything unknown as an open question for a human, and still delivers its full output.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;A screenshot is not money.&lt;/strong&gt; &lt;em&gt;"A receipt image or screenshot is evidence to check, not verification. Status stays UNVERIFIED until a named human says they confirmed it in the actual account."&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ask customers about their song, not your org chart.&lt;/strong&gt; The first customer draft asked Karthik to choose &lt;em&gt;our&lt;/em&gt; lyricist and singer. My friend would never ask a customer that. Now the draft asks about the lyric feel and any lyricist or song he loves, and suggests the most moving moment from his story.&lt;/p&gt;

&lt;p&gt;A handful of tests in the repo fail if any of these rules goes missing. Setup steps are in the &lt;a href="https://github.com/yolossn/StudioMate" rel="noopener noreferrer"&gt;repo's README&lt;/a&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  What's next for SoundStory
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Move to Telegram&lt;/strong&gt;, where the team already works, with the same five teammates.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tamil drafts.&lt;/strong&gt; Orders come in Tamil, but the drafts still come out in English. Tamil drafts, checked by a fluent person, come next.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Track song versions:&lt;/strong&gt; when the composer uploads a new version, the Studio Manager collects the team's listening notes and the Customer Liaison drafts the preview message.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A Monday digest:&lt;/strong&gt; the Project Manager posts every open order's next deadline in one place.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The right model for each role:&lt;/strong&gt; a stronger model for the Creative Director and a cheaper one for the Accounts Desk. In Switch, that's a settings change, not a rewrite.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  The takeaway
&lt;/h2&gt;

&lt;p&gt;This isn't AI that writes songs. It's something more useful: &lt;strong&gt;AI that gives the people who write songs their evenings back.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;SoundStory's team should be arguing about a chord change, not chasing a payment screenshot. With Switch, five AI teammates now sit in the same conversation as the humans. Each has its own name, sees only the orders it was invited to, and leaves every decision that matters with a person.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Code: &lt;a href="https://github.com/yolossn/StudioMate" rel="noopener noreferrer"&gt;github.com/yolossn/StudioMate&lt;/a&gt;· #HowISwitch&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>opensource</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
