κ°λ¨ν μμ κ΄λ¦¬ μμ€ν μ μν MCP(Model Context Protocol) μλ²μ λλ€. λ€λ₯Έ Task Manager μ λ¬λ¦¬ μ¬μ©κ³Ό μ€μΉκ° λ§€μ° κ°λ¨νκ³ , μ§κ΄μ μ΄λ©°, μμ λͺ©λ‘μ μμ°¨μ μΌλ‘ μ§ννκ³ μ§ν μνλ₯Ό μΆμ ν μ μμ΅λλ€.
ν΄μΌν μΌμ text νμΌμ μ°¨λ‘λλ‘ ν λ¬Έλ¨μ© κΈ°μ νκ³ , μ°¨λ‘λλ‘ ν΄λΉ μΌμ μννκ² λ©λλ€. μ¦ ν μΌ λͺ©λ‘ μ²λΌ ν둬ννΈλ₯Ό μ¬κ±°λ λ§λ λ€μμ νλμ© μννλ μΌμ ν©λλ€. ν μΌ λͺ©λ‘μ μμ νκ±°λ μΆκ° νκ±°λ μμ νκ±°λ μμ λ‘κ² μ¬μ©κ°λ₯νκ³ , μμ λ λ΄μ©μ λ°λ‘ μ μ©ν μ μμ΅λλ€.
tasks_peek() # νμ¬ μμ
νμΈλλ μμ°μ΄λ‘: "νμ¬ ν μΌμ΄ λμΌ?", "μ§κΈ ν΄μΌ ν μμ μ?", "λ€μμ λ ν΄μΌ ν΄?"
tasks_next() # λ€μ μμ
κ°μ Έμ€κΈ°λλ μμ°μ΄λ‘: "λ€μ μΌμ μνν΄μ€", "λ€μ μμ μ 보μ¬μ€", "λ€μ ν μΌμ λμΌ?"
show_task_table() # μ 체 μμ
λͺ©λ‘ νμΈ (ν νν)λλ μμ°μ΄λ‘: "ν μΌ λͺ©λ‘μ 보μ¬μ€", "μ 체 μμ λͺ©λ‘μ΄ λμΌ?", "λͺ κ°μ μμ μ΄ μμ΄?"
explain_tasks_detailed() # μ 체 λ΄μ©μ΄ ν¬ν¨λ μμΈ λͺ©λ‘λλ μμ°μ΄λ‘: "μμΈν ν μΌ λͺ©λ‘μ 보μ¬μ€", "μ 체 λ΄μ©κ³Ό ν¨κ» ν μΌ λͺ©λ‘μ 보μ¬μ€"
tasks_reset() # μμ
ν¬μΈν° 리μ
λλ μμ°μ΄λ‘: "μ²μλΆν° λ€μ μμνκ³ μΆμ΄", "μμ μ 리μ ν΄μ€", "λ€μ μ²μλΆν° μμν΄"
tasks_goto(3) # 4λ²μ§Έ μμ
μΌλ‘ μ΄λλλ μμ°μ΄λ‘: "3λ²μ§Έ μμ μΌλ‘ 건λλ°κ³ μΆμ΄", "4λ²μ§Έ μμ μΌλ‘ μ΄λν΄μ€", "μμ 3μΌλ‘ κ°μ€"
tasks_auto() # λͺ¨λ λ¨μ μμ
μλ μνλλ μμ°μ΄λ‘: "λ¨μ ν μΌμ λͺ¨λ μνν΄μ€", "λͺ¨λ μΌμ λ€ ν΄μ€", "λλ¨Έμ§ μμ μ νλ²μ μ²λ¦¬ν΄μ€"
tasks_auto(3) # 3κ° μμ
μ νλ²μ μνλλ μμ°μ΄λ‘: "5κ°μ μΌμ νλ²μ μνν΄μ€", "3κ° μμ μ λμμ μ²λ¦¬ν΄μ€", "λ€μ 2κ° μμ μ νλ²μ ν΄μ€"
touch_simple() # .simple λλ ν 리 μμ±λλ μμ°μ΄λ‘: "νλ‘μ νΈμ .simple ν΄λλ₯Ό λ§λ€μ΄μ€", "μμ ν΄λλ₯Ό μμ±ν΄μ€"
tasks_complete(0) # 0λ² μμ
μ μλ£λ‘ νμλλ μμ°μ΄λ‘: "0λ² μμ μ μλ£ν΄μ€", "첫 λ²μ§Έ μμ μ λλμ΄"
tasks_uncomplete(0) # 0λ² μμ
μ λ―Έμλ£λ‘ λλ리기λλ μμ°μ΄λ‘: "0λ² μμ μ λ―Έμλ£λ‘ λλλ €μ€", "첫 λ²μ§Έ μμ μ λ€μ νκ² ν΄μ€"
tasks_reset_status() # λͺ¨λ μμ
μ λκΈ° μ€μΌλ‘ λλ리기λλ μμ°μ΄λ‘: "λͺ¨λ μμ μνλ₯Ό μ΄κΈ°νν΄μ€", "μμ μνλ₯Ό 리μ ν΄μ€"
sync_tasks() # μμ
λͺ©λ‘κ³Ό μν κ°μ λκΈ°νλλ μμ°μ΄λ‘: "μμ λͺ©λ‘κ³Ό μνλ₯Ό λκΈ°νν΄μ€", "λκΈ°νν΄μ€"
show_rules() # νμ¬ μ μ©λλ κ·μΉ νμλλ μμ°μ΄λ‘: "νμ¬ κ·μΉμ 보μ¬μ€", "μ μ©λλ κ·μΉμ΄ λμΌ?"
π 15κ° ν¨μλ§ μλ©΄ λ! 볡μ‘ν μ€μ μ΄λ λͺ λ Ήμ΄ μμ΄ κ°λ¨ν ν¨μ νΈμΆλ§μΌλ‘ μμ μ κ΄λ¦¬ν μ μμ΅λλ€.
π‘ μμ°μ΄λ‘λ μ€ν κ°λ₯! Cursorλ Claudeμμλ "λ€μ ν μΌμ΄ λμΌ?"λΌκ³ λ§νλ©΄ μλμΌλ‘ tasks_next()κ° μ€νλ©λλ€.
π μλ κ°μ§: MCP μλ²κ° Cursorμ νμ¬ μν¬μ€νμ΄μ€λ₯Ό μλμΌλ‘ κ°μ§ν©λλ€!
π 2λ¨κ³ μν μμ€ν : λͺ¨λ μμ μ λκΈ° μ€([λκΈ°]) β μλ£(β ) μμλ‘ μ§νλ©λλ€!
π μλ 보μ: κΈ°λ³Έ 보μ κ·μΉμ΄ μλμΌλ‘ μ μ©λμ΄ μ€μν νμΌλ€μ 보νΈν©λλ€!
π μλ λκΈ°ν: μμ λͺ©λ‘μ΄ λ³κ²½λλ©΄ μλμΌλ‘ μνμ λκΈ°νλ©λλ€!
μ΄κ² μ λΆμ λλ€! 볡μ‘ν μ€μ μ΄λ λͺ λ Ήμ΄ μμ΄ κ°λ¨ν ν¨μ νΈμΆλ§μΌλ‘ μμ μ κ΄λ¦¬ν μ μμ΅λλ€.
1λ¨κ³: μμ νμΌ μμ±
# .simple/simple_task.txt
λ‘κ·ΈμΈ νλ©΄ λ§λ€κΈ°
λμ보λ ꡬννκΈ°
μ¬μ©μ κ΄λ¦¬ κΈ°λ₯ μΆκ°νκΈ°2λ¨κ³: Cursorμμ μ¬μ©
# ν μΌ λͺ©λ‘ νμΈ
show_task_table()
# μΆλ ₯:
# | λ²νΈ | μν | ν μΌ λ΄μ© |
# |------|------|-----------|
# | 0 | [λκΈ°] | λ‘κ·ΈμΈ νλ©΄ λ§λ€κΈ° |
# | 1 | [λκΈ°] | λμ보λ ꡬννκΈ° |
# | 2 | [λκΈ°] | μ¬μ©μ κ΄λ¦¬ κΈ°λ₯ μΆκ°νκΈ° |
# νμ¬ μμ
νμΈ
tasks_peek()
# μΆλ ₯: π νμ¬ μμ
0: λ‘κ·ΈμΈ νλ©΄ λ§λ€κΈ°
# μμ
μλ£
tasks_complete(0) # 0λ² μμ
μλ£
# λ€μ μμ
μ§ν
tasks_next()
# μΆλ ₯: β
μμ
0 μλ£ ν λ€μ μμ
μΌλ‘ μ§ν: λμ보λ ꡬννκΈ°λλ μμ°μ΄λ‘:
- "ν μΌ λͺ©λ‘μ 보μ¬μ€" β μλμΌλ‘
show_task_table()μ€ν - "νμ¬ ν μΌμ΄ λμΌ?" β μλμΌλ‘
tasks_peek()μ€ν - "λ€μ ν μΌμ 보μ¬μ€" β μλμΌλ‘
tasks_next()μ€ν
3λ¨κ³: κ³μ μ§ν
tasks_next() # λμ보λ ꡬννκΈ°
tasks_next() # μ¬μ©μ κ΄λ¦¬ κΈ°λ₯ μΆκ°νκΈ°
# λͺ¨λ μμ
μλ£! β
μμ°μ΄λ‘λ κ°λ₯:
- "0λ² μμ μ μλ£ν΄μ€" β 0λ² μμ μ μλ£λ‘ νμ
- "λ€μ μμ μ 보μ¬μ€" β λμ보λ ꡬννκΈ°
- "κ·Έ λ€μμ?" β μ¬μ©μ κ΄λ¦¬ κΈ°λ₯ μΆκ°νκΈ°
- "μμ μνλ₯Ό μ΄κΈ°νν΄μ€" β λͺ¨λ μμ μ λκΈ° μ€μΌλ‘ λλ리기
μλ μν κΈ°λ₯:
# λ¨μ λͺ¨λ μμ
μ νλ²μ μν
tasks_auto()
# μΆλ ₯: π μλμΌλ‘ λͺ¨λ λ¨μ μμ
(2κ°)μ μ€λΉνμ΅λλ€: [1] λμ보λ ꡬννκΈ°, [2] μ¬μ©μ κ΄λ¦¬ κΈ°λ₯ μΆκ°νκΈ°
# νΉμ κ°μμ μμ
λ§ μν
tasks_auto(1) # 1κ° μμ
λ§ μν
# μμ°μ΄λ‘λ κ°λ₯
# "λ¨μ ν μΌμ λͺ¨λ μνν΄μ€" β λͺ¨λ μμ
νλ²μ μ²λ¦¬
# "5κ°μ μΌμ νλ²μ μνν΄μ€" β 5κ° μμ
λμ μ²λ¦¬- μμ λͺ©λ‘ κ΄λ¦¬: λΉ μ€λ‘ ꡬλΆλ μμ λ€μ μμ°¨μ μΌλ‘ μ²λ¦¬
- 2λ¨κ³ μν μμ€ν : λκΈ°([λκΈ°]) β μλ£(β ) μν μΆμ
- μ§ν μν μΆμ : νμ¬κΉμ§ μλ£λ μμ μΈλ±μ€μ μν μ μ₯
- κ·μΉ μ μ©: κ° μμ μ κ³΅ν΅ κ·μΉ μλ μ μ©
- MCP νΈν: Cursor, Claude λ± MCPλ₯Ό μ§μνλ λꡬλ€κ³Ό μ°λ
- μμ°μ΄ μ€ν: ν¨μλͺ μ λͺ°λΌλ μμ°μ΄λ‘ μμ μμ² κ°λ₯
- μλ μν: λ¨μ μμ λ€μ ν λ²μ λλ μ§μ λ κ°μλ§νΌ μλ μ²λ¦¬
- λ°°μΉ μ²λ¦¬: μ¬λ¬ μμ μ λμμ μ²λ¦¬νμ¬ ν¨μ¨μ± κ·Ήλν
- μν μ μ΄: κ°λ³ μμ μ μλ£, λ―Έμλ£, μν μ΄κΈ°ν κΈ°λ₯
- μλ λκΈ°ν: μμ λͺ©λ‘ λ³κ²½ μ μνμ μλ λκΈ°ν
- ν΄μ κΈ°λ° μν κ΄λ¦¬: μμ λ΄μ© λ³κ²½ μ μλ κ°μ§
- 보μ κ·μΉ: κΈ°λ³Έ 보μ κ·μΉ μλ μ μ©μΌλ‘ μ€μ νμΌ λ³΄νΈ
νλ‘μ νΈ/
βββ .simple/
β βββ simple_task.txt # μμ
λͺ©λ‘
β βββ simple_rule.txt # κ³΅ν΅ κ·μΉ (μ νμ¬ν)
β βββ simple_state.json # μ§ν μν
βββ simple_task_mcp.py # MCP μλ²
# κ°μνκ²½ μμ±
python -m venv venv
# κ°μνκ²½ νμ±ν (macOS/Linux)
source venv/bin/activate
# κ°μνκ²½ νμ±ν (Windows)
venv\Scripts\activate
# μμ‘΄μ± μ€μΉ
pip install -r requirements.txtμ€μ μλ£ ν Cursorλ₯Ό μ¬μμνλ©΄ MCP μλ²κ° μλμΌλ‘ μ€νλ©λλ€.
Cursor μ€μ μμ΄ μλμΌλ‘ μ€ννλ €λ©΄:
# κΈ°λ³Έ μ€ν
python simple_task_mcp.py
# λλ uv μ¬μ© (κΆμ₯)
uv run simple_task_mcp.py첫 λ²μ§Έ μμ
μ μμ±νμΈμ
λ λ²μ§Έ μμ
μ μμ±νμΈμ
μ¬λ¬ μ€λ‘ κ΅¬μ± κ°λ₯ν©λλ€
μΈ λ²μ§Έ μμ
μ μμ±νμΈμ곡ν΅μΌλ‘ μ μ©ν κ·μΉμ μμ±νμΈμ
μ: μ½λ© κ°μ΄λλΌμΈ, μμ
μμΉ λ±Cursorμμ MCP μλ²λ₯Ό μλμΌλ‘ μ€ννλ €λ©΄ μ€μ μ λ€μμ μΆκ°νμΈμ:
- macOS:
Cmd + ,λλCursor > Preferences - Windows/Linux:
Ctrl + ,λλFile > Preferences > Settings
μ€μ μμ mcpServersλ₯Ό κ²μνκ³ λ€μ JSONμ μΆκ°νμΈμ:
macOS/Linux μμ :
{
"mcpServers": {
"simple-task-mcp": {
"name": "Simple Task MCP",
"command": "/Users/bert/simpletask/venv/bin/python",
"args": [
"/Users/bert/simpletask/simple_task_mcp.py",
"--project-root",
"."
],
"type": "stdio",
"env": {
"PYTHONUNBUFFERED": "1"
}
}
}
}Windows μμ :
{
"mcpServers": {
"simple-task-mcp": {
"name": "Simple Task MCP",
"command": "D:/drumgit/simple_task_mcp/venv/Scripts/python.exe",
"args": [
"D:/drumgit/simple_task_mcp/simple_task_mcp.py",
"--project-root",
"."
],
"type": "stdio",
"env": {
"PYTHONUNBUFFERED": "1"
}
}
}
}μ μ€μ μμ λ€μ κ²½λ‘λ₯Ό μ€μ κ²½λ‘λ‘ μμ νμΈμ:
command: κ°μνκ²½μ Python μ€ν νμΌ κ²½λ‘args:simple_task_mcp.pyνμΌμ μ λ κ²½λ‘
β οΈ νμ μ€μ :argsλ°°μ΄μ λ°λμ"--project-root", "."λ₯Ό ν¬ν¨ν΄μΌ ν©λλ€!
"args": [
"/path/to/simple_task_mcp.py",
"--project-root",
"."
]μ΄ μ€μ μ΄ μμΌλ©΄:
.simpleν΄λκ° MCP μλ² μ€ν μμΉμ μμ±λ©λλ€- μ€μ μμ νλ νλ‘μ νΈ ν΄λκ° μλ λ€λ₯Έ κ³³μ νμΌμ΄ μμ±λ©λλ€
- MCP λκ΅¬κ° μ¬λ°λ₯Έ νλ‘μ νΈλ₯Ό μ°Ύμ§ λͺ»ν©λλ€
μ΄ μ€μ μ΄ μμΌλ©΄:
.simpleν΄λκ° νμ¬ Cursor μν¬μ€νμ΄μ€μ μμ±λ©λλ€simple_task.txt,simple_rule.txt,simple_state.jsonνμΌμ΄ μ¬λ°λ₯Έ μμΉμ μμ±λ©λλ€
μ€μ μ μ₯ ν Cursorλ₯Ό μ¬μμνλ©΄:
- MCP μλ²κ° μλμΌλ‘ λ°±κ·ΈλΌμ΄λμμ μ€ν
- μμ λꡬλ€μ΄ μλμΌλ‘ μ¬μ© κ°λ₯
- λ³λ ν°λ―Έλ μ€ν λΆνμ
μλ κ°μ§: MCP μλ²κ° Cursorμ νμ¬ μν¬μ€νμ΄μ€ 루νΈ(CWD)λ₯Ό μλμΌλ‘ κ°μ§ν©λλ€!
show_task_table() # λͺ¨λ μμ
λͺ©λ‘μ ν ννλ‘ νμ (μν ν¬ν¨)
explain_tasks_detailed() # μ 체 λ΄μ©μ΄ ν¬ν¨λ μμΈ μμ
λͺ©λ‘
tasks_peek() # νμ¬ μμ
νμΈ (μ§ννμ§ μμ)
tasks_peek_with_rules() # νμ¬ μμ
νμΈ (κ·μΉ ν¬ν¨)tasks_complete(0) # 0λ² μμ
μ μλ£λ‘ νμ
tasks_uncomplete(0) # 0λ² μμ
μ λ―Έμλ£λ‘ λλ리기
tasks_reset_status() # λͺ¨λ μμ
μνλ₯Ό λκΈ° μ€μΌλ‘ μ΄κΈ°νtasks_next() # λ€μ μμ
κ°μ Έμ€κΈ° λ° μ§ν
tasks_next_with_rules() # λ€μ μμ
κ°μ Έμ€κΈ° λ° μ§ν (κ·μΉ ν¬ν¨)
tasks_reset() # μ²μλΆν° λ€μ μμ
tasks_goto(2) # 3λ²μ§Έ μμ
μΌλ‘ μ΄λ (0λΆν° μμ)tasks_auto() # λ¨μ λͺ¨λ μμ
μ νλ²μ μν
tasks_auto(3) # 3κ° μμ
μ νλ²μ μνtouch_simple() # .simple λλ ν 리 μμ±
show_rules() # νμ¬ μ μ©λλ κ·μΉ νμ
sync_tasks() # μμ
λͺ©λ‘κ³Ό μν κ°μ λκΈ°νsimple_state.json νμΌμ νμ¬ μ§ν μνμ μμ
μνκ° μ μ₯λ©λλ€:
{
"index": 2,
"completed_tasks": [0, 1],
"completed_hashes": ["a1b2c3d4", "e5f6g7h8"],
"task_hashes": {
"0": "a1b2c3d4",
"1": "e5f6g7h8",
"2": "i9j0k1l2"
}
}index: 2λ 3λ²μ§Έ μμ κΉμ§ μλ£νλ€λ μλ―Έcompleted_tasks: μλ£λ μμ λ²νΈ λͺ©λ‘completed_hashes: μλ£λ μμ μ ν΄μκ° λͺ©λ‘task_hashes: κ° μμ μ νμ¬ ν΄μκ°- λ€μ μ€ν μ 4λ²μ§Έ μμ λΆν° μμ
- μ΄κΈ°ν:
simple_state.jsonμμ μ§ν μνμ μμ μν λ‘λ - μμ
λ‘λ©:
simple_task.txtμμ μμ λͺ©λ‘ μ½κΈ° - κ·μΉ μ μ©:
simple_rule.txtμ κ·μΉμ κ° μμ μμ μΆκ° - μν κ΄λ¦¬: 2λ¨κ³ μν μμ€ν μΌλ‘ μμ μ§ν μΆμ
- μμ μ€ν: μμ°¨μ μΌλ‘ μμ μ§ν
- μν μ μ₯: μλ£λ μμ
μΈλ±μ€μ μνλ₯Ό
simple_state.jsonμ μ μ₯ - μλ λκΈ°ν: μμ λͺ©λ‘ λ³κ²½ μ μνμ μλ λκΈ°ν
- μμ μ΄ μμ§ μμλμ§ μμ μν
- κΈ°λ³Έ μνλ‘, λͺ¨λ μ μμ μ μ΄ μνλ‘ μμ
tasks_complete(index)λ‘ μλ£λ‘ λ³κ²½ κ°λ₯
- μμ μ΄ μ±κ³΅μ μΌλ‘ μλ£λ μν
tasks_complete(index)λ‘ μ€μ tasks_uncomplete(index)λ‘ λκΈ° μ€μΌλ‘ λλ리기 κ°λ₯tasks_reset_status()λ‘ λͺ¨λ μμ μ λκΈ° μ€μΌλ‘ μ΄κΈ°ν κ°λ₯
λκΈ° μ€([λκΈ°]) ββ μλ£(β
)
λͺ¨λ μμ μ μλμΌλ‘ μ μ©λλ κΈ°λ³Έ 보μ κ·μΉ:
# π¨ κΈ°λ³Έ 보μ κ·μΉ (μλ μ μ©)
# - .simple ν΄λμ κ·Έ μμ νμΌλ€μ μ λ μμ νμ§ λ§μΈμ
# - simple_task.txt, simple_state.json, simple_rule.txt λ±μ 보쑴λμ΄μΌ ν©λλ€
# - νμνλ©΄ λ€λ₯Έ λ°©λ²μ μ¬μ©νμΈμ (μ: νμΌ λ΄μ© μμ , μ νμΌ μμ± λ±)
# - ν΄λ ꡬ쑰λ₯Ό λ³κ²½νκ±°λ μμ νμ§ λ§μΈμ
- μν¬μ€νμ΄μ€ νμΈ: Cursorμμ μ¬λ°λ₯Έ νλ‘μ νΈ ν΄λλ₯Ό μ΄μλμ§ νμΈ
- κ°μνκ²½ νμΈ: μ¬λ°λ₯Έ Python κ²½λ‘ μ¬μ©
- νμΌ κ²½λ‘ νμΈ:
.simpleλλ ν 리μ νμΌλ€μ΄ μ‘΄μ¬νλμ§ νμΈ - Cursor μ¬μμ: μ€μ λ³κ²½ ν Cursor μμ μ¬μμ
- μ€μ νμΈ:
mcpServersμ€μ μ΄ μ¬λ°λ₯Έμ§ νμΈ - μλ μμ±:
.simpleν΄λκ° μμΌλ©΄ MCP μλ²κ° μλμΌλ‘ μμ±ν©λλ€
- νμΌ νμ: UTF-8 μΈμ½λ©μΌλ‘ μ μ₯
- ꡬλΆμ: λΉ μ€λ‘ μμ μ ꡬλΆ
- νμΌ μμΉ:
.simpleλλ ν 리 λ΄μ μμΉ
- μλ λκΈ°ν:
sync_tasks()λ‘ κ°μ λκΈ°ν - ν΄μ νμΈ: μμ λ΄μ©μ΄ λ³κ²½λμλμ§ νμΈ
- μν μ΄κΈ°ν:
tasks_reset_status()λ‘ λͺ¨λ μν μ΄κΈ°ν
| λꡬ | μ€λͺ | μ¬μ©λ² |
|---|---|---|
show_task_table() |
μμ λͺ©λ‘μ ν ννλ‘ νμ | show_task_table() |
explain_tasks_detailed() |
μμΈν μμ λͺ©λ‘ νμ | explain_tasks_detailed() |
tasks_peek() |
νμ¬ μμ νμΈ | tasks_peek() |
tasks_peek_with_rules() |
νμ¬ μμ νμΈ (κ·μΉ ν¬ν¨) | tasks_peek_with_rules() |
tasks_complete(index) |
μμ μ μλ£λ‘ νμ | tasks_complete(0) |
tasks_uncomplete(index) |
μμ μ λ―Έμλ£λ‘ λλ리기 | tasks_uncomplete(0) |
tasks_next() |
λ€μ μμ μΌλ‘ μ§ν | tasks_next() |
tasks_next_with_rules() |
λ€μ μμ μΌλ‘ μ§ν (κ·μΉ ν¬ν¨) | tasks_next_with_rules() |
tasks_reset() |
μ²μλΆν° λ€μ μμ | tasks_reset() |
tasks_goto(index) |
νΉμ μμ μΌλ‘ μ΄λ | tasks_goto(2) |
tasks_auto(count) |
μλμΌλ‘ μμ μν | tasks_auto() λλ tasks_auto(3) |
tasks_reset_status() |
λͺ¨λ μμ μν μ΄κΈ°ν | tasks_reset_status() |
touch_simple() |
.simple λλ ν 리 μμ± | touch_simple() |
show_rules() |
νμ¬ μ μ©λλ κ·μΉ νμ | show_rules() |
sync_tasks() |
μμ λͺ©λ‘κ³Ό μν κ°μ λκΈ°ν | sync_tasks() |
λ‘κ·ΈμΈ νλ©΄μ λ§λ€μ΄μ€
λμ보λλ₯Ό λ§λ€μ΄μ€
μ¬μ©μ κ΄λ¦¬ κΈ°λ₯μ μΆκ°ν΄μ€
- μ¬μ©μ λͺ©λ‘ μ‘°ν
- μ¬μ©μ μ 보 μμ
- μ¬μ©μ μμ μ½λ© κ°μ΄λλΌμΈ:
1. λͺ
ννκ³ μ½κΈ° μ¬μ΄ μ½λ μμ±
2. μλ¬ μ²λ¦¬λ₯Ό ν¬ν¨ν μμ ν μ½λ μμ±
3. μ μ ν μ£Όμκ³Ό λ¬Έμνλ²κ·Έ 리ν¬νΈλ κΈ°λ₯ μ μμ μ΄μλ‘ λ±λ‘ν΄μ£ΌμΈμ.
simple_rule.txt νμΌμ μμ±λ λ£°μ λͺ¨λ μμ
μ μλμΌλ‘ μ μ©λ©λλ€. κ° μμ
μ μ€νν λλ§λ€ λ£°μ΄ μλμΌλ‘ μμ μΆκ°λμ΄ μ λ¬λ©λλ€.
# .simple/simple_rule.txt
μ½λ© κ°μ΄λλΌμΈ:
1. λͺ
ννκ³ μ½κΈ° μ¬μ΄ μ½λ μμ±
2. μλ¬ μ²λ¦¬λ₯Ό ν¬ν¨ν μμ ν μ½λ μμ±
3. μ μ ν μ£Όμκ³Ό λ¬Έμν
4. λ³μλͺ
μ λκ° λ΄λ μ μ μκ² λͺ
ννκ² μμ±
5. μ½λ λ³κ²½μ΄ μ½λλ‘ μ μ°¨μ μΌλ‘ μμ±- μμ
λ‘λ©:
simple_task.txtμμ μμ λͺ©λ‘ μ½κΈ° - λ£° λ‘λ©:
simple_rule.txtμμ κ³΅ν΅ λ£° μ½κΈ° - μλ κ²°ν©: κ° μμ μμ λ£°μ μλμΌλ‘ μΆκ°
- μ λ¬: λ£°μ΄ ν¬ν¨λ μμ ν μμ μ AIμκ² μ λ¬
μμ
νμΌ (.simple/simple_task.txt):
λ‘κ·ΈμΈ νλ©΄μ λ§λ€μ΄μ€
λμ보λλ₯Ό ꡬνν΄μ€λ£° νμΌ (.simple/simple_rule.txt):
μ½λ© κ°μ΄λλΌμΈ:
- λͺ
ννκ³ μ½κΈ° μ¬μ΄ μ½λ μμ±
- μλ¬ μ²λ¦¬λ₯Ό ν¬ν¨ν μμ ν μ½λ μμ±μ΅μ’ μ λ¬λλ μμ :
μ½λ© κ°μ΄λλΌμΈ:
- λͺ
ννκ³ μ½κΈ° μ¬μ΄ μ½λ μμ±
- μλ¬ μ²λ¦¬λ₯Ό ν¬ν¨ν μμ ν μ½λ μμ±
λ‘κ·ΈμΈ νλ©΄μ λ§λ€μ΄μ€
- μΌκ΄μ±: λͺ¨λ μμ μ λμΌν κ°μ΄λλΌμΈ μ μ©
- ν¨μ¨μ±: λ§€λ² λ£°μ 볡μ¬/λΆμ¬λ£κΈ° ν νμ μμ
- μ μ§λ³΄μ: λ£°λ§ μμ νλ©΄ λͺ¨λ μμ μ μλ λ°μ
- νμ§ ν₯μ: AIκ° νμ μ΅μ λ£°μ λ°λΌ μμ μν
- λ£° νμΌ μμ ν MCP μλ² μ¬μμ νμ
- λ£°μ΄ λ무 κΈΈλ©΄ μμ λ΄μ©μ΄ κ°λ €μ§ μ μμ
- λ£°κ³Ό μμ μ¬μ΄μ μ μ ν ꡬλΆμ μν λΉ μ€ ν¬ν¨ κΆμ₯
μμ
λͺ©λ‘(simple_task.txt)μ΄ λ³κ²½λλ©΄ κΈ°μ‘΄ μν(simple_state.json)μ λΆμΌμΉκ° λ°μν μ μμ΅λλ€.
- ν΄μ κΈ°λ° κ°μ§: κ° μμ μ λ΄μ©μ ν΄μκ°μΌλ‘ μ μ₯νμ¬ λ³κ²½ κ°μ§
- μλ μν μ‘°μ : μμ μ΄ μΆκ°/μμ /μμ λλ©΄ μνλ₯Ό μλμΌλ‘ μ‘°μ
- μλ£ μν 보쑴: κΈ°μ‘΄μ μλ£λ μμ μ λ΄μ©μ΄ λμΌν ν μλ£ μν μ μ§
# μλ λκΈ°ν μ€ν
sync_tasks()
# λλ μμ°μ΄λ‘
# "μμ
λͺ©λ‘κ³Ό μνλ₯Ό λκΈ°νν΄μ€"π μμ
λͺ©λ‘κ³Ό μν λκΈ°ν μλ£!
π νμ¬ μν:
- μ΄ μμ
μ: 5κ°
- μλ£λ μμ
: 2κ°
- νμ¬ μΈλ±μ€: 2
π λκΈ°νλ μμ
λͺ©λ‘:
0. β
λ‘κ·ΈμΈ νλ©΄ λ§λ€κΈ° (ν΄μ: a1b2c3d4)
1. β
λμ보λ ꡬννκΈ° (ν΄μ: e5f6g7h8)
2. [λκΈ°] μ¬μ©μ κ΄λ¦¬ κΈ°λ₯ μΆκ°νκΈ° (ν΄μ: i9j0k1l2)
3. [λκΈ°] API λ¬Έμ μμ±νκΈ° (ν΄μ: m3n4o5p6)
4. [λκΈ°] ν
μ€νΈ μ½λ μμ±νκΈ° (ν΄μ: q7r8s9t0)
μ΄ νλ‘μ νΈλ MIT λΌμ΄μ μ€ νμ λ°°ν¬λ©λλ€.
- μμ λ‘μ΄ μ¬μ©: μ¬μ©, μμ , λ°°ν¬, μμ μ μ΄μ© λͺ¨λ μμ
- μ μκΆ νμ νμ: μμμμ λΌμ΄μ μ€ μ 보λ₯Ό μ μ§ν΄μΌ ν¨
- λ©΄μ± μ‘°ν: "μλ κ·Έλλ‘" μ 곡, μ± μ μμ
- νΈνμ±: λ€λ₯Έ λΌμ΄μ μ€μ μ μμ¬μ μ¬μ© κ°λ₯
# μ΄ μ½λλ₯Ό κ·Έλλ‘ μ¬μ© β
# μ΄ μ½λλ₯Ό μμ ν΄μ μ¬μ© β
# μ΄ μ½λλ₯Ό μμ
μ μΌλ‘ μ¬μ© β
# μ΄ μ½λλ₯Ό λ€λ₯Έ νλ‘μ νΈμ ν¬ν¨ β
# μ΄ μ½λλ₯Ό λ€λ₯Έ μ΄λ¦μΌλ‘ λ°°ν¬ β
# λ¨, μ μκΆ νμμ λΌμ΄μ μ€ μ 보 μ μ§ νμ β οΈμ¬μ© μ λ€μ μ 보λ₯Ό ν¬ν¨ν΄μΌ ν©λλ€:
- Copyright (c) 2024 Simple Task MCP
- MIT License - see LICENSE file for details
MIT λΌμ΄μ μ€λ λ§€μ° μμ λ‘μ§λ§, μ μκΆ νμλ νμμ λλ€.