Claude Code Plugins

Community-maintained marketplace

Feedback

moai-project-language-initializer

@modu-ai/moai-adk
142
0

Handle comprehensive project language and user setup workflows including language selection, agent prompt configuration, user profiles, team settings, and domain selection

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name moai-project-language-initializer
version 1.0.0
created Wed Nov 05 2025 00:00:00 GMT+0000 (Coordinated Universal Time)
updated Wed Nov 05 2025 00:00:00 GMT+0000 (Coordinated Universal Time)
status active
description Handle comprehensive project language and user setup workflows including language selection, agent prompt configuration, user profiles, team settings, and domain selection
keywords project, initialization, language, configuration, batch-questions, team-setup
allowed-tools Read, Write, Edit, MultiEdit, Glob, TodoWrite, AskUserQuestion

MoAI Project Language & User Initializer

This skill manages the comprehensive project initialization workflow that was previously handled in the 0-project.md command. It extracts the complex batched question patterns into a reusable, efficient skill that reduces user interactions while maintaining full functionality.

Core Responsibility

Handle all project setup workflows including:

  • Language selection (Korean, English, Japanese, Chinese)
  • Agent prompt language configuration (English vs Localized)
  • User nickname collection (max 20 chars)
  • Team mode configuration (GitHub settings, Git workflows)
  • Domain selection processes
  • Report generation settings with token cost warnings
  • MCP server configuration (Figma Access Token setup)

Usage Patterns

First-Time Project Initialization

# Complete setup workflow
Skill("moai-project-language-initializer")

# Executes: Basic Batch → Team Mode Batch (if applicable) → Report Generation → Domain Selection → MCP Configuration (if applicable)

Settings Modification

# Update specific settings
Skill("moai-project-language-initializer", mode="settings")

Team Mode Configuration

# Configure team-specific settings
Skill("moai-project-language-initializer", mode="team_setup")

Language Support Matrix

Language Code Conversation Language Agent Prompt Language Documentation Language
English en English English (recommended) English
Korean ko 한국어 English/Locale choice 한국어
Japanese ja 日本語 English/Locale choice 日本語
Chinese zh 中文 English/Locale choice 中文

Team Mode Workflows

Feature Branch + PR Workflow

  • Best for: Team collaboration, code reviews, audit trails
  • Process: feature/SPEC-{ID} branch → PR review → develop merge
  • Settings: spec_git_workflow: "feature_branch"

Direct Commit to Develop Workflow

  • Best for: Prototypes, individual projects, rapid iteration
  • Process: Direct develop commits (no branches)
  • Settings: spec_git_workflow: "develop_direct"

Per-SPEC Decision Workflow

  • Best for: Flexible teams, mixed project types
  • Process: Ask user for each SPEC
  • Settings: spec_git_workflow: "per_spec"

Token Cost Management

Report Generation Costs

Setting Tokens/Report Reports/Command Total Session Tokens Cost Impact
Enable 50-60 3-5 150-300 Full cost
Minimal 20-30 1-2 20-60 80% reduction
Disable 0 0 0 Zero cost

Agent Prompt Language Costs

Setting Language Token Efficiency Cost Impact
English English Baseline Standard
Localized Korean/Japanese/Chinese 15-20% more tokens Higher cost

Configuration Management

The skill automatically manages .moai/config.json persistence:

Basic Configuration Structure

{
  "language": {
    "conversation_language": "ko",
    "conversation_language_name": "한국어", 
    "agent_prompt_language": "localized"
  },
  "user": {
    "nickname": "GOOS",
    "selected_at": "2025-11-05T12:00:00Z"
  }
}

Team Mode Additional Configuration

{
  "github": {
    "auto_delete_branches": true,
    "spec_git_workflow": "feature_branch",
    "auto_delete_branches_rationale": "PR 병합 후 원격 브랜치 자동 정리",
    "spec_git_workflow_rationale": "SPEC마다 feature 브랜치 생성으로 팀 리뷰 가능"
  }
}

Report Generation Configuration

{
  "report_generation": {
    "enabled": true,
    "auto_create": false,
    "user_choice": "Minimal",
    "warn_user": true,
    "configured_at": "2025-11-05T12:00:00Z"
  }
}

