Skip to content
cccskills
FreePublished on GitHub

repo-hygiene

Audit and clean up the repository — remove dead files, fix naming inconsistencies, update .gitignore, and ensure the repo is well-organized for OSS contributors. Does NOT modify source code logic.

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md5.1 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Repository Hygiene

Audit repository structure, naming, configuration and documentation. Never modify source code logic. Deletions need user confirmation.

Never delete

WhatWhy
compatibility/*known-failures*.json, *-oracle-excluded.json, *-mechanisms.json, *.provenance.json, attribution-pending.json, KNOWN-FAILURES.md, GATES.mdshrink-only CI ratchets and their justifications
compatibility/{pattern-corpus,lint-adversarial,lint-env,check-fixtures,lsp-fixtures}/checked-in gate inputs
submodules/* (every entry in .gitmodules)pinned corpus sources and upstream references
fixtures/, target*/, pkg*/, compatibility/{sources,expected,actual,fmt,…}/, .corpus-cache/generated and gitignored; reclaim only with pnpm run corpus:clean, never git rm
pgo/rsvelte.profdata, upstream_issues/shipped-build input; index gated by scripts/ci/check-upstream-issues.mjs

Checklist

1. Dead and generated files

find . \( -name "*.backup" -o -name "*.bak" -o -name "*.orig" -o -name "*~" -o -name ".DS_Store" -o -name "Thumbs.db" \) \
  -not -path "*/node_modules/*" -not -path "./.git/*" -not -path "*/target/*" -not -path "./submodules/*"
ls -la benchmark-results.json .benchmark-files.txt npm 2>/dev/null   # should be gitignored / absent
find . -type d -empty -not -path "*/node_modules/*" -not -path "./.git/*" -not -path "*/target/*" -not -path "./submodules/*"

Dead file → git rm. Generated but tracked → add to .gitignore, then git rm --cached.

2. .gitignore coverage

Confirm each is present; add what is missing:

GroupPatterns
OS / editor.DS_Store, Thumbs.db, *.swp, *.swo, *~
Rust/target, **/*.rs.bk
Generatedbenchmark-results.json, .benchmark-files.txt, /fixtures/, /pkg, /npm/
Depsnode_modules/, .pnpm-store/
IDE / backup.idea/, .vscode/, *.code-workspace, *.backup, *.bak, *.orig

3. Unused scripts

Scripts live in nested dirs (scripts/{bench,ci,compat-corpus,compat-lsp,dev,diff,fixtures,perf,release,reports}/).

for f in $(find scripts -type f \( -name '*.mjs' -o -name '*.sh' \) -not -path '*/node_modules/*'); do
  name=$(basename "$f")
  hits=$(grep -rl --exclude-dir=node_modules --exclude-dir=target "$name" package.json README.md AGENTS.md .github scripts crates 2>/dev/null | grep -v "^$f$" | wc -l)
  [ "$hits" -eq 0 ] && echo "UNREFERENCED: $f"
done

Referenced anywhere → keep. Debugging utility (e.g. scripts/diff/compare-parsers.mjs) → keep and document. Unreferenced and undocumented → [ask].

4. Unused binaries

No root [[bin]]; dev binaries are crates/rsvelte_devtools/src/bin/*.rs and crates/rsvelte_core/src/bin/. pnpm run report-orphan-test-binaries lists test targets nothing references. A dev tool (profiler, benchmark_runner, …) is fine outside CI if documented.

5. Naming

  • Scripts: kebab-case, *.sh / *.mjs.
  • Rust files and dirs: snake_case — find crates -name '*.rs' | grep -E '[A-Z]|-' must be empty.
  • Tests: crates/*/tests/*.rs in snake_case.
  • Non-Rust dirs: kebab-case.

6. Documentation

  • CLAUDE.md must remain a symlink to AGENTS.md (ls -la CLAUDE.md); README.md is for humans.
  • Stale references: grep -oE '`[^`]+\.(rs|mjs|sh|json)`' README.md | tr -d '`' | while read f; do [ -e "$f" ] || echo "MISSING: $f"; done
  • OSS scaffolding: CONTRIBUTING.md (present), .github/ISSUE_TEMPLATE/, .github/PULL_REQUEST_TEMPLATE.md. Report missing ones; do not create unless asked.

7. CI/CD

ls .github/workflows/; per workflow check referenced scripts exist and actions are pinned (.pinact.yaml is the pin config). Run pnpm run check:workflow-triggers.

8. Dependencies

  • Cargo: cargo clippy --all-targets --all-features 2>&1 | grep unused; a dependency present in a Cargo.toml but never imported → [ask].
  • package.json: every devDependency referenced by some script, workflow or workspace package.

9. Build artifacts in git

git rev-list --objects --all | git cat-file --batch-check='%(objecttype) %(objectname) %(objectsize) %(rest)' \
  | awk '/^blob/ {print $3, $4}' | sort -rn | head -20

.wasm, .node and platform binaries must not be tracked.

10. Root cleanliness

ls -a vs git ls-tree --name-only HEAD: every root entry must be tracked, gitignored, or a known local dir (target*/, node_modules/, fixtures/). Anything else (e.g. .measure/) → [ask].

