k-research-note

대한민국 정부 R&D 과제의 연구노트(연구 기록, Lab Notebook)를 작성하는 스킬. 국가연구개발혁신법 및 연구노트 지침에 부합하는 연구노트를 생성한다. 출력 포맷은 DOCX, HWPX(한글), PDF, Markdown 중 사용자가 선택할 수 있다. 사용자가 '연구노트', '연구 기록', '실험 노트', '랩노트', 'R&D 노트', '정부과제 기록', '과제 연구노트', '실험 일지' 등을 언급하거나, 국가 R&D 과제 수행 과정의 기록 문서를 요청할 때 반드시 이 스킬을 사용한다. 연구 계획, 실험 과정, 결과, 고찰 등 연구 전주기 기록이 필요한 경우에도 이 스킬을 트리거한다. 단순한 실험보고서나 학술 논문 작성과는 구분된다.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "k-research-note" with this command: npx skills add ujon/skills/ujon-skills-k-research-note

대한민국 정부과제 연구노트 작성 스킬

개요

이 스킬은 국가연구개발혁신법 시행령 제65조국가연구개발사업 연구노트 지침(과학기술정보통신부 고시)에 부합하는 연구노트를 생성한다. 연구노트는 연구개발 과정 전반을 기록하는 공식 문서로, 과제 평가 시 성실 수행의 핵심 증빙 자료가 된다.

출력 포맷은 DOCX, HWPX(한글), PDF, Markdown 중 선택할 수 있으며, 각 포맷에 맞는 관련 스킬을 자동으로 검색하여 활용한다.


워크플로우

1단계: 사용자에게 질문하기 (인터랙티브 수집)

연구노트 작성에 필요한 정보를 한 번에 하나씩 순차적으로 질문하여 수집한다. 선택형 질문은 반드시 AskUserQuestion 도구의 options 파라미터를 사용하여, CLI 환경에서 방향키로 선택할 수 있도록 한다. 자유 입력 질문도 AskUserQuestion을 사용한다.

이전 기록 재활용 원칙

질문을 시작하기 전에, 대화 내에서 이전에 수집된 정보(과제명, 기록자, 포맷 등)가 있는지 확인한다. 이전 기록이 있으면 각 질문 시 이전 값을 기본값으로 제시하고, 사용자가 y를 입력하면 이전 값을 그대로 사용한다.

예시:
  과제명 [이전 입력값] — 이대로 사용하려면 y:
  → y → 이전 값 그대로 사용
  → (새 값 입력) → 새 값으로 갱신

사용자가 대화 초반에 이미 제공한 정보(예: "연구노트 써줘, 과제명은 XXX야")는 질문을 건너뛴다.

질문 순서 및 형식

아래 순서대로 한 번에 하나씩 질문한다. 각 질문은 셸 프롬프트처럼 간결하게 표시한다.

Step 1: 출력 포맷

AskUserQuestion으로 질문한다:

  • question: "출력 포맷을 선택하세요"
  • header: "포맷"
  • options:
    • label: "DOCX", description: "MS Word 문서"
    • label: "HWPX", description: "한글/한컴오피스 문서"
    • label: "PDF", description: "PDF 문서"
    • label: "Markdown", description: "마크다운 텍스트"

자동 판별 규칙 (사용자가 이미 언급한 경우 질문 생략):

  • "한글", "hwp", "hwpx", "한컴" → HWPX (format: "hwpx")
  • "워드", "docx", "word" → DOCX (format: "docx")
  • "pdf", "피디에프", "PDF로" → PDF (format: "pdf")
  • "마크다운", "markdown", "md", "깃" → Markdown (format: "markdown")

Step 2: 과제명 (필수)

과제명 (정부과제 공식 명칭):

이전 값이 있으면: 과제명 [이전 과제명] — 이대로 사용하려면 y:

Step 3: 연구 제목 (필수)

연구 제목 (이번 노트의 구체적 주제):

Step 4: 기록자 (필수)

기록자 (작성 연구원 이름):

이전 값이 있으면: 기록자 [이전 입력값] — 이대로 사용하려면 y:

Step 5: 작성일자

작성일자 [2026-03-13] — 이대로 사용하려면 y, 변경하려면 날짜 입력:

기본값은 오늘 날짜. y를 입력하면 오늘 날짜를 사용한다.

