Sammy is a Manifest V3 Chrome extension that connects Figma and JIRA workflows. It can analyze a captured Figma frame, turn the result into a structured story, push tickets to JIRA, round-trip ticket data back into Figma, and optionally generate starter UI code from the same design context.
See PROJECT_STATUS.md for an always-on snapshot of what works today, what is missing, and the next pieces of work.
Sammy is a bring-your-own-keys tool. Before using any workflow you will need the following credentials:
openaiKey / claudeKey).All configuration happens in the options UI (settings.html/settings.js) and is saved to Chrome sync storage for reuse across devices.
npm install.sammyai directory as an unpacked extension from chrome://extensions.figma-plugin/manifest.json into Figma development mode and record the plugin ID so enhanced design data can flow back to the extension.figma.com, captures the frame, and sends a request to the service worker with screenshot, optional context, and any structured layer data it can collect.background.js builds a prompt that blends screenshot, Figma REST/plugin data, and user context. It can call either OpenAI or Anthropic based on the saved provider and normalises the JSON response into title, description, and acceptanceCriteria fields.sammy-mcp/) provides a specialized endpoint for generating Figma design plans from Portfolio-OS Jira issues.POST /api/stock-ui/generate with an array of Jira issue keys to automatically generate design plans using the stock-ui-scaffold prompt.React, SwiftUI, or Kotlin) via lib/codegen/generator-factory.js and uses the selected AI provider to produce a code snippet.npm test – runs the Vitest unit suite (default configuration).npm run test:integration – executes integration specs for the bridge server and provider abstractions.npm run test:e2e – launches the Playwright extension tests.The unit suite stubs Chrome APIs so the background worker, analytics helpers, and code generation classes can be exercised without a browser. Integration tests cover the MCP bridge that turns JIRA tickets into Figma plans.
background.js, content.js, popup.html/js, settings.html/js – extension entry points.lib/ – shared logic for AI providers, analytics, code generation, and design quality scoring.figma-plugin/ – companion plugin that streams rich design data to the extension and builds frames from generated plans.sammy-mcp/ – Model Context Protocol bridge used by the JIRA → Figma workflow.tests/ – Vitest unit/integration specs and Playwright E2E coverage.scripts/ – packaging, version bumping, and other operational helpers.The extension is released under the MIT license. File issues or ideas in the repository and run the provided tests before submitting pull requests.