mirror of
https://github.com/mattpocock/skills.git
synced 2026-04-30 14:03:53 +07:00
Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| f71bb975bf | |||
| 4369256220 |
@@ -0,0 +1,25 @@
|
|||||||
|
# Issue tracker integrations are limited to mainstream tools
|
||||||
|
|
||||||
|
`setup-matt-pocock-skills` only offers first-class support for **mainstream** issue trackers. Requests to add support for niche, new, or single-vendor experimental trackers are out of scope.
|
||||||
|
|
||||||
|
## Why this is out of scope
|
||||||
|
|
||||||
|
Every issue-tracker backend hard-codes a CLI shape into the skills (commands, flags, output parsing). Each new backend is permanent maintenance surface — it has to keep working as the tool's CLI evolves, and it has to keep being tested against `/to-prd`, `/to-issues`, `/triage`, and friends. That cost is only worth paying for trackers a meaningful fraction of users actually have.
|
||||||
|
|
||||||
|
"Mainstream" is a judgment call, not a numeric bar:
|
||||||
|
|
||||||
|
- GitHub, GitLab, and Backlog.md are the kind of tools we'd consider mainstream — broadly known, widely used, well past the experimental phase.
|
||||||
|
- A brand-new agent-focused tool with a few hundred GitHub stars is not, no matter how interesting the design.
|
||||||
|
|
||||||
|
Stars, age, and download counts are useful signals when making the call but none of them is the rule. The rule is: would a typical engineer recognise this tool and have plausibly chosen it for their team?
|
||||||
|
|
||||||
|
The escape hatches for non-mainstream trackers already exist:
|
||||||
|
|
||||||
|
- `local markdown` for lightweight in-repo tracking.
|
||||||
|
- `other/custom` for users who want to wire something up themselves.
|
||||||
|
|
||||||
|
Neither requires the core skills to know about the specific tool.
|
||||||
|
|
||||||
|
## Prior requests
|
||||||
|
|
||||||
|
- #99 — "Add dex as an issue tracker backend" (dex was ~3 months old and ~300 stars at the time of the request)
|
||||||
@@ -37,10 +37,11 @@ Assume the user does not know what these terms mean. Each section starts with a
|
|||||||
|
|
||||||
> Explainer: The "issue tracker" is where issues live for this repo. Skills like `to-issues`, `triage`, `to-prd`, and `qa` read from and write to it — they need to know whether to call `gh issue create`, write a markdown file under `.scratch/`, or follow some other workflow you describe. Pick the place you actually track work for this repo.
|
> Explainer: The "issue tracker" is where issues live for this repo. Skills like `to-issues`, `triage`, `to-prd`, and `qa` read from and write to it — they need to know whether to call `gh issue create`, write a markdown file under `.scratch/`, or follow some other workflow you describe. Pick the place you actually track work for this repo.
|
||||||
|
|
||||||
Default posture: these skills were designed for GitHub. If a `git remote` points at GitHub, propose that. Otherwise (or if the user prefers), offer:
|
Default posture: these skills were designed for GitHub. If a `git remote` points at GitHub, propose that. If a `git remote` points at GitLab (`gitlab.com` or a self-hosted host), propose GitLab. Otherwise (or if the user prefers), offer:
|
||||||
|
|
||||||
- **GitHub** — issues live in the repo's GitHub Issues
|
- **GitHub** — issues live in the repo's GitHub Issues (uses the `gh` CLI)
|
||||||
- **Local markdown** — issues live as files under `.scratch/<feature>/` in this repo (good for solo projects or repos without a GitHub remote)
|
- **GitLab** — issues live in the repo's GitLab Issues (uses the [`glab`](https://gitlab.com/gitlab-org/cli) CLI)
|
||||||
|
- **Local markdown** — issues live as files under `.scratch/<feature>/` in this repo (good for solo projects or repos without a remote)
|
||||||
- **Other** (Jira, Linear, etc.) — ask the user to describe the workflow in one paragraph; the skill will record it as freeform prose
|
- **Other** (Jira, Linear, etc.) — ask the user to describe the workflow in one paragraph; the skill will record it as freeform prose
|
||||||
|
|
||||||
**Section B — Triage label vocabulary.**
|
**Section B — Triage label vocabulary.**
|
||||||
@@ -108,6 +109,7 @@ The block:
|
|||||||
Then write the three docs files using the seed templates in this skill folder as a starting point:
|
Then write the three docs files using the seed templates in this skill folder as a starting point:
|
||||||
|
|
||||||
- [issue-tracker-github.md](./issue-tracker-github.md) — GitHub issue tracker
|
- [issue-tracker-github.md](./issue-tracker-github.md) — GitHub issue tracker
|
||||||
|
- [issue-tracker-gitlab.md](./issue-tracker-gitlab.md) — GitLab issue tracker
|
||||||
- [issue-tracker-local.md](./issue-tracker-local.md) — local-markdown issue tracker
|
- [issue-tracker-local.md](./issue-tracker-local.md) — local-markdown issue tracker
|
||||||
- [triage-labels.md](./triage-labels.md) — label mapping
|
- [triage-labels.md](./triage-labels.md) — label mapping
|
||||||
- [domain.md](./domain.md) — domain doc consumer rules + layout
|
- [domain.md](./domain.md) — domain doc consumer rules + layout
|
||||||
|
|||||||
@@ -0,0 +1,23 @@
|
|||||||
|
# Issue tracker: GitLab
|
||||||
|
|
||||||
|
Issues and PRDs for this repo live as GitLab issues. Use the [`glab`](https://gitlab.com/gitlab-org/cli) CLI for all operations.
|
||||||
|
|
||||||
|
## Conventions
|
||||||
|
|
||||||
|
- **Create an issue**: `glab issue create --title "..." --description "..."`. Use a heredoc for multi-line descriptions. Pass `--description -` to open an editor.
|
||||||
|
- **Read an issue**: `glab issue view <number> --comments`. Use `-F json` for machine-readable output.
|
||||||
|
- **List issues**: `glab issue list --state opened -F json` with appropriate `--label` filters. Note that GitLab uses `opened` (not `open`) for the state value.
|
||||||
|
- **Comment on an issue**: `glab issue note <number> --message "..."`. GitLab calls comments "notes".
|
||||||
|
- **Apply / remove labels**: `glab issue update <number> --label "..."` / `--unlabel "..."`. Multiple labels can be comma-separated or by repeating the flag.
|
||||||
|
- **Close**: `glab issue close <number>`. `glab issue close` does not accept a closing comment, so post the explanation first with `glab issue note <number> --message "..."`, then close.
|
||||||
|
- **Merge requests**: GitLab calls PRs "merge requests". Use `glab mr create`, `glab mr view`, `glab mr note`, etc. — the same shape as `gh pr ...` with `mr` in place of `pr` and `note`/`--message` in place of `comment`/`--body`.
|
||||||
|
|
||||||
|
Infer the repo from `git remote -v` — `glab` does this automatically when run inside a clone.
|
||||||
|
|
||||||
|
## When a skill says "publish to the issue tracker"
|
||||||
|
|
||||||
|
Create a GitLab issue.
|
||||||
|
|
||||||
|
## When a skill says "fetch the relevant ticket"
|
||||||
|
|
||||||
|
Run `glab issue view <number> --comments`.
|
||||||
Reference in New Issue
Block a user