Workflow

  1. Run sections 1–10 in order; report each item as [ok], [fix] (auto-fixable) or [ask] (needs a decision).
  2. Summarize findings in one table.
  3. Apply [fix] items; ask the user about [ask] items and apply what is approved.
  4. Commit: git commit -m "chore: repository cleanup".

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

PR の CI 失敗を修正し、全 CI がパスするまでプッシュ→待機→修正を繰り返す。「/ci-fix-and-verify [PR番号]」「CI直して」「CIが落ちてる」「CI修正」などの依頼時に使用。

The English summary is being prepared. Showing the original description.

baseballyama/rsvelte243Updated Oct 23, 2026

PR 提出前にコードオーナー視点でフルレビューする。WHY の理解 → 設計 → AST/基盤型 → 実装(複数 Agent の順次レビュー)の順に、各フェーズでユーザーと対話しながら指摘を修正し、品質に問題がなくなるまで繰り返す。「/full-code-review」「フルレビュー」「レビューして」などの依頼時に使用。rsvelte(公式 Svelte コンパイラの Rust ポート)専用。

The English summary is being prepared. Showing the original description.

baseballyama/rsvelte243Updated Oct 23, 2026

Rust の性能改善を「計測 → 仮説 → 変更 → 再計測」のループで地道に回すためのスキル。プロファイラの選び方、Cargo の最適化設定、データ構造・アロケーション・ハッシュ・分岐などの定石をフェーズ順に適用する。1 回 1 変更 1 計測の規律を厳守する。rsvelte 固有の既知ボトルネック(`serde_json::Value` 駆逐、`bumpalo` 導入、`Atom<'a>`、codegen 直書き)と OXC 対応表、NAPI 検証手順も §7 に収録。「Rust の性能改善」「ボトルネック調査」「プロファイル取って最適化」などの依頼で使用。

The English summary is being prepared. Showing the original description.

baseballyama/rsvelte243Updated Oct 23, 2026

GitHub PR のコードレビューコメントに対応する。未 resolve のみを抽出 → 対応方針をユーザー承認 → 1 件ずつ修正+返信 → AI レビュー由来の指摘はナレッジに反映するワークフロー。「/review-response [PR番号]」「レビュー対応」「レビューに返信」などの依頼時に使用。

The English summary is being prepared. Showing the original description.

baseballyama/rsvelte243Updated Oct 23, 2026

Upgrade the Svelte submodule to the latest (or specified) version, regenerate fixtures, identify test failures, and fix all regressions until tests pass 100%.

The English summary is being prepared. Showing the original description.

baseballyama/rsvelte243Updated Oct 23, 2026

Svelte を使う外部リポジトリ(ツール / ライブラリ / アプリ)を git submodule として取り込み、Svelte コンパイラを rsvelte に差し替えても完全に同等に動作するかを検証する。既存のサブモジュールが指定された場合は最新化したうえで再検証し、回帰があれば rsvelte 側を自動修正する。「/verify-svelte-compat <url-or-name>」で実行。

The English summary is being prepared. Showing the original description.

baseballyama/rsvelte243Updated Oct 23, 2026

See all skills by baseballyama

Report a problem with this skill