{"id":"ca78ccca-d1bb-4f3e-a69f-8469efa5e7b4","shortId":"gCnrzX","kind":"skill","title":"Bootstrap an OpenAPI spec from captured API traffic before client or test automation starts","tagline":"Uses mitmproxy2swagger to turn captured mitmproxy flows or HAR exports into a first-pass OpenAPI document that an agent can refine, validate, and hand off to downstream tooling. Invoke it when the API already exists but the contract does not, and you need a concrete spec before g","description":"# Bootstrap an OpenAPI spec from captured API traffic before client or test automation starts\n\nUses mitmproxy2swagger to turn captured mitmproxy flows or HAR exports into a first-pass OpenAPI document that an agent can refine, validate, and hand off to downstream tooling. Invoke it when the API already exists but the contract does not, and you need a concrete spec before generating clients, mocks, tests, or reviewable docs.\n\n## Prerequisites\n\nPython 3 and pip, plus mitmproxy flow captures or a HAR export from browser DevTools\n\n## Installation\n\nUse the upstream install or setup path that matches your environment:\n- $ pip install mitmproxy2swagger\n- $ git clone git@github.com:alufers/mitmproxy2swagger.git\n- $ docker build -t mitmproxy2swagger .\n- $ docker run -it -v $PWD:/app mitmproxy2swagger mitmproxy2swagger -i <path_to_mitmptoxy_flow> -o <path_to_output_schema> -p <api_prefix>\n\nRequirements and caveats from upstream:\n- [poetry](https://python-poetry.org/) for dependency management\n\nBasic usage or getting-started notes:\n- First you will need python3 and pip3.\n- bash\n- # ... or ...\n\n- Source: https://github.com/alufers/mitmproxy2swagger\n- Extracted from upstream docs: https://raw.githubusercontent.com/alufers/mitmproxy2swagger/HEAD/README.md\n\n## Documentation\n\n- https://github.com/alufers/mitmproxy2swagger\n\n## Source\n\n- [Agent Skill Exchange](https://agentskillexchange.com/skills/bootstrap-openapi-spec-from-captured-api-traffic-before-client-or-test-automation/)","tags":["bootstrap","openapi","spec","from","captured","api","traffic","before","client","test","automation","skills"],"capabilities":["skill","source-agentskillexchange","skill-bootstrap-openapi-spec-from-captured-api-traffic-before-client-or-test-automation","topic-agent-skills","topic-ai-agents","topic-ai-tools","topic-awesome-list","topic-claude-code","topic-codex","topic-cursor","topic-llm","topic-mcp","topic-npx-skills","topic-openclaw","topic-skills-catalog"],"categories":["skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/agentskillexchange/skills/bootstrap-openapi-spec-from-captured-api-traffic-before-client-or-test-automation","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add agentskillexchange/skills","source_repo":"https://github.com/agentskillexchange/skills","install_from":"skills.sh"}},"qualityScore":"0.454","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 8 github stars · SKILL.md body (1,486 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:09:38.454Z","embedding":null,"createdAt":"2026-05-18T13:15:26.461Z","updatedAt":"2026-05-18T19:09:38.454Z","lastSeenAt":"2026-05-18T19:09:38.454Z","tsv":"'/)':191 '/alufers/mitmproxy2swagger':214,225 '/alufers/mitmproxy2swagger/head/readme.md':221 '/app':177 '/skills/bootstrap-openapi-spec-from-captured-api-traffic-before-client-or-test-automation/)':232 '3':135 'agent':34,97,227 'agentskillexchange.com':231 'agentskillexchange.com/skills/bootstrap-openapi-spec-from-captured-api-traffic-before-client-or-test-automation/)':230 'alreadi':49,112 'alufers/mitmproxy2swagger.git':167 'api':7,48,70,111 'autom':13,76 'bash':209 'basic':195 'bootstrap':1,64 'browser':147 'build':169 'captur':6,19,69,82,141 'caveat':185 'client':10,73,127 'clone':165 'concret':60,123 'contract':53,116 'depend':193 'devtool':148 'doc':132,218 'docker':168,172 'document':31,94,222 'downstream':42,105 'environ':160 'exchang':229 'exist':50,113 'export':24,87,145 'extract':215 'first':28,91,202 'first-pass':27,90 'flow':21,84,140 'g':63 'generat':126 'get':199 'getting-start':198 'git':164 'git@github.com':166 'github.com':213,224 'github.com/alufers/mitmproxy2swagger':212,223 'hand':39,102 'har':23,86,144 'instal':149,153,162 'invok':44,107 'manag':194 'match':158 'mitmproxi':20,83,139 'mitmproxy2swagger':16,79,163,171,178,179 'mock':128 'need':58,121,205 'note':201 'o':181 'openapi':3,30,66,93 'p':182 'pass':29,92 'path':156 'pip':137,161 'pip3':208 'plus':138 'poetri':188 'prerequisit':133 'pwd':176 'python':134 'python-poetry.org':190 'python-poetry.org/)':189 'python3':206 'raw.githubusercontent.com':220 'raw.githubusercontent.com/alufers/mitmproxy2swagger/head/readme.md':219 'refin':36,99 'requir':183 'review':131 'run':173 'setup':155 'skill':228 'skill-bootstrap-openapi-spec-from-captured-api-traffic-before-client-or-test-automation' 'sourc':211,226 'source-agentskillexchange' 'spec':4,61,67,124 'start':14,77,200 'test':12,75,129 'tool':43,106 'topic-agent-skills' 'topic-ai-agents' 'topic-ai-tools' 'topic-awesome-list' 'topic-claude-code' 'topic-codex' 'topic-cursor' 'topic-llm' 'topic-mcp' 'topic-npx-skills' 'topic-openclaw' 'topic-skills-catalog' 'traffic':8,71 'turn':18,81 'upstream':152,187,217 'usag':196 'use':15,78,150 'v':175 'valid':37,100","prices":[{"id":"4d00dad8-09cb-4787-957f-d239f5b4b326","listingId":"ca78ccca-d1bb-4f3e-a69f-8469efa5e7b4","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"agentskillexchange","category":"skills","install_from":"skills.sh"},"createdAt":"2026-05-18T13:15:26.461Z"}],"sources":[{"listingId":"ca78ccca-d1bb-4f3e-a69f-8469efa5e7b4","source":"github","sourceId":"agentskillexchange/skills/bootstrap-openapi-spec-from-captured-api-traffic-before-client-or-test-automation","sourceUrl":"https://github.com/agentskillexchange/skills/tree/main/skills/bootstrap-openapi-spec-from-captured-api-traffic-before-client-or-test-automation","isPrimary":false,"firstSeenAt":"2026-05-18T13:15:26.461Z","lastSeenAt":"2026-05-18T19:09:38.454Z"}],"details":{"listingId":"ca78ccca-d1bb-4f3e-a69f-8469efa5e7b4","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"agentskillexchange","slug":"bootstrap-openapi-spec-from-captured-api-traffic-before-client-or-test-automation","github":{"repo":"agentskillexchange/skills","stars":8,"topics":["agent-skills","ai-agents","ai-tools","awesome-list","claude-code","codex","cursor","llm","mcp","npx-skills","openclaw","skills-catalog"],"license":"mit","html_url":"https://github.com/agentskillexchange/skills","pushed_at":"2026-05-18T19:02:17Z","description":"The open catalog of AI agent skills — 2,000+ security-scanned skills for Claude Code, Cursor, Codex, and more.","skill_md_sha":"c8f3272173680046d12af7857220f24c2a7d2151","skill_md_path":"skills/bootstrap-openapi-spec-from-captured-api-traffic-before-client-or-test-automation/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/agentskillexchange/skills/tree/main/skills/bootstrap-openapi-spec-from-captured-api-traffic-before-client-or-test-automation"},"layout":"multi","source":"github","category":"skills","frontmatter":{"name":"Bootstrap an OpenAPI spec from captured API traffic before client or test automation starts","description":"Uses mitmproxy2swagger to turn captured mitmproxy flows or HAR exports into a first-pass OpenAPI document that an agent can refine, validate, and hand off to downstream tooling. Invoke it when the API already exists but the contract does not, and you need a concrete spec before generating clients, mocks, tests, or reviewable docs."},"skills_sh_url":"https://skills.sh/agentskillexchange/skills/bootstrap-openapi-spec-from-captured-api-traffic-before-client-or-test-automation"},"updatedAt":"2026-05-18T19:09:38.454Z"}}