# johnlindquist/kit

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/johnlindquist-kit).**

4,189 stars · 152 forks · TypeScript · MIT

## Links

- GitHub: https://github.com/johnlindquist/kit
- Homepage: https://scriptkit.com
- awesome-repositories: https://awesome-repositories.com/repository/johnlindquist-kit.md

## Description

Kit is a desktop automation framework and scriptable UI toolkit designed for building personalized productivity tools. It serves as a cross-platform CLI wrapper and macOS system automator, providing an environment to execute scripts that manage operating system tasks, file management, and application workflows.

The project distinguishes itself with a dedicated LLM integration layer for structured data extraction and text generation, alongside a specialized UI framework for creating interactive input forms, HTML windows, and floating widgets. It features deep macOS integration through AppleScript execution and system menu bar customization.

The framework covers a broad range of capabilities, including system-level input device control, clipboard management, and power control. It includes automation utilities for cron-based scheduling and file watching, as well as developer tools for Git synchronization, environment variable management, and web scraping.

The system provides built-in support for executing shell commands and managing isolated script environments.

## Tags

### Business & Productivity Software

- [macOS Automation Tools](https://awesome-repositories.com/f/business-productivity-software/macos-automation-tools.md) — Implements a system for automating macOS tasks through AppleScript execution, menu bar integration, and OS event triggers.

### Operating Systems & Systems Programming

- [Desktop Automation](https://awesome-repositories.com/f/operating-systems-systems-programming/desktop-environment-frameworks/desktop-environment-components/desktop-automation.md) — Offers a framework for creating scripts that automate repetitive tasks, window management, and power states on the desktop.
- [Automation Script Execution](https://awesome-repositories.com/f/operating-systems-systems-programming/automation-script-execution.md) — Enables quick execution of automation scripts via a searchable prompt or global keyboard shortcuts. ([source](https://github.com/johnlindquist/kit-docs/blob/main/GUIDE.md))
- [AppleScript Integrations](https://awesome-repositories.com/f/operating-systems-systems-programming/desktop-environment-frameworks/desktop-environment-components/desktop-applications/desktop-application-automation/applescript-integrations.md) — Executes AppleScript strings to programmatically control native macOS system features and third-party applications. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API.md))
- [OS Interaction Utilities](https://awesome-repositories.com/f/operating-systems-systems-programming/os-interaction-utilities.md) — Provides utilities for executing system-level actions such as editing files and sending notifications. ([source](https://github.com/johnlindquist/kit-docs/blob/main/KIT.md))
- [Application Focus Filtering](https://awesome-repositories.com/f/operating-systems-systems-programming/application-focus-filtering.md) — Identifies the currently focused application to enable application-specific automation logic. ([source](https://github.com/johnlindquist/kit-docs/blob/main/TIPS.md))
- [Tiling Window Managers](https://awesome-repositories.com/f/operating-systems-systems-programming/display-windowing/tiling-window-managers.md) — Provides capabilities to retrieve window boundaries and adjust the position, focus, or tiling of active windows. ([source](https://johnlindquist.github.io/kit-docs/))
- [Keystroke Simulation](https://awesome-repositories.com/f/operating-systems-systems-programming/keystroke-simulation.md) — Automates text entry by pasting plain text or templates into the currently focused application. ([source](https://github.com/johnlindquist/kit-docs/blob/main/SCRIPTLETS.md))

### Artificial Intelligence & ML

- [AI Conversation Managers](https://awesome-repositories.com/f/artificial-intelligence-ml/ai-conversation-managers.md) — Provides a system for managing multi-turn AI conversation history and streaming responses to the interface. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API.md))
- [Generative AI Provider Integrations](https://awesome-repositories.com/f/artificial-intelligence-ml/generative-ai-provider-integrations.md) — Integrates with various third-party AI providers to generate text completions from user prompts. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API.md))
- [LLM Integration Layers](https://awesome-repositories.com/f/artificial-intelligence-ml/llm-integration-layers.md) — Provides a dedicated layer for integrating large language models into local scripts for text generation and structured data extraction.
- [Structured Data Extraction](https://awesome-repositories.com/f/artificial-intelligence-ml/structured-data-extraction.md) — Enables extracting specific information from raw text using predefined schemas for consistent output formats. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API.md))
- [Interactive Variable Editors](https://awesome-repositories.com/f/artificial-intelligence-ml/prompt-templates/interactive-variable-editors.md) — Provides an editor that lets users tab through and edit variables within a template to customize script inputs. ([source](https://johnlindquist.github.io/kit-docs/))

### Development Tools & Productivity

- [Cross-Platform CLI Builders](https://awesome-repositories.com/f/development-tools-productivity/cross-platform-console-tooling/cross-platform-cli-builders.md) — Acts as a cross-platform framework for building CLI tools with environment variable and shell command management.
- [Global Keyboard Shortcuts](https://awesome-repositories.com/f/development-tools-productivity/global-keyboard-shortcuts.md) — Registers global keyboard shortcuts to trigger specific script actions or interrupt processes. ([source](https://github.com/johnlindquist/kit-docs/blob/main/TIPS.md))
- [Keyboard Productivity Tools](https://awesome-repositories.com/f/development-tools-productivity/keyboard-productivity-tools.md) — Provides tools to map complex system tasks to personalized keyboard shortcuts, menus, and text expansions.
- [Keyboard-to-Script Mappings](https://awesome-repositories.com/f/development-tools-productivity/keyboard-to-script-mappings.md) — Maps specific key combinations to scripts to trigger automation without using a menu or terminal. ([source](https://github.com/johnlindquist/kit-docs/blob/main/KIT.md))
- [Graphical Interfaces](https://awesome-repositories.com/f/development-tools-productivity/scripting-automation-frameworks/graphical-interfaces.md) — Creates a graphical interface that launches scripts and allows UI elements to be driven by script logic. ([source](https://github.com/johnlindquist/kit-docs/blob/main/KIT.md))
- [Scripting Utilities](https://awesome-repositories.com/f/development-tools-productivity/scripting-utilities.md) — Provides a centralized environment for executing utility scripts that handle git operations and project bootstrapping.
- [Shell Command Execution](https://awesome-repositories.com/f/development-tools-productivity/shell-command-execution.md) — Supports triggering and controlling operating system shell commands in both background and interactive modes. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API-GENERATED.md))
- [Scheduled Script Executions](https://awesome-repositories.com/f/development-tools-productivity/shell-script-execution-engines/custom-run-scripts/scheduled-script-executions.md) — Executes background automation scripts on a fixed timetable using cron syntax. ([source](https://github.com/johnlindquist/kit-docs/blob/main/KIT.md))
- [Event-Driven Scripting](https://awesome-repositories.com/f/development-tools-productivity/shell-script-execution-engines/custom-run-scripts/scheduled-script-executions/event-driven-scripting.md) — Launches scripts automatically based on filesystem changes, system events, or cron schedules. ([source](https://github.com/johnlindquist/kit-docs/blob/main/METADATA.md))
- [Custom AI Workflows](https://awesome-repositories.com/f/development-tools-productivity/workflow-automation-tools/workflow-collections/ai-automation-workflows/custom-ai-workflows.md) — Enables the creation of custom automation sequences that connect user inputs to AI providers for text generation.
- [Bulk File Content Updates](https://awesome-repositories.com/f/development-tools-productivity/bulk-file-content-updates.md) — Implements utilities for replacing text or regular expressions across multiple files to maintain project consistency. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API-GENERATED.md))
- [Clipboard Managers](https://awesome-repositories.com/f/development-tools-productivity/clipboard-management/clipboard-managers.md) — Includes utilities to read and write text to the system clipboard and maintain a history of copied items. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API-GENERATED.md))
- [System Clipboard Access](https://awesome-repositories.com/f/development-tools-productivity/clipboard-management/system-clipboard-access.md) — Provides capabilities to read clipboard contents and update selected text within the system. ([source](https://github.com/johnlindquist/kit-docs/blob/main/TIPS.md))
- [Code Snippet Execution](https://awesome-repositories.com/f/development-tools-productivity/code-snippet-execution.md) — Runs code snippets from various programming languages by creating temporary files and executing them in a terminal. ([source](https://github.com/johnlindquist/kit-docs/blob/main/SCRIPTLETS.md))
- [Filesystem Manipulation Utilities](https://awesome-repositories.com/f/development-tools-productivity/directory-management/administrative-directory-managers/filesystem-directory-operations/filesystem-manipulation-utilities.md) — Offers functions for searching files, creating home-relative paths, and moving items to the system trash. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API-GENERATED.md))
- [Git-Based Configuration Synchronization](https://awesome-repositories.com/f/development-tools-productivity/git-based-configuration-synchronization.md) — Synchronizes script environments across workstations by cloning and pushing to remote Git repositories. ([source](https://github.com/johnlindquist/kit-docs/blob/main/KENVS.md))
- [Script Debugging](https://awesome-repositories.com/f/development-tools-productivity/script-debugging.md) — Provides a debug mode with an inspector to step through code and inspect variable values. ([source](https://github.com/johnlindquist/kit-docs/blob/main/GUIDE.md))
- [Script Path Mapping](https://awesome-repositories.com/f/development-tools-productivity/script-path-mapping.md) — Connects external directories containing scripts to the system to enable execution outside primary paths. ([source](https://github.com/johnlindquist/kit-docs/blob/main/KENVS.md))
- [Text Editors](https://awesome-repositories.com/f/development-tools-productivity/text-editors.md) — Includes a built-in text editor for loading, modifying, and saving content within the current workspace. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API-GENERATED.md))
- [Text Expansion Snippets](https://awesome-repositories.com/f/development-tools-productivity/text-expansion-snippets.md) — Assigns trigger text to scripts so they execute as text expansion snippets. ([source](https://github.com/johnlindquist/kit-docs/blob/main/METADATA.md))
- [Source File Watching](https://awesome-repositories.com/f/development-tools-productivity/workflow-automation-tools/development-automation/development-rebuild-triggers/source-file-watching.md) — Monitors files and directories using glob patterns to trigger automation scripts on modification. ([source](https://github.com/johnlindquist/kit-docs/blob/main/GUIDE.md))

### System Administration & Monitoring

- [macOS Application Administration](https://awesome-repositories.com/f/system-administration-monitoring/macos-application-administration.md) — Uses AppleScript and shell commands to programmatically manage native macOS features and third-party applications.
- [Application Focus Monitors](https://awesome-repositories.com/f/system-administration-monitoring/application-focus-monitors.md) — Detects the currently focused application to enable context-aware text copying and pasting. ([source](https://johnlindquist.github.io/kit-docs/))

### User Interface & Experience

- [Form Input Widgets](https://awesome-repositories.com/f/user-interface-experience/form-input-widgets.md) — Creates rapid-entry input forms that return structured objects for use in script logic. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API.md))
- [HTML Window Rendering](https://awesome-repositories.com/f/user-interface-experience/html-and-css-rendering-engines/html-window-rendering.md) — Opens new interactive windows rendered with HTML and styled using utility CSS. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API.md))
- [Scriptable UI Toolkits](https://awesome-repositories.com/f/user-interface-experience/scriptable-ui-toolkits.md) — Ships a toolkit for building interactive input forms, HTML widgets, and markdown displays to drive script logic.
- [System Menu Bar Utilities](https://awesome-repositories.com/f/user-interface-experience/system-menu-bar-utilities.md) — Allows customization of the macOS system menu bar with dynamic text, emojis, and script launchers. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API-GENERATED.md))
- [User Input Capture](https://awesome-repositories.com/f/user-interface-experience/user-input-capture.md) — Implements a variety of interactive UI elements, including forms, grids, and chat interfaces, to collect user data for script logic. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API-GENERATED.md))
- [Floating Desktop Widgets](https://awesome-repositories.com/f/user-interface-experience/floating-desktop-widgets.md) — Spawns persisting, positioned floating windows to display content independently from the main script flow. ([source](https://github.com/johnlindquist/kit-docs/blob/main/GUIDE.md))
- [Interactive Input Fields](https://awesome-repositories.com/f/user-interface-experience/interactive-input-fields.md) — Prompts users for text or selection input with support for hints, timeouts, and custom styling. ([source](https://github.com/johnlindquist/kit-docs/blob/main/TIPS.md))
- [Programmatic UI Control](https://awesome-repositories.com/f/user-interface-experience/programmatic-ui-control.md) — Programmatically opens editor windows to append text or render markdown content. ([source](https://github.com/johnlindquist/kit-docs/blob/main/TIPS.md))

### Part of an Awesome List

- [Git & GitHub](https://awesome-repositories.com/f/awesome-lists/devtools/git-github.md) — Allows performing version control operations such as cloning repositories via remote Git and GitHub services. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API.md))
- [Keyboard and Mouse Input Simulations](https://awesome-repositories.com/f/awesome-lists/devtools/keyboard-mouse/keyboard-and-mouse-input-simulations.md) — Enables programmatic control of the mouse and keyboard to automate user interface interactions. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API.md))

### Data & Databases

- [JSON Document Storage](https://awesome-repositories.com/f/data-databases/json-document-storage.md) — Uses simple JSON files on the local filesystem as a lightweight document store or database. ([source](https://github.com/johnlindquist/kit-docs/blob/main/GUIDE.md))
- [Key-Value Persistence Stores](https://awesome-repositories.com/f/data-databases/key-value-persistence-stores.md) — Provides a persistent key-value store for saving application state and simple data types across sessions. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API-GENERATED.md))
- [User Script Synchronization](https://awesome-repositories.com/f/data-databases/user-script-synchronization.md) — Synchronizes custom scripts and their configurations across multiple devices via remote repositories. ([source](https://github.com/johnlindquist/kit-docs/blob/main/SPONSOR.mdx))

### Graphics & Multimedia

- [Screen and Audio Capture](https://awesome-repositories.com/f/graphics-multimedia/audio-music/audio-recording/screen-and-audio-capture.md) — Captures screen, webcam video, and audio for documentation purposes. ([source](https://github.com/johnlindquist/kit-docs/blob/main/SPONSOR.md))

### Software Engineering & Architecture

- [Environment Variable Managers](https://awesome-repositories.com/f/software-engineering-architecture/application-lifecycle-management/configuration-management/environment-variable-management/environment-variable-managers.md) — Manages environment variables through local configuration files and user prompts. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API.md))
- [Workspace Isolation](https://awesome-repositories.com/f/software-engineering-architecture/environment-isolation/workspace-isolation.md) — Groups related scripts and libraries into isolated directories to manage distinct workspaces. ([source](https://github.com/johnlindquist/kit-docs/blob/main/KENVS.md))

### Web Development

- [HTTP Request Clients](https://awesome-repositories.com/f/web-development/http-request-clients.md) — Ships a built-in HTTP client for retrieving data from APIs and downloading remote files. ([source](https://github.com/johnlindquist/kit-docs/blob/main/GUIDE.md))
- [Web Scraping and Extraction](https://awesome-repositories.com/f/web-development/web-scraping-and-extraction.md) — Provides tools to parse HTML and extract attribute values or text from webpages. ([source](https://github.com/johnlindquist/kit-docs/blob/main/API-GENERATED.md))
