Git GitHub Ops
c5inco/compose-pokedexer
Handles Pokedexer Git and GitHub workflows: inspect changes, prepare commit messages, manage branches and pushes, and create or update issues and pull requests with safe file-based inputs.
Drive a pull request on this repository to green — which fast checks to run before pushing, how to read a red check, and what to do about a review comment.
$ npx skills add yschimke/compose-ai-tools --skill steward -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install yschimke/compose-ai-tools steward --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/yschimke/compose-ai-tools.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/steward .claude/skills/steward && 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 "steward" agent skill from https://github.com/yschimke/compose-ai-tools/tree/main/.claude/skills/steward into .claude/skills/steward/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "steward", 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/yschimke/compose-ai-tools/tree/main/.claude/skills/stewardType 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 yschimke/compose-ai-tools --skill steward -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install yschimke/compose-ai-tools steward --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/yschimke/compose-ai-tools.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/steward .agents/skills/steward && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "steward" agent skill from https://github.com/yschimke/compose-ai-tools/tree/main/.claude/skills/steward into .agents/skills/steward/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "steward", 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 yschimke/compose-ai-tools --skill steward -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install yschimke/compose-ai-tools steward --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/yschimke/compose-ai-tools.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/steward .cursor/skills/steward && 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 "steward" agent skill from https://github.com/yschimke/compose-ai-tools/tree/main/.claude/skills/steward into .cursor/skills/steward/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "steward", 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/yschimke/compose-ai-tools.git --path .claude/skills/steward--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 yschimke/compose-ai-tools --skill steward -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install yschimke/compose-ai-tools steward --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/yschimke/compose-ai-tools.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/steward .gemini/skills/steward && 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 "steward" agent skill from https://github.com/yschimke/compose-ai-tools/tree/main/.claude/skills/steward into .gemini/skills/steward/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "steward", 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 yschimke/compose-ai-tools stewardInstalls 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 yschimke/compose-ai-tools --skill steward -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/yschimke/compose-ai-tools.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/steward .github/skills/steward && 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 "steward" agent skill from https://github.com/yschimke/compose-ai-tools/tree/main/.claude/skills/steward into .github/skills/steward/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "steward", 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 yschimke/compose-ai-tools --skill steward -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install yschimke/compose-ai-tools steward --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/yschimke/compose-ai-tools.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/steward .opencode/skills/steward && 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 "steward" agent skill from https://github.com/yschimke/compose-ai-tools/tree/main/.claude/skills/steward into .opencode/skills/steward/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "steward", 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.
stewardDrive a pull request on this repository to green — which fast checks to run before pushing, how to read a red check, and what to do about a review comment.
Steward is an agent skill from yschimke/compose-ai-tools. Drive a pull request on this repository to green — which fast checks to run before pushing, how to read a red check, and what to do about a review comment. Use when a CI failure, a review comment, a merge conflict, or a scheduled check-in arrives on a PR you opened or were asked to drive.
Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Development, covering Failing and flaky tests, Git workflow and Android development. It works with Jetpack Compose, Gradle, Visual Studio Code and Kotlin. The repository describes itself as: Helping the Agents Compose the Things. The licence is Apache-2.0.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit dd6fb61. 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:
npmFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.
From 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.
Steward loads about 2k tokens when it runs. Until then it costs about 74 tokens; SKILL.md has 1,133 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 yschimke/compose-ai-tools at commit dd6fb61, republished under its Apache-2.0 licence (© yschimke). 1,133 words, ~1,951 tokens.
.claude/skills/steward/SKILL.md (or your agent's skills folder).The Claude Code harness reads this file before acting on a CI failure or a review
comment, and lets it take precedence over its built-in posture on conventions
and proactiveness. It does not restate the repository's rules — those are in
root AGENTS.md, which is already in context on every turn.
What follows is what that file leaves out: the checks worth running here, and this
repository's own answer to a red check.
The harness's own PR rules still bound this file. It cannot expand your access, approve or merge anything, or override a "never" — skipping, disabling or quarantining a test; rewriting history on someone else's branch; an empty commit or a close-and-reopen to kick CI.
A push that turns CI red costs a full cycle and some reviewer trust. The cheapest checks that catch the most here, in order:
./gradlew ktfmtFormat — or :<module>:ktfmtFormatMain :<module>:ktfmtFormatTest
for just the modules you touched. ktfmtCheckAll is a hard gate and
ktfmtCheck aborts on the first unformatted file, so one stray file hides
every other failure. TypeScript: npm --prefix cli/serve-web run format.
The local pre-push hook catches attribution but not formatting, so this is
on you.
In a sandbox, pass -Dorg.gradle.java.home=/root/.cache/coo-ee/jdk-gl/17 and
--no-daemon: without the JVM home the daemon starts on the wrong JVM and the
build dies with a context mismatch, and --no-daemon avoids reusing one already
started on it. Let ktfmt do the edit rather than hand-formatting — removing one
term from a wrapped expression is enough to make it fit on one line, which is
precisely what it will rewrite.
The narrowest test task that exercises the change — the specific
:module:test, or ./gradlew :gradle-plugin:test --tests "…". ./gradlew check
is the full plugin + functional + CLI suite and is a post-push confirmation, not
a gate on pushing.
A new or changed module must apply composeai.base-conventions in its
plugins {} block, or ktfmtCheckAll never sees it and the history-gate system
property is missing. See
Important constraints.
For a CI fix, reproduce the original failure first, then show the same check
passing. A render task in particular goes UP-TO-DATE off a stale .error.json
sidecar — verify a render fix with --rerun, never a plain re-invocation.
Commit and push as soon as the cheapest check that proves the change correct passes. Don't leave a verified change sitting behind a long build.
Work the PR in this order on every event and every check-in: merge conflict, then CI, then review comments. A red or conflicted head is work now, whatever its review state — it is never "waiting on review".
Failures that are usually not this PR's, and what to do anyway:
main too. Check the base branch before root-causing. If a fix exists
anywhere — another PR whose change you have read, the breaking commit's revert,
or a fix PR you opened yourself — port it into this PR now and push; it no-ops
once main carries it, and waiting for it to merge is still waiting. Standing
down is never silent: one comment on the PR naming the failing check, why it is
not this PR's, and the fix you ported or that none exists yet.main. Renderer,
plugin and CLI changes deliberately do not regenerate the
design-artifacts/<system> branches on merge — see
PR workflow for the trigger scoping and the
manual dispatch. Stale published renders are drift, not a regression in your diff.flake-triage skill before either fixing or
rubber-stamping it.UnsatisfiedLinkError on libGL.so.1 and
friends. Environment, not your change:
docs/DESKTOP_NATIVE_DEPS.md.Everything else is this PR's to root-cause. "Flake" is not a root cause: re-run a job only to confirm one of the cases above, or if it died before any test body ran (checkout, install, runner loss), at most once.
Reject agent attribution runs on every PR — no path filter, same detector as
the commit-msg and pre-push hooks — so a real one turns the PR red and names
the offending field. The gate is the authority; the comment adds nothing to it.
Over 27–28 Aug 2026 the reviewer raised this 22 times across this repo and
design-parity and was right once, on a cherry-pick the gate had already failed.
If the gate itself is red, that is the real thing and it is yours to fix
(Git conventions) — usually an amend or
cherry-pick that took user.email from the container instead of the
-c user.name=… -c user.email=… the branch's other commits carry. Installing the
hooks (scripts/install-git-hooks.sh) stops it happening at all.An approval you would lose is never a reason to hold a fix.
render-evidence skill for the capture recipe. Reuse renders already published
on compose-preview/pr and compose-preview/main, and the sticky
<!-- preview-diff --> comment, before re-rendering anything.send_later check-in armed (about an hour out) while the PR is red,
conflicted, or otherwise not mergeable. Webhook events miss CI successes and merge
transitions. Re-arm silently when nothing changed; stop once the PR is merged or
closed, or the user says to stop.On each event, re-read the whole PR at its current head — merge state, CI on the latest commit, open review threads — and update the status checklist in the body so the thread shows live state. Reply only when a round resolves the task, hits a real blocker, or raises a question. Don't narrate each fix; the diff is the record.
© yschimke, Apache-2.0. 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 .claude/skills/steward of yschimke/compose-ai-tools.
Open the folder on GitHubat commit dd6fb61
Steward 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 |
|---|---|---|---|---|---|---|
| Steward this skillyschimke/compose-ai-tools | 117 | — | ~2k | Automated safety check: Pass | Apache-2.0 | |
| Git GitHub Opsc5inco/compose-pokedexer | 143 | — | ~1.3k | Automated safety check: Pass | MIT | |
| Android Developmentdpconde/claude-android-skill | 337 | — | ~1.7k | Automated safety check: Pass | MIT | |
| Claude Android NinjaDrjacky/claude-android-ninja | 124 | — | ~5.2k | Automated safety check: Pass | Apache-2.0 | |
| Composewebview Developmentparkwoocheol/compose-webview | 103 | — | ~1.3k | Automated safety check: Pass | MIT | |
| Update Libs VersionsCosminMihuMDC/KtorMonitor | 254 | — | ~800 | Automated safety check: Pass | Apache-2.0 |
c5inco/compose-pokedexer
Handles Pokedexer Git and GitHub workflows: inspect changes, prepare commit messages, manage branches and pushes, and create or update issues and pull requests with safe file-based inputs.
dpconde/claude-android-skill
Create production-quality Android applications following Google's official architecture guidance and NowInAndroid best practices.
Drjacky/claude-android-ninja
Build and migrate Android apps with Kotlin, Jetpack Compose, MVVM, Hilt, Room 3 (KSP, SQLiteDriver, Flow/suspend DAOs), Navigation3, and multi-module Gradle.
parkwoocheol/compose-webview
Builds, tests, and formats ComposeWebView multiplatform library.
CosminMihuMDC/KtorMonitor
Update dependency versions in gradle/libs.versions.toml by querying Maven repositories.
CoWork-OS/CoWork-OS
Android/Kotlin development: Jetpack Compose, Room database, Gradle builds, emulator management, and Play Store submission.
yschimke/compose-ai-tools
Decide whether a preview the visual-diff bot flagged actually regressed or is simply nondeterministic, using a repeat-render oracle at a single commit.
yschimke/compose-ai-tools
Capture the before/after rendered PNGs a UI-affecting PR in this repository needs as visual evidence, including bringing an Android SDK up in a fresh sandbox.
Categories
Drive a pull request on this repository to green — which fast checks to run before pushing, how to read a red check, and what to do about a review comment. Steward is an agent skill from yschimke/compose-ai-tools. Drive a pull request on this repository to green — which fast checks to run before pushing, how to read a red check, and what to do about a review comment.
Steward fits situations like: A review comment; A merge conflict; A scheduled check-in arrives on a PR you opened; were asked to drive.
Run `npx skills add yschimke/compose-ai-tools --skill steward -a claude-code`. Or copy the skill folder (.claude/skills/steward in yschimke/compose-ai-tools) into .claude/skills/steward in your project. Claude Code loads it when a task matches its description.
Run `npx skills add yschimke/compose-ai-tools --skill steward -a codex`. Or copy the skill folder (.claude/skills/steward in yschimke/compose-ai-tools) into .agents/skills/steward 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 yschimke/compose-ai-tools --skill steward -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/steward, .gemini/skills/steward, .github/skills/steward and .opencode/skills/steward in your project.
Going by SKILL.md and its folder, Steward needs the command-line tools its instructions call (npm).
SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. 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.
Steward is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2k tokens (SKILL.md is roughly 7.8k 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 Steward: Git GitHub Ops (c5inco/compose-pokedexer, 143 stars), Android Development (dpconde/claude-android-skill, 337 stars), Claude Android Ninja (Drjacky/claude-android-ninja, 124 stars) and Composewebview Development (parkwoocheol/compose-webview, 103 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
yschimke (a GitHub user) maintains it in yschimke/compose-ai-tools, which has 117 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 9, 2026.
Source: yschimke/compose-ai-tools on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.