mcpField
S
setup-template

setup-template

github.com/masseater开发22.6k 次安装2 天前更新
代码仓库

关于 setup-template

用于检查由 `masseater/typescript-template` 创建的仓库是否符合模板现有骨架的 skill。它通过命令输出和文件核实 GitHub 设置及仓库内容,只报告缺漏而不直接修改。

主要功能

  1. 01使用 `gh` 配置 GitHub
  2. 02对照模板骨架检查
  3. 03检查要素是否存在并生效
  4. 04识别过时或重复配置
  5. 05运行 `vp install` 和 `vp run verify`
  6. 06附证据报告缺漏

适用场景

  1. 01审计基于模板的仓库迁移
  2. 02查找缺失的 GitHub 自动化设置
  3. 03核实 hook 和工作流是否生效
  4. 04记录迁移未完成项

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/masseater/skills --skill setup-template

安装后在 Claude Code 中输入/setup-template确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
typescript-template.md
usecases/
check.md
setup.md

详细介绍

来自项目 README

setup-template

masseater/typescript-template から作ったリポジトリを、テンプレートに揃える。GitHub 側の設定は gh で揃え、中身の移行が完了しているかは、テンプレートの骨格と突き合わせて確かめる。対象リポジトリを REPO=<owner>/<name> とする。

  • 設定はすべて gh で行う
  • どの手順も、同じ値で何度実行しても結果が変わらない
  • それ以外のリポジトリで使うときは、作業を始める前に、どの手順を適用するかをユーザーに確認する
  • 基準にするのは、テンプレートが持ち続けている骨格である。テンプレートの新しいリリースで増えた要素は、欠けとして扱わない
  • 各要素は、入っているか、効いているか、古い形や重複が残っていないかの 3 点で見る
  • 判定には、コマンドの出力やファイルの実物を根拠として添える
  • 対象外の要素には、リポジトリの現実から言える理由を書く
  • 検査では直さない。欠けは一覧として渡す。直しながら検査すると、判定が直しの結果に塗り替わる
  • 検査や lint を緩めて緑にした形跡は、欠けとして扱う

この skill が必要な理由と達成したい状態

この skill が必要な理由は、テンプレートから作ったリポジトリに、コードとワークフローは引き継がれても、GitHub 側の設定とアプリ名が引き継がれないことにある。secrets、Actions の権限、ルールセットがそれにあたる。ワークフローのファイルは揃っているので、設定が抜けていてもファイルを見ただけでは分からない。抜けたまま動く自動化は、失敗するか、何もしないまま終わる。どちらにせよ、誰も気づかない。

中身も同じである。移行の欠けは失敗として現れない。hook が 1 つ足りなくても、古い設定が隣に残っても、入っている検査の範囲では、ビルドもテストも verify も通る。欠けは気づかれずに残り、取り残しは効かないまま残る。報告には「移行しました」しか出てこない。テンプレートは動くアプリの土台も持っているので、移行の目標は「アプリが動く」ことに寄る。そのぶん、動かすのに要らない骨格から先に抜け落ちる。リポジトリは欠けを教えてくれないので、テンプレートの骨格から逆向きに突き合わせないと、未完了は見つからない。

この skill で達成したい状態は、作った直後から、テンプレートと同じ自動化と保護が GitHub 側でも中身でも効いていて、その状態を要素ごとに実物の出力で言い切れていることである。

検査の基準

typescript-template も読むこと。

  • 骨格の一覧は references にある。今のタスクの並び、hook の中身、ワークフローの条件のような細部は、手元のテンプレートの実物で確かめる。一覧を写しとして使わない
  • テンプレートの新しいリリースで増えた要素は、欠けにしない。それは移行の欠けではなく、更新の未取り込みである。取り込みは template-release の仕組みが案内する。混ぜると、未完了なのか、ただ古いだけなのかが判定から読めなくなる
  • 対象外の要素には理由を書く。「アプリを持たない」「デプロイしない」のように、リポジトリの現実から言えることだけを理由にする。理由の書けない対象外は欠けである

判定の作り方

  • 入りは、ファイルと依存が実在するかで見る
  • 効きは、動かす仕組みが繋がっていて、実際に走るかで見る。設定ファイルにあるだけの hook や、このリポジトリでは決して動かない条件は、効いていない
  • 残りは、置き換えの済んだ古い仕組みが残っていないか、同じ役割の設定が二重になっていないかで見る
  • 古い形でも働いているものは、欠けにしない。欠けと言えるのは、無いことで何かが壊れるか、静かに無効になるものだけである。形の新しさはテンプレートの更新の領分なので、混ぜると本当の欠けが埋もれる
  • 根拠は実物にする。ファイルを開き、コマンドを実行する。poteto-principles の prove-it-works に従い、「ありそう」は判定にしない
  • vp install と vp run verify を実行する。verify が落ちたら、落ちたタスクとその出力を最初の欠けとして扱う
  • 判定は「移行完了」か「未完了」の 2 つにする。未完了には、要素、欠けの中身、根拠のコマンドと出力を添える
  • 検査のタスクや厳しさを緩めて緑にした形跡は、それ自体を欠けにする。タスクの削除、severity や ignorePatterns の緩和、無視コメントの増加がそれにあたる。緩んでいるかもしれない検査は、ほかの判定の基準に使えないからである

用途

次を読むこと。

  • setup。GitHub 側の設定を gh で揃える
  • check。移行の完了を判定する

评论

支持 Markdown