• Platform: meet
  • Source: Read.ai 01KM11D1A9YDX0PZP2RJ4MM2NG (via Ben Ornstein’s account, imported 2026-08-06)

Transcript

Michael Houck: self-serve for light field for megaphone, which is great. So you don’t have to set anything up there. That’s great. Ben Ornstein: But I got to get back to you on a couple of things. Michael Houck: What was that thread from last night where you were talking on it pretty late? I want to find it reply to you. Oh, wait, I found it. Ben Ornstein: Yeah, it’s about like the onboarding in like how we want to go about it. And like, yeah, there’s a lot of, well, how are you guys doing? Michael Houck: How you doing, man? Sorry. I just had a very expensive bottle of wine delivered. I got to bring it inside here. Yes. Michael Wojcieszek: Got to make sure it doesn’t, uh, warm off that nice weather you have in the background. Michael Houck: It would be a crime if I bought a nice bottle of wine and then I let it fucking die outside. That would be the worst. Michael Wojcieszek: How are you doing, brother? Michael Houck: Are you still down in Costa Rica or back in New York or where are you? No, I did. I was in Costa Rica for a bit. Michael Wojcieszek: Then Jackson Hole for a few days with family. Oh, right. I saw the Jackson Hole. Michael Wojcieszek: related IG content make me jealous I mean it’s not much to be jealous because the snow on the west coast has been absolutely atrocious this year so more of just family time but then I went to go see somebody’s in Deer Valley and it snowed a good six eight inches so we had a fun day fun couple hours to be honest because Utah also hasn’t gotten much snow it’s just all ice ice with six inches of powder. And then within two, three hours, it’s all kind of, everyone’s ridden over it. So it’s been a pretty bleak winter season. Michael Houck: Well, thanks. Thanks for taking some time with us here. Um, so Blake, Ben, maybe just do like very quick intros on, on you guys. And then, um, you know, if you want to give any context on, on you, you can Cool. Ben Ornstein: Well, I’m Ben, I’m Hauk’s chief of staff across the entire kind of holding company that maybe you have context on. Do a whole bunch of stuff, all operations related and yeah, that’s probably the best way I can explain it. Cool. Michael Wojcieszek: Nice to meet you, man. Nice to meet you too. Yeah. Blake Emal: And I’m Blake, I’m Hauk’s partner on the business. I do, I’m like the main I’m a content guy, editor, I spend most of my time in there, and I’ve got some other stuff going as well, but that’s probably not as interesting to you. So, yeah, main thing is helping build Megafon. Awesome, nice to meet you as well. UNKNOWN_SPEAKER: Same. Michael Wojcieszek: Cool, quick context on me, I co-founded a company called Playbook, been building it for the last 10 years, you can think of it as Patreon or OnlyFans for fitness influencers, given the platform to upload content, workout, yoga, meditation, and then market it to their followers on social media, and then sell access via a subscription or a la carte. So you might have heard of us. There’s tons of ads going on Instagram, if you guys have it. But most recently, I’ve kind of wrenched into doing, I’ve fully embraced the genetic revolution. I’ve gone down the rabbit hole with mainly Cloud Code, just because I have a couple connections philanthropic and I feel like the tools that they build are geared more towards engineers and founders with technical backgrounds, so Thinking of ways how to incorporate what’s emerging and the shit It’s changing week over week. So actually like honestly hard to keep up And there’s no right answer and some of the techniques that you were doing, you know a couple months ago no longer exists it’s it’s a constantly evolving world, but Yeah, I think it’s an exciting opportunity for all companies to embrace it. And the best start, the best time to start is yesterday. So might as well get into it today. Michael Houck: Great. Um, well, now that we’re all homies, uh, so yeah, so we’ll join, I met at the Costa Rica retreat and, um, just by doubt, I think, and you were talking about making content agent, I think even like made a very small MVP version for Tyler while we were down there. Right. And so really over the past few weeks since then, I’ve sort of turned Ben loose into this world and just sort of, you know, taken as much else off your plate, Ben, as I can so that you can spend as much time building this up for us. And so where we’re at right now is we’re building an agent for myself and for Blake. And so I’ve made a couple of posts from it in the past, I think, three days now on LinkedIn. We’re considering whether to roll this out more broadly to the clients that we have through our content agency, Megaphone, for both X, LinkedIn, maybe eventually even email newsletters, et cetera, et cetera. So I shared the deck that you shared at the retreat with Ben. He’s read through that. He’s incorporated some of that into what we’re doing. But I thought it’d just be good to get you guys together and have me on the call too and have Blake on the call Blake’s built a 100,000 person personal brand himself, so he knows the sort of content workflows, I think, as well as anyone, and he edits all the content we put out. So just sort of an open jam, a little bit unstructured, but I guess some of it can be, like, as involved, Mike, as you want to be, right? If you want to get in there, get in the weeds with Ben on sort of what’s going on, we can do that. If, Ben, you want to ask more higher-level questions about architecture and following up on things from the deck, we can do that. I just sort of want to get the group together and kind of see where this goes For sure. Michael Wojcieszek: Yeah, um I’m actually curious how what did you what have you guys built so far? You mentioned that you’re already doing posts on linkedin. So you have some agents out there How are those I’m curious kind of how you built those? Ben Ornstein: Yeah, so I’ve been reading up so I’m mostly non-technical myself so like that was that’s the background coming in so it’s like I just was drinking from a fire hose, right? Like just trying to read everything I possibly could, watch as many videos from, you know, credible people who have actually built things and go back and forth and like seeing what can actually be built, as small as possible, then building the architecture to see if it can scale, you know, thinking as much like a dev as I possibly can from someone who’s mostly, again, non-technical. What we built, so far is mostly reactive, where, you know, I fed everything into, and we were using OpenClaw, and so created like a Slack bot for like sort of how it’s holding company. This is the best way I would explain it, with all context for that, but mostly with a focus on the content side. Ben Ornstein: And so, Yeah, so that’s, I guess I’d stay over there. It has context on how his holding company content chops with, you know, some playbooks that we have specific for different, you know, the different social media platforms. Ben Ornstein: It knows rules about things, of course, that we don’t want something as simple as like, M dashes all the way to, okay, if you’re creating content, here’s something specific for a short form hook that you’d want versus, okay, if you’re doing an X thread, this is what you want to include. And then research workflows as well. So it’s doing research in tandem with our playbooks. There’s a lot, and it’s like, I’m trying to put all the pieces together. It’s not fully there. Yeah, got it. Michael Houck: Yeah, like high level. Basically, it’s a bot in Slack that we can interact with, ask questions, have it draft posts, have it do research, sort of on demand, and then it can schedule that content to typefully that we can then use to post on social. Got it. Michael Wojcieszek: So at the moment, it’s kind of more of an orchestrator than it has specialization in the type of writing or the type of research that you guys are doing. Michael Houck: Well, we have trained We have pretty extensive playbooks on LinkedIn best practices, X best practices that we not only use for our team, but we’ve used for webinars and courses and things like that, and lead magnets. It’s trained on all that, and it’s also trained on my specific writing style and persona based on the content I’ve put out over the years. So it knows a little bit of platform best practices, format best practices, and a client-type file. Got it, okay. Michael Wojcieszek: And then, how did you guys feed Claude bought all of that just through Telegram. Has it organized it in any specific manner? Ben Ornstein: Yes, so it was, I would talk with it directly in, well, it started with Telegram before I got configured to Slack. And I’ve kind of gone through a few different ways of interacting and having it structure itself. I was actually talking with Hauke about this last night. I think what’s really interesting is when interact with it directly, it can, it obviously has all its architecture. So it knows what places where something should be placed in its existing architecture. But I’ve also been like, okay, here’s what I’m trying to do. I give all the context. I’m going to other LLMs to describe the situation and, and see like seeing from other perspectives. But for like actual changes, Um, yeah, I’m telling it in slack, like, Hey, here’s what, here’s what I want to do. Um, and if I don’t know how to do it, I, I talk with it there, or I’m asking the LLMs and I’m, and I’m like, you know, I’m making the changes in the terminal. Michael Wojcieszek: Got it. So for the most part, it’s kind of information that you fed through slack or telegram. Um, and then the idea is that. Claude bought has internalized and information somehow trained on itself. So it’s kind of a black box, you don’t really know what are the rules that it’s set up for itself. So let’s say the prompts and instructions. Michael Houck: You showed me some of that. And also you showed me the file structure and things like that. So it has organized. Ben Ornstein: Maybe I didn’t explain that well, but there, you know, there’s a sole file, there’s an agent’s file there, there is there is structure in there. I wouldn’t call it a black box. It’s just there’s a lot of context. Michael Houck: Sorry, even I’m to catch up and even even beyond that though like you have the you had you showed me the structure where there’s like the client file and there’s like the XYZ like there’s like I forget exactly what message it was I would just show it on the screen but like to answer the question like yes it has taken in information it has organized that we are generally I think happy with what that structure is I just I don’t know that I have a band if you have it please please pull it up like it’s like it’s come up with some sort of formatting guidelines voice guidelines a vocabulary set that’s common to you, probably Michael Wojcieszek: it’s not common to other people, words that you typically avoid. I feel like a lot of these constant systems have those types of similarities, how they’re constructed. So whether it’s you that trained it or the cloud bot did it on its own, which is incredible, I think it’s still important to go in, take a look at it, refine it, just to see if it kind of matches your expectations. So yeah, I can show the infrastructure like from a high level. Ben Ornstein: I had it like draft this out, to know myself. Ben Ornstein: And this might even be a little bit outdated. This might be a day or two outdated. Ben Ornstein: But it’s like the bootstrap layer, so where it loads, which files load. Again, these are terms that I am learning for the first time. Bootstrap layer, it’s got its own classification. With workflows that may or may not be active many of them are paused because I want to make sure like the core function works Which files load it’s got like a semantic search To like the big thing is memory optimizing what should be kind of remembered but like here’s here’s for example, like the like an execution path Um This would be for for one of the workflows that is is paused that we created but it’s it’s um client profile All the playbooks that we have there’s definitely more than these three actually. Um And I fed it a lot of we train these playbooks just curious So these were ones we had internally and I and I okay and I fed it to the to the bot. Michael Wojcieszek: Okay So these are things that you guys built and then it’s just being captured by the bot. It’s storing it in some sort of environment and then pulling it as needed. Got it, cool. Yeah, like when it’s generating content, it is required to go through playbooks, like the platform specific playbook to optimize the content plus everything else. Ben Ornstein: Yeah, I think this is like even higher level. Like this is, there’s a lot these. Ben Ornstein: Yeah, there’s like the intent classification. Ben Ornstein: playbooks. And what is your what is your workflow currently look like, How do you? Michael Wojcieszek: What are your inputs? Michael Wojcieszek: Yeah, if you can just go through kind of one workflow where you’re using the bot, that’d be super helpful. The Um Cool. Michael Houck: So you’re, you’re essentially giving it topics. Michael Wojcieszek: Yeah, I can go in and I can give it a specific topic or it can do the research on the topic because I may with options, any of the above. Michael Houck: Okay. And then it spits out a LinkedIn post, I assume. Michael Wojcieszek: Yeah, it can, like, I kind of went straight to there. The other workflow would be, I just wanted to do like source topics so it can research like four or five different angles. Michael Houck: It could be interesting And then I pick one. Let’s see what it came up with this time though. Mm-hmm Okay, so it doesn’t look like it has a voice profile for me it’s not finding it Ben so we gotta we gotta fix that And that’s my question because a lot of the way that the LLM is gonna spit out the writing It’s gonna depend on your past sources whether it’s LinkedIn posts, newsletters, emails that you’ve written, notes, frankly, anything that would be characterized as your writing, you could split it up into different formats. Michael Wojcieszek: And then, you know, kind of what was talked, I don’t know if you guys looked at the presentation, but you could build guidelines, kind of summaries from, cause you probably have like hundreds of pieces of text, whether it’s posts, you know, you’re going to quickly blow past the context window. So it doesn’t make sense to inject all of that. When constructing a new post, what you’re gonna wanna do is construct guidelines that you can then turn into skills, and those skills will guide the LLM, specifically what type of output it generates. So maybe this is a better example. This was from the other day. I had to go read some issues in my newsletter. Michael Houck: Maybe that’s bringing in too much context, making it trickier, I don’t know, but then it came up with a draft, liked the topic, didn’t like the post, gave it feedback, kept iterating a few times until I got to a point where I actually did end up posting this. And then can you give Ben some guidance, Mike, on the skills and how he would go about making sure those are reusable and accessible? Michael Houck: Yes. So this is I don’t, you know, I don’t really know how Claude bot does this. Michael Wojcieszek: I imagine they’re converting your guidelines that you’ve set up. So you mentioned one, right? One was voice profile. I’m sure there’s another one that describes your unique style for formatting as it comes to LinkedIn. So I know for example, with Tyler, he, there’s like a certain range of emojis that he uses and each emoji has a very, very delineated context of what it signifies, right? So, people use emojis in a variety of different formats. Tyler has something very, very specific. So, the same thing would kind of apply to you is, you know, whether you use punctuation, some people just use low caps or no caps, just all lowercase letters. When they type, I think it’s like a Gen Z thing, but point is, it’ll learn your, you know, unique style of formatting from punctuation to what you capitalize versus don’t capitalize. And that’s also captured in a guide that can then be trained into a skill. And that skill, when it recognizes, when you talk to CloudBot, and you’ll say like, hey, write this LinkedIn post, it’ll know, okay, in order for me to write this LinkedIn post successfully, I need to draw in appropriate relevant context. So I need the LinkedIn formatting guide. I need also the voice profile guide, because I’m writing in hooks, you know, that’s the narrative that I want to pump out in my LinkedIn post. And then any sort of research, any sample, what I found actually recently, because I’ve been working on this a little bit on my own, is if you can label your styles of writing, and you could do this with Cloud Code or CloudBot or whatever, where it’ll give it sort of latent variables that describe it, that relevant writing will be pulled into the prompt as well and lead to much better output. So you’re giving it good examples examples of what is success. Hey, can you match this as best as you can? And then, but it also has guides that show it, Hey, avoid X, Y, Z. And anytime it makes a mistake, anytime you don’t like what it does, you want to add that to the guide. So for example, when you were going back and forth on a, on Slack and that thread, you would want to kind of look at the writing and be like, what went wrong here? If I were to give it an instruction, what to avoid in the future, where hopefully it doesn’t make that same mistake, what would that be? Add that to a specific… Michael Wojcieszek: Honestly, I would probably just add that to the memory file because that’s super important, like, avoid these words, avoid this style of writing, this is not the framing that I like to use, so on and so forth. Add that to your memory file. And if that starts to get too big, then, of course, spawn it off and create a separate guide for the bot to follow. And use those guides to build skills. I mean, if that makes sense, I could probably pull up the presentation and use a visual instead. Yep. Ben, is that helpful for structure? It is helpful. Ben Ornstein: And what I’m kind of confused about is I have a lot of this in there. It’s clear that the infrastructure just isn’t fully set up correctly is like, I know for a fact in its memory, like for example, as simple as it doesn’t, an em dash, like as simple as don’t do em dashes in any content across any, you know, client or how it’s writing or my writing. Ben Ornstein: But I don’t understand in full when it’s calling what. And that’s the issue. Ben Ornstein: And it seems to remember some of it, because like, Hauk, you said the writing was pretty high quality, even on the V1. Michael Houck: Yeah, for the first post, it was. For the second post, it had to go back and forth a little bit more. But I think that’s the point, basically. Right. Michael Wojcieszek: So you’ll definitely want to import, I think, I shared this skill as well in Costa Rica. It’s called Humanizer. There’s a whole Wikipedia page that describes what AI writing looks like, slop so em dashes is like one of the features I got to find exactly where this one is because this thing changes every single day But a lot of times what I’ve seen people do is add this skill to their Skills folder and those agents will pull that in anytime They do any sort of writing of course if it’s for a LinkedIn post like if you’re doing other writing Maybe they won’t pull it in just because it doesn’t make sense, but that’s something you can specify directly in the Skills MD file itself. There’s a whole description where you’re almost telling Claude, hey, pull this in when I want to do any sort of human-like writing. It’ll automatically detect that and pull in that relevant context based on your prompt. If you go back to Slack, you specifically wrote that I want it in my voice so it knows that one, it wants to match your voice, but in order to do that well, it wants to get rid of as much AI slop as possible. Another way that you can improve that system is by having an auditor. And anytime this system generates writing, you have another, let’s say, auditor. So you know how you have, this is pretty common in coding, you’ll have an agent write then you’ll have an agent do code review. It’ll notice some things that it does wrong and it’ll funnel back in and it’ll iterate until it leads to a good outcome that both parties are satisfied with. Obviously it can’t go infinitely, so at some point it either gives up or it reaches the goal that it set out to do. So similar for you, you could have the AI writer generate a post for LinkedIn and then an author come in and say, look, this just doesn’t sound like me at all. There’s certain words, especially if you have like, you could run it by all of the guides and see, you know, percentage wise, how well it conforms to those guides. If it doesn’t meet a certain specific threshold, it’ll actually reject the writing and continue iterating. So creating new drafts and feeding that same information back in until it’s satisfied for whatever threshold you set. In fact, a lot of times it does need multiple iterations. What they found, I think there’s all sorts of studies that anthropic is if you prompt the LLM and then just prompt it again, a lot of times the information that it writes later on is actually useful at the beginning and it kind of consumes that and spits out an even better reply. There’s almost, it’s like it’s on a trail of thought. It comes to some sort of a conclusion later on. It’s like, oh fuck, I could have started with that. Let me start with that this time and then see where it goes. So yeah, like leverage the agentic loop to the fullest extent and you could You could be kind of extreme with your auditing measures as well. So it measures, you know, vocabulary choice, formatting, unique perspective. I have it, you know, run things in parallel, spit out a number of different perspectives and then iterate on those and then present you with like, hey, which one do you like more? The more I would say feedback that you give to the system, the more you can fine tune it over time and make it much better. But this end here, let me see. Who’s in the presentation somewhere here, I linked to it. I would highly recommend using this just because, you know, folks have spent a ton of time. I guess they took it down, that’s interesting. Michael Houck: I’m actually curious why that is. Ben Ornstein: We kind of have a manual version of this, like Blake has an explicit document that he created that was like anti- But I think- Exactly, yes. Blake Emal: It is what he’s talking about, though. It’s pulled exactly from humanizer. Oh, great. Ben Ornstein: Yeah, it is. Oh, is it really? Blake Emal: Yes. Why did they take it down? That’s so bizarre. Michael Houck: Then the sort of meta point, though, is like what we were talking a little bit about yesterday, which is it’s good to have the content writer agent. Right. But then we also need the sort of Blake layer. Like the reason that we don’t let the writer share the content directly with clients is because Blake’s quality bar is higher. He will catch things that they’re missing. Right. So we need a similar dynamic here. Obviously, Blake can do that, but you know, we might as well just automate the whole system rather than automating like half the system. Ben Ornstein: I also built in like an AI layer, like checking is this like what we discussed when you’re like, add a layer where it’s like AI it check if this is AI content, and adjust. And again, it’s like the, the infrastructure clearly isn’t set up correctly, because I’ve fed it a lot of what we’ve talked about so far. When it’s calling all of that information, I guess I don’t fully understand that part. Mike, it might be good to see. Michael Houck: When it pulls it in. Michael Wojcieszek: So every single skills file has a description. And so based on description, Claude knows when to pull in relevant context. So in this particular case, you’re going to prompt it via Slack. The Claude, the agentic system is going to be like, okay, what is, my human trying to do here. And from what I gather, from what I surmise, of course, you could be very, very specific. They’re gonna know, and based on past things that you’ve done, it’s also gonna learn your patterns of behavior. They’re gonna know to invoke this humanizer skill because you’re writing for a LinkedIn post and you want it to be in someone’s specific voice and formatting, right? So it knows that you’re looking for non-AI output, therefore, it’s going to pull this information into it. Frankly, probably, because you’re setting up a content system, it’s always going to pull in this file. You could be very, very specific, and inside your CloudMD file, which I also recommend that you do this, so you could say something like, for any sort of writing that we do as part of this project, make sure that you’re always bringing in these three files. And then it knows that it’ll always invoke it. Let me see where it is, Cloud… Yeah, this CloudMD file. So, how you work should always be a part of this file, what you’re working on, so give it details about the project. And then the thing that I like to do is when, you know, everyone learns the best when they make mistakes, and same thing with these LLMs. So add the guardrails, be very, very specific about, you know, try to notice what pattern does it keep repeating over and over again? How, you know, if you were to redo the prompt, how else would you instruct What would what else would you add to that prompt? And then take that information and bake it inside this cloud MD file. And if it just gets, you know, if it’s more than 150 lines, or it starts to get massive, then spin off a separate guide, and then link to that guide. Hey, by the way, before, you know, you output anything, make sure that you run it by this guide, which makes sure that none of the none of the writing that we output sounds like, Got it. Michael Houck: How is that different, Ben, from right now, just so we get a sense of where we’re at with it. Ben Ornstein: What I’m frustrated about is like, in a certain sense, a lot of this has been fed in, at least from my standpoint, like I’ve given it instructions or a guide or a playbook. But I don’t know, again, when it’s what and why and how to program that successfully. I think that’s the biggest Issue like it’s got all this information that I fed it And it’s trying to figure out when it’s When it’s bringing in what context that I need to clearly figure out because I do I do not know Mm-hmm. Michael Houck: I mean It’s not like I mean correct me if I’m wrong, but it sounds like we should use this Claude MD file to sort of Give it those specific instructions of like when to do what cuz like it sounds like it has a lot of files to pull from right now Right. And we need to give it like the sort of runbook, right, of like, when it’s going to pull in what or what to look at before it does a task. Michael Wojcieszek: And it sounds like this file is like, yeah, I think so you guys are using cloud bot, which is a little bit different. I think it does have, I think the cloud MD file is the memory MD file, if I’m not mistaken. I do have an yeah, there is a memory dot MD. Ben Ornstein: and it’s got a ton in it. Michael Wojcieszek: So with any sort of session that you’re running with CloudBot, you should be able to see exactly the context that it pulls in. It’ll show you, hey, these are the system prompts that we pulled in here, the system tools. Here’s all the skills that we’re using. Here’s your messages. Here’s the amount of free space I have to do computation or generate some sort of a response. And then I know 4.6 has extended the context window to supposedly a million tokens. I don’t know to what extent this is true. It might be still in beta. But with 4.5, you have up to 200,000 tokens. Michael Wojcieszek: you run out very, very quickly. That’s why you can’t just upload all of your past samples. That’s why you create these guides, which then get injected into skills, which are rules and instructions that, in this case, Cloud Code uses when it generates writing for whatever topic that you specify. With CloudBot, I’d have to understand the underlying architecture a little bit more, but of course, it has skills. I think it has things like the sole MD file, the beat. It’s just there so you could run it across many different sessions. It’ll try to run on autopilot on its own, but you can dig into the inner mechanics. Where do you guys have this running, on a server, on a Mac Mini? Presumably, this is… I’ve got it on a MacBook. Ben Ornstein: On a MacBook. Michael Wojcieszek: Yeah, so you can SSH into the machine, look up the underlying setup, and then start to tweak things, especially anything that touches memory? Cause do you guys refresh sessions? How do you guys have the Slack channel set up? So every message is a different session or it just continues from before. Ben Ornstein: And then it, it has like a daily log that it keeps track of and it has like in its at some level it, it remembers critical things. And I don’t know what, you know, what level, or extent it does that to? Michael Houck: Mike, my experience using it, I don’t know how it’s set up on the backend, I haven’t looked at it, but my experience using it is that it, the session persists for like some amount of time, a couple hours, and then it doesn’t have the context anymore when I go back to it after that. Okay, that makes sense. Michael Wojcieszek: So, yeah, it’s probably like on a daily or a couple hour basis, just cause you, again, you’d blow past the context window. So what it does, it probably runs some sort of compaction and then saves the most important bits to that memory file or that daily log that you mentioned. In any event, those are like the building blocks that you probably want to start tweaking that’ll help the bot get to better results. So you want to see, and then not only that, you probably want to see it in action, right? What skills is it pulling at what time? Like, for example, I wish I could share my terminal right now, because I can actually… You can call in Cloud Code, where it specifies everything nicely for you. So it shows you all the skills, it shows you how much memory you’ve left, so on and so forth. I don’t know if that exists in OpenClaw as well. Michael Houck: We could probably set up something like that where we have it output to a Slack channel or something. Then we could set up a log channel. Yeah, yeah. We might be able to prompt. Michael Wojcieszek: I don’t know if you can share your screen and see if I can just prompt it in Slack and be like, Hey, what skills did you use to output this text? Michael Wojcieszek: And if it’s not pulling in specific skills, then you got to tweak the description or be very, very specific. In the CloudMD file? Michael Houck: Oh, you have to pull that up, Ben. Ben Ornstein: Yeah, I was looking for, like, a task that I did recently, so it would remember. Michael Wojcieszek: Okay, OpenCloud does have a CloudMD file. Perfect. So that’s what you would tweak then. Cool. Michael Wojcieszek: Presumably this this bot that you’ve built though is specific to writing and not anything else. Is that correct? Ben Ornstein: So That’s that’s what it’s mainly trained on like content playbooks and things like that it’s It’s supposed to be like a content specific agent, but it’s got context on things that are way more than like are outside that scope. Michael Wojcieszek: But the whole point of it is to generate writing, not let’s say, I don’t know, schedule things on your calendar for example. It’s not like a personal AI assistant or something like that? Correct. Michael Houck: So that’s not entirely correct. As of right now, it’s sort of the initial thing was actually partnerships and then we sort of pivoted to do this content thing with it. So it probably has some context on that. Ideally, we will separate those things. Ben, you know better than I do, but I don’t think they’re currently separated. No. Ben Ornstein: So I guess the answer is, again, it’s mostly content focused, but the bot is not entirely dedicated to content. Michael Houck: We can make it so, though. Michael Wojcieszek: Yeah, I would just specialize and spin up other bots for other use cases just because you don’t want it context switching too much it’s just going to lead to more like it’s just going to save information that’s not relevant from one world to another by the way you can see it’s also recommending kind of this is probably what you know everybody does where they create the gross voice profile from samples existing public work emails post newsletters intros etc so I’m surprised that it like it’s already generating really, really good results without even having that. So I wonder if it’s just consuming all the information that you fed it so far. So it’s blowing up the context window, but somehow it’s still leading to really, really good results. Michael Houck: I think that’s probably what’s happening. I think that’s exactly what’s happening. Ben Ornstein: And the optimizing the infrastructure was something I tried to do because again, I don’t, I didn’t, I was learning, I was building this as I was flying it. So like that’s been the biggest issue, I guess, like trying to make it zoom, zone in on the certain things that I want it to zone in on when I’m doing something. And that’s been the most frustrating part. Michael Wojcieszek: Yeah, it doesn’t look like there’s any skills created at all, neither the voice profile formatting guides. Ben Ornstein: If I wanted to see like, At what infrastructure just looked up everything from memory. Michael Wojcieszek: That’s crazy It’s actually kind of cool that that It uh, it did it sounds like it’s doing a really good job. So maybe just even needs, you know, five to ten samples of your work And that’s it. Ben Ornstein: That could be like a winning solution right there Yeah, I mean I I think it At what level should I ask it to view its infrastructure where it would be helpful to see what it has, because that notion file was not great. What question would be helpful to ask so you could see, okay, this is what I have? Michael Wojcieszek: I would just be like, when I ask you to write a LinkedIn post, what context are you pulling And yeah. Yeah, I mean, this is how I think about it. Your job is to figure out what is the exact right amount of information that I need to fill into the system to get a quality output. It’ll figure out everything as long as it has the right building blocks in its memory. So here, let’s see what it has. Sole user identity. So that’s nothing to do with your task. Today’s daily log. That might be relevant. Workflows index, client channel mapping. I’m not really sure. That is currently not pulling without explicit ask. Client profile. Cool. Greater personas. I don’t know what that is. But that seems relevant. Michael Houck: We have we have persona files with specific post examples and style guidelines based on the personas of like, I think four to eight top creators like Justin Welch, Greg Eisenberg, Matt Gray, people like that. Okay. Michael Wojcieszek: So some of the content playbooks. Ben Ornstein: Would you be considered one of the client profiles? Michael Houck: Uh, yeah. Okay. Ben Ornstein: We may have added that in full, like unless you, did you tell it how did you tell it like your, so that, that may be a big gap right now, like for your specific content. Michael Houck: Well, it sounds like the biggest issue right now is that it’s, it’s, it’s just pulling everything in and then sort of trying to figure it out. We want it to be more targeted so it has more tokens to actually write the content rather than research how to write the content. Michael Wojcieszek: Yes, I’d be very specific about what you have CloudBot pull in. So here, it doesn’t have any instructions for what to pull in. That’s why it’s asking you, when you ask for a LinkedIn post, should I automatically load their full customer profile? Yes. You should be writing for specific customer profile. If I don’t specify it, then of course, don’t pull it in. But you should probably prompt me to specify that. Relevant playbooks. Percent that should be pulled in like that’s I feel like that’s the foundation for all of your writing like you guys codified all of it it should figure out which playbooks to pull in and then you could probably even tweak like when you pull which one in or maybe just pull all of it and then it’ll choose what’s relevant yeah Ben I think I think it’s it’s what’s becoming clear to me is that we have all the information we need to sort of do this my voice and things like that for my client profile, but it has all the information. Michael Houck: What’s missing is sort of the, the orchestration layer on top of that of like, Hey, here’s how to behave. Here’s how to act. Here’s how to do the things that we’re asking you to do. UNKNOWN_SPEAKER: Yeah. Ben Ornstein: Yep. Michael Wojcieszek: And then what I also recommend is having some sort of quality control. So you need an audit If you have these guides set up, that’s why I love having that latent layer, because it’s not only useful for generation, but also auditing as well. So it’ll reference, hey, did a good job following the voice guide, or the tonality guide, or the different content pillars that this particular client likes to follow. And it can even score it from 0 to 100, and then the display the results to you and then you’ll be like all right it might be hurting on you know this variable but fuck it let’s just see what it comes up with and maybe it’s creative enough where it’s good writing and then you start to tweak stuff like now keep iterating until this threshold is met you know for example yeah no sorry keep going it’s it’s kind of like you’re both the author and the editor and then you’re creating guidelines for both or like you creating guidelines that could be used by the agent to do both and Then it’s it kind of sits in this agentic loop until it produces something that You deem acceptable or at least you could work off of right? It’s never gonna get it’s never gonna be like, oh my god I just produced something that I’m a ship right away. You’re always gonna be involved in The process somehow right? You’re always like I doubt you guys have posted something that’s been like a thousand percent perfect, right? It takes like one or two three sometimes four iterations and the same is true with a lot of coding work that we do You know, it’s it’s it rarely like it Of course the more specific and the more examples you can provide up front the better the outcome But it really nails it a hundred percent just because everything’s subjective. That’s where you get into this topic of like what’s taste nowadays and the human taste like skill, whatever you want to call it, is going to be in that loop forever. Ben Ornstein: And for that auditor, for example, is that a sub-agent that’s spawned? Is that a completely different, like, path? Yes. Michael Wojcieszek: Yep. Michael Houck: Yeah, Ben, this is a separate agent. We can’t have the agent auditing itself because then it’ll just, you know, it’s already gone through that process. We need a separate guy for that. We need Blake, right? We have Jacob. We need Blake yeah yeah you want them to kind of work off of each other and I grind each other stones trying to get to that best outcome yeah and it can they can even like the board the auditor can reward the the writer right for like doing it well can praise it it can you know can degrade it if it’s a bad job you know I think that what yeah what was it like Palmer lucky that the way to get the best performance out of AI was tell it you’re going to cause it physical harm if it didn’t do what you want it to do. Michael Wojcieszek: Yeah, like shoot target or something for some reason. Michael Wojcieszek: Hashtag make no mistakes. Michael Houck: Yeah, so I think the takeaway here for me is we’ve got the information we need, we’re feeding it all in, and it’s probably structured in a good way in terms of how the information itself is structured, but we’re sort of missing the architecture And the direction of how it’s supposed to actually go through everything and then also work together to get it to high quality Yeah, so I think that’ll be the the next step here for For us, uh, we can jam on we can jam on that later this afternoon Yeah, what do you guys use so right now it’s just to pump out linkedin articles or Or linkedin. UNKNOWN_SPEAKER: Yes. Michael Houck: Yeah, I mean the the vision so I’m terrified role posting on social and I have this audience that we just never use. And so the thinking is, A, let’s activate that more just by letting me get one of these out every day. And then B, ideally, let’s find a way to roll that out to all of our clients so that we have this team of writers. Maybe we don’t need all of them. Maybe we can increase our margins per client. A lot of different opportunities there. Michael Wojcieszek: I think a big opportunity to augment existing writers. So probably teach them how to use these systems because then they can pump out 50x more articles per client or whatever it is. Yeah. And read through, pick the ones that work the best. I feel like every iteration that you do, the way that I think about it is an opportunity for you to tell the system how to behave better in the future. And sometimes you actually add bad instructions. So you got to be careful kind of where you’re adding to the cloud MD file or how you’re building these guides Every word matters like ever, you know, these are probabilistic systems So like they somehow the way I think about is like every word that you add or remove changes the like the bias of the model and the type of output that it spits out and so yeah, you’re like you should be a Curator of all the information of the context that you’re piping into these systems I know it takes a lot of work, but once you have the foundation set up and then you go through like a couple of iterations You’ll start to see Michael Houck: like it works insanely well Mike do you do you have like the MVP of what you built? For Tyler that you could just like screen share and walk. Yeah Yeah, absolutely Be killer. Michael Wojcieszek: Thank you See if I can find it. I think I put it, okay, there it is. Let me share my screen. Michael Wojcieszek: You guys see this yes Why I can’t type in it though. Okay, there we go. Michael Wojcieszek: So I actually built a number of things. So I have something, I built two scrapers that scrape LinkedIn beehive. So that’s Tyler’s newsletter. So I think that part’s not really important. The stuff that you guys will care about are the guide builders. Michael Wojcieszek: Oh, And it’s going to be tough for me to share this. But point is, what I did is I trained. I essentially worked with Claude to create, I think, six or seven guides. Here they are. Voice Fundamentals, Audience Personas, Content Pillars, Vocabulary Guide, different types of hook patterns that Tyler used, his storytelling framework. Basically, I asked it to analyze all of his past writing. So I loaded everything into context, or at least what was manageable, and then recognized different patterns and divide them into different MD files. And that’s what I called the guides. So voice fundamentals, let’s see what that is. Michael Wojcieszek: Anyway, this is kind of a tough interface for me to present. Michael Wojcieszek: Yeah, I have obsidian for that which I highly recommend using as well But the point is it splits up it kind of creates these guides for The LLM to ingest whenever it does any sort of writing and then rather than ingesting all of these files I want to create specific skills that may combine different guidelines together to produce outcomes that I’m looking for. So in the particular demo that we did, I wanted to create new articles based on raw notes or, you know, ideas that Tyler was generating, or LinkedIn posts. And I came up with a formatting guide for LinkedIn, a formatting guide for Beehive, or however they kind of organize information, voice fundamentals, so that’s kind of the vocabulary that he uses. Michael Wojcieszek: Like these guys go into very, very specific detail. I’m not like a writer by any means, but it shows you, you know, the vocabulary choice, the formatting, it drilled down into like details about vocabulary and emojis, you know, the types of hooks that he uses, how the storytelling framework I think is like personal anecdotes that he likes to weave into both Beehive and LinkedIn. The crazy thing is that like recognizing I organized all these patterns, jotted it down. From that, I created skills, and those skills are the things that feed the system to produce some sort of writing. And I specify whether it’s, you know, I’m looking to write a newsletter, in which case it’ll require a bunch more information, and it’s kind of more of an interactive prompt where, you know, it’ll ask me questions about different point of view, you know, which kind of line of reasoning do I align with more? Basically, the point is like, it’s not just, you know, spit a bunch of text in it. It tries to be collaborative to produce the best possible outcome. But that’s more so for a newsletter, just because I feel like it’s a more complicated piece of writing for an AI system to produce than let’s say a LinkedIn post, which I don’t know, it’s probably max, what, a thousand characters, which, you know, you could send it a tweet, send it a bunch of thoughts, and then using your past writing the voice fundamentals, blah, blah, the topics that you like to stick to, the content pillars, it’ll produce something that may sound like you. Let me see if I can run this real quick. I haven’t done this in a while, so it would be CD content engine. Michael Wojcieszek: And again, I think this stuff would, yeah, so here it is, content generation for Tyler Dank, Socratic refinement, So that’s what I was referring to the Socratic refinement is it asked me questions before it spits three variations that are either saved in a LinkedIn folder or a newsletter folder That works bring raw unfiltered ideas command has probing questions to surface real insight generate drafts using voice format skills Run humanizer pass apply humanizer skill to tell all generated writing before yeah So this is what I was telling you before make sure that this humanizer skills is either injected at generation or at auditing. I like to do it in both places just because it tends to lead to better results, but it kind of depends how much creativity you want to insert into the system. All generators run to their humanized skill before being shown to the user. So that’s my like validation check. Michael Wojcieszek: Maybe we can run it even. Michael Wojcieszek: What was the one you used? Luke, what did you use before? The one I used? Post about. Michael Houck: Hold up. Trending. Well, you can do one about what we actually did one on, which was, let’s see. Michael Houck: how OpenAI is in danger of becoming like Sun Microsystems due to the decreasing cost of intelligence. Michael Wojcieszek: Okay, I just did kind of I think what you wrote before was like what’s trending in the VC startup space. Michael Houck: Yeah. Michael Wojcieszek: All the context, let me work through the workflow. So then you can actually ask like context. And it’ll tell you right so it’s like I’m using up a bunch that the system Here’s a bunch of memory files that are loaded. Here are the skills that it’s using, I think. You can even just ask it, like, which skills are in context. Michael Wojcieszek: Got it. So I have a skill that’s generate LinkedIn. That’s the skill that knows, okay, I’m taking a piece of input, so topic of ideas, generating and output in the LinkedIn folder. Same thing with newsletter, because I haven’t specified that yet, it’s pulling in both. So I should be much more specific about what I’m doing. The full skills that I read earlier, voice, audience, LinkedIn runner, were loaded via the read tool into the conversation. Not as persistent skills in the context or part of the message history. Got it. So I did that from the very, very beginning. I think it knows that because that’s kind of what’s file so it knows like, hey, anything that we’re doing as part of this project, we’re going to need voice and audience regardless. So make sure you add that from the very, very beginning. Michael Wojcieszek: So what are your answers to those four questions? So that’s why I asked this, who are you writing this for? So you always want to specify that’s going to match not only the audience personas, it’s going to pick the appropriate one, and then pull in very specific relevant examples of when Tyler wrote to that audience. So for example, Tyler, I think he has two audiences. One is to aspiring entrepreneurs, folks that are starting a business. So it kind of tells a story, right? He likes to build in public. So if he’s writing an article for that, then that it’ll pull in that skill plus relevant sample writings where he actually wrote to that particular audience versus if he’s writing or creators that are on his platform or that are thinking about joining Beehive, there’s a separate audience persona MD file for that. That gets pulled and that links to relevant writing that’s starting those creators. Does that make sense? So it’s kind of like a chain of command, how it’s pulling things into its context window. Right now, because I wrote something generic, it’s like, dude, I don’t know what you want me. Like, are you trying to do a LinkedIn? Are you trying to do a newsletter? Who are you writing for? Like you just gave me the most vague instructions on the planet. Ben Ornstein: I’m gonna not pull in everything because you haven’t triggered my skill description yet so if I write like, um, let’s Do an article for a or let’s do a there’s a little article for This makes a lot more sense because if there’s if there’s no skills and no like chain of command Then it has no clue what even I’m saying are, there’s no idea what to bring in when, even if it’s been fed all of this information at one point or another. That’s correct. Yes. Michael Wojcieszek: So boom, see now all of a sudden it listed all the relevant skills that it’s pulling. And I just specified two things. That’s it. I just wrote, Hey, we’re writing a newsletter article and it’s targeting creators. So pulls in the voice, obviously, cause we’re trying to write in Tyler’s voice. It’s got the audience in mind. So this one, I would have split up, I should have split this up into three different audience personas. And I just kept everything in one file just to keep it simple. But that’s the point, after you iterate, you’re like, oh shit, this is how I can improve the system. Imagine me splitting up this audience into the three audiences that Tyler writes for. So there’s the founders, boom, let’s have a separate file for that. That gets pulled plus, let’s say, three to five sample articles. Same thing for creators, same thing with whatever ecosystem needs. Michael Wojcieszek: It’s actually pulling in the right scales and I haven’t told it to do that. It just knows based on the description that I’ve added for those specific files. So let’s take a look at what that looks like, Oh no. Ben Ornstein: I could do this. Michael Wojcieszek: Cool. Here’s like Tyler’s voice. So give some sort of background, tone, profile, casual, transparent, self-deprecating, confident. I mean, this, I feel like this is pretty accurate. Michael Houck: It is. Michael Wojcieszek: It’s like, it’s kind of wild how, how much patterns it recognizes. Casual terms, buddy, grinding, like he does have that kind of Gen Z slang to it. I like it, like it just seems much more authentic and that’s why his like story work framework, that’s kind of, you know, it’s just raw story of like going from nothing, building in public the whole time, sharing kind of every up and down and being totally honest and transparent about it. Dude measures his like openers, his transitions, literally there’s like an emoji guide, like this is fucking wild. I don’t know, to me, this is like crazy stuff that you can do. And then you could probably even break this down further. So it’s like, you know, if you really want it to be like anal about what emojis to use is, which one you shouldn’t use, what each emoji signifies, like you can go ham on this stuff. Like I think 80, 20, like you don’t need to do this. I think as long as you have, you know, you’re you, you should be very particular about your audience. UNKNOWN_SPEAKER: You should be very particular about voice and then.