Skip to content

BetterThanTomorrow/awesome-backseat-driver

Repository files navigation

Awesome Backseat Driver Awesome

Plugin marketplace for Clojure AI context in VS Code Copilot and Cursor: agents, skills, and workflows for REPL-first interactive programming with Calva Backseat Driver.

Note

Plugins contain agents and skills. Both types of content are lazy loaded by the agent, so they will not hurt your agents context window just by being there. They will only add some little description so that the agent knows when to load them.

The minimal starter-pack, IMO, is the clojure and clojure-editor plugins, and the clojure instructions. (There is some cross-referencing going on between these.) Also IMO, you need the babashka, and epupp, plugins.

Plugins

Plugin Description Contents
babashka Babashka scripting and bb.edn task skills for idiomatic Babashka development. Skills: babashka, babashka-tasks
clojure REPL-first Clojure development — general agent and skill for any dialect and runtime; pairs with clojure-editor for safe edit delegation. Agent: clojure · Skill: clojure
clojure-editor Subagent for editing Clojure files using Backseat Driver structural editing tools. Agents: clojure-editor, non-clojure-editor
epupp Browser tampering and userscript development with Epupp (ClojureScript/Scittle in the browser). Skill: epupp
squint Squint ClojureScript development — compilation, REPL workflow, debugging, and tooling for squint.edn projects. Skill: squint

Instructions

Instructions can't be bundled in plugins — install them separately:

Instruction Description Install
clojure Tiny. Nudge to help the Agent decide to load the Clojure skill Install in VS Code Install in VS Code Insiders

Install

Installation looks a bit different depending on platform. You can also copy the content of anything you want on your machine(s) from this repo and configure manually in VS Code or Cursor.

VS Code Copilot

To install the Marketplace and e.g. the clojure plugin:

  1. Install/configure Awesome Backseat Driver as a provider of plugins:
    1. From the VS Code command palette: Chat: Install Plugin from Source
    2. Paste: https://github.com/BetterThanTomorrow/awesome-backseat-driver
    3. Select clojure Select Awesome Clojure Plugin
  2. You will also want to installing the clojure-editor plugin:
    1. From the VS Code command palette: Chat: Plugins
    2. Append plugin name in the search box, e.g. clojure-editor
    3. Click Install

Instructions and prompts have install buttons in the rendered markdown from this site. (I recommend consolidating all Copilot config to ~/.copilot/, but that's me.)

Cursor

From Cursor Settings -> Plugins paste the link to this repo (https://github.com/BetterThanTomorrow/awesome-backseat-driver) in the Search or Paste Link text input box. The plugins will be listed:

Install the Awesome Backset Driver Marketplace in Cursor

Click a plugin and then click Add to Cursor.

Once installed, you can ask the agent to explain what a plugin brings, by clicking the Try in Chat button.

Try a plugin in Cursor

Relationship to Calva Backseat Driver

The Calva Backseat Driver extension provides the foundational tooling layer of instructions so that the agent can and knows how to do REPL evaluation, structural editing, symbol lookup, etcetera. Install it from the VS Code Marketplace.

This marketplace (as the Copilot team terms it) provides

  1. More optinonated instructions for the AI to produce high quality Clojure code and use the REPL effectively.
  2. More specific information around this or that Clojure dialect or runtime, or this or that library or framework / tool / etcetera.
  3. More opinionated instructions about the use of subagents, etecetera

VS Code Copilot Customization Docs

To make sense of what the content of this repository offers, you may want to check out some of these resources:

Cursor Customization

Start here: https://cursor.com/docs/plugins

WIP

This repo will mature both in terms of its content and structure. Right now it is very raw and maybe not the easiest to contribute to (and certainly not to maintain). Please don't let that stop you from trying to contribute. 😀

Development

Branch model

Development happens on the next branch. Releases merge next into master (fast-forward only).

Dual-manifest workflow

Copilot manifests under .github/plugin/ are the source of truth. Cursor manifests under .cursor-plugin/ are generated only — never edit them by hand.

# after changing .github/plugin/ manifests or plugin content
bb generate-cursor-plugins
bb validate
git add .github/plugin/ .cursor-plugin/

bb validate runs Copilot checks plus Cursor validation (path resolution, frontmatter policy, and L4 drift detection against committed .cursor-plugin/ files).

Cursor

Generated .cursor-plugin/marketplace.json and plugins/*/.cursor-plugin/plugin.json follow Cursor’s plugin reference. Install or test from the same git repo URL as Copilot; Cursor reads the generated tree, not .github/plugin/.

Validating plugins

bb validate

Checks Copilot and Cursor plugin structure: required fields, referenced paths, frontmatter identifiers, and regeneration fidelity.

Publishing a release

bb publish

This runs bb validate first, then validates preconditions (on next, clean tree, ahead of master, changelog has unreleased entries), shows a summary, and on confirmation pushes a [publish] marker commit. CI validates again, runs ci-release (which regenerates both manifest trees), validates once more, commits Copilot and .cursor-plugin/ artifacts, tags, creates a GitHub Release, and merges next into master.

License 🍻🗽

MIT

Please sponsor my open source work ♥️

You are welcome to encourage my work, using this link:

About

Plugin marketplace for Clojure AI context in GitHub Copilot: agents, skills, and workflows for REPL-first interactive programming with Calva Backseat Driver

Topics

Resources

Contributing

Stars

12 stars

Watchers

0 watching

Forks

Contributors