# Create Ol Github Issue

> >

- **Type:** Skill
- **Install:** `agentstack add skill-mitodl-agent-kit-create-ol-github-issue`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [mitodl](https://agentstack.voostack.com/s/mitodl)
- **Installs:** 0
- **Category:** [Developer Tools](https://agentstack.voostack.com/c/developer-tools)
- **Latest version:** 0.1.0
- **License:** BSD-3-Clause
- **Upstream author:** [mitodl](https://github.com/mitodl)
- **Source:** https://github.com/mitodl/agent-kit/tree/main/skills/process/create-ol-github-issue

## Install

```sh
agentstack add skill-mitodl-agent-kit-create-ol-github-issue
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Create a GitHub Issue (`/olissue`)

When the user runs `/olissue`, guide them through creating a GitHub issue in a
`mitodl` repository using the org's standard issue templates.

## Default organization

Always default to **`mitodl`** unless the user explicitly names a different org.

## Step 1 — Gather required inputs

Ask the user for:

| Field | Notes |
|-------|-------|
| **Repository** | e.g. `ol-django` — org is implied as `mitodl` |
| **Issue type** | See template menu below |
| **Title** | Short, imperative sentence |
| **Body details** | Their text for each section of the chosen template |

Ask in a **single batched question** covering everything missing — one round
trip, not a sequence of one-field prompts.

**Ask for the body text; don't invent it.** The user knows what the issue is
about and you don't. Ask for their words per template section and use them
mostly as given — tighten wording and fix formatting, but do not expand a
one-line answer into three paragraphs. Only draft a section yourself when the
user asks you to or points you at source material (an error, a code path, a
thread) — and then show the draft before creating the issue.

**Blank sections:** the templates below mark optional sections with
`` (Possible Solution, Additional Details).
Delete those when empty rather than padding them. Every other section is
required — if one comes back blank, ask again for it instead of deleting it or
filling it in yourself. An issue with no Steps to Reproduce is the thing this
skill exists to prevent.

## Step 2 — Choose a template

Present these four options and apply the matching template body:

| # | Name | Labels | Template file |
|---|------|--------|---------------|
| 1 | Bug Report | `bug` | [bug.md](#template-bug-report) |
| 2 | Technical Issue | _(none)_ | [default.md](#template-technical-issue) |
| 3 | Product Issue | _(none)_ | [product.md](#template-product-issue) |
| 4 | Design QA | `design QA` | [designQA.md](#template-design-qa) |

## Step 3 — Create the issue

Show the filled-in body and confirm before creating it. Use the GitHub CLI:

```bash
gh issue create \
  --repo mitodl/ \
  --title "" \
  --body "" \
  --label ""   # omit if no label for this template type
```

Confirm the URL returned by `gh issue create` and share it with the user.

---

## Template: Bug Report

Labels: `bug`

```markdown

### Expected Behavior

### Current Behavior

### Steps to Reproduce

1.
2.
3.
4.

### Possible Solution

### Additional Details

```

---

## Template: Technical Issue

Labels: _(none)_

```markdown
### Description/Context

### Plan/Design

```

---

## Template: Product Issue

Labels: _(none)_

```markdown
### User Story

- As a ..., I want to ..., so I can ...

### Description/Context

### Acceptance Criteria

- [ ]

### Plan/Design

```

---

## Template: Design QA

Labels: `design QA`

```markdown

### Relevant Links

### Prioritized List of Issues

1. `high`
2. `high`
3. `med`
4. `low`

### Additional Details

```

---

## Writing style

The issue is read by a busy person deciding whether to pick it up. Keep it
short and factual:

- Plain sentences. No preamble, no scene-setting, no closing summary.
- Bullets and code blocks over paragraphs. One idea per bullet.
- Say it once. Don't restate the title in the body or repeat a section's
  content in another section.
- No filler adjectives ("comprehensive", "robust", "critical") and no emoji.
- Link rather than explain — a URL beats a paragraph describing what's behind it.
- Paste the actual error, log line, or snippet instead of narrating it.

A three-bullet issue that says exactly what is wrong beats a page of context.

## Tips

- Fill in the template sections with the user's details **before** calling
  `gh issue create`. Populated templates are more useful than placeholder text.
- Strip HTML comments (``) from the final body to keep the issue clean.
- If the user provides a full `org/repo` slug, use it as-is instead of prepending `mitodl/`.
- For Design QA issues, remind the user to follow the title convention:
  `Design QA: `.

## Self-contained issues

Issues must be **self-contained and self-documenting**. Do not reference local files,
on-device content, or relative paths that would be inaccessible to others. Instead:

- **Reference GitHub issues** by their full URL (e.g., `https://github.com/mitodl/ol-django/issues/123#issuecomment-456`)
- **Reference code files** via GitHub URLs (e.g., `https://github.com/mitodl/ol-django/blob/main/apps/course_info/views.py#L45-L52`)
- **Reference documentation** via its public URL (e.g., Django docs, library docs)
- **Reference designs** via Figma URLs or other publicly accessible sources
- **Include essential context inline** when no URL is available. If you need to reference
  a local log, error message, or specific code snippet, copy and paste it directly into
  the issue body.
- **Include log output or error messages** directly in the issue rather than describing
  them or referencing temporary files.
- **Attach screenshots** to the issue after creation rather than referencing local image files.

This ensures anyone can understand and act on the issue without needing access to the
reporter's local environment or file system.

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [mitodl](https://github.com/mitodl)
- **Source:** [mitodl/agent-kit](https://github.com/mitodl/agent-kit)
- **License:** BSD-3-Clause

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-mitodl-agent-kit-create-ol-github-issue
- Seller: https://agentstack.voostack.com/s/mitodl
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