Step 5-1: 폰트 설정 (DOCX, HWPX, PDF인 경우만)

AskUserQuestion으로 질문한다:

  • question: "폰트 설정을 선택하세요"
  • header: "폰트"
  • options:
    • label: "기본 (Recommended)", description: "맑은 고딕 11pt"
    • label: "직접 지정", description: "폰트명과 크기를 직접 입력"

Markdown 포맷의 경우 이 질문을 건너뛴다.

1인 경우: 기본 폰트(맑은 고딕 11pt)를 사용한다. 2인 경우: 폰트명과 크기를 추가로 질문한다:

폰트명 (예: 나눔고딕, 함초롬돋움, 바탕):
본문 글자 크기 (pt, 기본 11):

지정된 폰트와 크기는 본문에 적용하고, 제목은 지정 크기 기준으로 자동 비례 조정한다.

Step 5-2: 추가 데이터 첨부

AskUserQuestion으로 질문한다:

  • question: "연구노트에 추가할 데이터가 있습니까?"
  • header: "데이터"
  • options:
    • label: "없음 (Recommended)", description: "추가 데이터 없이 진행"
    • label: "파일 경로", description: "CSV, JSON, 이미지 등 파일 경로로 제공"
    • label: "직접 입력", description: "표, 수치, 텍스트 등을 직접 입력"

1인 경우: 추가 데이터 없이 진행한다. 문서에 데이터 첨부 섹션을 포함하지 않는다. 2인 경우: 파일 경로를 입력받는다:

파일 경로 (여러 개는 쉼표로 구분):

입력받은 파일을 읽어 내용을 분석한 뒤, 연구노트의 "결과" 또는 별도 "첨부 데이터" 섹션에 적절한 형태(표, 코드 블록, 요약 등)로 삽입한다. 파일 형식별 처리:

  • CSV/TSV/Excel: 데이터를 테이블로 변환하여 삽입. 행이 많으면 요약 통계와 함께 주요 행만 발췌
  • JSON/XML/YAML: 구조를 파악하여 핵심 내용을 정리. 필요 시 코드 블록으로 원본 포함
  • 텍스트/로그: 관련 내용을 발췌하여 코드 블록으로 삽입
  • 이미지: 파일 경로를 기록하고, 이미지 설명을 작성하여 삽입 (DOCX/HWPX는 이미지 임베딩, Markdown은 ![](path))
  • 기타: 파일 내용을 최대한 읽어 적절한 형태로 삽입

3인 경우: 사용자가 직접 데이터를 입력한다:

추가 데이터를 입력해주세요 (표, 수치, 텍스트 등 자유 형식):

입력받은 내용을 연구노트에 적합한 형태로 정리하여 "첨부 데이터" 섹션에 삽입한다.

여러 파일이나 데이터를 추가한 뒤 추가 입력 여부를 확인한다:

추가 데이터를 더 첨부하시겠습니까? (y/n):

데이터를 먼저 수집하면 이후 Step 6~8에서 AI가 내용을 작성할 때 제공된 데이터를 참고하여 더 정확한 내용을 생성할 수 있다.

Step 6: 연구 목적/배경

AskUserQuestion으로 질문한다:

  • question: "연구 목적/배경을 어떻게 작성할까요?"
  • header: "목적/배경"
  • options:
    • label: "직접 입력", description: "내용을 직접 작성"
    • label: "AI 작성", description: "과제명·연구 제목 기반으로 웹 검색 후 자동 작성"
    • label: "생략", description: "이 섹션을 문서에서 제외"

1인 경우: 사용자 입력을 그대로 사용한다. 2인 경우: 앞서 수집한 과제명·연구 제목을 기반으로 웹 검색 등을 활용하여 연구 목적과 배경을 자동 작성한다. 작성 후 사용자에게 보여주고 수정 여부를 확인한다:

[AI 작성 결과 표시]
이대로 사용할까요? (y/수정할 내용 입력):

3인 경우: 이 섹션을 문서에서 생략한다.

Step 7: 연구 내용 및 방법

AskUserQuestion으로 질문한다:

  • question: "연구 내용 및 방법을 어떻게 작성할까요?"
  • header: "내용/방법"
  • options:
    • label: "직접 입력", description: "내용을 직접 작성"
    • label: "AI 작성", description: "과제명·연구 제목·목적 기반으로 웹 검색 후 자동 작성"
    • label: "생략", description: "이 섹션을 문서에서 제외"

