Managing GitHub issues one by one gets old and tiring really fast, especially when you're setting up a new project, migrating tasks, or generating structured backlogs.
In this guide, I’ll show you how to bulk-create GitHub issues using AI and seed them directly into your repository with Ghit.
You can either:
- Generate multiple markdown files (fully automated workflow), or
- Generate one large markdown file and split it automatically.
Let’s break it down.
What Is Ghit?
Ghit is a command-line tool that lets you manage GitHub repositories, issues, and workflows directly from your terminal. It combines custom, high-level commands for common tasks with auto-generated commands that cover the entire GitHub REST API, making bulk operations, automation, and version-controlled issue management easy and scriptable.
Instead of manually filling forms in GitHub’s UI, the Ghit issues:seed command lets you define your issues in markdown with frontmatter, then seed them into your repository with a single command.
Installing Ghit
You can install Ghit with your preferred package manager globally or for a specific project.
npm install -g ghit
This will install Ghit and get you ready for seeding issues to GitHub
Option 1: Generate Multiple Markdown Files (Fully Automated)
When to Use This
- You want AI to generate separate files automatically.
- You prefer structured issue files in a folder like
issues/. - You want clean numbering like
001-issue-title.md.
Step 1 — Generate Issues with AI
Use a prompt like this:
Generate 5 markdown files for GitHub issues about authentication bugs.
Each issue must follow this format:
---
type: [Feature | Task | Bug ]
title: Issue Title
labels: ['label1', 'label2', 'label3']
assignees: ''
---
## Description
Explain the issue clearly.
Filename format:
001-issue-title.md
002-another-issue.md
AI will generate multiple .md files for you.
Step 2 — Organize Files
Example structure:
issues/
├── 001-invalid-token-error.md
├── 002-session-timeout-bug.md
├── 003-password-reset-failure.md
Step 3 — Seed the Issues
Run:
ghit issues:seed issues/
Ghit will read every markdown file and create the corresponding GitHub issues automatically.
Option 2: Single Markdown File (Copy & Seed)
This method is perfect if:
- AI cannot directly create files.
- You’re working in ChatGPT and need to copy/paste.
- You want everything inside one file.
Step 1 — Generate a Single File
Use this prompt:
Generate a single markdown file containing 3 issues about UI improvements.
Separate each issue using `++++++`.
Each issue must follow this format:
---
type: [Feature | Task | Bug ]
title: Issue Title
labels: ['label1', 'label2', 'label3']
assignees: ''
---
## Description
Explain the issue clearly.
Step 2 — Save the File
Copy the generated content into:
bulk-issues.md
Step 3 — Seed the Issues
Run:
ghit issues:seed bulk-issues.md
Or with a full path (relative to the current working directory):
ghit issues:seed path/to/bulk-issues.md
Example File Format
---
title: Bug: Login Fails
labels: bug, auth
type: Bug
---
## Description
Login fails for users with special characters in their password.
++++++
---
title: Feature: Export Data
labels: feature, data
type: Feature
---
## Description
Allow users to export their data in CSV format.
Separator Rules
- Must be
++++++or====== - Must be on its own line
- Each issue must contain valid frontmatter
Pro Tip: Use Dry Run First
Before creating anything for real:
ghit issues:seed bulk-issues.md --dry-run
This shows you what will be created without actually pushing issues to GitHub.
Why This Workflow Is Powerful
- It's perfect for project scaffolding
- Ideal for AI-generated backlogs
- Comes in handy for migrating Trello/Notion tasks
- Clean, version-controlled issue definitions
- Reproducible issue seeding
Ghit allows you to define once and seed anytime.
Top comments (0)