ai-system-testing
Test AI-powered features including LLM prompts, tool calls, nondeterministic outputs, evaluation frameworks, and hallucination risk assessment.
Skill by kindlmann
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/jaiminvadadoriya-ai-system-testing
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: backend, testing, ml, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/ai-system-testing
What's inside
- Skill name
ai-system-testing- Description
- Test AI-powered features including LLM prompts, tool calls, nondeterministic outputs, evaluation frameworks, and hallucination risk assessment. Covers prompt regression testing, response quality evaluation, tool call validation, and AI safety testing. Use when: "AI testing," "LLM testing," "prompt testing," "eval framework," "hallucination," "nondeterministic," "AI feature testing." Related: ai-test-generation, ai-qa-review, api-testing.
- License
- MIT
- Metadata
- author: kindlmann · version: 1.0 · category: knowledge
- Instructions
- 498 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
<objective>
AI-powered features are fundamentally different from deterministic software. The same input can produce different outputs, correctness is subjective, and failure modes include hallucination, harmful content, and subtle quality degradation. This skill covers how to test AI features rigorously despite these challenges.
</objective>
---
## Discovery Questions
Check `.agents/qa-project-context.md` first. If it exists, use it as context and skip questions already answered there.
**AI features under test:**
- What AI-powered features does the application have? (Chat, summarization, classification, code generation, recommendations, search)
- Which LLM provider is used? (OpenAI, Anthropic, Google, open-source models)
- Are prompts hardcoded, template-based, or dynamically constructed?
- Is RAG (retrieval-augmented generation) involved? What is the knowledge source?
**Determinism requirements:**
- Which outputs must be deterministic (classification, structured extraction) vs. creative (chat, summarization)?
- Is temperature fixed or variable? What temperature is used in production?
- Are outputs cached? For how long?
- Is there a fallback when the AI service is unavailable?
**Quality requirements:**
- How is output quality defined? (Accuracy, relevance, completeness, safety, tone)
- Who currently evaluates AI output quality? (Humans, automated metrics, nobody)
- Is there a golden dataset of expected inputs and acceptable outputs?
- What is the tolerance for incorrect or irrelevant responses?
**Safety requirements:**
- Does the AI handle user-generated input? (Prompt injection risk)
- Are there content policy requirements? (No harmful content, no PII generation)
- Is the AI used in regulated domains? (Healthcare, finance, legal)
- What happens when the AI produces harmful or incorrect output?
---
## Core Principles
### 1. Nondeterminism is inherent, not a bug
LLMs are stochastic systems. The same prompt can produce different outputs across runs. Testing must account for this by asserting on properties and boundaries rather than exact strings. If your test does `expect(output).toBe("The answer is 42")`, it will break on the next run when the model responds with "42 is the answer."
### 2. Test properties and boundaries, not exact outputs
Good AI test assertions check: Does the response contain the required information? Is it within the expected length range? Does it include no prohibited content? Does it match the expected format? Bad assertions check: Is the response identical to a saved snapshot?
### 3. Evals are the test suite for AI
Evaluation frameworks (evals) are the AI equivalent of a test suite. They define a set of inputs, run them through the system, and score the outputs against quality criteria. Invest in evals the same way you invest in test infrastructure.
### 4. Safety testing is non-negotiable
AI systems can produce harmful content, leak private data, or be manipulated through adversarial inputs. Safety tests are not optional features -- they are the equivalent of security tests for traditional software.
---
## Tooling
Pick the layer that fits the job. Don't reach for hand-rolled TS unless none of these match.
| Tool | Best for | Notes |
|------|----------|-------|
| **Promptfoo** | Prompt regression, A/B tests, redteam scans | Open-source CLI; YAML-defined eval suites; weekly redteam additions; MCP target support; ~0.121.x current. https://github.com/promptfoo/promptfoo |
| **DeepEval** | Pytest-style agent and LLM evals; agentic metrics | v3.9.9 added first-class TaskCompletion / ToolCorrectness / ArgumentCorrectness — exactly the "tool call validation" patterns this skill teaches. https://github.com/confident-ai/deepeval |
| **Ragas** | RAG-specific eval (faithfulness, context precision/recall, answer relevance) | v0.4.3 added DSPy-based prompt optimization for grounding metrics. https://github.com/explodinggradients/ragas |
| **TruLens** | Production tracing + RAG triad + non-LLM SchemaValidation | v2.8 (April 2026) added programmatic SchemaValidation feedback — cheaper and more deterministic than LLM-as-judge for structured outputs. https://github.com/truera/trulens |
| **Inspect AI** | Government-backed agent eval harness; 200+ pre-built evals | UK AI Security Institute. Date-based releases (`release/2025-11-28`). https://inspect.aisi.org.uk |
| **Garak** | Adversarial prompt scanner / red-team probes | v0.15.0 added GOAT (multi-turn jailbreaks), Agent Breaker (tool-aware), system-prompt-extraction, ModernBERT refusal detector. https://github.com/NVIDIA/garak |
| **PyRIT** | Microsoft AI Red Team's orchestration framework | v0.13.0 (April 2026) — orchestrated multi-turn attacks; complements Garak. https://pypi.org/project/pyrit/ |
| **Braintrust** | Commercial evals + prompt playground | Hosted, paid; SDK works alongside any of the above. |
**Public benchmarks** (HELM, LMSYS Chatbot Arena, Inspect AI's catalog) are for *model selection*, not for app regression testing — they don't know your domain. Use them when picking a base model; use the tools above for everything after.
### Tool-call validation with DeepEval (replaces hand-rolled assertions)
```python
# pip install deepeval
from deepeval import evaluate
from deepeval.metrics import TaskCompletionMetric, ToolCorrectnessMetric, ArgumentCorrectnessMetric
from deepeval.test_case import LLMTestCase, ToolCall
case = LLMTestCase(
input="What is the weather in Prague?",
actual_output="It is currently 18°C and partly cloudy.",
expected_tools=[ToolCall(name="get_weather", arguments={"city": "Prague"})],
tools_called=[ToolCall(name="get_weather", arguments={"city": "Prague"})],
)
evaluate(
test_cases=[case],
metrics=[TaskCompletionMetric(threshold=0.7), ToolCorrectnessMetric(), ArgumentCorrectnessMetric()],
)
```
For prompt regression at the suite level, Promptfoo's YAML config is the lowest-friction entry point:
```yaml
# promptfooconfig.yaml
prompts: [file://prompts/summarize.txt]
providers:
- openai:gpt-4o
- anthropic:claude-sonnet-4-6
tests:
- vars: { document: "..." }
assert:
- type: contains-all
value: ["actionable insight", "key finding"]
- type: llm-rubric
value: "Output is 3 sentences or fewer and contains no opinions"
```
For red-team / safety, run `garak --model_type openai --probes encoding.InjectAscii85,goat,system_prompt_extraction` against your deployed prompt before launch.
---
## Prompt Regression Testing
### Version prompts like codeFrom JaiminVadadoriya/Distributed-Cloud-Storage---Sync-Platform, MIT.
More from JaiminVadadoriya/Distributed-Cloud-Storage---Sync-Platform
- 0.502score
ci-cd-integration
kindlmann
Design CI/CD pipelines for test execution.
SkillCFreshness: C★ 1Claude Code +9 - 0.502score
ai-bug-triage
kindlmann
Hybrid fingerprint + LLM pipeline for bug classification, deduplication, and ticket generation.
SkillCFreshness: C★ 1Claude Code +9 - 0.502score
ai-test-generation
kindlmann
Staged pipeline for AI-assisted test generation: requirements extraction → risk analysis → coverage matrix → scenario generation → oracle design → test code →…
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
accessibility-testing
kindlmann
Test for WCAG 2.2 compliance using axe-core with Playwright, keyboard navigation audits, screen reader testing, ARIA pattern validation, and legal compliance…
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
api-testing
kindlmann
Test REST and GraphQL APIs with Playwright APIRequestContext, Supertest, or standalone HTTP clients.
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
ai-qa-review
kindlmann
QA-focused code review for test quality.
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
chaos-engineering
kindlmann
Validate system resilience through controlled fault injection.
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
cypress-automation
kindlmann
Build Cypress test suites with component testing, E2E testing, custom commands, cy.intercept for network control, Cypress Cloud integration, and TypeScript…
SkillCFreshness: C★ 1Claude Code +9 - 0.488score
coverage-analysis
kindlmann
Measure and improve test coverage meaningfully.
SkillCFreshness: C★ 1Claude Code +9 - 0.488score
compliance-testing
kindlmann
Test for regulatory compliance including GDPR/CMP consent verification, Better Ads Standards, cookie compliance auditing, and privacy policy validation.
SkillCFreshness: C★ 1Claude Code +9 - 0.488score
database-testing
kindlmann
Validate database integrity, test migrations forward and backward, verify schema constraints, manage seed data, and identify query performance issues.
SkillCFreshness: C★ 1Claude Code +9 - 0.488score
cross-browser-testing
kindlmann
Design analytics-driven browser test matrices and execute cross-browser tests.
SkillCFreshness: C★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- May 30, 2026 (5 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 1.0
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from kindlmann
- 0.570score
coverage-analysis
kindlmann
Measure and improve test coverage meaningfully.
SkillAFreshness: AClaude Code +9 - 0.570score
ai-qa-review
kindlmann
Review EXISTING test code for quality, smells, and testability issues.
SkillAFreshness: AClaude Code +9 - 0.570score
release-readiness
kindlmann
Validate release readiness with evidence-based go/no-go decisions.
SkillAFreshness: AClaude Code +9 - 0.570score
risk-based-testing
kindlmann
Produce a risk matrix or heatmap that quantifies what could break by business impact × probability, runs failure mode analysis on the top items, and maps test…
SkillAFreshness: AClaude Code +9 - 0.570score
qa-project-context
kindlmann
Create and fill .agents/qa-project-context.md with the project's tech stack, test frameworks, CI/CD pipeline, environments, quality goals, risk areas, team…
SkillAFreshness: AClaude Code +9 - 0.502score
ai-test-generation
kindlmann
Staged pipeline for AI-assisted test generation: requirements extraction → risk analysis → coverage matrix → scenario generation → oracle design → test code →…
SkillCFreshness: C★ 1Claude Code +9
Cite this page
ai-system-testing skill. Agent Mart. https://agentmart.dev/skills/jaiminvadadoriya-ai-system-testing (last updated 2026-10-24)