1인 경우: 사용자 입력을 그대로 사용한다. 2인 경우: 과제명·연구 제목·연구 목적을 기반으로 웹 검색 등을 활용하여 실험/개발 절차, 사용 장비·재료·SW 등을 자동 작성한다. 작성 후 사용자에게 보여주고 수정 여부를 확인한다:

[AI 작성 결과 표시]
이대로 사용할까요? (y/수정할 내용 입력):

3인 경우: 이 섹션을 문서에서 생략한다.

Step 8: 결과

AskUserQuestion으로 질문한다:

  • question: "결과를 어떻게 작성할까요?"
  • header: "결과"
  • options:
    • label: "직접 입력", description: "내용을 직접 작성"
    • label: "AI 작성", description: "앞서 작성한 내용 기반으로 예상 결과 초안 작성"
    • label: "생략", description: "이 섹션을 문서에서 제외"

1인 경우: 사용자 입력을 그대로 사용한다. 2인 경우: 앞서 수집한 연구 목적·내용·방법과 제공된 데이터를 기반으로 예상 결과 및 데이터 형식 초안을 자동 작성한다. 작성 후 사용자에게 보여주고 수정 여부를 확인한다:

[AI 작성 결과 표시]
이대로 사용할까요? (y/수정할 내용 입력):

3인 경우: 이 섹션을 문서에서 생략한다.

Step 9: 선택 정보 수집

필수 정보를 모두 수집한 후, 선택 정보를 물어본다:

추가 정보를 입력하시겠습니까? (y/n) [n]:

y인 경우 아래 항목을 순차적으로 질문한다. 각 항목에서 skip을 입력하면 건너뛴다:

과제번호:
연구책임자:
주관연구기관:
점검자 (제3자 서명용):
고찰 및 향후 계획:
참고문헌:

Step 10: 머리글/바닥글 (DOCX, HWPX, PDF인 경우만)

AskUserQuestion으로 질문한다:

  • question: "머리글/바닥글 설정을 선택하세요"
  • header: "머리글/바닥글"
  • options:
    • label: "기본 포함 (Recommended)", description: "과제명+기관명 머리글, 페이지번호 바닥글"
    • label: "머리글만", description: "머리글만 포함"
    • label: "바닥글만", description: "바닥글만 포함"
    • label: "없음", description: "머리글/바닥글 모두 제외"

Markdown 포맷의 경우 이 질문을 건너뛴다.

사용자가 "기본 포함"을 선택하면 추가 질문 없이 기본 구성으로 진행한다. 사용자가 커스터마이징을 원하면 아래 항목을 열어 선택하도록 한다.

머리글에 들어갈 수 있는 항목:

  • 문서 제목 ("연 구 노 트") — 기본 포함
  • 과제명 — 기본 포함
  • 연구기관명
  • 보안등급 (예: "대외비", "공개")
  • 로고 이미지 (사용자가 파일 업로드 시)

바닥글에 들어갈 수 있는 항목:

  • 페이지 번호 — 기본 포함
  • 기관명 + 과제명 — 기본 포함
  • 과제번호
  • 법적 고지문 (예: "본 연구노트는 국가연구개발혁신법에 따라 작성되었습니다.")

PDF 포맷의 경우 머리글/바닥글은 DOCX/HWPX와 동일한 선택지를 제공한다.

질문 진행 원칙

  • 한 턴에 하나의 질문만 한다. 여러 질문을 한꺼번에 던지지 않는다.
  • 선택형 질문은 반드시 AskUserQuestionoptions를 사용하여 방향키 선택 UI를 제공한다. 번호를 직접 타이핑하게 하지 않는다.
  • 자유 입력 질문(과제명, 기록자 등)도 AskUserQuestion을 사용한다.
  • 이전 값이 있는 항목은 question 텍스트에 [기본값]을 포함하고, 사용자가 빈 값(Other)으로 응답하면 이전 값을 그대로 사용한다.
  • 사용자가 대화 중 이미 제공한 정보는 확인만 하고 건너뛴다.
  • 사용자가 대략적인 내용만 제공하더라도 연구노트 구조에 맞게 내용을 확장하여 작성한다.

AI 자동 작성 원칙

