Skip to content

TrixiePhany/Figma-User-Automation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Figma User Automation

A lightweight agentic automation prototype for provisioning and de-provisioning Figma users through the web UI when Admin APIs are unavailable.

My Architecture

  • Intent Layer – Interprets UI and finds elements dynamically.
  • Execution Layer – Used Playwright to click, type, and navigate. Performs the actions inside the SaaS app like a human would.
  • Validation Layer – confirms success with screenshots and logs. Checks if the operation (add/remove user) actually succeeded and logs it.
  • Learning Layer - adapts when the UI changes.

Setup

  1. Clone or download this repo.
  2. Create and activate a virtual environment:
    python -m venv venv
    source venv/bin/activate    # or venv\Scripts\activate on Windows
    

Install dependencies:

pip install playwright pyyaml python-dotenv
playwright install 

Add your Figma admin credentials in .env

  [email protected]
  FIGMA_PASSWORD=your_password
  MFA_PAUSE=0

Add environment variables

On MacOS/Linux

  export FIGMA_EMAIL="your_admin_email"
  export FIGMA_PASSWORD="your_password"

On Windows

  setx FIGMA_EMAIL "your_admin_email"
  setx FIGMA_PASSWORD "your_password"

Usage

  1. Provide A user(Provisioning here)
   python runner.py --action provision --email [email protected] --role Editor
  1. Delete a User(Deprovisioning of the user)
python runner.py --action deprovision --email [email protected]

Steps to follow after seeting the enviornment:

Now:

  1. Create these files manually in VS Code or any Code Editor.
  2. Test one run with dummy credentials (use a sandbox Figma org if possible).

What it’s doing (in plain English)

Logs in to your org’s Figma using your admin credentials (securely injected). Navigates to the “Members” page. Adds or removes a user based on your command. Takes a screenshot and confirms success by detecting success messages. Logs results for compliance.

To verify it worked

After the command finishes, check: Terminal output (should say "ok": true). A new PNG screenshot in audit/. The user visible in or removed from your Figma admin page.

About

A lightweight agentic automation prototype for provisioning and de-provisioning Figma users through the web UI when SCIM or Admin APIs are unavailable.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages