Requirements
rizsotto/Bear
Write, modify, or review a requirement file under docs/requirements -- pick the single owning file, keep the text contract-only, name IDs so they need no explanation, and verify cross-references and…
Coverage-improvement workflow for Raven tests through cleanup.
$ npx skills add marinasundstrom/raven --skill raven-test-cleanup -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install marinasundstrom/raven raven-test-cleanup --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/marinasundstrom/raven.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/raven-test-cleanup .claude/skills/raven-test-cleanup && 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 "raven-test-cleanup" agent skill from https://github.com/marinasundstrom/raven/tree/main/.agents/skills/raven-test-cleanup into .claude/skills/raven-test-cleanup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "raven-test-cleanup", 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/marinasundstrom/raven/tree/main/.agents/skills/raven-test-cleanupType 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 marinasundstrom/raven --skill raven-test-cleanup -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install marinasundstrom/raven raven-test-cleanup --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/marinasundstrom/raven.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/raven-test-cleanup .agents/skills/raven-test-cleanup && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "raven-test-cleanup" agent skill from https://github.com/marinasundstrom/raven/tree/main/.agents/skills/raven-test-cleanup into .agents/skills/raven-test-cleanup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "raven-test-cleanup", 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 marinasundstrom/raven --skill raven-test-cleanup -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install marinasundstrom/raven raven-test-cleanup --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/marinasundstrom/raven.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/raven-test-cleanup .cursor/skills/raven-test-cleanup && 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 "raven-test-cleanup" agent skill from https://github.com/marinasundstrom/raven/tree/main/.agents/skills/raven-test-cleanup into .cursor/skills/raven-test-cleanup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "raven-test-cleanup", 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/marinasundstrom/raven.git --path .agents/skills/raven-test-cleanup--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 marinasundstrom/raven --skill raven-test-cleanup -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install marinasundstrom/raven raven-test-cleanup --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/marinasundstrom/raven.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/raven-test-cleanup .gemini/skills/raven-test-cleanup && 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 "raven-test-cleanup" agent skill from https://github.com/marinasundstrom/raven/tree/main/.agents/skills/raven-test-cleanup into .gemini/skills/raven-test-cleanup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "raven-test-cleanup", 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 marinasundstrom/raven raven-test-cleanupInstalls 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 marinasundstrom/raven --skill raven-test-cleanup -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/marinasundstrom/raven.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/raven-test-cleanup .github/skills/raven-test-cleanup && 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 "raven-test-cleanup" agent skill from https://github.com/marinasundstrom/raven/tree/main/.agents/skills/raven-test-cleanup into .github/skills/raven-test-cleanup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "raven-test-cleanup", 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 marinasundstrom/raven --skill raven-test-cleanup -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install marinasundstrom/raven raven-test-cleanup --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/marinasundstrom/raven.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/raven-test-cleanup .opencode/skills/raven-test-cleanup && 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 "raven-test-cleanup" agent skill from https://github.com/marinasundstrom/raven/tree/main/.agents/skills/raven-test-cleanup into .opencode/skills/raven-test-cleanup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "raven-test-cleanup", 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.
raven-test-cleanupCoverage-improvement workflow for Raven tests through cleanup.
Raven Test Cleanup is an agent skill from marinasundstrom/raven. Coverage-improvement workflow for Raven tests through cleanup. Use when increasing meaningful test coverage by reviewing, rewriting, repurposing, adding, deleting, or reorganizing stale tests after syntax or semantic behavior changed; when separating runtime/reflection-heavy coverage; or when proposing maintainability improvements by feature area and related behavior.
Its SKILL.md is about 2.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 Testing & QA, covering Test coverage and Content repurposing. The repository describes itself as: Raven is a pragmatic, typed, general-purpose programming language for .NET. The licence is MIT.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 562a449. 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:
dotnetFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
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.
Raven Test Cleanup loads about 2.2k tokens when it runs. Until then it costs about 97 tokens; SKILL.md has 1,108 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 marinasundstrom/raven at commit 562a449, republished under its MIT licence (© marinasundstrom). 1,108 words, ~2,166 tokens.
.claude/skills/raven-test-cleanup/SKILL.md (or your agent's skills folder).Use this skill when the task is primarily about increasing meaningful coverage in the Raven test suite. Cleanup is the mechanism: make tests match current language and compiler behavior, add focused coverage where behavior is missing, remove or replace stale coverage, run the relevant tests, and leave the affected test set passing.
For large cleanup or coverage-improvement efforts, use a planned task sequence: define the current behavior slice, keep one step active, verify it before moving on, and re-evaluate the next slice after each result. Tell the user what the next step is after each verified slice. Prefer narrow coverage at the owning compiler/API layer before broad suite rewrites or sample-level validation.
scripts/test-baseline.sh.docs/lang/spec/ first. Use docs/lang/proposals/ and old investigations only as historical context.Use WarningLevel=0 for ad hoc test runs.
Use test/Raven.CodeAnalysis.Tests/README.md as the test-suite ledger and impact map. It should help feature work, bug fixes, and cleanup passes quickly identify which area suites may be affected before broad baseline/runtime gates are run. When you change suite organization, isolate or exclude runtime/reflection-heavy tests, add skips, or discover incomplete behavior that is not fixed in the same pass, update that README with the tier, affected area, command, and follow-up expectation.
When the tests touch a specialized area, also apply the relevant Raven skill:
raven-feature-workflow for syntax, semantics, lowering, operations, codegen, language feature behavior, docs, or changelog updatesraven-debug-compiler for parser, binder, semantic model, lowering, emit, or runtime investigationraven-test-triage for broad test failures, stabilization, baselines, and regression lockingraven-lsp-debug for hover, completion, diagnostics, semantic tokens, inlays, document symbols, request scheduling, or other language-server/editor behaviorUse the cleanup skill to increase useful coverage by deciding whether tests are stale, missing, duplicated, misplaced, or poorly asserted. Use the related skill for the domain-specific workflow and validation expectations.
Classify each stale or suspicious test before editing it:
Prefer fixing clearly wrong compiler behavior over preserving stale expectations in tests.
When adding coverage, keep it focused on the missing behavior and place it with the feature area or compiler API surface that owns the behavior. Do not compensate for vague stale tests by adding large overlapping suites.
Prefer stable, feature-level assertions:
Avoid stable tests that assert emitted opcodes, exact lowered instruction sequences, incidental diagnostic ordering, or private implementation details. If instruction-level checks are temporarily useful during development, keep them under test/Raven.CodeAnalysis.Tests/CodeGen/Development.
Reorganize tests around the behavior a maintainer would look for:
When moving tests, preserve useful names and update namespaces to match the destination structure. Consolidate repeated setup only when it reduces real duplication without hiding the scenario under test.
Keep test/Raven.CodeAnalysis.Tests/README.md aligned with the organization: document which command owns each tier, which feature suite to run for each area, what neighboring behavior a feature or bug fix may impact, and which known gaps are intentionally outside the default baseline.
Keep runtime, emit, execution, and reflection-heavy tests separate from normal cleanup and baseline work.
scripts/test-baseline.sh.scripts/test-runtime-isolated.sh when the change affects emit, runtime execution, metadata loading, or reflection.When a cleanup uncovers broader structure issues, propose concrete follow-up changes:
docs/lang/spec/docs/ but is missing, stale, or only implied by teststest/Raven.CodeAnalysis.Tests/README.md so later cleanup work starts from the current tiering, skip, and gap inventoryKeep the proposal close to the touched area unless the user asked for a full test-suite redesign.
Try to resolve stale tests independently by reducing examples, reading the spec, and checking nearby tests. Stop and ask for input only when the intended language behavior is genuinely unclear, the spec is contradictory, or deleting/rewriting coverage would erase a product decision rather than stale scaffolding.
scripts/test-runtime-isolated.sh for runtime, emit, execution, metadata loading, or reflection-heavy coverage.dotnet format whitespace ... --include ... --no-restore.
Use dotnet format style or dotnet format analyzers only when intentionally applying those fixes; analyzer/style formatters can rewrite code beyond whitespace.© marinasundstrom, 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 .agents/skills/raven-test-cleanup of marinasundstrom/raven.
Open the folder on GitHubat commit 562a449
Raven Test Cleanup 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 |
|---|---|---|---|---|---|---|
| Raven Test Cleanup this skillmarinasundstrom/raven | 108 | — | ~2.2k | Automated safety check: Pass | MIT | |
| Requirementsrizsotto/Bear | 6.5k | — | ~2k | Automated safety check: Pass | GPL-3.0 | |
| Crap Analysisardalis/RiverBooks | 135 | 2 repos | ~3.4k | Automated safety check: Pass | None | |
| Bmad Testarch Automatechenjackle45/SayIt | 115 | 2 repos | ~867 | Automated safety check: Pass | MIT | |
| Code Coverages3s-project/s3s | 311 | — | ~789 | Automated safety check: Pass | Apache-2.0 | |
| Project Statusbactopia/bactopia | 522 | — | ~787 | Automated safety check: Pass | MIT |
rizsotto/Bear
Write, modify, or review a requirement file under docs/requirements -- pick the single owning file, keep the text contract-only, name IDs so they need no explanation, and verify cross-references and…
ardalis/RiverBooks
Analyze code coverage and CRAP (Change Risk Anti-Patterns) scores to identify high-risk code.
chenjackle45/SayIt
Expand test automation coverage for codebase. An agent skill from chenjackle45/SayIt.
s3s-project/s3s
Measure and grow the line coverage of the s3s crate. An agent skill from s3s-project/s3s.
bactopia/bactopia
Show a live snapshot of the Bactopia project state — component counts, GroovyDoc coverage, nf-test coverage, and structural issues.
ldayton/Dippy
Ensure comprehensive test coverage for a CLI handler. An agent skill from ldayton/Dippy.
marinasundstrom/raven
Debug workflow for Raven compiler analysis and emission issues using rvn frontend tooling and the rvnc compiler driver.
marinasundstrom/raven
Troubleshooting workflow for Raven language service and editor failures.
marinasundstrom/raven
Testing and stabilization workflow for the Raven compiler test suite.
marinasundstrom/raven
End-to-end workflow for Raven language and compiler feature work.
Categories
Coverage-improvement workflow for Raven tests through cleanup. Raven Test Cleanup is an agent skill from marinasundstrom/raven. Coverage-improvement workflow for Raven tests through cleanup.
Raven Test Cleanup fits situations like: increasing meaningful test coverage by reviewing; reorganizing stale tests after syntax; semantic behavior changed; separating runtime/reflection-heavy coverage.
Run `npx skills add marinasundstrom/raven --skill raven-test-cleanup -a claude-code`. Or copy the skill folder (.agents/skills/raven-test-cleanup in marinasundstrom/raven) into .claude/skills/raven-test-cleanup in your project. Claude Code loads it when a task matches its description.
Run `npx skills add marinasundstrom/raven --skill raven-test-cleanup -a codex`. Or copy the skill folder (.agents/skills/raven-test-cleanup in marinasundstrom/raven) into .agents/skills/raven-test-cleanup 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 marinasundstrom/raven --skill raven-test-cleanup -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/raven-test-cleanup, .gemini/skills/raven-test-cleanup, .github/skills/raven-test-cleanup and .opencode/skills/raven-test-cleanup in your project.
Going by SKILL.md and its folder, Raven Test Cleanup needs the command-line tools its instructions call (dotnet).
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. 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.
Raven Test Cleanup 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.2k tokens (SKILL.md is roughly 8.7k 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 Raven Test Cleanup: Requirements (rizsotto/Bear, 6.5k stars), Crap Analysis (ardalis/RiverBooks, 135 stars), Bmad Testarch Automate (chenjackle45/SayIt, 115 stars) and Code Coverage (s3s-project/s3s, 311 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
marinasundstrom (a GitHub user) maintains it in marinasundstrom/raven, which has 108 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on October 10, 2026.
Source: marinasundstrom/raven on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.