Skip to content

Commit 9a20dca

Browse files
authored
add new features (#84)
* add new features * fix skills
1 parent a575904 commit 9a20dca

File tree

4 files changed

+347
-11
lines changed

4 files changed

+347
-11
lines changed

services/github-report/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,6 @@ All notable changes to this project are tracked here. This changelog follows
1616

1717
## [Unreleased]
1818

19+
## [github-report-v0.1.0] - 2026-03-14
20+
1921
- first release

services/github-report/publish-release.sh

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -135,9 +135,30 @@ patterns = [
135135
re.compile(rf"^##\s+\[?{re.escape(version)}\]?(?:\s+-.*)?$"),
136136
]
137137
138-
if not any(any(pattern.match(line.strip()) for pattern in patterns) for line in lines):
139-
print(f"Missing changelog section for {tag} in {changelog_path}", file=sys.stderr)
140-
sys.exit(1)
138+
if any(any(pattern.match(line.strip()) for pattern in patterns) for line in lines):
139+
sys.exit(0)
140+
141+
unreleased_notes = []
142+
capture_unreleased = False
143+
for line in lines:
144+
stripped = line.strip()
145+
if stripped == "## [Unreleased]":
146+
capture_unreleased = True
147+
continue
148+
if capture_unreleased and stripped.startswith("## "):
149+
break
150+
if capture_unreleased:
151+
unreleased_notes.append(line)
152+
153+
message = f"Missing changelog section for {tag} in {changelog_path}"
154+
if "\n".join(unreleased_notes).strip():
155+
message += (
156+
f". Unreleased still has content; run ./publish-release.sh --prep {version} "
157+
"on a clean branch and merge that changelog commit to main first."
158+
)
159+
160+
print(message, file=sys.stderr)
161+
sys.exit(1)
141162
PY
142163
}
143164

skills/README.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ Script helper to install Codex skills into `~/.agents/skills`.
3030
- Recognizes skill folders by `SKILL.md`.
3131
- Keeps installs idempotent across repeated runs.
3232
- Avoids overwriting skills that belong to a different source.
33+
- Supports removing one installed skill by its visible Codex skill name.
3334
- Removes stale skills only for the same source.
3435

3536
## Requirements
@@ -42,6 +43,7 @@ Script helper to install Codex skills into `~/.agents/skills`.
4243

4344
```bash
4445
./install-skills.sh [options] [source] [destination_dir]
46+
./install-skills.sh --remove-skill <skill_name> [destination_dir]
4547
```
4648

4749
### Source
@@ -59,6 +61,11 @@ Script helper to install Codex skills into `~/.agents/skills`.
5961
### Options
6062

6163
- `-h`, `--help`: Show help.
64+
- `--remove-skill <skill_name>`: Remove one installed skill from the destination.
65+
You can pass either:
66+
- the skill `name:` from `SKILL.md`, which is the name Codex shows in VS Code
67+
and uses for routing
68+
- the installed skill folder name under `~/.agents/skills`
6269

6370
## Examples
6471

@@ -77,10 +84,24 @@ Script helper to install Codex skills into `~/.agents/skills`.
7784

7885
# Install from GitHub nested skills folder to custom destination
7986
./install-skills.sh "https://github.com/openai/skills/tree/main/skills" "~/.agents/skills"
87+
88+
# Remove an installed skill by the same name shown in Codex chat
89+
./install-skills.sh --remove-skill nebius
90+
91+
# Remove an installed skill by its folder name
92+
./install-skills.sh --remove-skill vendor-nebius
8093
```
8194

8295
## Notes
8396

8497
- Existing unmanaged folders in destination are never overwritten.
8598
- If a skill exists but belongs to another source, it is skipped.
8699
- A valid skill folder must contain `SKILL.md`.
100+
- `--remove-skill` deletes the matching skill folder from the destination and
101+
removes its local manifest entries.
102+
- After removing a skill, reload the VS Code extension host to refresh skill
103+
discovery.
104+
- Reinstalling from a source that still contains the skill will add it back.
105+
- The installer uses `rsync --delete` inside each managed skill directory, and
106+
it also removes stale skills that were previously installed from the same
107+
source.

0 commit comments

Comments
 (0)