Not in the top 1,000 by GitHub stars

insightflo/edu-deck-skills

프롬프트 하나로 한국어 교육 자료 덱(단일 HTML)을 만드는 에이전트 스킬 — 퀴즈·학습지·발표·사례 교육

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

edu-deck/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → ec1187f2838c

No earlier version was observed for comparison.

Compare on GitHub

edu-deck-series/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → ec1187f2838c

No earlier version was observed for comparison.

Compare on GitHub

edu-deck-solo/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → ec1187f2838c

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit ec1187f2838c365a3912bf6ad823aa7727965507

git clone --filter=blob:none --no-checkout https://github.com/insightflo/edu-deck-skills.git .hotskills/insightflo-edu-deck-skills && git -C .hotskills/insightflo-edu-deck-skills checkout --detach ec1187f2838c365a3912bf6ad823aa7727965507 # Copy each selected skill directory from .hotskills/insightflo-edu-deck-skills into .agents/skills/<skill-name>/
4GitHub stars
Not availablestars in 7 days
3skills in this repository
50commits in 30 days

Heat

Insufficient history

Not enough history yet to measure heat. It appears after a few days of data.

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Nov 6, 2026Nov 6, 20264

30-day change not yet available: not enough history.

Individual skills in this repository

How it works

edu-deck

When your agent uses it

Entry skill for education deck requests. Use FIRST when the user wants 교육자료, 강의 자료, 교육용 슬라이드, 직원 교육 덱, or a training series (예: "○○ 교육자료 만들어줘", "사내 교육 시리즈 만들어", "여러 편으로 나눠 교육 자료"). 판별 후 단일 발행(주제 하나, 파일 하나)이면 edu-deck-solo 경로를, 여러 편 시리즈·진도 관리·허브가 필요하면 edu-deck-series 경로를 탄다. 애매하면 사용자에게 한 번 묻는다. 덱 제작 절차는 이 스킬에 없고 각 하위 스킬에 있다.

What it loads into context

Frontmatter

155 tokens

Always available to the agent

SKILL.md

3,415 tokens

When the skill is activated

Reference documents

69,516 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. 판별 절차
  2. 경로 타기
  3. 새 덱의 공통 저작 경로
  4. 경로 결정 (새 덱·새 시리즈를 시작할 때 한 번, 덱 단위)
  5. 공통 시각·모션 계약
  6. 판별 기록
  7. 하위 스킬 안내

Scripts executed separately

  • shared/assets/js/motion.js
  • shared/assets/js/patterns.js
  • shared/assets/js/responsive.js
  • shared/assets/js/study.js
  • shared/assets/js/talk.js
  • shared/assets/js/viewer.js
  • shared/assets/kit/stack.js
  • shared/dev/defect_test.py
  • shared/dev/fill_test.py
  • shared/dev/make_icons.py
  • shared/dev/make_snippets.py
  • shared/dev/port.py
  • shared/dev/test_contrast_backdrop.py
  • shared/dev/test_contrast_matrix.py
  • shared/dev/test_cover_custom.py
  • shared/dev/test_diagram_variants.py
  • shared/dev/test_extract_copy.py
  • shared/dev/test_free_mode.py
  • shared/dev/test_fx_patterns.py
  • shared/dev/test_koboyo_icons.py
  • shared/dev/test_motion_techniques.py
  • shared/dev/test_pack_browser.py
  • shared/dev/test_pack_checker.py
  • shared/dev/test_pack_icons.py
  • shared/dev/test_pack_router.py
  • shared/dev/test_preview_pack.py
  • shared/dev/test_resource_packs.py
  • shared/dev/test_responsive.py
  • shared/dev/test_responsive_interactions.py
  • shared/dev/test_review_remediation.py
  • shared/dev/test_screen_cite.py
  • shared/dev/test_series_pack_regression.py
  • shared/dev/test_sig_log.py
  • shared/dev/test_stack.py
  • shared/dev/test_stat_strip.py
  • shared/dev/test_svg_text_box.py
  • shared/dev/test_talk.py
  • shared/dev/test_tools.py
  • shared/dev/test_variety.py
  • shared/dev/test_viewer.py
  • shared/dev/test_visual_motion.py
  • shared/dev/test_visual_motion_check.py
  • shared/dev/visual_motion_check.py
  • shared/scripts/build_deck.py
  • shared/scripts/check_deck.py
  • shared/scripts/env_check.py
  • shared/scripts/extract_copy.py
  • shared/scripts/fetch_lucide.py
  • shared/scripts/koboyo_icons.py
  • shared/scripts/pack_router.py
  • shared/scripts/resource_packs.py
  • shared/scripts/stack_schema.py
  • shared/scripts/tone_router.py
  • shared/scripts/verify_sources.py
  • shared/scripts/visual_assets.py

