本文へ移動
cccskills
無料GitHub で公開

security-hygiene

Security hygiene for GSD's self-modifying skill and agent system. Use this skill whenever: creating, editing, or deleting skill files (.claude/skills/, .claude/commands/), modifying agent definitions (.claude/agents/), working with YAML configuration or chipset files, handling JSONL observation data (.planning/patterns/), processing community-contributed skills or chipsets, any file path operations that could involve user input, or when installing/updating project-claude configuration. Also activates for discussions about skill-creator security, trust models, or content hygiene.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md7.0 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Security Hygiene

Security Philosophy

This is a self-modifying system. Security should work like a helpful companion, not an adversarial checkpoint — zen and the art of programming. Tools protect by default, guide by suggestion, block only when there is a real reason.

Threat Surface

VectorRiskCheck
Path traversalSkill names used in file paths could escape directorySanitize all skill names: alphanumeric, hyphens, underscores only. Reject .., /, \.
YAML deserializationUnsafe YAML loading executes arbitrary codeUse safe parsing only (yaml.safe_load or equivalent). Never yaml.load with untrusted input.
Data poisoningAppend-only JSONL could contain injected entriesValidate entries on read: check schema, reject oversized entries, verify timestamps are monotonic.
Permission bypassAutomated workflows might skip user confirmationNever bypass user confirmation for skill application, even in YOLO mode. YOLO applies to GSD workflow commands, not skill modifications.
Cross-project leakageUser-level skills might expose project-specific patternsUser-level skills must be generic. Project-specific patterns stay in project-level skills.
Observation privacyPattern data could leak into shared repos.planning/patterns/ must be in .gitignore. Verify on any git operation.

Content Hygiene Rules

When processing community-contributed content (skills, chipsets, LoRA adapters):

  • Check for embedded commands or script execution
  • Verify YAML does not contain unsafe tags (!!python/object, etc.)
  • Validate that skill descriptions match their actual content
  • Quarantine new community content for review before activation

Privacy Tier Taxonomy (4-tier, OOPS-08-P03)

All telemetry, observation data, and skill artefacts are classified into one of four privacy tiers. Telemetry writers MUST stamp every record with its tier and MUST NOT mix tiers in a single sink.

TierNameDescriptionExamples
APublicNo PII, no proprietary content; safe to publish externally.Open-source skill descriptions, public release notes, anonymised aggregate metrics.
BInternalNon-PII operational data; safe to share within the project team.Phase activity counts, commit-type distributions, hook firing rates, build-time profiles.
CSensitivePII, credentials, authentication tokens, individual session transcripts..env contents, OAuth tokens, individual user prompts, raw conversation logs.
DRestrictedRegulated data, proprietary IP, Fox Companies content..planning/fox-companies/ artefacts, wasteland/ content, customer-identifiable records, anything subject to legal hold.

Defaults and enforcement:

  • New telemetry writers default to Tier B unless an explicit tier label is supplied at construction.
  • Tier C data MUST be encrypted at rest and MUST be excluded from any artefact published outside the local repository (no git push of files containing Tier C content; no FTP sync; no inclusion in release notes).
  • Tier D data MUST never leave the .planning/ tree or wasteland/ branch. Surface alignments in conversation only; never commit Tier D content to a public-facing path.
  • Mixed-tier sinks are FORBIDDEN — a writer that mixes Tier A and Tier C records loses the ability to safely publish the Tier A subset.

Referenced by C5 W3.P6 tool-tracker (telemetry writer wiring) and the post-tool-use observation hook.

Authoring around the leak-scanner — don't re-trip the control (Lesson #10462)

The release-history publisher (tools/release-history/publish.mjs, leakScan) runs a hard leak-scan gate over every published chapter. Its effective patterns combine committed base patterns with operator-private patterns loaded from the gitignored release-history.local.json, so the scan is operator-machine-specific: a fresh CI checkout sees only the base patterns and never the local ones.

Two failure modes recur whenever you DOCUMENT leak-scan or security-hardening work:

  1. The control's own documentation re-trips it. A retrospective that quotes a leak pattern verbatim (e.g. v1.49.588 quoting the narrowed private-path regex it was describing) matches that pattern and is HARD-BLOCKED — even though it contains no real secret.
  2. The recursion trap. Documenting the fix for #1 by enumerating the private literals the control guards (company / email / credential-var) embeds those values into published content — a genuine leak the scanner correctly blocks. The v1.49.916 retrospective re-tripped exactly this way while documenting the v916 AC7 allowlist fix.

