Agent skill

Create Ticket

by epam in epam/ai-dial-chat

Interactively create OR update GitHub issues (Bug, Feature, Task) for the current repository.

Apache-2.0Auto-check passed

Install Create Ticket

skills CLI
$ npx skills add epam/ai-dial-chat --skill create-ticket -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install epam/ai-dial-chat create-ticket --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/epam/ai-dial-chat.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/create-ticket .claude/skills/create-ticket && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
create-ticket
GitHub stars
504
Token cost
~4.6k tokens
SKILL.md length
2,292 words
Files
5
Skills in repo
18
Repo updated
First seen
Licence
Apache-2.0

At a glance

Interactively create OR update GitHub issues (Bug, Feature, Task) for the current repository.

  • Works in 9 steps: Intent, Source & Args → Issue Type → Title & Summary Proposal → …
  • Create ticket/issue
  • SKILL.md covers Prerequisites, Step 0 — Intent, Source & Args, From Spec (Mode B) and Update Existing Ticket (Mode C), plus 10 more sections
  • Calls gh and git

What it does

Create Ticket is an agent skill from epam/ai-dial-chat. Interactively create OR update GitHub issues (Bug, Feature, Task) for the current repository. Create from a discussion, from an openspec change (current branch or a specific change path), or update an existing issue with new details. Use for "create ticket/issue", "generate issue from spec", "document this feature as a ticket", or "update ticket/issue". Infrastructure changes are Tasks auto-labeled infra-task. Asks targeted questions, assigns labels, and runs the gh CLI.

Its SKILL.md is about 4.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files (for example `labels.md`, `types/bug.md` and `types/feature.md`).

It works with GitHub. The repository describes itself as: A default UI for AI DIAL. The licence is Apache-2.0.

When your agent uses it

  • Create ticket/issue
  • Generate issue from spec
  • Document this feature as a ticket
  • Update ticket/issue

Example prompts

  • “create ticket/issue”
  • “generate issue from spec”
  • “document this feature as a ticket”
  • “/create-ticket”

Workflow steps

9 steps, taken from the step headings in SKILL.md.

  1. Intent, Source & Args
  2. Issue Type
  3. Title & Summary Proposal
  4. Type-Specific Fields
  5. Priority
  6. Conditional Labels
  7. Assignee
  8. Preview
  9. Create

What it can do on your machine

Read from SKILL.md and the folder at commit 933c12c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • gh
    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • cli.github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Create Ticket loads about 4.6k tokens when it runs. Until then it costs about 123 tokens; SKILL.md has 2,292 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~123
When it runs · the whole SKILL.md, loaded when a task matches
~4.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from epam/ai-dial-chat at commit 933c12c, republished under its Apache-2.0 licence (© epam). 2,292 words, ~4,636 tokens.

Download SKILL.mdSave it as .claude/skills/create-ticket/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.
name
create-ticket
description
Interactively create OR update GitHub issues (Bug, Feature, Task) for the current repository. Create from a discussion, from an openspec change (current branch or a specific change path), or update an existing issue with new details. Use for "create ticket/issue", "generate issue from spec", "document this feature as a ticket", or "update ticket/issue". Infrastructure changes are Tasks auto-labeled `infra-task`. Asks targeted questions, assigns labels, and runs the gh CLI.
disable-model-invocation
true
model
haiku
alwaysApply
false
metadata.author
project
metadata.version
1.0

Create a GitHub issue in this repository. Guides the user through an interactive flow to gather all required information, then creates the issue via gh issue create.

Prerequisites

Before starting the flow, verify gh CLI is available and authenticated:

bash
gh auth status
  • If gh is not installed → stop and tell the user: "GitHub CLI (gh) is required. Install it: https://cli.github.com/"
  • If not authenticated → stop and tell the user: "Run gh auth login to authenticate first."
  • If authenticated → proceed to Step 0

