Framework for durable domain SDKs with disposable AI-written scripts.
  • TypeScript 94.9%
  • Python 5.1%
Find a file
dikkadev a03eea1bed feat(github-projects): add project bootstrap API and clarify safety model for views
Introduce a first-class project bootstrap capability so teams and AI agents can spin up opinionated Projects V2 boards (fields plus starter issues) in a single flow while still keeping safety guarantees explicit. The new API and example script make project creation reproducible and scriptable, and the documentation clarifies dry-run expectations and current GitHub limitations around view/tab mutations so callers can plan views by intent without assuming they were actually created.
2026-02-26 16:53:30 +01:00
builder feat(builder): add jig-builder skill, agents, and language templates 2026-02-15 14:23:04 +01:00
github-projects feat(github-projects): add project bootstrap API and clarify safety model for views 2026-02-26 16:53:30 +01:00
spotify-playlist feat(spotify-playlist): add typesafe spotify playlist client and scripting toolkit 2026-02-15 14:27:53 +01:00
README.md feat(github-projects): add project bootstrap API and clarify safety model for views 2026-02-26 16:53:30 +01:00

jigs

A collection of AI-scriptable domain jigs and the tooling to build them.

A jig is a typed library where an AI coding agent writes short, validated scripts against a stable SDK. The human describes intent, the agent writes a script, the human reviews and runs it. Scripts are disposable; the library is durable.

User intent (natural language)
        |
        v
AI coding agent reads docs + types --> writes a script
        |
        v
Generated script (small, readable, --dry-run)
        |
        v
Domain library / SDK (handles connections, protocols, validation)

Jigs

Jig Description Language(s)
spotify-playlist Search, create, and manage Spotify playlists — auto-batching, dry-run, token refresh TypeScript
github-projects Create and manage GitHub Projects V2 + issues with typed project fields (Status, Priority, Size, Iteration) TypeScript
builder A meta-jig: teaches AI agents how to build new jigs for any domain Generates Python or TypeScript

Each jig lives in its own top-level directory with a self-contained README.

What Makes a Good Jig

  • Typed SDK that encapsulates domain complexity (connections, auth, protocols, retries)
  • Scripts that read like pseudocode -- 10-30 lines, intent-level, no boilerplate
  • Dry-run by default -- every script supports --dry-run / --preview before making real changes
  • Docs the AI can read -- GUIDE.md, API.md, EXAMPLES.md, in-code docstrings with @example tags
  • Agent instructions -- CLAUDE.md / AGENTS.md so any AI coding agent knows the conventions

See the builder's design principles for the full philosophy.

Building a New Jig

The builder is itself a skill that AI coding agents can load. Install it, then tell your agent:

"Build me a jig for [your domain]"

It walks through: domain contract, language choice, types, library, scripts, docs, agent instructions, and an acid test. See the builder README for installation instructions across Claude Code, OpenCode, Cursor, Windsurf, and Codex.

Repository Structure

jigs/
├── spotify-playlist/ # Spotify playlist management jig
│   ├── src/          # TypeScript SDK (client, types, operations)
│   ├── scripts/      # Runnable scripts + examples
│   ├── docs/         # GUIDE.md, API.md, EXAMPLES.md, CONCEPTS.md
│   └── CLAUDE.md     # Agent instructions
├── github-projects/   # GitHub Issues + Projects V2 management
│   ├── src/           # TypeScript SDK (client, types, operations)
│   ├── scripts/       # Runnable scripts + examples
│   ├── docs/          # GUIDE.md, API.md, EXAMPLES.md, CONCEPTS.md
│   └── CLAUDE.md      # Agent instructions
├── builder/          # Meta-jig: skill + agents for building new jigs
│   ├── skill/        # SKILL.md, templates, reference docs, examples
│   ├── agents/       # Claude Code teammate agents for parallel builds
│   └── README.md
└── README.md         # You are here

License

TBD