Skills
Skills enable you to quickly ask Steve to do complex things
What is a Skill?
Another way to think of a Skill is as an "LLM macro" or a "reusable prompt". Or like Neo in the Matrix learning Kung Fu! It's a set of detailed instructions for Steve on how to do something, and can include variables like data from the current page or from the user. So any time you have a task that you do repetitively or that requires very detailed instructions that you don't want to type in every time, make a Skill.
Here's an example Skill that instructs Steve to suggest visuals for some text that was written.
Name: Suggest accompanying visuals
Instructions: I'm writing some text and I'd like you to suggest some visuals to accompany it that will help reinforce and illustrate my key concepts and messages.
Here is the text that I've written: [[Text to Analyze]]
Can you list some visuals (tables, graphs, infographics, etc.) that would add value and comprehensibility to this article. Describe each one in detail. Thanks!
Note that [[Text to Analyze]] is a variable that grabs either the current page or the text selected on a page, so you can use the same Skill on any page or selected text without having to edit it!
Make a Skill once and then you can access it from anywhere in Ask Steve, including the Context Menu, the Chat, the Quick Action Box and from Skill Buttons.
Technically, a Skill is just a set of instructions written to Steve in English. When writing a Skill, you should treat Steve like you would a human intern, and provide very specific and detailed instructions.
Steve has 100+ Skills in the Skill Library which you can access from the extension options. You can see all the Skills you have installed by clicking on the Ask Steve toolbar icon and then clicking ⚡Skills
in the sidepanel.
How do I Add a New Skill?
- From the ⚡Skills tab in the sidepanel, press the
NEW
button. - Type in a
Name
for your Skill, and someInstructions
. - Pick a
Category
for your Skill, this will determine what folder your Skill is placed in, in the Chrome Context-Menu - Press the
RUN
button to try out your Skill on the current page or selection. If it doesn't do what you want, then change it and keep iterating until it works the way you want it to.
This ability to quickly iterate on your Skill until it does what you want is part of what makes Ask Steve so powerful! - Hit
SAVE
. Congratulations! Your Skill is now available to use. Here's an example of the whole process:
Editing a Skill
Select the Skill that you want to update, make your desired changes, then press the UPDATE
button.
Deleting a Skill
- Select the Skill you want to delete, press the trashcan icon and then confirm deletion.
- If you want to delete a bunch of Skills at once, you can do so from the Import/Export page.
- You should feel free to delete any Skills that you don't want or need! You can always add them back later from the Skill Library
Page Variables in Skills
Skills are most valuable when they're able to take information from the page that you're on and use it. The way we do that is with Page Variables. You can add a Page Variable to your Skill by typing in something surrounded by [[double brackets]]
. When Steve sees this, he knows that he needs to grab some information from the page - either whatever text is selected or the whole page if nothing is selected. See the simple example below:
Pretend that I'm a junior high school student and you are an award winning teacher. Explain the following to me in clear and understandable language: [[Text to explain]]
This Skill has one Page Variable, "Text to explain". You can have up to 10 Page Variables in a Skill. Here's a more complicated example where the Skill will need to grab multiple pieces of data from the page:
Write me a summary of this accident. Here are the details:
The car make is: [[Car Make]], the model is: [[Car Model]] and the year is: [[Car Year]]. The accident happened on [[Accident Date]] in the city of [[Accident City]]
This Skill will take 5 pieces of data from the page and use them to write a summary. Take a look at the various Skills that ship with Steve, and try adding your own!
NOTE: Any Skill with more than 1 Page Variable can only be used by Skill Buttons, and not in the Quick Action box or the Chrome Context-Menu. This is because only Skill Buttons can grab more than one piece of content from a page.
User Variables in Skills
Sometimes you will want to create a Skill that requests information from the user, and you can do that with User Variables. User Variables are surrounded by {{double curly braces}}
in your Skills. When you trigger the Skill, Steve will ask you to fill in the variable and then will execute the Skill.
A good example here would be a recruiter who is recruiting for multiple positions. They can create one "Write a candidate outreach" Skill and attach a Skill Button for it to a page. Then when they press the button, it can ask them for the specific Job Requisition, which they can paste in. That way they don't have to create a different Skill for each job they're trying to fill. Here's an example of what that might look like:
Your name is Riley Hunter and you're a recruiter at Roadrunner Software. You are reaching out to a candidate about a requisition that you're trying to fill.
This is the job requisition: {{Job Requisition}} and this is the candidate's resume page: [[Resume Page]]
Please write me a personalized outreach letter to the candidate that explains why they'd be a good fit for this job.
You can see in this example that the candidate's resume is being pulled from the current page, and then Steve will ask the recruiter for the Job Requisition.
Advanced Options
Click on the Advanced Options label to see the advanced options
- If you are going to use this Skill a lot from the Context-Menu, you can pin it to the top level of the menu by checking
Pin to top of right-click menu
. - PREMIUM PLAN ONLY: You can set whether this is a call to an LLM or a call to an API/Webhook. Calls to API/Webhooks work differently, as detailed on the API/Webhooks page.
- PREMIUM PLAN ONLY: If you have selected LLM, then you can select a different Model to power this particular Skill. This is useful when certain Models are better suited for Skills - because of their capability, or their cost, or some other reason.
- PREMIUM PLAN ONLY: If you have selected API / Webhook then you will need to enter a URL that can receive a POST request. You can also adjust the headers that are sent in case you need to send an authentication or API Key. See more details on the API/Webhooks page.
Tips for Writing Good Skills
- Look at all the Skills that Steve ships with and use those as a starting point.
- Tell Steve who he is, what he does, and that he's good at it. Even AI interns like positive reinforcement!
You are a superstar recruiter named Riley Hunter and you work at Roadrunner Software.
- Be very precise and descriptive with your instructions
- If you're writing a long or complex Skill, put the text that you want processed or analyzed near the beginning, then give the detailed instructions about what to do with it.
- If you can provide examples for Steve to learn from, that is ideal. Give Steve examples of the INPUT that you want to give him, and the kind of OUTPUT that each INPUT should generate.
- Experiment & iterate! Writing good Skills is about trying different things and approaches until Steve gives you the results that you want!
- If you really want to go deep on how to write good LLM prompts (which is basically what a Skill is), then there are plenty of online resources. Try this one!
How do I Use a Skill?
- By selecting some text on a page and then bringing up the Chrome Context-Menu (right-click) and selecting
"Ask Steve to..."
and then a Skill. Or if you want Steve to help with the whole page, just right-click anywhere on the page. - From the Chat you can press the lightning bolt icon and then either select a Skill from the dropdown or start typing its name and then selecting it. (A shortcut is to click into the send Chat field and press the
SPACE
key and then start typing the name of the Skill) - By bringing up the Quick Action box in an editable text field and either selecting the Skill from the dropdown or starting to type in its name and then selecting it.
- By adding a Skill Button to a page that triggers the Skill when you press it.