@42ws/cli 0.0.31 → 0.0.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAiCA,MAAM,WAAW,QAAQ;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,wBAAsB,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAiCA,MAAM,WAAW,QAAQ;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,wBAAsB,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAiGxD"}
|
package/dist/commands/init.js
CHANGED
|
@@ -102,16 +102,74 @@ export async function init(args) {
|
|
|
102
102
|
config.spa = true;
|
|
103
103
|
writeFileSync(configPath, JSON.stringify(config, null, 2) + '\n', { encoding: 'utf-8' });
|
|
104
104
|
process.stdout.write(`Created 42ws.json\n`);
|
|
105
|
-
// 5.
|
|
106
|
-
|
|
107
|
-
|
|
105
|
+
// 5. プロジェクトブリーフ (オプション、デフォルト N)
|
|
106
|
+
// 「適当に作って」のような曖昧開始も普通のユースケースなので、必要な人だけ y を選ぶ前提。
|
|
107
|
+
const briefCreated = await maybeRunBrief(cwd);
|
|
108
|
+
// 6. AI agent 用ガイド (CLAUDE.md / AGENTS.md) を配置
|
|
109
|
+
await setupAgentGuides(cwd, { hasBrief: briefCreated });
|
|
110
|
+
// 7. AI agent (claude / codex) を起動
|
|
108
111
|
await launchAgent(cwd);
|
|
109
112
|
}
|
|
110
|
-
const
|
|
113
|
+
const BRIEF_FILE = 'BRIEF.md';
|
|
114
|
+
const BRIEF_MARKER = 'プロジェクトブリーフ';
|
|
115
|
+
async function maybeRunBrief(cwd) {
|
|
116
|
+
const briefPath = join(cwd, BRIEF_FILE);
|
|
117
|
+
if (existsSync(briefPath) && shouldSkipExisting(briefPath, BRIEF_MARKER)) {
|
|
118
|
+
// 既にブリーフがあるなら再質問しない
|
|
119
|
+
return true;
|
|
120
|
+
}
|
|
121
|
+
const ans = await prompt('プロジェクトのヒアリング (用途・トーン・参考イメージなど) をしますか? あとから AI と話しながら詰めても OK [y/N]: ');
|
|
122
|
+
if (ans.toLowerCase() !== 'y')
|
|
123
|
+
return false;
|
|
124
|
+
process.stderr.write('\n--- ヒアリング (空 Enter でスキップ可) ---\n');
|
|
125
|
+
const purpose = await prompt('1. サイトの用途・概要: ');
|
|
126
|
+
const audience = await prompt('2. 想定ユーザー: ');
|
|
127
|
+
const tone = await prompt('3. トーン・デザイン方針 (例: ミニマル / 暖かい / クール): ');
|
|
128
|
+
const refs = await prompt('4. 参考にしたいサイト・イメージ (URL or 説明、なければ空): ');
|
|
129
|
+
const wantsForms = (await prompt('5. 問い合わせフォームを使いそう? [y/N]: ')).toLowerCase() === 'y';
|
|
130
|
+
const wantsCollections = (await prompt('6. ニュース/実績などのコレクション (CMS) を使いそう? [y/N]: ')).toLowerCase() === 'y';
|
|
131
|
+
const pages = await prompt('7. 主要ページ構成 (例: top, about, works, news, contact、空ならAIに任せる): ');
|
|
132
|
+
const body = renderBrief({ purpose, audience, tone, refs, wantsForms, wantsCollections, pages });
|
|
133
|
+
writeFileSync(briefPath, body);
|
|
134
|
+
info(`${BRIEF_FILE} を作成しました`);
|
|
135
|
+
return true;
|
|
136
|
+
}
|
|
137
|
+
function renderBrief(d) {
|
|
138
|
+
const sec = (label, val) => `## ${label}\n${val.trim() || '(未記入 — AI と対話しながら決めてください)'}\n`;
|
|
139
|
+
return `# プロジェクトブリーフ
|
|
140
|
+
|
|
141
|
+
このドキュメントは制作開始時のヒアリング結果です。**制作中に決まったこと・変わったことは AI が随時このファイルを更新してください** (ユーザーに確認した上で)。
|
|
142
|
+
|
|
143
|
+
${sec('サイトの用途・概要', d.purpose)}
|
|
144
|
+
${sec('想定ユーザー', d.audience)}
|
|
145
|
+
${sec('トーン・デザイン方針', d.tone)}
|
|
146
|
+
${sec('参考にしたいサイト・イメージ', d.refs)}
|
|
147
|
+
## 必要な機能
|
|
148
|
+
- 問い合わせフォーム: ${d.wantsForms ? 'Yes' : 'No (必要になったら追記)'}
|
|
149
|
+
- ニュース・実績などのコレクション (CMS): ${d.wantsCollections ? 'Yes' : 'No (必要になったら追記)'}
|
|
150
|
+
|
|
151
|
+
${sec('主要ページ構成', d.pages)}
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
## 更新ルール (AI 向け)
|
|
155
|
+
- 要件追加・変更があったらこのファイルを更新する
|
|
156
|
+
- 大きな変更はユーザーに確認した上で書き換える
|
|
157
|
+
- 完成イメージ・素材・ブランド資産が増えたら追記する
|
|
158
|
+
`;
|
|
159
|
+
}
|
|
160
|
+
function buildAgentGuide(opts) {
|
|
161
|
+
const briefSection = opts.hasBrief
|
|
162
|
+
? `## プロジェクト概要
|
|
163
|
+
このサイトの目的・対象ユーザー・トーン等は [BRIEF.md](./BRIEF.md) を根拠に進めてください。
|
|
164
|
+
要件が変わったら BRIEF.md の更新提案を出してください。
|
|
165
|
+
|
|
166
|
+
`
|
|
167
|
+
: '';
|
|
168
|
+
return `# 42ws Site Project
|
|
111
169
|
|
|
112
170
|
このプロジェクトは [42ws](https://42ws.com) で公開されます。
|
|
113
171
|
|
|
114
|
-
## 制作前に必ず読む
|
|
172
|
+
${briefSection}## 制作前に必ず読む
|
|
115
173
|
|
|
116
174
|
サイト制作の前提・規約 (フォーム埋め込み、CMS 一覧ページの作法、やってはいけないこと等) は以下で取得します。**作業を始める前に最初に読んでください**:
|
|
117
175
|
|
|
@@ -136,6 +194,7 @@ const AGENT_GUIDE_BODY = `# 42ws Site Project
|
|
|
136
194
|
- **frontend-design スキル (公式)** — 画面設計・UI コンポーネント生成の品質が上がる
|
|
137
195
|
- **agent-browser サブエージェント** — 制作中のページを実ブラウザで確認できる (レイアウト崩れの検知などに有効)
|
|
138
196
|
`;
|
|
197
|
+
}
|
|
139
198
|
function shouldSkipExisting(file, marker) {
|
|
140
199
|
try {
|
|
141
200
|
const existing = readFileSync(file, 'utf-8');
|
|
@@ -145,9 +204,10 @@ function shouldSkipExisting(file, marker) {
|
|
|
145
204
|
return false;
|
|
146
205
|
}
|
|
147
206
|
}
|
|
148
|
-
async function setupAgentGuides(cwd) {
|
|
207
|
+
async function setupAgentGuides(cwd, opts) {
|
|
149
208
|
// CLAUDE.md (Claude Code) と AGENTS.md (codex 等) を生成。
|
|
150
209
|
// 既にあれば内容を確認、追記許可を取る。
|
|
210
|
+
const guide = buildAgentGuide(opts);
|
|
151
211
|
const marker = '42ws Site Project'; // ヘッダ重複検知用
|
|
152
212
|
for (const fname of ['CLAUDE.md', 'AGENTS.md']) {
|
|
153
213
|
const fpath = join(cwd, fname);
|
|
@@ -161,11 +221,11 @@ async function setupAgentGuides(cwd) {
|
|
|
161
221
|
info(`${fname} はスキップしました`);
|
|
162
222
|
continue;
|
|
163
223
|
}
|
|
164
|
-
appendFileSync(fpath, '\n\n' +
|
|
224
|
+
appendFileSync(fpath, '\n\n' + guide);
|
|
165
225
|
info(`${fname} に追記しました`);
|
|
166
226
|
}
|
|
167
227
|
else {
|
|
168
|
-
writeFileSync(fpath,
|
|
228
|
+
writeFileSync(fpath, guide);
|
|
169
229
|
info(`${fname} を作成しました`);
|
|
170
230
|
}
|
|
171
231
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|