plain-bug
Submit a bug report for the Plain framework. Use when the user wants to report a bug, error, or unexpected behavior. Collects context and creates a GitHub issue.
Best use case
plain-bug is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Submit a bug report for the Plain framework. Use when the user wants to report a bug, error, or unexpected behavior. Collects context and creates a GitHub issue.
Teams using plain-bug should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/plain-bug/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How plain-bug Compares
| Feature / Agent | plain-bug | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Submit a bug report for the Plain framework. Use when the user wants to report a bug, error, or unexpected behavior. Collects context and creates a GitHub issue.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Submit a Plain Bug Report ## 1. Get bug details from the user Ask the user for: - **Title** (required) — a short summary of the bug - **Description** (required) — what happened and how to trigger it. Keep it concise but include whichever of these are available: - **Reproduction steps** — a minimal code snippet or command sequence that triggers the bug. Most valuable when the bug is reproducible. - **Actual error** — the traceback or unexpected output verbatim (trimmed to the relevant parts). - **Root cause / fix** — if you have high-confidence insight, include it. Helps maintainers triage faster. Not every bug will have all three — a feature that's missing or behaves incorrectly may just need a clear description. ## 2. Collect environment info Run these commands to auto-detect environment details: ```bash uv run plain --version ``` ```bash uv run python --version ``` ```bash uname -s -r ``` ## 3. Confirm with user Show the user the full issue title and body before submitting. Do NOT submit without explicit approval. ## 4. Submit via `gh` Create the issue using the GitHub CLI: ```bash gh issue create --repo dropseed/plain --title "<title>" --body "<body>" ``` The body should follow this format: ``` <user's bug description> ## Environment - Plain: <version> - Python: <version> - OS: <uname output> --- *Submitted via the `/plain-bug` skill.* ``` ## 5. Report the result Show the issue URL returned by `gh` so the user can follow up. ## Guidelines - **No private info** — Don't include file paths, env vars, API keys, secrets, database URLs, or other project-specific details. Only include Plain/Python versions, OS, and the bug description. - **Confirm before submitting** — Always show the full issue body to the user and get approval before creating. - **No label needed** — Maintainers will triage and label the issue.
Related Skills
plainx-release
Releases plainx packages with version suggestions, changelog generation, and git tagging. Use when releasing a package to PyPI.
plain-upgrade
Upgrades Plain packages and applies required migration changes. Use when updating to newer package versions.
plain-postgres-doctor
Check overall database health — schema correctness and operational health. Use when asked to check the database, validate schema, optimize indexes, or diagnose Postgres problems.
plain-portal
Open a remote Python shell on a production machine via encrypted tunnel. Use when you need to inspect production data, debug issues, run queries, or transfer files.
plain-optimize
Captures and analyzes performance traces to identify slow queries and N+1 problems. Use when a page is slow, there are too many queries, or the user asks about performance.
plain-install
Installs Plain packages and guides through setup steps. Use when adding new packages to a project.
plain-guide
Answer questions about the Plain framework by researching docs and source code. Use when asked "how do I...", "does Plain support...", or "how does X work?" questions.
release
Releases Plain packages with intelligent version suggestions and parallel release notes generation. Use when releasing packages to PyPI.
future
Navigate and manage the future/ directory — view dependency graphs, filter by arc, find unblocked futures, and identify what to work on next. Use when deciding what to work on, exploring planned work, or checking dependencies between futures.
explainer
Create explainer videos with narration and AI-generated visuals. Triggers on: "解说视频", "explainer video", "explain this as a video", "tutorial video", "introduce X (video)", "解释一下XX(视频形式)".
convert-plaintext-to-md
Convert a text-based document to markdown following instructions from prompt, or if a documented option is passed, follow the instructions for that option.
visual-explainer
Generate beautiful, self-contained HTML pages that visually explain systems, code changes, plans, and data. Use when the user asks for a diagram, architecture overview, diff review, plan review, project recap, comparison table, or any visual explanation of technical concepts. Also use proactively when you are about to render a complex ASCII table (4+ rows or 3+ columns) — present it as a styled HTML page instead.