Skip to content

BetterThanTomorrow/awesome-backseat-driver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Awesome Backseat Driver Awesome

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

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:

Install

To install the Marketplace and 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

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

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.

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.)

You can of course just copy the content of anything you want on your machine(s) from this repo and configure manually in VS Code.

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 — agent and skill for any dialect and runtime. Agent: Clojure · Skill: clojure
clojure-editor Subagent for editing Clojure files using Backseat Driver structural editing tools. Agent: 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

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

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).

Development

Branch model

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

Validating plugins

bb validate

Checks that all plugin.json files are valid JSON with required fields, and that all referenced skill/agent paths exist.

Publishing a release

bb publish

This validates preconditions (on next, clean tree, ahead of master, changelog has unreleased entries), shows a summary, and on confirmation pushes a [publish] marker commit. The CI pipeline then validates plugins, updates the changelog and version, 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

Stars

Watchers

Forks

Contributors