Tool tree
gradeNot graded
identify_agentAction
Optional connection handshake. Identify the client and its capabilities so the shared workspace can show which agent is present. Call once when opening LiveSignal and again when reconnecting.
View tool JSON
{
"name": "identify_agent",
"kind": "act",
"impl": "imperative",
"description": "Optional connection handshake. Identify the client and its capabilities so the shared workspace can show which agent is present. Call once when opening LiveSignal and again when reconnecting.",
"inputSchema": {
"type": "object",
"properties": {
"client": {
"type": "string",
"description": "Human-readable client name, for example ChatGPT or Claude Code."
},
"agentId": {
"type": "string",
"description": "Optional client-local agent or session identifier."
},
"capabilities": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional capabilities this agent can perform in this workspace."
}
}
}
}get_workspace_stateAnswer
Returns the current visible research brief, sources, timestamped evidence, evidence draft, visual canvas, and publication status.
View tool JSON
{
"name": "get_workspace_state",
"kind": "answer",
"impl": "imperative",
"description": "Returns the current visible research brief, sources, timestamped evidence, evidence draft, visual canvas, and publication status."
}start_canvas_collaborationAction
Starts or resumes a live human-agent canvas session. Call once after creating the canvas, then repeatedly call wait_for_collaboration_event until the human finishes the session.
View tool JSON
{
"name": "start_canvas_collaboration",
"kind": "act",
"impl": "imperative",
"description": "Starts or resumes a live human-agent canvas session. Call once after creating the canvas, then repeatedly call wait_for_collaboration_event until the human finishes the session."
}wait_for_collaboration_eventAction
Waits for the next saved canvas-change batch, actionable human comment, or session-finished signal. Re-call after handling each event or timeout while the session remains active.
View tool JSON
{
"name": "wait_for_collaboration_event",
"kind": "act",
"impl": "imperative",
"description": "Waits for the next saved canvas-change batch, actionable human comment, or session-finished signal. Re-call after handling each event or timeout while the session remains active.",
"inputSchema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string"
},
"afterSequence": {
"type": "number",
"description": "Last handled canvas-change sequence. Use 0 for a new session."
},
"timeoutMs": {
"type": "number",
"description": "Renewable wait duration, capped at 45000 ms."
}
}
}
}finish_canvas_collaborationAction
Finishes the active canvas collaboration session when the human asks to close the case. Saved work remains on the page.
View tool JSON
{
"name": "finish_canvas_collaboration",
"kind": "act",
"impl": "imperative",
"description": "Finishes the active canvas collaboration session when the human asks to close the case. Saved work remains on the page.",
"inputSchema": {
"type": "object",
"properties": {
"reason": {
"type": "string"
}
}
}
}get_human_revisionsAnswer
Returns saved human edits that the agent has not yet acknowledged, plus unsaved-change count and the current shared artifact.
View tool JSON
{
"name": "get_human_revisions",
"kind": "answer",
"impl": "imperative",
"description": "Returns saved human edits that the agent has not yet acknowledged, plus unsaved-change count and the current shared artifact."
}acknowledge_human_revisionsAction
Marks human edits as seen after the agent has incorporated or responded to them.
View tool JSON
{
"name": "acknowledge_human_revisions",
"kind": "act",
"impl": "imperative",
"description": "Marks human edits as seen after the agent has incorporated or responded to them.",
"inputSchema": {
"type": "object",
"properties": {
"all": {
"type": "boolean"
},
"revisionIds": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}wait_for_research_requestAction
Waits for the human to submit a new one-line goal from LiveSignal's consumer entry screen. Use after opening a blank LiveSignal page and telling the human you are ready for their request.
View tool JSON
{
"name": "wait_for_research_request",
"kind": "act",
"impl": "imperative",
"description": "Waits for the human to submit a new one-line goal from LiveSignal's consumer entry screen. Use after opening a blank LiveSignal page and telling the human you are ready for their request.",
"inputSchema": {
"type": "object",
"properties": {
"timeoutMs": {
"type": "number",
"description": "Wait duration in milliseconds, capped at 45000."
}
}
}
}get_agent_commentsAnswer
Returns actionable comments the human attached to a canvas block or the whole artifact. Check for pending comments during active collaboration, then research and answer them with evidence-backed canvas updates.
View tool JSON
{
"name": "get_agent_comments",
"kind": "answer",
"impl": "imperative",
"description": "Returns actionable comments the human attached to a canvas block or the whole artifact. Check for pending comments during active collaboration, then research and answer them with evidence-backed canvas updates.",
"inputSchema": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"open",
"pending",
"researching",
"answered",
"all"
]
}
}
}
}wait_for_agent_commentAction
Waits briefly for the human's next canvas comment and returns it with block and evidence context as soon as it is sent. Use during an active co-creation session after telling the human you are listening.
View tool JSON
{
"name": "wait_for_agent_comment",
"kind": "act",
"impl": "imperative",
"description": "Waits briefly for the human's next canvas comment and returns it with block and evidence context as soon as it is sent. Use during an active co-creation session after telling the human you are listening.",
"inputSchema": {
"type": "object",
"properties": {
"timeoutMs": {
"type": "number",
"description": "Wait duration in milliseconds, capped at 45000."
}
}
}
}claim_agent_commentAction
Marks one human canvas comment as actively being researched and shows the agent's plan in the shared interface. Call before opening more videos or changing the canvas.
View tool JSON
{
"name": "claim_agent_comment",
"kind": "act",
"impl": "imperative",
"description": "Marks one human canvas comment as actively being researched and shows the agent's plan in the shared interface. Call before opening more videos or changing the canvas.",
"inputSchema": {
"type": "object",
"properties": {
"commentId": {
"type": "string"
},
"plan": {
"type": "string"
}
},
"required": [
"commentId"
]
}
}answer_agent_commentAction
Closes one human canvas comment after the agent has researched it and made any scoped canvas change. Summarize what was learned and identify new evidence or updated blocks so the human can inspect the result.
View tool JSON
{
"name": "answer_agent_comment",
"kind": "act",
"impl": "imperative",
"description": "Closes one human canvas comment after the agent has researched it and made any scoped canvas change. Summarize what was learned and identify new evidence or updated blocks so the human can inspect the result.",
"inputSchema": {
"type": "object",
"properties": {
"commentId": {
"type": "string"
},
"response": {
"type": "string"
},
"addedEvidenceIds": {
"type": "array",
"items": {
"type": "string"
}
},
"updatedBlockIds": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"commentId",
"response"
]
}
}begin_researchAction
Start here for a new user request. Creates a clean LiveSignal project, records the agent-prepared brief, and returns the autonomous video-research workflow.
View tool JSON
{
"name": "begin_research",
"kind": "act",
"impl": "imperative",
"description": "Start here for a new user request. Creates a clean LiveSignal project, records the agent-prepared brief, and returns the autonomous video-research workflow.",
"inputSchema": {
"type": "object",
"properties": {
"request": {
"type": "string"
},
"mustCover": {
"type": "string"
},
"constraints": {
"type": "string"
},
"outputFormat": {
"type": "string"
}
},
"required": [
"request"
]
}
}update_research_briefAction
Updates the visible must-cover points, constraints, and desired output format before or during research.
View tool JSON
{
"name": "update_research_brief",
"kind": "act",
"impl": "imperative",
"description": "Updates the visible must-cover points, constraints, and desired output format before or during research.",
"inputSchema": {
"type": "object",
"properties": {
"mustCover": {
"type": "string"
},
"constraints": {
"type": "string"
},
"outputFormat": {
"type": "string"
}
}
}
}open_youtube_searchAction
Opens YouTube search for any topic so the agent and human can choose real candidate videos together.
View tool JSON
{
"name": "open_youtube_search",
"kind": "act",
"impl": "imperative",
"description": "Opens YouTube search for any topic so the agent and human can choose real candidate videos together.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string"
}
},
"required": [
"query"
]
}
}ingest_youtube_videoAction
Imports a public YouTube video's metadata and timestamped captions into the visible workspace.
View tool JSON
{
"name": "ingest_youtube_video",
"kind": "act",
"impl": "imperative",
"description": "Imports a public YouTube video's metadata and timestamped captions into the visible workspace.",
"inputSchema": {
"type": "object",
"properties": {
"url": {
"type": "string"
}
},
"required": [
"url"
]
}
}record_video_evidenceAction
Writes a video and evidence researched in another browser tab back into LiveSignal. Use this when ChatGPT reads captions or source moments directly, especially when server transcript import is unavailable. Supply a timestamp or seconds whenever possible. Text is matched against imported transcript rows near that time; unmatched or untimed entries remain visibly labelled agent claims.
View tool JSON
{
"name": "record_video_evidence",
"kind": "act",
"impl": "imperative",
"description": "Writes a video and evidence researched in another browser tab back into LiveSignal. Use this when ChatGPT reads captions or source moments directly, especially when server transcript import is unavailable. Supply a timestamp or seconds whenever possible. Text is matched against imported transcript rows near that time; unmatched or untimed entries remain visibly labelled agent claims.",
"inputSchema": {
"type": "object",
"properties": {
"source": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"videoId": {
"type": "string"
},
"url": {
"type": "string"
},
"title": {
"type": "string"
},
"creator": {
"type": "string"
},
"relevance": {
"type": "string"
}
},
"required": [
"url",
"title"
]
},
"evidence": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"text": {
"type": "string"
},
"timestamp": {
"type": "string"
},
"seconds": {
"type": "number"
},
"durationSeconds": {
"type": "number"
},
"note": {
"type": "string"
}
},
"required": [
"text",
"timestamp",
"seconds"
]
}
}
},
"required": [
"source",
"evidence"
]
}
}search_video_evidenceAnswer
Searches all imported timestamped evidence for a topic, claim, name, or phrase.
View tool JSON
{
"name": "search_video_evidence",
"kind": "answer",
"impl": "imperative",
"description": "Searches all imported timestamped evidence for a topic, claim, name, or phrase.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string"
}
},
"required": [
"query"
]
}
}pin_evidenceAction
Pins or unpins a timestamped source moment for the shared report.
View tool JSON
{
"name": "pin_evidence",
"kind": "act",
"impl": "imperative",
"description": "Pins or unpins a timestamped source moment for the shared report.",
"inputSchema": {
"type": "object",
"properties": {
"evidenceId": {
"type": "string"
}
},
"required": [
"evidenceId"
]
}
}add_report_sectionAction
Adds an editable, evidence-backed section to the visible report.
View tool JSON
{
"name": "add_report_section",
"kind": "act",
"impl": "imperative",
"description": "Adds an editable, evidence-backed section to the visible report.",
"inputSchema": {
"type": "object",
"properties": {
"heading": {
"type": "string"
},
"body": {
"type": "string"
},
"evidenceIds": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"heading",
"body"
]
}
}update_report_sectionAction
Revises one visible report section while keeping its timestamp citations explicit.
View tool JSON
{
"name": "update_report_section",
"kind": "act",
"impl": "imperative",
"description": "Revises one visible report section while keeping its timestamp citations explicit.",
"inputSchema": {
"type": "object",
"properties": {
"sectionId": {
"type": "string"
},
"heading": {
"type": "string"
},
"body": {
"type": "string"
},
"evidenceIds": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"sectionId"
]
}
}remove_report_sectionAction
Removes a report section at the user's editorial direction.
View tool JSON
{
"name": "remove_report_section",
"kind": "act",
"impl": "imperative",
"description": "Removes a report section at the user's editorial direction.",
"inputSchema": {
"type": "object",
"properties": {
"sectionId": {
"type": "string"
}
},
"required": [
"sectionId"
]
}
}reorder_report_sectionsAction
Moves a report section up or down in the human-controlled editorial order.
View tool JSON
{
"name": "reorder_report_sections",
"kind": "act",
"impl": "imperative",
"description": "Moves a report section up or down in the human-controlled editorial order.",
"inputSchema": {
"type": "object",
"properties": {
"sectionId": {
"type": "string"
},
"direction": {
"type": "string",
"enum": [
"up",
"down"
]
}
},
"required": [
"sectionId",
"direction"
]
}
}write_reportAction
Writes a complete editable report from researched evidence. Each section may cite evidence IDs recorded earlier in this workspace.
View tool JSON
{
"name": "write_report",
"kind": "act",
"impl": "imperative",
"description": "Writes a complete editable report from researched evidence. Each section may cite evidence IDs recorded earlier in this workspace.",
"inputSchema": {
"type": "object",
"properties": {
"title": {
"type": "string"
},
"overview": {
"type": "string"
},
"sections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"heading": {
"type": "string"
},
"body": {
"type": "string"
},
"evidenceIds": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"heading",
"body"
]
}
}
},
"required": [
"title",
"overview",
"sections"
]
}
}revise_reportAction
Applies a requested revision to the report using replacement title, overview, or sections while preserving citations supplied by the agent.
View tool JSON
{
"name": "revise_report",
"kind": "act",
"impl": "imperative",
"description": "Applies a requested revision to the report using replacement title, overview, or sections while preserving citations supplied by the agent.",
"inputSchema": {
"type": "object",
"properties": {
"instruction": {
"type": "string"
},
"title": {
"type": "string"
},
"overview": {
"type": "string"
},
"sections": {
"type": "array",
"items": {
"type": "object"
}
}
},
"required": [
"instruction"
]
}
}get_canvas_stateAnswer
Returns the current human-composed visual canvas, block order, theme, citations, and pending human revisions. Read this before reacting to a layout or copy change.
View tool JSON
{
"name": "get_canvas_state",
"kind": "answer",
"impl": "imperative",
"description": "Returns the current human-composed visual canvas, block order, theme, citations, and pending human revisions. Read this before reacting to a layout or copy change."
}create_canvasAction
Creates or replaces the shareable visual canvas from evidence-backed blocks. Use once after research; do not overwrite later human composition unless explicitly asked.
View tool JSON
{
"name": "create_canvas",
"kind": "act",
"impl": "imperative",
"description": "Creates or replaces the shareable visual canvas from evidence-backed blocks. Use once after research; do not overwrite later human composition unless explicitly asked.",
"inputSchema": {
"type": "object",
"properties": {
"theme": {
"type": "string",
"enum": [
"notebook",
"editorial",
"field-notes"
]
},
"blocks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"kind": {
"type": "string",
"enum": [
"feature",
"steps",
"note",
"quote"
]
},
"title": {
"type": "string"
},
"body": {
"type": "string"
},
"evidenceIds": {
"type": "array",
"items": {
"type": "string"
}
},
"span": {
"type": "string",
"enum": [
"half",
"wide"
]
},
"accent": {
"type": "string",
"enum": [
"coral",
"sage",
"gold",
"ink"
]
}
},
"required": [
"title",
"body"
]
}
}
},
"required": [
"blocks"
]
}
}add_canvas_blockAction
Adds a new visual block without disturbing the human's existing canvas order.
View tool JSON
{
"name": "add_canvas_block",
"kind": "act",
"impl": "imperative",
"description": "Adds a new visual block without disturbing the human's existing canvas order.",
"inputSchema": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"feature",
"steps",
"note",
"quote"
]
},
"title": {
"type": "string"
},
"body": {
"type": "string"
},
"evidenceIds": {
"type": "array",
"items": {
"type": "string"
}
},
"span": {
"type": "string",
"enum": [
"half",
"wide"
]
},
"accent": {
"type": "string",
"enum": [
"coral",
"sage",
"gold",
"ink"
]
}
},
"required": [
"title",
"body"
]
}
}update_canvas_blockAction
Reacts to human composition by rewriting, restyling, resizing, or re-citing one canvas block while preserving every other block.
View tool JSON
{
"name": "update_canvas_block",
"kind": "act",
"impl": "imperative",
"description": "Reacts to human composition by rewriting, restyling, resizing, or re-citing one canvas block while preserving every other block.",
"inputSchema": {
"type": "object",
"properties": {
"blockId": {
"type": "string"
},
"title": {
"type": "string"
},
"body": {
"type": "string"
},
"kind": {
"type": "string",
"enum": [
"feature",
"steps",
"note",
"quote"
]
},
"span": {
"type": "string",
"enum": [
"half",
"wide"
]
},
"accent": {
"type": "string",
"enum": [
"coral",
"sage",
"gold",
"ink"
]
},
"evidenceIds": {
"type": "array",
"items": {
"type": "string"
}
},
"reason": {
"type": "string"
}
},
"required": [
"blockId"
]
}
}generate_canvas_imageAction
Generates or replaces one AI visual layer for a selected canvas card after the human asks. Inline illustrations and full-card backdrops are stored independently; generating either must preserve the card text, citations, source thumbnails, layout, and the other visual layer. Generated artwork is visibly labeled and never treated as source evidence.
View tool JSON
{
"name": "generate_canvas_image",
"kind": "act",
"impl": "imperative",
"description": "Generates or replaces one AI visual layer for a selected canvas card after the human asks. Inline illustrations and full-card backdrops are stored independently; generating either must preserve the card text, citations, source thumbnails, layout, and the other visual layer. Generated artwork is visibly labeled and never treated as source evidence.",
"inputSchema": {
"type": "object",
"properties": {
"blockId": {
"type": "string"
},
"prompt": {
"type": "string",
"description": "Art direction based on the human's comment, card meaning, and canvas mood. Do not ask for text inside the image."
},
"alt": {
"type": "string",
"description": "Concise accessible description of the intended image."
},
"placement": {
"type": "string",
"enum": [
"inline",
"background"
],
"description": "Use background only when the human explicitly requests a full-card backdrop; otherwise use inline."
}
},
"required": [
"blockId",
"prompt"
]
}
}remove_canvas_blockAction
Removes one canvas block when the human asks for a simpler composition.
View tool JSON
{
"name": "remove_canvas_block",
"kind": "act",
"impl": "imperative",
"description": "Removes one canvas block when the human asks for a simpler composition.",
"inputSchema": {
"type": "object",
"properties": {
"blockId": {
"type": "string"
}
},
"required": [
"blockId"
]
}
}reorder_canvas_blocksAction
Reorders one canvas block in response to human editorial direction without rewriting its content.
View tool JSON
{
"name": "reorder_canvas_blocks",
"kind": "act",
"impl": "imperative",
"description": "Reorders one canvas block in response to human editorial direction without rewriting its content.",
"inputSchema": {
"type": "object",
"properties": {
"blockId": {
"type": "string"
},
"targetIndex": {
"type": "number"
}
},
"required": [
"blockId",
"targetIndex"
]
}
}set_canvas_themeAction
Changes the visual canvas theme while preserving human block order, copy, and citations.
View tool JSON
{
"name": "set_canvas_theme",
"kind": "act",
"impl": "imperative",
"description": "Changes the visual canvas theme while preserving human block order, copy, and citations.",
"inputSchema": {
"type": "object",
"properties": {
"theme": {
"type": "string",
"enum": [
"notebook",
"editorial",
"field-notes"
]
}
},
"required": [
"theme"
]
}
}download_canvas_pngAction
Downloads the current human-and-agent visual canvas as a shareable high-resolution PNG.
View tool JSON
{
"name": "download_canvas_png",
"kind": "act",
"impl": "imperative",
"description": "Downloads the current human-and-agent visual canvas as a shareable high-resolution PNG."
}open_video_timestampAction
Opens the exact source video moment for cited evidence.
View tool JSON
{
"name": "open_video_timestamp",
"kind": "act",
"impl": "imperative",
"description": "Opens the exact source video moment for cited evidence.",
"inputSchema": {
"type": "object",
"properties": {
"evidenceId": {
"type": "string"
}
},
"required": [
"evidenceId"
]
}
}publish_reportAction
Marks the human-reviewed report as published after its evidence and wording are approved.
View tool JSON
{
"name": "publish_report",
"kind": "act",
"impl": "imperative",
"description": "Marks the human-reviewed report as published after its evidence and wording are approved."
}download_reportAction
Downloads the current human-reviewed report as Markdown with clickable timestamp citations.
View tool JSON
{
"name": "download_report",
"kind": "act",
"impl": "imperative",
"description": "Downloads the current human-reviewed report as Markdown with clickable timestamp citations."
}