Step 6~8에서 사용자가 "AI가 작성" 옵션을 선택한 경우:

  • 앞서 수집한 과제명·연구 제목을 키워드로 웹 검색(web_search)을 수행하여 관련 연구 동향, 기술, 방법론 등을 조사한다.
  • 검색 결과를 바탕으로 연구노트에 적합한 수준의 내용을 작성한다. 학술 논문 수준이 아닌, 연구 수행 기록으로서의 실용적 내용에 집중한다.
  • 자동 작성한 내용은 반드시 사용자에게 보여주고, y로 확정하거나 수정 사항을 입력받는다. 수정 입력이 있으면 해당 부분을 반영하여 다시 보여준다.
  • Step 5-2에서 사용자가 제공한 데이터가 있으면, AI 작성 시 해당 데이터를 참고하여 내용을 구성한다.
  • Step 8(결과)에서 AI 작성 시에는 "예상 결과 초안"임을 명시하고, 사용자가 실제 데이터로 교체할 수 있도록 구조만 잡아준다.

2단계: 관련 스킬 검색 및 활용

출력 포맷이 결정되면, 해당 포맷의 문서 생성 스킬을 검색하여 그 지침을 따른다. 이 스킬은 "무엇을 쓸지"(내용·구조)를 결정하고, 문서 생성 스킬은 "어떻게 파일을 만들지"(기술적 구현)를 담당한다.

스킬 검색 절차

포맷이 결정되면 다음 순서로 관련 스킬을 찾는다:

[DOCX인 경우]
외부 스킬 검색 불필요 — generate_note.py가 직접 .docx 생성 (HWPX와 동일 방식)

[HWPX인 경우]
1차: view /mnt/skills/user/hwpx/SKILL.md             ← 사용자 설치 hwpx 스킬
2차: view /mnt/skills/private/hwpx/SKILL.md          ← 프라이빗 hwpx 스킬
3차: view /mnt/skills/public/hwpx/SKILL.md           ← 공식 hwpx 스킬
4차: 스킬 없음 → 이 문서의 "인라인 HWPX 생성 가이드" 사용

[PDF인 경우]
외부 스킬 검색 불필요 — generate_note.py가 직접 .pdf 생성 (HWPX/DOCX와 동일 방식)

[Markdown인 경우]
별도 스킬 불필요 — 직접 .md 파일 작성

핵심 원칙: 관련 스킬을 찾으면 반드시 그 SKILL.md를 view 도구로 읽고, 해당 스킬의 최신 지침을 따른다. 스킬의 지침이 이 문서의 내용과 충돌하면 스킬의 지침이 우선한다 (파일 생성 기술에 관해서만).

DOCX 출력 체크리스트

외부 docx 스킬 검색이 불필요하다. generate_note.py에서 직접 .docx 파일을 생성한다:

  • JSON 설정의 format"docx"로 설정
  • python skills/k-research-note/scripts/generate_note.py /tmp/note_config.json 으로 생성
  • 내부적으로 DocxNoteBuilder가 python-docx 자동 설치 및 문서 생성을 처리
  • 디자인 규격(색상, 폰트, 머리글/바닥글)이 자동 적용됨
  • 별도의 Python 스크립트를 작성하지 않는다

HWPX 출력 체크리스트

generate_note.py를 사용한다. 별도 Python 스크립트를 생성하지 않는다:

  • JSON 설정의 format"hwpx"로 설정
  • python skills/k-research-note/scripts/generate_note.py /tmp/note_config.json 으로 생성
  • 내부적으로 HwpxBuilder가 mimetype, 네임스페이스 등을 자동 처리
  • 외부 의존성 없음 (Python 표준 라이브러리만 사용)

PDF 출력 체크리스트

외부 pdf 스킬 검색이 불필요하다. generate_note.py에서 직접 .pdf 파일을 생성한다:

  • JSON 설정의 format"pdf"로 설정
  • python skills/k-research-note/scripts/generate_note.py /tmp/note_config.json 으로 생성
  • 내부적으로 PdfNoteBuilder가 fpdf2 자동 설치 및 문서 생성을 처리
  • 시스템에서 한국어 폰트를 자동 탐색하여 적용
  • 디자인 규격(색상, 폰트, 머리글/바닥글)이 자동 적용됨
  • 별도의 Python 스크립트를 작성하지 않는다

