create-discussion
Create a GitHub Discussion (for example a feature request in a repository that routes them to Discussions instead of issues) with background, prioritized…
Skill by tomzx
Chalk Labs
Need help deploying create-discussion?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/tomzx-create-discussion
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: finance
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/create-discussion
What's inside
- Skill name
create-discussion- Description
- Create a GitHub Discussion (for example a feature request in a repository that routes them to Discussions instead of issues) with background, prioritized acceptance criteria (Must/Should), and a justified time budget.
- License
- MIT
- Instructions
- 227 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Create GitHub Discussion
Creates a structured GitHub Discussion in the specified repository with background, prioritized acceptance criteria (Must/Should), and (for private repositories) a justified time budget.
Use it for repositories that route requests (typically feature requests) to GitHub Discussions instead of issues, so the request arrives in the channel the maintainers asked for.
This skill is standalone: it is the Discussion counterpart to `/create-issue` and does not participate in the issue-driven SDLC pipeline.
## Prerequisites
- Apply the shared SDLC conventions in `skills/sdlc/references/shared.md`.
- If no argument is provided, operate on `$REPO`.
- `gh` CLI authenticated with write access to the target repository, and Discussions enabled for it
- Repository name in `owner/repo` format (`$1`), or omitted to use the repository in the current working directory
### Skill attribution (GitHub)
Before creating the discussion with `createDiscussion`, read [`github-post-attribution/SKILL.md`](../github-post-attribution/SKILL.md) and append the **Created with** footer for `SKILL_DIR` = `create-discussion` to the discussion body.
The SDLC phase footer does not apply: a discussion is not issue-driven and has no issue number.
### Communication guidelines (outbound text)
Before composing any text posted or drafted on the user's behalf, apply [`communication-guidelines/SKILL.md`](../communication-guidelines/SKILL.md).
## Formatting
- Do not use curly or typographic quotation marks in any text you write for the discussion (title, body, sections, lists, or examples).
Use straight ASCII double quotes (`"`) and straight apostrophes (`'`) only.
- Write one sentence per line throughout the discussion body.
Lists and checklist items follow their own format, but any prose paragraph should have each sentence on its own line.
## Acceptance Criteria
- Split into **Must** (the exit gate, the minimum bar for "done") and **Should** (deferrable without blocking the request).
- Aim for the smallest set that proves the request is resolved.
If **Must** grows beyond roughly 5 items, the request is probably too broad and should be split rather than padded with more criteria.
- Each criterion must be testable (a concrete test can be written for it) and specific about *what*, not *how*.
- Put the happy path in **Must**.
Move edge cases, error handling, and polish to **Should** unless they are part of the core definition of done.
- Omit the **Should** subsection entirely when there are no deferrable items.
Do not invent nice-to-haves just to fill it.
## Time Budget
- Give a **total** plus a short **breakdown** so the estimate can be defended and challenged rather than asserted.
- Weight the estimate toward **planning and evaluation**, not implementation.
With AI-assisted development, writing the code is nearly free and instant; the real cost is understanding the problem, designing the solution, evaluating alternatives, and validating the result.
Treat implementation sub-estimates as negligible unless the work is genuinely large (e.g. multi-day migrations, hardware-bound work, or mass repetitive changes).
- The breakdown should list the activities that actually limit delivery: research, design, feasibility evaluation, review, and validation/testing.
- Each breakdown line pairs a work area with a sub-estimate and a one-line cost driver (e.g. "unfamiliar codepath", "needs a design decision", "requires cross-team input").
- List the **assumptions** the estimate depends on (what is already in place, what is out of scope).
When an assumption breaks, the estimate should be revisited.
- Keep it rough: half-day precision is fine.
Do not over-engineer the breakdown for small requests (a single line is acceptable when the work is genuinely one lump).
## Summary
- If the description (background plus any context you would write) exceeds 200 words, add a **Summary** section before the **Background** section.
- The summary must be less than 200 words, at most 5 sentences, with one sentence per line, and concisely summarize the ask: what is needed and why, in plain terms.
- If the description is 200 words or fewer, omit the Summary section entirely.
## Discussion Body Scope
- Keep the discussion body focused on summary (when applicable), background, acceptance criteria, and time budget.
- If you have detailed code analysis (e.g. files examined, codepaths traced, root-cause reasoning, relevant snippets), do not add it to the body.
Instead, post it as a follow-up comment after the discussion is created.
- The body should give readers enough context to discuss the request; the follow-up comment provides the deeper analysis for those who want the reasoning.
- Discussions do not support labels or issue types.
Do not attempt to apply either.
## Steps
1. **Search for duplicates** first, before any codebase investigation.
The report alone supplies the keywords (error messages, command, skill, or feature names, component names).
Search Discussions and issues, because a duplicate may already exist in either channel:
```
gh api graphql -f query='
query($q:String!){ search(query:$q, type:DISCUSSION, first:10){ nodes{ ... on Discussion{ number title url } } } }
' -f q='repo:{owner}/{repo} <keywords>'
ghx issue list --repo $1 --search "<keywords>" --state all --limit 10
```
If a duplicate is found, stop and inform the user with the existing URL.
Do not create a new discussion unless the user confirms it is not a duplicate.
2. If the request is a feature request, determine the current version on the default branch (main/master) so the discussion records what commit the request was filed against.
Use `gh api repos/{owner}/{repo} --jq '.default_branch'` to find the default branch, then get the short SHA via `gh api repos/{owner}/{repo}/commits/<default_branch> --jq '.sha[0:7]'`.
3. Determine if the repository is public or private using `gh repo view [--repo $1] --json isPrivate --jq '.isPrivate'`.
A public repository is treated as open source; omit the **Time budget** section.
A private repository includes it.
4. **Resolve the repository node ID and the target category**.
First confirm Discussions is enabled:
```
gh api repos/{owner}/{repo} --jq '{id: .node_id, has_discussions: .has_discussions}'
```
If `has_discussions` is false, stop and tell the user the repository does not accept discussions.
Then list the categories:
```
gh api graphql -f query='
query($owner:String!,$name:String!){
repository(owner:$owner,name:$name){ discussionCategories(first:50){ nodes{ id name slug } } }
}' -f owner=<owner> -f name=<repo>
```
Pick the target category in this order:
1. The category the user named.
2. The category in the repository's feature-request contact link, read from the issue-template config (its URL is `/discussions/categories/<slug>` or `/discussions/new?category=<slug>`):
```
gh api "repos/{owner}/{repo}/contents/.github/ISSUE_TEMPLATE/config.yml" --jq '.content' 2>/dev/null | base64 -d
```
3. The first category whose `slug` or `name` matches ideas/feature/suggestions (case-insensitive).
4. The first category.
If there are no categories, stop and tell the user.
5. **Compose the body and create the discussion.** Include a **Version** section with the default-branch version determined in step 2 for feature requests (omit for requests that are neither).
Omit `--repo`-style flags: the mutation takes the repository node ID directly.
Append the attribution footer resolved per [`github-post-attribution/SKILL.md`](../github-post-attribution/SKILL.md):
```
gh api graphql -f query='
mutation($repoId:ID!,$categoryId:ID!,$title:String!,$body:String!){
createDiscussion(input:{repositoryId:$repoId, categoryId:$categoryId, title:$title, body:$body}){
discussion{ id number url }
}
}' -f repoId="<repo_node_id>" -f categoryId="<category_node_id>" -f title="<title>" -f body="$(cat <<'EOF'From tomzx/agents, MIT.
More from tomzx/agents
- 0.639score
create-mermaid-visualization
tomzx
Create any Mermaid diagram (flowchart, sequence, class, state, ER, C4, architecture, gantt, mindmap, timeline, pie, sankey, and 20+ more) from a description…
SkillAFreshness: A★ 12Claude Code +9 - 0.639score
communication-guidelines
tomzx
Shared guidelines for writing concise, high-signal outbound communication the agent posts or drafts on the user's behalf, covering GitHub PR and issue…
SkillAFreshness: A★ 12Claude Code +9 - 0.634score
audit-functional-suitability
tomzx
Audit whether the software actually does what it should, completely and correctly.
SkillAFreshness: A★ 12Claude Code +9 - 0.634score
create-article
tomzx
Write, update, or revise a high-quality article given a target audience and relevant sources.
SkillAFreshness: A★ 12Claude Code +9 - 0.634score
audit-usability
tomzx
Audit the software's interfaces (CLI, API, and web UI) for usability, the ISO/IEC 25010 characteristic covering recognizability, learnability, operability…
SkillAFreshness: A★ 12Claude Code +9 - 0.634score
audit-attention
tomzx
Audit how your time splits between compounding and depreciating activities using the two-year test.
SkillAFreshness: A★ 12Claude Code +9 - 0.634score
audit-compatibility
tomzx
Audit the codebase for compatibility, the ISO/IEC 25010 characteristic covering co-existence (running alongside other software without conflict) and…
SkillAFreshness: A★ 12Claude Code +9 - 0.634score
analyze-test-coverage
tomzx
Analyze a set of code changes (diff or files) and produce a structured test coverage report with three parts: introduced tests, change coverage, and uncovered…
SkillAFreshness: A★ 12Claude Code +9 - 0.634score
arxiv-article
tomzx
Downloads an arXiv HTML article, converts it to markdown with pandoc, archives it, and returns a structured summary.
SkillAFreshness: A★ 12Claude Code +9 - 0.634score
arxiv-catchup
tomzx
Fetches new arXiv cs.AI papers published since the last processed date, processes each paper's HTML version via the arxiv-article skill, and advances the date…
SkillAFreshness: A★ 12Claude Code +9 - 0.634score
attach-assets
tomzx
Upload files (images, logs, screenshots) to a dedicated orphan branch in the repository and embed them in a GitHub issue or PR comment or description, so…
SkillAFreshness: A★ 12Claude Code +9 - 0.634score
audit-maintainability
tomzx
Audit the codebase for maintainability, the ISO/IEC 25010 characteristic covering modularity, reusability, analyzability, modifiability, and testability.
SkillAFreshness: A★ 12Claude Code +9
Signals
- Stars
- 12
- Forks
- 1
- Open issues
- 16
- Last commit (this folder)
- Oct 7, 2026 (25 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/tomzx/agents
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from tomzx
- 0.639score
create-mermaid-visualization
tomzx
Create any Mermaid diagram (flowchart, sequence, class, state, ER, C4, architecture, gantt, mindmap, timeline, pie, sankey, and 20+ more) from a description…
SkillAFreshness: A★ 12Claude Code +9 - 0.639score
communication-guidelines
tomzx
Shared guidelines for writing concise, high-signal outbound communication the agent posts or drafts on the user's behalf, covering GitHub PR and issue…
SkillAFreshness: A★ 12Claude Code +9 - 0.634score
audit-usability
tomzx
Audit the software's interfaces (CLI, API, and web UI) for usability, the ISO/IEC 25010 characteristic covering recognizability, learnability, operability…
SkillAFreshness: A★ 12Claude Code +9 - 0.634score
create-article
tomzx
Write, update, or revise a high-quality article given a target audience and relevant sources.
SkillAFreshness: A★ 12Claude Code +9 - 0.634score
analyze-test-coverage
tomzx
Analyze a set of code changes (diff or files) and produce a structured test coverage report with three parts: introduced tests, change coverage, and uncovered…
SkillAFreshness: A★ 12Claude Code +9 - 0.634score
arxiv-article
tomzx
Downloads an arXiv HTML article, converts it to markdown with pandoc, archives it, and returns a structured summary.
SkillAFreshness: A★ 12Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get create-discussion running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
create-discussion skill. Agent Mart. https://agentmart.dev/skills/tomzx-create-discussion (last updated 2026-10-24)