πŸ”§ Claude Task Master μ™„μ „ μ„€μ • κ°€μ΄λ“œ

– AI 개발 μžλ™ν™”λ₯Ό μœ„ν•œ config.json λ§ˆμŠ€ν„°ν•˜κΈ°

Claude Task MasterλŠ” AI 기반 개발 μžλ™ν™” λ„κ΅¬λ‘œ, λ‹€μ–‘ν•œ AI λͺ¨λΈκ³Όμ˜ 연동을 톡해 개발 μ›Œν¬ν”Œλ‘œμš°λ₯Ό ν˜μ‹ μ μœΌλ‘œ κ°œμ„ ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이번 λΈ”λ‘œκ·Έμ—μ„œλŠ” 곡식 ꡬ성 κ°€μ΄λ“œ(configuration.md)λ₯Ό 기반으둜, Task Master의 μ„€μ • 방법과 μ£Όμš” κΈ°λŠ₯에 λŒ€ν•΄ μžμ„Ένžˆ μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€.


πŸ”§ Task Master ꡬ성 κ°œμš”

Task MasterλŠ” .task-master/config.json νŒŒμΌμ„ 톡해 λ‹€μ–‘ν•œ 섀정을 κ΄€λ¦¬ν•©λ‹ˆλ‹€. 이 ꡬ성 νŒŒμΌμ€ AI λͺ¨λΈ μ„€μ •, API ν‚€ 관리, μž‘μ—… μ €μž₯μ†Œ 경둜 λ“± 핡심적인 섀정을 ν¬ν•¨ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

πŸ“ κΈ°λ³Έ ꡬ성 파일 μ˜ˆμ‹œ

{
  "models": {
    "main": "claude-3-sonnet-20240229",
    "research": "perplexity",
    "fallback": "gpt-4"
  },
  "env": {
    "ANTHROPIC_API_KEY": "your-anthropic-api-key",
    "OPENAI_API_KEY": "your-openai-api-key",
    "PERPLEXITY_API_KEY": "your-perplexity-api-key"
  },
  "taskStorage": "./tasks"
}
  • models: μ£Όμš” μž‘μ—…μ— μ‚¬μš©ν•  AI λͺ¨λΈμ„ μ§€μ •ν•©λ‹ˆλ‹€.
  • env: 각 AI λͺ¨λΈμ— ν•„μš”ν•œ API ν‚€λ₯Ό μ„€μ •ν•©λ‹ˆλ‹€.
  • taskStorage: μž‘μ—… 데이터λ₯Ό μ €μž₯ν•  경둜λ₯Ό μ§€μ •ν•©λ‹ˆλ‹€.

🧠 AI λͺ¨λΈ μ„€μ •

Task MasterλŠ” λ‹€μ–‘ν•œ AI λͺ¨λΈκ³Όμ˜ 연동을 μ§€μ›ν•©λ‹ˆλ‹€. μ£Όμš” μ„€μ • ν•­λͺ©μ€ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€:

  • main: κΈ°λ³Έ μž‘μ—…μ— μ‚¬μš©ν•  λͺ¨λΈ (예: claude-3-sonnet-20240229)
  • research: 쑰사 μž‘μ—…μ— μ‚¬μš©ν•  λͺ¨λΈ (예: perplexity)
  • fallback: κΈ°λ³Έ λͺ¨λΈμ΄ μ‹€νŒ¨ν•  경우 μ‚¬μš©ν•  λŒ€μ²΄ λͺ¨λΈ (예: gpt-4)(GitHub)

각 λͺ¨λΈμ— λŒ€ν•œ API ν‚€λŠ” env ν•­λͺ©μ— μ„€μ •ν•˜λ©°, μ΄λŠ” λ³΄μ•ˆμƒ .env 파일둜 κ΄€λ¦¬ν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€.


πŸ—‚οΈ μž‘μ—… μ €μž₯μ†Œ 경둜 μ„€μ •

taskStorage ν•­λͺ©μ„ 톡해 μž‘μ—… 데이터λ₯Ό μ €μž₯ν•  경둜λ₯Ό μ§€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 기본값은 ./tasks이며, ν•„μš”μ— 따라 λ‹€λ₯Έ 경둜둜 λ³€κ²½ κ°€λŠ₯ν•©λ‹ˆλ‹€.


βš™οΈ ꡬ성 파일 생성 및 μ΄ˆκΈ°ν™”

