Defines language usage conventions separating user communication from technical artifacts. Use when writing code, documentation, commits, or communicating with users in multilingual projects.
Automatically separates user communication from technical artifacts by using your project's language for messages/docs and English for code, comments, and identifiers.
/plugin marketplace add binee108/nine-step-workflow-plugin/plugin install nine-step-workflow@lilylab-marketplaceThis skill inherits all available tools. When active, it can use any tool Claude has access to.
{{USER_LANG}}: User communication, documentation, commits English: Code, comments, technical identifiers
| Artifact | Language | Why |
|---|---|---|
| User messages | {{USER_LANG}} | User's language |
| Code | English | International standard |
| Comments | English | Matches code |
| Variables/Functions | English | Part of code |
| Commits | {{USER_LANG}} | Team communication |
| Documentation | {{USER_LANG}} | User's language |
| Tags | English | Technical ID |
# User: {{USER_LANG}}
"{{User message in local language}}"
# Code: English
# @FEAT:{{feature-name}} @COMP:service @TYPE:core
class {{EntityName}}ValidationService:
'''Validates {{entities}} before submission'''
def validate(self, {{entity}}: dict) -> bool:
# Validate {{field}} is positive
if {{entity}}.get('{{field}}', 0) <= 0:
return False
return True
# User: {{USER_LANG}}
"{{Completion message in local language}}"
# ❌ {{USER_LANG}} in code
def {{local_language_function_name}}({{local_language_param}}): pass
# ❌ English to user
"Implementation complete."
# ✅ Correct
"{{Completion message in user language}}"
def {{english_function_name}}({{english_param}}): pass
# User communication: {{USER_LANG}}
# Code: English
# @FEAT:user-auth @COMP:service @TYPE:core
class AuthenticationService:
'''Handles user authentication'''
def authenticate(self, username: str, password: str) -> bool:
# Validate credentials
if not username or not password:
return False
return True
// User communication: {{USER_LANG}}
// Code: English
// @FEAT:user-auth @COMP:service @TYPE:core
class AuthenticationService {
/**
* Handles user authentication
*/
authenticate(username, password) {
// Validate credentials
if (!username || !password) {
return false;
}
return true;
}
}
// User communication: {{USER_LANG}}
// Code: English
// @FEAT:user-auth @COMP:service @TYPE:core
// AuthenticationService handles user authentication
type AuthenticationService struct{}
// Authenticate validates user credentials
func (s *AuthenticationService) Authenticate(username, password string) bool {
// Validate credentials
if username == "" || password == "" {
return false
}
return true
}
If your project uses English for all communication:
### Simplified Single-Language Policy
**English everywhere:** User communication, code, documentation, commits
| Artifact | Language |
|----------|----------|
| User messages | English |
| Code | English |
| Comments | English |
| Variables/Functions | English |
| Commits | English |
| Documentation | English |
| Tags | English |
**Consistency:** Use clear, professional English throughout all artifacts.
For detailed guidelines, see reference.md For more examples, see examples.md
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.