nathan13888/nice-skills/init-repo
- community
- ext:[{"type":"hook","description":"Pre/post lifecycle hooks"}]
Checking that the SKILL.md file is still in the repository.
Scaffolds a new project repository for agentic development from a problem description, or sets up ops tooling (git, precommits, gitignore, licensing, CI) for an existing project. Guides the user through naming, runtime, package manager, devops, licensing, and project structure. Use when the user says "init project", "new project", "start a project", "scaffold repo", "create repo", or describes a problem they want to build a solution for.
Install
npx vskill@latest install nathan13888/nice-skills/init-repoSemi-extensibleMentions customization, but needs skill-specific knowledge. Read the extensible skills standard
SKILL.md
Initializing Project
Scaffold a new project repository optimized for agentic development from a problem description -- or just set up ops tooling (git, precommits, gitignore, licensing, etc.) for an existing or empty project.
Quick Start
When invoked, follow the workflow below sequentially. After detecting the environment in Step 0, gather all preferences in a single Phase 1 intake form before executing any steps. This minimizes back-and-forth turns.
State Variables
Track these variables throughout the entire workflow. Once set, use the stored value -- never hardcode a branch name like main or master.
| Variable | Set in | Description | |
|---|---|---|---|
{DEFAULT_BRANCH} | Step 0 (detected) or Phase 1 | The repository's default branch name (e.g., main, master, develop). Every later step that references a branch MUST use this variable. | |
{PROJECT_KIND} | Phase 1 | Whether the project is an Application (binary/executable) or Library (reusable code). | |
{INSTALLED_DEPS} | Step 5.5 | List of recommended dependencies the user chose to install. Used in README (Step 10), CLAUDE.md (Step 11), and Summary (Step 12). | |
{LLVM_COV} | Phase 1 | Whether LLVM coverage is enabled (yes/no). Only set for Rust projects with GitHub Actions CI. | |
{COV_THRESHOLD} | Phase 1 | Minimum coverage percentage (e.g., 80), or empty if no threshold enforced. | |
{PACKAGES} | Phase 1 | List of packages for multi-package projects. Each entry: {name, dir, lang, exts, format_fix_cmd, lint_fix_cmd, format_check_cmd, lint_check_cmd, test_cmd, coverage_cmd}. Only set when the project has multiple packages with different toolchains. | |
{RELEASE_CI} | Phase 1 | Whether a release CI workflow (triggered by merging a version-bump PR) is set up (yes/no). GitHub Actions only. | |
{RELEASE_TOOL} | Phase 1 | release-plz (Rust, forced) / release-please / changesets / commitizen / goreleaser / a custom name. Only set when {RELEASE_CI} is yes. | |
{AUTOMATED_CHANGELOG} | Phase 1 | Whether an automated CHANGELOG.md is set up (yes/no). yes also enables conventional-commit enforcement via convco. Only asked when {RELEASE_CI} is yes. | |
{CHANGELOG_ENGINE} | Step 6.7 (derived) | release-plz / tool-native / git-cliff -- which engine actually writes CHANGELOG.md. Precedence: release-plz's embedded git-cliff -> the release tool's own changelog -> a standalone git-cliff fallback. |
Workflow
Step 0: Detect Environment
Before anything else, check the current directory's state:
- Run
git rev-parse --is-inside-work-treeto see if the CWD is already inside a git repository (even if it has zero commits or is otherwise empty). - Run
ls -Ato check if the directory has any files/folders at all. - If it IS a git repo, note this -- we will NOT run
git initlater. Rungit symbolic-ref --short HEADto detect the current branch name. Store as{DETECTED_BRANCH}. - If it is NOT a git repo, note this -- we may need to initialize one later. Set
{DETECTED_BRANCH}tomainas the suggested default.
Report a brief one-line status note:
Detected: [git repo on branch {DETECTED_BRANCH} / no git repo], [empty / non-empty] directory at {CWD}.
Then proceed directly to Phase 1. Do NOT ask any questions here.
Phase 1: Project Intake
Call AskUserQuestion once with the comprehensive form below. Populate bracketed placeholders with values from Step 0 (e.g., {DETECTED_BRANCH}, {CWD}).
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/init-repo/SKILL.md
Popularity
- Repository stars
- 5
- 7-day trend score
- 9
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 23 Mar 2026, 7 months ago.
Extension points
hookPre/post lifecycle hooks
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/nathan13888/nice-skills/init-repo)