On first glance, the optional customization string for cSHAKE resembles the optional salt input to HKDF-Extract. Indeed, the Noise Protocol Framework initially uses a protocol identifier string as its HKDF salt value (chaining key in Noise), which looks very similar to examples of customization strings given for cSHAKE. Both HKDF's salt and cSHAKE's customization string are intended in part for domain separation of random oracles.
The HKDF paper goes into some detail to explain that the salt value must not be attacker-controlled. For example, if it is derived from random nonces exchanged during a protocol handshake, then those nonces must be authenticated (e.g., by a signature) prior to being used in HKDF. This is in contrast to the info/context argument to HKDF-Expand, which may include elements under attacker control (public keys, user identifiers, etc).
The NIST spec for cSHAKE doesn't explicitly address this point. Should the same caveats from the HKDF paper regarding the salt also apply to cSHAKE's customization string? That is, would it be unsafe to use a customization string that might be attacker-controlled?