project-init
新しい機械学習の研究プロジェクトを始める際に、論文執筆用のLaTeXとコード開発用のPythonのリポジトリを、共通のフォルダにまとめて効率的に立ち上げ、研究開発の環境構築をスムーズにするSkill。
📜 元の英語説明(参考)
Initialize a new ML research project with aligned paper (LaTeX) and code (Python) repositories under a shared parent folder. Use when starting a new research project, setting up a paper+code workspace, or initializing a new ML research environment.
🇯🇵 日本人クリエイター向け解説
新しい機械学習の研究プロジェクトを始める際に、論文執筆用のLaTeXとコード開発用のPythonのリポジトリを、共通のフォルダにまとめて効率的に立ち上げ、研究開発の環境構築をスムーズにするSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o project-init.zip https://jpskill.com/download/8052.zip && unzip -o project-init.zip && rm project-init.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/8052.zip -OutFile "$d\project-init.zip"; Expand-Archive "$d\project-init.zip" -DestinationPath $d -Force; ri "$d\project-init.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
project-init.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
project-initフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
プロジェクト初期化ワークフロー
このワークフローは、LaTeX論文リポジトリとPythonコードリポジトリの両方を必要とする新しい研究プロジェクトを開始する際に使用します。これらは、共有プロジェクトフォルダの下で並行して管理されます。
期待される出力構造
~/Projects/<ProjectName>/
├── paper/ ← LaTeXリポジトリ (init-latex-project)
├── code/ ← Python MLリポジトリ (init-python-project)
└── PROJECT.md ← 両方のリポジトリをリンクするプロジェクト概要
ステップ 1 — プロジェクト情報の収集
単一のメッセージで、ユーザーに以下を尋ねます。
- プロジェクト名: プロジェクトの名前は何ですか? (親フォルダ名として使用されます。例:
DemoProject) - 親ディレクトリ: このプロジェクトはどこに配置する必要がありますか? (デフォルト:
~/Projects/) - 論文発表場所: どの会議/ジャーナルですか? (
iclr,cvpr,icml,acm,acl、または一般的なarXivの場合はnone) - 研究概要 (簡潔に): 手法は何ですか? どのデータセット/ベンチマークを使用しますか? どのメトリクスを使用しますか?
- これは、
paper/構造とPROJECT.mdを事前に入力するために使用されます。
- これは、
- GitHub: 論文とコード用にGitHubリポジトリを用意していますか? はいの場合は、SSH URLを提供してください(または後で追加するためにスキップしてください)。
続行する前に、ユーザーの回答を待ちます。
ステップ 2 — 親フォルダの作成
mkdir -p <parent-dir>/<ProjectName>
ステップ 3 — 論文リポジトリの初期化
init-latex-projectスキルを実行します。
bash ~/.claude/skills/init-latex-project/scripts/init.sh <ProjectName>-paper <parent-dir>/<ProjectName>/paper [--venue <venue>] --git
注:
~を実際のホームディレクトリ(例:/Users/jieke)に展開してください。--venueは、発表場所が指定されている場合にのみ使用してください。一般的なarXivの場合は省略してください。
スクリプトの実行後:
sections/daily_experiments.texファイルを論文に追加します。
% Daily Experiments Log
% Add experiment entries in reverse chronological order (newest first).
%
% Template for each entry:
% \subsection*{YYYY-MM-DD — <short title>}
% \textbf{Setup:} <method variant, dataset, config>\\
% \textbf{Result:} <key numbers, metric values>\\
% \textbf{Observation:} <what worked, what didn't>\\
% \textbf{Next:} <follow-up experiment planned>
\input{sections/daily_experiments}を、セクションヘッダーとともに、paper/main.texの付録エリア(\end{document}の前)に追加します。
\section*{Daily Experiments (Internal)}
\input{sections/daily_experiments}
- 論文のGitHub SSH URLが提供された場合:
git -C <parent-dir>/<ProjectName>/paper remote add origin <paper-github-url> git -C <parent-dir>/<ProjectName>/paper push -u origin main
ステップ 4 — コードリポジトリの初期化
init-python-projectスキルを呼び出します。ユーザーに伝えます。
「それでは、コードリポジトリをセットアップしましょう。
code/ディレクトリに対してinit-python-projectスキルを実行します。」
すでに確立されている以下のコンテキストでinit-python-projectスキルを使用します。
- ターゲットディレクトリ:
<parent-dir>/<ProjectName>/code/ - プロジェクトタイプ:
new、MLプロジェクト - GitHub URL: ステップ1から(提供されている場合)
init-python-projectのすべてのステップを通常どおりに実行します。コードリポジトリは<parent-dir>/<ProjectName>/code/に初期化されます。
ステップ 5 — 親フォルダにPROJECT.mdを作成する
<parent-dir>/<ProjectName>/PROJECT.mdを以下の内容で書き込みます(ステップ1のユーザーの研究概要から入力します)。
# <ProjectName>
> <研究プロジェクトの1行の説明>
## 研究概要
**手法**: <手法の説明>
**データセット**: <使用されるデータセット>
**ベンチマーク**: <比較対象のベンチマーク/ベースライン>
**メトリクス**: <評価メトリクス>
## リポジトリ構造
| Repo | Path | Purpose |
|------|------|---------|
| paper | `./paper/` | LaTeX論文 (<venue or arXiv>) |
| code | `./code/` | Python実装 (uv) |
## GitHubリモート
| Repo | URL |
|------|-----|
| paper | <paper-github-url or TBD> |
| code | <code-github-url or TBD> |
## ワークフロー
- **設計変更** (手法、データセット、メトリクス): まず`paper/sections/method.tex`を更新し、次に`code/`に実装します。
- **実験結果**: `code/experiments/`に記録し、次に`paper/sections/daily_experiments.tex`に同期します。
- **マイルストーン**: 各リポジトリで個別に`add-git-tag`スキルを使用します。
- **コードドキュメント**: `code/`で`update-docs`スキルを使用します。
## 主要ファイル
- `paper/sections/method.tex` — 標準的な手法の説明
- `paper/sections/exp.tex` — 主要な実験セクション
- `paper/sections/daily_experiments.tex` — 実行中の実験ログ
- `code/docs/outlines/project_plan.md` — 実装ロードマップ
- `code/experiments/` — 生の実験出力とログ
ステップ 6 — 最終的なまとめ
ユーザーに報告します。
プロジェクトが初期化されました: <ProjectName>
paper/ → <paper-github-url or "local only">
code/ → <code-github-url or "local only">
このプロジェクトの主要なスキル:
- project-sync → コードから論文への実験結果の同期
- add-git-tag → いずれかのリポジトリでのマイルストーンのマーク
- update-docs → コードドキュメントの更新
次のステップ:
1. paper/sections/method.texに手法の詳細を記入します
2. paper/sections/exp.texに計画された実験を記入します
3. code/src/で実装を開始します
4. 結果が得られたら、project-syncスキルを使用して論文に記録します 📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
Project Init Workflow
Use this workflow when starting a new research project that requires both a LaTeX paper repo and a Python code repo, managed in parallel under a shared project folder.
Expected Output Structure
~/Projects/<ProjectName>/
├── paper/ ← LaTeX repo (init-latex-project)
├── code/ ← Python ML repo (init-python-project)
└── PROJECT.md ← Project overview linking both repos
Step 1 — Gather Project Information
Ask the user the following in a single message:
- Project name: What is the project called? (used as the parent folder name, e.g.
DemoProject) - Parent directory: Where should this project live? (default:
~/Projects/) - Paper venue: Which conference/journal? (
iclr,cvpr,icml,acm,acl, ornonefor generic arXiv) - Research summary (brief): What is the method? What datasets/benchmarks? What metrics?
- This will be used to pre-fill the
paper/structure andPROJECT.md
- This will be used to pre-fill the
- GitHub: Do you have GitHub repos ready for paper and code? If yes, provide SSH URLs (or skip to add later).
Wait for the user's answers before proceeding.
Step 2 — Create the Parent Folder
mkdir -p <parent-dir>/<ProjectName>
Step 3 — Initialize the Paper Repo
Run the init-latex-project skill:
bash ~/.claude/skills/init-latex-project/scripts/init.sh <ProjectName>-paper <parent-dir>/<ProjectName>/paper [--venue <venue>] --git
Note: Expand
~to the actual home directory (e.g./Users/jieke). Use--venueonly if a venue was specified; omit for generic arXiv.
After the script runs:
- Add a
sections/daily_experiments.texfile to the paper:
% Daily Experiments Log
% Add experiment entries in reverse chronological order (newest first).
%
% Template for each entry:
% \subsection*{YYYY-MM-DD — <short title>}
% \textbf{Setup:} <method variant, dataset, config>\\
% \textbf{Result:} <key numbers, metric values>\\
% \textbf{Observation:} <what worked, what didn't>\\
% \textbf{Next:} <follow-up experiment planned>
- Add
\input{sections/daily_experiments}topaper/main.texin the appendix area (before\end{document}), with a section header:
\section*{Daily Experiments (Internal)}
\input{sections/daily_experiments}
- If GitHub SSH URL was provided for paper:
git -C <parent-dir>/<ProjectName>/paper remote add origin <paper-github-url> git -C <parent-dir>/<ProjectName>/paper push -u origin main
Step 4 — Initialize the Code Repo
Invoke the init-python-project skill. Tell the user:
"Now let's set up the code repo. I'll run the
init-python-projectskill for thecode/directory."
Use the init-python-project skill with the following context already established:
- Target directory:
<parent-dir>/<ProjectName>/code/ - Project type:
new, ML project - GitHub URL: from Step 1 (if provided)
Follow all steps in init-python-project as normal. The code repo will be initialized at <parent-dir>/<ProjectName>/code/.
Step 5 — Create PROJECT.md in the Parent Folder
Write <parent-dir>/<ProjectName>/PROJECT.md with the following content (fill in from the user's research summary in Step 1):
# <ProjectName>
> <One-line description of the research project>
## Research Overview
**Method**: <method description>
**Datasets**: <datasets used>
**Benchmarks**: <benchmarks / baselines compared against>
**Metrics**: <evaluation metrics>
## Repository Structure
| Repo | Path | Purpose |
|------|------|---------|
| paper | `./paper/` | LaTeX paper (<venue or arXiv>) |
| code | `./code/` | Python implementation (uv) |
## GitHub Remotes
| Repo | URL |
|------|-----|
| paper | <paper-github-url or TBD> |
| code | <code-github-url or TBD> |
## Workflow
- **Design changes** (method, datasets, metrics): update `paper/sections/method.tex` first, then implement in `code/`
- **Experiment results**: record in `code/experiments/`, then sync to `paper/sections/daily_experiments.tex`
- **Milestones**: use `add-git-tag` skill in each repo separately
- **Code docs**: use `update-docs` skill in `code/`
## Key Files
- `paper/sections/method.tex` — canonical method description
- `paper/sections/exp.tex` — main experiments section
- `paper/sections/daily_experiments.tex` — running experiment log
- `code/docs/outlines/project_plan.md` — implementation roadmap
- `code/experiments/` — raw experiment outputs and logs
Step 6 — Final Summary
Report to the user:
Project initialized: <ProjectName>
paper/ → <paper-github-url or "local only">
code/ → <code-github-url or "local only">
Key skills for this project:
- project-sync → sync experiment results from code to paper
- add-git-tag → mark milestones in either repo
- update-docs → refresh code documentation
Next steps:
1. Fill in paper/sections/method.tex with your method details
2. Fill in paper/sections/exp.tex with planned experiments
3. Start implementing in code/src/
4. When you have results, use the project-sync skill to log them in paper