cx-config
npx skills add https://github.com/m19803261706/cx-workflow --skill cx-config
Agent 安装分布
Skill 文档
cx-config â 工使µé 置管ç
æ¦è¿°
æ¥çåä¿®æ¹ CX 工使µçæ ¸å¿é
ç½®ï¼å
æ¬å¼åè
æ è¯ãGitHub åæ¥æ¨¡å¼ãåè½å¼å
³çãææé
ç½®åå¨å¨ ${GIT_ROOT}/.claude/cx/config.json ä¸ã
æ§è¡æµç¨
Step 1: å®ä½é ç½®æä»¶
GIT_ROOT=$(git rev-parse --show-toplevel)
CONFIG_FILE="${GIT_ROOT}/.claude/cx/config.json"
if [ ! -f "$CONFIG_FILE" ]; then
echo "â 工使µæªåå§å"
echo "请å
è¿è¡: /cx-init"
exit 1
fi
Step 2: 读åå½åé ç½®
{
"version": "2.0",
"developer_id": "cx",
"github_sync": "collab",
"current_feature": "cx-payment",
"agent_teams": false,
"background_agents": false,
"code_review": true,
"auto_format": {
"enabled": true,
"formatter": "auto"
},
"hooks": {
"session_start": true,
"pre_compact": true,
"prompt_refresh_interval": 5,
"stop_verify": true,
"post_edit_format": true,
"notification": true,
"permission_auto_approve": true
}
}
Step 3: å±ç¤ºå½åé ç½®
âï¸ CX 工使µ â å½åé
ç½®
ð åºæ¬é
ç½®
ââ developer_id: cx
ââ github_sync: collab
ââ current_feature: cx-payment
ð¤ AI åè½
ââ agent_teams: false
ââ background_agents: false
ââ code_review: true
ð¨ 代ç å¤ç
ââ auto_format.enabled: true
ââ auto_format.formatter: auto
ð§ Hooks å¼å
³
ââ session_start: true
ââ pre_compact: true
ââ prompt_refresh_interval: 5
ââ stop_verify: true
ââ post_edit_format: true
ââ notification: true
ââ permission_auto_approve: true
ä¿®æ¹é
ç½®: /cx-config <åæ®µ> <å¼>
æè
: /cx-config (è¿å
¥äº¤äºå¼èå)
Step 4: 交äºå¼ä¿®æ¹èå
ä½¿ç¨ AskUserQuestion å±ç¤ºèåè®©ç¨æ·éæ©è¦ä¿®æ¹çé ç½®ï¼
éæ©è¦ä¿®æ¹çé
置项:
ãåºæ¬é
ç½®ã
1. developer_id (å½å: cx)
2. github_sync (å½å: collab)
3. current_feature (å½å: cx-payment)
ãAI åè½ã
4. agent_teams (å½å: false)
5. background_agents (å½å: false)
6. code_review (å½å: true)
ã代ç å¤çã
7. auto_format.enabled (å½å: true)
8. auto_format.formatter (å½å: auto)
ãHooks å¼å
³ã
9. session_start (å½å: true)
10. pre_compact (å½å: true)
11. prompt_refresh_interval (å½å: 5)
12. stop_verify (å½å: true)
13. post_edit_format (å½å: true)
14. notification (å½å: true)
15. permission_auto_approve (å½å: true)
0. è¿å
éæ© (è¾å
¥æ°åæç´æ¥è¾å
¥å段å):
é 置项详解
1. developer_id
ç±»å: å符串 é»è®¤å¼: 馿¬¡ /cx-init æ¶è®¾ç½® 说æ: å¼åè æ è¯ï¼ç¨äºï¼
- åè½ç®å½å½ååç¼
- Git commit author åç¼
- æ¥å¿åéç¥ä¸ç身份æ è¯
ä¿®æ¹ç¤ºä¾:
å½å: developer_id = "cx"
ä¿®æ¹ä¸º: "alice"
åè½ç®å½: features/alice-payment/ (èé cx-payment/)
2. github_sync
ç±»å: æä¸¾
å¯éå¼: off | local | collab | full
é»è®¤å¼: collab
忍¡å¼å¯¹æ¯
| æ¨¡å¼ | ææ¡£ Issue | ä»»å¡ Issue | PR | éç¨åºæ¯ |
|---|---|---|---|---|
off |
â | â | â | å人项ç®ãå 鍿µè¯ |
local |
â | â | â | å人å顾ãè®°å½ |
collab |
â (PRD/Design) | â | â (Summary) | 2-5 人å¢éæ¨è |
full |
â (å ¨é¨) | â (å ¨é¨) | â | 大å¢éãä¸¥æ ¼æµç¨ |
ä¿®æ¹ç¤ºä¾:
å½å: github_sync = "collab"
ä¿®æ¹ä¸º: "off"
ææ: cx-summary åç»ä¸å建 GitHub Issueï¼ä»
çææ¬å° summary.md
ä¿®æ¹æµç¨ (AskUserQuestion):
å½å GitHub åæ¥æ¨¡å¼: collab
éæ©æ°æ¨¡å¼:
â off â 纯æ¬å°ï¼ä¸åå»ºä»»ä½ GitHub Issue/PR
â¡ local â 宿æ¶åå»ºæ±æ» Issue
⢠collab â PRD/Design Doc å建 Issueï¼summary å建 Issue+PR (æ¨è)
⣠full â ææææ¡£é½å建 Issue
éæ© (1-4):
3. current_feature
ç±»å: å符串 é»è®¤å¼: 空å符串 说æ: å½åæ´»è·çåè½ slugãæå¨è®¾ç½®ç¨äºï¼
- /cx-status æ¥ç该åè½è¿åº¦
- /cx-exec é»è®¤æ§è¡è¯¥åè½çä»»å¡
- ä¼è¯ SessionStart hook èªå¨å 载该åè½ä¸ä¸æ
ä¿®æ¹ç¤ºä¾:
å½å: current_feature = "cx-payment"
ä¿®æ¹ä¸º: "cx-refund"
ææ: 䏿¬¡ /cx-exec æ§è¡ cx-refund ç¸å
³ä»»å¡
/cx-status å±ç¤º cx-refund çè¿åº¦
4. agent_teams
ç±»å: å¸å°å¼
é»è®¤å¼: false
说æ: æ¯å¦å¯ç¨ Agent Teams 模å¼ï¼åå端å¥çº¦åä½ï¼
å¯ç¨æ¡ä»¶:
- Claude Code å¿ é¡»æ¯æ Agent Teams ç¹æ§ï¼ç®åå®éªæ§ï¼
- é¡¹ç®ææç¡®çåå端åå·¥
- éè¦éè¿ API å¥çº¦éå®åå端对é½
å¯ç¨åçææ:
cx-plan æ§è¡æ¶:
ââ èªå¨è¯å«å端/å端任å¡åç»
cx-exec æ§è¡æ¶:
ââ å¯å¨ frontend-agentï¼å¤çå端任å¡ï¼
ââ å¯å¨ backend-agentï¼å¤çå端任å¡ï¼
ââ SubagentStop hook æ ¡éªåæ¹å¥çº¦ä¸è´æ§
ä¿®æ¹ç¤ºä¾:
å½å: agent_teams = false
ä¿®æ¹ä¸º: true
æç¤º: å¯ç¨åéè¦ Claude Code æ¯æ Agent Teamsï¼å»ºè®®å¨è¯¢ææ¡£
5. background_agents
ç±»å: å¸å°å¼
é»è®¤å¼: false
说æ: æ¯å¦å
许åå° agent è¿è¡
å¯ç¨åçææ:
cx-summary çæå:
ââ æ¬å°æ±æ»ç«å³å®æï¼ç¨æ·å¯ç»§ç»æä½ï¼
ââ GitHub 忥ï¼Issue/PR å建ï¼å¨åå°è¿è¡
ç¦ç¨æ¶çè¡ä¸º (é»è®¤):
cx-summary çæå:
ââ æ¬å°æ±æ»æ§è¡
ââ GitHub 忥é»å¡çå¾
ââ 宿åè¿å
6. code_review
ç±»å: å¸å°å¼
é»è®¤å¼: true
说æ: cx-exec å
¨é¨ä»»å¡å®æåï¼æ¯å¦æºè½è¯¢é®ä»£ç 审æ¥
å¯ç¨æ¶ (true):
ææä»»å¡å®æåï¼æç¤ºç¨æ·:
"ææä»»å¡å·²å®æãæ¯å¦è¿è¡ä»£ç 审æ¥ï¼"
ç¨æ·å¯é:
â å
¨é¢å®¡æ¥ (é»è¾ bug + å®å
¨ + è´¨é + æ¸
ç)
â¡ å¿«éæ£æ¥ (ä»
é»è¾ bug)
⢠跳è¿
ç¦ç¨æ¶ (false):
ä»»å¡å®æåç´æ¥è¿å
¥ cx-summary
è·³è¿ä»£ç å®¡æ¥æµç¨
ä¿®æ¹ç¤ºä¾:
å½å: code_review = true
ä¿®æ¹ä¸º: false
ææ: åç»æ§è¡ä¸å询é®ä»£ç 审æ¥
7. auto_format.enabled
ç±»å: å¸å°å¼
é»è®¤å¼: true
说æ: PostToolUse hook æ¯å¦èªå¨æ ¼å¼ååå
¥çæä»¶
å¯ç¨æ¶ (true):
Edit/Write å·¥å
·æ§è¡åï¼èªå¨è¿è¡ï¼
ââ JavaScript/TypeScript â prettier
ââ Python â black
ââ Go â gofmt
ââ Rust â rustfmt
ââ å
¶ä» â æ formatter æ£æµ
ç¦ç¨æ¶ (false):
æä»¶ä¸èªå¨æ ¼å¼åï¼éè¦æå¨è¿è¡ format å½ä»¤
8. auto_format.formatter
ç±»å: æä¸¾
å¯éå¼: auto | prettier | black | gofmt | rustfmt
é»è®¤å¼: auto
说æ: èªå¨æ ¼å¼åå·¥å
·éæ©
| å¼ | 说æ |
|---|---|
auto |
èªå¨æ£æµï¼æ ¹æ®æä»¶ç±»åéæ© |
prettier |
强å¶ä½¿ç¨ prettier (JS/TS/JSON) |
black |
强å¶ä½¿ç¨ black (Python) |
gofmt |
强å¶ä½¿ç¨ gofmt (Go) |
rustfmt |
强å¶ä½¿ç¨ rustfmt (Rust) |
ä¿®æ¹ç¤ºä¾:
å½å: auto_format.formatter = "auto"
ä¿®æ¹ä¸º: "prettier"
ææ: ææå¯æ ¼å¼åæä»¶é½ç¨ prettier å¤ç
9. hooks.session_start
ç±»å: å¸å°å¼
é»è®¤å¼: true
说æ: SessionStart hook æ¯å¦å¯ç¨
å¯ç¨æ¶ (true):
æ¯æ¬¡ä¼è¯å¼å§æ¶èªå¨æ§è¡:
ââ 读å status.json
ââ æ£æµä¸æä»»å¡
ââ å è½½ä¸ä¸ææè¦
ââ æç¤ºç¨æ·å¯ç¨æä½
ç¦ç¨æ¶ (false):
ä¼è¯ä¸èªå¨å è½½ä¸ä¸æ
éè¦æå¨ /cx-status æ¥è¯¢è¿åº¦
10. hooks.pre_compact
ç±»å: å¸å°å¼
é»è®¤å¼: true
说æ: PreCompact hook æ¯å¦å¯ç¨
å¯ç¨æ¶ (true):
compaction åèªå¨æ§è¡:
ââ çæ context-snapshot.md
ââ å½åä»»å¡å·
ââ å¥çº¦æè¦
ââ è¿åº¦ä¿¡æ¯
compaction 忢夿¶ä½¿ç¨ snapshot å¿«éæ¢å¤ä¸ä¸æ
11. hooks.prompt_refresh_interval
ç±»å: æ´æ°
é»è®¤å¼: 5
说æ: UserPromptSubmit hook æ¯éå¤å°è½®æ³¨å
¥ç®æ å·æ°
å¼å«ä¹:
0â ç¦ç¨ç®æ å·æ°N > 0â æ¯ N è½®æ³¨å ¥ä¸æ¬¡ï¼”å½åä»»å¡: #{n}, å©ä½: X”
ä¿®æ¹ç¤ºä¾:
å½å: prompt_refresh_interval = 5
ä¿®æ¹ä¸º: 3
ææ: æ¯ 3 轮对è¯èªå¨æ³¨å
¥ä¸æ¬¡è¿åº¦æé
12. hooks.stop_verify
ç±»å: å¸å°å¼
é»è®¤å¼: true
说æ: Stop hook æ¯å¦å¯ç¨
å¯ç¨æ¶ (true):
ç¨æ·è¦ç¦»å¼æ¶èªå¨æ£æ¥:
ââ 读å status.json
ââ æ£æµæ¯å¦æ in_progress 使ªå®æçä»»å¡
ââ 妿æï¼æéç¨æ·ç¡®è®¤
ç¦ç¨æ¶ (false):
ç¨æ·å¯ç´æ¥ç¦»å¼ï¼ä¸æé
13. hooks.post_edit_format
ç±»å: å¸å°å¼
é»è®¤å¼: true
说æ: PostToolUse hook èªå¨æ ¼å¼åæ¯å¦å¯ç¨
å¯ç¨æ¶ (true):
æ¯æ¬¡ Edit/Write åèªå¨æ§è¡ï¼
ââ è°ç¨ auto_format.formatter æ ¼å¼åæä»¶
ç¦ç¨æ¶ (false):
ä¸èªå¨æ ¼å¼å
ä¸ auto_format.enabled ç»å使ç¨
14. hooks.notification
ç±»å: å¸å°å¼
é»è®¤å¼: true
说æ: æ¯å¦å¯ç¨æ¡é¢éç¥
å¯ç¨æ¶ (true):
以ä¸äºä»¶åéæ¡é¢éç¥:
ââ cx-exec å
¨é¨ä»»å¡å®æ
ââ cx-fix å®æä¿®å¤
ââ cx-summary æ±æ»å®æ
éç¥æ¹å¼ (èªå¨æ£æµ):
- macOS:
osascript - Linux:
notify-send - Windows: PowerShell MessageBox
ç¦ç¨æ¶ (false):
ä¸åé任使¡é¢éç¥
15. hooks.permission_auto_approve
ç±»å: å¸å°å¼
é»è®¤å¼: true
说æ: æ¯å¦èªå¨æ¾è¡å®å
¨æä½
å¯ç¨æ¶ (true):
PermissionRequest hook èªå¨æ¹å以ä¸å½ä»¤:
ââ git add/commit/push/checkout/branch
ââ gh issue/pr/project
ââ npm test / pytest / cargo test / go test
ç¦ç¨æ¶ (false):
ææå½ä»¤é½éè¦ç¨æ·æå¨ç¡®è®¤
ä¿®æ¹æ¹å¼
æ¹å¼ 1: 交äºå¼èåï¼æ¨èï¼
/cx-config
â æ¾ç¤ºå½åé
ç½®
â æç¤ºéæ©è¦ä¿®æ¹ç项
â æ ¹æ®å段类åæä¾è¾å
¥/éæ©çé¢
æ¹å¼ 2: ç´æ¥å½ä»¤
/cx-config developer_id alice
/cx-config github_sync off
/cx-config code_review false
/cx-config hooks.notification true
åæ°éªè¯:
- å¿ é¡»æ¯ææçé ç½®åæ®µ
- å¼å¿ é¡»ä¸å段类åå¹é
- æä¸¾åæ®µåªæ¥åå 许çå¼
æ¹å¼ 3: æå¨ç¼è¾
vim ${GIT_ROOT}/.claude/cx/config.json
注æ: æå¨ç¼è¾åéè¦ç¡®ä¿ JSON æ ¼å¼æ£ç¡®ã
é 置修æ¹åçææ
ç«å³çæçé ç½®
- developer_id: 䏿¬¡å建åè½æ¶ä½¿ç¨
- current_feature: 䏿¬¡ /cx-exec ç«å³çæ
- code_review: 䏿¬¡ cx-exec 宿åç«å³çæ
- auto_format.enabled/formatter: 䏿¬¡ Write/Edit åç«å³çæ
- hooks.prompt_refresh_interval: 䏿¬¡ UserPromptSubmit ç«å³çæ
éè¦éæ°è¿è¡å½ä»¤çé ç½®
- github_sync: 䏿¬¡ /cx-summary æ¶çæ
- agent_teams: éè¦éæ° /cx-plan æè½åºç¨æ°çä»»å¡åç»
- background_agents: 䏿¬¡ /cx-summary æ¶çæ
Hooks å¼å ³
- ä¿®æ¹åç«å³çæäºä¸æ¬¡å¯¹åº hook 触å
- å
³é hook åä¸ä¼éåºæ¸
çï¼å¦ session_start=false å
å·²å è½½çä¸ä¸æç»§ç»ææï¼
宿´é ç½®å¤ä»½ä¸æ¢å¤
å¤ä»½å½åé ç½®
cp ${GIT_ROOT}/.claude/cx/config.json \
${GIT_ROOT}/.claude/cx/config.json.backup
ä»å¤ä»½æ¢å¤
cp ${GIT_ROOT}/.claude/cx/config.json.backup \
${GIT_ROOT}/.claude/cx/config.json
é ç½®éªè¯
ä¿®æ¹é ç½®æ¶èªå¨æ£æ¥ï¼
| åæ®µ | ææå¼ | 说æ |
|---|---|---|
developer_id |
é空å符串 | æå¤ 32 å符ï¼ä» è±æ°ä¸å线 |
github_sync |
off/local/collab/full | å¿ é¡»ä¸ºå è®¸å¼ |
current_feature |
å符串 | å¯ä¸ºç©º |
agent_teams |
true/false | å¸å°å¼ |
background_agents |
true/false | å¸å°å¼ |
code_review |
true/false | å¸å°å¼ |
auto_format.enabled |
true/false | å¸å°å¼ |
auto_format.formatter |
auto/prettier/… | å¿ é¡»ä¸ºå è®¸å¼ |
hooks.* |
å¸å°å¼/æ´æ° | æ ¹æ®å段类å |
常è§ä¿®æ¹åºæ¯
åºæ¯ 1: ä»å人模å¼åæ¢å°å¢éåä½
å½åé
ç½®:
github_sync: off
code_review: false
ä¿®æ¹ä¸º:
github_sync: collab
code_review: true
ç»æ: åç»å¼åä¼å建 GitHub Issue ä¾ reviewï¼æ¯æå¢éåä½
åºæ¯ 2: ç¦ç¨èªå¨æ ¼å¼å
ä¿®æ¹:
auto_format.enabled: false
ç»æ: åå
¥ç代ç ä¸èªå¨æ ¼å¼å
åºæ¯ 3: å ³éæ¡é¢éç¥
ä¿®æ¹:
hooks.notification: false
ç»æ: ä»»å¡å®æä¸ååééç¥
åºæ¯ 4: å éå¤§è§æ¨¡å¼å
ä¿®æ¹:
agent_teams: true (å¯ç¨åå端并è¡)
background_agents: true (åå° GitHub 忥)
hooks.prompt_refresh_interval: 10 (éä½å·æ°é¢ç)
ç»æ: å¤ agent å¹¶è¡å¼åï¼åå°äººå·¥çå¾
æ¶é´
æ éææ¥
| é®é¢ | è§£å³æ¹æ¡ |
|---|---|
| ä¿®æ¹åä¸çæ | æ£æ¥æ¯å¦éè¦éæ°è¿è¡å½ä»¤ï¼æéæ°å¯å¨ä¼è¯ |
| config.json æ ¼å¼é误 | ä½¿ç¨ jq éªè¯: jq . config.json |
| æ æ³åå ¥ config | æ£æ¥æä»¶æé: chmod 644 config.json |
| GitHub 忥ä¸å·¥ä½ | ç¡®ä¿ github_sync 䏿¯ offï¼ä¸æææç GitHub token |