Domain Selection Configuration

{
  "stack": {
    "selected_domains": ["frontend", "backend"],
    "domain_selection_date": "2025-11-05T12:00:00Z"
  }
}

Error Handling & Validation

Input Validation

  • Nickname: Max 20 characters, special characters allowed
  • Language selection: Must be from supported languages list
  • Domain selection: Multi-select with skip option
  • Team settings: Boolean and enum validation

Configuration Validation

  • JSON schema validation for config.json
  • Backward compatibility checks
  • Mode detection validation
  • Required field presence checks

Error Recovery

  • Graceful degradation for missing config sections
  • Default value application for invalid inputs
  • Retry mechanisms for failed batch calls
  • Rollback capability for partial configurations

Integration Points

With Alfred Commands

  • /alfred:0-project: Primary integration point
  • /alfred:1-plan: Uses domain selection for expert activation
  • /alfred:2-run: Applies language settings to sub-agent prompts
  • /alfred:3-sync: Respects report generation settings

With Other Skills

  • moai-alfred-ask-user-questions: Uses TUI survey patterns
  • moai-skill-factory: Can be invoked for skill template application
  • moai-alfred-agent-guide: Provides agent lineup based on domains

Configuration Dependencies

  • .moai/config.json: Primary configuration store
  • mode: Determines team vs personal workflow
  • github: Team-specific settings
  • language: Conversation and prompt language settings

Best Practices

For Users

  • Choose English for agent prompts to reduce token costs (15-20% savings)
  • Enable Minimal report generation for cost-effective operation
  • Configure team settings upfront for consistent workflow
  • Select relevant domains for expert agent activation

For Developers

  • Use batch patterns to minimize user interactions
  • Provide clear token cost warnings before expensive operations
  • Validate all inputs before persisting configuration
  • Maintain backward compatibility with existing config files

For Team Collaboration

  • Use Feature Branch + PR workflow for code review
  • Enable auto-delete branches for repository hygiene
  • Select appropriate domains for expert agent routing
  • Configure consistent language settings across team
  • Set up MCP servers with proper authentication (Figma tokens)

MCP Server Configuration

Figma Access Token Setup

When Figma MCP is detected in .claude/settings.json, guide users through token configuration:

Detection Logic

# Check if Figma MCP is configured
settings_path = Path(".claude/settings.json")
if settings_path.exists():
    settings = json.loads(settings_path.read_text())
    figma_configured = "mcpServers" in settings and "figma" in settings["mcpServers"]

Token Setup Workflow

  1. Verify Figma MCP Installation: Check for Figma in mcpServers configuration
  2. Guide Token Creation: Direct user to Figma developer portal
  3. Secure Token Storage: Configure environment variable or .env file
  4. Validation: Test Figma MCP connectivity

User Guidance Messages

🔐 Figma Access Token Setup Required

Your project has Figma MCP configured, but needs an access token:

Steps:
1. Visit: https://www.figma.com/developers/api#access-tokens
2. Create a new access token
3. Choose storage method:
   - Environment variable (recommended): export FIGMA_ACCESS_TOKEN=your_token
   - .env file: Add FIGMA_ACCESS_TOKEN=your_token to .env
   - Shell profile: Add to ~/.zshrc or ~/.bashrc

4. Restart Claude Code to activate token

Token Validation

def validate_figma_token():
    """Test Figma MCP connectivity with token"""
    # Try to access Figma files via MCP
    # Return success/failure with guidance

MCP Server Status Checking

Provide users with current MCP server status:

def check_mcp_status():
    """Check all configured MCP servers"""
    servers = {
        "context7": check_context7_mcp(),
        "figma": check_figma_mcp(),
        "playwright": check_playwright_mcp()
    }
    return servers

Implementation Notes

This skill extracts and consolidates the complex initialization logic from the original 0-project.md command (800 lines) into a focused, reusable skill (500 lines) while maintaining:

  • Full functionality: All original features preserved
  • UX improvements: Batch calling patterns maintained
  • Error handling: Comprehensive validation and recovery
  • Integration: Seamless compatibility with existing workflows
  • Performance: Optimized configuration management

The skill serves as a foundation for project initialization and can be extended with additional configuration patterns as needed.