본문으로 건너뛰기
cccskills
무료GitHub에 공개

privacy-check

Use to assess Privacy by Design compliance and GDPR/data protection alignment for a feature or system.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md6.4 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Privacy Check Skill

Privacy by Design assessment.

Workflow

7 Foundational Principles (Cavoukian)

  1. Proactive not Reactive: Are privacy measures built in from the start?

    • Privacy considered in design phase, not bolted on
    • Risks identified before implementation
  2. Privacy as Default: Is the most private option the default?

    • Data collection opt-in, not opt-out
    • Minimum data collected by default
    • Sharing disabled by default
  3. Privacy Embedded in Design: Is privacy integral to the system?

    • Privacy controls are core features, not add-ons
    • Architecture supports data minimization
  4. Positive-Sum, not Zero-Sum (originally "Full Functionality"): Privacy without trade-offs?

    • Privacy features don't degrade user experience
    • Not a false choice between privacy and functionality
    • Avoid false dichotomies: privacy vs. security, privacy vs. business value
  5. End-to-End Security: Data protected throughout its lifecycle?

    • Stored and sent the way the data needs: encryption where personal data is stored or sent electronically; for paper or in-person handling, who holds it and where (v0.271.0)
    • Secure deletion when no longer needed
    • Access controls throughout the data lifecycle
  6. Visibility and Transparency: Is data processing transparent?

    • Users know what data is collected and why
    • Processing purposes documented and communicated
    • Third-party sharing disclosed
  7. Respect for User Privacy: Are user interests centered?

    • Users can access their data
    • Users can correct their data
    • Users can delete their data
    • Consent is informed, specific, and revocable

Data Protection Assessment

If the product holds no personal data, say so in the data inventory, with how you know (a page that stores nothing, a book): the principles above then need only a line each confirming nothing is collected. Controls are proportional to what is held; none are defaults (v0.271.0).

  • What data is collected? List all personal data fields.
  • Why? Lawful basis for each data element.
  • How long? Retention period for each data type.
  • Who accesses it? List all parties with access.
  • Where is it stored? Data residency and cross-border transfers.
  • How is it protected? Encryption, access control, monitoring.
  • What if breached? Incident response plan exists?

Output

## Privacy Assessment: [Feature/System]

### PbD Principles
| Principle | Status | Notes |
|-----------|--------|-------|
| Proactive | Pass/Fail | ... |
| Default privacy | Pass/Fail | ... |
| Embedded | Pass/Fail | ... |
| Full functionality | Pass/Fail | ... |
| End-to-end security | Pass/Fail | ... |
| Transparency | Pass/Fail | ... |
| User respect | Pass/Fail | ... |

### Data Inventory
| Data | Purpose | Basis | Retention | Protection |
|------|---------|-------|-----------|-----------|
| ... | ... | ... | ... | ... |

### Risks and Recommendations
1. [risk and recommended action]

Canvas (MANDATORY — the source of truth, do this FIRST)

.claude/canvas/privacy-assessment.yml is the canonical record. The decision log is provenance; the canvas is what the framework READS. Write the canvas before the decision log — if only one of the two lands, it must be this one.

WHY THIS SECTION EXISTS (v0.170.0). On the dogfood project this file carried last_assessed: 2026-05-04 while all seven Privacy-by-Design principles read assessment: not-assessed with empty evidence, and data_inventory was empty. A date asserting an assessment that never landed is worse than an empty file: a reader checking freshness sees an assessed record, and the Privacy theory gate — Required at L2-L4 — reads it. Never stamp last_assessed in a run that does not also fill the principles.

UPDATE each of the seven keys in principles (proactive_not_reactive, privacy_as_default, privacy_embedded, full_functionality, end_to_end_security, visibility_transparency, respect_for_users):

  <principle_key>:
    assessment: pass|partial|fail|not-assessed
    evidence: "<what was observed, and where>"

Then: data_inventory (what personal data the product actually touches — an empty list is a CLAIM that it touches none, so make it deliberately), processors (every party outside the product that receives or stores that data, with role, data_types, location, retention_period and agreement: the answers to "Who accesses it?" and "Where is it stored?" above), dpia_required + dpia_rationale, and last_assessed.

A reassessment updates these same fields; it does not add a new block. What changed, and why, goes in the decision-log entry below. The schema rejects any root key it does not name, and from v0.250.0 the write is checked as it lands.

last_assessed IS A CLAIM ABOUT THE PRINCIPLES BELOW IT. Set it only when they were filled in the same run. If the assessment is partial, say which keys were judged in dpia_rationale rather than dating the whole file.

Postflight: Verify-After-Write (write-narration-verification discipline)

Hard rule (per the operating contract's Communication Rules, anti-pattern #7 Stage 2 graduation). Before any user-facing summary claims the assessment was recorded, use the Read tool on the canvas file and confirm the VALUE fields above actually changed — not just _meta.last_validated. A stamp moving while the assessed fields stay at their defaults is the exact failure this skill shipped with: the file reads fresh and holds nothing. Preflight protects what gets written; Postflight protects what gets claimed about what was written.

Decision Log (MANDATORY per G-P4)

APPEND a ### Privacy Assessment entry to .claude/harness/decision-log.md with: principles assessed, data flows identified, risks found, GDPR compliance status.

Theory Citations

  • Cavoukian: Privacy by Design (7 principles)
  • GDPR: Data protection regulation

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Accessibility audit, scoped to the surfaces a product actually has. Detects web / rendered_markdown / terminal / native_app / video_audio / document / headless, then applies only the criteria that bind. WCAG 2.1 AA in full for web; not at all for headless.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

haabe/mycelium472026년 10월 18일 업데이트

adopt

무료

Bring Mycelium into a project that already has code. Detects that the repo predates the framework, asks before touching anything, then reads the codebase to draft what it CAN establish (delivery, solution shape) and — the actual point — names what it cannot (purpose, strategy, real user evidence). The output is a discovery backlog with a head start, never a filled canvas.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

haabe/mycelium472026년 10월 18일 업데이트

Design the smallest viable test to validate or invalidate a critical assumption. Based on Torres's assumption testing framework, organized by Gilad's AFTER model (Assessment → Fact-Finding → Tests → Experiments → Release Results).

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

haabe/mycelium472026년 10월 18일 업데이트

Use before any research activity or significant decision. Reviews cognitive biases relevant to the current stage.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

haabe/mycelium472026년 10월 18일 업데이트

Use to evaluate whether current work aligns with Better Value Sooner Safer Happier. Run at diamond completion and periodically.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

haabe/mycelium472026년 10월 18일 업데이트

Lint canvas files for staleness, missing fields, inconsistent evidence types, and orphaned references. Run periodically or before major transitions.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

haabe/mycelium472026년 10월 18일 업데이트

haabe의 스킬 모두 보기

이 스킬의 문제 신고