Files
2026-08-09 20:33:03 +01:00

130 lines
4.6 KiB
JSON

{
"id": "clickclack",
"doctorContract": {
"configRepair": true
},
"activation": {
"onStartup": false
},
"channels": ["clickclack"],
"channelConfigs": {
"clickclack": {
"label": "ClickClack",
"description": "ClickClack channel accounts and group activation policy.",
"schema": {
"type": "object",
"additionalProperties": true,
"properties": {
"requireMention": { "type": "boolean" },
"allowBots": {
"anyOf": [{ "type": "boolean" }, { "type": "string", "const": "mentions" }]
},
"botLoopProtection": {
"type": "object",
"additionalProperties": false,
"properties": {
"enabled": { "type": "boolean" },
"maxEventsPerWindow": { "type": "integer", "exclusiveMinimum": 0 },
"windowSeconds": { "type": "integer", "exclusiveMinimum": 0 },
"cooldownSeconds": { "type": "integer", "exclusiveMinimum": 0 }
}
},
"mentionPatterns": {
"type": "array",
"items": { "type": "string" }
},
"groups": {
"type": "object",
"additionalProperties": {
"type": "object",
"additionalProperties": true,
"properties": {
"requireMention": { "type": "boolean" },
"allowBots": {
"anyOf": [{ "type": "boolean" }, { "type": "string", "const": "mentions" }]
},
"botLoopProtection": {
"type": "object",
"additionalProperties": false,
"properties": {
"enabled": { "type": "boolean" },
"maxEventsPerWindow": { "type": "integer", "exclusiveMinimum": 0 },
"windowSeconds": { "type": "integer", "exclusiveMinimum": 0 },
"cooldownSeconds": { "type": "integer", "exclusiveMinimum": 0 }
}
},
"mentionPatterns": {
"type": "array",
"items": { "type": "string" }
}
}
}
},
"accounts": {
"type": "object",
"additionalProperties": {
"type": "object",
"additionalProperties": true,
"properties": {
"requireMention": { "type": "boolean" },
"allowBots": {
"anyOf": [{ "type": "boolean" }, { "type": "string", "const": "mentions" }]
},
"botLoopProtection": {
"type": "object",
"additionalProperties": false,
"properties": {
"enabled": { "type": "boolean" },
"maxEventsPerWindow": { "type": "integer", "exclusiveMinimum": 0 },
"windowSeconds": { "type": "integer", "exclusiveMinimum": 0 },
"cooldownSeconds": { "type": "integer", "exclusiveMinimum": 0 }
}
},
"mentionPatterns": {
"type": "array",
"items": { "type": "string" }
},
"groups": {
"type": "object",
"additionalProperties": {
"type": "object",
"additionalProperties": true,
"properties": {
"requireMention": { "type": "boolean" },
"allowBots": {
"anyOf": [{ "type": "boolean" }, { "type": "string", "const": "mentions" }]
},
"botLoopProtection": {
"type": "object",
"additionalProperties": false,
"properties": {
"enabled": { "type": "boolean" },
"maxEventsPerWindow": { "type": "integer", "exclusiveMinimum": 0 },
"windowSeconds": { "type": "integer", "exclusiveMinimum": 0 },
"cooldownSeconds": { "type": "integer", "exclusiveMinimum": 0 }
}
},
"mentionPatterns": {
"type": "array",
"items": { "type": "string" }
}
}
}
}
}
}
}
}
}
}
},
"contracts": {
"tools": ["discussion"]
},
"configSchema": {
"type": "object",
"additionalProperties": false,
"properties": {}
}
}