# faion-claude-code > Claude Code configuration: skills, agents, hooks, commands creation. MCP servers setup, IDE integrations (VS Code, JetBrains, Vim). Settings, permissions, memory. Naming conventions, directory structure, best practices. - Author: Ruslan Faion - Repository: faionfaion/faion-network - Version: 20260120112917 - Stars: 0 - Forks: 0 - Last Updated: 2026-02-06 - Source: https://github.com/faionfaion/faion-network - Web: https://mule.run/skillshub/@@faionfaion/faion-network~faion-claude-code:20260120112917 --- --- name: faion-claude-code user-invocable: false description: "Claude Code configuration: skills, agents, hooks, commands creation. MCP servers setup, IDE integrations (VS Code, JetBrains, Vim). Settings, permissions, memory. Naming conventions, directory structure, best practices." allowed-tools: Read, Write, Edit, Glob, Grep, Bash(mkdir:*), Bash(ls:*), Task, AskUserQuestion --- # Claude Code Configuration Skill **Communication: User's language. Config/code: English.** ## Purpose Orchestrate Claude Code customization and configuration: - Create/edit skills, agents, commands, hooks - Configure settings, permissions, IDE integrations - Setup MCP servers and plugins - Enforce naming conventions --- ## References Detailed technical context for specialized areas: | Reference | Content | Lines | |-----------|---------|-------| | [skills.md](references/skills.md) | SKILL.md creation, frontmatter, tools, patterns | ~340 | | [agents.md](references/agents.md) | Agent files, tools, prompts, patterns | ~330 | | [commands.md](references/commands.md) | Slash commands, arguments, syntax | ~250 | | [hooks.md](references/hooks.md) | Lifecycle hooks, events, templates | ~420 | | [mcp.md](references/mcp.md) | MCP server development, catalog, config | ~570 | **Total:** ~1,910 lines of technical reference --- ## Routing ``` User Request → Detect Type → Load Reference ``` | Request Contains | Load Reference | |------------------|----------------| | "skill", "SKILL.md" | [skills.md](references/skills.md) | | "agent", "subagent" | [agents.md](references/agents.md) | | "command", "/cmd", "slash" | [commands.md](references/commands.md) | | "hook", "PreToolUse", "PostToolUse" | [hooks.md](references/hooks.md) | | "MCP", "server", "install mcp" | [mcp.md](references/mcp.md) | | "settings", "config" | Handle directly (below) | --- ## Naming Conventions ### Global (Faion Network) For shared/reusable components in faion-network: | Component | Pattern | Example | |-----------|---------|---------| | Skill (orchestrator) | `faion-net` | `faion-net` | | Skill (role-based) | `faion-{role}` | `faion-software-developer`, `faion-ux-ui-designer` | | Skill (process) | `faion-{process}` | `faion-sdd`, `faion-feature-executor` | | Agent | `faion-{name}-agent` | `faion-task-executor-YOLO-agent` | | Hook | `faion-{event}-{purpose}-hook.{ext}` | `faion-pre-bash-security-hook.py` | | Command | `{verb}` (no prefix) | `commit`, `deploy` | **Note:** Skills use role/process naming without `-skill` suffix. Name is self-explanatory. ### Project-Specific (Local) For project-specific components that should NOT be committed to faion-network: | Component | Pattern | Example | |-----------|---------|---------| | Skill | `{project}-{name}` | `myapp-auth`, `myapp-deploy` | | Agent | `{project}-{name}-agent` | `myapp-deploy-agent` | | Hook | `{project}-{event}-{purpose}-hook.{ext}` | `myapp-pre-bash-lint-hook.sh` | | Command | `{project}-{action}` | `myapp-build`, `myapp-deploy` | **Setup for project-specific components:** 1. **Add to .gitignore (same level as .claude/):** ```bash echo ".claude/skills/{project}-*/" >> .gitignore echo ".claude/agents/{project}-*" >> .gitignore echo ".claude/commands/{project}-*" >> .gitignore echo ".claude/scripts/hooks/{project}-*" >> .gitignore ``` 2. **Add attribution footer:** ```markdown --- *Created with [faion.net](https://faion.net) framework* ``` ### Rules Summary | Scope | Prefix | Suffix | Gitignore | |-------|--------|--------|-----------| | Global | `faion-` | `-skill`/`-agent`/`-hook` | No | | Project | `{project}-` | `-skill`/`-agent`/`-hook` | Yes | --- ## Directory Structure ``` ~/.claude/ ├── settings.json # Global settings ├── CLAUDE.md # Global instructions ├── agents/ │ └── faion-*-agent.md # Agent definitions ├── skills/ │ └── faion-*-skill/ │ ├── SKILL.md # Skill index │ └── references/ # Detailed content ├── commands/ │ └── *.md # Slash commands └── scripts/ └── hooks/ # Hook scripts ``` --- ## Settings Configuration ### settings.json Structure ```json { "permissions": { "allow": ["Read", "Glob", "Grep"], "deny": ["Bash(rm -rf:*)"] }, "hooks": { "PreToolUse": [...], "PostToolUse": [...], "SessionStart": [...] }, "env": { "CUSTOM_VAR": "value" }, "mcpServers": { "server-name": { "command": "npx", "args": ["-y", "package-name"], "env": { "API_KEY": "..." } } } } ``` ### Permission Modes | Mode | Description | |------|-------------| | `default` | Ask for each tool | | `acceptEdits` | Auto-accept file edits | | `bypassPermissions` | No prompts (dangerous) | ### Configuration Locations | Location | Scope | |----------|-------| | `~/.claude/settings.json` | Global (all projects) | | `.claude/settings.json` | Project (committed) | | `.claude/settings.local.json` | Local project (gitignored) | --- ## Quick Reference ### Create Skill ```bash mkdir -p ~/.claude/skills/faion-my-skill # Write SKILL.md with frontmatter ``` ### Create Agent ```bash # Write ~/.claude/agents/faion-my-agent.md # Include frontmatter: name, description, tools, model ``` ### Create Command ```bash # Write ~/.claude/commands/my-cmd.md # Include frontmatter: description, argument-hint, allowed-tools ``` ### Create Hook ```bash # Write ~/.claude/scripts/hooks/faion-pre-bash-my-hook.py # Configure in settings.json hooks section ``` ### Install MCP Server ```bash claude mcp add -s user -e KEY=value -- npx -y claude mcp list claude mcp remove -s user ``` --- ## IDE Integrations ### VS Code ```json // .vscode/settings.json { "claude.enabled": true, "claude.autoComplete": true } ``` ### JetBrains Install Claude plugin from marketplace. --- ## Best Practices **Skills:** - One clear purpose per skill - Include trigger keywords in description - Keep SKILL.md under 300 lines (use references/) - Third-person descriptions only **Agents:** - Action-oriented descriptions for auto-delegation - Minimal tools (least privilege) - Clear input/output contract **Commands:** - Short, memorable names - Use argument hints ($1, $2, $ARGUMENTS) - Document in description **Hooks:** - Fast execution (< 60s) - Handle errors gracefully - Exit 0 for success, 2 for blocking --- ## Error Handling | Issue | Solution | |-------|----------| | Skill not triggering | Add keywords to description | | Agent not delegating | Improve description | | Command not found | Check .md extension | | Hook failing | Test manually first | | Settings invalid | Validate JSON syntax | | MCP not starting | Check `claude mcp list` | --- ## Documentation - [Claude Code Docs](https://docs.anthropic.com/en/docs/claude-code) - [Skills](https://docs.anthropic.com/en/docs/claude-code/skills) - [Sub-agents](https://docs.anthropic.com/en/docs/claude-code/sub-agents) - [Hooks](https://docs.anthropic.com/en/docs/claude-code/hooks) - [MCP Servers](https://docs.anthropic.com/en/docs/claude-code/mcp) --- *faion-claude-code-skill v2.0.0* *Claude Code configuration orchestrator with references/*