mirror of
https://github.com/affaan-m/ECC.git
synced 2026-08-17 21:15:40 +02:00
* fix: resolve issue cluster (#2295,#2298,#2303,#2304,#2305,#2306,#2340) + createdTime fallback bug - session-manager: fix createdTime birthtime||ctime fallback that never fired (a Date is always truthy); use birthtimeMs>0 check via resolveCreatedTime() - installer: rewrite source-relative rules/skills links for the injected ecc/ namespace so installed skills resolve correctly (#2340) - continuous-learning-v2: drop unused mock import (#2305); standardize bash shebangs (#2303); poll for PID file instead of fixed sleep (#2295); rename _ecc_* -> _clv2_* (#2304); align promotion confidence docs (#2298); de-brittle Scope Decision Guide cross-reference (#2306) Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * fix(ci): resync lockfiles with package.json (eslint 10) + migrate yarn.lock to Yarn 4 format package.json requires eslint@^10.6.0 but the committed locks pinned 9.39.2, so npm ci aborted and Yarn 4 hardened mode rejected the stale v1-classic yarn.lock (YN0028). Regenerate package-lock.json and rewrite yarn.lock in Yarn 4 (berry) format so npm ci and immutable yarn installs both pass. Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * fix(ci): require clean probe exit for Windows shell/bash detection; add pyyaml dev dep Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * fix(observer): portable mktemp template on BSD/macOS (#2417); correct false attribution-disabled claim in git-workflow docs (#2426) (#2430) Co-authored-by: affaan <affaan@itomarkets.com> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * fix: remove duplicate resolveCreatedTime introduced by merge (no-redeclare) Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * fix: restore heading-based Scope Decision Guide ref (line numbers drift) + keep behavioral #2340 install test --------- Co-authored-by: affaan <affaan@itomarkets.com> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Co-authored-by: Affaan Mustafa <me@affaanmustafa.com>
ルール
構造
ルールは common レイヤーと 言語固有 ディレクトリで構成されています:
rules/
├── common/ # 言語に依存しない原則(常にインストール)
│ ├── coding-style.md
│ ├── git-workflow.md
│ ├── testing.md
│ ├── performance.md
│ ├── patterns.md
│ ├── hooks.md
│ ├── agents.md
│ └── security.md
├── typescript/ # TypeScript/JavaScript 固有
├── python/ # Python 固有
└── golang/ # Go 固有
- common/ には普遍的な原則が含まれています。言語固有のコード例は含まれません。
- 言語ディレクトリ は common ルールをフレームワーク固有のパターン、ツール、コード例で拡張します。各ファイルは対応する common ファイルを参照します。
インストール
オプション 1: インストールスクリプト(推奨)
# common + 1つ以上の言語固有ルールセットをインストール
./install.sh typescript
./install.sh python
./install.sh golang
# 複数の言語を一度にインストール
./install.sh typescript python
オプション 2: 手動インストール
重要: ディレクトリ全体をコピーしてください。
/*でフラット化しないでください。 Common と言語固有ディレクトリには同じ名前のファイルが含まれています。 それらを1つのディレクトリにフラット化すると、言語固有ファイルが common ルールを上書きし、 言語固有ファイルが使用する相対パス../common/の参照が壊れます。
# common ルールをインストール(すべてのプロジェクトに必須)
cp -r rules/common ~/.claude/rules/common
# プロジェクトの技術スタックに応じて言語固有ルールをインストール
cp -r rules/typescript ~/.claude/rules/typescript
cp -r rules/python ~/.claude/rules/python
cp -r rules/golang ~/.claude/rules/golang
# 注意!実際のプロジェクト要件に応じて設定してください。ここでの設定は参考例です。
ルール vs スキル
- ルール は広範に適用される標準、規約、チェックリストを定義します(例: 「80% テストカバレッジ」、「ハードコードされたシークレットなし」)。
- スキル (
skills/ディレクトリ)は特定のタスクに対する詳細で実行可能な参考資料を提供します(例:python-patterns、golang-testing)。
言語固有のルールファイルは必要に応じて関連するスキルを参照します。ルールは 何を するかを示し、スキルは どのように するかを示します。
新しい言語の追加
新しい言語(例: rust/)のサポートを追加するには:
rules/rust/ディレクトリを作成- common ルールを拡張するファイルを追加:
coding-style.md— フォーマットツール、イディオム、エラーハンドリングパターンtesting.md— テストフレームワーク、カバレッジツール、テスト構成patterns.md— 言語固有の設計パターンhooks.md— フォーマッタ、リンター、型チェッカー用の PostToolUse フックsecurity.md— シークレット管理、セキュリティスキャンツール
- 各ファイルは次の内容で始めてください:
> このファイルは [common/xxx.md](../common/xxx.md) を <言語> 固有のコンテンツで拡張します。 - 利用可能な既存のスキルを参照するか、
skills/配下に新しいものを作成してください。