         arguments: [String],
         dependencies: String? = nil
     ) {
+        assert(commands[name] == nil, "aleady had a command named '\(name)'")
         let tool = ClangTool(
             description: description,
             inputs: inputs,

        inputs: [Node],
        outputs: [Node]
    ) {
        let tool = PackageStructureTool(inputs: inputs, outputs: outputs)
        commands[name] = Command(name: name, tool: tool)
    }

        inputs: [Node],
        outputs: [Node]
    ) {
        assert(commands[name] == nil, "aleady had a command named '\(name)'")
        let tool = TestDiscoveryTool(inputs: inputs, outputs: outputs)
        commands[name] = Command(name: name, tool: tool)
    }
