Template Initialization
Automate project initialization from template-ts by driving the interactive script non-interactively. The script now features intelligent defaults auto-detection from git config and environment, skills discovery based on project context, and automatic installation of specify tools for GitHub Copilot.
Workflow
- Detect intelligent defaults - Auto-detect project name, author, email, repo URL from environment and git config
- Gather inputs - Ask user for required fields with intelligent defaults pre-filled; only description typically needs manual input
- Discover skills - Analyze project description to recommend relevant skills from https://skills.sh/
- Validate environment - Check Node.js >= 20, pnpm >= 10, and scripts are executable
- Execute initialization - Run init script with piped answers
- Install Copilot tools - Automatically install specify and specify-extend with Copilot agent
- Verify setup - Run lint and tests, report results
Required Inputs
Collect these from the user before proceeding (or use intelligent defaults):
project_name - Project name (default: auto-detected from basename $(pwd))
author_name - Author name (default: auto-detected from git config user.name)
description - Project description (no default, user must provide)
Optional (intelligent defaults provided):
author_email - Author email (default: auto-detected from git config user.email)
repository_url - Repository URL (default: auto-detected from git remote.origin.url)
package_scope - Package scope (default: extracted from project name, e.g., "acme-app" → "acme", fallback: "company")
remove_example_packages - Remove example packages? (default: "y")
remove_example_tests - Remove example tests? (default: "y")
remove_example_e2e - Remove E2E tests? (default: "y")
replace_template_initialization - Replace TEMPLATE_INITIALIZATION.md? (default: "y")
Execution
Make scripts executable and pipe answers to init script:
chmod +x scripts/*.sh
# Example with intelligent defaults (most values will be auto-detected)
printf '%s\n' \
"" \
"" \
"" \
"$description" \
"" \
y \
"" \
"$remove_example_packages" \
"$remove_example_tests" \
"$remove_example_e2e" \
"$replace_template_initialization" \
| scripts/init-template.sh
Note:
- Empty strings ("") will use intelligent defaults auto-detected from git config and environment
- The script will auto-detect: project name (from directory), author name/email (from git config), repo URL (from git remote), and package scope (from project name pattern)
- The 6th line (
y) confirms to proceed after showing the configuration summary
- Skills discovery will run automatically based on the project description provided
Skills Discovery
The script now automatically analyzes the project description and recommends relevant skills from https://skills.sh/. This happens transparently during initialization. The recommended skills will be available in agent-specific directories (.copilot/, .claude/, .codex/, .gemini/).
Copilot Integration
The script automatically installs specify tools for GitHub Copilot:
uvx specify --ai copilot - Installs specify with Copilot agent
uvx specify-extend --agent copilot - Installs specify extensions
If uvx is not available, the script provides instructions for manual installation.
Post-Initialization
Run validation commands:
pnpm run lint
pnpm test
What Gets Updated
package.json - Project metadata, author, description, repository
README.md - Generated with project details
AGENTS.md - Generated with project name and agent guidance (with correct "Copilot" capitalization)
scripts/TEMPLATE_INITIALIZATION.md - Optionally replaced with starter guide
.copilot/skills/ - Skills directory created with symlinks to recommended skills
- Example packages/tests - Optionally removed based on user choices
- Git repository - Initialized with initial commit if not already present
- Specify tools - Installed automatically for GitHub Copilot integration
New Features
Intelligent Defaults Auto-Detection
- Project name:
basename $(pwd)
- Author name:
git config user.name
- Author email:
git config user.email
- Repository URL:
git config remote.origin.url
- Package scope: Extracted from project name (e.g., "acme-app" → "acme")
Skills Discovery
- Runs
scripts/discover-skills.sh to analyze project context
- Recommends relevant skills based on project name and description
- Skills matched against patterns from https://skills.sh/
- Output includes recommended skills list for the agent directories
Copilot Integration
- Automatically installs
uvx specify --ai copilot
- Automatically installs
uvx specify-extend --agent copilot
- Provides manual installation instructions if uvx unavailable
Deliverables
Report to user:
- Configuration summary (inputs used, including auto-detected defaults)
- Discovered skills recommendations
- Commands executed
- Specify tools installation status
- Lint results
- Test results
- Location of updated files
- Skills available in .copilot/, .claude/, .codex/, .gemini/ directories
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
1---2name: template-initialization-23description: Initialize a new project from template-ts non-interactively. Use when the user wants to set up a fresh repository from the template, customize project metadata (name, author, description), configure package scope, and optionally remove example packages/tests. This automates the entire scripts/init-template.sh workflow without manual prompts. Now includes intelligent defaults detection, skills discovery, and Copilot integration. Use when this capability is needed.4---56# Template Initialization78Automate project initialization from template-ts by driving the interactive script non-interactively. The script now features intelligent defaults auto-detection from git config and environment, skills discovery based on project context, and automatic installation of specify tools for GitHub Copilot.910## Workflow11121. **Detect intelligent defaults** - Auto-detect project name, author, email, repo URL from environment and git config132. **Gather inputs** - Ask user for required fields with intelligent defaults pre-filled; only description typically needs manual input143. **Discover skills** - Analyze project description to recommend relevant skills from https://skills.sh/154. **Validate environment** - Check Node.js >= 20, pnpm >= 10, and scripts are executable165. **Execute initialization** - Run init script with piped answers176. **Install Copilot tools** - Automatically install specify and specify-extend with Copilot agent187. **Verify setup** - Run lint and tests, report results1920## Required Inputs2122Collect these from the user before proceeding (or use intelligent defaults):2324- `project_name` - Project name (default: auto-detected from `basename $(pwd)`)25- `author_name` - Author name (default: auto-detected from `git config user.name`)26- `description` - Project description (no default, user must provide)2728Optional (intelligent defaults provided):2930- `author_email` - Author email (default: auto-detected from `git config user.email`)31- `repository_url` - Repository URL (default: auto-detected from `git remote.origin.url`)32- `package_scope` - Package scope (default: extracted from project name, e.g., "acme-app" → "acme", fallback: "company")33- `remove_example_packages` - Remove example packages? (default: "y")34- `remove_example_tests` - Remove example tests? (default: "y")35- `remove_example_e2e` - Remove E2E tests? (default: "y")36- `replace_template_initialization` - Replace TEMPLATE_INITIALIZATION.md? (default: "y")3738## Execution3940Make scripts executable and pipe answers to init script:4142```bash43chmod +x scripts/*.sh4445# Example with intelligent defaults (most values will be auto-detected)46printf '%s\n' \47 "" \48 "" \49 "" \50 "$description" \51 "" \52 y \53 "" \54 "$remove_example_packages" \55 "$remove_example_tests" \56 "$remove_example_e2e" \57 "$replace_template_initialization" \58 | scripts/init-template.sh59```6061**Note**: 62- Empty strings ("") will use intelligent defaults auto-detected from git config and environment63- The script will auto-detect: project name (from directory), author name/email (from git config), repo URL (from git remote), and package scope (from project name pattern)64- The 6th line (`y`) confirms to proceed after showing the configuration summary65- Skills discovery will run automatically based on the project description provided6667## Skills Discovery6869The script now automatically analyzes the project description and recommends relevant skills from https://skills.sh/. This happens transparently during initialization. The recommended skills will be available in agent-specific directories (.copilot/, .claude/, .codex/, .gemini/).7071## Copilot Integration7273The script automatically installs specify tools for GitHub Copilot:74- `uvx specify --ai copilot` - Installs specify with Copilot agent75- `uvx specify-extend --agent copilot` - Installs specify extensions7677If `uvx` is not available, the script provides instructions for manual installation.7879## Post-Initialization8081Run validation commands:8283```bash84pnpm run lint85pnpm test86```8788## What Gets Updated8990- `package.json` - Project metadata, author, description, repository91- `README.md` - Generated with project details92- `AGENTS.md` - Generated with project name and agent guidance (with correct "Copilot" capitalization)93- `scripts/TEMPLATE_INITIALIZATION.md` - Optionally replaced with starter guide94- `.copilot/skills/` - Skills directory created with symlinks to recommended skills95- Example packages/tests - Optionally removed based on user choices96- Git repository - Initialized with initial commit if not already present97- **Specify tools** - Installed automatically for GitHub Copilot integration9899## New Features100101### Intelligent Defaults Auto-Detection102- Project name: `basename $(pwd)`103- Author name: `git config user.name`104- Author email: `git config user.email`105- Repository URL: `git config remote.origin.url`106- Package scope: Extracted from project name (e.g., "acme-app" → "acme")107108### Skills Discovery109- Runs `scripts/discover-skills.sh` to analyze project context110- Recommends relevant skills based on project name and description111- Skills matched against patterns from https://skills.sh/112- Output includes recommended skills list for the agent directories113114### Copilot Integration115- Automatically installs `uvx specify --ai copilot`116- Automatically installs `uvx specify-extend --agent copilot`117- Provides manual installation instructions if uvx unavailable118119## Deliverables120121Report to user:122123- Configuration summary (inputs used, including auto-detected defaults)124- Discovered skills recommendations125- Commands executed126- Specify tools installation status127- Lint results128- Test results129- Location of updated files130- Skills available in .copilot/, .claude/, .codex/, .gemini/ directories131132---133> Converted and distributed by [TomeVault](https://tomevault.io/claim/pradeepmouli) — claim your Tome and manage your conversions.134<!-- tomevault:4.0:skill_md:2026-04-16 -->