modules/npm/packages/ に新しい npm/pnpm パッケージを追加するスキル
中文简介正在准备中。当前显示原文说明。
コードを実装・修正・リファクタリングするすべてのタスクで使うスキル。純粋関数を中心に設計し、副作用(DB、HTTP、ファイル、時刻、乱数、ログなど)を境界へ寄せ、データ変換、エラー表現、コレクション操作、可変状態の扱いを既存コードに合う形で整理する。ユーザーが明示的に指示しなくても、言語を問わず、コードを書き始める前に発火する。
設定値やドキュメントだけの変更では不要。
中文简介正在准备中。当前显示原文说明。
查看安装方法安装前可以查看交给 AI 代理的指令内容。
実装では、可能な限り純粋関数を中心に設計する。
同じ入力に対して同じ出力を返せる処理は、DB、HTTP、ファイル、時刻、乱数、環境変数、ログ、spawn などの副作用から分離する。副作用は、外部入出力を扱う境界や、処理の順序を組み立てる層へ寄せる。
ただし、関数型風に書くこと自体を目的にしない。近くのコードより読みにくくなる chain や、意図を追いにくくする抽象化は避ける。
map / filter / filter_map / flatMap / collect / partition / chunks などで自然に表現できないか確認するOption / Result、Scala の Option / Either、TypeScript の discriminated union のように、言語ごとの型表現で分岐を明瞭にできる場合は使うmatch、if let、switch、早期 return の方が読みやすい場合は、無理に chain にしない副作用を完全になくすのではなく、境界を明確にする。
言語やフレームワークによって層の名前が違う場合は、同じ責務を持つ境界に読み替える。
純粋関数として切り出せる処理は、fake や mock を使わずにテストできる形にする。
特に次の処理は純粋関数にしやすい。
実装後、差分に対して行う。差分だけを渡された第三者でも同じ結果になるように、対象を列挙してから、対象ごとの問いに答える。誰がこのレビューを行うかは、このスキルでは決めない。実装の進め方を管理する側に従う。
手順:
関数・メソッドごとの問い:
可変状態を導入・変更した箇所ごとの問い:
map / filter / collect などで自然に表現できないか。chain にしないほうが読みやすいなら、その理由を言い切れるか还没有评价。欢迎分享你的使用感受。
无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。
还没有评论。来写第一条吧。
modules/npm/packages/ に新しい npm/pnpm パッケージを追加するスキル
中文简介正在准备中。当前显示原文说明。
install/ 配下に新しいセットアップ用シェルスクリプトを追加するスキル
中文简介正在准备中。当前显示原文说明。
GitHub issue を新規作成・下書きするとき、または既存 issue の本文を書き直すときに必ず使うスキル。「issue を作って」「issue 化して」「これを issue にまとめて」のような依頼で発火し、`gh issue create` を直接呼ぶ前に必ず参照する。人間が合意した内容だけを、意味を足さずに issue へ残すための基準を定める。
中文简介正在准备中。当前显示原文说明。
GitHub に Pull Request を作成するスキル。ユーザーが「PRを作って」「プルリクエストを出して」「PR作成して」と言ったとき、またはコミット済みの変更をレビューに出したいときに使用する。
中文简介正在准备中。当前显示原文说明。
ドメインモデル、可視性、操作可能性、不変条件、層境界、API 設計に関わる実装時に使う。不正な状態や誤った呼び出し方を、型、関数の境界、ドメイン語彙で表し、正しい使い方が自然になる設計へ寄せるためのスキル。
中文简介正在准备中。当前显示原文说明。
コミットやPR作成の前に、作業ブランチが適切かどうかを確認・切り替えるスキル。git-commit や create-pr からサブルーチンとして呼び出される。
中文简介正在准备中。当前显示原文说明。