New Event Source
aws/aws-lambda-dotnet
Add a new AWS event source attribute (e.g., Kinesis, Kafka, MQ) to the Lambda .NET Annotations framework, including the attribute class, source generator integration, CloudFormation writer, unit…
Run the New Relic .NET agent integration tests locally. An agent skill from newrelic/newrelic-dotnet-agent.
$ npx skills add newrelic/newrelic-dotnet-agent --skill run-integration-tests -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install newrelic/newrelic-dotnet-agent run-integration-tests --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/newrelic/newrelic-dotnet-agent.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/run-integration-tests .claude/skills/run-integration-tests && 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 "run-integration-tests" agent skill from https://github.com/newrelic/newrelic-dotnet-agent/tree/main/.claude/skills/run-integration-tests into .claude/skills/run-integration-tests/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-integration-tests", 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/newrelic/newrelic-dotnet-agent/tree/main/.claude/skills/run-integration-testsType 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 newrelic/newrelic-dotnet-agent --skill run-integration-tests -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install newrelic/newrelic-dotnet-agent run-integration-tests --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/newrelic/newrelic-dotnet-agent.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/run-integration-tests .agents/skills/run-integration-tests && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "run-integration-tests" agent skill from https://github.com/newrelic/newrelic-dotnet-agent/tree/main/.claude/skills/run-integration-tests into .agents/skills/run-integration-tests/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-integration-tests", 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 newrelic/newrelic-dotnet-agent --skill run-integration-tests -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install newrelic/newrelic-dotnet-agent run-integration-tests --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/newrelic/newrelic-dotnet-agent.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/run-integration-tests .cursor/skills/run-integration-tests && 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 "run-integration-tests" agent skill from https://github.com/newrelic/newrelic-dotnet-agent/tree/main/.claude/skills/run-integration-tests into .cursor/skills/run-integration-tests/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-integration-tests", 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/newrelic/newrelic-dotnet-agent.git --path .claude/skills/run-integration-tests--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 newrelic/newrelic-dotnet-agent --skill run-integration-tests -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install newrelic/newrelic-dotnet-agent run-integration-tests --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/newrelic/newrelic-dotnet-agent.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/run-integration-tests .gemini/skills/run-integration-tests && 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 "run-integration-tests" agent skill from https://github.com/newrelic/newrelic-dotnet-agent/tree/main/.claude/skills/run-integration-tests into .gemini/skills/run-integration-tests/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-integration-tests", 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 newrelic/newrelic-dotnet-agent run-integration-testsInstalls 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 newrelic/newrelic-dotnet-agent --skill run-integration-tests -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/newrelic/newrelic-dotnet-agent.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/run-integration-tests .github/skills/run-integration-tests && 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 "run-integration-tests" agent skill from https://github.com/newrelic/newrelic-dotnet-agent/tree/main/.claude/skills/run-integration-tests into .github/skills/run-integration-tests/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-integration-tests", 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 newrelic/newrelic-dotnet-agent --skill run-integration-tests -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install newrelic/newrelic-dotnet-agent run-integration-tests --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/newrelic/newrelic-dotnet-agent.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/run-integration-tests .opencode/skills/run-integration-tests && 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 "run-integration-tests" agent skill from https://github.com/newrelic/newrelic-dotnet-agent/tree/main/.claude/skills/run-integration-tests into .opencode/skills/run-integration-tests/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-integration-tests", 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.
run-integration-testsRun the New Relic .NET agent integration tests locally. An agent skill from newrelic/newrelic-dotnet-agent.
Run Integration Tests is an agent skill from newrelic/newrelic-dotnet-agent. Run the New Relic .NET agent integration tests locally. Use whenever you need to run, debug, or reproduce an integration test (host-run IntegrationTests, UnboundedIntegrationTests, or ContainerIntegrationTests), are verifying an agent/wrapper change end to end, or find yourself reaching for dotnet test against a test project in this repo. You run these from the CLI yourself -- secrets and infra are already in place. Covers the build-first prerequisite, picking the layer, the run command per layer, and the env…
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 Testing & QA, covering Integration testing. It works with New Relic and .NET. The repository describes itself as: The New Relic .NET language agent. The licence is Apache-2.0.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit aca7658. 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:
dotnetdockerFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use docker, 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.
Run Integration Tests loads about 2k tokens when it runs. Until then it costs about 143 tokens; SKILL.md has 728 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 newrelic/newrelic-dotnet-agent at commit aca7658, republished under its Apache-2.0 licence (© newrelic). 728 words, ~1,966 tokens.
.claude/skills/run-integration-tests/SKILL.md (or your agent's skills folder).Start a real app with the agent attached, exercise it, wait for a harvest, assert on the parsed agent log. Flow: build agent (if changed) -> build test solution (if changed) -> run via the layer's runner -> read results.
a. Agent -- only if agent/wrapper code changed. Tests read built home dirs src/Agent/newrelichome_*, not source; stale home = #1 false failure. Build FullAgent.sln (see build-dotnet-agent). Already current for this branch? Skip.
b. Test solution -- once, only if test/app/agent code changed since the last test-solution build. One build serves all later runs; never rebuild between tests. Building the .sln builds the test project, shared MultiFunctionApplicationHelpers, and every launched app (the test .csproj doesn't reference the apps, but the solution includes all Applications/* + SharedApplications/ConsoleMultiFunctionApplication{FW,Core}) -- so never build an app by hand. App sourcing at test time: web apps copied from a Deploy/ folder; FW console from bin/<Config>/<tfm>; Core console dotnet published from source (always current).
Use full VS MSBuild.exe (not dotnet build -- legacy non-SDK web projects have WebPublish targets the SDK MSBuild can't build), Debug (fixture looks for apps under Debug). These flags mirror CI (all_solutions.yml) and are the only proven-good set: -p:DeployOnBuild=true -p:PublishProfile=LocalDeploy drives the web publish, and no -t:Build (the web csproj's <Target Name="Deploy" AfterTargets="Build"> re-invokes WebPublish; -t:Build -> error MSB4006: circular dependency ... "Deploy"). Slow -- background/tee. Swap the .sln per layer.
MSBUILD=$(build/Tools/vswhere.exe -latest -prerelease -products '*' \
-requires Microsoft.Component.MSBuild Microsoft.NetCore.Component.SDK \
-find 'MSBuild\**\Bin\MSBuild.exe' | tr -d '\r' | head -1)
"$MSBUILD" tests/Agent/IntegrationTests/IntegrationTests.sln \
-restore -m -p:Configuration=Debug -p:DeployOnBuild=true -p:PublishProfile=LocalDeploy| Layer | Solution / test project | Notes |
|---|---|---|
| Host-run (default) | IntegrationTests.sln / IntegrationTests.csproj | Windows + home dirs; real NR staging collectors. FW web-app tests (RemoteWebApplication/HostedWebCore) need an elevated (Administrator) terminal; console (ConsoleDynamicMethodFixture) tests don't. |
| Unbounded | UnboundedIntegrationTests.sln / .csproj | Real DBs/brokers (MySQL, Postgres, SQL Server, Mongo, Redis, RabbitMQ, Kafka, Elasticsearch, Couchbase...). |
| Container | ContainerIntegrationTests.sln / .csproj | Docker Desktop; Linux-agent coverage. Runner differs -- section 3. |
| Performance | PerformanceTests.sln | run-perf-test.py, not dotnet test. Out of scope. |
Host-run answers most things. Secrets auto (user secrets on Shared.csproj, already set). Unbounded infra is always up (restart: unless_stopped) -- no docker compose up; check UnboundedServices only on a connection failure.
xUnit v3 projects (OutputType Exe, Microsoft.Testing.Platform).
Host-run / Unbounded: run the built exe <testproj>/bin/Debug/net10.0/NewRelic.Agent.<layer>.exe (as CI/VS do). Not dotnet test -- the VSTest bridge is ~3x slower (measured 7 ASB classes: ~5.7 min exe vs ~17 min dotnet test). Filters (native xUnit v3; cross-type AND; * at start/end): -namespace "<FQN>", -class "*Suffix"/"FQCN", -method "FQN.Method". Dry-run -list classes (/json to parse) before a slow run. One invocation spans everything in one assembly. Default -parallel collections, but effective concurrency ~2 -- fixtures serialize per-app publish/tool-install behind a lock (DotnetTool/RemoteApplication); don't force wider.
Run in a sub-agent (Sonnet; Haiku for one test) returning only: TEST EXECUTION SUMMARY (Total/Failed/Skipped), failing names + asserts, NR-ERROR/NR-FATAL. Never raw read/tail/wide-grep the agent log -- counts, capped width, /tmp distill.
cd tests/Agent/IntegrationTests/UnboundedIntegrationTests/bin/Debug/net10.0
EXE=./NewRelic.Agent.UnboundedIntegrationTests.exe
"$EXE" -namespace "NewRelic.Agent.UnboundedIntegrationTests.AzureServiceBus" -class "*CoreLatest" \
-trx "C:/IntegrationTestWorkingDirectory/TestResults/asb.trx" > /tmp/asb.log 2>&1Exe prints === TEST EXECUTION SUMMARY === (Total/Errors/Failed/Skipped/Time); -trx writes a TRX; the agent-log temp path is printed in output.
Container: use dotnet test (runner is noise -- docker build + harvest waits dominate; ~2m16s dotnet test vs ~2m46s exe, same test). Multi-targets net10.0/net11.0 so pass --framework; filter by [Trait] like linux_container_tests.yml. Needs Docker Desktop + Linux home src/Agent/newrelichome_x64_coreclr_linux (libNewRelicProfiler.so); x64 needs no emulation, arm64 needs QEMU.
dotnet test tests/Agent/IntegrationTests/ContainerIntegrationTests/ContainerIntegrationTests.csproj \
--framework net10.0 --no-build --filter "Architecture=amd64&Distro=Ubuntu"
# ... --filter "FullyQualifiedName~UbuntuX64ContainerTest" # one classNEW_RELIC_LOG_DIRECTORY/NEW_RELIC_LOG_LEVEL are inherited from the user's env -- don't set/override. Change agent behavior via NewRelicConfigModifier/WebConfigModifier/fixture.SetEnvironmentVariable, never ad-hoc XML.
FullAgent.sln fresh (if agent changed) + test solution built Debug with no app erroring out. (A stale bin/Release/<tfm>/<rid>/publish from NR_DOTNET_TEST_PREBUILT_APPS=1 can mask source changes -- delete it.)AzureFunction namespace: Core Tools must be >= 4.13.0. Symptom: Timed out waiting for Azure function host to become ready, and the captured func stdout carries Error configuring services in an external startup class ... Could not load file or assembly 'Microsoft.Extensions.Options, Version=10.0.0.0'. Cause: the isolated AzureFunctionApplication extension bundle resolves Microsoft.Extensions.* 10.0.x (Worker.Extensions.Storage.Queues -> WebJobs.Extensions.Storage.Queues 5.3.8 -> Microsoft.Extensions.Hosting >= 10.0.3) and does not ship those assemblies; the host supplies them. Core Tools retargeted to .NET 10 in 4.13.0 (2026-08-10) -- older hosts are net8.0 and ship 8.0.0.0. Verify with func.runtimeconfig.json ("tfm": "net10.0"); winget lags the GitHub release. Select a specific build with azure_func_exe_path=<...>\func.exe (CI sets it to the choco path). In-proc classes are unaffected: AzureFunctionInProcApplication references the WebJobs extensions directly and builds no bundle.NR-ERROR/NR-FATAL, distilled. 7. App stdout/stderr.Container: Docker up with resources, image built, container stayed up, host<->container reachable.
© newrelic, 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/run-integration-tests of newrelic/newrelic-dotnet-agent.
Open the folder on GitHubat commit aca7658
Run Integration Tests 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 |
|---|---|---|---|---|---|---|
| Run Integration Tests this skillnewrelic/newrelic-dotnet-agent | 117 | — | ~2k | Automated safety check: Pass | Apache-2.0 | |
| New Event Sourceaws/aws-lambda-dotnet | 1.7k | — | ~3k | Automated safety check: Pass | Apache-2.0 | |
| Aspire Integration TestingDevBetterCom/DevBetterWeb | 157 | 2 repos | ~2.3k | Automated safety check: Pass | None | |
| Akka.NET Testing PatternsAaronontheweb/dotnet-skills | 1.2k | 1 repos | ~2.4k | Automated safety check: Pass | MIT | |
| Testcontainers Guide Migratordocker/docs | 4.7k | — | ~5k | Automated safety check: Pass | Apache-2.0 | |
| Run Testsrunceel/ReactiveProperty | 944 | — | ~3.6k | Automated safety check: Pass | MIT |
aws/aws-lambda-dotnet
Add a new AWS event source attribute (e.g., Kinesis, Kafka, MQ) to the Lambda .NET Annotations framework, including the attribute class, source generator integration, CloudFormation writer, unit…
DevBetterCom/DevBetterWeb
Write integration tests using .NET Aspire's testing facilities with xUnit.
Aaronontheweb/dotnet-skills
Shows how to test Akka.NET actors with Akka.Hosting.TestKit: swapping services for fakes, using TestProbes, and checking persistence, plus when the older TestKit still fits.
docker/docs
Migrate a Testcontainers guide from testcontainers.com into the Docker docs site (docs.docker.com).
runceel/ReactiveProperty
Runs .NET tests with dotnet test. An agent skill from runceel/ReactiveProperty.
dotnet/maui
Builds and packs .NET MAUI, installs the local workloads and runs integration tests for templates, samples and end-to-end scenarios by category.
newrelic/newrelic-dotnet-agent
Parse and diagnose New Relic .NET agent logs (newrelicagent.log) and profiler logs (NewRelic.Profiler.<pid.log) from a support ticket.
newrelic/newrelic-dotnet-agent
Open an Angler PR that adds the latest .NET agent release to metricnames.txt.
newrelic/newrelic-dotnet-agent
Build the New Relic .NET agent locally and validate that code changes compile.
newrelic/newrelic-dotnet-agent
A skill your agent uses when the user mentions a Dotty PR, dotty (package/dependency) updates, or asks to update the .NET agent compatibility docs / net-agent-compatibility-requirements after tested…
newrelic/newrelic-dotnet-agent
Mandatory unit-test and code-coverage rules for the .NET agent.
newrelic/newrelic-dotnet-agent
A skill your agent uses when a CI integration, unbounded, or container test job fails intermittently, passes on a rerun, fails identically across every matrix variant, or shows an infra-shaped error…
Categories
Run the New Relic .NET agent integration tests locally. An agent skill from newrelic/newrelic-dotnet-agent. Run Integration Tests is an agent skill from newrelic/newrelic-dotnet-agent.NET agent integration tests locally.
Run Integration Tests fits situations like: you need to run; reproduce an integration test (host-run IntegrationTests; unboundedIntegrationTests; containerIntegrationTests).
Run `npx skills add newrelic/newrelic-dotnet-agent --skill run-integration-tests -a claude-code`. Or copy the skill folder (.claude/skills/run-integration-tests in newrelic/newrelic-dotnet-agent) into .claude/skills/run-integration-tests in your project. Claude Code loads it when a task matches its description.
Run `npx skills add newrelic/newrelic-dotnet-agent --skill run-integration-tests -a codex`. Or copy the skill folder (.claude/skills/run-integration-tests in newrelic/newrelic-dotnet-agent) into .agents/skills/run-integration-tests 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 newrelic/newrelic-dotnet-agent --skill run-integration-tests -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/run-integration-tests, .gemini/skills/run-integration-tests, .github/skills/run-integration-tests and .opencode/skills/run-integration-tests in your project.
Going by SKILL.md and its folder, Run Integration Tests needs the command-line tools its instructions call (dotnet and docker). Our summary lists: Docker.
SKILL.md contains no URLs. Its commands use docker, 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.
Run Integration Tests 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.9k 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 Run Integration Tests: New Event Source (aws/aws-lambda-dotnet, 1.7k stars), Aspire Integration Testing (DevBetterCom/DevBetterWeb, 157 stars), Akka.NET Testing Patterns (Aaronontheweb/dotnet-skills, 1.2k stars) and Testcontainers Guide Migrator (docker/docs, 4.7k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
newrelic (a GitHub organization) maintains it in newrelic/newrelic-dotnet-agent, which has 117 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 8, 2026.
Source: newrelic/newrelic-dotnet-agent on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.