Agent-skills api-ai-augmented
install
source · Clone the upstream repo
git clone https://github.com/LambdaTest/agent-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/LambdaTest/agent-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/api/AI-Based-API" ~/.claude/skills/lambdatest-agent-skills-api-ai-augmented && rm -rf "$T"
manifest:
api/AI-Based-API/SKILL.mdsource content
AI-Augmented API Skill
Design LLM tool definitions, agentic workflows, and natural language API interfaces.
Anthropic Tool Use Definition
{ "name": "search_products", "description": "Search for products by keyword, category, or price range. Use when the user wants to find, browse, or compare products.", "input_schema": { "type": "object", "properties": { "query": { "type": "string", "description": "Search query keywords" }, "category": { "type": "string", "enum": ["electronics", "clothing", "books", "home"], "description": "Optional category filter" }, "min_price": { "type": "number", "description": "Minimum price in USD" }, "max_price": { "type": "number", "description": "Maximum price in USD" }, "limit": { "type": "integer", "default": 10, "description": "Max results to return" } }, "required": ["query"] } }
OpenAI Function Calling Definition
{ "type": "function", "function": { "name": "create_order", "description": "Create a new order for a user. Use when the user wants to purchase a product. Always confirm product and quantity before calling.", "parameters": { "type": "object", "properties": { "product_id": { "type": "string", "description": "The product ID to order" }, "quantity": { "type": "integer", "minimum": 1, "description": "Quantity to order" }, "shipping_address": { "type": "object", "properties": { "street": { "type": "string" }, "city": { "type": "string" }, "country": { "type": "string" } }, "required": ["street", "city", "country"] } }, "required": ["product_id", "quantity", "shipping_address"] } } }
MCP (Model Context Protocol) Tool Schema
{ "name": "get_build_status", "description": "Get the status of a HyperExecute test job. Use when the user asks about test results, job status, or CI build outcomes.", "inputSchema": { "type": "object", "properties": { "job_id": { "type": "string", "description": "The HyperExecute job ID" } }, "required": ["job_id"] } }
🔗 Real-World Integration — TestMu AI HyperExecute Build MCP tools that let AI agents query and control test jobs via the HyperExecute API. Docs: https://www.testmuai.com/support/api-doc/?key=hyperexecute
Tool Design Principles
- One tool = one action: Don't combine search + filter + sort into one tool. Split them.
- Description drives routing: The LLM picks tools from descriptions — be specific and include trigger phrases.
- Required vs optional: Only mark fields
if the API truly needs them.required - Enum for constrained values: Use
instead ofenum
for fixed-choice fields.string - Idempotent where possible: Prefer read tools over write tools for exploration.
- Confirm before destructive actions: Description should say "Always confirm with the user before calling."
Agentic Workflow Example
User: "Get me the status of my last 3 test builds" Agent plan: 1. call list_jobs(limit=3, sort="created_at:desc") → returns [{id: "job_1", status: "passed"}, {id: "job_2", status: "failed"}, ...] 2. call get_job_details(job_id="job_2") // dig into the failed one → returns task breakdown, error logs 3. Synthesize: "Your last 3 builds: job_1 passed, job_2 failed (2 of 15 tasks failed on Chrome/Win10), job_3 passed."
Natural Language → API Mapping Table
Build this mapping for any domain:
| Natural language intent | API call |
|---|---|
| "Find hotels in Paris" | |
| "Book a room for 2 nights" | |
| "Cancel my reservation" | |
| "Show my past orders" | |
| "Is the API working?" | |
API-as-Plugin (OpenAPI → GPT Plugin / Tool)
Minimal
ai-plugin.json:
{ "schema_version": "v1", "name_for_human": "My API", "name_for_model": "my_api", "description_for_human": "Access my service's data and actions.", "description_for_model": "Use this plugin to search, create, update and delete resources in My API. Always prefer specific endpoints over generic ones. Confirm destructive actions with the user first.", "auth": { "type": "oauth" }, "api": { "type": "openapi", "url": "https://api.example.com/openapi.json" } }