Agent skill
test-scaffolding
Generate test file scaffolds from source analysis with language-appropriate templates.
Install this agent skill to your Project
npx add-skill https://github.com/aiskillstore/marketplace/tree/main/skills/consiliency/test-scaffolding
SKILL.md
Test Scaffolding Skill
Generate test file scaffolds for source files, enabling TDD workflows. Scaffolds contain TODO stubs that the test-engineer agent fills during lane execution.
Variables
| Variable | Default | Description |
|---|---|---|
| SOURCE_FILES | [] | List of source files to scaffold tests for |
| TEST_FRAMEWORK | auto | Framework to use (auto-detects from manifest) |
| OUTPUT_DIR | tests/ | Where to place generated test files |
| NAMING_CONVENTION | language-default | Test file naming pattern |
| INCLUDE_FIXTURES | true | Generate fixture stubs |
| STUB_STYLE | todo | todo (TODO comments) or skip (skip markers) |
Workflow (Mandatory)
- Detect stack: Read package manifest (
pyproject.toml,package.json,go.mod,Cargo.toml) - Identify framework: Match test dependencies (pytest, vitest, jest, testing, cargo test)
- Analyze sources: Extract public functions, classes, methods from each source file
- Map to tests: Apply naming convention to determine test file paths
- Generate scaffolds: Use language template, insert TODO stubs for each testable unit
- Return manifest: JSON with generated files, skipped files, and unit counts
Supported Frameworks
| Language | Frameworks | Detection |
|---|---|---|
| Python | pytest, unittest | pyproject.toml → [tool.pytest] or pytest in deps |
| TypeScript | vitest, jest | package.json → vitest or jest in devDeps |
| JavaScript | vitest, jest | package.json → vitest or jest in devDeps |
| Go | testing | go.mod → built-in testing package |
| Rust | cargo test | Cargo.toml → built-in test harness |
| Dart | flutter_test, test | pubspec.yaml → flutter_test or test in dev_deps |
Naming Conventions
| Language | Source | Test File |
|---|---|---|
| Python | src/auth/login.py |
tests/auth/test_login.py |
| TypeScript | src/auth/login.ts |
src/auth/login.test.ts or tests/auth/login.test.ts |
| Go | pkg/auth/login.go |
pkg/auth/login_test.go |
| Rust | src/auth/login.rs |
inline #[cfg(test)] module |
| Dart | lib/auth/login.dart |
test/auth/login_test.dart |
Source Analysis Heuristics
Python
- Detect
def function_name(where name doesn't start with_ - Detect
class ClassName:for public classes - Extract method signatures within classes
- Skip
__init__,__str__, etc. (dunder methods)
TypeScript/JavaScript
- Detect
export function,export const,export class - Detect
export default function/class - Parse JSDoc/TSDoc for parameter types
Go
- Detect exported functions (capitalized names)
- Detect exported methods on structs
- Detect exported types
Rust
- Detect
pub fn,pub struct,pub enum - Detect
implblocks with public methods
Output Schema
{
"format": "scaffold-manifest/v1",
"generated_at": "<ISO-8601 UTC>",
"framework": "pytest",
"generated": [
{
"source": "src/auth/login.py",
"test": "tests/auth/test_login.py",
"units": ["login", "logout", "refresh_token"],
"unit_count": 3
}
],
"skipped": [
{
"source": "src/auth/utils.py",
"reason": "test file exists"
}
],
"total_units": 12
}
Red Flags (Stop & Verify)
- No package manifest found → prompt user for framework
- Source file has no public functions → skip with warning
- Test file already exists → skip unless
--forcespecified - Unable to parse source file → log warning, continue with others
Integration Points
With /ai-dev-kit:plan-phase
- Called to auto-populate
Tests Owned Filescolumn - Uses
Owned Artifactsfrom impl tasks as source files
With /ai-dev-kit:execute-lane
- Called before test-engineer agent runs
- Scaffolds committed with
chore(P{n}-{lane}): scaffold test files
With test-engineer agent
- Agent detects TODO markers in scaffolds
- Fills in test implementations
- Removes TODO markers when complete
Provider Notes
- Use this skill when
/ai-dev-kit:scaffold-testsis invoked - Prefer TODO-style stubs over skip markers for visibility
- Preserve source file structure in test organization
- Include proper imports based on detected framework
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
perigon-backend
Perigon ASP.NET Core + EF Core + Aspire conventions
perigon-agent
Pointers for Copilot/agents to apply Perigon conventions
perigon-angular
Angular 21+ standalone/Material/signal conventions for Perigon WebApp
fastapi-mastery
Comprehensive FastAPI development skill covering REST API creation, routing, request/response handling, validation, authentication, database integration, middleware, and deployment. Use when working with FastAPI projects, building APIs, implementing CRUD operations, setting up authentication/authorization, integrating databases (SQL/NoSQL), adding middleware, handling WebSockets, or deploying FastAPI applications. Triggered by requests involving .py files with FastAPI code, API endpoint creation, Pydantic models, or FastAPI-specific features.
context7-efficient
Token-efficient library documentation fetcher using Context7 MCP with 86.8% token savings through intelligent shell pipeline filtering. Fetches code examples, API references, and best practices for JavaScript, Python, Go, Rust, and other libraries. Use when users ask about library documentation, need code examples, want API usage patterns, are learning a new framework, need syntax reference, or troubleshooting with library-specific information. Triggers include questions like "Show me React hooks", "How do I use Prisma", "What's the Next.js routing syntax", or any request for library/framework documentation.
browser-use
Browser automation using Playwright MCP. Navigate websites, fill forms, click elements, take screenshots, and extract data. Use when tasks require web browsing, form submission, web scraping, UI testing, or any browser interaction.
Didn't find tool you were looking for?