一键导入
bip-issue-next
Draft the next GitHub issue — from a PR follow-up, a focus file, or the current conversation — review it with /bip-issue-check, and submit
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Draft the next GitHub issue — from a PR follow-up, a focus file, or the current conversation — review it with /bip-issue-check, and submit
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Check remote server CPU, memory, and GPU availability via SSH
Cold-start into a worktree/clone from a fresh conversation — read the PR, issue, and any status files, figure out where things stand, then STOP and ask the user what to do next. Use for a fresh conversation dropped into a bip-spawn or bip-epic-spawn worktree/clone that already has history (a PR, an in-progress phase, or a stalled worker).
Quick poll of tracked EPICs and code repos for new manuscript-relevant results
Persist manuscript session state before context reset
Cold-start for a manuscript session — the paper is the source of truth and shared context; discuss results, orchestrate research through issues/PRs, and update the paper as threads complete
Spawn a Claude session in a clone for an EPIC issue
| name | bip-issue-next |
| description | Draft the next GitHub issue — from a PR follow-up, a focus file, or the current conversation — review it with /bip-issue-check, and submit |
| allowed-tools | Agent, Bash, Read, Edit, Write, Glob, Grep, Skill |
Draft an issue, quality-check it, and submit — all in one command. The "next" issue may come from any source: a PR decision, a deferral filed by the issue-lead, an idea raised in conversation, or a topic given inline. There is no requirement that a PR exist.
/bip-issue-next <PR-URL-or-number>
/bip-issue-next <PR-URL-or-number> --focus-file <path>
/bip-issue-next --focus-file <path> # no PR; focus comes from file
/bip-issue-next # infer from current conversation
The --focus-file form lets a caller (the issue-lead filing a
specific deferral, or the user piping in a pre-written description)
name the next-action directly, skipping candidate collection and the
"ask if ambiguous" step. The file path points to a plain-text file
whose contents are the focus description (one-line or multi-line both
OK). A file is used instead of a CLI string to avoid shell-quoting
hazards when the description contains quotes, backticks, or
parentheses.
Parse $ARGUMENTS as whitespace-separated tokens:
#?NNN pattern). A PR is optional.--focus-file <path> if present and read the file contents
as the focus description. Strip leading/trailing whitespace but
preserve interior content verbatim. If the file is missing or
empty, stop and report the error — do not fall back to
candidate-picking.Duplicate-detection is the caller's responsibility — if called twice
with the same focus, two issues will be filed. The issue-lead guards
against this via completed_at (which makes the terminal ceremony
run at most once per session).
Then resolve the source, in this order:
gh pr view <arg> --json number,title,body,comments,reviews,baseRefName,headRefName)--focus-file was given without a PR, the focus is the
source — no PR resolution neededThe repo for the new issue is whichever is most natural: the PR's
repo if a PR is in play, otherwise the current working directory's
repo (inferred via gh repo view --json nameWithOwner).
If --focus-file was provided, use the file's contents as the
next-action directly. Skip candidate collection. If a PR is also in
play, read its body, comments, and review threads only to enrich the
motivation (quantitative results, linked issues) — not to override
the focus.
Else if a PR is in play, read the PR body, comments, and review threads and look for:
Collect these into a bullet list of candidate next-actions. If there are multiple independent next-actions, pick the single most impactful one (ask the user if it's ambiguous).
Else (no PR, no focus-file), use the current conversation as the source. The next-action is whatever the user has been discussing or asked you to file. Skip candidate collection — there is one focus, and it is the topic at hand. Ask the user only if the topic is genuinely ambiguous.
Also gather what's relevant from whichever source is in play:
Use the repo to fill in concrete details:
gh issue list -R <repo> --limit 20 --json number,title
to check for duplicates or related open issuesCONSTITUTION.md, DESIGN.md, or
experiments/CLAUDE.md in the repo for conventionsWrite ISSUE-<slug>.md in the current working directory. The slug
should be a short kebab-case summary (e.g., ISSUE-quartet-timing-instrumentation.md).
The issue MUST follow matsengrp standards:
Avoid vague language. Every adjective must have a measurable criterion. No "fast", "scalable", "robust" without numbers.
Apply prose discipline. Read PROSE-DISCIPLINE.md at the bipartite repo root before drafting and apply its rules. Defaults toward shorter: lead with the deliverable, state each fact once, bullets for enumerations, show the change site (not its surroundings), drop non-contested options, list bug-catching tests (not invariants).
No hard-wrapping. Write each paragraph as a single long line. Do NOT insert newlines at 70-80 characters within paragraphs or bullet points. Let GitHub's renderer handle line wrapping. Only use newlines for actual structural breaks (between paragraphs, list items, headings).
Invoke the /bip-issue-check skill on the drafted file:
/bip-issue-check ISSUE-<slug>.md
This will review the issue for completeness (constitution alignment,
data paths, algorithm spec, success criteria, vague language, etc.),
fix gaps, and submit the issue via /bip-issue-file.
Summarize: