Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/vinilana/dotcontext/test-generationnpx skills add vinilana/dotcontext --skill test-generationgit clone --depth 1 https://github.com/vinilana/dotcontextWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00009 | $0.01711 |
| Opus 5 | $0.00005 | $0.00856 |
| Sonnet 5 | $0.00002 | $0.00342 |
| Haiku 4.5 | $0.00001 | $0.00171 |
Grade A, and why
Test Generation scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 248 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Test Generation
Generate and maintain tests for the @dotcontext/cli project using Jest with ts-jest.
When to Use
- Writing tests for new services, generators, or utilities
- Adding test coverage for MCP gateway handlers
- Creating integration tests for CLI commands
- Validating bug fixes with regression tests
- During Execution (E) and Validation (V) phases
Test Configuration
- Framework: Jest with ts-jest preset
- Config:
jest.config.jsat project root - Test location: Co-located with source files (
*.test.ts) or in__tests__/directories - Test match patterns:
**/__tests__/**/*.ts,**/?(*.)+(spec|test).ts - Root:
src/
# Run all tests
npm test
# Run specific test file
npx jest src/services/mcp/mcpServer.test.ts
# Run tests matching a pattern
npx jest --testPathPattern="mcp"
# Run with coverage
npx jest --coverage
Test Patterns by Layer
Service Tests
Services are the most common test target. Follow the pattern in current service and MCP tests:
import * as os from 'os';
import * as path from 'path';
import * as fs from 'fs-extra';
import { MyService } from './myService';
import type { CLIInterface } from '../../utils/cliUI';
import type { TranslateFn } from '../../utils/i18n';
// Create temp directory for isolation
let tempDir: string;
beforeEach(async () => {
tempDir = await fs.mkdtemp(path.join(os.tmpdir(), 'test-'));
});
afterEach(async () => {
await fs.remove(tempDir);
});
// Mock CLI interface
function createMockUI(): CLIInterface {
return {
displayWelcome: jest.fn(),
displayProjectInfo: jest.fn(),
displayStep: jest.fn(),
displaySuccess: jest.fn(),
displayWarning: jest.fn(),
displayError: jest.fn(),
// ... other CLIInterface methods
};
}
// Mock translate function
const mockT: TranslateFn = ((key: string) => key) as TranslateFn;
Key patterns:
- Temp directories: Always use
fs.mkdtemp()and clean up inafterEach - Mock CLIInterface: Provide a mock with
jest.fn()for each method - Mock TranslateFn: Simple passthrough
(key) => key - Mock tool or gateway boundaries: Use
jest.mock()at module level for filesystem, prompt loaders, or MCP helpers
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago First seen · 248 lines · 9 tokens per session scan A 34fa23285aa7
Test Generation is a skill published in the GitHub repository vinilana/dotcontext (561 stars, last pushed 1mo ago), licensed MIT. It adds 9 tokens to every session and 1,711 once invoked, about $0.0000 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
run-helix-tests
Submit and monitor .NET MAUI unit tests on Helix infrastructure. Supports running XAML, Resizetizer, Core, Essentials, and other unit test projects on distributed Helix queues.
write-tests
Write failing tests from requirements. Invoke for each todo before /implement.
dart-add-unit-test
Write and organize unit tests for functions, methods, and classes using package:test. Use when creating new logic or fixing bugs to ensure code remains correct and regression-free.
go-testing
Trigger: Go tests, go test coverage, Bubbletea teatest, golden files. Apply focused Go testing patterns.
dart-test
DART Test: unit tests, integration tests, CI validation, and debugging.
myco:runtime-bootstrap-and-test-isolation
Activate this skill when adding a new manager, adding a new tool category, writing or debugging tool unit tests, diagnosing tool-visibility failures, investigating startup performance, or extending/maintaining/debugging the two-tier tool discovery system (toolindex) — even if the user doesn't explicitly ask about the…