Truth in IT
    • Sign In
    • Register
        • Videos
        • Channels
        • Pages
        • Galleries
        • News
        • Events
        • All
Truth in IT Truth in IT
  • Data Management ▼
    • Converged Infrastructure
    • DevOps
    • Networking
    • Storage
    • Virtualization
  • Cybersecurity ▼
    • Application Security
    • Backup & Recovery
    • Data Security
    • Identity & Access Management (IAM)
    • Zero Trust
    • Compliance & GRC
    • Endpoint Security
  • Cloud ▼
    • Hybrid Cloud
    • Private Cloud
    • Public Cloud
  • Webinar Library
  • TiPs
  • DRAW

Build a Personal Assistant with GitHub Copilot CLI

Github
10/09/2026
0 (0%)
Share
  • Comments
  • Download
  • Transcript
Report Like Favorite
  • Share/Embed
  • Email
Link
Embed

Transcript


Thanks for watching! Mae'r bwyd yn rhaid i ni ddweud llawer amdanyn nhw. Mae'r cyfan yn rhaid i ni ddweud llawer amdanyn nhw. Mae'n rhaid i ni ddweud ymlaen. Hi everyone! Hello, hello, hello. Is everyone having a good day today? Where are we watching from? Are you currently watching this stream? Today is another episode of Rubber Duck Thursdays. My name is Marlene and today it's going to be a pretty chill stream. Let me know if you are building anything interesting or how your experience has been. I usually like to ask where everyone is watching from. I am back in London, so I have been away for a while. I was away at EuroPython in Poland, which is very nice. I see some people watching from Canada. It's good to see you. I see someone else from South Africa. Good to see you as well. We also have someone from India. Very, very nice to see everyone on the call today. I haven't seen some comments yet from LinkedIn. Are the LinkedIn people around? Are you watching as well? I'm hoping that my comments are going to show properly for that. But it's good to see everyone. And today is going to be a pretty chill stream, like I said. I'm going to be chatting about GitHub. I'm going to be helping to understand the CLI. Oh, someone said cool clothes. Thank you. This is a Python T-shirt that I got from someone at a conference. And this is someone that does tutorials for Python. So shout out to Ruben. And this is part of his shirts. But if you are watching from interesting, let us know in the chat. I am just going to be walking us through how to go ahead and be using Copilot CLI and testing out some experimental features. So I am actually not seeing let me check to see if LinkedIn is working properly. Because I'm not seeing any of the comments from there popping up. So let me check that. If you have been using GitHub CLI, please drop a note in the chat. How have you been finding it? Also, have we gone ahead and have we been able to have any of us been able to decide sort of what they like to use best? Do you prefer to use Copilot CLI or do you prefer to use Copilot in the app? Do you oh, I see someone else today saying they're watching from America. Good to see you. From YouTube, we're streaming right now to both YouTube and to LinkedIn and to Twitch. I'm actually not sure if we're streaming to Twitch, by the way. I need to add in Twitch next time because I might have forgotten to add that in today. But we are streaming to Twitter as well. And yes, in terms of what we will be learning today, we're going to be learning about the Copilot CLI and some of the experimental features with it. Okay. LinkedIn is working. I do see someone from LinkedIn. Hi, Adrian. If you're watching us from LinkedIn, let me know. I realize now that I forgot to add the Twitch stream. I wonder if I can add that in last minute. I don't know if it'll be bad to try to do that. Let me see if I can add in the Twitch stream and see if that will work so that anyone who's watching from Twitch can also join us. I think I've added it in. So hopefully we are streaming there as well. And basically today, I'm going to switch over now to this view. We are going to be, we are going to be learning when someone asked what we're learning. We're going to be learning about different, some different new features from both the Copilot app and also from the CLI. I wanted to understand if any of us have a preference. Do we, have we decided we like the interface for like a Copilot app? Do you still use your IDE? Are you using the terminal? And one thing that I really like, I'm using the GitHub Copilot app right now, and I'm going to open a new terminal. I like that you can have a terminal open and you can also have like a chat open on the side. So I'm going to go ahead and I'm seeding right now into my downloads folder, and I'm seeding into RDT, which is Cerebro Duck Stream. And then I'm going to open up Copilot CLI here by running Copilot dash dash banner. I like that. Actually, you know what, I'm actually going to close it because I wanted to say, I want to, oh, ah, hang on, hang on. Let me close that. I also want YOLO. So I have my preferred settings. I think you can cache your settings so they just stay the same over time. I haven't done that yet, but I think you should probably be able to do that. But yeah, this is a really nice, I like this general setup because on the one hand, I can see the terminal. And on the other hand, I have the chat from the GitHub Copilot app. So this is a nice setup. It's telling me there's some MCP servers that are not loading yet or not connected yet. But I have a lot of MCP servers and a lot of skills, which is probably not ideal. But yeah, so today I wanted us to try out some new features, which I have not tried yet, that are part of the terminal. And one thing that I want to recommend as something to try out in GitHub Copilot, if you're using the CLI, is to try the slash experimental command. And you can go ahead and you can toggle that to be either on or off. So we can say experimental on. And when that's on, the good thing is it opens up GitHub Copilot in experimental mode. And you have lots of exciting new features that you can test that we are going to be trying to test out today. So if you haven't tried out the experimental feature, I would definitely recommend doing that as well. I am seeing some comments. So let me say hi to some people with other comments from YouTube. Someone is saying IDE is my go to, but the Copilot Canvas mode is really nice. I agree. I feel like I'm so used to looking at files. So I like the feeling of the IDE. But I'm also kind of getting used to the Copilot app. And I like the way it looks. It looks very approachable right now, where I can see both the terminal, and I can also see the chat interface. So I'm kind of leaning towards that. And yes, I also really like the pick and polish feature that's in the Canvas, which is really, really nice in the app. So I would definitely recommend that as well. Hello, hello. A lot of people on YouTube today that are commenting, if you're watching from YouTube, say hi. If you're watching from LinkedIn, say hi as well. Let me know that you are watching us. And then someone's saying how to enable Asai anime. I don't know. Which one is, what is the, what is that? Okay, I know what that is. But let's ask, let's ask in the chat, in the chat, how we can enable it. Let's say how can we enable? Oh, oh, the anime. Do you mean the anime that starts at startup time? Oh, yes. So okay, okay. I get what you're saying, actually. So if you want the animation to show up where we had co-pilot coming onto the screen, you want to go ahead and you want to use this banner, this banner thing that I passed through this banner argument. So you want to type in co-pilot if you're using the CLI, co-pilot, and then you want to say dash dash banner. And I like to use YOLO, because I just, I want, I don't want that the agent to ask me too many questions. And I YOLO does a good balance. So I like to put these two, but if you enable this, by putting in dash dash banner, it should just work. So if we press play there, we get to this session here, which I like. And then the next thing that we are going to do is we're going to try out some different features here. I want to be able in this, in this session today. Yes, thank you. It is very cool. I do think it's very cool. And I love the co-pilot. Like I think that there's so many little features that are really fun for us to try out. So it's great. Thank you. I think the energy is great as well. So good to see everyone on the stream. Yeah, so I will say that so there's a couple of things to keep in mind One of the things is like I mentioned Experimental you can see that I already toggled it on and we want to try out some new experimental feature to get us started and Something that I like to do is I want to be able to Right now in copilot I have automation set up in the app So if I go to automations, I have a couple of automations. This is one of the automations I'm not sure if I can show you all of it because hang on because I don't want to show you like all of the things that That are that I have for work But basically with this automation it goes into my slack It goes into my email with outlook and It looks at everything that is there and every single week at the beginning of the week It runs this automation and it looks for what are the top tasks that I? What are the top tasks that Marlene needs to do and to set this up? All I needed to do was go to the automations tab and create a new automation We can actually edit it so you can see exactly what I did So basically what you need to do you create an automation. I have a weekly priorities Automation it runs weekly at 8 a.m. Oh, oh, no. I don't want to change that at 8 a.m. On Mondays So every Monday at 8 a.m It's gonna run this automation and it's gonna look through it's gonna look through my slack. It's gonna look through my email it's gonna look through my calendar and my teams and then it's I told it to Synthesize this exact structure, so it should create this What looks like this what this animation here where it looks at my calendar? And it resolves any conflicts because I'm notoriously bad for having 500 Calendar meetings at the same time and that being a problem. And so we wanted to Flag whenever there's calendar conflicts We also want to prioritize any content or marketing us from my team because I do Developer relations and then anything new from teams I want to also know what highest priority and lowest priority based on my job And so there's a couple of notes that I added as well So that this is just tailored to me and I find that this automation just makes me much more productive So, for example, I was traveling this past week and I wasn't able to Really be online because I was speaking at a conference And so this weekly automation was amazing because it summarized everything that I missed from when I was offline So this is an example of an automation. It runs for me weekly and has been such a great tool for me in my work what we want to do today is We want to see if we can create this automation for ourselves like with an AI agent and I want for copilot app to give us the instructions for how to set this up in the copilot CLI so what we can say is can I want to replicate the automation feature that You have here in The app but with Copilot CLI give me the commands To be able to run scheduled automations In the CLI. Okay, and then let's see. What is the recommendation? We can also test out a feature in copilot CLI there's a super cool feature called research and I can add in a topic so I can say something like What's a good what's a good question to ask about this I want to say how can I easily set up scheduled automations in copilot CLI and What I think is pretty cool is that With this research it goes online It we're able to see exactly what it's going to be researching and it will give us information that we can then Implement in some sort of a plan and it goes in the background It's thinking we can see exactly what it's doing and then it's gonna find the information It needs to be able to answer this question And it will run as well parallel sub-agents to be able to do this so the research is as quick as possible so the reason why I want to do this is because with our Whenever we are going to be building a personal assistant. So today that's my goal is I want a personal assistant when I come back from a Meeting or something like that. I want to be able to have a personal assistant Tell me okay. This is exactly what you need to be doing you know whether that is This is the task that was brought up in teams for Marlene and Marlene you were tagged in this task four times but you didn't answer and I want to be able to quickly have my assistant Give me a summary of what the tasks were and to have this run on a schedule So like my other one have it run weekly or something like that Have any of you tried to run personal assistants? There's have to build personal assistants I would say like there's a couple of ones that really took off this past year open claw was very popular and so we saw a lot of people that were building with open claw, which I thought was really interesting and They built a lot of telegram bots, for example where you would have a telegram bot that would you know, take a look at what you were building and then would You know do something from there So it just really depends on what you want to build But a lot of people seem to like the interface of talking to an assistant on the phone Have you tried to build an assistant that you chat to you on the phone I know a lot of people at my at Microsoft or at github have Actually built their own personal assistant that they chat to you on whatsapp or on telegram For me personally, I don't know about you But for me, I just feel like I'm not yet there Where I want to talk to an assistant on my phone or like over chat on my phone like on whatsapp for example because I just feel like I have enough computers during the week and So maybe I don't want to have it on my phone. But how how does everyone feel about personal assistants? Are you using any on your phone? What does it usually look like for you to do that? So in the meantime When we so far We have decided we are going to build this assistant We've kicked off our research session here in copilot CLI and we can see that it's searching It's using sonnet 4.6. And this is very interesting by the way I want to point this out because I think this is very interesting is that the core model we were using for this whole process For starting copilot CLI, by the way, we're in copilot CLI here in the terminal in the app We are using opus 4.7. Can you see this here? So it says opus 4.7 here, but at the same time When we ask it to research it chooses another model it researches uses using sonnet 4.6 and this is also something that's very very cool about Using these different commands in things like copilot CLI because it's going to Automatically choose the best model for the job. It's going to choose the one that's going to be the most performant So this is a good way to also save yourself some money By doing this because the parallel sub agents will run with cheaper the best model for the job Which is cheaper and and also quite good, which sonnet 4.6 in this case And now if we go back here and we look at our tips from the copilot app on how to actually How do we actually go ahead and get an Automation going that we can duplicate that's similar to what we saw on this screen It gives us a number of different commands that we can run So it says copilot CLI has no built-in schedule But you can replicate the apps or to scheduler, but you can regulate that apps Automations feature by combining its non-interactive P mode plan mode by the way with your OS Schedule Chrome on your Mac launch D. Here's the recipe. So it gives a recipe here and Gives a script that we can use and so on One thing I know is that there is an experimental feature that I want us to try out today So let's actually ask it say Let's say are you sure? Are you sure? I think there is an every command So this is a newer feature that I want us to try out today, which is the every command and I feel like copilot app didn't pick that up because It's an experimental command And is it every I don't know I don't remember but there's a command to do this regularly and So here Let's see. It says oh Wait, I know there is there has to be Okay, we're gonna check it directly because I don't know why copilot app is not recognizing the every command which is a new experimental one and Copilot CLI is still working in the background. So let's check to see there is an every command by the way Copilot app is not recognizing the experimental features in copilot CLI But there is an every command and I want us to explore this every command Because this is the command that we want to use I wonder is there a way that we can get more information about a command? I'm not sure Let's see if we type in every Mmm, okay. It's gonna say interval and prompt. So let's go back and we'll do this in a second But the main thing here is that we are going to use a specific command one of the things it has said is that Copilot has said we can implement this using the Planning flag and also using a cron job So a crone job so that will also allow us to have an automation going but that's a little bit complicated and We have a an option not to do that which is what I want us to test out in today's stream and When we come back here, we can see that there So there is some research. Okay, and copilot CLI has done the research on its own So I'm going to go ahead and how do I I can't close that completely but it's saying we can actually maximize the portal and what it's saying is I've researched I said, how can I easily set up scheduled automations and copilot CLI and it said oh Okay, let's go back and it said I Have comprehensive findings for both research sub agents Let me synthesize into a final report and then says here are the key findings the easy path Enable experimental mode, which we did we used this new command and then it says recurring every Every one hour run the test suite and summarize any new failures so we can actually automate stuff by Using this slash every command and then after that we can say we can do a one-shot We can say after 30 minutes give me details of changes to read me made in the last 30 minutes So we can do this. This is also really cool. I didn't actually know about the after The after feature there the after slash command is the word for it actually And then we have interval options so we can have with SM HD Suffices so it says bare numbers minutes crone syntax inside the CLI so we can say seconds after 10 seconds after something minutes hours or days and Then we can also manage type every or after Every or after alone to the open Manager or stop the prompt to cancel the ID important caveat Schedules are session scoped. So they only fire while your interactive session is open for truly persistent scheduling Across reboots or without an open terminal choose use the OS Chrome or GitHub actions actions, call in copilot dash prompt, allow tool, now ask user. So we have two options calling copilot dash prompt allow tool now ask user No ask user. So here. If we want to go ahead and just do something in our session while our session is open, we can use these options. If we want it to be persistent over time like our automations, we actually have to schedule a GitHub action or we can schedule a Chrome job. And this is a super helpful report. I actually found it to be really cool because I didn't know about the after command. And we can try this. Let's say let's do this. Let's try it. Let's go. Okay. I don't know. I always feel nervous to try some new things on this stream sometimes because I'm like I hope it goes well. But what we're going to do is we're going to try the after command. So we're going to say after let's say after one minute. I hope that's the correct amount of time. Will it recognize that? I hope so. Anyway, we're going to say after one minute. After one minute, print quack. I don't know if we're going to. Okay. Print quack to the screen. Okay. And let's see if that is going to work. So we are trying out this tool slash command to see. We can see it's created the schedule. It said schedule at 1058, print quack to the screen. Run at that time. Run after to manage schedule prompts. Okay. It looks like it's worked. So in about a minute from now, we are hopefully going to if that worked correctly, we're hopefully going to see the word quack printed to the screen. And that is hopefully going to work for us. So let's see how this goes. Have any of you actually tried to schedule out sessions? Have you tried to create your own personal assistant that runs things on a schedule? Do you think you would use this yourself as well? Like how useful do you think this command is? For me personally, I think it's useful. I found the automate. There we go. You see? We've got it working. We can see it says scheduled prompt number one. Print quack to the screen. This is in its thought processes here. And we can see quack. So that worked. So the command is working as expected. We can see that the yeah, the command is working. And I think this is a very good this is a great way to see that something is we can schedule something actually with just a simple command. What is everyone thinking? The chat is so quiet today. What's thinking? Do we like this schedule? What are people's thoughts? Do you feel like you would use automations? This is just with the scheduled prompt. And we can use after or we can use every if we want to say have something that's a bit more long lasting, we could do that. But yeah, let me know what you are thinking. I wonder if I can move this out to a new terminal. But I'm wondering if I'm seeing okay, that's fine. Let's see. Okay. I do think that this is useful. At least to me, it would be useful if I was using this. And you can try out different things. So you can go ahead and you can try this after option. Let's try I would say let's go ahead and give it a try to do the every option as well. And see how we can get that going. For some reason, everyone is very quiet in the chat. I'm not sure. I hope my comment section is working correctly today. But it's okay. We are going to keep experimenting here. I've learned something new because I did not know about the after slash commands. And next I do want to try out the every slash command and see if that's going to work. So let's say every. So let's say every we can say something like every and how do you because the thing is I don't want to implement this and then have it run and not know how to delete it or how to stop it if I'm running the every command. So let's ask it how can I remove an automated command if I run every. If I run no, I don't want to run the if I run the every slash command. I just want to know how I can remove it just in case. I actually do try it. And I don't want it to okay. It's saying to remove every or after automation, you have two options. Type every or every schedules with no arguments to open the schedules list. Type okay. Then use the arrow keys, press D to delete or E to exit. Cancel by ID. Okay. So what if we so we could write something like every even if we just type every here, it's going to show us that they're actually right now no scheduled prompts. That's this is a nice interface actually. So if we press exit and then we wanted to say something like every every five minutes let's send a prompt look through my emails and let me know no look through my calendar and let me know what meetings I have today. So let's see if we if that will work. And we're assuming that after five minutes it says scheduled number to run every. Okay, I think that worked. So this is going to create a schedule for us. It's going to go ahead and schedule this prompt to run every five minutes. So after every five minutes, I should actually get some feedback from copilot CLI to actually be able to see my calendar meetings. And why I like this setup is that I feel like if you're running these commands, particularly if you can make them persistent over time, what I really like is that you can create a personal assistant and it will work for you if you are creating a personal assistant in this way. Because you can just like I mentioned before, you can just be going ahead on a at a conference or you can maybe take some time off from work. And you don't necessarily need to have people catching you up. So especially if you have your personal assistant schedule to check your emails every week or to check the team's chat or whatever it is you're using quite regularly and then give you a summarized report, then I think that's a really great way to be able to actually have a personal assistant help you without having to feel you know, stressed about going to ask people for stuff. Another thing is you could schedule to do automated tasks for you. So for example, I like to understand what's going on in the industry. And like last time I was on the stream, last time I was on the stream, I think we talked about loop engineering, which is really fun. And I enjoyed talking about it. But then what ended up happening was we we talked about loop engineering, there was a lot of hype around it in the AI industry. And then after a while, what happened, and by the way, I'm just going to be waiting for the five minutes to go through so that we actually go ahead and see if this task worked. So that after five minutes, it actually hopefully is going to look through my calendar. But after last time, when we talked about loop engineering, I, it was super funny, because then the I'm actually going to check to see that everything is working on online. But when we talked about, we talked about loop engineering last time. And a lot of people online then said, this is great. But I think, again, the one of the first people that told us about loop engineering was a guy called Peter Steinberger, who is the creator of OpenClore. And okay, great. We are still streaming live. It's okay. Yeah. Who is the creator of OpenClore? And oh, okay, okay. Someone is saying that there is missing in Okay, it's saying, hi, there's a missing in the title for the stream for the word assistant. Can that be fixed under the stream or after? I think it has to be fixed after the stream. I'm not sure. I could probably Oh, it's saying though, on my screen, it is saying on Twitch that it says, it's build a personal. Oh, there. Okay. It's misspelled. But I think it's still working. That was on. Is this on? Let me see. No, on my screen, it is actually saying the correct thing. So I'm not sure why it's showing up. Why it's showing up is missing from the title of the stream for the word assistant. I have no idea why what's missing from this stream. And it's on Twitch. Thank you for letting me know. I have no idea why it's saying that. Is it in the title that it's missing? Or because on my side, it's saying the title says, let's build a personal assistant with GitHub copilot GitHub CLI, which I do not see. I don't know. Okay, thank you. Thank you, Christopher, for letting me know. It's okay. Yeah, I think I'm not sure. The internet is always fighting me. So I am really not sure why it was it wasn't showing initially. But last I did want to talk about I don't know how many of us were on the stream. Oh, there we go. Our schedule prompt is about to run. And oh, you're saying YouTube is the same. Wow. Okay, the schedule prompt is running while the schedule prompt is running. Let me see if I can edit to see why the title isn't showing. I have no idea why the title isn't showing correctly. But I'm gonna save it to see if that will help. I don't know if it's gonna let me fix the title. Yeah, it's probably broken a little bit for some reason, but it's okay. Thank you. Yeah, I feel like for some reason, the internet is always I see a system is spelled incorrectly. Thank you for letting me know the problem is, and it's early in the morning for the rubber duck streams. And so I scheduled this early in the morning, when I probably should have scheduled it later in the day. And so because of that, I think it's, it's probably just like this for some reason. But um, what we can see on the screen, if you can, if you can see on the screen that the schedule prompt that we scheduled a couple of minutes ago actually did run. And we can see that it sent the prompt it said, Look through my calendar and let me know what meetings I have today. It says I don't have access to your calendar in this environment. There's no calendar tool to make the schedule prompt useful at an MCP server. It should have, by the way, let's see, do you have access to work IQ. So I don't know how many of you have used used the tool work IQ. Okay. Yeah. So this is the thing as well with these prompts is that you sometimes have to be very explicit about it. And you have to say, Hey, you have to use this in this way, or you have to use, you have to prompt it in this way for it to be able to respond correctly. And one of the things that I have found, okay, there we go, we have our meetings are showing correctly. correctly, and we can see six meetings scheduled today. We can see that we have this stream for And we can see six meetings scheduled today, we can see Rubber Duck Thursdays, which is in progress right now. And then we also have the advocacy team meeting, which is my team meeting that we usually have. It's saying that the advocacy stream was scheduled for 9.30, but I don't know why it's saying that. I feel like that's not the correct schedule time. Then we have a team meeting that's going to be later today. Then we have another stream as well that's later today. So all of those are scheduled in. And then what I wanted to show you here is that initially, when I just said look through my calendar and let me know what meetings I have, it gave me the list of meetings, but it then didn't, it gave me back a response saying I don't have access to a calendar tool. So sometimes with these models, what I found is if you're prompting them to do something that you want to happen deterministically, a good thing to do is to make sure you're really explicit in the prompt. So I would have changed this, and I will say, actually, look through my calendar using WorkIQ, because I know Microsoft has a tool called WorkIQ, which is an MCP server, which you can use to then get my meetings. Because when I said do you have access to WorkIQ, it said yes, and actually, this does give me access to your calendar. And so we want to make sure that we're as explicit as possible, so it does that. So I want to actually go into every, and I want to say here we see that we have one scheduled meeting, scheduled prompt, and this is going to run for us every five minutes, but we can go ahead and we can press D, and that's going to delete that for us. So that's not going to run necessarily on the schedule. So I feel like this is a super handy feature. This is most of what I wanted to experiment with today. Like I mentioned, there's other things you can do. We looked at the after command as well, but if you want to have these scheduled runs consistently, another thing to do is also to make sure that you also have a Chrome job running. So what we could say as well is, how help me set up a Chrome job to schedule a, what should we say, to schedule checking my teams and calendar every week and to give a report based on what I need to prioritize. And then I can say, what are some ideas that we can say? So I just want to do that. So let me say start with a plan and I'll let you know if you can implement. So one of the things is if you want to start with a plan, you can also hit the P command and that should work. Okay. We do have a message in the chat, a couple of message. Here someone is saying you were mentioning OpenCore. Okay. It says OpenCore. Do you mean OpenCore for running newer Mac OS versions or unsupported hardware? I think this needs to be made clear as I can get confusing. Thank you for the suggestion, Christopher. I was not mentioning OpenCore. I mentioned OpenCore, which is another, have we heard about OpenCore? It's super popular. OpenCore was kind of, actually, I can ask in the chat here. Let's ask in the Copilot app so we don't mix it up. So let's say, what is OpenCore? So this is, OpenCore is a very popular, it was a personal, it is a personal assistant agent where people use it to set up their own personal assistant as a messenger. There's a number of different ways you can set this up. But I'm trying to show us that we can actually create our own version of an OpenCore by scheduling tasks and things like that. It was very popular back in the day. So I'm going to let this run and then we'll have it come up. But no, I'm not talking about OpenCore. And then someone else is asking from the LinkedIn, Arslan is saying, how can we schedule Chrome jobs using GitHub CLI? That's exactly what I'm asking right now. So we will see. We're hearing Christophe say local assistant. Yeah, we do, I think, yes, OpenCore is supposed to, Christopher, be for local use. So there was a time, I don't know if you will remember this, but just a few weeks ago, which is a long time, and I will just say hi, hello to Ben, it's good to see you. So there was a time, which is not even that long ago, to be honest, I don't remember how long ago it was, but it was not very long ago, a couple of months ago, maybe, when a lot of people were buying Mac minis. And Mac minis actually ended up selling out, because so many people were buying them. And the reason they were buying them was because they wanted to store their AI agent, which was an OpenCore agent on a Mac mini. And basically, it's a local assistant that takes all of your information, you decide what to give it access to. And you can give it access to pretty much everything on whatever machine it is you are running it on. So ideally, they said, put it in a Mac mini, just to make sure it doesn't delete stuff for you. And then when you put it there, it has access to everything in that Mac mini. And you can give it access to your Telegram, to your WhatsApp, you can give it access to appliances in your house, and it can do things for you. And it can schedule tasks for you, it can schedule a doctor's appointment, for example, for you. So there's a lot of controversy over this local assistant style. With Copilot CLI, I'm showing you that with these personal assistants. Of course, with the CLI, in this case, we have the option to run it locally on our Mac, we can also potentially plug in local models. But you know, for the CLI, I'm not going to do that, I'm just going to be using the CLI. And it's going to be able to run a Chrome job, schedule out things on our behalf. So we saw those different commands every or after, you know, or we can do things like that, or we can schedule this Chrome job. So basically, we're trying to recreate a version of OpenQL, but with Copilot CLI, if that makes sense. Now, going back to... Okay, Austin has a great question. Austin says, what tasks can a CLI-based personal assistant automate? A CLI-based personal assistant can automate a range of different tasks. And it really just depends on what the person, what you want your CLI to do. I showed earlier that, for example, I like to have my CLI automate, do a weekly look through my company's Slack channel, my company's email, my calendar. And I give it based off of myself, I say, this is my job right now. These are the things that I want to prioritize, look through all of my communication. And weekly, give me a summary of the most important conversations. What are my to-do lists? What's my to-do list for this week? So what do I need to prioritize? And how can I actually do those things? So you can have it automate tasks like that. But you can also have it actually do things for you on the internet, on your behalf. It's tricky when you're doing that, because it can be dangerous, because you never know what an AI agent can do. So you probably want to put in some guardrails if you're going to have it do too many real-world things. And then you also asked Asan for this great question about how we can schedule a Chrome job. So here I asked the same question, and I said, help me set up a Chrome job to schedule checking my Teams chats and things like that. So the question that's going to ask is, how do you want to be notified with the Chrome job? And I can say, you know, and here it says, questions before I implement. When should I run it? So when you're scheduling a personal assistant, you want to figure out when certain repeatable tasks are going to be run. So maybe I want mine to be Monday. Let's say Monday, 7 a.m. Well, let's say we want macOS notificate. No, what should we do? Let's say an email. Email me. Then which scheduler? So we can use the macOS or whatever machine you're on, or plain Chrome tab. Let's say launch D. And then it's asking report scope. Do we want just the next seven days or a fortnight? Let's say the next. Or include the past week's meeting. Let's say the next seven days. I feel like the past week's meeting is going to be too much. Do you already have GitHub token set up? Let's say include steps to get the token. So we can do all of this. And once it says, once you confirm, I'll build the script and launch it. And then we can do a dry run. So, again, what I like here is that I just told Copilot, this is what I want. Again, I said, I want to help setting up a Chrome job to schedule out to help with checking in on my meetings, my chats, and so on, and seeing if that could work. So it's going to, on its own, give me a plan for what to build. Someone else is saying, I think this project is really good. Thank you, Chris. No, this is Shrish codes. Thank you, Shrish. I think it's very cool. I do think actually being able to schedule things reliably is very useful. Personally, I think I need reminders of stuff. I need sometimes I don't want to schedule things like a dentist appointment or a doctor's appointment. Those are like cognitively heavy things for me to schedule. And I'm just going to keep pushing them back and not scheduling them. And so actually having an assistant to do that for me is really nice. So, okay. Okay. There we go. There we go. We're seeing on the screen, we're seeing some stuff happening. What are we seeing happening right now? It's saying, okay. It says, here's everything you need. What was created. Weekly priorities, bash script. Wrapper that runs copilot with the prompt. Then we have this, which I think is the Chrome job specifically for Mac. Then we have the copilot reports, where the weekly reports are going to be saved. It's just a folder. Then we have logs, just in case that logs are going to be auto-rotated and just so copilot can also diagnose it. Then the email is going to go to this email. That's actually not my email, by the way, but I'm not going to correct it. So that people, okay. Yeah. It says to correct it if I need to. And then to create the, to actually get this to work, we need to actually go ahead and create, have it created in with the token. So we can store the token and then we follow these commands to actually get this to work. So this is just, it created files for me to use and it set everything up. So when everything is working, it should just work. What I will recommend, because I'm not, I don't, I'm not really going to share much of this, but what I would recommend is to go back to watch the rest of this, this stream. And I would recommend just watching it. If you want to set up the same thing with the current job, give this task to copilot CLI, ask it to create the files that it needs. And I would say, first of all, maybe go ahead and try individual prompts to make sure that they work and that they're not going to fail. And we saw, we can do this using like the after command. So we can, with the after command, we can put in a time, we can put in a prompt for this is going to run at this time. And if it works correctly using the after command or using the every command, then let's take it a step up and let's ask copilot CLI to create all of the files ask Copilot CLI to create all of the files we need for a Chrome job to actually schedule things in we need for a Chrome job to actually. so it runs regularly. That is actually all I'm going to show you. This is all the time I have for today to show you. We were mainly experimenting today with how to build out a, we looked at how to automate schedule things on a schedule, schedule tasks with a personal assistant using Copilot CLI. The two, the two commands that I want us to experiment, if you have the time, if you want to experiment with something, experiment with the after command, and that's going to schedule prompts for you after a minute or after a day, do this, and it will schedule it in experiment with the every command. So every five minutes or every day, do this, and that again is going to run it. So those are two commands I feel like if you have Copilot CLI, one, you have to make sure it's on the experimental mode button, so slash experimental, and then two, give those a try, and then ask Copilot to help you from there. I hope this stream was fun and helpful. I have had a good time. And yeah, we are going to do, thank you so much for the feedback. I'm glad it was helpful. We do our weeks at, we do our streams Thursday. Every Thursday, we have a Rubber Duck Thursday stream. So if you have found these interesting or helpful, make sure to join us in the next one. So I will see you next time. Thanks for joining us. Bye.

