Loading...
Loading...
Scaffold a new integration-type "seed skill" — a SKILL.md with reference assets and prompts.jsonl entries that teach an agent to generate working, testable integration code from scratch. - Use when: developer wants to create a new skill for an SDK or framework integration that agents should be able to implement and test - Ask first: Is this an integration skill (code generation + tests) or a tool skill (CLI wrapper with no tests)? Only proceed with this skill for integration-type skills.
npx skill4agent add youdotcom-oss/agent-skills create-seed-skillprompts.jsonlydc-ai-sdk-integrationteams-anthropic-integrationyoudotcom-cliIs this an integration skill (the agent generates code + tests) or a tool skill (the agent runs a CLI command)?
my-sdk-integrationprompts.jsonl-typescript-pythontests/tests/<skill-name>-typescript/tests/<skill-name>-python/.gitkeepprompts.jsonltests/<skill-name>/.gitkeepMY_API_KEYOPENAI_API_KEYskills/<skill-name>/skills/<skill-name>/
├── SKILL.md
└── assets/
# TypeScript:
├── path-a-<variant>.ts # Path A integration
├── path-b-<variant>.ts # Path B integration (if applicable)
├── integration.spec.ts # Bun test file
# Python:
├── path_a_<variant>.py # Path A integration
├── path_b_<variant>.py # Path B integration (if applicable)
├── test_integration.py # pytest file
└── pyproject.toml # Python project config (required for uv run pytest)
# Also create (see below):
tests/<skill-name>/ # single language
└── .gitkeep
# — or for both languages —
tests/<skill-name>-typescript/
└── .gitkeep
tests/<skill-name>-python/
└── .gitkeeptests/.gitkeeptests/<skill-name>/.gitkeeptests/<skill-name>-typescript/.gitkeeptests/<skill-name>-python/.gitkeep# Single language (adjust path as needed):
mkdir -p tests/<skill-name> && touch tests/<skill-name>/.gitkeep
# Both languages:
mkdir -p tests/<skill-name>-typescript tests/<skill-name>-python
touch tests/<skill-name>-typescript/.gitkeep tests/<skill-name>-python/.gitkeepdata/prompts/prompts.jsonlTypeScriptPython{"id":"<skill-name>","input":["Using the <skill-name> skill, create a working TypeScript <description of Path A> integration. Write flat minimal code with no comments or TSDoc. Write integration tests that call real APIs and assert on meaningful response content. Save everything to the tests/<skill-name> directory.","Extend the integration with <description of Path B>. Write flat minimal code with no comments or TSDoc. Update the integration tests to verify the extended integration also works with a live query."],"metadata":{"cwd":"tests/<skill-name>","language":"typescript"}}{"id":"<skill-name>","input":["Using the <skill-name> skill, create a working Python <description of Path A> integration. Write flat minimal code with no comments or docstrings. Write integration tests that call real APIs and assert on meaningful response content. Save everything to the tests/<skill-name> directory.","Extend the integration with <description of Path B>. Write flat minimal code with no comments or docstrings. Update the integration tests to verify the extended integration also works with a live query."],"metadata":{"cwd":"tests/<skill-name>","language":"python"}}{"id":"<skill-name>-typescript","input":["Using the <skill-name> skill, create a working TypeScript <description of Path A> integration. Write flat minimal code with no comments or TSDoc. Write integration tests that call real APIs and assert on meaningful response content. Save everything to the tests/<skill-name>-typescript directory.","Extend the integration with <description of Path B>. Write flat minimal code with no comments or TSDoc. Update the integration tests to verify the extended integration also works with a live query."],"metadata":{"cwd":"tests/<skill-name>-typescript","language":"typescript"}}
{"id":"<skill-name>-python","input":["Using the <skill-name> skill, create a working Python <description of Path A> integration. Write flat minimal code with no comments or docstrings. Write integration tests that call real APIs and assert on meaningful response content. Save everything to the tests/<skill-name>-python directory.","Extend the integration with <description of Path B>. Write flat minimal code with no comments or docstrings. Update the integration tests to verify the extended integration also works with a live query."],"metadata":{"cwd":"tests/<skill-name>-python","language":"python"}}metadata.cwdtests/metadata.languagetypescriptpythonln -s ../../skills/<skill-name> .claude/skills/<skill-name>bunx @plaited/development-skills validate-skill skills/<skill-name>namedescriptionlicensecompatibilityallowed-toolsassetsmetadata**Rules:**
- No mocks — call real APIs
- Assert on keywords from a deterministic query, not just `length > 0`
- Validate required env vars at test start (inside the test function, not at module scope)
- TypeScript: use `bun:test`, dynamic imports inside tests, `timeout: 60_000`
- Python: use `pytest`, import inside test function; always include `pyproject.toml` with `pytest` in `[dependency-groups] dev`
- Run TypeScript tests: `bun test` | Run Python tests: `uv run pytest`instructionssystem_prompt__main__length > 0import()main(query: str) -> strlength > 0scripts/grader.ts"Search the web for the three branches of the US government"legislativeexecutivejudicial"Use web search to find what programming language TypeScript compiles to"javascript"Search the web for the four classical elements"earthwaterfireair"Search the web for...""Use [tool name] to find..."scripts/grader.tsmetadata.cwdbun test**/*.{ts,js}uv run pytestpyproject.tomlpyproject.tomlhttpxskills/ydc-httpx-integration/
├── SKILL.md
└── assets/
├── path_a_basic.py
├── test_integration.py
└── pyproject.toml
tests/ydc-httpx-integration/
└── .gitkeepmkdir -p tests/ydc-httpx-integration && touch tests/ydc-httpx-integration/.gitkeep{"id":"ydc-httpx-integration","input":["Using the ydc-httpx-integration skill, create a working Python application that calls the You.com search API directly with httpx and returns search results. Write integration tests that call the real API and verify the response contains expected keywords. Save everything to the tests/ydc-httpx-integration directory.","Extend the integration to also support content extraction from URLs. Update the integration tests to verify both search and content extraction work with live queries."],"metadata":{"cwd":"tests/ydc-httpx-integration","language":"python"}}