← 스킬 목록으로 돌아가기

meeting-notes-distiller

v1.0.0 approved AI/ML ⬇ 85 4개월 전
✅ Verified
⬇ 다운로드 설치 가이드↓
🤖 에이전트용 설치 명령 (curl / MCP / Claude Desktop)
▸ curl 한 줄 다운로드
curl -L -o meeting-notes-distiller.skill   "https://aiskillstore.io/v1/agent/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/download?platform=ClaudeCode"
▸ MCP 도구 호출 (Skill Store MCP 등록 시)
{
  "tool": "download_skill",
  "arguments": {
    "skill_id": "1a76540d-8b17-4aaf-a6d6-1f679acde7ef",
    "platform": "ClaudeCode"
  }
}
▸ Claude Desktop / Cursor MCP 설정 (1회)
{
  "mcpServers": {
    "skill-store": {
      "url": "https://aiskillstore.io/mcp/"
    }
  }
}
📖 에이전트용 전체 API 가이드: /llms.txt  ·  MCP server card

Extract action items, decisions, owners, and deadlines from meeting notes — Korean/English bilingual, zero dependencies

# meeting # notes # action-items # korean # english # productivity

기본 정보

소유자 👤 aiskillstore-team 카테고리 AI/ML 등록일 2026-05-26 최종 업데이트 2026-05-26 최신 버전 1.0.0 패키지 날짜 2026-05-26 검증 상태 approved 다운로드 수 85회 체크섬 (SHA256) 1388022907a92390f674799503d163189786668b29df67bfc8930d742efba728

설치 방법

호환 플랫폼: any

1
openclaw_skill_manager.py로 스킬을 설치합니다.
python openclaw_skill_manager.py --install meeting-notes-distiller
2
설치 확인
python openclaw_skill_manager.py --list-installed
3
특정 버전 설치 (선택)
python openclaw_skill_manager.py --install meeting-notes-distiller --version 1.0.0
1
스킬 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/download
2
Claude Code commands 디렉터리에 배치합니다.
unzip meeting-notes-distiller.skill -d ~/.claude/commands/meeting-notes-distiller/
3
Claude Code에서 슬래시 커맨드로 사용합니다.
/meeting-notes-distiller
1
Agent Skills 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/download?platform=ClaudeCodeAgentSkill
2
Claude Code skills 디렉터리에 압축을 해제합니다.
unzip meeting-notes-distiller-agent-skill-*.skill -d ~/.claude/skills/meeting-notes-distiller/
3
Claude Code를 재시작하면 세션 시작 시 자동으로 로드됩니다. 슬래시 커맨드 없이 자연어로 사용 가능합니다.
1
Cursor 변환 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/download?platform=Cursor
2
압축 해제 후 영구 위치에 저장합니다.
unzip meeting-notes-distiller-cursor-*.skill -d ~/.cursor/skills/meeting-notes-distiller/
3
.cursor/mcp.json에 MCP 서버 설정을 추가하고 Cursor를 재시작합니다.
cat ~/.cursor/skills/meeting-notes-distiller/cursor_mcp_config.json
1
Gemini CLI 변환 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/download?platform=GeminiCLI
2
압축 해제 후 영구 위치에 저장합니다.
unzip meeting-notes-distiller-geminicli-*.skill -d ~/.gemini/skills/meeting-notes-distiller/
3
~/.gemini/settings.json에 MCP 서버 설정을 추가하고 Gemini CLI를 재시작합니다.
cat ~/.gemini/skills/meeting-notes-distiller/gemini_settings_snippet.json
1
Codex CLI 변환 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/download?platform=CodexCLI
2
압축 해제 후 영구 위치에 저장합니다.
unzip meeting-notes-distiller-codexcli-*.skill -d ~/.codex/skills/meeting-notes-distiller/
3
~/.codex/config.toml에 MCP 서버 설정을 추가하고 Codex CLI를 재시작합니다.
cat ~/.codex/skills/meeting-notes-distiller/codex_config_snippet.toml
1
REST API로 스킬 패키지를 다운로드합니다.
GET https://aiskillstore.io/v1/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/download
2
에이전트 플랫폼의 skills 디렉터리에 배치합니다.
cp meeting-notes-distiller.skill ./skills/
3
설치 가이드 API로 플랫폼별 상세 정보를 조회합니다.
GET https://aiskillstore.io/v1/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/install-guide?platform=CustomAgent

