Exclusive Or Properties
This skill evaluates boolean expressions using "OR" logic, useful for conditional tasks and data filtering based on multiple criteria.
Install on your platform
We auto-selected Claude Code based on this skill’s supported platforms.
Run in terminal (recommended)
claude mcp add exclusive-or-properties npx -- -y @trustedskills/exclusive-or-properties
Or manually add to ~/.claude/settings.json
{
"mcpServers": {
"exclusive-or-properties": {
"command": "npx",
"args": [
"-y",
"@trustedskills/exclusive-or-properties"
]
}
}
}Requires Claude Code (claude CLI). Run claude --version to verify your install.
About This Skill
What it does
This skill allows you to apply the exclusive-or (XOR) principle when defining TypeScript properties. It enables a set of properties to be present, but only one can have a value at any given time, ensuring data integrity and preventing conflicting states within your code. This is particularly useful for representing mutually exclusive options or configurations.
When to use it
- Representing Mutually Exclusive Options: When an object has several possible settings where only one can be active (e.g., a payment method with 'credit_card', 'paypal', and 'bank_transfer').
- Configuration Management: Defining configuration options where certain features are incompatible and cannot be enabled simultaneously.
- State Machines: Modeling states in a state machine where transitions between states enforce that only one state is active at a time.
Key capabilities
- Enforces exclusive property values.
- Provides type safety for mutually exclusive properties.
- Reduces potential errors related to conflicting configurations.
Example prompts
- "Apply XOR constraints to the
paymentMethodobject, ensuring only one of 'credit_card', 'paypal', or 'bank_transfer' can have a value." - "Create a configuration with exclusive options for feature flags A and B; only one can be true at a time."
- "Define a state machine where the
stateproperty can only be 'idle', 'loading', or 'error' simultaneously."
Tips & gotchas
This skill requires a good understanding of TypeScript types and generics. Incorrectly defining the properties involved in the XOR relationship can lead to unexpected behavior, so careful consideration is needed during implementation.
Tags
TrustedSkills Verification
Unlike other registries that point to live repositories, TrustedSkills pins every skill to a verified commit hash. This protects you from malicious updates — what you install today is exactly what was reviewed and verified.
Security Audits
| Gen Agent Trust Hub | Pass |
| Socket | Pass |
| Snyk | Pass |
🌐 Community
Passed automated security scans.