Files

  • SKILL.mdcore12,341 bytes
  • distribution/NOTICES.mddoc1,546 bytes
  • distribution/README.mddoc3,469 bytes
  • distribution/USAGE.mddoc5,665 bytes
  • shared/assets/css/components.cssasset16,231 bytes
  • shared/assets/css/core.cssasset14,618 bytes
  • shared/assets/css/pack-runtime.cssasset9,535 bytes
  • shared/assets/css/responsive.cssasset10,557 bytes
  • shared/assets/css/themes.cssasset6,170 bytes
  • shared/assets/css/tokens.cssasset2,005 bytes
  • shared/assets/css/viewer.cssasset10,227 bytes
  • shared/assets/css/visual-motion.cssasset13,853 bytes
  • shared/assets/fonts/GowunBatang-Regular.woff2asset535,876 bytes
  • shared/assets/fonts/GowunDodum-Regular.woff2asset445,936 bytes
  • shared/assets/fonts/OFL-GowunBatang.txtdoc4,397 bytes
  • shared/assets/fonts/OFL-GowunDodum.txtdoc4,395 bytes
  • shared/assets/fonts/OFL.txtdoc4,418 bytes
  • shared/assets/fonts/PretendardVariable.woff2asset2,057,688 bytes
  • shared/assets/icons/base.svgasset9,535 bytes
  • shared/assets/icons/extra.svgasset18,516 bytes
  • shared/assets/js/motion.jsruns50,159 bytes
  • shared/assets/js/patterns.jsruns7,322 bytes
  • shared/assets/js/responsive.jsruns22,056 bytes
  • shared/assets/js/study.jsruns34,392 bytes
  • shared/assets/js/talk.jsruns8,452 bytes
  • shared/assets/js/viewer.jsruns9,847 bytes
  • shared/assets/kit/patterns.cssasset5,540 bytes
  • shared/assets/kit/stack.jsruns15,396 bytes
  • shared/assets/kit/vendor/LICENSE-lucide.txtdoc1,154 bytes
  • shared/assets/kit/vendor/lucide-subset.jsonasset19,684 bytes
  • shared/assets/pack-shell.htmlasset2,944,463 bytes
  • shared/assets/packs/atlas/style.cssasset1,721 bytes
  • shared/assets/packs/atlas/template.htmlasset2,114 bytes
  • shared/assets/packs/base.cssasset2,300 bytes
  • shared/assets/packs/briefing/style.cssasset1,437 bytes
  • shared/assets/packs/briefing/template.htmlasset1,753 bytes
  • shared/assets/packs/casebook/style.cssasset1,399 bytes
  • shared/assets/packs/casebook/template.htmlasset1,491 bytes
  • shared/assets/packs/catalog.jsonasset6,715 bytes
  • shared/assets/packs/editorial/style.cssasset1,190 bytes
  • shared/assets/packs/editorial/template.htmlasset2,041 bytes
  • shared/assets/packs/field/style.cssasset1,564 bytes
  • shared/assets/packs/field/template.htmlasset1,651 bytes
  • shared/assets/packs/flows.jsonasset22,338 bytes
  • shared/assets/packs/lab/style.cssasset1,479 bytes
  • shared/assets/packs/lab/template.htmlasset1,623 bytes
  • shared/assets/packs/seminar/style.cssasset1,389 bytes
  • shared/assets/packs/seminar/template.htmlasset1,739 bytes
  • shared/assets/packs/workbook/style.cssasset1,606 bytes
  • shared/assets/packs/workbook/template.htmlasset1,778 bytes
  • shared/assets/shell.htmlasset2,984,239 bytes
  • shared/assets/snippets/01-cover-bigstat.htmlasset2,423 bytes
  • shared/assets/snippets/01-cover-center.htmlasset2,558 bytes
  • shared/assets/snippets/01-cover-diagram.htmlasset3,489 bytes
  • shared/assets/snippets/01-cover-mosaic.htmlasset3,658 bytes
  • shared/assets/snippets/01-cover-split.htmlasset2,847 bytes
  • shared/assets/snippets/01-cover-stripes.htmlasset2,426 bytes
  • shared/assets/snippets/01-cover.htmlasset5,249 bytes
  • shared/assets/snippets/02-agenda.htmlasset17,845 bytes
  • shared/assets/snippets/03-timeline.htmlasset14,529 bytes
  • shared/assets/snippets/04-map.htmlasset16,676 bytes
  • shared/assets/snippets/05-mechanism.htmlasset14,805 bytes
  • shared/assets/snippets/06-traits-grid.htmlasset12,128 bytes
  • shared/assets/snippets/07-meter.htmlasset17,405 bytes
  • shared/assets/snippets/08-compare-2.htmlasset16,588 bytes
  • shared/assets/snippets/09-compare-table.htmlasset16,343 bytes
  • shared/assets/snippets/10-hub.htmlasset15,484 bytes
  • shared/assets/snippets/11-levels.htmlasset13,374 bytes
  • shared/assets/snippets/12-tile-grid.htmlasset12,436 bytes
  • shared/assets/snippets/13-sequence.htmlasset15,338 bytes
  • shared/assets/snippets/14-mapping.htmlasset14,048 bytes
  • shared/assets/snippets/15-mock-legend.htmlasset11,483 bytes
  • shared/assets/snippets/16-mock-options.htmlasset10,801 bytes
  • shared/assets/snippets/17-statement.htmlasset5,675 bytes
  • shared/assets/snippets/18-build-up.htmlasset14,057 bytes
  • shared/assets/snippets/19-frame-form.htmlasset9,432 bytes
  • shared/assets/snippets/20-before-after.htmlasset11,753 bytes
  • shared/assets/snippets/21-worked-example.htmlasset16,872 bytes
  • shared/assets/snippets/22-worked-artifact.htmlasset9,442 bytes
  • shared/assets/snippets/23-quiz-ab.htmlasset6,998 bytes
  • shared/assets/snippets/24-quiz-sort.htmlasset8,147 bytes
  • shared/assets/snippets/25-quiz-ox.htmlasset7,075 bytes
  • shared/assets/snippets/26-rules-dark.htmlasset8,949 bytes
  • shared/assets/snippets/27-checklist.htmlasset8,462 bytes
  • shared/assets/snippets/28-sources.htmlasset10,015 bytes
  • shared/assets/snippets/29-closing.htmlasset6,144 bytes
  • shared/assets/snippets/30-check.htmlasset10,551 bytes
  • shared/assets/snippets/31-stat-strip.htmlasset9,026 bytes
  • shared/assets/snippets/32-screen-cite.htmlasset11,954 bytes
  • shared/assets/snippets/33-chart-bar.htmlasset17,397 bytes
  • shared/assets/snippets/34-chart-line.htmlasset18,309 bytes
  • shared/assets/snippets/35-explore.htmlasset9,857 bytes
  • shared/assets/snippets/36-detail-sheet.htmlasset10,117 bytes
  • shared/assets/snippets/37-arch-flow.htmlasset17,602 bytes
  • shared/assets/snippets/patterns/code.htmlasset1,272 bytes
  • shared/assets/snippets/patterns/faq.htmlasset839 bytes
  • shared/assets/snippets/patterns/fx.htmlasset1,513 bytes
  • shared/assets/snippets/patterns/pin-shot.htmlasset1,515 bytes
  • shared/assets/snippets/patterns/tabs.htmlasset1,137 bytes
  • shared/dev/README.mddoc12,979 bytes
  • shared/dev/crayon-reference.htmlasset19,511 bytes
  • shared/dev/defect_test.pyruns5,875 bytes
  • shared/dev/fill_test.pyruns3,517 bytes
  • shared/dev/make_icons.pyruns10,191 bytes
  • shared/dev/make_snippets.pyruns16,333 bytes
  • shared/dev/pack_shell_template.htmlasset21,254 bytes
  • shared/dev/port.pyruns1,500 bytes
  • shared/dev/shell_template.htmlasset46,424 bytes
  • shared/dev/test_contrast_backdrop.pyruns8,784 bytes
  • shared/dev/test_contrast_matrix.pyruns9,460 bytes
  • shared/dev/test_cover_custom.pyruns11,026 bytes
  • shared/dev/test_diagram_variants.pyruns13,462 bytes
  • shared/dev/test_extract_copy.pyruns7,509 bytes
  • shared/dev/test_free_mode.pyruns10,968 bytes
  • shared/dev/test_fx_patterns.pyruns17,205 bytes
  • shared/dev/test_koboyo_icons.pyruns8,816 bytes
  • shared/dev/test_motion_techniques.pyruns12,149 bytes
  • shared/dev/test_pack_browser.pyruns15,523 bytes
  • shared/dev/test_pack_checker.pyruns10,370 bytes
  • shared/dev/test_pack_icons.pyruns6,680 bytes
  • shared/dev/test_pack_router.pyruns5,219 bytes
  • shared/dev/test_preview_pack.pyruns12,177 bytes
  • shared/dev/test_resource_packs.pyruns9,791 bytes
  • shared/dev/test_responsive.pyruns10,497 bytes
  • shared/dev/test_responsive_interactions.pyruns17,072 bytes
  • shared/dev/test_review_remediation.pyruns9,937 bytes
  • shared/dev/test_screen_cite.pyruns20,858 bytes
  • shared/dev/test_series_pack_regression.pyruns11,642 bytes
  • shared/dev/test_sig_log.pyruns5,911 bytes
  • shared/dev/test_stack.pyruns15,737 bytes
  • shared/dev/test_stat_strip.pyruns15,834 bytes
  • shared/dev/test_svg_text_box.pyruns5,503 bytes
  • shared/dev/test_talk.pyruns9,398 bytes
  • shared/dev/test_tools.pyruns13,083 bytes
  • shared/dev/test_variety.pyruns9,465 bytes
  • shared/dev/test_viewer.pyruns11,199 bytes
  • shared/dev/test_visual_motion.pyruns5,120 bytes
  • shared/dev/test_visual_motion_check.pyruns2,483 bytes
  • shared/dev/visual_motion_check.pyruns26,006 bytes
  • shared/references/DESIGN_TOKENS.mddoc5,461 bytes
  • shared/references/MOTION_LIBRARY.mddoc19,283 bytes
  • shared/references/classes.mddoc23,277 bytes
  • shared/references/composition.mddoc24,561 bytes
  • shared/references/copyedit.mddoc4,873 bytes
  • shared/references/design.mddoc13,026 bytes
  • shared/references/diagrams.mddoc7,700 bytes
  • shared/references/expression.mddoc16,393 bytes
  • shared/references/icons.mddoc8,383 bytes
  • shared/references/layouts.mddoc35,978 bytes
  • shared/references/research.mddoc13,280 bytes
  • shared/references/resource-packs.mddoc20,592 bytes
  • shared/references/responsive.mddoc6,718 bytes
  • shared/references/runtimes.mddoc4,153 bytes
  • shared/references/stack.mddoc6,317 bytes
  • shared/references/talk.mddoc4,582 bytes
  • shared/scripts/build_deck.pyruns22,884 bytes
  • shared/scripts/check_deck.pyruns85,612 bytes
  • shared/scripts/env_check.pyruns4,552 bytes
  • shared/scripts/extract_copy.pyruns17,277 bytes
  • shared/scripts/fetch_lucide.pyruns3,958 bytes
  • shared/scripts/koboyo_icons.pyruns17,090 bytes
  • shared/scripts/pack_router.pyruns9,127 bytes
  • shared/scripts/resource_packs.pyruns6,195 bytes
  • shared/scripts/stack_schema.pyruns11,850 bytes
  • shared/scripts/tone_router.pyruns14,409 bytes
  • shared/scripts/verify_sources.pyruns25,113 bytes
  • shared/scripts/visual_assets.pyruns4,403 bytes
