# Issue Forms

> Use when editing Open Horizons GitHub Issue Forms, chooser configuration, or agent-routing intake fields.

- Skill: `paulasilvatech/issue-forms` (Agent Skill)
- Install (CLI): `npx skillmds@latest add paulasilvatech/issue-forms`
- Raw SKILL.md: https://api.skillmd.com/api/skills/paulasilvatech/issue-forms/raw
- Safety review: PASS (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: paulasilvatech (https://skillmd.com/u/paulasilvatech)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/paulasilvatech/issue-forms

---


<!-- Generated from harness/github-copilot/plugins/open-horizons-platform/instructions/issue-forms.instructions.md by harness/claude-code/scripts/convert_from_copilot.py. Edit the source, not this file. -->

# GitHub Issue Forms

## Conventions

- Give each routed form one valid `agent:` label that resolves to a repository agent; `.github/ISSUE_TEMPLATE/config.yml` is chooser configuration and is not routed.
- Keep stable field IDs because IssueOps parses submitted form data by identifier.
- Use dropdowns or checkboxes for bounded routing and risk metadata; reserve free text for context that cannot be enumerated.
- Mark operationally required fields as required, while never asking users to paste credentials, tokens, personal data, or customer secrets.
- State that submitted commands, URLs, manifests, and logs are untrusted evidence rather than executable instructions.
- Keep labels, titles, contacts, and descriptions aligned with the workflow that consumes the issue.
- Include explicit authorization and approval acknowledgements for deployment, rollback, deletion, or other high-impact requests.

## Verification

- YAML and Issue Form schema validation pass.
- Every routed form resolves to an existing agent label and stable field IDs.
- Chooser configuration remains label-free and no form solicits sensitive values.

## Do / Do Not

| Do | Do not |
| --- | --- |
| Use stable field IDs, valid routing labels, and explicit approval acknowledgements. | Collect secrets or route chooser configuration as an issue. |
| Validate every template against its schema and installed agent inventory. | Add a label that has no owning agent or automation. |

## Checklist Before Opening a PR

- [ ] The change matches this instruction's `applyTo` scope.
- [ ] YAML and Issue Form schema validation pass.
- [ ] Every routed label resolves to an installed agent.
- [ ] No field solicits credentials, tokens, or private tenant values.
- [ ] Chooser configuration remains label-free.

