tcm-constitution-analyzer
npx skills add https://github.com/huifer/wellally-health --skill tcm-constitution-analyzer
Agent 安装分布
Skill 文档
ä¸å»ä½è´¨è¾¨è¯åæå¨æè½
åæä¸å»ä½è´¨æ°æ®,è¯å«ä½è´¨ç±»å,è¯ä¼°ä½è´¨ç¹å¾,å¹¶æä¾ä¸ªæ§åå »çæ¹å建议ã
åè½
1. ä½è´¨è¾¨è¯è¯ä¼°
åºäºãä¸å»ä½è´¨åç±»ä¸å¤å®ãæ åè¿è¡ä½è´¨è¾¨è¯ã
è¯ä¼°ç»´åº¦:
- 9ç§ä½è´¨ç±»åè¯å(å¹³åè´¨ãæ°èè´¨ãé³èè´¨ãé´èè´¨ãç°æ¹¿è´¨ã湿çè´¨ãè¡çè´¨ãæ°éè´¨ãç¹ç¦è´¨)
- 主ä½è´¨å¤å®
- å ¼å¤¹ä½è´¨è¯å«
- ä½è´¨ç¹å¾åæ
è¯ä¼°æ¹æ³:
- 60颿 ååé®å·
- 5åå¶è¯å(没æ/å¾å°/ææ¶/ç»å¸¸/æ»æ¯)
- 转ååæ°è®¡ç®(0-100å)
è¾åº:
- ä½è´¨ç±»åå¤å®ç»æ
- åä½è´¨è¯å
- ä½è´¨ç¹å¾æè¿°
- 个ä½åå »ç建议
2. ä½è´¨ç¹å¾åæ
综åè¯ä¼°ç¨æ·çä½è´¨ç¹å¾ã
åæå 容:
-
å½¢ä½ç¹å¾:
- ä½åç¹ç¹
- é¢è²è¡¨ç°
- è象è象
-
å¿çç¹å¾:
- æ§æ ¼ç¹ç¹
- æ 绪å¾å
-
åç å¾å:
- ææç¾ç
- å¥åº·é£é©
-
éåºè½å:
- ç¯å¢éåº
- å£èéåº
è¾åº:
- ä½è´¨ç±»ååç±»
- ç¹å¾æè¿°
- é£é©è¯ä¼°
- è°çä¼å 级
3. ä½è´¨ååè¶å¿åæ
追踪ä½è´¨åå,è¯ä¼°è°çææã
åæå 容:
- 夿¬¡è¯ä¼°å¯¹æ¯
- è¯åååè¶å¿
- ä½è´¨ç¨³å®æ§åæ
- è°çææè¯ä¼°
è¾åº:
- è¶å¿å¾è¡¨
- æ¹åå¹ åº¦
- ç¨³å®æ§è¯ä¼°
- ç»§ç»è°ç建议
4. ç¸å ³æ§åæ
åæä½è´¨ä¸å ¶ä»å¥åº·ææ çç¸å ³æ§ã
æ¯æçç¸å ³æ§åæ:
-
ä½è´¨ â è¥å »:
- ä½è´¨ç±»åä¸é¥®é£å好çå ³ç³»
- è¥å »ç¶åµå¯¹ä½è´¨çå½±å
- 个æ§å饮é£å»ºè®®
-
ä½è´¨ â è¿å¨:
- ä¸åä½è´¨éåçè¿å¨ç±»å
- è¿å¨å¯¹ä½è´¨æ¹åçä½ç¨
-
ä½è´¨ â ç¡ç :
- ä½è´¨ä¸ç¡ç è´¨éçå ³ç³»
- ç¡ç 对ä½è´¨çå½±å
-
ä½è´¨ â æ ¢æ§ç :
- ä¸åä½è´¨ææ£ç¾ç
- ä½è´¨ä¸ç¾ç çå ³ç³»
è¾åº:
- ç¸å ³ç³»æ°
- ç¸å ³æ§å¼ºåº¦
- ç»è®¡æ¾èæ§
- å®è·µå»ºè®®
5. 个æ§å建议çæ
åºäºä½è´¨ç±»åçæä¸ªæ§åå »ç建议ã
建议类å:
-
饮é£è°å »:
- å®é£é£ç©æ¸ å
- å¿é£é£ç©æ¸ å
- æ¨èé£è°±
- 饮é£åå
-
èµ·å± è°æ:
- 使¯å»ºè®®
- ç¯å¢è¦æ±
- çæ´»ä¹ æ¯
-
è¿å¨é»ç¼:
- æ¨èè¿å¨ç±»å
- è¿å¨é¢æ¬¡å强度
- 注æäºé¡¹
-
æ å¿è°æ:
- æ 绪管ç
- å¿çè°è
-
ç©´ä½ä¿å¥:
- æ¨èç©´ä½
- ææ©æ¹æ³
- è¾ç¸å»ºè®®
-
ä¸è¯è°ç:
- æ¨èæ¹å
- æ¹åç»æ
- ç¨æ³ç¨é
- 注æäºé¡¹
å»ºè®®ä¾æ®:
- ä¸å»ä½è´¨ç论
- ç¨æ·ä½è´¨ç±»å
- å£èå ç´
- ç¨æ·å¥åº·ç¶åµ
使ç¨è¯´æ
è§¦åæ¡ä»¶
å½ç¨æ·è¯·æ±ä»¥ä¸å 容æ¶è§¦åæ¬æè½:
- ä¸å»ä½è´¨è¾¨è¯è¯ä¼°
- ä½è´¨ç±»åæ¥è¯¢
- ä½è´¨ç¹å¾åæ
- ä¸å»å »ç建议
- ä½è´¨è¶å¿åæ
- ä½è´¨ä¸å ¶ä»å¥åº·ææ çå ³èåæ
æ§è¡æ¥éª¤
æ¥éª¤ 1: ç¡®å®åæèå´
æç¡®ç¨æ·è¯·æ±çåæç±»å:
- ä½è´¨è¾¨è¯è¯ä¼°
- ä½è´¨ç¹å¾æ¥è¯¢
- å »ç建议è·å
- è¶å¿åæ
- ç¸å ³æ§åæ
æ¥éª¤ 2: è¯»åæ°æ®
ä¸»è¦æ°æ®æº:
data/constitutions.json– ä½è´¨ç¥è¯åºdata/constitution-recommendations.json– å »ç建议åºdata-example/tcm-constitution-tracker.json– ä½è´¨è¿½è¸ªä¸»æ°æ®data-example/tcm-constitution-logs/YYYY-MM/YYYY-MM-DD.json– æ¯æ¥è¯ä¼°è®°å½
å ³èæ°æ®æº:
data-example/profile.json– åºç¡ä¿¡æ¯data-example/nutrition-tracker.json– è¥å »æ°æ®data-example/fitness-tracker.json– è¿å¨æ°æ®data-example/sleep-tracker.json– ç¡ç æ°æ®
æ¥éª¤ 3: æ°æ®åæ
æ ¹æ®åæç±»åæ§è¡ç¸åºçåæç®æ³:
ä½è´¨è¯åç®æ³:
def calculate_constitution_scores(answers):
"""
åºäºãä¸å»ä½è´¨åç±»ä¸å¤å®ãæ å
计ç®å
¬å¼:
转ååæ° = [(åå§åæ° - é¢ç®æ°) / (é¢ç®æ° à 4)] à 100
å
¶ä¸:
- åå§åæ° = åé¢ç®å¾åä¹å
- é¢ç®æ° = 该ä½è´¨çé®é¢æ°é
"""
scores = {}
for constitution, questions in CONSTITUTION_QUESTIONS.items():
original_score = sum(answers[q] for q in questions)
question_count = len(questions)
converted_score = ((original_score - question_count) / (question_count * 4)) * 100
scores[constitution] = round(converted_score, 1)
return scores
ä½è´¨å¤å®ç®æ³:
def determine_constitution_type(scores):
"""
å¤å®é»è¾:
1. å¹³åè´¨å¤å®:
- å¾å ⥠60å
- å
¶ä»8ç§ä½è´¨å¾åå < 40å
2. åé¢ä½è´¨å¤å®:
- å¾åæé«çä½è´¨ä¸ºå¤å®ç»æ
3. å
¼å¤¹ä½è´¨å¤å®:
- 次é«åçä½è´¨å¾å ⥠40å
- å为å
¼å¤¹ä½è´¨
"""
peaceful_score = scores['å¹³åè´¨']
other_scores = {k: v for k, v in scores.items() if k != 'å¹³åè´¨'}
# å¤å®æ¯å¦ä¸ºå¹³åè´¨
if peaceful_score >= 60 and all(s < 40 for s in other_scores.values()):
return {
'primary': 'å¹³åè´¨',
'secondary': [],
'type': 'balanced'
}
# åé¢ä½è´¨å¤å®
sorted_scores = sorted(other_scores.items(), key=lambda x: x[1], reverse=True)
primary = sorted_scores[0][0]
# 夿å
¼å¤¹ä½è´¨
secondary = [k for k, v in sorted_scores[1:3] if v >= 40]
return {
'primary': primary,
'secondary': secondary,
'type': 'compound' if secondary else 'single'
}
è¶å¿åæç®æ³:
- 线æ§åå½è®¡ç®è¶å¿
- ç§»å¨å¹³åå¹³æ»æ³¢å¨
- ç»è®¡æ¾èæ§æ£éª
æ¥éª¤ 4: çææ¥å
æç §æ åæ ¼å¼è¾åºåææ¥å(è§”è¾åºæ ¼å¼”é¨å)
è¾åºæ ¼å¼
ä½è´¨è¾¨è¯è¯ä¼°æ¥å
# ä¸å»ä½è´¨è¾¨è¯è¯ä¼°æ¥å
## è¯ä¼°æ¥æ
2025-06-20
## è¯ä¼°ç»æ
### ä½è´¨ç±»åå¤å®
- **主ä½è´¨**: æ°èè´¨
- **å
¼å¤¹ä½è´¨**: é³èè´¨
- **ä½è´¨ç±»å**: å
¼å¤¹ä½è´¨
### åä½è´¨è¯å
| ä½è´¨ç±»å | è¯å | å¤å® |
|---------|------|------|
| æ°èè´¨ | 78.5 | â ï¸ åé¢ |
| é³èè´¨ | 62.3 | â ï¸ åé¢ |
| å¹³åè´¨ | 42.1 | æ£å¸¸ |
| ç°æ¹¿è´¨ | 38.7 | æ£å¸¸ |
| æ°éè´¨ | 35.2 | æ£å¸¸ |
| é´èè´¨ | 32.1 | æ£å¸¸ |
| 湿çè´¨ | 28.4 | æ£å¸¸ |
| è¡çè´¨ | 25.6 | æ£å¸¸ |
| ç¹ç¦è´¨ | 18.3 | æ£å¸¸ |
---
## ä½è´¨ç¹å¾åæ
### æ°èè´¨ç¹å¾
**å½¢ä½ç¹å¾**:
- èèæ¾è½¯
- 容æç²ä¹
- 声é³ä½å¼±
- åéæè¨
- 容æåºæ±
**å¿çç¹å¾**:
- æ§æ ¼å
å
- ä¸ååé©
- æ
绪ä¸ç¨³å®
**åç
å¾å**:
- ææå
- æå
èä¸å
- æç²å³
**éåºè½å**:
- ä¸èåé£ãå¯ãæã湿éª
- ç§å£æåç
### é³èè´¨ç¹å¾
**å½¢ä½ç¹å¾**:
- ç坿å·
- æè¶³ä¸æ¸©
- åç饮é£
**å¿çç¹å¾**:
- æ§æ ¼å¤æ²é
- å
å
**åç
å¾å**:
- ææ£ç°é¥®ãè¿èãè
¹æ³»
- ææå¯éª
**éåºè½å**:
- ä¸èå¯éª,èåå¤ç
- å¬å£æåç
---
## å
»ç建议
### 饮é£è°å
»
**åå**: è¡¥æ°å¥è¾,温补è¾é³
**å®é£é£ç©**:
- è¡¥æ°ç±»: å±±è¯ã大æ£ãé»èªã人åãç½æ¯
- 温é³ç±»: ç¾èãéèãè±æ¤ãçå§ãæ¡å
- å¥è¾ç±»: èè¡ä»ãè¯èãæè±
**å¿é£é£ç©**:
- çå·å¯å: å°æ·æ·ãå°é饮æãçé±¼ç
- æ²¹è
»åå³: æ²¹ç¸é£åãè¥è
- è¾è¾£ç¥ç: è¾£æ¤ãè±æ¤
**æ¨èé£è°±**:
1. é»èªç鸡
2. å±±è¯ç²¥
3. 红æ£è¯èç²¥
4. å½å½çå§ç¾è汤
**饮é£å»ºè®®**:
- å°é£å¤é¤,ç»å¼æ
¢å½
- 饮é£å®æ¸©ç,å¿çå·
- é¥åéå½ä¼æ¯
### èµ·å±
è°æ
**使¯å»ºè®®**:
- ä¿è¯å
è¶³ç¡ç (8å°æ¶ä»¥ä¸)
- æ©ç¡æèµ·
- é¿å
ç¬å¤
**ç¯å¢è¦æ±**:
- ä¿æç¯å¢æ¸©æå¹²ç¥
- é¿å
åé£å¯
- 注æä¿æ,ç¹å«æ¯è
°è
¹é¨åèé¨
**çæ´»ä¹ æ¯**:
- é¿å
è¿åº¦å³ç´¯
- å³é¸ç»å
- å¯éå½æå¤ªé³
- 温水泡è
### è¿å¨é»ç¼
**åå**: 温åè¿å¨,é¿å
å§ç
**æ¨èè¿å¨**:
- å¤ªææ³
- å
«æ®µé¦
- æ£æ¥
- æ°å
- çä¼½
**è¿å¨å»ºè®®**:
- é¢ç: æ¯æ¥1-2次
- æ¶é¿: æ¯æ¬¡20-30åé
- 强度: ä½è³ä¸ç强度
- 注æ: 以䏿å°è¿åº¦ç²å³ä¸ºå®
**注æäºé¡¹**:
- é¿å
å§çè¿å¨
- è¿å¨å忶伿¯
- å¾ªåºæ¸è¿
- é¿å
å¨å¯å·ç¯å¢ä¸è¿å¨
### æ
å¿è°æ
**åå**: ä¿æå¿æ
èç
,é¿å
è¿åº¦æè
**è°ææ¹æ³**:
- ä¿æç§¯æä¹è§
- é¿å
è¿åº¦æè
- éå½åå 社交活å¨
- å¦ä¼æ¾æ¾
**æ
绪管ç**:
- å¹å
Ȍ
´è¶£ç±å¥½
- ä¿æç¤¾äº¤æ´»å¨
- å¦ä¼è°èæ
绪
### ç©´ä½ä¿å¥
**æ¨èç©´ä½**:
#### 1. è¶³ä¸é
- **ä½ç½®**: å°è
¿å¤ä¾§,èç¼ä¸3寸
- **åæ**: å¥è¾çæ°,强壮身ä½
- **æ¹æ³**: æ¯æ¥ææ3-5åé,å¯è¾ç¸
#### 2. æ°æµ·
- **ä½ç½®**: èèä¸1.5寸
- **åæ**: å¹è¡¥å
æ°
- **æ¹æ³**: æ¯æ¥ææ3-5åé,å¯è¾ç¸
#### 3. å
³å
- **ä½ç½®**: èèä¸3寸
- **åæ**: å¹å
åºæ¬,温补è¾é³
- **æ¹æ³**: æ¯æ¥ææ3-5åé,å¯è¾ç¸10-15åé
### ä¸è¯è°ç
â ï¸ **éè¦æé**: 以ä¸å
容ä»
ä¾ä¸å»å¸åè,ä¸å¯èªè¡æè¯æç¨
**æ¨èæ¹å**: åååæ±¤å å
**æ¹æº**: ãå¤ªå¹³æ æ°åå屿¹ã
**æ¹åç»æ**:
- 人å: 9-15g, 大补å
æ°
- ç½æ¯: 9-12g, å¥è¾çæ°
- è¯è: 9-15g, å¥è¾æ¸æ¹¿
- çè: 6-9g, è°å诸è¯
**éçå å**:
- æ°èéè
: å é»èª 15-30g
- è¾è湿çè
: å èè¡ä» 15-30g, æè± 10-15g
- é£å°è
¹èè
: å éç® 6-9g, ç ä» 3-6g
**ç¨æ³**: æ°´ç
æ,æ¥ä¸å,åæ©æä¸¤æ¬¡æ¸©æ
**注æäºé¡¹**:
- â ï¸ éç»ä¸ä¸ä¸å»å¸è¾¨è¯å使ç¨
- â ï¸ åå¦ãå¿ç«¥ãä½å¼±è
éå»å¸æå¯¼
- â ï¸ æè¯æé´å¿é£çå·ãæ²¹è
»ãè¾è¾£é£ç©
- â ï¸ æååç§æ¶æåæç¨
- â ï¸ æç¨æé´åºç°ä¸è¯ååºç«å³åç¨å¹¶å°±å»
---
## å£èè°å
»å»ºè®®
### æ¥å£è°å
»
- å
»é³ä¸ºä¸»,顺åºçå乿°
- å¤é£éèãè èãå±±è¯
- ä¿æå¿æ
èç
,éå½è¿å¨
- 注æé²é£ä¿æ
### å¤å£è°å
»
- æ¸
æç,å
»å¿ç¥
- å¤é£ç»¿è±ãå¬çãè¦ç
- 注æé²æé温
- ä¿æå¿æ
å¹³å
### ç§å£è°å
»
- å
»æ¶æ¶¦ç¥,å
»èº
- å¤é£é¶è³ãç¾åãæ¢¨
- 注æä¿æ,é¿å
åå
- ä¿ææ
绪稳å®
### å¬å£è°å
»
- å
»è为主,温补è¾é³
- å¤é£ç¾èãæ ¸æ¡ãæ å
- 注æä¿æ,ç¹å«æ¯è
°è
¹é¨
- æ©ç¡æèµ·,é¿å
è¿åº¦å³ç´¯
---
## ä¸å
¶ä»å¥åº·ææ çå
³è
### ä½è´¨ä¸è¥å
»
- æ°èè´¨ãé³èè´¨: 宿¸©è¡¥é¥®é£
- é´èè´¨ãæ¹¿çè´¨: 宿¸
淡饮é£
- ç°æ¹¿è´¨: å®ä½èä½ç³,æ§å¶ä½é
### ä½è´¨ä¸è¿å¨
- æ°èè´¨ãé³èè´¨: 温åè¿å¨ä¸ºä¸»
- 湿çè´¨ãç°æ¹¿è´¨: é度å 强è¿å¨å¼ºåº¦
- é´èè´¨: é¿å
å§çè¿å¨
### ä½è´¨ä¸ç¡ç
- æ°èè´¨ãé³èè´¨: ä¿è¯å
è¶³ç¡ç
- é´èè´¨: é¿å
ç¬å¤
- æ°éè´¨: çèè§£é,æ¹åç¡ç è´¨é
### ä½è´¨ä¸æ
¢æ§ç
- ç°æ¹¿è´¨: ææ£é«è¡åãç³å°¿ç
ãé«èè¡ç
- 湿çè´¨: ææ£ä»£è°¢ç»¼åå¾
- è¡çè´¨: ææ£å¿è¡ç®¡ç¾ç
- æ°éè´¨: ææ£æéçãç¦èç
---
## å»å¦å®å
¨è¾¹ç
â ï¸ **éè¦å£°æ**
æ¬åæä»
ä¾å¥åº·åè,䏿æå»çè¯æææ²»ç建议ã
### åæè½åèå´
â
**è½åå°**:
- ä¸å»ä½è´¨è¾¨è¯è¯ä¼°
- ä½è´¨ç¹å¾åæ
- ä¸è¬æ§å
»ç建议
- ä¸å»ç¥è¯æ®å
- ä½è´¨è¶å¿è¿½è¸ª
â **ä¸åå°**:
- ä¸å»ç¾ç
è¯æ
- ä¸è¯å¤æ¹å¼å
·
- æ¿ä»£ä¸å»å¸è¯ç
- éç¸çæ²»çæä½
- å¤ç严éå¥åº·é®é¢
### å±é©ä¿¡å·æ£æµ
å¨åæè¿ç¨ä¸æ£æµä»¥ä¸å±é©ä¿¡å·:
1. **严éä½è´¨åé¢**:
- åä¸åé¢ä½è´¨å¾å > 80å
- å¤ç§åé¢ä½è´¨å
¼å¤¹
2. **å¥åº·é£é©æç¤º**:
- ç°æ¹¿è´¨ â é«è¡åãç³å°¿ç
é£é©
- 湿çè´¨ â 代谢综åå¾é£é©
- è¡çè´¨ â å¿è¡ç®¡ç¾ç
é£é©
- æ°éè´¨ â æéçé£é©
3. **å°±å»å¼å¯¼**:
- çä¼¼ç¾ç
çç¶ â 建议就å»
- éè¦ä¸è¯æ²»ç â å¨è¯¢ä¸å»å¸
- ä½è´¨è°çæ æ â 寻æ±ä¸ä¸å¸®å©
### 建议å级
**Level 1: ä¸è¬æ§å»ºè®®**
- åºäºä¸å»ä½è´¨ç论
- éç¨äºä¸è¬äººç¾¤
- æ éå»ççç£
**Level 2: åèæ§å»ºè®®**
- åºäºç¨æ·ä½è´¨åå¥åº·ç¶åµ
- éç»å个人æ
åµ
- 建议å¨è¯¢ä¸å»å¸
**Level 3: å»ç建议**
- æ¶åä¸è¯è°ç
- éä¸å»å¸ç¡®è®¤
- ä¸å¾èªè¡æç¨ä¸è¯
---
## æ°æ®ç»æ
### ä½è´¨è¯ä¼°è®°å½
```json
{
"date": "2025-06-20",
"questionnaire": {
"questions": [
{
"id": 1,
"constitution": "æ°èè´¨",
"question": "æ¨å®¹æç²ä¹å?",
"answer": 4,
"weight": 1.0
}
],
"total_questions": 60
},
"results": {
"primary_constitution": "æ°èè´¨",
"secondary_constitutions": ["é³èè´¨"],
"constitution_scores": {
"å¹³åè´¨": 42.1,
"æ°èè´¨": 78.5,
"é³èè´¨": 62.3,
"é´èè´¨": 32.1,
"ç°æ¹¿è´¨": 38.7,
"湿çè´¨": 28.4,
"è¡çè´¨": 25.6,
"æ°éè´¨": 35.2,
"ç¹ç¦è´¨": 18.3
},
"constitution_type": "compound"
},
"characteristics": {
"physical": ["容æç²å³", "æ°ç", "èªæ±"],
"psychological": ["æ§æ ¼å
å", "ä¸å欢说è¯"]
},
"recommendations": {
"diet": {
"principles": ["è¡¥æ°å¥è¾", "温补è¾é³"],
"beneficial": ["å±±è¯", "大æ£", "é»èª"],
"avoid": ["çå·å¯å", "æ²¹è
»åå³"]
},
"exercise": "温åè¿å¨,å¦å¤ªææ³ãæ£æ¥",
"lifestyle": "è§å¾ä½æ¯,é¿å
è¿åº¦å³ç´¯",
"acupoints": ["è¶³ä¸é", "æ°æµ·", "å
³å
"]
}
}
åèèµæº
ä¸å»ä½è´¨ç论
- ãä¸å»ä½è´¨åç±»ä¸å¤å®ãæ å
- çç¦ä¹ç§ä½è´¨å¦è¯´
- ãä¸å»ä½è´¨å¦ãææ
å »çåå
- ä¸å»åºç¡ç论
- åå£å »çåå
- è¾¨è¯æ½æ²»åå
ä¸è¯æ¹å
- ãæ¹åå¦ãææ
- ãå¤ªå¹³æ æ°åå屿¹ã
- ãéå®è¦ç¥ã
æè½çæ¬: v1.0 åå»ºæ¥æ: 2026-01-08 ç»´æ¤è : WellAlly Tech