Skip to main content

Issue Reporter

The Issue Reporter files a bug report or feature request against the correct repository in the Infrahub ecosystem. There are 11 candidate repos and most people do not know which one owns their problem, so the skill reads your working directory for cues, proposes a target, searches for duplicates, and drafts an issue that matches that repo's intake form. It never auto-submits: it stops at a review gate and submits only after you approve both the content and the method.

When to use​

  • You think you have found a bug in Infrahub or one of its components
  • You want to request a feature and do not know where it belongs
  • You are not sure which repo owns the problem you are seeing
  • You want an issue drafted properly before it goes on a public tracker

Do not use it while you are still debugging locally with no intention of filing. Filing is what separates this skill from ordinary troubleshooting. For friction with an Infrahub skill's own guidance, use the Skill Gap Reporter instead, which drafts the report and hands it here.

What it produces​

  • A routing decision with a one-sentence rationale, presented for you to confirm or correct
  • A duplicate search across open and closed issues, with the top matches shown to you
  • Either a new issue or a comment on the existing one that already covers your problem
  • For bugs, a minimal environment section: product versions, OS and architecture, runtime version
  • A body rendered against the target repo's own issue template when it has one
  • The issue or comment URL after submission

Example prompts​

  • "I think I found a bug in Infrahub"
  • "How do I report this issue?"
  • "I'd like to request a feature for the Ansible collection"
  • "Where should I file this?"
  • "This isn't working, I want to open a ticket"

Where issues get routed​

RepoOwns
opsmill/infrahubThe platform, and the default fallback
opsmill/infrahub-sdk-pythonThe Python SDK
opsmill/infrahub-vscodeThe VS Code extension
opsmill/infrahub-ansibleThe Ansible collection
opsmill/nornir-infrahubThe Nornir plugin
opsmill/infrahub-helmThe Helm chart
opsmill/infrahub-mcpThe MCP server
opsmill/schema-libraryThe schema library
opsmill/infrahub-backupThe backup CLI
opsmill/infrahub-syncThe sync tool
opsmill/infrahub-skillsThis plugin

When routing is ambiguous, it defaults to opsmill/infrahub. The main repo can re-route an incoming issue to a sub-repo far more easily than a sub-repo can send it back, so erring toward the platform is the cheaper mistake.

Key rules enforced​

  • Never submit without approval — the review gate shows you the target repo, the final title, the full body, and whether this is a new issue or a comment, before anything is posted
  • Default to main when unsure — ambiguous cues, equally matching repos, or your own uncertainty all route to opsmill/infrahub
  • Search before filing — open and closed issues both, with a second pass using synonyms when the first returns nothing
  • Comment instead of duplicating — when a match exists, the skill either complements the issue with genuinely new information or records a short "another hit" so maintainers can gauge frequency
  • Minimal environment info — versions, OS, and architecture only; no file paths, no project structure, no verbatim logs, no env dumps, no docker compose ps output
  • Unknown beats guessed — a version that cannot be determined cleanly is marked unknown rather than inferred by running broader discovery commands
  • Support questions are not issues — "how do I do X?" is routed to Discord or GitHub Discussions

Common mistakes it catches​

MistakeWhat the skill does instead
Filing in a sub-repo when the symptom is ambiguousFiles in opsmill/infrahub and lets maintainers re-route
Opening a duplicateAdds a comment to the existing issue with the new information
Pasting full logs or docker compose outputCollects versions, OS, and architecture, nothing more
Filing a support question as a bugPoints you to Discord or Discussions
Guessing a version numberMarks it unknown
Submitting before you have read itStops at the review gate until you explicitly approve

Finding your versions​

For bugs, the skill collects the relevant version. These are the commands it uses:

ComponentCommand
Infrahub serverinfrahubctl --version, or the image: tag in your compose file
Python SDKpip show infrahub-sdk
Ansible collectionansible-galaxy collection list opsmill.infrahub
Nornir pluginpip show nornir-infrahub
Helm charthelm list -n <namespace>
infrahub-syncinfrahub-sync --version
infrahub-backupinfrahub-backup --version
MCP serverMCP client config, or pip show infrahub-mcp
VS Code extensionExtensions panel in VS Code
Skills pluginversion field in .claude-plugin/plugin.json

Submitting​

Once you approve the content, the skill asks how you want to submit. All three methods work for a new issue or a comment on an existing one:

# New issue
gh issue create --repo <owner/repo> --title "..." --body "..."

# Comment on an existing issue
gh issue comment <number> --repo <owner/repo> --body "..."

A GitHub MCP server is used instead when you have one, and manual mode prints copy-paste-ready markdown plus the right URL.

warning

Issue bodies are public and cannot be retracted. Error messages carry file paths, hostnames, and node kinds that identify your infrastructure, so the skill paraphrases rather than pasting. Read the draft at the review gate with that in mind.

tip

If Infrahub is broken rather than misbehaving in a specific, reportable way, the Diagnostics Collector gathers a redacted bundle for OpsMill support instead. The two are complementary: a public issue for a reproducible defect, a private bundle for a broken deployment.