Read SKILL.md

# edu-deck: 교육 덱 진입 · 판별 (라우터)

교육 자료 요청을 받으면 먼저 규모를 판별해 알맞은 하위 스킬로 보낸다. 이 스킬은 판별만 한다. 조사·구성·제작 절차는 하위 스킬에 있다.

## 판별 절차

0. **먼저 대상 확인.** edu-deck 은 "듣는 사람이 무언가를 배우는 교육·훈련 자료"를 만든다. 제안서·입찰·피치덱·IR·홍보 소개서처럼 설득·제안이 목적인 덱은 대상 밖이다 — 이 스킬로 만들지 말고 사용자에게 알린다. 다만 "기술이전 교육"·"운영 매뉴얼 교육"·"사내 워크숍"처럼 배우는 사람이 있으면 교육 자료다(대상). 애매하면 1번부터 신호를 본 뒤 한 번 묻는다.
1. **요청 신호를 읽는다.**
   - 단일 발행 신호: 주제 하나("폭염 안전"), 산출물 하나("파일 하나", "한 번 끝내는"), 날짜·시간이 한 번("45분 교육").
   - 시리즈 신호: "시리즈", "여러 편", "N편", "묶음", "지속·정기 교육", "진도", "다 본 편", "허브/포털", 편 제목이 여러 개 나열됨.
2. **판정**
   - 단일 발행 → **edu-deck-solo** 경로.
   - 시리즈(2편 이상 + 진도·허브·통합 용어집 등 묶음 기능) → **edu-deck-series** 경로.
   - 시리즈 같지만 아직 규모를 못 정한 경우("주제가 커서 어떻게 나눌지 모르겠다")에도 시리즈 경로다 — 편 나누기는 edu-deck-series 가 구성안에서 다룬다.
View the complete source on GitHub

Skills included

  • edu-deck
  • edu-deck-series
  • edu-deck-solo

Repository facts

License
Apache-2.0
Created
Nov 5, 2026
Last pushed
Nov 7, 2026
Forks
0
Open issues
0
Project activity
Active

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 7, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 12 notes
  • edu-deck/shared/assets/pack-shell.html:1 Analysis incomplete: file exceeds text byte budget
  • edu-deck/shared/assets/pack-shell.html:115 Analysis incomplete: physical or joined line exceeds character limit
  • edu-deck/shared/assets/pack-shell.html:113 Analysis incomplete: physical or joined line exceeds character limit
  • edu-deck/shared/assets/shell.html:1 Analysis incomplete: file exceeds text byte budget
  • edu-deck/shared/assets/shell.html:337 Analysis incomplete: physical or joined line exceeds character limit
  • edu-deck/shared/assets/shell.html:335 Analysis incomplete: physical or joined line exceeds character limit
  • edu-deck-series/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • edu-deck-series/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • edu-deck-solo/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • edu-deck-solo/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • edu-deck-solo/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • edu-deck-solo/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 216 signals by file