Task Masterλ₯Ό μ„€μΉ˜ν•œ ν›„, λ‹€μŒ λͺ…λ Ήμ–΄λ‘œ ν”„λ‘œμ νŠΈλ₯Ό μ΄ˆκΈ°ν™”ν•˜λ©΄ κΈ°λ³Έ ꡬ성 파일이 μƒμ„±λ©λ‹ˆλ‹€:

task-master init

λ˜λŠ” MCPλ₯Ό μ‚¬μš©ν•˜λŠ” 경우, μ—λ””ν„°μ—μ„œ Claudeμ—κ²Œ λ‹€μŒκ³Ό 같이 μš”μ²­ν•  수 μžˆμŠ΅λ‹ˆλ‹€:

Task Masterλ₯Ό μ΄ˆκΈ°ν™”ν•΄μ€˜.

μ΄λ ‡κ²Œ ν•˜λ©΄ .task-master/config.json 파일이 μžλ™μœΌλ‘œ μƒμ„±λ˜λ©°, 이후 ν•„μš”ν•œ 섀정을 μΆ”κ°€ν•˜κ±°λ‚˜ μˆ˜μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.


πŸ› οΈ κ³ κΈ‰ μ„€μ •: λͺ¨λΈ ꡬ성 관리

Task MasterλŠ” task-master models λͺ…λ Ήμ–΄λ₯Ό 톡해 AI λͺ¨λΈ ꡬ성을 관리할 수 μžˆμŠ΅λ‹ˆλ‹€. μ£Όμš” λͺ…λ Ήμ–΄λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€:

  • λͺ¨λΈ λͺ©λ‘ 확인:
    task-master models

(GitHub)

  • λͺ¨λΈ μ„€μ • μΈν„°νŽ˜μ΄μŠ€ μ‹€ν–‰:
    task-master models –setup

(GitHub)

  • νŠΉμ • 역할에 λͺ¨λΈ μ„€μ •:
    task-master models –set-main claude-3-sonnet-20240229
    task-master models –set-research perplexity
    task-master models –set-fallback gpt-4

(GitHub)

μ΄λŸ¬ν•œ λͺ…λ Ήμ–΄λ₯Ό 톡해 각 역할에 μ ν•©ν•œ AI λͺ¨λΈμ„ μ†μ‰½κ²Œ μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.


πŸ§ͺ MCP 연동을 μœ„ν•œ ꡬ성

Cursor와 같은 μ—λ””ν„°μ—μ„œ MCPλ₯Ό ν™œμš©ν•˜λ €λ©΄, .cursor/mcp.json νŒŒμΌμ— λ‹€μŒκ³Ό 같은 섀정을 μΆ”κ°€ν•΄μ•Ό ν•©λ‹ˆλ‹€:

{
  "tools": {
    "taskmaster-ai": {
      "command": "npx",
      "args": ["-y", "--package=task-master-ai", "task-master-ai"],
      "env": {
        "ANTHROPIC_API_KEY": "your-anthropic-api-key",
        "OPENAI_API_KEY": "your-openai-api-key",
        "PERPLEXITY_API_KEY": "your-perplexity-api-key"
      }
    }
  }
}

이 섀정을 톡해 에디터 λ‚΄μ—μ„œ Claudeμ™€μ˜ 연동이 μ›ν™œν•˜κ²Œ 이루어지며, AI 기반의 μž‘μ—… μžλ™ν™”κ°€ κ°€λŠ₯ν•΄μ§‘λ‹ˆλ‹€.


βœ… 마무리

Task Master의 ꡬ성 νŒŒμΌμ€ AI λͺ¨λΈ μ„€μ •, API ν‚€ 관리, μž‘μ—… μ €μž₯μ†Œ 경둜 λ“± λ‹€μ–‘ν•œ 섀정을 톡해 개발 μ›Œν¬ν”Œλ‘œμš°λ₯Ό μ΅œμ ν™”ν•  수 μžˆλŠ” κ°•λ ₯ν•œ λ„κ΅¬μž…λ‹ˆλ‹€. 특히 λ‹€μ–‘ν•œ AI λͺ¨λΈκ³Όμ˜ 연동을 톡해 개발 생산성을 κ·ΉλŒ€ν™”ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

더 μžμ„Έν•œ λ‚΄μš©μ€ 곡식 ꡬ성 κ°€μ΄λ“œλ₯Ό μ°Έκ³ ν•˜μ‹œκΈ° λ°”λžλ‹ˆλ‹€.




