← Back to Skills

meeting-notes-distiller

v1.0.0 approved AI/ML updated today
✅ Verified
⬇ Download Install Guide↓
🤖 Agent install commands (curl / MCP / Claude Desktop)
▸ curl one-liner
curl -L -o meeting-notes-distiller.skill   "https://aiskillstore.io/v1/agent/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/download?platform=ClaudeCode"
▸ MCP tool call (after registering Skill Store MCP)
{
  "tool": "download_skill",
  "arguments": {
    "skill_id": "1a76540d-8b17-4aaf-a6d6-1f679acde7ef",
    "platform": "ClaudeCode"
  }
}
▸ Claude Desktop / Cursor MCP config (one-time)
{
  "mcpServers": {
    "skill-store": {
      "url": "https://aiskillstore.io/mcp/"
    }
  }
}
📖 Full agent API guide: /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

Basic Info

Owner 👤 aiskillstore-team Category AI/ML Registered 2026-05-26 Last Updated 2026-05-26 Latest Version 1.0.0 Packaged At 2026-05-26 Vetting Status approved Downloads 0 Checksum (SHA256) 1388022907a92390f674799503d163189786668b29df67bfc8930d742efba728

Installation

Compatible Platforms any

1
Install the skill using openclaw_skill_manager.py.
python openclaw_skill_manager.py --install meeting-notes-distiller
2
Verify installation
python openclaw_skill_manager.py --list-installed
3
Install a specific version (optional)
python openclaw_skill_manager.py --install meeting-notes-distiller --version 1.0.0
1
Download the skill package.
curl -O https://aiskillstore.io/v1/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/download
2
Place it in the Claude Code commands directory.
unzip meeting-notes-distiller.skill -d ~/.claude/commands/meeting-notes-distiller/
3
Use it as a slash command in Claude Code.
/meeting-notes-distiller
1
Download the Agent Skills package.
curl -O https://aiskillstore.io/v1/agent/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/download?platform=ClaudeCodeAgentSkill
2
Unzip it into the Claude Code skills directory.
unzip meeting-notes-distiller-agent-skill-*.skill -d ~/.claude/skills/meeting-notes-distiller/
3
Restart Claude Code — the skill is auto-loaded at session start. No slash command needed.
1
Download the Cursor-converted package.
curl -O https://aiskillstore.io/v1/agent/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/download?platform=Cursor
2
Unzip and place it in a permanent location.
unzip meeting-notes-distiller-cursor-*.skill -d ~/.cursor/skills/meeting-notes-distiller/
3
Add the MCP server config to .cursor/mcp.json, then restart Cursor.
cat ~/.cursor/skills/meeting-notes-distiller/cursor_mcp_config.json
1
Download the Gemini CLI-converted package.
curl -O https://aiskillstore.io/v1/agent/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/download?platform=GeminiCLI
2
Unzip and place it in a permanent location.
unzip meeting-notes-distiller-geminicli-*.skill -d ~/.gemini/skills/meeting-notes-distiller/
3
Add the MCP server config to ~/.gemini/settings.json, then restart Gemini CLI.
cat ~/.gemini/skills/meeting-notes-distiller/gemini_settings_snippet.json
1
Download the Codex CLI-converted package.
curl -O https://aiskillstore.io/v1/agent/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/download?platform=CodexCLI
2
Unzip and place it in a permanent location.
unzip meeting-notes-distiller-codexcli-*.skill -d ~/.codex/skills/meeting-notes-distiller/
3
Add the MCP server config to ~/.codex/config.toml, then restart Codex CLI.
cat ~/.codex/skills/meeting-notes-distiller/codex_config_snippet.toml
1
Download the skill package via REST API.
GET https://aiskillstore.io/v1/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/download
2
Place it in your agent platform's skills directory.
cp meeting-notes-distiller.skill ./skills/
3
Fetch platform-specific details via the Install Guide API.
GET https://aiskillstore.io/v1/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/install-guide?platform=CustomAgent

Security Vetting Report

Vetting Result APPROVED

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

✅ No security risks found.

AI Review Stage

Reviewer gemini Risk Level 🟢 Low Review Summary 선언된 권한이 매우 제한적이며, 정적 분석 결과 악성 코드나 위험 요소가 발견되지 않아 안전합니다.
Reasoning

제공된 스킬 메타데이터와 정적 분석 결과를 종합하여 판단했습니다. 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'인 점도 코드 품질에 대한 간접적인 긍정 신호입니다. 결론적으로, 이 스킬은 매우 제한적인 권한을 선언하고 있으며, 정적 분석 결과에서도 어떠한 보안 위험도 발견되지 않았습니다. 따라서 안전하다고 판단됩니다.

Version History

Version USK v3 Vetting Status Packaged At Downloads Changelog
v1.0.0 approved 2026-05-26 ⬇ 0

Examples 7

Representative input/output examples for this skill. Agents can use these to understand how to invoke the skill and what output to expect.

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

Extract TODO items from Korean meeting notes

📥 Input
{
  "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."
}
📤 Output
{
  "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

📥 Input
{
  "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."
}
📤 Output
{
  "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

📥 Input
{
  "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."
}
📤 Output
{
  "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

📥 Input
{
  "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."
}
📤 Output
{
  "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

📥 Input
{
  "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."
}
📤 Output
{
  "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

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

Returns error for unsupported action

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

All examples are also available via the agent API: /v1/agent/skills/1a76540d-8b17-4aaf-a6d6-1f679acde7ef/schema

Reviews & Ratings

No reviews yet. Be the first to leave one!

✍️ Write a Review