init-docs
npx skills add https://github.com/ywj3493/claude-skills --skill init-docs
Agent 安装分布
Skill 文档
init-docs
Sets up the standard project documentation structure from scratch.
When to Use
- Starting a new project that needs the standard
docs/layout - User says “set up the project structure”, “initialize docs”, “íë¡ì í¸ ì´ê¸°í”, or “docs ë§ë¤ì´ì¤”
- The project has no
docs/directory yet
What This Skill Creates
docs/
âââ specifications/
âââ issue/
âââ reference/
âââ policy/
â âââ policy.md
â âââ commit-message-rule.md
â âââ naming-conventions.md
â âââ reference-convention.md
âââ dev/
âââ specifications/
âââ issue/
âââ policy/
âââ policy.ko.md
âââ commit-message-rule.ko.md
âââ naming-conventions.ko.md
âââ reference-convention.ko.md
CLAUDE.md (placed in project root)
Step-by-Step Instructions
Step 1: Confirm Before Acting
Tell the user:
I’m about to set up the standard
docs/structure in this project. This will create the docs/ directory tree, three initial policy documents (English + Korean), and a CLAUDE.md. Shall I proceed?
Wait for confirmation before creating anything.
Step 2: Create Directory Structure
Run the setup script if available:
bash .skills/init-docs/scripts/create-structure.sh
Or fall back to the global install:
bash ~/.agents/skills/init-docs/scripts/create-structure.sh
If neither is available, create directories manually and add .gitkeep files
so Git tracks the empty directories:
mkdir -p docs/specifications docs/issue docs/reference docs/policy
mkdir -p docs/dev/specifications docs/dev/issue docs/dev/policy
touch docs/specifications/.gitkeep docs/issue/.gitkeep docs/reference/.gitkeep docs/policy/.gitkeep
touch docs/dev/specifications/.gitkeep docs/dev/issue/.gitkeep docs/dev/policy/.gitkeep
Step 3: Place CLAUDE.md
Copy the content from the skill’s template (see references/CLAUDE-template.md
or the templates/CLAUDE.md in the source repository) into the project root.
- If
CLAUDE.mddoes not exist: create it with the template content. - If
CLAUDE.mdalready exists: do NOT overwrite it. Show the user the template and offer to merge relevant sections.
Step 4: Create Initial Policy Files
Create the following English policy files in docs/policy/:
docs/policy/policy.md
# Project Policy
## Documentation
- All documentation lives in `docs/` and is the source of truth
- All `docs/` content (except `docs/dev/`) is written in English
- `docs/dev/` contains Korean translations with `.ko.md` suffix
- `docs/reference/` is user-managed only â never create or edit files there
## Workflow
- Every task begins with an issue document in `docs/issue/`
- Issue files are numbered sequentially: issue001.md, issue002.md, ...
- Do not begin implementation before an issue document exists
- Update documentation in the same commit as the code change
## Policy Updates
- Changes to policy files must be discussed with the user first
- Policy changes require updating both the English and Korean versions
## Related Policy Files
- [@docs/policy/commit-message-rule.md](docs/policy/commit-message-rule.md) â Commit message format
- [@docs/policy/naming-conventions.md](docs/policy/naming-conventions.md) â Naming conventions for files, code, and branches
- [@docs/policy/reference-convention.md](docs/policy/reference-convention.md) â Document linking convention
docs/policy/commit-message-rule.md
# Commit Message Rules
## Format
():
[optional body]
[optional footer]
## Types
- `feat`: New feature
- `fix`: Bug fix
- `docs`: Documentation changes only
- `style`: Formatting or whitespace (no logic change)
- `refactor`: Code restructuring (no feature or fix)
- `test`: Adding or updating tests
- `chore`: Build process, dependency updates, tooling
## Rules
- Subject line: 72 characters maximum
- Subject: imperative mood, lowercase, no trailing period
- Example: `feat(auth): add OAuth2 login flow`
- Reference the issue number in the body or footer:
`Refs: issue003`
- Separate body from subject with a blank line
docs/policy/naming-conventions.md
# Naming Conventions
## Files and Directories
- All filenames: lowercase, hyphen-separated (kebab-case)
- Issue documents: `issue001.md`, `issue002.md` (zero-padded to 3 digits)
- Korean mirrors: append `.ko` before `.md`
- English: `requirements.md` â Korean: `requirements.ko.md`
- No spaces in file or directory names
## Code (language-agnostic defaults)
- Variables and functions: camelCase
- Constants: UPPER_SNAKE_CASE
- Classes and types: PascalCase
- Private members: prefix with underscore `_`
## Branch Names
- Feature: `feat/issue<NNN>-<short-description>`
- Example: `feat/issue003-user-authentication`
- Bug fix: `fix/issue<NNN>-<short-description>`
- Documentation: `docs/issue<NNN>-<short-description>`
## Notes
- Language-specific conventions override these defaults
- Add language-specific rules to this file as the project evolves
docs/policy/reference-convention.md
# Document Reference Convention
## Purpose
Establishes a consistent way to mark documents that must be read or loaded
as prerequisite context, distinguishing them from paths mentioned as
examples or illustrations.
## Syntax
Use a markdown link with an `@` prefix to indicate **required context**:
[@docs/policy/policy.md](docs/policy/policy.md)
A bare backtick path without `@` is informational or illustrative only:
`docs/issue/issue003.md`
## Rules
1. An `@`-reference means "this file MUST be loaded before proceeding."
2. Use `@`-references in CLAUDE.md, policy files, issue documents, and
skill definitions where prerequisite files exist.
3. `@`-references use project-root-relative paths (no leading slash).
4. Do not `@`-reference files in `docs/reference/`.
5. When an `@`-referenced file itself contains `@`-references, load them
recursively (up to 2 levels deep).
6. The markdown link format `[@path](path)` ensures clickable navigation
in GitHub and IDEs.
## Revision History
- <YYYY-MM-DD>: Initial version
Step 5: Create Korean Policy Mirrors
Translate the four policy files into Korean and place them in docs/dev/policy/:
docs/dev/policy/policy.ko.mddocs/dev/policy/commit-message-rule.ko.mddocs/dev/policy/naming-conventions.ko.mddocs/dev/policy/reference-convention.ko.md
Translation rules:
- All prose and headings â Korean
- Code blocks (
...) â keep as-is (English) - File paths, type names, branch examples â keep in English
- Technical acronyms (API, URL, HTTP) â keep in English
Step 6: Offer First Issue
After completing setup, ask:
Setup complete. Would you like me to create the first issue document (
docs/issue/issue001.md) to track the initial project setup tasks?
Step 7: Report
List every file and directory created so the user can verify.