보안 검증 보고서

검증 결과 APPROVED

검사 결과: ["메타데이터 경고: 권장 필드 없음: 'requirements' (SKILL.md v2 권장)", "메타데이터 경고: 권장 필드 없음: 'changelog' (SKILL.md v2 권장)", '정보: spec: usk/1.0 미선언 — v2 패키지로 처리됩니다. 자동 변환 및 에이전트 검색 기능을 사용하려면 USK v3로 업그레이드하세요.']

✅ 보안 위험 항목이 발견되지 않았습니다.

AI 검수 단계

검수 주체 gemini 위험도 🟢 낮음 검수 요약 선언된 권한이 매우 제한적이며, 정적 분석 결과 악성 코드나 위험 요소가 발견되지 않아 안전합니다.
판단 근거

제공된 스킬 메타데이터와 정적 분석 결과를 종합하여 판단했습니다. 1. **선언된 permissions(network/filesystem/subprocess)과 실제 코드가 일치하는가?** * 메타데이터에서 `network: false`, `filesystem: false`, `subprocess: false`로 선언되어 외부 통신, 파일 시스템 접근, 외부 프로세스 실행이 모두 금지되어 있습니다. 이는 매우 강력한 보안 조치입니다. * 정적 분석 결과 `red_flags_found: []`, `forbidden_exec_files_found: []`로 보고되어, 선언된 권한을 위반하는 코드가 없음을 간접적으로 확인했습니다. (실제 코드가 제공되지 않았으므로 정적 분석 결과에 전적으로 의존합니다.) 2. **악의적 목적의 코드가 있는가? (데이터 탈취, 시스템 파괴, 난독화 등)** * 정적 분석 결과 `red_flags_found: []`, `obfuscation_warnings: []`로 보고되어 악의적인 코드나 난독화된 코드가 발견되지 않았습니다. * 선언된 권한이 매우 제한적이므로, 설령 악의적인 의도가 있더라도 데이터 탈취나 시스템 파괴와 같은 행위는 불가능합니다. 3. **선언되지 않은 외부 통신이 있는가?** * `permissions.network: false`로 선언되어 외부 통신이 명시적으로 금지되어 있습니다. * 스킬 설명에 'zero dependencies'라고 명시되어 있어 외부 라이브러리 사용으로 인한 예상치 못한 통신 가능성도 낮습니다. * 정적 분석 결과에서도 외부 통신 관련 위험 요소는 발견되지 않았습니다. 4. **사용자 데이터를 무단으로 수집하거나 전송하는가?** * 네트워크 접근 권한이 없으므로 사용자 데이터를 외부로 전송하는 것은 불가능합니다. * 스킬의 목적은 '회의록 분석 및 정보 추출'이므로, 입력된 회의록 데이터는 스킬의 기능 수행을 위해서만 사용될 것으로 판단됩니다. 5. **코드 품질이 스킬의 목적과 일치하는가?** * 코드 파일이 제공되지 않아 직접적인 코드 품질 평가는 어렵습니다. * 그러나 메타데이터가 매우 상세하고 명확하며, 입력/출력 스키마와 다양한 예시(정상 및 에러 케이스 포함)가 잘 정의되어 있어 스킬의 설계가 견고함을 시사합니다. * 정적 분석 결과가 'approved'인 점도 코드 품질에 대한 간접적인 긍정 신호입니다. 결론적으로, 이 스킬은 매우 제한적인 권한을 선언하고 있으며, 정적 분석 결과에서도 어떠한 보안 위험도 발견되지 않았습니다. 따라서 안전하다고 판단됩니다.

버전 히스토리

버전 USK v3 검증 상태 패키지 날짜 다운로드 변경사항
v1.0.0 — approved 2026-05-26 ⬇ 85 —

사용 예시 (Examples) 7 개

이 스킬의 대표적인 입출력 예시입니다. 에이전트는 이 예시를 보고 스킬 호출 방법과 결과 형태를 이해할 수 있습니다.

