{"id":"path-set-dedupe","version":"1.0.0","description":"Deduplicate an array of paths based on lexical equivalence while preserving first or last seen order.","supported_operations":["deduplicate paths","path dedup","remove duplicate paths"],"unsupported_operations":["stat file","filesystem access"],"semantics":"Remove duplicate paths using normalized lexical equivalence. keep:\"first\" keeps first occurrence; keep:\"last\" keeps last. Output preserves original strings.","limits":{"max_paths":10000,"max_path_bytes":4096},"pricing":{"status":"unpriced","charge_usd":null},"input_schema":{"type":"object","required":["paths"],"properties":{"paths":{"type":"array","items":{"type":"string"},"maxItems":10000},"format":{"type":"string","enum":["posix","windows","auto"]},"case_sensitive":{"type":"boolean"},"normalize":{"type":"boolean"},"keep":{"type":"string","enum":["first","last"]}}},"output_schema":{"type":"object","properties":{"deduped":{"type":"array","items":{"type":"string"}},"removed":{"type":"integer"},"format":{"type":"string"}}},"examples":[{"input":{"paths":["a/b.ts","a/b.ts","c.ts"]},"output":{"deduped":["a/b.ts","c.ts"],"removed":1,"format":"posix"}},{"input":{"paths":["a/b.ts","a/b.ts","c.ts"],"keep":"last"},"output":{"deduped":["a/b.ts","c.ts"],"removed":1,"format":"posix"}},{"input":{"paths":["A/B.ts","a/b.ts"],"format":"windows","case_sensitive":false},"output":{"deduped":["A/B.ts"],"removed":1,"format":"windows"}}],"execute_url":"/v1/tools/path-set-dedupe/versions/1.0.0/execute"}