generate-config-ymllisted
Install: claude install-skill MrPippi/MJP-Claude-Skills
# Generate Config YML Skill
## 目標
依使用者描述的插件功能,產生一份結構清晰、有完整預設值與繁體中文說明的 `config.yml`,並同步輸出對應的 Java `ConfigManager` 類別,提供型別安全的設定存取介面。
---
## 使用流程
1. **詢問功能清單**:使用者列出需要的設定項目(若未說明則依通用模板輸出)
2. **產生 config.yml**:含所有設定項目、預設值、繁體中文行內說明
3. **產生 ConfigManager.java**:封裝 `FileConfiguration` 存取,提供 getter 方法
4. **說明熱重載寫法**(可選)
---
## 輸入參數說明
| 參數 | 範例 | 說明 |
|------|------|------|
| `plugin_name` | `MyPlugin` | 用於 ConfigManager 類別命名 |
| `features` | `economy, cooldown, messages` | 功能分類清單 |
| `package` | `com.example.myplugin.managers` | ConfigManager 放置的套件 |
---
## 代碼範本
### config.yml(通用模板)
```yaml
# =============================================
# MyPlugin 配置檔案
# 版本:1.0.0
# 修改後請使用 /myplugin reload 重新載入
# =============================================
# ---- 基本設定 ----
general:
# 是否啟用除錯模式(輸出詳細 log)
debug: false
# 插件語言(目前支援 zh-tw、en)
language: zh-tw
# 資料儲存方式:sqlite 或 mysql
storage-type: sqlite
# ---- 經濟系統 ----
economy:
# 是否啟用經濟功能
enabled: true
# 新玩家初始金額
starting-balance: 1000.0
# 最大持有金額(-1 表示無限制)
max-balance: 1000000.0
# 貨幣符號(顯示用)
currency-symbol: "$"
# 貨幣名稱
currency-name: "金幣"
# ---- 冷卻時間設定 ----
cooldown:
# 指令冷卻時間(秒),-1 表示停用
command-cooldown: 30
# 是否告知玩家剩餘冷卻時間
show-remaining: true
# ---- 訊息設定 ----
messages:
# 前綴(支援 MiniMessage 格式)
prefix: "<gradient:#FF6B35:#FFD700>[MyPlugin]</gradient> "
no-permission: "<red>你沒有權限執行此操作。</red>"
player-only: "<red>此指令僅限玩家使用。</red>"
reload-success: "<green>配置已重新載入。</green>"
# ---- 資料庫設定(storage-typ