Finishing a Development Branch
obra/superpowers
Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.
Validate Examine v4 backward compatibility with ExamineX by cloning the ExamineX.Source repo (support/9.x branch), swapping Examine NuGet package references to local project references, and…
$ npx skills add Shazwazza/Examine --skill examinex-compat -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Shazwazza/Examine examinex-compat --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Shazwazza/Examine.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/skills/examinex-compat .claude/skills/examinex-compat && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "examinex-compat" agent skill from https://github.com/Shazwazza/Examine/tree/dev/.github/skills/examinex-compat into .claude/skills/examinex-compat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "examinex-compat", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Shazwazza/Examine/tree/dev/.github/skills/examinex-compatType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Shazwazza/Examine --skill examinex-compat -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Shazwazza/Examine examinex-compat --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Shazwazza/Examine.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.github/skills/examinex-compat .agents/skills/examinex-compat && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "examinex-compat" agent skill from https://github.com/Shazwazza/Examine/tree/dev/.github/skills/examinex-compat into .agents/skills/examinex-compat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "examinex-compat", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Shazwazza/Examine --skill examinex-compat -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Shazwazza/Examine examinex-compat --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Shazwazza/Examine.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.github/skills/examinex-compat .cursor/skills/examinex-compat && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "examinex-compat" agent skill from https://github.com/Shazwazza/Examine/tree/dev/.github/skills/examinex-compat into .cursor/skills/examinex-compat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "examinex-compat", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Shazwazza/Examine.git --path .github/skills/examinex-compat--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Shazwazza/Examine --skill examinex-compat -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Shazwazza/Examine examinex-compat --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Shazwazza/Examine.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.github/skills/examinex-compat .gemini/skills/examinex-compat && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "examinex-compat" agent skill from https://github.com/Shazwazza/Examine/tree/dev/.github/skills/examinex-compat into .gemini/skills/examinex-compat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "examinex-compat", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Shazwazza/Examine examinex-compatInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Shazwazza/Examine --skill examinex-compat -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Shazwazza/Examine.git skills-src && mkdir -p .github/skills && cp -r skills-src/.github/skills/examinex-compat .github/skills/examinex-compat && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "examinex-compat" agent skill from https://github.com/Shazwazza/Examine/tree/dev/.github/skills/examinex-compat into .github/skills/examinex-compat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "examinex-compat", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Shazwazza/Examine --skill examinex-compat -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Shazwazza/Examine examinex-compat --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Shazwazza/Examine.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.github/skills/examinex-compat .opencode/skills/examinex-compat && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "examinex-compat" agent skill from https://github.com/Shazwazza/Examine/tree/dev/.github/skills/examinex-compat into .opencode/skills/examinex-compat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "examinex-compat", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
examinex-compatValidate Examine v4 backward compatibility with ExamineX by cloning the ExamineX.Source repo (support/9.x branch), swapping Examine NuGet package references to local project references, and…
Examinex Compat is an agent skill from Shazwazza/Examine. Validate Examine v4 backward compatibility with ExamineX by cloning the ExamineX.Source repo (support/9.x branch), swapping Examine NuGet package references to local project references, and verifying the build passes. Use when checking API compatibility, verifying breaking changes, or validating that Examine v4 works with ExamineX. Intended for the examine-compat-validator custom agent.
Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Requires git and dotnet SDK 10.0+. Requires network access to clone https://github.com/SDKits/ExamineX.Source.git
It sits in Development. It works with Git. The repository describes itself as: A .NET indexing and search engine powered by Lucene.Net. The licence is MIT.
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 2500d3c. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitdotnetFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
github.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Requires git and dotnet SDK 10.0+. Requires network access to clone https://github.com/SDKits/ExamineX.Source.git
From compatibility in the SKILL.md frontmatter.
Examinex Compat loads about 2.6k tokens when it runs. Until then it costs about 101 tokens; SKILL.md has 777 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from Shazwazza/Examine at commit 2500d3c, republished under its MIT licence (© Shazwazza). 777 words, ~2,574 tokens.
.claude/skills/examinex-compat/SKILL.md (or your agent's skills folder).Validates that the current Examine v4 codebase is backward compatible with ExamineX by replacing ExamineX's NuGet package references for Examine with project references pointing to this workspace, then building the ExamineX solution.
git CLI available on PATHdotnet SDK 10.0+ installed (ExamineX targets net10.0)TEMP folder at the workspace root is disposable and must NEVER be committed to the Examine repository.TEMP/ is listed in the root .gitignore before proceeding.TEMP/ExamineX.Source already exists, skip the clone step and use the existing clone (run git pull to update).support/9.x branch.The ExamineX.Source repository (support/9.x branch) has the following relevant layout:
ExamineX.Source/
├── src/
│ ├── ExamineX.sln ← Main solution file
│ ├── Directory.Packages.props ← Central Package Management (has Examine entries)
│ ├── Directory.Build.props ← Global properties (TFM: net10.0)
│ ├── global.json ← Requires SDK 10.0.100+
│ ├── ExamineX.Shared/ ← Shared library (references Examine.Lucene)
│ ├── ExamineX.AzureSearch/ ← Azure Search provider (references Examine.Lucene)
│ ├── ExamineX.ElasticSearch/ ← Elastic Search provider (references Examine.Lucene)
│ ├── ExamineX.Solr/ ← Solr provider (references Examine.Lucene)
│ ├── ExamineX.AzureSearch.Umbraco/ ← Azure + Umbraco integration
│ ├── ExamineX.ElasticSearch.Umbraco/ ← Elastic + Umbraco integration
│ ├── ExamineX.Shared.Umbraco/ ← Shared Umbraco integration
│ ├── ExamineX.Common.Tests/ ← Shared test utilities (references Examine)
│ ├── ExamineX.AzureSearch.Tests/ ← Azure Search tests (references Examine)
│ ├── ExamineX.ElasticSearch.Tests/ ← Elastic Search tests (references Examine)
│ ├── ExamineX.Solr.Tests/ ← Solr tests
│ ├── ExamineX.AzureSearch.Umbraco.BlobMedia/ ← Blob media integration
│ ├── ExamineX.AzureSearch.Umbraco.ContentDelivery/ ← Content delivery integration
│ ├── ExamineX.AzureSearch.Umbraco.Forms/ ← Azure + Umbraco Forms
│ ├── ExamineX.AzureSearch.Umbraco.PDF/ ← Azure + Umbraco PDF
│ ├── ExamineX.ElasticSearch.Umbraco.Forms/ ← Elastic + Umbraco Forms
│ ├── ExamineX.AzureSearch.Umbraco.WebTest/ ← Web test app (legacy)
│ ├── ExamineX.AzureSearch.Umbraco.WebTest2/ ← Web test app (v13+)
│ └── ExamineX.Umbraco.WebTest/ ← Combined web test appExamineX uses Central Package Management (Directory.Packages.props). The following NuGet packages must be swapped to project references:
| NuGet Package | ExamineX Project(s) That Reference It | Examine Project Reference |
|---|---|---|
Examine.Lucene (v3.7.1) | ExamineX.Shared, ExamineX.AzureSearch, ExamineX.ElasticSearch, ExamineX.Solr | src/Examine.Lucene/Examine.Lucene.csproj |
Examine (v3.7.1) | ExamineX.Common.Tests, ExamineX.ElasticSearch.Tests, ExamineX.AzureSearch.Tests | src/Examine.Host/Examine.csproj |
Note: The
Examinemeta-package transitively includesExamine.CoreandExamine.Lucene. The test projects reference it for full Examine API access.
Check that the workspace root .gitignore contains a TEMP/ entry. If not, add it:
TEMP/If TEMP/ExamineX.Source does not exist:
git clone --branch support/9.x https://github.com/SDKits/ExamineX.Source.git TEMP/ExamineX.SourceIf it already exists, ensure it is on the correct branch and up to date:
cd TEMP/ExamineX.Source && git checkout support/9.x && git pull && cd ../..In TEMP/ExamineX.Source/src/Directory.Packages.props, remove or comment out the Examine package version entries:
<!-- Remove or comment out these lines: -->
<PackageVersion Include="Examine" Version="3.7.1" />
<PackageVersion Include="Examine.Lucene" Version="3.7.1" />All ExamineX projects live under TEMP/ExamineX.Source/src/<ProjectName>/, which is 4 directories deep from the Examine workspace root. The relative path prefix is ..\..\..\..\src\.
Examine.Lucene (4 projects)In each of these files, replace:
<PackageReference Include="Examine.Lucene" />With:
<ProjectReference Include="..\..\..\..\src\Examine.Lucene\Examine.Lucene.csproj" />Files to update:
TEMP/ExamineX.Source/src/ExamineX.Shared/ExamineX.Shared.csprojTEMP/ExamineX.Source/src/ExamineX.AzureSearch/ExamineX.AzureSearch.csprojTEMP/ExamineX.Source/src/ExamineX.ElasticSearch/ExamineX.ElasticSearch.csprojTEMP/ExamineX.Source/src/ExamineX.Solr/ExamineX.Solr.csprojExamine (3 test projects)In each of these files, replace:
<PackageReference Include="Examine" />With:
<ProjectReference Include="..\..\..\..\src\Examine.Host\Examine.csproj" />Files to update:
TEMP/ExamineX.Source/src/ExamineX.Common.Tests/ExamineX.Common.Tests.csprojTEMP/ExamineX.Source/src/ExamineX.ElasticSearch.Tests/ExamineX.ElasticSearch.Tests.csprojTEMP/ExamineX.Source/src/ExamineX.AzureSearch.Tests/ExamineX.AzureSearch.Tests.csprojFrom the workspace root, build the ExamineX solution in Debug configuration:
cd TEMP/ExamineX.Source/src
dotnet restore ExamineX.sln
dotnet build ExamineX.sln --no-restore --configuration DebugExpected outcome: Build succeeds with zero errors. Warnings are acceptable.
If the build fails, analyze the error output:
.csproj files with <NoWarn> for compat testing purposes, while still detecting real API shape changes.net10.0).Directory.Packages.props.Run the Azure Search tests (these are designed to run locally):
cd TEMP/ExamineX.Source/src
dotnet test ExamineX.AzureSearch.Tests --no-build --configuration DebugExpected outcome: All tests pass. Any test failures related to Examine APIs indicate compatibility issues.
Note: The Elasticsearch and Solr test projects may require external service infrastructure. If they fail due to connection issues (not Examine API issues), those failures can be ignored — focus on the Azure Search tests and overall build success.
Summarize the outcome:
| Issue | Solution |
|---|---|
| Clone fails (403 Forbidden) | The SDKits org has OAuth restrictions — ensure your git credentials have access to SDKits/ExamineX.Source |
| Clone fails (branch not found) | Verify the support/9.x branch exists: git ls-remote --heads https://github.com/SDKits/ExamineX.Source.git |
| SDK version error | ExamineX requires .NET SDK 10.0.100+. Check TEMP/ExamineX.Source/src/global.json |
| Build fails with TFM errors | ExamineX targets net10.0. Ensure Examine supports this TFM or add it |
| NuGet restore fails after swap | Ensure the Examine and Examine.Lucene PackageVersion entries were fully removed from Directory.Packages.props |
| Relative paths are wrong | Verify workspace structure: Examine repo root must contain both TEMP/ExamineX.Source/ and src/ |
| Obfuscation errors | Ensure you are building with --configuration Debug (obfuscation only runs in Release) |
| Nullable warnings treated as errors | Add <NoWarn>$(NoWarn);CS8600;CS8601;CS8602;CS8604;CS8620;CS8765</NoWarn> to affected project PropertyGroups |
| Elasticsearch/Solr tests fail with connection errors | These test projects may need external services — focus on Azure Search tests and build success |
The TEMP folder is disposable. To clean up:
Remove-Item -Recurse -Force TEMP/ExamineX.Source© Shazwazza, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .github/skills/examinex-compat of Shazwazza/Examine.
Open the folder on GitHubat commit 2500d3c
Examinex Compat next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Examinex Compat this skillShazwazza/Examine | 412 | — | ~2.6k | Automated safety check: Pass | MIT | |
| Finishing a Development Branchobra/superpowers | 297k | 5 repos | ~1.9k | Automated safety check: Pass | MIT | |
| Code Review ChecklistshareAI-lab/learn-claude-code | 78k | 4 repos | ~1.1k | Automated safety check: Pass | MIT | |
| Contributor-First PR MergeHKUDS/OpenHarness | 16k | 1 repos | ~847 | Automated safety check: Pass | MIT | |
| Finishing A Development Branchfarm-fe/farm | 5.6k | 35 repos | ~1.8k | Automated safety check: Pass | MIT | |
| Migrate Internal Package into GhostTryGhost/Ghost | 56k | — | ~3.8k | Automated safety check: Pass | MIT |
obra/superpowers
Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.
shareAI-lab/learn-claude-code
Reviews code against a five-part checklist covering security, correctness, performance, maintainability and testing, and reports findings in a fixed format.
HKUDS/OpenHarness
Merges external GitHub pull requests while keeping the original author credited, and fixes conflicts after the merge instead of rewriting the contribution.
farm-fe/farm
A skill your agent uses when implementation is complete, all tests pass, and you need to decide how to integrate the work - guides completion of development work by presenting structured options for…
TryGhost/Ghost
Moves a package from another TryGhost repository into Ghost as an internal workspace package while keeping its Git history, with checkpoints for the steps that need an administrator.
JetBrains/ideavim
Keeps IdeaVim documentation in sync with code changes. An agent skill from JetBrains/ideavim.
Shazwazza/Examine
Manage Examine public API tracking using the PublicAPI Roslyn analyzer workflow.
Shazwazza/Examine
Validate Examine v4 backward compatibility with Umbraco CMS by cloning the Umbraco-CMS repo, swapping NuGet package references to local project references, and verifying the build and tests pass.
Shazwazza/Examine
Validate Examine v4 backward compatibility with Umbraco.Cms.Search by cloning the Umbraco.Cms.Search repo, swapping the Examine NuGet package reference to a local project reference, and verifying…
Works with
Categories
Validate Examine v4 backward compatibility with ExamineX by cloning the ExamineX.Source repo (support/9.x branch), swapping Examine NuGet package references to local project references, and…. Examinex Compat is an agent skill from Shazwazza/Examine.x branch), swapping Examine NuGet package references to local project references, and verifying the build passes.
Examinex Compat fits situations like: checking API compatibility; verifying breaking changes; validating that Examine v4 works with ExamineX.
Run `npx skills add Shazwazza/Examine --skill examinex-compat -a claude-code`. Or copy the skill folder (.github/skills/examinex-compat in Shazwazza/Examine) into .claude/skills/examinex-compat in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Shazwazza/Examine --skill examinex-compat -a codex`. Or copy the skill folder (.github/skills/examinex-compat in Shazwazza/Examine) into .agents/skills/examinex-compat in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Shazwazza/Examine --skill examinex-compat -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/examinex-compat, .gemini/skills/examinex-compat, .github/skills/examinex-compat and .opencode/skills/examinex-compat in your project.
Going by SKILL.md and its folder, Examinex Compat needs the command-line tools its instructions call (git and dotnet). Compatibility (from SKILL.md): Requires git and dotnet SDK 10.0+. Requires network access to clone https://github.com/SDKits/ExamineX.Source.git.
SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Examinex Compat is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.6k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Examinex Compat: Finishing a Development Branch (obra/superpowers, 297k stars), Code Review Checklist (shareAI-lab/learn-claude-code, 78k stars), Contributor-First PR Merge (HKUDS/OpenHarness, 16k stars) and Finishing A Development Branch (farm-fe/farm, 5.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Shazwazza (a GitHub user) maintains it in Shazwazza/Examine, which has 412 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 7, 2026.
Source: Shazwazza/Examine on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.