@olegkoval/agent-skills 1.71.2 → 1.72.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -104,6 +104,38 @@ Rules:
104
104
  Keep the body itself under ~2,500 characters. If it is longer, the asks are
105
105
  buried: cut prose, never cut the numbered asks.
106
106
 
107
+ **Open-source footer:** when the repo is open source, append the footer
108
+ below after the last section of the body and before the closer. Never add it
109
+ to a private repo. Open source means the repo is public:
110
+ `gh repo view <REPO_SLUG> --json isPrivate --jq '.isPrivate|not'`
111
+ must print `true`. Any other output (private, error) means no footer. Run
112
+ this check in the same command sequence that writes the payload, immediately
113
+ before posting, and build the footer from that result alone: never reuse an
114
+ earlier visibility answer. Never add it to inline comments. It does not count toward the
115
+ ~2,500-character budget, and it carries no praise, so the no-praise rule below
116
+ is not affected. Post it verbatim, with no em dashes:
117
+
118
+ ````markdown
119
+ ---
120
+ <sub>Reviewed with the [lekker-review skill](https://github.com/oleg-koval/agent-skills/tree/main/plugins/olko-github-pr/skills/lekker-review) · [skills.olegkoval.com](https://skills.olegkoval.com)</sub>
121
+
122
+ <details>
123
+ <summary>Install the review skill</summary>
124
+
125
+ In Claude Code:
126
+
127
+ ```
128
+ /plugin marketplace add oleg-koval/agent-skills
129
+ /plugin install olko-github-pr@olko-agent-skills
130
+ ```
131
+
132
+ Then run `/olko-github-pr:lekker-review <PR url>`.
133
+
134
+ - Skill source: https://github.com/oleg-koval/agent-skills/tree/main/plugins/olko-github-pr/skills/lekker-review
135
+ - Catalog and other install options: https://skills.olegkoval.com
136
+ </details>
137
+ ````
138
+
107
139
  **Closer:** when `CLOSER` is set (SKILL.md Step 3), append a blank line and
108
140
  `CLOSER.md_github` as the very last lines of the body. It does not count
109
141
  toward the ~2,500-character budget and is exempt from the no-praise rule
@@ -201,7 +233,11 @@ If the user asks to shorten, reword, or re-scope the comments after posting:
201
233
 
202
234
  - The review-level `body` alone can be edited in place:
203
235
  `gh api repos/<REPO_SLUG>/pulls/<PR_NUMBER>/reviews/<REVIEW_ID> --method PUT --input <json with {"body": ...}>`
204
- Inline comments survive this untouched.
236
+ Inline comments survive this untouched. A body-only PUT replaces the whole
237
+ body, so the replacement must carry the footer again: re-run the visibility
238
+ check from Step 1 and append the footer after the last section (before the
239
+ closer) when the repo is public, and leave it out when it is not. Never keep
240
+ the footer from the old body without rechecking.
205
241
  - **Inline comment bodies cannot be reliably edited on a pending review** --
206
242
  `PATCH /pulls/comments/{id}` targets submitted comments. To change them,
207
243
  DELETE the pending review and POST a fresh one:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@olegkoval/agent-skills",
3
- "version": "1.71.2",
3
+ "version": "1.72.0",
4
4
  "private": false,
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-apple-kit",
3
3
  "description": "Build and ship Apple platform apps: macOS menubar apps, App Store submissions.",
4
- "version": "1.71.2",
4
+ "version": "1.72.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-creative",
3
3
  "description": "Creative and personal projects: photo galleries, music players, listings, wiki editing.",
4
- "version": "1.71.2",
4
+ "version": "1.72.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-garmin-kit",
3
3
  "description": "Build, test and publish Garmin Connect IQ watch faces.",
4
- "version": "1.71.2",
4
+ "version": "1.72.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-git-tools",
3
3
  "description": "Everyday git and GitHub CLI operations: conventional commits, branch hygiene.",
4
- "version": "1.71.2",
4
+ "version": "1.72.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-github-pr",
3
3
  "description": "Drive GitHub pull requests to merge-ready: review-bot loops, CI fixes, descriptions, dependency triage.",
4
- "version": "1.71.2",
4
+ "version": "1.72.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -104,6 +104,38 @@ Rules:
104
104
  Keep the body itself under ~2,500 characters. If it is longer, the asks are
105
105
  buried: cut prose, never cut the numbered asks.
106
106
 
107
+ **Open-source footer:** when the repo is open source, append the footer
108
+ below after the last section of the body and before the closer. Never add it
109
+ to a private repo. Open source means the repo is public:
110
+ `gh repo view <REPO_SLUG> --json isPrivate --jq '.isPrivate|not'`
111
+ must print `true`. Any other output (private, error) means no footer. Run
112
+ this check in the same command sequence that writes the payload, immediately
113
+ before posting, and build the footer from that result alone: never reuse an
114
+ earlier visibility answer. Never add it to inline comments. It does not count toward the
115
+ ~2,500-character budget, and it carries no praise, so the no-praise rule below
116
+ is not affected. Post it verbatim, with no em dashes:
117
+
118
+ ````markdown
119
+ ---
120
+ <sub>Reviewed with the [lekker-review skill](https://github.com/oleg-koval/agent-skills/tree/main/plugins/olko-github-pr/skills/lekker-review) · [skills.olegkoval.com](https://skills.olegkoval.com)</sub>
121
+
122
+ <details>
123
+ <summary>Install the review skill</summary>
124
+
125
+ In Claude Code:
126
+
127
+ ```
128
+ /plugin marketplace add oleg-koval/agent-skills
129
+ /plugin install olko-github-pr@olko-agent-skills
130
+ ```
131
+
132
+ Then run `/olko-github-pr:lekker-review <PR url>`.
133
+
134
+ - Skill source: https://github.com/oleg-koval/agent-skills/tree/main/plugins/olko-github-pr/skills/lekker-review
135
+ - Catalog and other install options: https://skills.olegkoval.com
136
+ </details>
137
+ ````
138
+
107
139
  **Closer:** when `CLOSER` is set (SKILL.md Step 3), append a blank line and
108
140
  `CLOSER.md_github` as the very last lines of the body. It does not count
109
141
  toward the ~2,500-character budget and is exempt from the no-praise rule
@@ -201,7 +233,11 @@ If the user asks to shorten, reword, or re-scope the comments after posting:
201
233
 
202
234
  - The review-level `body` alone can be edited in place:
203
235
  `gh api repos/<REPO_SLUG>/pulls/<PR_NUMBER>/reviews/<REVIEW_ID> --method PUT --input <json with {"body": ...}>`
204
- Inline comments survive this untouched.
236
+ Inline comments survive this untouched. A body-only PUT replaces the whole
237
+ body, so the replacement must carry the footer again: re-run the visibility
238
+ check from Step 1 and append the footer after the last section (before the
239
+ closer) when the repo is public, and leave it out when it is not. Never keep
240
+ the footer from the old body without rechecking.
205
241
  - **Inline comment bodies cannot be reliably edited on a pending review** --
206
242
  `PATCH /pulls/comments/{id}` targets submitted comments. To change them,
207
243
  DELETE the pending review and POST a fresh one:
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-obsidian",
3
3
  "description": "Keep an Obsidian vault in sync with work: PR sync, task rollover, morning routine.",
4
- "version": "1.71.2",
4
+ "version": "1.72.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-product",
3
3
  "description": "Take a product idea to a shippable build: MVP passes, full-stack scaffolds, UX/UI quality loops, launch plans.",
4
- "version": "1.71.2",
4
+ "version": "1.72.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-reflection",
3
3
  "description": "Look back and improve: self-critique, retrospectives, performance review, rapid learning.",
4
- "version": "1.71.2",
4
+ "version": "1.72.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-release",
3
3
  "description": "Ship a release: semantic-release setup, changelogs, store listing copy, release-day routine.",
4
- "version": "1.71.2",
4
+ "version": "1.72.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-skill-meta",
3
3
  "description": "Author and maintain agent skills and the AI toolchain itself.",
4
- "version": "1.71.2",
4
+ "version": "1.72.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "olko-web-ops",
3
3
  "description": "Operate a website: WAF rules, search console audits, analytics bootstrap, docs indexes.",
4
- "version": "1.71.2",
4
+ "version": "1.72.0",
5
5
  "author": {
6
6
  "name": "Oleg Koval"
7
7
  },