🦑 Gitset [Astro.js - TypeScript - Node.js - CLI - Open Source]

Ivan Luna 06 Jul, 2026 03 Mins read
🦑 Gitset [Astro.js - TypeScript - Node.js - CLI - Open Source]

Gitset is an open-source toolkit for everything around your code on GitHub — README, pull request, issue, and release drafting, repository backups, and more — available as both a web app and a terminal CLI. It’s built BYOAI (bring your own AI key): every generation call goes straight from your machine or browser session to your own Anthropic, OpenAI, Gemini, OpenRouter, or OpenAI-compatible provider key. Gitset never sees your code or your key. Licensed under MPL-2.0.



Core Features:


  • README Generator: Drafts a complete, structured README.md for any repository from its actual content, with interactive refinement before anything is written.

  • Issue Crafter: Turns a rough description into a structured, context-aware GitHub issue, ready to refine and publish.

  • PR Maker: Generates pull request descriptions from commit messages and file changes, covering the full PR lifecycle from branch comparison to merge.

  • Release Manager: Drafts release notes from the actual diff between two tags or branches, with fine-tuning before tagging and publishing.

  • Commit Generator: Produces contextually accurate commit messages from staged changes, adapting to a project’s existing commit style.

  • Gitignore Builder: Generates a tailored .gitignore for any combination of languages and frameworks.

  • Repo Profiler: Drafts a repository description and topic suggestions based on its actual content.

  • Backup Automator: Sets up scheduled repository mirror backups via GitHub Actions, owned entirely by the user.

Every tool shares the same template system — a curated library plus user-saved templates — available identically on the web app and the CLI, and every draft goes through an interactive refinement step before it’s written or published anywhere.

The Gitset CLI (@gitset-dev/cli):

The CLI mirrors every drafting tool from the web app directly in the terminal, plus local-only utilities: .gitignore generation, license files, repository backup workflows, label packs, and Dependabot alert resolution. It runs entirely on your machine — no account, no backend calls. Configuration and templates are stored locally in ~/.gitset.

npm install -g @gitset-dev/cli
gitset config      # set your AI provider key, model, and theme
gitset commit      # draft a commit message from staged changes
gitset readme      # draft a README for the current repo

Technical Stack:

  • Web app: Astro 5 (SSR) with React 19 islands, GitHub OAuth for authentication.
  • CLI: Node.js, published to npm, works with any OpenAI-compatible provider endpoint.
  • AI providers: Anthropic, OpenAI, Gemini, OpenRouter, or any custom OpenAI-compatible endpoint — entirely user-supplied.
  • Open source: MPL-2.0, public repository at github.com/gitset-dev/gitset.

Use Cases:

  • Developers who want AI-drafted GitHub content without losing control of the final result — every draft is refined interactively before it ships.
  • Teams who want consistent templates across README, PR, issue, and release workflows.
  • Anyone who’d rather use their own AI provider key than a vendor-locked one, and who doesn’t want their code touching a third-party server.
  • CLI-first developers who want the whole workflow without leaving the terminal.

Conclusion:

Gitset represents a full product rebuild around a single idea: AI writes the draft, the user stays in control. The project demonstrates:

  • Designing a BYOAI architecture with zero server-side key or code custody.
  • Building matching web and CLI experiences around one shared template system.
  • Publishing and maintaining an open-source CLI package on npm.
  • Implementing GitHub OAuth and repository-scoped automation (GitHub Actions-based backups).
  • Open-sourcing a full product under MPL-2.0 with a public roadmap.


Share


Related projects

All projects