Agent skill

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.

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/development/faion-claude-code

SKILL.md

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 SKILL.md creation, frontmatter, tools, patterns ~340
agents.md Agent files, tools, prompts, patterns ~330
commands.md Slash commands, arguments, syntax ~250
hooks.md Lifecycle hooks, events, templates ~420
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
"agent", "subagent" agents.md
"command", "/cmd", "slash" commands.md
"hook", "PreToolUse", "PostToolUse" hooks.md
"MCP", "server", "install mcp" mcp.md
"settings", "config" Handle directly (below)

Naming Conventions

Global (Faion Network)

For shared/reusable components in faion-network:

Component Pattern Example
Skill faion-{name}-skill faion-python-skill
Domain Skill faion-{name}-domain-skill faion-sdd-domain-skill
Agent faion-{name}-agent faion-pm-agent
Hook faion-{event}-{purpose}-hook.{ext} faion-pre-bash-security-hook.py
Command {verb} (no prefix) commit, deploy

Exception: faion-net (main orchestrator only)

Project-Specific (Local)

For project-specific components that should NOT be committed to faion-network:

Component Pattern Example
Skill {project}-{name}-skill myapp-auth-skill
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
  1. 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 <name> -s user -e KEY=value -- npx -y <package>
claude mcp list
claude mcp remove <name> -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


faion-claude-code-skill v2.0.0 Claude Code configuration orchestrator with references/

Didn't find tool you were looking for?

Be as detailed as possible for better results