Pearl Agent Tools
Pearl’s tools are registered via ADK’s functiontool.New and defined in internal/pearl/agent/. Pearl focuses on design — component generation, design review, Figma integration, interactive snippets, and a reusable component library.
Communication
Section titled “Communication”respond_in_slack
Section titled “respond_in_slack”Delivers design reviews, recommendations, and UI copy in the Slack thread associated with the current session.
respond_in_jira
Section titled “respond_in_jira”Posts design feedback as a Jira comment.
request_clarification
Section titled “request_clarification”Tags Dolly in Slack to request clarification on requirements.
notify_dolly
Section titled “notify_dolly”Notifies Dolly about a design deliverable or status update. Optionally includes a snippet URL.
get_jira_ticket
Section titled “get_jira_ticket”Fetches ticket details to read requirements before producing deliverables.
Design
Section titled “Design”generate_component
Section titled “generate_component”Generates a Svelte component from a description and optional Figma reference. Parameters: name, description, figma_url (optional), node_id (optional), framework (optional), design_tokens (optional).
review_design
Section titled “review_design”Reviews a design for accessibility, consistency, usability, or all categories. Optionally fetches Figma context. Parameters: description, figma_url (optional), node_id (optional), check_type (optional).
generate_ui_copy
Section titled “generate_ui_copy”Generates UI copy — labels, errors, empty states, tooltips, and microcopy. Parameters: context, copy_type, component (optional).
get_figma_file
Section titled “get_figma_file”Fetches file metadata and the document tree (depth=2).
get_figma_node
Section titled “get_figma_node”Fetches a specific node from a Figma file.
get_figma_components
Section titled “get_figma_components”Lists all components in a Figma file.
get_figma_styles
Section titled “get_figma_styles”Lists all styles in a file — colors, text, effects, and grids.
get_figma_images
Section titled “get_figma_images”Renders nodes as images (PNG, SVG, JPG, PDF). Returns download URLs.
get_figma_variables
Section titled “get_figma_variables”Fetches all local variables (design tokens) from a file.
browse_figma_projects
Section titled “browse_figma_projects”Lists all projects in the configured Figma team.
browse_figma_files
Section titled “browse_figma_files”Lists all files in a Figma project.
Snippets
Section titled “Snippets”publish_snippet
Section titled “publish_snippet”Publishes an interactive HTML/CSS/JS snippet. Creates a new snippet or adds a version to an existing one. Returns a view URL. Parameters: title, description, snippet_id (optional), html/css/js or files array, design_language (optional).
send_snippet_preview
Section titled “send_snippet_preview”Sends a snippet preview link to the Slack thread.
Component Library
Section titled “Component Library”save_component
Section titled “save_component”Saves a reusable component to the library. Categories: buttons, cards, navigation, forms, feedback, layout, data-display. Parameters: name, category, tags (optional), description (optional), design_language (optional), status (“draft” or “approved”), files/html/code.
list_components
Section titled “list_components”Lists and searches components in the library. Filter by category or search query.
get_component
Section titled “get_component”Gets full source and metadata by component ID.
Design Languages
Section titled “Design Languages”set_design_language
Section titled “set_design_language”Switches the active design language and returns the full reference (tokens, styles, components). Only call when needed for generation, not for general questions.
list_design_languages
Section titled “list_design_languages”Lists all available design languages with Figma file keys and cache status.