Usage: /create-ticket [type: description | from spec | <change-path> | update <#issue|url>]

Examples:

  • /create-ticket — fully interactive
  • /create-ticket bug: login page crashes on Safari
  • /create-ticket feature: add bulk delete for models
  • /create-ticket task: refactor Sidebar for reuse in entity lists
  • /create-ticket infra: add LOG_LEVEL to prod
  • /create-ticket from spec — from the openspec changes on the current branch
  • /create-ticket openspec/changes/archive/2026-06-15-file-dnd-overlay — from a specific change
  • /create-ticket update #123 — add details to an existing issue

Step 0 — Intent, Source & Args

First decide which of three modes applies, then parse the remaining args.

  • Mode C — Update existing — the user references an existing issue: update, #<number>, or a GitHub issue URL. → go to Update Existing Ticket below.
  • Mode B — From spec — the user says "from spec", "from the branch", "issue from current change", or passes an openspec/changes/... folder path. → go to From Spec below, which drafts the Step 2 proposal, then continues at Step 1/3.
  • Mode A — From discussion (default) — anything else. Continue with arg parsing here.
Mode A arg parsing

If the user provided arguments after /create-ticket, parse them:

  • Look for a type prefix: bug:, feature:, task:, infra: (case-insensitive)
    • bug: → Bug
    • feature: → Feature
    • task: → Task (general engineering)
    • infra: → Task + force infra-task label (shortcut for infra change)
    • If found → set issue type, use the rest as a seed for the title/description
    • If not found → treat the entire arg string as a description seed and ask for type
  • If no args at all → start fully interactive from Step 1

When args provide a description seed (or the description comes from the current discussion), use it to:

  • Generate a proposed title — concise, under 80 characters
  • Generate a proposed summary — a short paragraph followed by key points as a bullet list. For bugs, also draft the actual/expected result from context.
  • Pre-fill relevant body fields where obvious
  • Auto-assign labels ONLY when the description makes them 100% clear
  • For ANY label where assignment is not certain from the description, ask the user directly

From Spec (Mode B)

Build the ticket from the openspec change(s) rather than free description. This produces a User Story + Acceptance Criteria + Definition of Done body, then flows through the normal pipeline (type, labels, priority, assignee, preview, create) so the ticket still gets --project and an assignee.

B1 — Locate the change
  • If the user passed a specific openspec/changes/... folder path → use it, skip discovery.

  • Otherwise discover changes introduced on the current branch against the repo's base branch (origin/development — NOT main):

    bash
    git diff --name-only $(git merge-base HEAD origin/development) -- openspec/
  • If no openspec files are found on the branch → tell the user and offer to fall back to Mode A (from discussion). Do not stop silently.

B2 — Read the spec content

For each changed change folder, read (in priority order, all that exist, in parallel):

  1. proposal.md — primary: Why, What Changes, Capabilities, Impact
  2. design.md — supplementary detail
  3. tasks.md — acceptance-criteria hints (checked - [x] = delivered scope)
  4. .openspec.yaml — metadata (title, status)

Also read any specs/* files in the diff (openspec/changes/<name>/specs/ or openspec/specs/).

B3 — Synthesise the draft (feeds Step 2)
  • Title — from .openspec.yaml title or the proposal heading, under 80 chars.

  • Type — derive from the change (default Feature; use Bug/Task if the spec is clearly a fix or engineering task). Confirm in Step 1.

  • Summary body — structured as:

    markdown
    #### User Story
    
    **As a** <persona — end user; "developer" only for tooling/infra>
    **I want to** <one action derived from "What Changes" / capability>
    **So that** <business value from "Why">
    
    #### Acceptance Criteria
    
    - <concise, testable, present-tense: "User can …", "When …, then …"> (aim for 4–8)
    
    #### Definition of Done
    
    - <delivered scope from checked tasks.md items + repo defaults: tests, i18n, RTL, docs where relevant>

Use this as the Step 2 draft, then continue at Step 1 (confirm type) → Step 3 onward. Skip Step 2a code research (the spec already is the research) unless the user asks.


Update Existing Ticket (Mode C)

Add details to an issue that already exists. Default action is to edit the body in place; appending a comment is offered as an option.

C1 — Resolve the target issue
  • If args include #<number> or an issue URL → use it.

  • Otherwise list candidates and let the user pick:

    bash
    gh issue list --search "<keywords from the request>" --limit 10 --json number,title,url
C2 — Fetch current state
bash
gh issue view <number> --json number,title,body,labels,assignees,url,state

Show the user the current title, labels, assignee, and body.

C3 — Gather the new details

Collect what to add from the discussion, or reuse From Spec (Mode B) if the update should come from an openspec change. Determine which of these change: body content, labels, title, assignee, priority.

C4 — Preview the before → after

Show the current vs. proposed body/labels/title so the user sees exactly what changes. Use AskUserQuestion:

"Apply this update?"

Options:

  • Edit body (default) — merge the new details into the issue body and update labels/title as needed
  • Add comment — keep the body, append the new details as a comment
  • Cancel — make no change
C5 — Apply
  • Edit body / fields:

    bash
    gh issue edit <number> \
      --body "<merged body>" \
      --add-label "<label>" \
      --title "<new title if changed>"
  • Or add a comment:

    bash
    gh issue comment <number> --body "<new details>"

Use --add-label / --remove-label for label changes; only pass --title/--body when they change. After applying, display the issue URL. Then stop — the rest of the create pipeline (Steps 1–8) does not apply to updates.


Step 1 — Issue Type

Skip if the type was parsed from args. If it was derived from a spec (Mode B), don't skip — confirm the derived type with the user (pre-select it as the default) before continuing.

Use AskUserQuestion to ask:

"What type of issue do you want to create?"

Options (these match the repo's GitHub issue types):

  • Bug — Report a problem or defect
  • Feature — Request a new feature or enhancement
  • Task — Engineering work that is not a user-facing feature (refactor, reuse, tech debt, cleanup, test/build improvements, AND infrastructure changes — env var, secret, config, deployment setting)

Infrastructure changes are NOT a separate top-level type. They're a Task that gets auto-labeled infra-task. Detection happens in Step 3 from context keywords (env var, secret, prod/uat, deployment, config, LOG_LEVEL, etc.).


Step 2 — Title & Summary Proposal

2a. Optional Code Research

Before drafting the proposal, check whether the user's input references code concepts that would benefit from codebase investigation.

Trigger signals (offer the question when ANY are present):

  • Verbs: refactor, reuse, extract, consolidate, migrate, rename, split, merge, deduplicate, unify, abstract, move, replace
  • Implementation nouns paired with an action: component, hook, utility, service, module, layout, route, page, store, context, provider
  • Explicit file paths, component names (e.g., Sidebar), or function/hook names

If triggered, use AskUserQuestion:

"Your request touches code (e.g., refactoring/reuse). Do you want me to dive into the codebase and include relevant details in the ticket?"

Options:

  • Yes, research — Explore the codebase and add findings to the description
  • No, skip — Proceed without code research

If Yes, spawn an Explore agent (via the Agent tool with subagent_type: Explore) to find:

  • Current location(s) of the subject code (file paths with line references)
  • Similar or duplicated patterns elsewhere in the codebase
  • Files/components/consumers that would be affected by the change
  • Existing conventions or abstractions to align with
  • If hand-authored libs/* are involved, the app/lib boundary: host-owned integration details such as API paths, generated clients, server-api wrappers, auth/session/cookie/env details, feature flags, routes/navigation, analytics/telemetry/logging, SDK setup, platform bridges, and app-specific storage keys/schemas must stay outside libs
  • If libs/chat-api-client is involved, call out that it is generated by OpenAPI scripts and should not be hand-edited

Keep the summary concise — bullet points with path:line references, not prose walls. These findings feed into 2b (title sharpness, description clarity, and a new Details section in the body).

Show full SKILL.md (1,073 more words)Show less
2b. Draft the Proposal

Based on the user's input, answers so far, and any code research findings:

  1. Propose a title — concise, under 80 characters. If research was done, make it specific (e.g., "Refactor Sidebar for reuse in ModelList, AdapterList, UserList").

  2. Propose a summary — structured as:

    • A short description paragraph (1-3 sentences explaining what and why)
    • Key points as a bullet list extracting the important details
    • If the task touches hand-authored libs/*, include a key point that the lib remains host-agnostic and host/external behavior is passed in via props, callbacks, resolved values, or narrow interfaces
    • If the task touches libs/chat-api-client, include a key point that it is regenerated from OpenAPI sources rather than manually edited
    • For bugs: also include drafted "Actual result" and "Expected result" if enough context exists
    • If code research was done: a Details section listing current location, affected files, duplicated patterns, and recommended scope (with path:line references)
  3. List all labels that will be auto-assigned based on the issue type and any labels already determined from context (e.g., bug, Design Required if obvious from description). Mark labels that will be asked about later as "TBD".

Present the proposal to the user and ask for confirmation:

"Here's what I've drafted from your input:

Title: <proposed title>

Summary: <description paragraph>

Key points:

  • <point 1>
  • <point 2>
  • ...

Labels (planned):

  • label1 (auto)
  • label2 (auto)
  • Priority — TBD
  • Severity — TBD
  • ...

Want to use this, or change anything?"

Options:

  • Use as-is — proceed with this draft
  • Edit — I want to change something

If Edit: ask what they want to change, revise, and re-confirm.

The proposed summary becomes the main content of the description/body field.

IMPORTANT: If the user approves the draft ("Use as-is"), do NOT re-ask fields that were already covered in the draft. In Step 3, only ask for fields that are missing or were not part of the proposal. For example, if the draft already includes "Actual result" and "Expected result" for a bug, skip those questions and only ask for remaining fields (version confirmation, steps to reproduce, severity, etc.).


Step 3 — Type-Specific Fields

Before asking individual fields, if the draft from Step 2 already covers some fields, ask the user:

"The draft already covers some details. How do you want to proceed?"

Options:

  • Use draft, fill remaining — Accept drafted fields, only ask for missing ones (version, severity, etc.)
  • Provide details now — Go through each field interactively
  • Use draft as-is — Skip all type-specific questions, use drafted content for all fields and fill missing fields with reasonable defaults or "No response"

Gather information interactively based on the issue type. Read the file for the chosen type now and follow its "Fields to gather" section — ask each field as a separate question using AskUserQuestion (open-ended, no preset options) unless a dropdown/choice is specified. Keep this file open: its "Body format" section is what you emit in Step 8.

  • Bug → types/bug.md
  • Feature → types/feature.md
  • Task (and infra variant) → types/task.md

Step 4 — Priority

Use AskUserQuestion:

"What priority level?"

Options:

  • High — Requires immediate action
  • Medium — Important but not urgent
  • Low — Low urgency

Step 5 — Conditional Labels

Evaluate the description and context gathered so far. For each label below:

  • If it is 100% clear from context that the label applies → auto-assign it and inform the user
  • If it is uncertain → ask the user directly
Design Required

Auto-assign yes if the user explicitly mentions: new page, new UI component, layout change, redesign, UX change, new visual element.

Auto-assign no (skip the question entirely) when the context clearly has no design implications — e.g., crashes, errors, backend issues, config changes, refactoring, performance bugs, infra tasks.

Only ask the user when it's genuinely ambiguous (e.g., "improve the user list" — could be UX or just data):

"Does this issue require design work?" Options: Yes / No

SIA (Security Impact Analysis)

Auto-assign SIA-required if the user mentions: authentication, authorization, tokens, secrets, passwords, permissions, session, credentials, encryption, PII.

Otherwise ask:

"Does this issue have a security impact that needs analysis?" Options:

  • SIA-required — Yes, needs security review
  • SIA-not required — No security impact

Step 6 — Assignee

A ticket MUST have an assignee — never leave one unassigned (tickets without owners get lost). Default to the creator (@me).

Use AskUserQuestion:

"Assign to you (the creator) by default, or someone else?"

Options:

  • Me (default) — Assign to the creator (@me)
  • Someone else — Ask for a GitHub username

If Someone else, ask:

"GitHub username to assign?"


Step 7 — Preview

Show the user a formatted preview of the entire issue:

══════════════════════════════════════════
ISSUE PREVIEW
══════════════════════════════════════════

Title:    <title>
Type:     <Bug/Feature/Task> (reflected via labels)
Labels:   <comma-separated list — includes `infra-task` if this is an infra change>
Assignee: <@me (creator) / username>
Project:  epam/68

──────────────────────────────────────────
BODY:
──────────────────────────────────────────

<formatted body matching template structure>

══════════════════════════════════════════

Use AskUserQuestion:

"Create this issue?"

Options:

  • Create — Create the issue now
  • Edit — I want to change something
  • Cancel — Don't create the issue

If Edit: Ask what they want to change, update it, and show the preview again. If Cancel: Stop and confirm cancellation.


Step 8 — Create

Build and execute the gh command:

bash
gh issue create \
  --title "<title>" \
  --body "<body>" \
  --label "<label1>,<label2>,..." \
  --project "epam/68" \
  --assignee "<@me|username>"

Notes:

  • --type is not supported by gh issue create. Issue type (Bug/Feature/Task) is conveyed via labels (bug, enhancement, or task-specific labels) — there is no separate type flag.
  • There is no separate "Infra Task" type — infrastructure work is a Task with the infra-task label auto-applied and the infra-specific body structure (change type, target environment, task list).
  • --assignee is ALWAYS set (default @me). Never omit it — the skill guarantees every ticket has an owner.
  • The <details-section> placeholder in the body format is the code-research findings from Step 2a. If research was NOT performed, omit the entire ### Details heading and its content — do not leave an empty section.
  • The body must match the GitHub issue template output format. Use the "Body format" section from the type file you read in Step 3 (types/bug.md, types/feature.md, or types/task.md — the general or infra variant as applicable).

After successful creation, display the issue URL returned by gh.


Label Reference

The full label table lives in labels.md. Read it when assigning labels in Steps 2b, 5, and 8.

Guardrails

  • NEVER create an issue without showing a preview and getting explicit confirmation
  • NEVER auto-assign a label unless you are 100% certain from the user's input
  • When uncertain about ANY label, ask directly — don't guess
  • Always use the exact label names as listed in labels.md
  • Always add --project "epam/68"
  • The confidential information checkbox is always pre-checked in the body
  • If gh CLI fails, show the error and suggest the user check their auth (gh auth status)
  • For tickets touching hand-authored libs/*, include library isolation in the description or acceptance criteria: host/external interfaces stay in apps, libs receive props/callbacks/resolved values
  • For tickets touching libs/chat-api-client, include that generated files are updated via OpenAPI generation scripts, not manual edits

© epam, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 4 other files in .claude/skills/create-ticket of epam/ai-dial-chat.

  • SKILL.md
  • labels.md
  • types/bug.md
  • types/feature.md
  • types/task.md

Open the folder on GitHubat commit 933c12c

Compare with similar skills

Create Ticket next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Create Ticket compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Create Ticket this skillepam/ai-dial-chat504—~4.6kAutomated safety check: PassApache-2.0
PR Babysitteropeninterpreter/openinterpreter69k3 repos~4.2kAutomated safety check: PassApache-2.0
Diagnosing Superpowers Sessionsobra/superpowers296k3 repos~1.7kAutomated safety check: PassMIT
GitHub Deep Researchbytedance/deer-flow83k5 repos~1.3kAutomated safety check: PassMIT
Greplooponyx-dot-app/onyx32k4 repos~3.3kAutomated safety check: PassMIT
Update V8 Versionopeninterpreter/openinterpreter69k2 repos~845Automated safety check: PassApache-2.0

Similar skills

  • PR Babysitter

    openinterpreter/openinterpreter

    Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.

    69k GitHub starsUsed in 3 repos~4.2k tokens
    DevelopmentAuto-check passed
  • Investigates a session where Superpowers went wrong, reads the transcripts on disk and produces an evidence-cited report, optionally prepared as a bug report for the maintainers.

    296k GitHub starsUsed in 3 repos~1.7k tokens
    Agent WorkflowsAuto-check passed
  • GitHub Deep Research

    bytedance/deer-flow

    Researches a GitHub repository over four rounds using the GitHub API and web search, then writes a structured markdown report with timeline, metrics and Mermaid diagrams.

    83k GitHub starsUsed in 5 repos~1.3k tokens
    Research & ScienceAuto-check passed
  • Greploop

    onyx-dot-app/onyx

    Iteratively improves a PR (GitHub), MR (GitLab), or shelved changelist (Perforce) until Greptile gives it a 5/5 confidence score with zero unresolved comments.

    32k GitHub starsUsed in 4 repos~3.3k tokens
    DevelopmentAuto-check passed
  • Update V8 Version

    openinterpreter/openinterpreter

    Bumps the pinned v8 and rusty_v8 versions in Codex, validates the release-candidate path with the v8-canary check, and traces failures to upstream build changes.

    69k GitHub starsUsed in 2 repos~845 tokens
    DevOps & CloudAuto-check passed
  • Check PR

    onyx-dot-app/onyx

    Checks a GitHub, GitLab, or Perforce (p4) pull request (or merge request, or shelved changelist) for unresolved review comments, failing status checks, and incomplete PR descriptions.

    32k GitHub starsUsed in 2 repos~2.3k tokens
    DevelopmentAuto-check passed

More from epam/ai-dial-chat

All 18 skills in this repo
  • Refactoring Audit

    epam/ai-dial-chat

    Deep codebase refactoring audit for AI DIAL Chat. An agent skill from epam/ai-dial-chat.

    504 GitHub stars~4.3k tokensUpdated today
    Auto-check passed
  • Read unresolved GitHub code review threads for the pull request associated with the current branch, classify each comment, and implement and verify required code fixes.

    504 GitHub stars~1.7k tokensUpdated today
    Auto-check passed
  • Dep Scan

    epam/ai-dial-chat

    Runs Trivy filesystem scan against the repo root and emits structured vulnerability findings (CVE, package, versions) in the SDLC reviewer schema.

    504 GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Figma

    epam/ai-dial-chat

    Design-to-code workflow for Figma designs. An agent skill from epam/ai-dial-chat.

    504 GitHub stars~997 tokensUpdated today
    Auto-check passed
  • Git Ship

    epam/ai-dial-chat

    A skill your agent uses whenever the user wants to commit, push, or ship changes in a git repository.

    504 GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Responsive Design

    epam/ai-dial-chat

    Responsive (mobile + desktop) layout workflow. An agent skill from epam/ai-dial-chat.

    504 GitHub stars~2.7k tokensUpdated today
    Auto-check passed

Works with

Questions about Create Ticket

What does Create Ticket do?

Interactively create OR update GitHub issues (Bug, Feature, Task) for the current repository. Create Ticket is an agent skill from epam/ai-dial-chat. Interactively create OR update GitHub issues (Bug, Feature, Task) for the current repository.

When should I use Create Ticket?

Create Ticket fits situations like: create ticket/issue; generate issue from spec; document this feature as a ticket; update ticket/issue.

How do I install Create Ticket in Claude Code?

Run `npx skills add epam/ai-dial-chat --skill create-ticket -a claude-code`. Or copy the skill folder (.claude/skills/create-ticket in epam/ai-dial-chat) into .claude/skills/create-ticket in your project. Claude Code loads it when a task matches its description.

How do I install Create Ticket in Codex?

Run `npx skills add epam/ai-dial-chat --skill create-ticket -a codex`. Or copy the skill folder (.claude/skills/create-ticket in epam/ai-dial-chat) into .agents/skills/create-ticket in your project. Codex loads it when a task matches its description.

Can I use Create Ticket in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add epam/ai-dial-chat --skill create-ticket -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/create-ticket, .gemini/skills/create-ticket, .github/skills/create-ticket and .opencode/skills/create-ticket in your project.

What does Create Ticket need to run?

Going by SKILL.md and its folder, Create Ticket needs the command-line tools its instructions call (gh and git).

Does Create Ticket access the network?

SKILL.md names 1 domain. As links in the text: cli.github.com. This is read from the text; nothing was executed.

Is Create Ticket safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Create Ticket use?

Create Ticket is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Create Ticket use?

About 4.6k tokens (SKILL.md is roughly 19k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Create Ticket?

Skills that share tags, products or a category with Create Ticket: PR Babysitter (openinterpreter/openinterpreter, 69k stars), Diagnosing Superpowers Sessions (obra/superpowers, 296k stars), GitHub Deep Research (bytedance/deer-flow, 83k stars) and Greploop (onyx-dot-app/onyx, 32k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Create Ticket?

epam (a GitHub organization) maintains it in epam/ai-dial-chat, which has 504 GitHub stars. The repository holds 18 skills in this directory. The repository was last updated on October 7, 2026.

Source: epam/ai-dial-chat on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.