λ‹€μŒμ€ Claude Task Master의 곡식 μ„€μ • λ¬Έμ„œ λ‚΄μš©μ„ ν•œκ΅­μ–΄λ‘œ λ²ˆμ—­ν•œ κ²ƒμž…λ‹ˆλ‹€:


πŸ“¦ μ„€μ •(Configuration)

Claude Task MasterλŠ” 섀정을 μœ„ν•΄ 두 κ°€μ§€ μ£Όμš” 방식을 μ‚¬μš©ν•©λ‹ˆλ‹€:


1. .taskmasterconfig 파일 (ν”„λ‘œμ νŠΈ λ£¨νŠΈμ— μœ„μΉ˜ – λŒ€λΆ€λΆ„μ˜ 섀정에 ꢌμž₯)

이 JSON νŒŒμΌμ—λŠ” AI λͺ¨λΈ 선택, νŒŒλΌλ―Έν„°, 둜그 레벨, ν”„λ‘œμ νŠΈ κΈ°λ³Έκ°’ λ“± λŒ€λΆ€λΆ„μ˜ 섀정이 μ €μž₯λ©λ‹ˆλ‹€.

πŸ” μœ„μΉ˜

  • task-master models --setup λͺ…령을 μ‹€ν–‰ν•˜λ©΄ ν”„λ‘œμ νŠΈ λ£¨νŠΈμ— μžλ™μœΌλ‘œ μƒμ„±λ©λ‹ˆλ‹€.
  • 일반적으둜 μ΄ˆκΈ°ν™” κ³Όμ • 쀑에 이 파일이 λ§Œλ“€μ–΄μ§‘λ‹ˆλ‹€.
  • 주의: 이 νŒŒμΌμ€ μˆ˜λ™μœΌλ‘œ 직접 μˆ˜μ •ν•˜μ§€ μ•ŠλŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€. μˆ˜μ •μ΄ ν•„μš”ν•œ 경우 temperature와 maxTokens μ •λ„λ§Œ μ‘°μ •ν•˜μ„Έμš”.

πŸ›  관리 방법

  • task-master models --setup λͺ…λ Ή λ˜λŠ” MCP λ‚΄ models 도ꡬλ₯Ό μ‚¬μš©ν•˜μ—¬ μΈν„°λž™ν‹°λΈŒν•˜κ²Œ 생성 및 관리할 수 μžˆμŠ΅λ‹ˆλ‹€.
  • λͺ¨λΈμ„ 직접 μ„€μ •ν•˜λ €λ©΄ λ‹€μŒκ³Ό 같이 λͺ…령을 μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€:
task-master models --set-main=claude-3-7-sonnet-20250219
task-master models --set-research=sonar-pro
task-master models --set-fallback=claude-3-5-sonnet
  • μ»€μŠ€ν…€ λͺ¨λΈμ„ μ“°λ €λ©΄ --ollama λ˜λŠ” --openrouter ν”Œλž˜κ·Έλ„ μΆ”κ°€ κ°€λŠ₯ν•©λ‹ˆλ‹€.

🧾 μ˜ˆμ‹œ ꡬ쑰

{
  "models": {
    "main": {
      "provider": "anthropic",
      "modelId": "claude-3-7-sonnet-20250219",
      "maxTokens": 64000,
      "temperature": 0.2
    },
    "research": {
      "provider": "perplexity",
      "modelId": "sonar-pro",
      "maxTokens": 8700,
      "temperature": 0.1
    },
    "fallback": {
      "provider": "anthropic",
      "modelId": "claude-3-5-sonnet",
      "maxTokens": 64000,
      "temperature": 0.2
    }
  },
  "global": {
    "logLevel": "info",
    "debug": false,
    "defaultSubtasks": 5,
    "defaultPriority": "medium",
    "projectName": "Your Project Name",
    "ollamaBaseUrl": "http://localhost:11434/api",
    "azureOpenaiBaseUrl": "https://your-endpoint.openai.azure.com/"
  }
}

2. ν™˜κ²½ λ³€μˆ˜ 파일 (.env λ˜λŠ” .cursor/mcp.json λ‚΄ env 블둝)