TL;DR

  • GitHub Copilot CLI's experimental mode unlocks `/after` and `/every` scheduling commands that let you run prompts on a delay or recurring interval directly from the terminal, without any external tooling.
  • These in-session schedules are ephemeral — they only run while the terminal session is open. For persistent automation, you need a cron job or GitHub Actions workflow, which Copilot CLI can scaffold for you.
  • Prompt specificity matters significantly: when asking Copilot CLI to access calendar data, explicitly naming the MCP server tool (e.g., WorkIQ) in the prompt is required for reliable results.
  • Copilot CLI automatically selects the most cost-effective model for sub-tasks — using Claude Sonnet 4.6 for research sub-agents while the main session runs on Opus 4.7, balancing performance and cost.
  • The recommended workflow for building a personal assistant is to validate prompts with `/after`, then scale to `/every` for recurring runs, and finally use Copilot CLI to generate cron job files for persistent scheduling.

Experimental Scheduling Commands in Copilot CLI

This Rubber Duck Thursdays live stream, hosted by Marlene, walks through hands-on experimentation with GitHub Copilot CLI's experimental scheduling features. The session begins with enabling experimental mode via the `/experimental on` command, which unlocks a set of newer capabilities not yet available in the standard Copilot app interface. The two primary commands explored are `/after` and `/every`. The `/after` command schedules a one-shot prompt to execute after a specified delay — demonstrated live by printing "quack" to the screen after one minute. The `/every` command sets up a recurring prompt on a defined interval, such as every five minutes. Both commands support time suffixes for seconds, minutes, hours, and days, and include a schedule manager interface where users can view and delete active scheduled prompts. An important caveat highlighted during the session is that these schedules are session-scoped — they only persist while the interactive terminal session remains open. For truly persistent automation, a cron job or GitHub Actions workflow is required.

