关于 project-scaffolding
Project Scaffolding Skill 指导从头创建项目或基于 BaseProject 初始化项目,面向需要搭建目录、配置文件和技术栈结构的开发者。它提供自动或手动流程,以及 Python、JavaScript/TypeScript、Go 和 Rust 的示例。
主要功能
- 01复制并定制 BaseProject 模板
- 02规划目录命名与项目结构
- 03提供多语言初始化步骤
- 04设置密钥文件与 Git 忽略
- 05列出初始化后的核对事项
适用场景
- 01从零启动新项目
- 02为技术栈搭建目录结构
- 03初始化配置和 Git 仓库
- 04检查密钥管理与项目设置
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ autumnsgrove/ lattice --skill project-scaffolding安装后在 Claude Code 中输入/project-scaffolding确认已加载。
详细介绍
项目脚手架技能
何时激活
在以下情况下激活此技能:
- 从头创建新项目
- 设置项目目录结构
- 初始化配置文件
- 从 BaseProject 模板开始
- 设置特定技术的项目
快速设置方法
| 方法 | 适用场景 | 时间 |
|---|---|---|
| 自动化脚本 | 标准项目 | 2-3 分钟 |
| 手动设置 | 自定义配置 | 10-15 分钟 |
目录命名约定
Directories: CamelCase (VideoProcessor, AudioTools)
Date-based: kebab-case with YYYY-MM-DD (logs-2025-01-15)
NO spaces or underscores in directory names
手动设置工作流
第 1 步:复制模板
cp -r /path/to/BaseProject ~/Projects/YourProjectName/
cd ~/Projects/YourProjectName/
第 2 步:清理 Git 历史记录
rm -rf .git
第 3 步:自定义 AGENT.md
填写特定于项目的部分:
## Project Purpose
A REST API for managing inventory with real-time updates.
## Tech Stack
- Language: Python 3.11+
- Framework: FastAPI
- Key Libraries: SQLAlchemy, Pydantic
- Package Manager: UV
## Architecture Notes
- Microservices with event-driven updates
- Redis for caching
- PostgreSQL for persistence
第 4 步:初始化 Git
git init
git add .
git commit -m "chore: initialize repository from BaseProject"
特定技术的设置
使用 UV 的 Python
uv init
cp AgentUsage/templates/pyproject.toml.example pyproject.toml
uv add fastapi uvicorn sqlalchemy
uv add --dev pytest black ruff mypy
mkdir -p src/YourProject/{core,utils,config}
mkdir -p tests/{unit,integration}
touch src/YourProject/__init__.py
JavaScript/TypeScript
pnpm init
pnpm add express dotenv
pnpm add -D typescript @types/node jest eslint prettier
mkdir -p src/{routes,controllers,middleware,utils}
touch src/index.ts
Go
go mod init github.com/user/project
mkdir -p cmd/api internal/{handlers,models,database} pkg
touch cmd/api/main.go
Rust
cargo init
mkdir -p src/{routes,models,db}
cargo build
标准项目结构
Python
project/
├── src/
│ └── projectname/
│ ├── __init__.py
│ ├── main.py
│ ├── core/
│ ├── utils/
│ └── config/
├── tests/
│ ├── conftest.py
│ ├── unit/
│ └── integration/
├── pyproject.toml
├── uv.lock
├── AGENT.md
└── .gitignore
JavaScript
project/
├── src/
│ ├── index.ts
│ ├── routes/
│ ├── controllers/
│ └── utils/
├── tests/
├── package.json
├── tsconfig.json
├── AGENT.md
└── .gitignore
密钥设置
# Create template
cp AgentUsage/templates/secrets_template.json secrets_template.json
# Create actual secrets (gitignored)
cp secrets_template.json secrets.json
# Verify in .gitignore
grep "secrets.json" .gitignore
任务跟踪
使用带有适当标签的 GitHub Issues 跟踪任务。创建以下初始问题:
- 设置项目依赖项
- 配置密钥管理
- 创建初始项目结构
- 实现核心业务逻辑
- 添加单元测试
- 设置 CI/CD 流水线
验证清单
# Git initialized and clean
git status
# AGENT.md customized (no [Fill in:] markers)
grep "\[Fill in:" AGENT.md
# secrets.json in .gitignore
grep "secrets.json" .gitignore
# Dependencies installed
uv sync # or pnpm install
# Project runs
uv run python src/projectname/main.py
设置后的任务
- 为特定于项目的任务创建 GitHub Issues
- 创建初始代码入口点
- 配置 IDE 设置和扩展
- 查看 AgentUsage/ 中的相关指南
常见问题
脚本权限被拒绝
chmod +x setup_new_project.sh
Git 提交失败
git config user.name "Your Name"
git config user.email "[email protected]"
依赖项无法安装
# Python: Clear cache
uv cache clean
# JavaScript: Fresh install
rm -rf node_modules pnpm-lock.yaml
pnpm install
相关资源
请参阅 AgentUsage/project_setup.md 和 AgentUsage/project_structure.md,了解:
- 详细的目录模式
- CI/CD 设置
- Pre-commit 钩子安装
- 特定技术的指南
评论
支持 Markdown