Markdown 출력 체크리스트

  • YAML 프론트매터로 메타데이터 기록
  • 표는 Markdown 테이블 문법 사용
  • 서명란은 --- 구분선 + 텍스트
  • 코드 블록(```)으로 실험 환경·코드 기록
  • 파일을 ./.md 확장자로 저장

3단계: 문서 생성 및 공유

  1. 수집한 정보를 JSON 설정 파일(/tmp/note_config.json)로 작성한다
  2. python skills/k-research-note/scripts/generate_note.py /tmp/note_config.json 으로 생성한다
  3. 데이터 파일이 있으면 --data file1.csv file2.json 옵션을 추가한다
  4. present_files로 사용자에게 공유한다

중요: 별도의 Python 스크립트 파일(generate_xxx.py 등)을 생성하지 않는다. 반드시 scripts/generate_note.py를 직접 호출한다.

파일명 규칙:

  • DOCX: 연구노트_[YYYY-MM-DD]_[순번].docx
  • HWPX: 연구노트_[YYYY-MM-DD]_[순번].hwpx
  • PDF: 연구노트_[YYYY-MM-DD]_[순번].pdf
  • Markdown: 연구노트_[YYYY-MM-DD]_[순번].md
  • 사용자가 별도 파일명을 지정하면 그것을 따른다

문서 구조

공통 구조 (모든 포맷 동일)

[머리글 영역] (DOCX/HWPX/PDF만, 사용자 선택 시)
├── 문서 제목 ("연 구 노 트")
├── 과제명
├── 연구기관명 (선택)
├── 로고 (선택)

[본문]
├── 기본 정보 (테이블 또는 메타데이터)
│   ├── 연구 제목
│   ├── 작성일자
│   ├── 기록자
│   ├── 과제번호 (선택)
│   └── 연구책임자 (선택)
│
├── 1. 연구 목적 / 배경
│   └── 본 연구/실험의 목적과 필요성을 명확히 기술
│
├── 2. 연구 내용 및 방법
│   ├── 사용 장비/재료/소프트웨어
│   ├── 실험/연구 절차 (시간순 기록)
│   └── 조건 및 파라미터
│
├── 3. 결과
│   ├── 실험 데이터 / 관찰 사항
│   ├── 표, 그래프 설명 (첨부 참조)
│   └── 성공 및 실패 결과 모두 기록
│
├── 4. 고찰 및 결론
│   ├── 결과 해석 및 분석
│   ├── 예상과 다른 결과에 대한 원인 분석
│   └── 향후 연구 방향 / 개선 사항
│
├── 5. 첨부 데이터 (사용자가 데이터를 제공한 경우만)
│   ├── 표, 그래프, 로그 등 사용자 제공 데이터
│   └── 데이터를 제공하지 않으면 이 섹션 자체를 생략
│
├── 6. 특이사항 / 비고 (선택)
│   └── 장비 이상, 환경 변화, 변경 사항 등
│
├── 7. 참고문헌 (선택)
│
└── [서명 영역]
    ├── 기록자: _________ (서명/일자)
    └── 점검자: _________ (서명/일자)

[바닥글 영역] (DOCX/HWPX/PDF만, 사용자 선택 시)
├── 페이지번호
├── 기관명 | 과제명
└── 법적 고지문 (선택)

머리글(Header) 구현 가이드

DOCX: generate_note.py가 자동 처리. 색상 테마 — 헤더 배경: #1B3A5C, 텍스트: #FFFFFF, 과제명: #B0C4DE.

HWPX: HwpxBuilderadd_heading(), add_table()로 section0.xml 상단에 제목 영역을 구성한다:

doc.add_heading("연 구 노 트", level=1)
doc.add_paragraph(과제명, char_style=2, para_style=1)

PDF: generate_note.py가 자동 처리. DOCX와 동일한 디자인 규격(색상, 폰트, 레이아웃)을 적용한다.

Markdown: YAML 프론트매터로 대체:

---
title: "연구노트"
과제명: "{사용자 입력 과제명}"
기록자: "{사용자 입력 기록자}"
작성일자: 2026-03-13
---

바닥글(Footer) 구현 가이드

DOCX: generate_note.py가 자동 처리. 보더 상단: #B0C4DE, 텍스트: #666666.

PDF: generate_note.py가 자동 처리. DOCX와 동일한 디자인 규격을 적용한다.

Markdown: 문서 최하단에 법적 고지문을 일반 텍스트로 추가.


작성 원칙

연구노트의 법적 효력과 증거력을 확보하기 위한 핵심 원칙:

  1. 제3자 재현 가능성: 해당 분야의 제3자가 연구노트만 보고 동일한 연구를 재현할 수 있을 정도로 구체적이고 상세하게 기술한다. 모호한 표현("적당량", "잠시") 대신 구체적 수치와 시간을 사용한다.

  2. 시간순 기록: 연구 활동을 시간 순서대로 기록하며, 각 활동의 날짜와 시간을 명시한다.

  3. 사실 기반 기록: 관찰한 사실을 있는 그대로 기록한다. 주관적 해석은 '고찰' 섹션에 분리하여 작성한다.

  4. 실패 기록 포함: 실패한 실험이나 예상과 다른 결과도 반드시 기록한다. 실패 원인 분석과 이를 통해 얻은 교훈을 함께 기술하면 성실 수행의 증거가 된다.

  5. 완결성: 한 건의 연구노트는 해당 연구 활동의 목적부터 결과, 고찰까지 완결된 형태로 작성한다.

  6. 서명란 포함: 기록자 서명과 점검자(제3자) 서명란을 반드시 포함한다.


분야별 작성 가이드

사용자의 연구 분야에 따라 연구노트의 세부 내용과 용어를 조정한다.

실험/하드웨어 분야 (재료, 화학, 바이오 등):

  • 실험 재료, 시약, 장비 모델명과 설정값을 구체적으로 기록
  • 실험 프로토콜을 단계별로 상세 기술
  • 측정 데이터를 표 형태로 정리
  • 안전 관련 사항이 있으면 비고에 기록

소프트웨어/전산 분야 (AI, 데이터분석, 시스템개발 등):

  • 개발 환경 (OS, 언어, 프레임워크, 버전)을 명시
  • 알고리즘 설계, 코드 로직, 아키텍처 설명
  • 테스트 케이스와 결과 (성능 지표, 정확도 등)
  • 코드 변경 이력과 사유

설계/엔지니어링 분야:

  • 설계 규격, 도면 참조, 시뮬레이션 조건
  • 시작품(프로토타입) 제작 과정
  • 성능 시험 조건과 측정 결과

조사/분석 연구 (인문사회, 정책연구 등):

  • 조사 방법론 (설문, 인터뷰, 문헌조사 등)
  • 데이터 수집 과정과 표본 설계
  • 분석 도구 및 방법
  • 주요 발견사항

문서 디자인 규격

DOCX / HWPX / PDF 공통

용지: A4 여백: 상하좌우 약 2.54cm (DOCX: 1440 DXA / HWPX: 7200 HU) 기본 폰트: 맑은 고딕 (Malgun Gothic), 본문 11pt 제목 폰트: 맑은 고딕, 14pt Bold 섹션 제목: 맑은 고딕, 12pt Bold 색상 테마:

  • 헤더 배경: #1B3A5C (짙은 남색)
  • 헤더 텍스트: #FFFFFF (흰색)
  • 테이블 헤더: #2E5A88 (중간 남색), 텍스트 흰색
  • 테이블 보더: #B0C4DE (연한 회색-파랑)
  • 서명란 배경: #F5F8FC (매우 연한 파랑)

Markdown 전용

  • # 문서 제목, ## 섹션 제목, ### 하위 제목
  • 기본 정보는 YAML 프론트매터
  • 데이터 테이블은 Markdown 테이블 문법
  • 코드/환경 정보는 코드 블록
  • 서명란은 --- 구분선 + 텍스트

스크립트 도구

본 스킬에는 문서 생성을 자동화하는 Python 스크립트가 포함되어 있다. 외부 의존성 없이 Python 표준 라이브러리만으로 동작한다.

skills/k-research-note/scripts/
├── generate_note.py         ← CLI 엔트리 포인트 (JSON → 문서 생성)
├── data_processor.py        ← 데이터 파일 파싱 및 변환
└── research_note_builder.py ← 연구노트 문서 조립 (generate_note.py가 내부 사용)

generate_note.py (메인 CLI)

문서 생성 시 별도의 Python 스크립트를 작성하지 않는다. JSON 설정 파일을 만들어 이 스크립트를 직접 호출한다.

# 기본 사용
python skills/k-research-note/scripts/generate_note.py /tmp/note_config.json

# 데이터 파일 첨부
python skills/k-research-note/scripts/generate_note.py /tmp/note_config.json --data data.csv log.txt

# stdin으로 JSON 전달
echo '{"format":"markdown",...}' | python skills/k-research-note/scripts/generate_note.py --stdin

JSON 설정 형식:

{
  "format": "hwpx",
  "output": "./연구노트_2026-03-13.hwpx",
  "metadata": {
    "과제명": "AI 기반 연구",
    "연구제목": "성능 평가",
    "기록자": "김연구",
    "작성일자": "2026-03-13",
    "과제번호": null,
    "연구책임자": null,
    "주관연구기관": null
  },
  "font": {"name": "맑은 고딕", "size": 11},
  "sections": [
    {"title": "연구 목적 / 배경", "content": "본 연구는..."},
    {"title": "연구 내용 및 방법", "content": "..."},
    {"title": "결과", "content": "..."},
    {"title": "고찰 및 결론", "content": "..."}
  ],
  "signature": {"기록자": "김연구", "점검자": "박검토"},
  "header_footer": {"mode": 1, "과제명": "AI 기반 연구", "기관명": null}
}
  • format: hwpx | markdown | docx | pdf | docx_spec | pdf_spec
  • output: 생략 시 ./연구노트_{작성일자}.{ext}로 자동 결정
  • sections: 생략된 섹션은 문서에 포함하지 않음 (Step 6~8에서 "생략" 선택 시)
  • font: 생략 시 맑은 고딕 11pt 기본값
  • signature.점검자: 없으면 빈 서명란

data_processor.py

사용자가 제공한 데이터 파일을 분석하여 연구노트 삽입에 적합한 구조로 변환한다. generate_note.py --data 옵션 사용 시 자동 호출된다.

독립 실행도 가능:

python skills/k-research-note/scripts/data_processor.py experiment.csv
python skills/k-research-note/scripts/data_processor.py data.json --json

지원 형식: CSV/TSV, JSON/JSONL, YAML, XML, 텍스트/로그, 이미지(PNG/JPG/GIF/BMP) 인코딩 자동 감지: UTF-8, CP949, EUC-KR 대용량 처리: 20행 초과 시 자동 발췌(상위 10행 + 하위 5행) + 통계 요약

사용 원칙

  • 별도의 Python 스크립트 파일을 생성하지 않는다. JSON 설정만 작성하고 generate_note.py를 호출한다.
  • Step 5-2에서 데이터 파일을 받으면 --data 옵션으로 전달한다.
  • AI 자동 작성(Step 6~8)의 내용은 JSON의 sections 배열에 넣는다.
  • 생략한 섹션은 sections에서 제외하면 문서에 포함되지 않는다.
  • DOCX/PDF 포맷은 docx_spec/pdf_spec으로 JSON 스펙을 생성한 뒤, 해당 스킬의 지침에 따라 최종 파일을 만든다.

다중 연구노트 생성

여러 건 요청 시 각각 개별 파일로 생성하고 파일명에 날짜+순번을 포함한다.


주의사항

  • 연구노트는 연구 수행의 1차 기록물이다. 실제 연구 과정을 생생하게 전달하는 기록 문체를 사용한다.
  • R&D 계획서 상의 연구 내용과 연계되도록 작성한다.
  • 수정 이력을 남기는 것이 원칙이다.
  • 과제 종료일로부터 최소 30년간 보관해야 한다.
  • 관련 스킬을 항상 먼저 검색한다. 파일 생성 전에 해당 포맷의 스킬을 찾아 읽고, 그 스킬의 최신 지침을 따른다.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

hwpx

No summary provided by upstream source.

Repository SourceNeeds Review
General

kotlin-springboot-hexagonal

No summary provided by upstream source.

Repository SourceNeeds Review
Research

skill-creator

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.

Repository SourceNeeds Review
84.3K94.2Kanthropics
Research

slack-gif-creator

Knowledge and utilities for creating animated GIFs optimized for Slack. Provides constraints, validation tools, and animation concepts. Use when users request animated GIFs for Slack like "make me a GIF of X doing Y for Slack."

Repository Source
12K94.2Kanthropics