Initial commit

This commit is contained in:
Zhongwei Li
2025-11-30 09:03:52 +08:00
commit 0b586b3216
42 changed files with 5241 additions and 0 deletions

120
commands/pp-add.md Normal file
View File

@@ -0,0 +1,120 @@
# Add New Subproject
Create a new subproject in the project structure.
## Arguments
$ARGUMENTS
## Purpose
Add a new subproject with full file structure. Query should contain:
- Subproject name (folder name)
- Description/purpose
- Optionally: initial scope, dependencies
## Execution Instructions
### Step 1: Parse Query
Extract from query:
- `name`: Folder name (lowercase, no spaces)
- `title`: Human-readable title
- `description`: What this subproject does
- `dependencies`: Relationships to other subprojects
If query is empty or missing info, ask:
1. "Subproject folder name (e.g., 'api', 'frontend'):"
2. "Title (e.g., 'REST API Backend'):"
3. "Brief description:"
4. "Dependencies on other subprojects? (optional)"
### Step 2: Create Directory Structure
```bash
mkdir -p .context/project/{name}/prds .context/project/{name}/docs .context/project/{name}/archive
```
### Step 3: Copy and Process Templates
Copy subproject templates from `~/.claude/commands/pp-init-assets/templates/subproject/`:
```bash
# Copy all subproject templates
cp ~/.claude/commands/pp-init-assets/templates/subproject/*.md .context/project/{name}/
```
Then process placeholders:
- `{{SUBPROJECT_NAME}}` → name
- `{{SUBPROJECT_TITLE}}` → title
- `{{SUBPROJECT_DESCRIPTION}}` → description
- `{{DATE}}` → current date
- `{{SUBPROJECT_STATUS}}` → "Not Started"
- Other placeholders → "TBD" or empty
### Step 4: Update Root Files
**INDEX.md**: Add to subproject table
```markdown
| {name}/ | Planned | {description} |
```
**STATUS.md**: Add to subproject summary table
```markdown
| {name}/ | - | Not Started |
```
**CODEBASE.md**: Add to subproject refs
```markdown
- `{name}/CODEBASE.md` - {title} files
```
**CHANGELOG.md**: Add entry
```markdown
## {DATE} | Added Subproject: {name}
**Changes**:
- Created {name}/ subproject structure
**Context**:
- {description}
```
### Step 5: Confirm Creation
```
## Created Subproject: {name}/
**Title**: {title}
**Description**: {description}
**Files created**:
- {name}/INDEX.md
- {name}/STATUS.md
- {name}/TODO.md
- {name}/CHANGELOG.md
- {name}/PRINCIPLES.md
- {name}/CODEBASE.md
- {name}/LESSONS.md
**Updated**:
- Root INDEX.md
- Root STATUS.md
- Root CODEBASE.md
- Root CHANGELOG.md
To start working on this subproject, update STATUS.md to set it as active.
```
## Query Examples
```bash
# Full description
/pp-add api - REST API backend using FastAPI, handles auth and data
# Just name (will ask for details)
/pp-add mobile
# With dependencies
/pp-add frontend - React dashboard, depends on api for data
```