Authoring rule: describe the pattern, never quote the literal. In release notes, retrospectives, or docs that touch leak-scan work, refer to a pattern by name or shape ("the company-name local pattern", "the credential-var form") — never paste the regex source and never paste the private value.

Allowlist-vs-scrub decision rule:

  • The doc legitimately quotes a leak PATTERN (a regex, for self-referential documentation) → add a narrow leak_scan_allowlist entry in the committed release-history.config.json, keyed on the EXACT version + file + pattern source, with a reason. Never widen to a global pattern exemption.
  • The content embeds a genuinely-private VALUE → SCRUB the value from the content. Never allowlist a private value into published output — the allowlist is for pattern-quoting docs only, never for secrets.

This pairs the loud surface (the leak-scan gate) with the authoring discipline that keeps it from firing on its own documentation. See docs/failure-mode-contracts.md (#10427 silent-vs-loud surfaces) and docs/known-unwired-ledger-discipline.md (#10461 gate-enforce-every-runnable-surface + drift-guard).

The Staging Layer Principle

"The user's ability to work should be reasonable. Security should also be reasonable. We strive for the clean intersection." Do not over-alert. Do not create friction for normal operations. Surface findings only when something genuinely warrants attention.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Provides web accessibility best practices for semantic HTML, ARIA, keyboard navigation, color contrast, and screen reader patterns. Use when building UI components, reviewing accessibility, or when user mentions 'a11y', 'accessibility', 'ARIA', 'screen reader', 'keyboard navigation', 'WCAG'.

日本語の概要は準備中です。原文の説明を表示しています。

Tibsfox/gsd-skill-creator712026年7月20日 更新

Active listening techniques for effective communication. Covers attending behaviors, paraphrasing, reflective listening, clarifying questions, empathic response, barriers to listening, listening in conflict, and cross-cultural listening. Use when building listening skills, improving understanding in conversation, mediating disputes, or analyzing communication breakdowns.

日本語の概要は準備中です。原文の説明を表示しています。

Tibsfox/gsd-skill-creator712026年7月20日 更新

Adversarial spec-compliance PR review — cross-references diffs against approved specs, verifies runtime claims against source, detects competing PRs, audits scope/convention compliance. Use before merging.

日本語の概要は準備中です。原文の説明を表示しています。

Tibsfox/gsd-skill-creator712026年7月20日 更新

Provides best practices for AI agent orchestration including MCP servers, A2A protocol, multi-agent coordination, and swarm architectures. Use when designing agent systems, configuring MCP servers, setting up agent teams, or when user mentions 'MCP', 'A2A', 'agent orchestration', 'multi-agent', 'swarm', 'agent team', 'LangGraph', 'CrewAI', 'AutoGen'.

日本語の概要は準備中です。原文の説明を表示しています。

Tibsfox/gsd-skill-creator712026年7月20日 更新

Symbolic manipulation, equation solving, and algebraic structures for mathematical reasoning. Covers distributive law, factoring, completing the square, linear through polynomial equation solving, systems of equations (substitution, elimination, Gaussian elimination, matrix methods), algebraic structures (groups, rings, fields), modular arithmetic, polynomial theory, and inequalities. Use when solving equations, simplifying expressions, working with algebraic structures, or performing symbolic manipulation.

日本語の概要は準備中です。原文の説明を表示しています。

Tibsfox/gsd-skill-creator712026年7月20日 更新

Understanding how algorithmic systems shape what users see, know, and do -- from recommendation feeds to search ranking to credit scoring to hiring software. Covers the mechanics of recommendation systems, algorithmic bias and its sources, personalization's effects on information diets, opacity and accountability, AI limitations (hallucination, confident wrongness), and the human-in-the-loop question. Use when a learner needs to think critically about why particular content reached them.

日本語の概要は準備中です。原文の説明を表示しています。

Tibsfox/gsd-skill-creator712026年7月20日 更新

Tibsfox のスキルをすべて見る

このスキルの問題を報告する