{"id":"db1ab8cf-7999-45fa-a1a6-de1c5205f497","slug":"bennettphil-builder-test-driven-builder-v2","name":"test-driven-builder-v2","description":"Build Agent Skills using a refined contract-first workflow with robust test harness and language-aware implementation.","canonicalUrl":"https://xpersona.co/skill/bennettphil-builder-test-driven-builder-v2","sourceUrl":"https://github.com/BennettPhil/builder-test-driven-builder-v2","homepage":null,"source":"GITHUB_OPENCLEW","vendor":{"slug":"bennettphil","label":"Bennettphil","url":"https://github.com/BennettPhil/builder-test-driven-builder-v2"},"protocols":["OPENCLEW"],"capabilities":[],"trustScore":null,"trustConfidence":"unknown","artifactCount":0,"benchmarkCount":0,"lastRelease":null,"freshnessAt":"2026-04-15T02:14:53.933Z","freshnessLabel":"Apr 15, 2026","securityReviewed":true,"openapiReady":false,"stats":[{"label":"Trust score","value":"Unknown"},{"label":"Compatibility","value":"OpenClaw"},{"label":"Freshness","value":"Apr 15, 2026"},{"label":"Vendor","value":"Bennettphil"},{"label":"Artifacts","value":"0"},{"label":"Benchmarks","value":"0"},{"label":"Last release","value":"Unpublished"}],"factsPreview":[{"factKey":"docs_crawl","category":"integration","label":"Crawlable docs","value":"6 indexed pages on the official domain","href":"https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar","sourceUrl":"https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar","sourceType":"search_document","confidence":"medium","observedAt":"2026-04-15T05:03:46.393Z","isPublic":true},{"factKey":"vendor","category":"vendor","label":"Vendor","value":"Bennettphil","href":"https://github.com/BennettPhil/builder-test-driven-builder-v2","sourceUrl":"https://github.com/BennettPhil/builder-test-driven-builder-v2","sourceType":"profile","confidence":"medium","observedAt":"2026-04-15T02:14:53.933Z","isPublic":true},{"factKey":"protocols","category":"compatibility","label":"Protocol compatibility","value":"OpenClaw","href":"https://xpersona.co/api/v1/agents/bennettphil-builder-test-driven-builder-v2/contract","sourceUrl":"https://xpersona.co/api/v1/agents/bennettphil-builder-test-driven-builder-v2/contract","sourceType":"contract","confidence":"medium","observedAt":"2026-04-15T02:14:53.933Z","isPublic":true},{"factKey":"handshake_status","category":"security","label":"Handshake status","value":"UNKNOWN","href":"https://xpersona.co/api/v1/agents/bennettphil-builder-test-driven-builder-v2/trust","sourceUrl":"https://xpersona.co/api/v1/agents/bennettphil-builder-test-driven-builder-v2/trust","sourceType":"trust","confidence":"medium","observedAt":null,"isPublic":true}],"highlights":["Trust evidence available"],"agentCard":{"name":"test-driven-builder-v2","description":"Build Agent Skills using a refined contract-first workflow with robust test harness and language-aware implementation.","source":"GITHUB_OPENCLEW","sourceId":"github:1152574550","repository":"https://github.com/BennettPhil/builder-test-driven-builder-v2","documentation":"https://xpersona.co/skill/bennettphil-builder-test-driven-builder-v2/agent/bennettphil-builder-test-driven-builder-v2","protocols":["OPENCLEW"],"languages":["typescript"],"install":{"command":"git clone https://github.com/BennettPhil/builder-test-driven-builder-v2.git","ecosystem":"git"},"examples":[{"kind":"example","language":"markdown","snippet":"| id | category | input | expected_output | expected_exit |\n|----|----------|-------|-----------------|---------------|\n| hp-1 | happy-path | <concrete input> | <concrete expected output> | 0 |"},{"kind":"example","language":"bash","snippet":"#!/usr/bin/env bash\nset -euo pipefail\n\nSCRIPT_DIR=\"$(cd \"$(dirname \"${BASH_SOURCE[0]}\")\" && pwd)\"\nPASS=0\nFAIL=0\nTOTAL=0\n\npass() { ((PASS++)); ((TOTAL++)); echo \"  PASS: $1\"; }\nfail() { ((FAIL++)); ((TOTAL++)); echo \"  FAIL: $1 -- $2\"; }\n\nassert_eq() {\n  local desc=\"$1\" expected=\"$2\" actual=\"$3\"\n  if [ \"$expected\" = \"$actual\" ]; then pass \"$desc\"\n  else fail \"$desc\" \"expected '$expected', got '$actual'\"; fi\n}\n\nassert_exit_code() {\n  local desc=\"$1\" expected_code=\"$2\"\n  shift 2\n  local actual_code=0\n  \"$@\" >/dev/null 2>&1 || actual_code=$?\n  if [ \"$expected_code\" -eq \"$actual_code\" ]; then pass \"$desc\"\n  else fail \"$desc\" \"expected exit $expected_code, got $actual_code\"; fi\n}\n\nassert_contains() {\n  local desc=\"$1\" needle=\"$2\" haystack=\"$3\"\n  if echo \"$haystack\" | grep -qF \"$needle\"; then pass \"$desc\"\n  else fail \"$desc\" \"output does not contain '$needle'\"; fi\n}"}]}}