Replicating the Copilot App Automation Feature

A significant portion of the stream focuses on Marlene's existing weekly automation in the Copilot app, which aggregates her Slack messages, Outlook email, Microsoft Teams notifications, and calendar events every Monday at 8 a.m. to produce a prioritized task summary. The goal of the session is to replicate this behavior using Copilot CLI. The Copilot app's research feature — which spins up parallel sub-agents using Claude Sonnet 4.6 while the main session runs on Opus 4.7 — is used to investigate how scheduled automations can be configured in the CLI. The research output confirms that the `/every` and `/after` commands are the in-session path, while cron jobs represent the persistent path. A practical lesson emerges around prompt specificity: when asking Copilot CLI to check calendar meetings, the initial prompt failed until the MCP server tool (WorkIQ, Microsoft's calendar integration) was explicitly named in the prompt.

Setting Up a Persistent Cron Job with Copilot CLI

The final segment demonstrates asking Copilot CLI to scaffold a full cron job setup for a weekly personal assistant workflow. Marlene prompts Copilot to create a script that checks Microsoft Teams and calendar data every Monday at 7 a.m., sends an email notification, and covers the next seven days of meetings. Copilot CLI responds by generating a bash wrapper script, a launchd plist for macOS scheduling, a reports folder for weekly output, and a log rotation configuration. The session also touches on OpenClaw, a previously popular open-source local personal assistant framework that gained attention when people were purchasing Mac minis specifically to run local AI agents with access to messaging apps, home appliances, and scheduling tools. The stream positions Copilot CLI as a way to achieve similar personal assistant functionality within a familiar developer toolchain, without requiring a dedicated local machine.

Key Takeaways and Recommended Workflow

Marlene closes the stream with a recommended progression for viewers who want to build their own CLI-based personal assistant. The suggested approach is to first test individual prompts using the `/after` command to verify they work correctly before committing to a recurring schedule. Once validated, escalate to the `/every` command for in-session recurring runs, and finally ask Copilot CLI to generate the cron job files needed for persistent, session-independent scheduling. The stream also reinforces the value of MCP server integrations — tools like WorkIQ for Microsoft 365 data — as the connective tissue that makes these automations genuinely useful. The broader message is that Copilot CLI, when combined with its experimental scheduling commands and MCP integrations, can serve as a lightweight personal productivity assistant for developers who prefer working in the terminal over chat-based interfaces.

Chapters

0:00 - Stream Intro & Waiting Room
5:08 - Welcome & Topic Overview
10:03 - Copilot CLI Setup & Experimental Mode
15:23 - Copilot App Automation Demo
19:03 - Research Feature & Model Routing
25:04 - Discovering the /every and /after Commands
30:10 - Live Demo: /after Command
34:08 - Live Demo: /every Command & Calendar Prompt
46:19 - Scaffolding a Persistent Cron Job
58:31 - Wrap-Up & Recommended Workflow

Key Quotes

11:43 "If you're using the CLI, is to try the slash experimental command. And you can go ahead and you can toggle that to be either on or off. So we can say experimental on. And when that's on, the good thing is it opens up GitHub Copilot in experimental mode."
23:27 "It's going to automatically choose the best model for the job. It's going to choose the one that's going to be the most performant. So this is a good way to also save yourself some money by doing this because the parallel sub agents will run with cheaper the best model for the job."
29:07 "Schedules are session scoped. So they only fire while your interactive session is open for truly persistent scheduling across reboots or without an open terminal choose use the OS Chrome or GitHub actions."
44:55 "Sometimes with these models, what I found is if you're prompting them to do something that you want to happen deterministically, a good thing to do is to make sure you're really explicit in the prompt."
52:47 "You can also have it actually do things for you on the internet, on your behalf. It's tricky when you're doing that, because it can be dangerous, because you never know what an AI agent can do. So you probably want to put in some guardrails if you're going to have it do too many real-world things."
59:01 "Experiment with the after command, and that's going to schedule prompts for you after a minute or after a day, do this, and it will schedule it in experiment with the every command. So every five minutes or every day, do this, and that again is going to run it."

FAQ

What is the difference between the `/after` and `/every` commands in Copilot CLI?

The `/after` command schedules a prompt to run once after a specified delay (e.g., `after 1 minute, print quack`). The `/every` command sets up a recurring prompt that runs on a defined interval (e.g., `every 5 minutes, check my calendar`). Both commands support time suffixes for seconds, minutes, hours, and days. You can view and delete active schedules by typing `/every` with no arguments to open the schedule manager, then pressing D to delete a specific entry.

Are scheduled prompts in Copilot CLI persistent across terminal sessions?

No. Schedules created with `/after` or `/every` are session-scoped and only fire while the interactive terminal session remains open. If you close the terminal, the schedules are lost. For persistent automation that survives reboots or runs without an open terminal, you need to set up a cron job (or launchd on macOS) or use GitHub Actions. Copilot CLI can generate all the necessary files for a cron job setup from a natural language prompt.

Why did Copilot CLI fail to access calendar data when asked, and how was it fixed?

When prompted to 'look through my calendar and let me know what meetings I have today,' Copilot CLI initially responded that it had no access to a calendar tool. The fix was to explicitly name the MCP server in the prompt — in this case, Microsoft's WorkIQ integration. Once the prompt was updated to say 'look through my calendar using WorkIQ,' the tool was correctly invoked and returned the day's meeting list. This illustrates a key principle for agentic workflows: be explicit about which tools or integrations the model should use.


Categories:
  • » Data Protection
Channels:
News:
Events:
Tags:
  • AI & Machine Learning
  • Developer Tools
  • Demo
  • How-To
  • Getting Started
  • Best Practices
  • GitHub Copilot CLI
  • Experimental CLI features
  • Scheduled automation
  • Personal productivity assistants
  • MCP server integrations
  • Cron job setup
  • AI agent workflows
Show more Show less

Browse videos

  • Related
  • Featured
  • By date
  • Most viewed
  • Top rated
  •  

              Video's comments: Build a Personal Assistant with GitHub Copilot CLI

              XStreaminars (watch here)

              • Oct
                28

                EnvZero: Near-Zero Time to Resolution--Live Agentic Remediation for Failed and Drifted Infrastructure

                10/28/202601:00 PM ET
                More events

                Industry Events (Sponsor Hosted)

                • Oct
                  13

                  Transitioning from CJIS to FERPA: Essential Audit Evidence for Compliance

                  10/13/202601:00 PM ET
                  • Oct
                    15

                    Risk in Real Time Demo Series: Virtual Patching: Protection at the Speed of Exploitation

                    10/15/202611:00 AM ET
                    • Oct
                      20

                      Harnessing Data Governance for AI with Cyera and Snowflake

                      10/20/202611:00 AM ET
                      • Oct
                        27

                        Maximize Security, Value, and Returns on Your Microsoft Investment

                        10/27/202611:00 AM ET
                        • Oct
                          27

                          The HUMAN Experience: Real-Time Insights into Page Intelligence

                          10/27/202601:00 PM ET
                          More events

                          Upcoming Webinar Calendar

                          • 10/13/2026
                            01:00 PM
                            10/13/2026
                            Transitioning from CJIS to FERPA: Essential Audit Evidence for Compliance
                            https://www.truthinit.com/index.php/channel/2159/transitioning-from-cjis-to-ferpa-essential-audit-evidence-for-compliance/
                          • 10/15/2026
                            11:00 AM
                            10/15/2026
                            Risk in Real Time Demo Series: Virtual Patching: Protection at the Speed of Exploitation
                            https://www.truthinit.com/index.php/channel/1372/risk-in-real-time-demo-series-the-autonomous-era-orchestrating-a-resilient-enterprise/
                          • 10/20/2026
                            11:00 AM
                            10/20/2026
                            Harnessing Data Governance for AI with Cyera and Snowflake
                            https://www.truthinit.com/index.php/channel/2137/harnessing-data-governance-for-ai-with-cyera-and-snowflake/
                          • 10/27/2026
                            11:00 AM
                            10/27/2026
                            Maximize Security, Value, and Returns on Your Microsoft Investment
                            https://www.truthinit.com/index.php/channel/2178/maximize-security-value-and-returns-on-your-microsoft-investment/
                          • 10/27/2026
                            01:00 PM
                            10/27/2026
                            The HUMAN Experience: Real-Time Insights into Page Intelligence
                            https://www.truthinit.com/index.php/channel/2139/the-human-experience-real-time-insights-into-page-intelligence/
                          • 10/28/2026
                            01:00 AM
                            10/28/2026
                            [APAC:] Secure AI Everywhere: Visibility, governance and protection for the agentic era
                            https://www.truthinit.com/index.php/channel/2125/apac-ensuring-comprehensive-security-for-ai-applications/
                          • 10/28/2026
                            06:00 AM
                            10/28/2026
                            [EMEA:] Secure AI Everywhere: Visibility, governance and protection for the agentic era
                            https://www.truthinit.com/index.php/channel/2127/emea-ensuring-ai-security-across-all-platforms/
                          • 10/28/2026
                            01:00 PM
                            10/28/2026
                            [AMERICAS:] Secure AI Everywhere: Visibility, governance and protection for the agentic era
                            https://www.truthinit.com/index.php/channel/2126/securing-ai-across-the-americas-strategies-and-insights/
                          • 10/28/2026
                            01:00 PM
                            10/28/2026
                            EnvZero: Near-Zero Time to Resolution--Live Agentic Remediation for Failed and Drifted Infrastructure
                            https://www.truthinit.com/index.php/channel/2179/envzero-near-zero-time-to-resolution-live-agentic-remediation-for-failed-and-drifted-infrastructure/
                          • 11/04/2026
                            11:00 AM
                            11/04/2026
                            Leveraging CISA’s Zero Trust Maturity Model in an AI-Driven Landscape
                            https://www.truthinit.com/index.php/channel/2149/leveraging-cisas-zero-trust-maturity-model-in-an-ai-driven-landscape/
                          • 11/04/2026
                            11:00 AM
                            11/04/2026
                            Aligning Agentic Intent: Understanding Your Agents' Purpose vs. Their Actions
                            https://www.truthinit.com/index.php/channel/2158/aligning-agentic-intent-understanding-your-agents-purpose-vs-their-actions/
                          • 11/05/2026
                            02:00 PM
                            11/05/2026
                            HUMAN Dialogue: Embracing the Rise of the Agentic Consumer in AI
                            https://www.truthinit.com/index.php/channel/2160/human-dialogue-embracing-the-rise-of-the-agentic-consumer-in-ai/
                          • 11/05/2026
                            02:00 PM
                            11/05/2026
                            Reclaim Your Evenings: Leverage Data Intelligence to Minimize Risk and Boost AI Adoption
                            https://www.truthinit.com/index.php/channel/2172/reclaim-your-evenings-leverage-data-intelligence-to-minimize-risk-and-boost-ai-adoption/
                          • 11/19/2026
                            01:00 PM
                            11/19/2026
                            360View: Govern, Secure & Recover Your Microsoft 365 Environment
                            https://www.truthinit.com/index.php/channel/2076/360view-govern-secure-recover-your-microsoft-365-environment/
                          Truth in IT
                          • Sponsor
                          • About Us
                          • Terms of Service
                          • Privacy Policy
                          • Contact Us
                          • Preference Management
                          Desktop version
                          Standard version