بنقرة واحدة
project-scaffolding
Scaffolds project-level structure (root files, specs).
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Scaffolds project-level structure (root files, specs).
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Orchestrates SDD project initialization — version detection, environment verification, scaffolding, and git setup.
Manage project settings in sdd/sdd-settings.yaml including component settings that drive scaffolding.
Single gateway for all core↔tech-pack interactions. Reads manifests, resolves paths, loads skills/agents, routes commands.
Manage tasks and plans using the .tasks/ directory.
Standards for authoring SDD plugin agents — frontmatter, self-containment, skill references, and no-user-interaction rules.
Standards for authoring SDD plugin commands — frontmatter, user interaction, skill/agent invocation, CLI integration, and output formatting.
| name | project-scaffolding |
| description | Scaffolds project-level structure (root files, specs). |
| user-invocable | false |
Creates the non-component parts of an SDD project: root files and specs directory.
/sdd I want to initialize a new project)Creates only the essential structure needed to start. Additional components are scaffolded during implementation when the plan includes a scaffolding phase.
mode: minimal
project_name: my-app
target_dir: /path/to/project
Creates:
project/
├── sdd/
│ └── sdd-settings.yaml # Minimal settings
├── specs/
│ └── INDEX.md # Empty spec registry
├── package.json # Root project (from tech pack template)
├── README.md
├── CLAUDE.md
└── .gitignore
NOT created in minimal mode:
changes/ directoryspecs/domain/ subdirectoriesspecs/architecture/specs/SNAPSHOT.mdCreates the complete structure. Used when upgrading or explicitly requested.
mode: full
project_name: my-app
project_description: My application
primary_domain: Task Management
target_dir: /path/to/project
Creates:
project/
├── sdd/
│ └── sdd-settings.yaml
├── specs/
│ ├── INDEX.md
│ ├── SNAPSHOT.md
│ └── domain/
│ ├── glossary.md
│ ├── definitions/
│ └── use-cases/
├── changes/
│ └── INDEX.md
├── README.md
├── CLAUDE.md
├── package.json
└── .gitignore
This skill NEVER overwrites existing files:
This makes it safe to run multiple times for repair/upgrade scenarios.
Use during:
/sdd I want to initialize a new project in minimal mode| Variable | Description |
|---|---|
{{PROJECT_NAME}} | Project name (lowercase, hyphens) |
{{PROJECT_DESCRIPTION}} | Brief project description |
{{PRIMARY_DOMAIN}} | Primary business domain |
{{PLUGIN_VERSION}} | SDD plugin version |
{{CURRENT_DATE}} | Current date (YYYY-MM-DD) |
Use the minimal template defined in the project-settings skill (see its "Minimal Template" section). That skill is the authoritative source for the sdd-settings.yaml schema and template format.
# Specifications Index
This file tracks all specifications in the project.
## Changes
No changes yet. Create your first change with:
/sdd I want to create a new feature
## Domain Knowledge
Domain knowledge (glossary, personas, use cases) is populated when you create changes.
Schema: schemas/input.schema.json
Accepts scaffolding mode, project name, target directory, and optional description and domain.
Schema: schemas/output.schema.json
Returns success status and list of created files.
Templates are in this skill's templates/ directory:
skills/project-scaffolding/templates/
├── project/
│ ├── package.json # Root project package.json
│ ├── README.md
│ └── CLAUDE.md
├── specs/
│ ├── SNAPSHOT.md
│ └── glossary.md
└── changes/
└── INDEX.md
CRITICAL: The sdd/ directory MUST be version controlled.
The generated .gitignore should:
sdd/ or any sdd/* patternsspecs/ or changes/ directories# Dependencies
node_modules/
# Build outputs
dist/
build/
*.tsbuildinfo
# IDE
.idea/
.vscode/
*.swp
# OS
.DS_Store
Thumbs.db
# Environment
.env
.env.local
.env.*.local
# Logs
*.log
logs/
# Test coverage
coverage/
# IMPORTANT: sdd/ is NOT ignored - it contains version-controlled SDD artifacts
# Do NOT add sdd/ to this file
When running in repair/upgrade mode, check existing .gitignore:
.sdd or sdd/ pattern exists, remove itspecs/ pattern exists, remove itchanges/ pattern exists, remove itProject scaffolding uses the scaffolding engine internally. The scaffolding project command builds a spec from the project config and calls executeSpec. You do not need to invoke scaffolding apply separately for project-level files — the CLI handles it.
The project scaffolding CLI:
ScaffoldingConfig into a ScaffoldSpectemplate_dir operations (using colocated templates in each component skill).gitignore, .claudeignore, architecture overview) as write_file operationspackage_json_scripts operations{
"target_dir": "<project-root>",
"base_dir": "<plugin-root>/skills",
"variables": {
"PROJECT_NAME": "my-app",
"PROJECT_DESCRIPTION": "My application",
"PRIMARY_DOMAIN": "Task Management"
},
"operations": [
{
"type": "template_dir",
"source": "project-scaffolding/templates/project",
"dest": "."
},
{
"type": "write_file",
"path": ".gitignore",
"content": "<computed-content>",
"if_exists": "skip"
}
]
}
Component scaffolding skills are provided by the active tech pack. Invoke techpacks.routeSkills(phase: project-scaffolding) to load the tech-specific scaffolding orchestration skill. For each component type, the manifest's components.<type>.scaffolding field points to the scaffolding skill. Use techpacks.resolvePath to get absolute paths for template directories passed to the scaffolding engine.