Tool tree
gradeNot graded
page: Every page
list_pagesAnswer
Every page on Richard Li's site, with a one-line summary. Start here.
View tool JSON
{
"name": "list_pages",
"kind": "answer",
"impl": "imperative",
"description": "Every page on Richard Li's site, with a one-line summary. Start here.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}describe_pageAnswer
What's on the current page: its sections (for scroll_to_section) and the links and buttons on it, each with an id (for highlight and click). Call again after the page changes; ids are only valid until the next call.
View tool JSON
{
"name": "describe_page",
"kind": "answer",
"impl": "imperative",
"description": "What's on the current page: its sections (for scroll_to_section) and the links and buttons on it, each with an id (for highlight and click). Call again after the page changes; ids are only valid until the next call.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/"
}open_pageAction
Go to another page on the site (paths from list_pages).
View tool JSON
{
"name": "open_page",
"kind": "act",
"impl": "imperative",
"description": "Go to another page on the site (paths from list_pages).",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "Page path, e.g. /transitplanner",
"enum": [
"/",
"/about",
"/resume",
"/chat",
"/side-quests",
"/transit/fanning",
"/4sight",
"/amd",
"/boink",
"/cec",
"/fatherfigure",
"/futureforward",
"/safuture",
"/salespatriot",
"/transitplanner",
"/yrhacks"
]
}
},
"required": [
"value"
],
"additionalProperties": false
},
"page": "/"
}scroll_to_sectionAction
Scroll the current page to a section, by its id from describe_page.
View tool JSON
{
"name": "scroll_to_section",
"kind": "act",
"impl": "imperative",
"description": "Scroll the current page to a section, by its id from describe_page.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "Section id from describe_page"
}
},
"required": [
"value"
],
"additionalProperties": false
},
"page": "/"
}highlightAction
Point at a link or button on the current page and highlight it for a moment, without clicking it. Uses an id from describe_page.
View tool JSON
{
"name": "highlight",
"kind": "act",
"impl": "imperative",
"description": "Point at a link or button on the current page and highlight it for a moment, without clicking it. Uses an id from describe_page.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "Target id from describe_page, e.g. t7"
}
},
"required": [
"value"
],
"additionalProperties": false
},
"page": "/"
}clickAction
Click a link or button on the current page, by its id from describe_page. Links that leave the site can't be clicked.
View tool JSON
{
"name": "click",
"kind": "act",
"impl": "imperative",
"description": "Click a link or button on the current page, by its id from describe_page. Links that leave the site can't be clicked.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "Target id from describe_page, e.g. t5"
}
},
"required": [
"value"
],
"additionalProperties": false
},
"page": "/"
}ask_richardAction
Ask the site's chatbot, which answers as Richard Li using his projects, work history and writing. Good for questions the pages don't answer directly.
View tool JSON
{
"name": "ask_richard",
"kind": "act",
"impl": "imperative",
"description": "Ask the site's chatbot, which answers as Richard Li using his projects, work history and writing. Good for questions the pages don't answer directly.",
"inputSchema": {
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "The question"
}
},
"required": [
"value"
],
"additionalProperties": false
},
"page": "/"
}