@sk8metal/michi-cli 0.0.8 → 0.0.9
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.
- package/CHANGELOG.md +33 -0
- package/README.md +202 -9
- package/dist/scripts/__tests__/setup-existing-project.test.js +67 -5
- package/dist/scripts/__tests__/setup-existing-project.test.js.map +1 -1
- package/dist/scripts/constants/__tests__/environments.test.d.ts +2 -0
- package/dist/scripts/constants/__tests__/environments.test.d.ts.map +1 -0
- package/dist/scripts/constants/__tests__/environments.test.js +91 -0
- package/dist/scripts/constants/__tests__/environments.test.js.map +1 -0
- package/dist/scripts/constants/__tests__/languages.test.d.ts +2 -0
- package/dist/scripts/constants/__tests__/languages.test.d.ts.map +1 -0
- package/dist/scripts/constants/__tests__/languages.test.js +82 -0
- package/dist/scripts/constants/__tests__/languages.test.js.map +1 -0
- package/dist/scripts/constants/environments.d.ts +33 -0
- package/dist/scripts/constants/environments.d.ts.map +1 -0
- package/dist/scripts/constants/environments.js +49 -0
- package/dist/scripts/constants/environments.js.map +1 -0
- package/dist/scripts/constants/languages.d.ts +23 -0
- package/dist/scripts/constants/languages.d.ts.map +1 -0
- package/dist/scripts/constants/languages.js +53 -0
- package/dist/scripts/constants/languages.js.map +1 -0
- package/dist/scripts/create-project.d.ts +4 -0
- package/dist/scripts/create-project.d.ts.map +1 -1
- package/dist/scripts/create-project.js +51 -22
- package/dist/scripts/create-project.js.map +1 -1
- package/dist/scripts/setup-existing-project.d.ts +3 -1
- package/dist/scripts/setup-existing-project.d.ts.map +1 -1
- package/dist/scripts/setup-existing-project.js +110 -55
- package/dist/scripts/setup-existing-project.js.map +1 -1
- package/dist/scripts/template/__tests__/renderer.test.d.ts +2 -0
- package/dist/scripts/template/__tests__/renderer.test.d.ts.map +1 -0
- package/dist/scripts/template/__tests__/renderer.test.js +165 -0
- package/dist/scripts/template/__tests__/renderer.test.js.map +1 -0
- package/dist/scripts/template/renderer.d.ts +70 -0
- package/dist/scripts/template/renderer.d.ts.map +1 -0
- package/dist/scripts/template/renderer.js +99 -0
- package/dist/scripts/template/renderer.js.map +1 -0
- package/dist/scripts/utils/template-finder.d.ts +37 -0
- package/dist/scripts/utils/template-finder.d.ts.map +1 -0
- package/dist/scripts/utils/template-finder.js +63 -0
- package/dist/scripts/utils/template-finder.js.map +1 -0
- package/dist/src/__tests__/integration/setup/claude-agent.test.d.ts +5 -0
- package/dist/src/__tests__/integration/setup/claude-agent.test.d.ts.map +1 -0
- package/dist/src/__tests__/integration/setup/claude-agent.test.js +125 -0
- package/dist/src/__tests__/integration/setup/claude-agent.test.js.map +1 -0
- package/dist/src/__tests__/integration/setup/claude.test.d.ts +5 -0
- package/dist/src/__tests__/integration/setup/claude.test.d.ts.map +1 -0
- package/dist/src/__tests__/integration/setup/claude.test.js +111 -0
- package/dist/src/__tests__/integration/setup/claude.test.js.map +1 -0
- package/dist/src/__tests__/integration/setup/cursor.test.d.ts +5 -0
- package/dist/src/__tests__/integration/setup/cursor.test.d.ts.map +1 -0
- package/dist/src/__tests__/integration/setup/cursor.test.js +162 -0
- package/dist/src/__tests__/integration/setup/cursor.test.js.map +1 -0
- package/dist/src/__tests__/integration/setup/helpers/fs-assertions.d.ts +32 -0
- package/dist/src/__tests__/integration/setup/helpers/fs-assertions.d.ts.map +1 -0
- package/dist/src/__tests__/integration/setup/helpers/fs-assertions.js +72 -0
- package/dist/src/__tests__/integration/setup/helpers/fs-assertions.js.map +1 -0
- package/dist/src/__tests__/integration/setup/helpers/test-project.d.ts +38 -0
- package/dist/src/__tests__/integration/setup/helpers/test-project.d.ts.map +1 -0
- package/dist/src/__tests__/integration/setup/helpers/test-project.js +83 -0
- package/dist/src/__tests__/integration/setup/helpers/test-project.js.map +1 -0
- package/dist/src/__tests__/integration/setup/validation.test.d.ts +5 -0
- package/dist/src/__tests__/integration/setup/validation.test.d.ts.map +1 -0
- package/dist/src/__tests__/integration/setup/validation.test.js +318 -0
- package/dist/src/__tests__/integration/setup/validation.test.js.map +1 -0
- package/dist/src/cli.d.ts.map +1 -1
- package/dist/src/cli.js +20 -0
- package/dist/src/cli.js.map +1 -1
- package/dist/src/commands/setup-existing.d.ts +22 -0
- package/dist/src/commands/setup-existing.d.ts.map +1 -0
- package/dist/src/commands/setup-existing.js +408 -0
- package/dist/src/commands/setup-existing.js.map +1 -0
- package/dist/vitest.config.d.ts.map +1 -1
- package/dist/vitest.config.js +4 -3
- package/dist/vitest.config.js.map +1 -1
- package/docs/getting-started/new-repository-setup.md +108 -28
- package/docs/getting-started/quick-start.md +57 -6
- package/docs/getting-started/setup.md +250 -2
- package/docs/guides/customization.md +3 -3
- package/docs/guides/multi-project.md +1 -1
- package/docs/reference/quick-reference.md +25 -16
- package/docs/testing/integration-tests.md +297 -0
- package/package.json +7 -2
- package/scripts/__tests__/setup-existing-project.test.ts +73 -5
- package/scripts/constants/__tests__/environments.test.ts +110 -0
- package/scripts/constants/__tests__/languages.test.ts +100 -0
- package/scripts/constants/environments.ts +61 -0
- package/scripts/constants/languages.ts +70 -0
- package/scripts/create-project.ts +52 -22
- package/scripts/setup-existing-project.ts +136 -57
- package/scripts/setup-existing.sh +130 -3
- package/scripts/template/__tests__/renderer.test.ts +207 -0
- package/scripts/template/renderer.ts +133 -0
- package/scripts/utils/template-finder.ts +75 -0
- package/templates/claude/commands/michi/confluence-sync.md +38 -0
- package/templates/claude/commands/michi/project-switch.md +36 -0
- package/templates/claude/rules/atlassian-integration.md +35 -0
- package/templates/claude/rules/michi-core.md +54 -0
- package/templates/claude-agent/README.md +25 -0
- package/templates/cursor/commands/michi/confluence-sync.md +76 -0
- package/templates/cursor/commands/michi/project-switch.md +69 -0
- package/templates/cursor/rules/atlassian-mcp.mdc +188 -0
- package/templates/cursor/rules/github-ssot.mdc +151 -0
- package/templates/cursor/rules/multi-project.mdc +81 -0
- package/scripts/setup-env.sh +0 -52
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environments.d.ts","sourceRoot":"","sources":["../../../scripts/constants/environments.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,cAAc,GAAG,QAAQ,CAAC;AAE/D,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAgB7D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,GAAI,KAAK,WAAW,KAAG,iBAEvD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,GAAI,KAAK,MAAM,KAAG,GAAG,IAAI,WAE3D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,QAAO,WAAW,EAEtD,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Environment configuration mapping for cc-sdd environments
|
|
3
|
+
*
|
|
4
|
+
* Issue #37: 環境別コピー実装
|
|
5
|
+
*/
|
|
6
|
+
export const ENV_CONFIG = {
|
|
7
|
+
'claude': {
|
|
8
|
+
rulesDir: '.claude/rules',
|
|
9
|
+
commandsDir: '.claude/commands/kiro',
|
|
10
|
+
templateSource: 'claude'
|
|
11
|
+
},
|
|
12
|
+
'claude-agent': {
|
|
13
|
+
rulesDir: '.claude/rules',
|
|
14
|
+
commandsDir: '.claude/commands/kiro',
|
|
15
|
+
templateSource: 'claude-agent'
|
|
16
|
+
},
|
|
17
|
+
'cursor': {
|
|
18
|
+
rulesDir: '.cursor/rules',
|
|
19
|
+
commandsDir: '.cursor/commands/kiro',
|
|
20
|
+
templateSource: 'cursor'
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Get environment configuration
|
|
25
|
+
*
|
|
26
|
+
* @param env - Environment name
|
|
27
|
+
* @returns Environment configuration
|
|
28
|
+
*/
|
|
29
|
+
export const getEnvironmentConfig = (env) => {
|
|
30
|
+
return ENV_CONFIG[env];
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Validate if an environment is supported
|
|
34
|
+
*
|
|
35
|
+
* @param env - Environment name to validate
|
|
36
|
+
* @returns True if supported, false otherwise
|
|
37
|
+
*/
|
|
38
|
+
export const isSupportedEnvironment = (env) => {
|
|
39
|
+
return env in ENV_CONFIG;
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Get all supported environments
|
|
43
|
+
*
|
|
44
|
+
* @returns Array of supported environment names
|
|
45
|
+
*/
|
|
46
|
+
export const getSupportedEnvironments = () => {
|
|
47
|
+
return Object.keys(ENV_CONFIG);
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=environments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environments.js","sourceRoot":"","sources":["../../../scripts/constants/environments.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,MAAM,CAAC,MAAM,UAAU,GAA2C;IAChE,QAAQ,EAAE;QACR,QAAQ,EAAE,eAAe;QACzB,WAAW,EAAE,uBAAuB;QACpC,cAAc,EAAE,QAAQ;KACzB;IACD,cAAc,EAAE;QACd,QAAQ,EAAE,eAAe;QACzB,WAAW,EAAE,uBAAuB;QACpC,cAAc,EAAE,cAAc;KAC/B;IACD,QAAQ,EAAE;QACR,QAAQ,EAAE,eAAe;QACzB,WAAW,EAAE,uBAAuB;QACpC,cAAc,EAAE,QAAQ;KACzB;CACF,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,GAAgB,EAAqB,EAAE;IAC1E,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAW,EAAsB,EAAE;IACxE,OAAO,GAAG,IAAI,UAAU,CAAC;AAC3B,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAkB,EAAE;IAC1D,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAkB,CAAC;AAClD,CAAC,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Supported languages and development guidelines map
|
|
3
|
+
*
|
|
4
|
+
* Issue #37: 環境別コピー実装
|
|
5
|
+
*/
|
|
6
|
+
export declare const supportedLanguages: readonly ["ja", "en", "zh-TW", "zh", "es", "pt", "de", "fr", "ru", "it", "ko", "ar"];
|
|
7
|
+
export type SupportedLanguage = typeof supportedLanguages[number];
|
|
8
|
+
export declare const DEV_GUIDELINES_MAP: Record<SupportedLanguage, string>;
|
|
9
|
+
/**
|
|
10
|
+
* Get development guidelines for a specific language
|
|
11
|
+
*
|
|
12
|
+
* @param lang - Language code
|
|
13
|
+
* @returns Development guidelines string
|
|
14
|
+
*/
|
|
15
|
+
export declare const getDevGuidelines: (lang: SupportedLanguage) => string;
|
|
16
|
+
/**
|
|
17
|
+
* Validate if a language code is supported
|
|
18
|
+
*
|
|
19
|
+
* @param lang - Language code to validate
|
|
20
|
+
* @returns True if supported, false otherwise
|
|
21
|
+
*/
|
|
22
|
+
export declare const isSupportedLanguage: (lang: string) => lang is SupportedLanguage;
|
|
23
|
+
//# sourceMappingURL=languages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"languages.d.ts","sourceRoot":"","sources":["../../../scripts/constants/languages.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,kBAAkB,sFAGrB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAElE,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAmChE,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,iBAAiB,KAAG,MAE1D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,MAAM,MAAM,KAAG,IAAI,IAAI,iBAE1D,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Supported languages and development guidelines map
|
|
3
|
+
*
|
|
4
|
+
* Issue #37: 環境別コピー実装
|
|
5
|
+
*/
|
|
6
|
+
export const supportedLanguages = [
|
|
7
|
+
'ja', 'en', 'zh-TW', 'zh', 'es', 'pt',
|
|
8
|
+
'de', 'fr', 'ru', 'it', 'ko', 'ar'
|
|
9
|
+
];
|
|
10
|
+
export const DEV_GUIDELINES_MAP = {
|
|
11
|
+
en: '- Think in English, generate responses in English',
|
|
12
|
+
ja: '- Think in English, but generate responses in Japanese ' +
|
|
13
|
+
'(思考は英語、回答の生成は日本語で行うように)',
|
|
14
|
+
'zh-TW': '- 以英文思考,但以繁體中文生成回應' +
|
|
15
|
+
'(Think in English, generate in Traditional Chinese)',
|
|
16
|
+
zh: '- 以英文思考,但以简体中文生成回复' +
|
|
17
|
+
'(Think in English, generate in Simplified Chinese)',
|
|
18
|
+
es: '- Think in English, generate responses in Spanish ' +
|
|
19
|
+
'(Piensa en inglés, genera respuestas en español)',
|
|
20
|
+
pt: '- Think in English, generate responses in Portuguese ' +
|
|
21
|
+
'(Pense em inglês, gere respostas em português)',
|
|
22
|
+
de: '- Think in English, generate responses in German ' +
|
|
23
|
+
'(Denke auf Englisch, formuliere Antworten auf Deutsch)',
|
|
24
|
+
fr: '- Think in English, generate responses in French ' +
|
|
25
|
+
'(Pensez en anglais, générez des réponses en français)',
|
|
26
|
+
ru: '- Think in English, generate responses in Russian ' +
|
|
27
|
+
'(Думай по-английски, отвечай по-русски)',
|
|
28
|
+
it: '- Think in English, generate responses in Italian ' +
|
|
29
|
+
'(Pensa in inglese, genera risposte in italiano)',
|
|
30
|
+
ko: '- Think in English, generate responses in Korean ' +
|
|
31
|
+
'(영어로 사고하고, 한국어로 응답을 생성하세요)',
|
|
32
|
+
ar: '- Think in English, generate responses in Arabic ' +
|
|
33
|
+
'(فكر بالإنجليزية وأجب بالعربية)',
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Get development guidelines for a specific language
|
|
37
|
+
*
|
|
38
|
+
* @param lang - Language code
|
|
39
|
+
* @returns Development guidelines string
|
|
40
|
+
*/
|
|
41
|
+
export const getDevGuidelines = (lang) => {
|
|
42
|
+
return DEV_GUIDELINES_MAP[lang];
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* Validate if a language code is supported
|
|
46
|
+
*
|
|
47
|
+
* @param lang - Language code to validate
|
|
48
|
+
* @returns True if supported, false otherwise
|
|
49
|
+
*/
|
|
50
|
+
export const isSupportedLanguage = (lang) => {
|
|
51
|
+
return supportedLanguages.includes(lang);
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=languages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"languages.js","sourceRoot":"","sources":["../../../scripts/constants/languages.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;IACrC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;CAC1B,CAAC;AAIX,MAAM,CAAC,MAAM,kBAAkB,GAAsC;IACnE,EAAE,EAAE,mDAAmD;IAEvD,EAAE,EAAE,yDAAyD;QACvD,yBAAyB;IAE/B,OAAO,EAAE,oBAAoB;QAClB,qDAAqD;IAEhE,EAAE,EAAE,oBAAoB;QAClB,oDAAoD;IAE1D,EAAE,EAAE,oDAAoD;QAClD,kDAAkD;IAExD,EAAE,EAAE,uDAAuD;QACrD,gDAAgD;IAEtD,EAAE,EAAE,mDAAmD;QACjD,wDAAwD;IAE9D,EAAE,EAAE,mDAAmD;QACjD,uDAAuD;IAE7D,EAAE,EAAE,oDAAoD;QAClD,yCAAyC;IAE/C,EAAE,EAAE,oDAAoD;QAClD,iDAAiD;IAEvD,EAAE,EAAE,mDAAmD;QACjD,4BAA4B;IAElC,EAAE,EAAE,mDAAmD;QACjD,iCAAiC;CACxC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAuB,EAAU,EAAE;IAClE,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAClC,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAA6B,EAAE;IAC7E,OAAQ,kBAAwC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAClE,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-project.d.ts","sourceRoot":"","sources":["../../scripts/create-project.ts"],"names":[],"mappings":";AACA
|
|
1
|
+
{"version":3,"file":"create-project.d.ts","sourceRoot":"","sources":["../../scripts/create-project.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;GAYG"}
|
|
@@ -2,6 +2,10 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* 新規プロジェクト自動セットアップスクリプト
|
|
4
4
|
*
|
|
5
|
+
* Issue #35: cc-sdd準拠の多環境対応基盤
|
|
6
|
+
* - templates/ディレクトリから読み込み
|
|
7
|
+
* - プレースホルダーはそのまま(実行時にAIが解釈)
|
|
8
|
+
*
|
|
5
9
|
* 使い方:
|
|
6
10
|
* npm run create-project -- \
|
|
7
11
|
* --name "20240115-payment-api" \
|
|
@@ -10,9 +14,10 @@
|
|
|
10
14
|
*/
|
|
11
15
|
import { execSync } from 'child_process';
|
|
12
16
|
import { writeFileSync, mkdirSync, cpSync, existsSync } from 'fs';
|
|
13
|
-
import { resolve, join, dirname } from 'path';
|
|
17
|
+
import { resolve, join, dirname, basename } from 'path';
|
|
14
18
|
import { fileURLToPath } from 'url';
|
|
15
19
|
import { config as loadDotenv } from 'dotenv';
|
|
20
|
+
import { findTemplateFile, validateRequiredTemplates } from './utils/template-finder.js';
|
|
16
21
|
// ESモジュール対応: __dirnameの代替
|
|
17
22
|
const __filename = fileURLToPath(import.meta.url);
|
|
18
23
|
const __dirname = dirname(__filename);
|
|
@@ -167,41 +172,65 @@ async function createProject(config) {
|
|
|
167
172
|
};
|
|
168
173
|
writeFileSync('.kiro/project.json', JSON.stringify(projectJson, null, 2));
|
|
169
174
|
console.log(' ✅ project.json created');
|
|
170
|
-
// Step 8: Michi
|
|
171
|
-
console.log('\n📋 Step 8: Copying common files from Michi...');
|
|
175
|
+
// Step 8: Michiから共通ファイルをコピー(templates/から)
|
|
176
|
+
console.log('\n📋 Step 8: Copying common files from Michi templates...');
|
|
177
|
+
console.log(' ℹ️ Issue #35: cc-sdd compliant approach (placeholders preserved)');
|
|
172
178
|
const michiPath = resolve(__dirname, '..');
|
|
179
|
+
// 必須テンプレートのバリデーション
|
|
180
|
+
const requiredTemplates = [
|
|
181
|
+
'rules/github-ssot.mdc',
|
|
182
|
+
'rules/multi-project.mdc',
|
|
183
|
+
'commands/michi/confluence-sync.md',
|
|
184
|
+
'commands/michi/project-switch.md'
|
|
185
|
+
];
|
|
186
|
+
try {
|
|
187
|
+
validateRequiredTemplates(michiPath, requiredTemplates);
|
|
188
|
+
}
|
|
189
|
+
catch (error) {
|
|
190
|
+
console.error('\n❌ Template validation failed:');
|
|
191
|
+
console.error(` ${error instanceof Error ? error.message : String(error)}`);
|
|
192
|
+
process.exit(1);
|
|
193
|
+
}
|
|
173
194
|
// コピー先ディレクトリを事前に作成(actualProjectDir 配下に作成)
|
|
174
195
|
console.log(` 📂 Copying to: ${actualProjectDir}`);
|
|
175
196
|
mkdirSync(join(actualProjectDir, '.cursor/rules'), { recursive: true });
|
|
176
|
-
mkdirSync(join(actualProjectDir, '.cursor/commands/
|
|
197
|
+
mkdirSync(join(actualProjectDir, '.cursor/commands/michi'), { recursive: true });
|
|
177
198
|
mkdirSync(join(actualProjectDir, '.kiro/steering'), { recursive: true });
|
|
178
199
|
mkdirSync(join(actualProjectDir, '.kiro/settings/templates'), { recursive: true });
|
|
179
200
|
mkdirSync(join(actualProjectDir, 'scripts/utils'), { recursive: true });
|
|
180
|
-
//
|
|
201
|
+
// ルールファイル(templates/から)
|
|
181
202
|
const rulesToCopy = [
|
|
182
|
-
'multi-project.mdc',
|
|
183
|
-
'github-ssot.mdc',
|
|
184
|
-
'atlassian-mcp.mdc'
|
|
203
|
+
'rules/multi-project.mdc',
|
|
204
|
+
'rules/github-ssot.mdc',
|
|
205
|
+
'rules/atlassian-mcp.mdc'
|
|
185
206
|
];
|
|
186
|
-
for (const
|
|
187
|
-
const src =
|
|
188
|
-
const
|
|
189
|
-
|
|
207
|
+
for (const rulePath of rulesToCopy) {
|
|
208
|
+
const src = findTemplateFile(michiPath, rulePath);
|
|
209
|
+
const fileName = basename(rulePath);
|
|
210
|
+
const dest = join(actualProjectDir, '.cursor/rules', fileName);
|
|
211
|
+
if (src) {
|
|
190
212
|
cpSync(src, dest);
|
|
191
|
-
console.log(` ✅ Copied: .cursor/rules/${
|
|
213
|
+
console.log(` ✅ Copied: .cursor/rules/${fileName} (from templates/)`);
|
|
214
|
+
}
|
|
215
|
+
else {
|
|
216
|
+
console.log(` ⚠️ ${fileName} not found in templates/`);
|
|
192
217
|
}
|
|
193
218
|
}
|
|
194
|
-
//
|
|
219
|
+
// カスタムコマンド(templates/から)
|
|
195
220
|
const commandsToCopy = [
|
|
196
|
-
'confluence-sync.md',
|
|
197
|
-
'project-switch.md'
|
|
221
|
+
'commands/michi/confluence-sync.md',
|
|
222
|
+
'commands/michi/project-switch.md'
|
|
198
223
|
];
|
|
199
|
-
for (const
|
|
200
|
-
const src =
|
|
201
|
-
const
|
|
202
|
-
|
|
224
|
+
for (const cmdPath of commandsToCopy) {
|
|
225
|
+
const src = findTemplateFile(michiPath, cmdPath);
|
|
226
|
+
const fileName = basename(cmdPath);
|
|
227
|
+
const dest = join(actualProjectDir, '.cursor/commands/michi', fileName);
|
|
228
|
+
if (src) {
|
|
203
229
|
cpSync(src, dest);
|
|
204
|
-
console.log(` ✅ Copied: .cursor/commands/
|
|
230
|
+
console.log(` ✅ Copied: .cursor/commands/michi/${fileName} (from templates/)`);
|
|
231
|
+
}
|
|
232
|
+
else {
|
|
233
|
+
console.log(` ⚠️ ${fileName} not found in templates/`);
|
|
205
234
|
}
|
|
206
235
|
}
|
|
207
236
|
// Steering
|
|
@@ -289,7 +318,7 @@ async function createProject(config) {
|
|
|
289
318
|
console.log(' 4. Cursor で開く: cursor .');
|
|
290
319
|
console.log(' 5. /kiro:spec-init <機能説明> で開発開始');
|
|
291
320
|
console.log('');
|
|
292
|
-
console.log('詳細: docs/new-repository-setup.md');
|
|
321
|
+
console.log('詳細: docs/getting-started/new-repository-setup.md');
|
|
293
322
|
}
|
|
294
323
|
finally {
|
|
295
324
|
// 元の作業ディレクトリに戻る
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-project.js","sourceRoot":"","sources":["../../scripts/create-project.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"create-project.js","sourceRoot":"","sources":["../../scripts/create-project.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,9 @@
|
|
|
7
7
|
* npx tsx /path/to/michi/scripts/setup-existing-project.ts \
|
|
8
8
|
* --michi-path /path/to/michi \
|
|
9
9
|
* --project-name "既存プロジェクト" \
|
|
10
|
-
* --jira-key "EXIST"
|
|
10
|
+
* --jira-key "EXIST" \
|
|
11
|
+
* --environment cursor \
|
|
12
|
+
* --lang ja
|
|
11
13
|
*/
|
|
12
14
|
export {};
|
|
13
15
|
//# sourceMappingURL=setup-existing-project.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-existing-project.d.ts","sourceRoot":"","sources":["../../scripts/setup-existing-project.ts"],"names":[],"mappings":";AACA
|
|
1
|
+
{"version":3,"file":"setup-existing-project.d.ts","sourceRoot":"","sources":["../../scripts/setup-existing-project.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;GAWG"}
|
|
@@ -7,12 +7,21 @@
|
|
|
7
7
|
* npx tsx /path/to/michi/scripts/setup-existing-project.ts \
|
|
8
8
|
* --michi-path /path/to/michi \
|
|
9
9
|
* --project-name "既存プロジェクト" \
|
|
10
|
-
* --jira-key "EXIST"
|
|
10
|
+
* --jira-key "EXIST" \
|
|
11
|
+
* --environment cursor \
|
|
12
|
+
* --lang ja
|
|
11
13
|
*/
|
|
12
|
-
import { cpSync, existsSync, mkdirSync, writeFileSync, readFileSync } from 'fs';
|
|
13
|
-
import { resolve, join, basename } from 'path';
|
|
14
|
+
import { cpSync, existsSync, mkdirSync, writeFileSync, readFileSync, readdirSync } from 'fs';
|
|
15
|
+
import { resolve, join, basename, dirname } from 'path';
|
|
16
|
+
import { fileURLToPath } from 'url';
|
|
14
17
|
import { execSync } from 'child_process';
|
|
15
18
|
import { findRepositoryRoot } from './utils/project-finder.js';
|
|
19
|
+
import { getEnvironmentConfig, isSupportedEnvironment } from './constants/environments.js';
|
|
20
|
+
import { isSupportedLanguage } from './constants/languages.js';
|
|
21
|
+
import { createTemplateContext, renderTemplate } from './template/renderer.js';
|
|
22
|
+
// ES module で __dirname を取得
|
|
23
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
24
|
+
const __dirname = dirname(__filename);
|
|
16
25
|
function parseArgs() {
|
|
17
26
|
const args = process.argv.slice(2);
|
|
18
27
|
const config = {};
|
|
@@ -29,20 +38,69 @@ function parseArgs() {
|
|
|
29
38
|
case 'jira-key':
|
|
30
39
|
config.jiraKey = value;
|
|
31
40
|
break;
|
|
41
|
+
case 'environment':
|
|
42
|
+
config.environment = value;
|
|
43
|
+
break;
|
|
44
|
+
case 'lang':
|
|
45
|
+
config.langCode = value;
|
|
46
|
+
break;
|
|
32
47
|
}
|
|
33
48
|
}
|
|
34
49
|
// デフォルト値
|
|
35
50
|
if (!config.michiPath) {
|
|
36
51
|
config.michiPath = resolve(__dirname, '..');
|
|
37
52
|
}
|
|
53
|
+
if (!config.environment) {
|
|
54
|
+
config.environment = 'claude';
|
|
55
|
+
}
|
|
56
|
+
if (!config.langCode) {
|
|
57
|
+
config.langCode = 'ja';
|
|
58
|
+
}
|
|
38
59
|
// 必須フィールドチェック
|
|
39
60
|
if (!config.projectName || !config.jiraKey) {
|
|
40
61
|
console.error('Missing required parameters');
|
|
41
|
-
console.error('Usage: tsx setup-existing-project.ts --project-name <name> --jira-key <key> [--michi-path <path>]');
|
|
62
|
+
console.error('Usage: tsx setup-existing-project.ts --project-name <name> --jira-key <key> [--michi-path <path>] [--environment <env>] [--lang <code>]');
|
|
63
|
+
process.exit(1);
|
|
64
|
+
}
|
|
65
|
+
// 環境バリデーション
|
|
66
|
+
if (!isSupportedEnvironment(config.environment)) {
|
|
67
|
+
console.error(`Unsupported environment: ${config.environment}`);
|
|
68
|
+
console.error('Supported environments: claude, claude-agent, cursor');
|
|
69
|
+
process.exit(1);
|
|
70
|
+
}
|
|
71
|
+
// 言語バリデーション
|
|
72
|
+
if (!isSupportedLanguage(config.langCode)) {
|
|
73
|
+
console.error(`Unsupported language: ${config.langCode}`);
|
|
74
|
+
console.error('Supported languages: ja, en, zh-TW, zh, es, pt, de, fr, ru, it, ko, ar');
|
|
42
75
|
process.exit(1);
|
|
43
76
|
}
|
|
44
77
|
return config;
|
|
45
78
|
}
|
|
79
|
+
/**
|
|
80
|
+
* Copy and render templates recursively
|
|
81
|
+
*
|
|
82
|
+
* @param sourceDir - Source directory containing templates
|
|
83
|
+
* @param destDir - Destination directory for rendered files
|
|
84
|
+
* @param context - Template context for rendering
|
|
85
|
+
*/
|
|
86
|
+
function copyAndRenderTemplates(sourceDir, destDir, context) {
|
|
87
|
+
const entries = readdirSync(sourceDir, { withFileTypes: true });
|
|
88
|
+
for (const entry of entries) {
|
|
89
|
+
const sourcePath = join(sourceDir, entry.name);
|
|
90
|
+
const destPath = join(destDir, entry.name);
|
|
91
|
+
if (entry.isDirectory()) {
|
|
92
|
+
// ディレクトリは再帰的にコピー
|
|
93
|
+
mkdirSync(destPath, { recursive: true });
|
|
94
|
+
copyAndRenderTemplates(sourcePath, destPath, context);
|
|
95
|
+
}
|
|
96
|
+
else if (entry.isFile()) {
|
|
97
|
+
// ファイルはレンダリングしてコピー
|
|
98
|
+
const content = readFileSync(sourcePath, 'utf-8');
|
|
99
|
+
const rendered = renderTemplate(content, context);
|
|
100
|
+
writeFileSync(destPath, rendered, 'utf-8');
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
46
104
|
async function setupExistingProject(config) {
|
|
47
105
|
const currentDir = process.cwd();
|
|
48
106
|
const projectId = basename(currentDir);
|
|
@@ -50,6 +108,8 @@ async function setupExistingProject(config) {
|
|
|
50
108
|
console.log(` プロジェクト: ${config.projectName}`);
|
|
51
109
|
console.log(` ディレクトリ: ${currentDir}`);
|
|
52
110
|
console.log(` Michiパス: ${config.michiPath}`);
|
|
111
|
+
console.log(` 環境: ${config.environment}`);
|
|
112
|
+
console.log(` 言語: ${config.langCode}`);
|
|
53
113
|
console.log('');
|
|
54
114
|
// リポジトリルートを検出
|
|
55
115
|
const repoRoot = findRepositoryRoot(currentDir);
|
|
@@ -122,6 +182,7 @@ async function setupExistingProject(config) {
|
|
|
122
182
|
const projectJson = {
|
|
123
183
|
projectId,
|
|
124
184
|
projectName: config.projectName,
|
|
185
|
+
language: config.langCode,
|
|
125
186
|
jiraProjectKey: config.jiraKey,
|
|
126
187
|
confluenceLabels: labels,
|
|
127
188
|
status: 'active',
|
|
@@ -132,57 +193,50 @@ async function setupExistingProject(config) {
|
|
|
132
193
|
};
|
|
133
194
|
writeFileSync('.kiro/project.json', JSON.stringify(projectJson, null, 2));
|
|
134
195
|
console.log(' ✅ project.json created');
|
|
135
|
-
// Step 4:
|
|
136
|
-
console.log('\n📋 Step 4: Copying
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
const
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
];
|
|
145
|
-
for (const rule of rulesToCopy) {
|
|
146
|
-
const src = join(config.michiPath, '.cursor/rules', rule);
|
|
147
|
-
const dest = join(projectDir, '.cursor/rules', rule);
|
|
148
|
-
if (existsSync(src)) {
|
|
149
|
-
cpSync(src, dest);
|
|
150
|
-
console.log(` ✅ ${rule}`);
|
|
151
|
-
}
|
|
152
|
-
else {
|
|
153
|
-
console.log(` ⚠️ ${rule} not found in Michi`);
|
|
154
|
-
}
|
|
196
|
+
// Step 4: 環境別テンプレートのコピーとレンダリング
|
|
197
|
+
console.log('\n📋 Step 4: Copying and rendering templates from Michi...');
|
|
198
|
+
const envConfig = getEnvironmentConfig(config.environment);
|
|
199
|
+
const templateContext = createTemplateContext(config.langCode, '.kiro', envConfig.rulesDir.startsWith('.') ? envConfig.rulesDir.substring(1, envConfig.rulesDir.indexOf('/', 1)) : envConfig.rulesDir.split('/')[0]);
|
|
200
|
+
// テンプレートソースディレクトリ
|
|
201
|
+
const templateSourceDir = join(config.michiPath, 'templates', envConfig.templateSource);
|
|
202
|
+
if (!existsSync(templateSourceDir)) {
|
|
203
|
+
console.log(` ⚠️ Template source not found: ${templateSourceDir}`);
|
|
204
|
+
console.log(' Skipping template copy');
|
|
155
205
|
}
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
206
|
+
else {
|
|
207
|
+
// rulesディレクトリのコピーとレンダリング
|
|
208
|
+
const rulesTemplateDir = join(templateSourceDir, 'rules');
|
|
209
|
+
const rulesDestDir = join(projectDir, envConfig.rulesDir);
|
|
210
|
+
if (existsSync(rulesTemplateDir)) {
|
|
211
|
+
mkdirSync(rulesDestDir, { recursive: true });
|
|
212
|
+
copyAndRenderTemplates(rulesTemplateDir, rulesDestDir, templateContext);
|
|
213
|
+
console.log(` ✅ Rules copied and rendered to ${envConfig.rulesDir}`);
|
|
214
|
+
}
|
|
215
|
+
// commandsディレクトリのコピーとレンダリング
|
|
216
|
+
const commandsTemplateDir = join(templateSourceDir, 'commands');
|
|
217
|
+
const commandsDestDir = join(projectDir, envConfig.commandsDir);
|
|
218
|
+
if (existsSync(commandsTemplateDir)) {
|
|
219
|
+
mkdirSync(commandsDestDir, { recursive: true });
|
|
220
|
+
copyAndRenderTemplates(commandsTemplateDir, commandsDestDir, templateContext);
|
|
221
|
+
console.log(` ✅ Commands copied and rendered to ${envConfig.commandsDir}`);
|
|
168
222
|
}
|
|
169
223
|
}
|
|
170
|
-
// Step
|
|
171
|
-
console.log('\n📚 Step
|
|
224
|
+
// Step 5: Steeringテンプレートをコピー
|
|
225
|
+
console.log('\n📚 Step 5: Copying steering templates...');
|
|
172
226
|
const steeringDir = join(config.michiPath, '.kiro/steering');
|
|
173
227
|
if (existsSync(steeringDir)) {
|
|
174
228
|
cpSync(steeringDir, join(projectDir, '.kiro/steering'), { recursive: true });
|
|
175
229
|
console.log(' ✅ product.md, tech.md, structure.md');
|
|
176
230
|
}
|
|
177
|
-
// Step
|
|
178
|
-
console.log('\n📄 Step
|
|
231
|
+
// Step 6: テンプレートをコピー
|
|
232
|
+
console.log('\n📄 Step 6: Copying spec templates...');
|
|
179
233
|
const templatesDir = join(config.michiPath, '.kiro/settings/templates');
|
|
180
234
|
if (existsSync(templatesDir)) {
|
|
181
235
|
cpSync(templatesDir, join(projectDir, '.kiro/settings/templates'), { recursive: true });
|
|
182
236
|
console.log(' ✅ requirements.md, design.md, tasks.md');
|
|
183
237
|
}
|
|
184
|
-
// Step
|
|
185
|
-
console.log('\n⚙️ Step
|
|
238
|
+
// Step 7: CLIツールのセットアップ案内
|
|
239
|
+
console.log('\n⚙️ Step 7: Setting up Michi CLI...');
|
|
186
240
|
console.log(' ✅ Michi CLI setup complete!');
|
|
187
241
|
console.log('');
|
|
188
242
|
console.log(' 📋 使用方法:');
|
|
@@ -193,8 +247,8 @@ async function setupExistingProject(config) {
|
|
|
193
247
|
console.log(' または、グローバルインストール:');
|
|
194
248
|
console.log(' npm install -g @sk8metal/michi-cli');
|
|
195
249
|
console.log(' michi jira:sync <feature>');
|
|
196
|
-
// Step
|
|
197
|
-
console.log('\n📦 Step
|
|
250
|
+
// Step 8: package.json と tsconfig.json をリポジトリルートにコピー
|
|
251
|
+
console.log('\n📦 Step 8: Setting up package.json and TypeScript...');
|
|
198
252
|
// 既存の package.json があるかチェック(リポジトリルート)
|
|
199
253
|
const hasPackageJson = existsSync(join(repoRoot, 'package.json'));
|
|
200
254
|
if (!hasPackageJson) {
|
|
@@ -235,8 +289,8 @@ async function setupExistingProject(config) {
|
|
|
235
289
|
else {
|
|
236
290
|
console.log(' ℹ️ Existing tsconfig.json found (kept)');
|
|
237
291
|
}
|
|
238
|
-
// Step
|
|
239
|
-
console.log('\n🔐 Step
|
|
292
|
+
// Step 9: .env テンプレート作成(プロジェクトディレクトリに)
|
|
293
|
+
console.log('\n🔐 Step 9: Creating .env template...');
|
|
240
294
|
const envTemplate = `# Atlassian設定(MCP + REST API共通)
|
|
241
295
|
ATLASSIAN_URL=https://your-domain.atlassian.net
|
|
242
296
|
ATLASSIAN_EMAIL=your-email@company.com
|
|
@@ -262,8 +316,8 @@ JIRA_PROJECT_KEYS=${config.jiraKey}
|
|
|
262
316
|
else {
|
|
263
317
|
console.log(' ℹ️ .env already exists (kept)');
|
|
264
318
|
}
|
|
265
|
-
// Step
|
|
266
|
-
console.log('\n📖 Step
|
|
319
|
+
// Step 10: README.md を更新(オプション、プロジェクトディレクトリに)
|
|
320
|
+
console.log('\n📖 Step 10: Updating documentation...');
|
|
267
321
|
const readmePath = join(projectDir, 'README.md');
|
|
268
322
|
if (existsSync(readmePath)) {
|
|
269
323
|
const currentReadme = readFileSync(readmePath, 'utf-8');
|
|
@@ -302,8 +356,8 @@ npm run github:create-pr <branch> # PR作成
|
|
|
302
356
|
console.log(' ℹ️ README.md already has workflow section');
|
|
303
357
|
}
|
|
304
358
|
}
|
|
305
|
-
// Step
|
|
306
|
-
console.log('\n🚫 Step
|
|
359
|
+
// Step 11: .gitignore 更新(リポジトリルートに)
|
|
360
|
+
console.log('\n🚫 Step 11: Updating .gitignore...');
|
|
307
361
|
const gitignoreEntries = [
|
|
308
362
|
'# AI Development Workflow',
|
|
309
363
|
'node_modules/',
|
|
@@ -340,14 +394,15 @@ npm run github:create-pr <branch> # PR作成
|
|
|
340
394
|
console.log(' 2. .env ファイルを編集して認証情報を設定');
|
|
341
395
|
console.log(' 3. package.json が既存の場合、スクリプトを手動追加');
|
|
342
396
|
console.log(' 4. npm install で依存関係をインストール(リポジトリルートで実行)');
|
|
343
|
-
console.log(
|
|
344
|
-
console.log(' 6.
|
|
345
|
-
console.log(' 7.
|
|
397
|
+
console.log(` 5. cc-sddを導入: npx cc-sdd@latest --lang ${config.langCode} --${config.environment}`);
|
|
398
|
+
console.log(' 6. jj commit でセットアップをコミット');
|
|
399
|
+
console.log(' 7. Cursor で開く: cursor .');
|
|
400
|
+
console.log(' 8. /kiro:spec-init <機能説明> で開発開始');
|
|
346
401
|
console.log('');
|
|
347
402
|
console.log('作成されたファイル:');
|
|
348
403
|
console.log(` - ${projectDir}/.kiro/project.json`);
|
|
349
|
-
console.log(` - ${projectDir}
|
|
350
|
-
console.log(` - ${projectDir}
|
|
404
|
+
console.log(` - ${projectDir}/${envConfig.rulesDir}/`);
|
|
405
|
+
console.log(` - ${projectDir}/${envConfig.commandsDir}/`);
|
|
351
406
|
console.log(` - ${projectDir}/.kiro/steering/ (3ファイル)`);
|
|
352
407
|
console.log(` - ${projectDir}/.kiro/settings/templates/ (3ファイル)`);
|
|
353
408
|
console.log(` - ${repoRoot}/package.json (新規の場合)`);
|