This skill should be used when the user asks to "create ClickHouse user", "manage ClickHouse permissions", "test ClickHouse connection", "troubleshoot ClickHouse Cloud", or mentions ClickHouse Cloud credentials, API keys, or SQL user management.
View on GitHubterrylica/cc-skills
devops-tools
January 25, 2026
Select agents to install to:
npx add-skill https://github.com/terrylica/cc-skills/blob/main/plugins/devops-tools/skills/clickhouse-cloud-management/SKILL.md -a claude-code --skill clickhouse-cloud-managementInstallation paths:
.claude/skills/clickhouse-cloud-management/# ClickHouse Cloud Management ADR: 2025-12-08-clickhouse-cloud-management-skill ## Overview ClickHouse Cloud user and permission management via SQL commands over HTTP interface. This skill covers database user creation, permission grants, and credential management for ClickHouse Cloud instances. ## When to Use This Skill Invoke this skill when: - Creating database users for ClickHouse Cloud - Managing user permissions (GRANT/REVOKE) - Testing ClickHouse Cloud connectivity - Troubleshooting authentication issues - Understanding API key vs database user distinction ## Key Concepts ### Management Options ClickHouse Cloud provides two management interfaces with different capabilities: | Task | Via SQL (CLI/HTTP) | Via Cloud Console | | -------------------- | ------------------ | ----------------- | | Create database user | CREATE USER | Supported | | Grant permissions | GRANT | Supported | | Delete user | DROP USER | Supported | | Create API key | Not possible | Only here | **Key distinction**: Database users (created via SQL) authenticate to ClickHouse itself. API keys (created via console) authenticate to the ClickHouse Cloud management API. ### Connection Details ClickHouse Cloud exposes only HTTP interface publicly: - **Port**: 443 (HTTPS) - **Protocol**: HTTP (not native ClickHouse protocol) - **Native protocol**: Requires AWS PrivateLink (not available without enterprise setup) ### Password Requirements ClickHouse Cloud enforces strong password policy: - Minimum 12 characters - At least 1 uppercase letter - At least 1 special character Example compliant password: `StrongPass@2025!` ## Quick Reference ### Create Read-Only User ```bash curl -s "https://default:PASSWORD@HOST:443/" --data-binary \ "CREATE USER my_reader IDENTIFIED BY 'StrongPass@2025!' SETTINGS readonly = 1" ``` ### Grant Database Access ```bash curl -s "https://default:PASSWOR