init-project-jpkb
Scannednpx machina-cli add skill product-on-purpose/pm-skills/init-project-jpkb --openclawJPKB Project Initialization Workflow
Scaffold new projects in the JPKB repository with standardized documentation artifacts.
Execution Steps
1. Gather Requirements
Before creating any files, clarify with user:
| Required | Question | Default |
|---|---|---|
| ✓ | Project name? | None — must ask |
| ✓ | Category/parent folder? | Prompt with existing options |
| Project type? | general | |
| License preference? | MIT | |
| Brief description? | "A new project" |
Skip questions if context provides answers. If user says "init parametric-hinge in 3d-prints", don't re-ask.
2. Confirm Target Path
Before creating files, confirm the full path:
Target: E:\Projects\JP KB\jpkb\projects\<category>\<project-name>\
Wait for user confirmation or correction.
3. Check for Existing Files
Before creating, check what already exists:
| If Exists | Action |
|---|---|
| README.md | Skip — preserve existing |
| CHANGELOG.md | Skip — preserve existing |
| LICENSE | Skip — preserve existing |
| .gitignore | Merge — append missing entries |
| _NOTES/ | Skip — preserve existing |
| AGENTS/ | Create missing parts only |
This allows safe re-runs on existing projects to add agentic structure.
4. Create Directory Structure
<project-name>/
├── README.md
├── CHANGELOG.md
├── LICENSE
├── .gitignore
├── _NOTES/
│ └── .gitkeep
└── AGENTS/
└── claude-opus-4.5/
├── CONTEXT.md
├── TODO.md
├── DECISIONS.md
└── SESSION-LOG/
5. Populate Files
Use templates from assets/ folder, substituting:
{{PROJECT_NAME}}— Project name{{DESCRIPTION}}— Project description{{DATE}}— Current date (YYYY-MM-DD){{YEAR}}— Current year{{CATEGORY}}— Project category
See references/project-types.md for type-specific variations.
6. Confirm Completion
Report to user:
- Full path created
- Files generated
- Suggested next steps
Project Types
| Type | Additional Structure | Use When |
|---|---|---|
general | Base structure only | Default, documentation |
code-python | + src/, tests/, pyproject.toml | Python projects |
code-node | + src/, package.json | Node.js projects |
3d-print | + models/, images/ | 3D printing projects |
research | + data/, notebooks/ | Research/data projects |
See references/project-types.md for complete details.
Template Assets
| File | Source |
|---|---|
| README.md | assets/README.template.md |
| CHANGELOG.md | assets/CHANGELOG.template.md |
| LICENSE (MIT) | assets/LICENSE-MIT.txt |
| LICENSE (Apache) | assets/LICENSE-Apache2.txt |
| .gitignore | assets/gitignore-general.txt |
| CONTEXT.md | assets/CONTEXT.template.md |
| TODO.md | assets/TODO.template.md |
| DECISIONS.md | assets/DECISIONS.template.md |
Integration with wrap-session
This skill creates the structure that /wrap-session writes to:
| Init Creates | Wrap-Session Updates |
|---|---|
| README.md (template) | README.md (with progress) |
| CHANGELOG.md ([Unreleased]) | CHANGELOG.md (with changes) |
| CONTEXT.md (initial state) | CONTEXT.md (current state) |
| TODO.md (empty) | TODO.md (with tasks) |
| SESSION-LOG/ (empty) | SESSION-LOG/*.md |
Source
git clone https://github.com/product-on-purpose/pm-skills/blob/main/.claude/skills/init-project-jpkb/SKILL.mdView on GitHub Overview
This skill scaffolds new JPKB projects by creating a fixed base path, category directories, and a consistent set of documentation files. It guides you through requirements gathering, target-path confirmation, and template-based population using assets.
How This Skill Works
It prompts for details like project name, category, and type, confirms the full target path, and then checks for existing files. It creates the directory structure and fills files using templates from assets, substituting placeholders such as {{PROJECT_NAME}}, {{DESCRIPTION}}, {{DATE}}, {{YEAR}}, and {{CATEGORY}}.
When to Use It
- You are creating a new JPKB project in the jpkb repository
- The user says "init project" or "new project" for the JPKB workspace
- The target is the JPKB projects folder and requires a category/<project-name> structure
- You want to re-run the process to add missing AGENTS/structure without overwriting existing core files
- You are starting a new project with the default 'general' type or choosing a type from the supported options (general, code-python, code-node, 3d-print, research)
Quick Start
- Step 1: Confirm project details (name, category) and target path (jpkb/projects/<category>/<project-name>)
- Step 2: Run safety checks: preserve READMEs/CHANGELOGs, merge .gitignore, create missing AGENTS/ as needed
- Step 3: Create directory structure and populate files from assets, then verify completion
Best Practices
- Always confirm the target path before creating files (e.g., category and project-name under jpkb/projects)
- Respect existing files: skip README.md/CHANGELOG.md, merge .gitignore, and only create missing parts
- Choose the appropriate project type and follow its extra structure (e.g., code-python adds src/ and tests/ folders)
- Populate templates using the asset placeholders: {{PROJECT_NAME}}, {{DESCRIPTION}}, {{DATE}}, {{YEAR}}, {{CATEGORY}}
- Leverage wrap-session integration to reflect progress and keep context up to date
Example Use Cases
- init project 'parametric-hinge' in the 3d-print category (3d-print) with default general structure plus models/ and images
- init project 'image-classifier' in code-python category to create src/, tests/, and pyproject.toml
- init project 'web-scraper' in code-node category to scaffold with src/ and package.json
- init project 'research-notes' in research category to include data/ and notebooks/
- re-run an existing project to append missing AGENTS/ and update CONTEXT.md without altering core files