원클릭으로
dependency-observation
依存関係の取り違えを検出する観測。lockfile固定、クリーンビルド、統合スモークで再現性を担保。Use when: 依存追加/更新、CI設定、ローカルでは動く問題、新環境セットアップ、バージョン差異の疑い。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
依存関係の取り違えを検出する観測。lockfile固定、クリーンビルド、統合スモークで再現性を担保。Use when: 依存追加/更新、CI設定、ローカルでは動く問題、新環境セットアップ、バージョン差異の疑い。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
デザインシステムの構築・運用を体系的に行うスキル。ドキュメント(要件定義・ブランドガイドライン)からDesign Tokens・コンポーネント体系・ガバナンスまでを一貫して設計する。思考フレームワーク(Double Diamond・Atomic Design・Design Tokens 3層)の適用、暗黙的デザイン判断の形式知化(DDR/QOC/RFC)、UIインベントリ収集(手動+MCP自動化)を統合する。ゼロから体系的に構築する用途向け。既存の単発UIから再利用可能な構造を抽出するにはrelational-design-pluginのdesign-system-backflowスキルを使用すること。Use when: 「デザインシステムを構築して」「デザインシステムを設計して」「デザイントークンを定義して」「デザイン原則を策定して」「UIインベントリを作って」「デザインガバナンスを設計して」「デザイン判断を記録して」と言われた時。
iOS/Androidモバイルアプリのデザインを体系的に行うスキル。Apple HIG・Material Design 3などプラットフォームガイドラインに準拠し、ナビゲーション・レイアウト・コンポーネント・モーション・アクセシビリティを適切に設計する。デザイン判断の観察・関係・仮説・撤回可能性をtraceとして残したい場合はrelational-design-pluginを使用すること。Use when: 「モバイルアプリをデザインして」「iOSアプリのUIを設計して」「Androidアプリの画面を作って」「モバイルのナビゲーションを設計して」「タッチUIを改善して」「アプリのアクセシビリティを対応して」と言われた時。
Webアプリの個別画面・コンポーネントのデザインを体系的に行うスキル。デザインプロセス・レイアウト・コンポーネント設計・インタラクション・アクセシビリティなどWebデザインの確立された手法を適用する。デザインシステム全体の構築・運用はdesign-system-builderスキルを使用すること。デザイン判断の観察・関係・仮説・撤回可能性をtraceとして残したい場合はrelational-design-pluginを使用すること。Use when: 「Webアプリをデザインして」「UIを設計して」「画面をデザインして」「レスポンシブ対応して」「アクセシビリティを改善して」「コンポーネントを設計して」「カラーパレットを決めて」と言われた時。
Use this skill when a design assumption, user segment, business goal, constraint, or product requirement has changed and you need to analyze which design hypotheses, decisions, artifacts, copy, or components should be retracted or revised. Requires a Relational Design trace session with recorded observations/relations/hypotheses/decisions to analyze against — not a general "redo this design" request.
Use this skill to critique an existing UI, frontend implementation, wireframe, flow, or visual design through Relational Design relations: user state, business intent, action risk, trust, information density, reversibility, accessibility, and implementation constraints. This is a relation-based critique, not a general design-methodology review — for platform-guideline or design-system compliance review, use design-plugin instead.
Use this skill after creating or reviewing a design artifact to extract reusable design-system knowledge: semantic tokens, components, variants, interaction rules, copy patterns, accessibility constraints, and governance notes. This only backflows structure out of an artifact that already exists — to build or govern a design system from scratch (Design Tokens layers, Atomic Design, DDR/QOC/RFC, UI inventory), use design-plugin's design-system-builder instead.
| name | dependency-observation |
| context | fork |
| description | 依存関係の取り違えを検出する観測。lockfile固定、クリーンビルド、統合スモークで再現性を担保。Use when: 依存追加/更新、CI設定、ローカルでは動く問題、新環境セットアップ、バージョン差異の疑い。 |
生成コードは「見たことあるAPIっぽいもの」を書きがちで、依存取り違えは頻出。 このスキルは"works on my machine"を潰し、依存の再現性を確保する。
lockfile が存在し、かつCIで固定が破られたら即failするか確認。
言語別lockfile:
| 言語 | lockfile |
|---|---|
| Node.js | package-lock.json / yarn.lock / pnpm-lock.yaml |
| Python | poetry.lock / Pipfile.lock / requirements.txt (pip-compile) |
| Go | go.sum |
| Rust | Cargo.lock |
| Ruby | Gemfile.lock |
キャッシュに頼らないビルドを実行:
# Node.js
rm -rf node_modules && npm ci
# Python (poetry)
rm -rf .venv && poetry install
# Go
go clean -cache && go build ./...
# Rust
cargo clean && cargo build
どのバージョンが入っているかを出力:
# Node.js
npm ls --all
# Python
pip list --format=freeze
# Go
go list -m all
# Rust
cargo tree
"本物の依存"で最小経路だけ叩く:
# 例: DB接続→1クエリのスモークテスト
def test_database_smoke():
conn = get_db_connection()
result = conn.execute("SELECT 1").fetchone()
assert result[0] == 1
起動時に依存バージョンと設定をログ出力(トラブルシュートの生命線):
{
"event": "app_started",
"runtime": "python 3.11.5",
"dependencies": {
"sqlalchemy": "2.0.23",
"pydantic": "2.5.2"
}
}
詳細は references/ci-templates.md を参照。
name: Dependency Check
on: [push, pull_request]
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Check lockfile exists
run: |
if [ ! -f package-lock.json ]; then
echo "❌ package-lock.json not found"
exit 1
fi
- name: Clean install (fail on lockfile mismatch)
run: npm ci
- name: Smoke test
run: npm run test:smoke
// tests/smoke.test.ts
describe('Integration Smoke', () => {
it('connects to database', async () => {
const db = await createConnection();
const result = await db.query('SELECT 1 as value');
expect(result[0].value).toBe(1);
await db.close();
});
it('external API is reachable', async () => {
const response = await fetch(process.env.API_ENDPOINT + '/health');
expect(response.ok).toBe(true);
});
});