edu-deck-series/scripts/build_series.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck-series/scripts/check_series.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck-solo/scripts/preview_pack.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/assets/fonts/OFL-GowunBatang.txt

  • Network accessline 1
    Copyright 2021 The Gowun Batang Project Authors (https://github.com/yangheeryu/Gowun-Batang)
  • Network accessline 4
    This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL
  • Network accessline 6
    http://scripts.sil.org/OFL

edu-deck/shared/assets/fonts/OFL-GowunDodum.txt

  • Network accessline 1
    Copyright 2021 The Gowun Dodum Project Authors (https://github.com/yangheeryu/Gowun-Dodum)
  • Network accessline 4
    This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL
  • Network accessline 6
    http://scripts.sil.org/OFL

edu-deck/shared/assets/fonts/OFL.txt

  • Network accessline 1
    Copyright (c) 2021, Kil Hyung-jin (https://github.com/orioncactus/pretendard),
  • Network accessline 4
    This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: https://scripts.sil.org/OFL
  • Network accessline 6
    https://scripts.sil.org/OFL

edu-deck/shared/assets/icons/base.svg

  • Network accessline 2
    2026-11-05 이 저장소에서 자체 재작성 — 이 저장소의 Apache-2.0 라이선스로 배포된다.      사용: <svg class="ico" aria-hidden="true"><use href="#i-ID"/></svg> · 목록과 의미는 references/icons.md --> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" style="position:ab
  • Network accessline 3
    사용: <svg class="ico" aria-hidden="true"><use href="#i-ID"/></svg> · 목록과 의미는 references/icons.md --> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" style="position:absolute;width:0;height:0;overflow:hidden"><defs> <symbol id="i-n
  • Network accessline 4
    <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" style="position:absolute;width:0;height:0;overflow:hidden"><defs>

edu-deck/shared/assets/icons/extra.svg

  • Network accessline 1
    <!-- edu-deck-solo 추가 아이콘 (tools/make_icons.py 로 생성). 같은 선 문법: viewBox 0 0 100 100, currentColor, 굵기 5 안팎 --> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" style="position:absolute;width:0;height:0;overflow:hidden"><defs>
  • Network accessline 2
    <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" style="position:absolute;width:0;height:0;overflow:hidden"><defs>

edu-deck/shared/assets/js/motion.js

  • Executable scriptline 1
    Executable file
  • Network accessline 212
    paths=paths.slice(0,3);     for(const p of paths){if(!p.getPointAtLength)continue;const svg=p.ownerSVGElement,len=p.getTotalLength();       const dot=document.createElementNS('http://www.w3.org/2000/svg','circle');dot.setAttribute('r','5');
  • Network accessline 213
    for(const p of paths){if(!p.getPointAtLength)continue;const svg=p.ownerSVGElement,len=p.getTotalLength();       const dot=document.createElementNS('http://www.w3.org/2000/svg','circle');dot.setAttribute('r','5');dot.setAttribute('fill','var
  • Network accessline 214
    const dot=document.createElementNS('http://www.w3.org/2000/svg','circle');dot.setAttribute('r','5');dot.setAttribute('fill','var(--accent)');dot.setAttribute('aria-hidden','true');dot.classList.add('ed-particle');p.parentElement.append(dot)

edu-deck/shared/assets/js/patterns.js

  • Executable scriptline 1
    Executable file

edu-deck/shared/assets/js/responsive.js

  • Executable scriptline 1
    Executable file

edu-deck/shared/assets/js/study.js

  • Executable scriptline 1
    Executable file

edu-deck/shared/assets/js/talk.js

  • Executable scriptline 1
    Executable file

edu-deck/shared/assets/js/viewer.js

  • Executable scriptline 1
    Executable file

edu-deck/shared/assets/kit/stack.js

  • Executable scriptline 1
    Executable file
  • Network accessline 25
    const T = 64, BW = 176, BH = 110, PX = 204, PY = 166, OX = 40, OY = 44, GPX = 12, GPT = 40, GPB = 8, NEST = 12;   const NS = 'http://www.w3.org/2000/svg';
  • Network accessline 26
    const NS = 'http://www.w3.org/2000/svg';

edu-deck/shared/assets/kit/vendor/LICENSE-lucide.txt

  • Network accessline 24
    사본 출처: lucide-static 1.69.0 (https://lucide.dev — ISC).

edu-deck/shared/assets/kit/vendor/lucide-subset.json

  • Network accessline 104
    },  "library": "lucide-static",  "license": "ISC (https://lucide.dev/license)",
  • Network accessline 105
    "library": "lucide-static",  "license": "ISC (https://lucide.dev/license)",  "version": "1.69.0"
  • Network accessline 106
    "license": "ISC (https://lucide.dev/license)",

edu-deck/shared/assets/pack-shell.html

  • Network accessline 18
    </script> <title>{{TITLE}}</title><style>/* Embedded unmodified Pretendard v1.3.9. Copyright (c) 2021, Kil Hyung-jin (https://github.com/orioncactus/pretendard),
  • Network accessline 19
    <title>{{TITLE}}</title><style>/* Embedded unmodified Pretendard v1.3.9. Copyright (c) 2021, Kil Hyung-jin (https://github.com/orioncactus/pretendard), with Reserved Font Name Pretendard.
  • Network accessline 20
    Copyright (c) 2021, Kil Hyung-jin (https://github.com/orioncactus/pretendard),
  • Network accessline 23
    This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: https://scripts.sil.org/OFL
  • Network accessline 25
    https://scripts.sil.org/OFL

edu-deck/shared/assets/shell.html

  • Network accessline 241
    /* Embedded unmodified Pretendard v1.3.9. Copyright (c) 2021, Kil Hyung-jin (https://github.com/orioncactus/pretendard),
  • Network accessline 242
    Copyright (c) 2021, Kil Hyung-jin (https://github.com/orioncactus/pretendard),
  • Network accessline 245
    This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: https://scripts.sil.org/OFL
  • Network accessline 247
    https://scripts.sil.org/OFL

edu-deck/shared/assets/snippets/28-sources.html

  • Network accessline 11
    <div class="head"><p class="eyebrow">참고 자료</p><h2 class="title">«제목 예: 오늘 내용의 근거 ≤20자»</h2></div>   <ul class="src-list">     <li data-src="F01"><span class="sid">F01</span><span><b>«발행처 ≤14자»</b>, 「«문서명 ≤30자»」, «발행일» — <a href="«https://… 
  • Network accessline 12
    <ul class="src-list">     <li data-src="F01"><span class="sid">F01</span><span><b>«발행처 ≤14자»</b>, 「«문서명 ≤30자»」, «발행일» — <a href="«https://… 원문 주소»">«짧은 주소 ≤40자»</a></span></li>     <li data-src="F02"><span class="sid">F02</span><span><b>«발행
  • Network accessline 13
    <li data-src="F01"><span class="sid">F01</span><span><b>«발행처 ≤14자»</b>, 「«문서명 ≤30자»」, «발행일» — <a href="«https://… 원문 주소»">«짧은 주소 ≤40자»</a></span></li>
  • Network accessline 14
    <li data-src="F02"><span class="sid">F02</span><span><b>«발행처 ≤14자»</b>, 「«문서명 ≤30자»」, «발행일» — <a href="«https://… 원문 주소»">«짧은 주소 ≤40자»</a></span></li>
  • Network accessline 15
    <li data-src="F03"><span class="sid">F03</span><span><b>«발행처 ≤14자»</b>, 「«문서명 ≤30자»」, «발행일» — <a href="«https://… 원문 주소»">«짧은 주소 ≤40자»</a></span></li>
  • Network accessline 21
    <section class="slide" data-archetype="sources" data-variant="footnote-list" style="gap:32px">   <div class="head"><p class="eyebrow">«파트 표시 ≤12자»</p><h2 class="title">«제목: 한 문장 ≤24자»</h2></div>   <div class="row" style="flex:1;min-height:0
  • Network accessline 22
    <div class="head"><p class="eyebrow">«파트 표시 ≤12자»</p><h2 class="title">«제목: 한 문장 ≤24자»</h2></div>   <div class="row" style="flex:1;min-height:0;gap:28px"><div style="width:220px;flex:none;background:var(--ink);color:var(--paper);padding:30p
  • Network accessline 23
    <div class="row" style="flex:1;min-height:0;gap:28px"><div style="width:220px;flex:none;background:var(--ink);color:var(--paper);padding:30px;font-size:38px;font-weight:800">«근거 번호 ≤8자»</div><ul class="src-list" style="flex:1"><li data-src=
  • Network accessline 27
    <section class="slide" data-archetype="sources" data-variant="source-cards" style="gap:32px">   <div class="head"><p class="eyebrow">«파트 표시 ≤12자»</p><h2 class="title">«제목: 한 문장 ≤24자»</h2></div>   <div style="background:var(--ink);color:var(
  • Network accessline 28
    <div class="head"><p class="eyebrow">«파트 표시 ≤12자»</p><h2 class="title">«제목: 한 문장 ≤24자»</h2></div>   <div style="background:var(--ink);color:var(--paper);padding:28px;font-size:36px;font-weight:800">«자료별 원문과 교차 출처 ≤20자»</div><ul class="src-l
  • Network accessline 29
    <div style="background:var(--ink);color:var(--paper);padding:28px;font-size:36px;font-weight:800">«자료별 원문과 교차 출처 ≤20자»</div><ul class="src-list" style="display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;flex:1"><li data-src
  • Network accessline 33
    <section class="slide" data-archetype="sources" data-variant="grouped-materials" style="gap:32px">   <div class="head"><p class="eyebrow">«파트 표시 ≤12자»</p><h2 class="title">«제목: 한 문장 ≤24자»</h2></div>   <div class="row" style="flex:1;min-heig
  • Network accessline 34
    <div class="head"><p class="eyebrow">«파트 표시 ≤12자»</p><h2 class="title">«제목: 한 문장 ≤24자»</h2></div>   <div class="row" style="flex:1;min-height:0;gap:28px"><div class="col f1" style="gap:18px"><p class="label">«공식 문서 ≤12자»</p><ul class="src-l
  • Network accessline 35
    <div class="row" style="flex:1;min-height:0;gap:28px"><div class="col f1" style="gap:18px"><p class="label">«공식 문서 ≤12자»</p><ul class="src-list"><li data-src="F01" data-step="1" style=""><span class="sid">F01</span><span><b>«발행처 ≤12자»</b>, 
  • Network accessline 39
    <section class="slide" data-archetype="sources" data-variant="quote-comparison" style="gap:32px">   <div class="head"><p class="eyebrow">«파트 표시 ≤12자»</p><h2 class="title">«제목: 한 문장 ≤24자»</h2></div>   <div class="row" style="flex:1;min-heigh
  • Network accessline 40
    <div class="head"><p class="eyebrow">«파트 표시 ≤12자»</p><h2 class="title">«제목: 한 문장 ≤24자»</h2></div>   <div class="row" style="flex:1;min-height:0;gap:28px"><div class="col f1" style="justify-content:center;background:var(--ink);color:var(--pa
  • Network accessline 41
    <div class="row" style="flex:1;min-height:0;gap:28px"><div class="col f1" style="justify-content:center;background:var(--ink);color:var(--paper);padding:36px"><p class="body" style="font-size:42px;color:var(--paper)">“«원문 확인 핵심 ≤28자»”</p><p

edu-deck/shared/dev/defect_test.py

  • Executable scriptline 1
    Executable file
  • Network accessline 36
    "no-notes": ([slide("compare-2", GOOD_CARD, notes="")], 1, ["발표자 노트"]),     "placeholder": ([slide("compare-2", GOOD_CARD, title="«제목: 한 문장 ≤20자»")], 1, ["자리표시"]),     "external-img": ([slide("compare-2", '<img src="https://example.com/a.pn
  • Network accessline 37
    "placeholder": ([slide("compare-2", GOOD_CARD, title="«제목: 한 문장 ≤20자»")], 1, ["자리표시"]),     "external-img": ([slide("compare-2", '<img src="https://example.com/a.png" alt="">')], 1, ["외부 자원"]),     "unknown-arch": ([slide("fancy-thing", GOO
  • Network accessline 38
    "external-img": ([slide("compare-2", '<img src="https://example.com/a.png" alt="">')], 1, ["외부 자원"]),

edu-deck/shared/dev/fill_test.py

  • Executable scriptline 1
    Executable file
  • Network accessline 49
    return "1234567890"[: int(nm2.group(1))] if nm2 and int(nm2.group(1)) <= 10 else "9" * (int(nm2.group(1)) if nm2 else 6)         if body.startswith("https://") or "원문 주소" in body:             return "https://www.law.go.kr/"
  • Network accessline 50
    if body.startswith("https://") or "원문 주소" in body:             return "https://www.law.go.kr/"         if re.fullmatch(r"F\d+", body):
  • Network accessline 51
    return "https://www.law.go.kr/"

edu-deck/shared/dev/make_icons.py

  • Executable scriptline 1
    Executable file
  • Network accessline 79
    parts.append(f'<symbol id="i-{iid}" viewBox="0 0 100 100">{g}{f}</symbol>') head = "<!-- edu-deck-solo 추가 아이콘 (tools/make_icons.py 로 생성). 같은 선 문법: viewBox 0 0 100 100, currentColor, 굵기 5 안팎 -->\n" OUT.write_text(head + '<svg xmlns="http://w
  • Network accessline 80
    head = "<!-- edu-deck-solo 추가 아이콘 (tools/make_icons.py 로 생성). 같은 선 문법: viewBox 0 0 100 100, currentColor, 굵기 5 안팎 -->\n" OUT.write_text(head + '<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" style="position:absolute;width:0;heig
  • Network accessline 81
    OUT.write_text(head + '<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" style="position:absolute;width:0;height:0;overflow:hidden"><defs>\n' + "\n".join(parts) + "\n</defs></svg>\n", encoding="utf-8")

edu-deck/shared/dev/make_snippets.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 12
    [Credential-related source omitted]

edu-deck/shared/dev/port.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/dev/test_contrast_backdrop.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/dev/test_contrast_matrix.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/dev/test_cover_custom.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/dev/test_diagram_variants.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 61
    [Credential-related source omitted]

edu-deck/shared/dev/test_extract_copy.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 18
    [Credential-related source omitted]
  • Access to secretsline 24
    [Credential-related source omitted]
  • Access to secretsline 42
    [Credential-related source omitted]

edu-deck/shared/dev/test_free_mode.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/dev/test_fx_patterns.py

  • Executable scriptline 1
    Executable file
  • Network accessline 94
    <p class="body" style="font-size:28px"><span data-fx="type" data-fx-at="2600">늦게 시작하는 타자</span></p>   <p class="body" style="font-size:28px">The quick brown fox jumps over the lazy dog quickly again.</p>   <figure class="pin-shot"><div clas
  • Network accessline 95
    <p class="body" style="font-size:28px">The quick brown fox jumps over the lazy dog quickly again.</p>   <figure class="pin-shot"><div class="pin-frame"><img src="https://example.com/shot.png" alt="외부 이미지">     <button type="button" class="p
  • Network accessline 96
    <figure class="pin-shot"><div class="pin-frame"><img src="https://example.com/shot.png" alt="외부 이미지">

edu-deck/shared/dev/test_koboyo_icons.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 37
    [Credential-related source omitted]

edu-deck/shared/dev/test_motion_techniques.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/dev/test_pack_browser.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/dev/test_pack_checker.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 102
    content = '<h1 class="pack-prompt">참고</h1>'             if arch == 'sources':                 content += '<a href="https://example.org">출처</a>'
  • Network accessline 103
    if arch == 'sources':                 content += '<a href="https://example.org">출처</a>'             if arch == 'check':
  • Network accessline 104
    content += '<a href="https://example.org">출처</a>'
  • Network accessline 113
    text = document(slide(content='<h1 class="pack-prompt">«제목»</h1>'                               '<p data-step="x">본문</p><script>alert(1)</script>'                               '<img src="https://example.org/a.png">'))
  • Network accessline 114
    '<p data-step="x">본문</p><script>alert(1)</script>'                               '<img src="https://example.org/a.png">'))         text = text.replace(NOTES, '')
  • Network accessline 115
    '<img src="https://example.org/a.png">'))

edu-deck/shared/dev/test_pack_icons.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 62
    icons.mkdir()         (icons / 'base.svg').write_text(             '<svg xmlns="http://www.w3.org/2000/svg"><defs>'
  • Network accessline 63
    (icons / 'base.svg').write_text(             '<svg xmlns="http://www.w3.org/2000/svg"><defs>'             '<symbol id="i-gear" viewBox="0 0 100 100"><path d="M0 0L1 1"/></symbol>'
  • Network accessline 64
    '<svg xmlns="http://www.w3.org/2000/svg"><defs>'

edu-deck/shared/dev/test_pack_router.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/dev/test_preview_pack.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/dev/test_resource_packs.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/dev/test_responsive.py

  • Executable scriptline 1
    Executable file

edu-deck/shared/dev/test_responsive_interactions.py

  • Executable scriptline 1
    Executable file

edu-deck/shared/dev/test_review_remediation.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 70
    [Credential-related source omitted]

edu-deck/shared/dev/test_screen_cite.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 26
    [Credential-related source omitted]
  • Network accessline 49
    return ('<figure class="screen-cite f3">'             '<div class="b-chrome"><span class="b-dots"><i></i><i></i><i></i></span>'             '<span class="b-url">https://example.go.kr/dashboard</span></div>'
  • Network accessline 50
    '<div class="b-chrome"><span class="b-dots"><i></i><i></i><i></i></span>'             '<span class="b-url">https://example.go.kr/dashboard</span></div>'             f'<div class="b-view">{shot}</div>'
  • Network accessline 51
    '<span class="b-url">https://example.go.kr/dashboard</span></div>'
  • Possible obfuscationline 258
    (raw_dir / 'demo-screen.png').write_bytes(base64.b64decode(TINY_PNG.split(',', 1)[1]))

edu-deck/shared/dev/test_series_pack_regression.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 120
    [Credential-related source omitted]

edu-deck/shared/dev/test_sig_log.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 19
    [Credential-related source omitted]

edu-deck/shared/dev/test_stack.py

  • Executable scriptline 1
    Executable file

edu-deck/shared/dev/test_stat_strip.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 25
    [Credential-related source omitted]
  • Network accessline 161
    - 출처: 법제처, 「안전보건규칙 제559조제4항」 - 발행일: 2025-07-17 - URL: https://www.law.go.kr/LSW/lsSideInfoP.do?lsiSeq=273603&joNo=0559
  • Network accessline 162
    - 발행일: 2025-07-17 - URL: https://www.law.go.kr/LSW/lsSideInfoP.do?lsiSeq=273603&joNo=0559 - 확인: 원문대조
  • Network accessline 163
    - URL: https://www.law.go.kr/LSW/lsSideInfoP.do?lsiSeq=273603&joNo=0559 - 확인: 원문대조 - 대조: 2026-10-30 verify_sources.py --fetch (인용·값 일치)
  • Network accessline 165
    - 대조: 2026-10-30 verify_sources.py --fetch (인용·값 일치)
  • Network accessline 171
    - 출처: 법제처, 「안전보건규칙 제560조제3항」 - 발행일: 2025-07-17 - URL: https://www.law.go.kr/LSW/lsSideInfoP.do?lsiSeq=273603&joNo=0560
  • Network accessline 172
    - 발행일: 2025-07-17 - URL: https://www.law.go.kr/LSW/lsSideInfoP.do?lsiSeq=273603&joNo=0560 - 확인: 원문대조
  • Network accessline 173
    - URL: https://www.law.go.kr/LSW/lsSideInfoP.do?lsiSeq=273603&joNo=0560 - 확인: 원문대조 - 대조: 2026-10-30 verify_sources.py --fetch (인용·값 일치)
  • Network accessline 175
    - 대조: 2026-10-30 verify_sources.py --fetch (인용·값 일치)
  • Network accessline 181
    - 출처: 고용노동부, 「폭염 대비 노동자 건강보호 대책 p.2」 - 발행일: 2026-05-13 - URL: https://www.moel.go.kr/common/downloadFile.do?file_seq=20260500843
  • Network accessline 182
    - 발행일: 2026-05-13 - URL: https://www.moel.go.kr/common/downloadFile.do?file_seq=20260500843 - 확인: 원문대조
  • Network accessline 183
    - URL: https://www.moel.go.kr/common/downloadFile.do?file_seq=20260500843 - 확인: 원문대조 - 대조: 2026-10-30 verify_sources.py --fetch (인용·값 일치)
  • Network accessline 184
    - 확인: 원문대조 - 대조: 2026-10-30 verify_sources.py --fetch (인용·값 일치) """
  • Network accessline 185
    - 대조: 2026-10-30 verify_sources.py --fetch (인용·값 일치)

edu-deck/shared/dev/test_svg_text_box.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/dev/test_talk.py

  • Executable scriptline 1
    Executable file

edu-deck/shared/dev/test_tools.py

  • Executable scriptline 1
    Executable file

edu-deck/shared/dev/test_variety.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/dev/test_viewer.py

  • Executable scriptline 1
    Executable file

edu-deck/shared/dev/test_visual_motion.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 13
    [Credential-related source omitted]

edu-deck/shared/dev/test_visual_motion_check.py

  • Executable scriptline 1
    Executable file

edu-deck/shared/dev/visual_motion_check.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/references/DESIGN_TOKENS.md

  • Network accessline 23
    - 본문·일반 제목 굵기는 800 이하. 표지 제목·대형 숫자만 900 허용. - Pretendard Variable v1.3.9 원본 WOFF2를 HTML의 `@font-face`에 base64로 넣습니다. 외부 로딩·설치가 없습니다. 글꼴 2,057,688 bytes, base64 2,743,584 bytes이며 라스터 이미지 예산과 별개입니다. - 원본: https://raw.githubusercontent.com/ori
  • Network accessline 24
    - Pretendard Variable v1.3.9 원본 WOFF2를 HTML의 `@font-face`에 base64로 넣습니다. 외부 로딩·설치가 없습니다. 글꼴 2,057,688 bytes, base64 2,743,584 bytes이며 라스터 이미지 예산과 별개입니다. - 원본: https://raw.githubusercontent.com/orioncactus/pretendard/v1.3.9/packages/pretenda
  • Network accessline 25
    - 원본: https://raw.githubusercontent.com/orioncactus/pretendard/v1.3.9/packages/pretendard/dist/web/variable/woff2/PretendardVariable.woff2

edu-deck/shared/references/research.md

  • Network accessline 48
    - 검색 도구가 낸 사실은 전부 `검색요약` 이다. `원문대조` 는 오직 5절 절차(verify_sources.py --fetch 또는 curl + grep 원문 확인)만 올린다. 도구의 "가져오기" 결과가 요약·정리 형태로 오면 그대로 써도 검색요약이다.
  • Network accessline 68
    - 원문에는 출처 페이지에 실제로 있는 문장을 60자 이내로 그대로 옮긴다. - 값에는 원문에 나온 표기 그대로 숫자·날짜·조항 번호를 쓴다. - 출처 줄과 URL 줄에는 마크다운 링크를 쓰지 않는다. URL 줄에는 https://로 시작하는 주소 하나만 쓴다.
  • Network accessline 69
    - 값에는 원문에 나온 표기 그대로 숫자·날짜·조항 번호를 쓴다. - 출처 줄과 URL 줄에는 마크다운 링크를 쓰지 않는다. URL 줄에는 https://로 시작하는 주소 하나만 쓴다. - 확인 줄에는 '검색요약'만 쓴다. 덧붙일 말은 블록 뒤 '메모:' 줄에 쓴다.
  • Network accessline 70
    - 출처 줄과 URL 줄에는 마크다운 링크를 쓰지 않는다. URL 줄에는 https://로 시작하는 주소 하나만 쓴다.
  • Network accessline 80
    - 출처: 발행처, 「문서명」 - 발행일: YYYY-MM-DD (모르면 미상) - URL: https://...
  • Network accessline 81
    - 발행일: YYYY-MM-DD (모르면 미상) - URL: https://... - 확인: 검색요약
  • Network accessline 82
    - URL: https://...
  • Network accessline 101
    - 출처: 법제처 국가법령정보센터, 「산업안전보건기준에 관한 규칙」 제560조제3항 - 발행일: 2026-03-02 - URL: https://www.law.go.kr/LSW/lsSideInfoP.do?lsiSeq=273603&joNo=0560&joBrNo=00&docCls=jo&urlMode=lsScJoRltInfoR
  • Network accessline 102
    - 발행일: 2026-03-02 - URL: https://www.law.go.kr/LSW/lsSideInfoP.do?lsiSeq=273603&joNo=0560&joBrNo=00&docCls=jo&urlMode=lsScJoRltInfoR - 확인: 원문대조
  • Network accessline 103
    - URL: https://www.law.go.kr/LSW/lsSideInfoP.do?lsiSeq=273603&joNo=0560&joBrNo=00&docCls=jo&urlMode=lsScJoRltInfoR - 확인: 원문대조 - 대조: 2026-10-30 verify_sources.py --fetch (인용·값 일치)
  • Network accessline 104
    - 확인: 원문대조 - 대조: 2026-10-30 verify_sources.py --fetch (인용·값 일치) - 사용: 07, 12
  • Network accessline 105
    - 대조: 2026-10-30 verify_sources.py --fetch (인용·값 일치)
  • Network accessline 114
    - 자료: research/raw/안전관리규정.pdf p.12 - 확인: 원문대조 - 대조: 2026-10-30 verify_sources.py --fetch (인용·값 일치)
  • Network accessline 115
    - 확인: 원문대조 - 대조: 2026-10-30 verify_sources.py --fetch (인용·값 일치) - 사용: 09
  • Network accessline 116
    - 대조: 2026-10-30 verify_sources.py --fetch (인용·값 일치)
  • Network accessline 124
    - 필수: 주장, 값, 출처, 확인, 그리고 `URL`(https://…) 또는 `자료`(사용자가 준 파일) 중 하나. 원문은 원문대조에 필요하다. - `자료` 는 덱 폴더 안 파일의 상대 경로 + 쪽이다: `research/raw/<파일> p.N`. 덱 폴더 밖 파일은 먼저 `research/raw/` 로 복사한다. `--fetch` 는 이 파일(PDF·글자 파일·HTML)을 읽어 인용과 값을 대조한다(쪽은 사람이 찾아볼 때
  • Network accessline 139
    - PDF 는 `pdftotext` → `pypdf` 순으로 글자를 뽑는다. 2. 자동 대조가 "원문 미확인"인 사실(동적 페이지 등):    - 직접 가져와 본다: `curl -L -s -A "Mozilla/5.0" --max-time 20 "<URL>" -o research/raw/p.html` 후 `grep` 으로 인용 확인. 확인되면 손으로 `원문대조` 와 `대조:` 줄을 쓴다(예: `- 대조: 2026-10-30 cu
  • Network accessline 140
    2. 자동 대조가 "원문 미확인"인 사실(동적 페이지 등):    - 직접 가져와 본다: `curl -L -s -A "Mozilla/5.0" --max-time 20 "<URL>" -o research/raw/p.html` 후 `grep` 으로 인용 확인. 확인되면 손으로 `원문대조` 와 `대조:` 줄을 쓴다(예: `- 대조: 2026-10-30 curl + grep (인용·값 일치)`).    - 또는 다른 공식 출처에서 같
  • Network accessline 141
    - 직접 가져와 본다: `curl -L -s -A "Mozilla/5.0" --max-time 20 "<URL>" -o research/raw/p.html` 후 `grep` 으로 인용 확인. 확인되면 손으로 `원문대조` 와 `대조:` 줄을 쓴다(예: `- 대조: 2026-10-30 curl + grep (인용·값 일치)`).

edu-deck/shared/references/resource-packs.md

  • Network accessline 166
    | 공개 자료 | 참고한 원리 | 이 팩에서의 독자적 적용 | |---|---|---| | [Assertion–Evidence](https://www.assertion-evidence.com/) | 메시지 중심의 문장과 시각적 근거 | 주장/질문과 확인할 자료를 연결한다 |
  • Network accessline 167
    |---|---|---| | [Assertion–Evidence](https://www.assertion-evidence.com/) | 메시지 중심의 문장과 시각적 근거 | 주장/질문과 확인할 자료를 연결한다 | | [Software Carpentry: The Unix Shell](https://swcarpentry.github.io/shell-novice/) | 준비, 단계별 실습, 학습자·강사 안내 | follow의 준비/
  • Network accessline 168
    | [Assertion–Evidence](https://www.assertion-evidence.com/) | 메시지 중심의 문장과 시각적 근거 | 주장/질문과 확인할 자료를 연결한다 |
  • Network accessline 169
    | [Software Carpentry: The Unix Shell](https://swcarpentry.github.io/shell-novice/) | 준비, 단계별 실습, 학습자·강사 안내 | follow의 준비/실습/독립 수행과 노트 분리 |
  • Network accessline 170
    | [LOOPY](https://ncase.me/loopy/) | 조건을 바꿔 시스템의 반응 탐색 | inquiry의 사전 예측·조작·관찰; 실제 시뮬레이터 구현을 뜻하지 않는다 |
  • Network accessline 171
    | [Seeing Theory](https://seeing-theory.brown.edu/) | 시각적 탐색으로 확률·통계 개념 살피기 | 관찰과 설명을 연결하고 모형 가정을 밝힌다 |
  • Network accessline 172
    | [3Blue1Brown Lessons](https://www.3blue1brown.com/lessons) | 선형대수·미적분·확률 등 수학 주제별 설명 자료 | 관련 개념을 묶어 설명하는 관점만 참고; atlas 도해는 독자 설계 |

edu-deck/shared/scripts/build_deck.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/scripts/check_deck.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Possible obfuscationline 225
    return len(base64.b64decode(re.sub(r"\s+", "", payload), validate=False))

edu-deck/shared/scripts/env_check.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 60
    net_status = None     try:         req = urllib.request.Request(
  • Network accessline 61
    try:         req = urllib.request.Request(             "https://www.law.go.kr/main.html",
  • Network accessline 62
    req = urllib.request.Request(
  • Network accessline 63
    "https://www.law.go.kr/main.html",
  • Network accessline 64
    headers={"User-Agent": "Mozilla/5.0", "Accept-Language": "ko,en;q=0.8"},         )         with urllib.request.urlopen(req, timeout=8) as r:
  • Network accessline 65
    )         with urllib.request.urlopen(req, timeout=8) as r:             net_status = r.status
  • Network accessline 66
    with urllib.request.urlopen(req, timeout=8) as r:
  • Network accessline 68
    print(f"네트워크: law.go.kr HTTP {net_status} → 셸 가져오기(--fetch·curl) 가능")     except Exception as e:         print(f"네트워크: law.go.kr 접속 실패({type(e).__name__}) → --fetch·curl 불가. 자체 검색 도구가 있어도 원문대조는 못 한다")
  • Network accessline 70
    print(f"네트워크: law.go.kr 접속 실패({type(e).__name__}) → --fetch·curl 불가. 자체 검색 도구가 있어도 원문대조는 못 한다")

edu-deck/shared/scripts/extract_copy.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/scripts/fetch_lucide.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 45
    def fetch(version):
  • Network accessline 46
    url = f"https://github.com/lucide-icons/lucide/releases/download/{version}/lucide-static-{version}.zip"
  • Network accessline 62
    icons[want] = m.group(1).strip()     return {"icons": icons, "library": "lucide-static",             "license": "ISC (https://lucide.dev/license)", "version": version}
  • Network accessline 64
    "license": "ISC (https://lucide.dev/license)", "version": version}
  • Network accessline 74
    if a.icons:         ICONS = a.icons     o = fetch(a.version)
  • Network accessline 75
    ICONS = a.icons     o = fetch(a.version)     OUT.parent.mkdir(parents=True, exist_ok=True)
  • Network accessline 76
    o = fetch(a.version)

edu-deck/shared/scripts/koboyo_icons.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 216
    [Credential-related source omitted]
  • Access to secretsline 230
    [Credential-related source omitted]
  • Network accessline 292
    lines = [HEADER, '<svg xmlns="http://www.w3.org/2000/svg"'

edu-deck/shared/scripts/pack_router.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/scripts/resource_packs.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/scripts/stack_schema.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 181
    raise StackSchemaError(f"그룹 '{g['id']}': cols 는 [c0,c1] (0~5, c0≤c1) 여야 한다")             for nid in g.get("nodes", []):                 nc = next(n["col"] for n in nodes if n["id"] == nid)
  • Network accessline 182
    for nid in g.get("nodes", []):                 nc = next(n["col"] for n in nodes if n["id"] == nid)                 if not (cols[0] <= nc <= cols[1]):
  • Network accessline 183
    nc = next(n["col"] for n in nodes if n["id"] == nid)
  • Network accessline 184
    if not (cols[0] <= nc <= cols[1]):

edu-deck/shared/scripts/tone_router.py

  • Executable scriptline 1
    #!/usr/bin/env python3

edu-deck/shared/scripts/verify_sources.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 282
    req = urllib.request.Request(url, headers={"User-Agent": "Mozilla/5.0", "Accept-Language": "ko,en;q=0.8"})
  • Network accessline 283
    try:         with urllib.request.urlopen(req, timeout=20) as r:             raw = r.read(15_000_000)
  • Network accessline 284
    with urllib.request.urlopen(req, timeout=20) as r:
  • Network accessline 373
    elif cur in upgrade and re.match(r"^\s*-\s*확인\s*:", line):                 lines[i] = "- 확인: 원문대조"                 lines.insert(i + 1, f"- 대조: {today} verify_sources.py --fetch (인용·값 일치)")
  • Network accessline 374
    lines[i] = "- 확인: 원문대조"                 lines.insert(i + 1, f"- 대조: {today} verify_sources.py --fetch (인용·값 일치)")                 cur = None
  • Network accessline 375
    lines.insert(i + 1, f"- 대조: {today} verify_sources.py --fetch (인용·값 일치)")

edu-deck/shared/scripts/visual_assets.py

  • Executable scriptline 1
    Executable file

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Declared and executed: 7 facts
Signal confidence: 182 facts

and 132 more

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeCompatibleStandard SKILL.md edu-deck/SKILL.md.claude/skills/<skill-name>/
CodexNativeManifest AGENTS.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md edu-deck/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md edu-deck/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md edu-deck/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md edu-deck/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.