API ν‚€ 및 μ—”λ“œν¬μΈνŠΈ URL λ“± λ―Όκ°ν•œ μ •λ³΄μ—λ§Œ μ‚¬μš©λ©λ‹ˆλ‹€.

πŸ“ μœ„μΉ˜

  • CLI μ‚¬μš© μ‹œ: ν”„λ‘œμ νŠΈ λ£¨νŠΈμ— .env 파일 생성
  • MCP/Cursor μ‚¬μš© μ‹œ: .cursor/mcp.json 파일의 env μ„Ήμ…˜μ— API ν‚€ μ„€μ •

πŸ”‘ ν•„μˆ˜ API ν‚€ λͺ©λ‘ (μ„€μ •ν•œ ν”„λ‘œλ°”μ΄λ”μ— 따라 닀름)

  • ANTHROPIC_API_KEY: Anthropic API ν‚€
  • PERPLEXITY_API_KEY: Perplexity API ν‚€
  • OPENAI_API_KEY: OpenAI API ν‚€
  • GOOGLE_API_KEY: Google API ν‚€
  • MISTRAL_API_KEY: Mistral API ν‚€
  • AZURE_OPENAI_API_KEY: Azure용 OpenAI API ν‚€
    • 이 경우 AZURE_OPENAI_ENDPOINT도 ν•¨κ»˜ ν•„μš”
  • OPENROUTER_API_KEY: OpenRouter API ν‚€
  • XAI_API_KEY: X-AI API ν‚€

🌐 선택적 μ—”λ“œν¬μΈνŠΈ μž¬μ •μ˜ (.taskmasterconfigμ—μ„œ μ„€μ •)

  • AZURE_OPENAI_ENDPOINT: Azure μ‚¬μš© μ‹œ ν•„μˆ˜
  • OLLAMA_BASE_URL: κΈ°λ³Έ Ollama API URL을 μž¬μ •μ˜ κ°€λŠ₯ (κΈ°λ³Έ: http://localhost:11434/api)

⚠️ λͺ¨λΈ ID, maxTokens, temperature, logLevel, subtasks 등은 .taskmasterconfigμ—μ„œ κ΄€λ¦¬ν•˜λ©°, .envμ—μ„œ μ„€μ •ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.


πŸ’‘ .env μ˜ˆμ‹œ

# ν•„μš”ν•œ API ν‚€
ANTHROPIC_API_KEY=sk-ant-api03-your-key-here
PERPLEXITY_API_KEY=pplx-your-key-here
# OPENAI_API_KEY=sk-your-key-here
# GOOGLE_API_KEY=AIzaSy...

# 선택적 μ—”λ“œν¬μΈνŠΈ μž¬μ •μ˜
# AZURE_OPENAI_ENDPOINT=https://your-azure-endpoint.openai.azure.com/
# OLLAMA_BASE_URL=http://custom-ollama-host:11434/api

πŸ›  문제 ν•΄κ²° (Troubleshooting)

⚠️ μ„€μ • 였λ₯˜

  • .taskmasterconfig 파일이 μ—†κ±°λ‚˜ ꡬ성이 잘λͺ»λ˜μ—ˆλ‹€λŠ” μ—λŸ¬κ°€ λ°œμƒν•˜λ©΄: task-master models --setup 을 μ‹€ν–‰ν•˜μ—¬ νŒŒμΌμ„ μƒˆλ‘œ λ§Œλ“€κ±°λ‚˜ λ³΅κ΅¬ν•˜μ„Έμš”.
  • API ν‚€κ°€ μ˜¬λ°”λ₯Έ μœ„μΉ˜μ— μžˆλŠ”μ§€ 확인:
    • CLI μ‚¬μš©μž: .env 파일
    • MCP μ‚¬μš©μž: .cursor/mcp.json 파일

❌ task-master init λͺ…령이 μž‘λ™ν•˜μ§€ μ•Šμ„ 경우

node node_modules/claude-task-master/scripts/init.js

λ˜λŠ” GitHub μ €μž₯μ†Œλ₯Ό 직접 ν΄λ‘ ν•΄μ„œ μ‹€ν–‰:

git clone https://github.com/eyaltoledano/claude-task-master.git
cd claude-task-master
node scripts/init.js

λ‹΅κΈ€ 남기기

이메일 μ£Όμ†ŒλŠ” κ³΅κ°œλ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. ν•„μˆ˜ ν•„λ“œλŠ” *둜 ν‘œμ‹œλ©λ‹ˆλ‹€