commit
無料Create a conventional commit for all uncommitted changes
日本語の概要は準備中です。原文の説明を表示しています。
Create or refine GitHub issues in `uniffy-io/uniffy` using the project's title, template, dependency, project, and image-attachment conventions. Use when asked to create, open, file, draft, report, rename, or track a bug, feature, security issue, or performance issue in this repository, including requests that begin with `[BUG]`, `[FEATURE]`, `[SECURITY]`, or `[PERFORMANCE]`. Skip for pull requests, commit messages, implementation plans that do not need a tracking issue, other repositories, or general GitHub CLI questions.
日本語の概要は準備中です。原文の説明を表示しています。
実行スコア 未検証
インストール方法を見るインストールする前に、エージェントに与えられる指示の中身を確認できます。
Codifies the issue conventions for the uniffy-io/uniffy repo. Apply every time you draft, refine, or post an issue.
[TYPE] Domain: short description
TYPE is one of BUG, FEATURE, SECURITY, PERFORMANCE.Domain is CamelCase, named after the vertical slice (backend src/uniffy/domains/<x>/ and frontend src/ui/src/features/<x>/ share the name). Omit the Domain: segment only if the change is genuinely cross-cutting with no dominant domain.Examples:
[BUG] Agents: cannot read images sent in chat[FEATURE] Chat: app-wide messenger dock[FEATURE] Agents: rooms domain toolsFour issue forms live in .github/ISSUE_TEMPLATE/:
| File | Use for |
|---|---|
bug.yml | Defects in existing functionality |
feature.yml | New functionality or significant enhancement |
security.yml | Hardening, audit findings, dependency CVEs (NOT active exploits - those email admins@uniffy.io) |
performance.yml | Slowness, high resource use, scalability |
When creating via gh issue create --body, write the body in the shape the matching template expects (same section headings + order). When the user files via the web UI, the template renders automatically.
None. Issues in this repo carry no labels: the title prefix carries the type and domain, and the Area body section carries the areas. Do not add labels even though domain:* and area:* labels still exist in the repo.
## Summary
One paragraph. What and why in one breath. No fluff.
## Motivation
User need, business driver, technical gap. The "so what".
## User Story
As a <role>, I want <capability> so that <outcome>.
## Scope
In:
- bullet of every behaviour the change must produce
- include concrete file paths and module names when known
- include acceptance-checkable items
Out:
- explicit non-goals (deferred to v2, separate issue, won't fix)
- prevents scope creep during execution
## Acceptance Criteria
- [ ] each criterion phrased as a verifiable check
- [ ] every Scope-In bullet should produce at least one box
- [ ] include tests, migrations, docs updates, telemetry as boxes
- [ ] always include rule-driven boxes that apply to the change
## Area
backend / frontend / mobile / proto / infra
## Alternatives Considered
- **Option name.** One-line description. Rejected: reason.
- Three to five alternatives is typical. Show the road not taken.
## Additional Notes - First-Glance Pointers
Where the change lands in the codebase. File paths, class names, line numbers.
Hidden constraints, performance bars (see backend rules' Performance-Critical
Domains for chat/agents), prerequisite refactors.
For BUG: replace Motivation/Scope/Acceptance with Steps to Reproduce / Expected / Actual / Severity / Environment. For SECURITY: Category / Severity / Impact / Reproduction-or-Evidence / Suggested Mitigation / References. For PERFORMANCE: Current Measurement (numbers + how measured) / Target (threshold + why) / Reproduction / Profiling Evidence / Suspected Cause.
Before writing the body, do enough recon to make "Additional Notes - First-Glance Pointers" accurate. Verify the gap is real:
rg and rg --files to confirm the claimed missing behaviour really is missing - never assert "code does not handle X" without searching.file_path:line_number..agents/rules/<domain>.md for established patterns..agents/local/plans/backlogs/ and any available project memory for relevant state, prior decisions, or feedback rules.If the user says "first analyse" or "don't create yet", deliver findings as a regular response and wait for the go-ahead. Otherwise proceed to create after recon.
gh issue create \
--title "[FEATURE] Domain: title" \
--body "$(cat <<'EOF'
## Summary
...
EOF
)"
After creation, capture the issue number from the URL output. Then:
Link blockers via GraphQL (gh CLI has no native flag):
# Get node ids
gh api graphql -f query='query { repository(owner:"uniffy-io", name:"uniffy") { issue(number:<blocked>) { id } } }' --jq '.data.repository.issue.id'
gh api graphql -f query='query { repository(owner:"uniffy-io", name:"uniffy") { issue(number:<blocker>) { id } } }' --jq '.data.repository.issue.id'
# Create the dependency
gh api graphql -f query='mutation { addBlockedBy(input: { issueId: "<blocked-id>", blockingIssueId: "<blocker-id>" }) { issue { number } } }'
Use the native dependency, NOT a plain comment or markdown link. The dependency shows in the sidebar and filters like is:open is:issue -blocked:*.
If the user wants an image attached: gh CLI cannot upload binary attachments. Two paths:
Apply AGENTS.md, the relevant .agents/rules/, and these issue-specific conventions when drafting body text:
- or a comma to separate clauses.domains/<x>/" instead of fabricating a specific file.SUM(token_estimate) query returns under 50ms p95 on 100k-row session" is..agents/rules/<x>.md, fold the relevant rules into the acceptance criteria so they cannot be forgotten in implementation. Examples: chat changes must keep hot reads through Valkey caches; agents changes must populate token_estimate at INSERT; UI changes must use the theme system + responsive breakpoints + useDocumentTitle.When asked to rename to follow the convention:
gh issue edit <num> --title "[TYPE] Domain: new title"
Apply the title convention above to both issues and PRs.
If the user shares a screenshot showing a bug or feature request:
| Field | Default |
|---|---|
| Repo | uniffy-io/uniffy |
| Project | V1 Roadmap (org project number 3, owner uniffy-io). New issues join it automatically; never run item-add. Effort lives there as Size (XS to XL) and Estimate (working days), set only when asked |
| Native dependency | Use addBlockedBy GraphQL when one issue blocks another |
| Image attach | Tell user to drag-drop in browser (gh limitation) |
まだレビューはありません。使ってみた感想をお寄せください。
ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。
まだコメントはありません。最初のコメントを書いてみませんか。
Create a conventional commit for all uncommitted changes
日本語の概要は準備中です。原文の説明を表示しています。
Create a Product Requirements Document from the current conversation and save it under `.agents/local/plans/`. Use when the user asks for a PRD, product specification, or requirements document for an Uniffy feature.
日本語の概要は準備中です。原文の説明を表示しています。
Execute or resume an implementation plan from `.agents/local/plans/`, keeping its companion backlog and validation evidence current. Use when the user asks to implement a saved plan or continue planned multi-phase work.
日本語の概要は準備中です。原文の説明を表示しています。
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
日本語の概要は準備中です。原文の説明を表示しています。
Audit the in-tree model catalog against each provider's live API (Anthropic, OpenAI, Google, OpenRouter, xAI) using the keys in .env. Surfaces new models the catalog is missing, catalog models a provider no longer returns, and price/context drift on the curated OpenRouter subset, so the catalog stays current. Works on both stacks (docker containers or host venv). Run periodically or when a provider ships new models / changes pricing.
日本語の概要は準備中です。原文の説明を表示しています。
Create a comprehensive Uniffy feature plan in `.agents/local/plans/` through deep codebase analysis, applicable rules, verified patterns, risks, tests, and executable validation steps. Use when the user asks to plan a feature or prepare implementation work without writing product code.
日本語の概要は準備中です。原文の説明を表示しています。