Communityライティング&編集github.com

lucaszb-orla/lucas-setup

Web、iOS、macOSプロジェクトをLucasのセットアップと好みで初期化するスキル

lucas-setup とは?

このスキルは、プロジェクトの基盤を準備するためのガイド付きアシスタントです。フレームワークやアーキテクチャを暗黙的に選択せず、プロジェクトの指示や既存ファイルから事実に基づいて決定します。Web、Apple(iOS/macOS)、または両方のプラットフォームに対応し、テンプレートファイル(AGENTS.md、CLAUDE.md、PROJECT_CONTEXT.md)を適用するためのPythonスクリプト(apply_setup.py)が含まれています。Conductor設定やGit管理もサポートし、常にユーザーの既存設定を尊重しながら、小さくアトミックなコミットを行います。主にClaude Codeや類似のAIエージェント環境で使用することを想定し、プロジェクトの初期セットアップから継続的なドキュメント管理までを支援します。

対応✓Claude Code✓Codex CLI~Cursor
npx skills add lucaszb-orla/lucas-setup

Installed? Explore more ライティング&編集 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Lucas Setup

プロジェクトの基盤を、製品やスタック、アーキテクチャを黙って選択することなく準備します。 含まれているテンプレートを適用し、実際のコンテキストがサポートするものだけを適応させます。

フロー

  1. 対象ディレクトリ、指示ファイル、マニフェスト、Gitの状態を検査する。
  2. リクエストと既存ファイルから、プロジェクトがWeb、Apple、またはマルチプラットフォームかを判断する。
  3. プラットフォームやスタックの選択が結果を大きく変え、かつ発見できない場合は、コードを作成する前に短い質問をする。
  4. ベースファイルを適用する:
    • 新しいディレクトリ、または競合ファイルがない場合は、以下を実行する python3 <skill-dir>/scripts/apply_setup.py --target <ディレクトリ> --platform <web|apple|both>。
    • AGENTS.md、CLAUDE.md、またはPROJECT_CONTEXT.mdが存在するプロジェクトでは、上書きしない。両方を読み、互換性のあるルールを統合し、実際の競合を指摘する。
  5. PROJECT_CONTEXT.mdに観察された事実を記入する。決定事項のように見える例を残さない。
  6. リクエストにスキャフォールディングや実装が含まれている場合のみ、プロジェクトを作成または適応させる。
  7. Conductorの設定は、要求された場合、またはプロジェクトがConductor向けに準備されている場合のみ行う。
  8. ファイル、コマンド、Git、機密情報の不在を検証する。

アセットの適用

決定論的で上書きのないコピーにはscripts/apply_setup.pyを使用します。このスクリプトは:

  • 必要に応じて対象ディレクトリを作成する;
  • AGENTS.md、CLAUDE.md、PROJECT_CONTEXT.mdをコピーする;
  • 選択されたプラットフォームのガイダンスのみをコピーする;
  • 内容が異なる既存ファイルは拒否する;
  • --dry-runを受け付ける;
  • 単一プラットフォームの場合は--conductorを受け付ける。

Appleプロジェクトの場合:

python3 <skill-dir>/scripts/apply_setup.py \
  --target /プロジェクト/への/パス \
  --platform apple \
  --conductor

Webプロジェクトの場合:

python3 <skill-dir>/scripts/apply_setup.py \
  --target /プロジェクト/への/パス \
  --platform web \
  --conductor

コピー後、apply_patchを使用してPROJECT_CONTEXT.mdを編集します。

プロジェクトの決定事項

  • フレームワーク、データベース、アーキテクチャ、バンドルID、デプロイメントターゲット、プロバイダーを、リクエストやリポジトリに証拠がなければ選択しない。
  • 既に採用されているスタックとパッケージマネージャーを優先する。
  • 本当に空のプロジェクトでは、製品に基づいた短い推奨を提示するが、推奨と確定した決定は分離する。
  • テンプレートを完成させるためだけに依存関係やサービスを追加しない。
  • 宣言的なソースが存在する場合、生成されたファイルを変更しない。

必須の好み

  • インターフェース、ドキュメント、コメント、エクスポートされたコンテンツで長いダッシュを使用しない。
  • オンボーディングに装飾的な境界線を追加しない。
  • オンボーディングに主要なアートワークがある場合、それを唯一の重要なハイライトとして維持する。
  • ユーザーの変更を保持し、スコープを限定的に保つ。
  • 関連するインクリメントを検証した後、小さくアトミックなコミットを行う。
  • 決定事項や持続的な注意点が発生した場合、プロジェクトメモリを更新する。

Conductor

設定を作成する前に、実際のセットアップ、実行、テストコマンドを調査する。

  • 共有設定には.conductor/settings.tomlを使用する。
  • リポジトリのローカルな好みには.conductor/settings.local.tomlを使用する。
  • 設定可能なサーバーにはCONDUCTOR_PORTを使用する。
  • データベース、ポート、ローカルサービスを分離できない場合、実行を非並行としてマークする。
  • Conductorワークスペース内にネストされたworktreeを作成しない。
  • assets/conductor/内のTOMLは出発点として扱い、プロジェクトの事実としては決して扱わない。

Git と GitHub

  • Gitの初期化とリモートリポジトリの作成は、リクエストがそれらのアクションを許可した場合のみ行う。
  • 最初のコミットの前に、差分を検証し機密情報を探す。
  • 既存の慣例がない限り、デフォルトブランチはmainを使用する。
  • 明示的なリクエストなしにアクティブなブランチをリネームしない。
  • 可視性が明確でない場合、プロジェクトを公開として公開しない。

検証

以下を確認する:

  • AGENTS.md、CLAUDE.md、PROJECT_CONTEXT.mdが存在し、一貫性がある;
  • 該当するプラットフォームガイダンスのみが追加された;
  • コンテキストに決定事項として扱われる例が含まれていない;
  • Conductor設定が実際のコマンドを使用している;
  • 関連するテストや限定的なコマンドがパスする;
  • Gitに機密情報、アーティファクト、またはスコープ外の変更が含まれていない。

最後に、何が作成されたか、何を記入する必要があるか、実行されなかった検証があれば報告する。

関連スキル