Set up E2E test harness for CLI applications with process spawning and assertions.
Scanned 9/2/2026
Install to Claude Code
npx -y skills add a5c-ai/babysitter --skill cli-e2e-test-harness --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Cli E2e Test Harness?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/a5c-ai-cli-e2e-test-harness-babysitter)More formats (shields.io, HTML) on the badges page.
---
name: cli-e2e-test-harness
description: Set up E2E test harness for CLI applications with process spawning and assertions.
allowed-tools: Read, Write, Edit, Bash, Glob, Grep
graph:
domains: [domain:software-engineering]
specializations: [specialization:cli-mcp-development]
skillAreas: [skill-area:cli-design, skill-area:e2e-testing]
roles: [role:backend-engineer, role:platform-engineer]
workflows: [workflow:feature-development]
topics: [topic:developer-experience]
---
# CLI E2E Test Harness
Set up E2E test harness for CLI applications.
## Generated Patterns
```typescript
import { spawn, SpawnOptions } from 'child_process';
interface CLIResult {
stdout: string;
stderr: string;
exitCode: number | null;
}
export async function runCLI(args: string[], options?: SpawnOptions): Promise<CLIResult> {
return new Promise((resolve) => {
const proc = spawn('node', ['./dist/index.js', ...args], {
env: { ...process.env, NO_COLOR: '1' },
...options,
});
let stdout = '';
let stderr = '';
proc.stdout?.on('data', (data) => { stdout += data; });
proc.stderr?.on('data', (data) => { stderr += data; });
proc.on('close', (exitCode) => {
resolve({ stdout, stderr, exitCode });
});
});
}
export function expectOutput(result: CLIResult) {
return {
toContain: (text: string) => expect(result.stdout).toContain(text),
toMatchSnapshot: () => expect(result.stdout).toMatchSnapshot(),
toExitWith: (code: number) => expect(result.exitCode).toBe(code),
};
}
```
## Target Processes
- cli-unit-integration-testing
- mcp-server-testing-suite
Is this your skill, or is something wrong with this listing? . Author removals are honored within 72 hours.
No comments yet. Be the first to comment!