extract_action_items — Korean meeting notes
# korean# action-items# todo

Extract TODO items from Korean meeting notes

📥 입력
{
  "action": "extract_action_items",
  "language": "ko",
  "notes": "\uc624\ub298 \ud68c\uc758\uc5d0\uc11c \ub2e4\uc74c \uc0ac\ud56d\uc744 \ub17c\uc758\ud588\uc2b5\ub2c8\ub2e4.\n- \uae40\ucca0\uc218\ub294 \ub2e4\uc74c \uc8fc\uae4c\uc9c0 API \ubb38\uc11c\ub97c \uc791\uc131\ud574\uc57c \ud569\ub2c8\ub2e4.\n- \uc774\uc601\ud76c\ub294 \ub514\uc790\uc778 \uc2dc\uc548\uc744 \uae08\uc694\uc77c\uae4c\uc9c0 \uc81c\ucd9c\ud574\uc57c \ud569\ub2c8\ub2e4.\n- TODO: \uc11c\ubc84 \ubc30\ud3ec \uc2a4\ud06c\ub9bd\ud2b8 \uc810\uac80 (\ub2f4\ub2f9: \ubc15\ubbfc\uc218)\n- \uc608\uc0b0 \uac80\ud1a0\ub294 \uc7ac\ubb34\ud300\uc5d0\uc11c \uc9c4\ud589\ud558\uae30\ub85c \ud588\uc2b5\ub2c8\ub2e4."
}
📤 출력
{
  "action": "extract_action_items",
  "ok": true,
  "result": {
    "count": 3,
    "items": [
      {
        "confidence": "high",
        "deadline": "\ub2e4\uc74c \uc8fc",
        "owner": "\uae40\ucca0\uc218",
        "text": "API \ubb38\uc11c\ub97c \uc791\uc131\ud574\uc57c \ud569\ub2c8\ub2e4"
      },
      {
        "confidence": "high",
        "deadline": "\uae08\uc694\uc77c",
        "owner": "\uc774\uc601\ud76c",
        "text": "\ub514\uc790\uc778 \uc2dc\uc548\uc744 \uc81c\ucd9c\ud574\uc57c \ud569\ub2c8\ub2e4"
      },
      {
        "confidence": "high",
        "deadline": null,
        "owner": "\ubc15\ubbfc\uc218",
        "text": "\uc11c\ubc84 \ubc30\ud3ec \uc2a4\ud06c\ub9bd\ud2b8 \uc810\uac80"
      }
    ],
    "language_detected": "ko"
  }
}
extract_decisions — English meeting
# english# decisions# extract

Extract decisions from English meeting notes

📥 입력
{
  "action": "extract_decisions",
  "language": "en",
  "notes": "Team meeting 2024-01-15. We decided to postpone the launch to Q2. It was agreed that all features must pass security review before release. The team finalized the new hiring plan for 3 engineers. John confirmed that remote work policy will continue."
}
📤 출력
{
  "action": "extract_decisions",
  "ok": true,
  "result": {
    "count": 3,
    "decisions": [
      {
        "confidence": "high",
        "text": "postpone the launch to Q2",
        "trigger_phrase": "decided"
      },
      {
        "confidence": "high",
        "text": "all features must pass security review before release",
        "trigger_phrase": "agreed"
      },
      {
        "confidence": "high",
        "text": "new hiring plan for 3 engineers",
        "trigger_phrase": "finalized"
      }
    ],
    "language_detected": "en"
  }
}
assign_owners — mention and name extraction
# owners# assignment# mentions

Map action items to their owners via @mention or name patterns

