Lucas Setup
在不默默選擇產品、技術棧或架構的情況下,為專案建立基礎。 套用所附的範本,並僅調整實際脈絡所支持的項目。
流程
- 檢查目標目錄、指令檔案、清單文件與 Git 狀態。
- 根據要求與現有檔案,判斷專案類型為 Web、Apple 或跨平台。
- 如果平台或技術棧的選擇會顯著改變結果,且無法明確得知時,在建立程式碼前先提出簡短問題。
- 套用基礎檔案:
- 在新目錄或無衝突檔案的目錄中,執行
python3 <skill-dir>/scripts/apply_setup.py --target <目錄> --platform <web|apple|both>。 - 若專案已存在
AGENTS.md、CLAUDE.md或PROJECT_CONTEXT.md,則不覆寫。讀取所有檔案,合併相容的規則,並標示出實際的衝突。
- 在新目錄或無衝突檔案的目錄中,執行
- 根據觀察到的事實填寫
PROJECT_CONTEXT.md。不要留下看起來像決策的範例。 - 僅當要求包含 scaffolding 或實作時,才建立或調整專案。
- 僅在明確要求時,或專案正在為執行器做準備時,才設定執行器。
- 驗證檔案、命令、Git 狀態,並確保無機密資訊。
套用資產
使用 scripts/apply_setup.py 進行確定性且不覆寫的複製。該指令稿:
- 必要時建立目標目錄;
- 複製
AGENTS.md、CLAUDE.md和PROJECT_CONTEXT.md; - 僅複製所選平台的指引;
- 拒絕任何內容不同的現有檔案;
- 支援
--dry-run; - 支援
--conductor用於單一平台。
對於 Apple 專案:
python3 <skill-dir>/scripts/apply_setup.py \
--target /path/to/project \
--platform apple \
--conductor
對於 Web 專案:
python3 <skill-dir>/scripts/apply_setup.py \
--target /path/to/project \
--platform web \
--conductor
複製完成後,使用 apply_patch 編輯 PROJECT_CONTEXT.md。
專案決策
- 若要求在或儲存庫中沒有明確證據,不要選擇框架、資料庫、架構、Bundle ID、部署目標或供應商。
- 優先使用已採用的技術棧與套件管理工具。
- 在完全空的專案中,根據產品提供簡短建議,但必須區分建議與已確認的決策。
- 不要為了填滿範本而加入依賴或服務。
- 若有宣告式來源,不要修改已產生的檔案。
強制偏好
- 在介面、文件、註解或匯出的內容中,不要使用長破折號。
- 不要為引導流程加上裝飾性邊框。
- 若引導流程中有主要素材,將其作為唯一的視覺重點。
- 保留使用者的修改,並嚴格限定範圍。
- 在驗證過重要的增量後,進行小而集中的提交。
- 當出現長期的決策或陷阱時,更新專案記憶。
執行器
在建立組態前,先調查實際的設定、執行與測試命令。
- 使用
.conductor/settings.toml存放共享組態。 - 使用
.conductor/settings.local.toml存放儲存庫的本機偏好。 - 在可設定的伺服器上使用
CONDUCTOR_PORT。 - 當資料庫、連接埠或本機服務無法隔離時,將執行標記為非並行。
- 不要在執行器工作區內建立巢狀的 worktree。
- 將
assets/conductor/中的 TOML 視為起點,而非專案的事實。
Git 與 GitHub
- 僅在要求授權執行這些操作時,才初始化 Git 並建立遠端儲存庫。
- 在第一次提交前,檢查 diff 並搜尋機密資訊。
- 除非已有既有慣例,否則使用預設分支
main。 - 未經明確要求,不要重新命名目前分支。
- 當可見性不明確時,不要將專案設為公開。
驗證
確認:
AGENTS.md、CLAUDE.md和PROJECT_CONTEXT.md存在且內容一致;- 僅添加了適用的平台指引;
- 上下文中沒有被當作決策的範例;
- 執行器組態使用實際的命令;
- 相關的狹義測試或命令執行成功;
- Git 中沒有機密、成品或範圍外的變更。
最後,報告已建立的內容、需要填寫的項目,以及任何未執行的驗證。