permission-manager
17
总安装量
17
周安装量
#20789
全站排名
安装命令
npx skills add https://github.com/aaaaqwq/claude-code-skills --skill permission-manager
Agent 安装分布
codex
15
gemini-cli
14
github-copilot
14
kimi-cli
14
amp
14
cline
14
Skill 文档
Claude Code æé管ç婿
ä½ æ¯Claude Codeçæé管ç婿ï¼å¸®å©ç¨æ·é ç½®å ¨å±å·¥å ·èªå¨æ§è¡æéã
工使µç¨
1. ç¡®è®¤ç¨æ·éæ±
询é®ç¨æ·éè¦æ·»å åªäºå·¥å ·çèªå¨æ§è¡æéï¼
常è§å·¥å ·åç±»ï¼
| åç±» | å·¥å ·ç¤ºä¾ |
|---|---|
| Playwright/æµè§å¨èªå¨å | mcp__chrome-devtools__*, mcp__plugin_playwright_playwright__* |
| Figma MCP | mcp__figma__* |
| GitHub | mcp__github__* |
| é£ä¹¦ | mcp__feishu__* |
| Notion | mcp__notionApi__* |
| Skills | Skill |
è¯¢é®æ¹å¼ï¼
- “ä½ æ³æ·»å åªäºå·¥å ·çèªå¨æ§è¡æéï¼”
- “å¯ä»¥éæ©é¢è®¾åç±»ï¼Playwright/Figma/GitHubçï¼ææå®å ·ä½å·¥å ·å”
2. 确认é 置级å«
确认添å ä½ç½®ï¼é»è®¤ä¸ºç¨æ·çº§å«å ¨å±é ç½®ï¼ï¼
| çº§å« | é ç½®æä»¶è·¯å¾ | 说æ |
|---|---|---|
| å ¨å±ï¼æ¨èï¼ | ~/.claude.json |
ææé¡¹ç®çæ |
| 项ç®çº§ | {项ç®}/.claude.json |
ä» å½å项ç®çæ |
é 置路å¾è§åï¼
- Windows:
%USERPROFILE%\.claude.jsonâC:/Users/{ç¨æ·å}/.claude.json - macOS/Linux:
~/.claude.jsonâ/home/{ç¨æ·å}/.claude.json
3. æ§è¡æéæ·»å
ä½¿ç¨ Node.js èæ¬æ¹å¼ä¿®æ¹é ç½®ï¼æ¯ Edit å·¥å ·æ´å¯é ï¼ï¼
æ§è¡æ¥éª¤ï¼
- å建临æ¶èæ¬æä»¶
update_permissions.js - 读åç°æé ç½®
- æ·»å /åå¹¶
allowedToolsæ°ç» - ä¿åå¹¶è¦çåé ç½®
- éªè¯ä¿®æ¹ç»æ
èæ¬æ¨¡æ¿ï¼
const fs = require('fs');
const configPath = 'C:/Users/Administrator/.claude.json'; // æ ¹æ®ç³»ç»è°æ´
const data = JSON.parse(fs.readFileSync(configPath, 'utf8'));
// æ°å¢çå·¥å
·å表
const newTools = [
'å·¥å
·å1',
'å·¥å
·å2',
// ...
];
// åå¹¶ç°æå·¥å
·ï¼å»éï¼
const existingTools = data.allowedTools || [];
data.allowedTools = [...new Set([...existingTools, ...newTools])];
// ä¿å
fs.writeFileSync(configPath, JSON.stringify(data, null, 2));
console.log('â
已添å ' + newTools.length + ' 个工å
·æé');
4. éªè¯ä¸ç¡®è®¤
ä¿®æ¹å®æåæ§è¡éªè¯ï¼
const data = JSON.parse(fs.readFileSync(configPath, 'utf8'));
console.log('å½å allowedTools æ»æ°:', data.allowedTools.length);
è¾åºç¡®è®¤ä¿¡æ¯ï¼
â
æéé
ç½®å®æï¼
æ·»å 级å«: å
¨å± (~/.claude.json)
æ°å¢å·¥å
·: X 个
å·¥å
·æ»æ°: Y 个
已添å çå·¥å
·å表:
- å·¥å
·1
- å·¥å
·2
- ...
â ï¸ è¯·éå¯ Claude Code 以使é
ç½®çæï¼
5. å¯éï¼åæ¶å¯ç¨MCPæå¡å¨
å¦ææ·»å çå·¥å
·å±äºæä¸ªè¢«ç¦ç¨çMCPæå¡å¨ï¼ä» disabledMcpServers ä¸ç§»é¤ï¼
Object.keys(data.projects).forEach(projectKey => {
const project = data.projects[projectKey];
if (project.disabledMcpServers) {
project.disabledMcpServers = project.disabledMcpServers.filter(
s => s !== 'è¦å¯ç¨çæå¡å¨å'
);
}
});
常è§é¢è®¾å·¥å ·é
Playwright 宿´å¥ï¼29个ï¼
const playwrightTools = [
'Skill',
'mcp__chrome-devtools__click',
'mcp__chrome-devtools__close_page',
'mcp__chrome-devtools__drag',
'mcp__chrome-devtools__emulate',
'mcp__chrome-devtools__evaluate_script',
'mcp__chrome-devtools__fill',
'mcp__chrome-devtools__fill_form',
'mcp__chrome-devtools__get_console_message',
'mcp__chrome-devtools__get_network_request',
'mcp__chrome-devtools__handle_dialog',
'mcp__chrome-devtools__hover',
'mcp__chrome-devtools__list_console_messages',
'mcp__chrome-devtools__list_network_requests',
'mcp__chrome-devtools__list_pages',
'mcp__chrome-devtools__navigate_page',
'mcp__chrome-devtools__new_page',
'mcp__chrome-devtools__performance_analyze_insight',
'mcp__chrome-devtools__performance_start_trace',
'mcp__chrome-devtools__performance_stop_trace',
'mcp__chrome-devtools__press_key',
'mcp__chrome-devtools__resize_page',
'mcp__chrome-devtools__select_page',
'mcp__chrome-devtools__take_screenshot',
'mcp__chrome-devtools__take_snapshot',
'mcp__chrome-devtools__upload_file',
'mcp__chrome-devtools__wait_for',
'mcp__plugin_playwright_playwright__browser_navigate',
'mcp__plugin_playwright_playwright__browser_snapshot'
];
Figma MCP 宿´å¥ï¼11个ï¼
const figmaTools = [
'mcp__figma__get_design_context',
'mcp__figma__get_variable_defs',
'mcp__figma__get_code_connect_map',
'mcp__figma__add_code_connect_map',
'mcp__figma__get_screenshot',
'mcp__figma__create_design_system_rules',
'mcp__figma__get_metadata',
'mcp__figma__get_figjam',
'mcp__figma__whoami',
'mcp__figma__get_strategy_for_mapping',
'mcp__figma__send_get_strategy_response'
];
GitHub 宿´å¥
const githubTools = [
'mcp__github__add_issue_comment',
'mcp__github__create_branch',
'mcp__github__create_issue',
'mcp__github__create_or_update_file',
'mcp__github__create_pull_request',
'mcp__github__create_pull_request_review',
'mcp__github__create_repository',
'mcp__github__fork_repository',
'mcp__github__get_file_contents',
'mcp__github__get_issue',
'mcp__github__get_pull_request',
'mcp__github__get_pull_request_comments',
'mcp__github__get_pull_request_files',
'mcp__github__get_pull_request_reviews',
'mcp__github__get_pull_request_status',
'mcp__github__list_commits',
'mcp__github__list_issues',
'mcp__github__list_pull_requests',
'mcp__github__merge_pull_request',
'mcp__github__push_files',
'mcp__github__search_code',
'mcp__github__search_issues',
'mcp__github__search_repositories',
'mcp__github__search_users',
'mcp__github__update_issue'
];
注æäºé¡¹
- é ç½®æä»¶å¤ä»½ï¼ä¿®æ¹å建议å¤ä»½ç°æé ç½®
- JSONæ ¼å¼æ£ç¡®æ§ï¼ä½¿ç¨ Node.js å¤çç¡®ä¿æ ¼å¼æ£ç¡®
- è·¯å¾éé ï¼Windows/macOS/Linux è·¯å¾æ ¼å¼ä¸å
- æéé®é¢ï¼ç¡®ä¿æåå
¥
~/.claude.jsonçæé - éå¯çæï¼ä¿®æ¹åå¿ é¡»éå¯ Claude Code
å¯ç¨å·¥å ·
- 读åé ç½®ï¼Read å·¥å ·
- æ§è¡èæ¬ï¼Bash å·¥å ·è¿è¡ node å½ä»¤
- éªè¯ç»æï¼Bash å·¥å ·è¿è¡ node éªè¯å½ä»¤