📥 입력
{
  "action": "assign_owners",
  "notes": "@alice will prepare the budget report by next Monday. Bob: review the contract draft. \uae40\ucca0\uc218 \ub2f4\ub2f9: \uc11c\ubc84 \uc810\uac80. @charlie and @dave will co-lead the integration testing."
}
📤 출력
{
  "action": "assign_owners",
  "ok": true,
  "result": {
    "assignments": [
      {
        "mention_type": "at_mention",
        "owner": "alice",
        "task": "prepare the budget report by next Monday"
      },
      {
        "mention_type": "name_colon",
        "owner": "Bob",
        "task": "review the contract draft"
      },
      {
        "mention_type": "korean_name",
        "owner": "\uae40\ucca0\uc218",
        "task": "\uc11c\ubc84 \uc810\uac80"
      },
      {
        "mention_type": "at_mention",
        "owner": "charlie",
        "task": "co-lead the integration testing"
      }
    ],
    "owner_count": 4,
    "unassigned_items": []
  }
}
detect_deadlines — Korean and English dates
# deadlines# dates# bilingual

Extract deadline expressions from mixed notes

📥 입력
{
  "action": "detect_deadlines",
  "notes": "Report due by Friday. \ub2e4\uc74c \uc8fc \uc6d4\uc694\uc77c\uae4c\uc9c0 \uc81c\ucd9c \uc694\ub9dd. API integration must finish by March 31. 3\uc6d4 \ub9d0\uae4c\uc9c0 \uc608\uc0b0\uc548 \ud655\uc815. Sprint ends next week."
}
📤 출력
{
  "action": "detect_deadlines",
  "ok": true,
  "result": {
    "count": 4,
    "deadlines": [
      {
        "context": "Report due by Friday",
        "expression": "by Friday",
        "type": "relative"
      },
      {
        "context": "\ub2e4\uc74c \uc8fc \uc6d4\uc694\uc77c\uae4c\uc9c0 \uc81c\ucd9c \uc694\ub9dd",
        "expression": "\ub2e4\uc74c \uc8fc \uc6d4\uc694\uc77c\uae4c\uc9c0",
        "type": "relative_ko"
      },
      {
        "context": "API integration must finish by March 31",
        "expression": "by March 31",
        "type": "absolute"
      },
      {
        "context": "3\uc6d4 \ub9d0\uae4c\uc9c0 \uc608\uc0b0\uc548 \ud655\uc815",
        "expression": "3\uc6d4 \ub9d0\uae4c\uc9c0",
        "type": "absolute_ko"
      }
    ]
  }
}
generate_recap — full meeting summary
# recap# full-summary# structured

Generate a structured recap of the entire meeting

📥 입력
{
  "action": "generate_recap",
  "notes": "Product sync meeting Jan 15.\nDecided: Launch delayed to Q2.\nTODO: Alice will update roadmap by Friday.\nTODO: Bob to review contracts.\nAgreed: weekly status updates.\n@carol: prepare Q1 report by Jan 20."
}
📤 출력
{
  "action": "generate_recap",
  "ok": true,
  "result": {
    "recap": {
      "action_items": [
        {
          "deadline": "by Friday",
          "owner": "Alice",
          "task": "update roadmap"
        },
        {
          "deadline": null,
          "owner": "Bob",
          "task": "review contracts"
        },
        {
          "deadline": "by Jan 20",
          "owner": "carol",
          "task": "prepare Q1 report"
        }
      ],
      "deadlines_mentioned": [
        "by Friday",
        "by Jan 20"
      ],
      "decisions": [
        "Launch delayed to Q2",
        "Weekly status updates"
      ],
      "stats": {
        "owners_identified": 3,
        "total_action_items": 3,
        "total_decisions": 2
      },
      "unassigned_items": []
    }
  }
}
error — empty notes
# error# validation

Returns error on empty notes input

📥 입력
{
  "action": "extract_action_items",
  "notes": ""
}
📤 출력
{
  "error": {
    "code": "EMPTY_INPUT",
    "message": "Field \u0027notes\u0027 must not be empty"
  },
  "ok": false
}
error — unknown action
# error

Returns error for unsupported action

📥 입력
{
  "action": "summarize_meeting",
  "notes": "Some meeting notes."
}
📤 출력
{
  "error": {
    "code": "UNKNOWN_ACTION",
    "message": "Unknown action \u0027summarize_meeting\u0027"
  },
  "ok": false
}

모든 예시는 에이전트 API로도 조회 가능: /v1/agent/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/schema

리뷰 & 평점

아직 리뷰가 없습니다. 첫 번째 리뷰를 남겨보세요!

✍️ 리뷰 작성