# How to Define Trigger Conditions in Cangjie-Skill Description Fields

> Define clear trigger conditions in Cangjie skill description fields for bilingual language signals and prevent overlapping activations. Learn essential syntax and best practices.

- Repository: [kangarooking/cangjie-skill](https://github.com/kangarooking/cangjie-skill)
- Tags: how-to-guide
- Published: 2026-07-19

---

**The `description` field in cangjie-skill must explicitly define the user's trigger scenario, list bilingual language signals, and specify clear boundaries to prevent overlapping activations.**

The cangjie-skill repository generates reusable mental-model skills for Claude-Bot, where the `description` field acts as the primary trigger mechanism. According to the methodology defined in [`methodology/04-stage2-ria-plus.md`](https://github.com/kangarooking/cangjie-skill/blob/main/methodology/04-stage2-ria-plus.md), this field determines when a skill activates based on specific user contexts and language cues. Proper trigger definition ensures skills fire only in intended situations rather than becoming "always-on" noise or remaining unreachable.

## Core Trigger Requirements for Cangjie-Skill Descriptions

According to [`SKILL.md`](https://github.com/kangarooking/cangjie-skill/blob/main/SKILL.md) (line 152) and [`methodology/04-stage2-ria-plus.md`](https://github.com/kangarooking/cangjie-skill/blob/main/methodology/04-stage2-ria-plus.md), every skill description must satisfy five specific requirements to function as a reliable **Future Trigger** (A2):

- **Explicit scenario statement**: The description must clearly state what situation the user is in when they need this skill (e.g., "stuck deciding between two alternatives").
- **Recognizable language signals**: It must list specific keywords or phrases the user will actually say, documented in lines 36-39 of the methodology file.
- **Differentiation from adjacent skills**: The description must include boundaries that prevent overlap with similar skills, as specified in line 40.
- **Word count constraint**: The description must be **≤ 300 words** (lines 75-77).
- **Bilingual support**: Trigger wording should include both Chinese and English signals when possible (line 45), accommodating users who may ask in either language.

## The Three-Part Trigger Template

Effective cangjie-skill descriptions follow a strict three-part structure that combines scenario context with precise linguistic triggers.

### Scenario Definition

Define the specific user state that warrants this mental model. Vague contexts cause misfires.

### Language Signals

List exact phrases in both languages. For example: "怎样才能更好地做 X？" (Chinese) and "how can I decide on X?" (English).

### Boundary Conditions

Explicitly state when **not** to trigger. This prevents the skill from activating on pure factual queries like "What is X?" when the user only needs the framework for decision-making dilemmas.

## Implementing Triggers in Skill Front-Matter

The trigger description lives in the YAML front-matter of each skill file, as defined in `templates/SKILL.md.template`. Below is a minimal example following the three-part template:

```yaml
---
name: reverse-thinking
description: |
  When the user is torn between two options and phrases the problem as
  "怎么决定 X?" or "how should I choose X?",  
  suggest the Reverse-Thinking framework.  
  Do NOT fire for simple definitional questions like "What is X?".
source_book: 《穷查理宝典》 查理·芒格
source_chapter: 第三讲
tags: [decision, mental-model, cognitive-bias]
related_skills: []
---

```

This structure ensures the description meets the **≤ 300 words** requirement while providing clear activation cues for the Claude-Bot classifier.

## Validating Trigger Accuracy with Pressure Testing

After defining triggers, you must verify they activate correctly using the pressure-testing protocol defined in [`methodology/06-stage4-pressure-test.md`](https://github.com/kangarooking/cangjie-skill/blob/main/methodology/06-stage4-pressure-test.md). Create JSON test cases that explicitly check both positive and negative triggers:

```json
{
  "id": "should-trigger-01",
  "type": "should_trigger",
  "prompt": "我现在在两个项目之间犹豫不决，应该怎么决定？"
},
{
  "id": "should-not-trigger-01",
  "type": "should_not_trigger",
  "prompt": "请告诉我逆向思维的定义是什么？"
}

```

These test prompts validate that the description's trigger words are precise enough to **activate** the skill only in the intended context, avoiding the "always-or-never" problem that renders skills useless.

## Summary

- The `description` field in cangjie-skill serves as the **Future Trigger** (A2) that tells Claude-Bot when to invoke a mental model.
- Every description must include an explicit scenario, bilingual language signals, and clear boundaries to differentiate from adjacent skills.
- Descriptions are stored in YAML front-matter and must not exceed **300 words**.
- Validate trigger precision using the `should_trigger` and `should_not_trigger` test prompts defined in the stage 4 pressure-testing methodology.

## Frequently Asked Questions

### What is the maximum length for a cangjie-skill description?

According to [`methodology/04-stage2-ria-plus.md`](https://github.com/kangarooking/cangjie-skill/blob/main/methodology/04-stage2-ria-plus.md) (lines 75-77), the `description` field must be **≤ 300 words**. This constraint ensures the trigger definition remains concise enough for the classifier to process efficiently while capturing all necessary scenario, signal, and boundary information.

### Why must trigger conditions be bilingual in cangjie-skill?

The methodology specifies bilingual triggers (Chinese and English) because users may interact with Claude-Bot in either language. Including both "怎样才能更好地做 X？" and "how can I decide on X?" ensures the skill activates regardless of the user's language preference, as documented in line 45 of [`methodology/04-stage2-ria-plus.md`](https://github.com/kangarooking/cangjie-skill/blob/main/methodology/04-stage2-ria-plus.md).

### How do I prevent my skill from overlapping with adjacent skills?

You must explicitly differentiate your skill from related ones by defining **boundary conditions** in the description. As noted in line 40 of the methodology file, state what situations or query types should **not** trigger this skill. For example, exclude pure definitional questions if your skill targets decision-making dilemmas.

### Where is the trigger description stored in the skill file?

The trigger description resides in the YAML front-matter under the `description` key, as implemented in `templates/SKILL.md.template`. This field appears immediately after the `name` field and before metadata like `source_book` and `tags`, ensuring the classifier can parse the trigger conditions before loading the skill content.