@einja/dev-cli 0.1.41 → 0.1.45

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.
Files changed (103) hide show
  1. package/README.md +0 -1
  2. package/dist/cli.js +0 -1
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/sync.d.ts.map +1 -1
  5. package/dist/commands/sync.js +1 -20
  6. package/dist/commands/sync.js.map +1 -1
  7. package/dist/commands/task-loop/lib/github-client.test.js.map +1 -1
  8. package/dist/commands/task-loop/lib/vibe-kanban-rest-client.js +2 -2
  9. package/dist/commands/task-loop/lib/vibe-kanban-rest-client.js.map +1 -1
  10. package/dist/lib/preset-update/file-copier.js +3 -3
  11. package/dist/lib/preset-update/file-copier.js.map +1 -1
  12. package/dist/lib/sync/file-filter.js +2 -2
  13. package/dist/lib/sync/file-filter.js.map +1 -1
  14. package/dist/lib/sync/file-filter.test.js +20 -0
  15. package/dist/lib/sync/file-filter.test.js.map +1 -1
  16. package/dist/lib/sync/marker-processor.js.map +1 -1
  17. package/dist/lib/sync/metadata-manager.js +1 -1
  18. package/dist/lib/sync/metadata-manager.js.map +1 -1
  19. package/dist/lib/sync/metadata-manager.test.js +3 -2
  20. package/dist/lib/sync/metadata-manager.test.js.map +1 -1
  21. package/dist/lib/sync/project-private-synchronizer.d.ts.map +1 -1
  22. package/dist/lib/sync/project-private-synchronizer.js +5 -1
  23. package/dist/lib/sync/project-private-synchronizer.js.map +1 -1
  24. package/dist/types/index.d.ts +0 -1
  25. package/dist/types/index.d.ts.map +1 -1
  26. package/package.json +1 -1
  27. package/presets/default/.claude/agents/einja/backend-architect.md +17 -1
  28. package/presets/default/.claude/agents/einja/codex-agent.md +1 -1
  29. package/presets/default/.claude/agents/einja/design-engineer.md +1 -1
  30. package/presets/default/.claude/agents/einja/docs/docs-updater.md +3 -93
  31. package/presets/default/.claude/agents/einja/frontend-architect.md +17 -1
  32. package/presets/default/.claude/agents/einja/frontend-coder.md +1 -1
  33. package/presets/default/.claude/agents/einja/{specs/spec-design-generator.md → issue-specs/design-generator.md} +12 -7
  34. package/presets/default/.claude/agents/einja/{specs/spec-qa-generator.md → issue-specs/qa-generator.md} +6 -4
  35. package/presets/default/.claude/agents/einja/{specs/spec-requirements-generator.md → issue-specs/requirements-generator.md} +5 -5
  36. package/presets/default/.claude/agents/einja/{specs/spec-tasks-generator.md → issue-specs/tasks-generator.md} +13 -14
  37. package/presets/default/.claude/agents/einja/{specs/spec-tasks-validator.md → issue-specs/tasks-validator.md} +9 -9
  38. package/presets/default/.claude/agents/einja/issue-specs/ui-design-generator.md +114 -0
  39. package/presets/default/.claude/agents/einja/task/task-executer.md +9 -3
  40. package/presets/default/.claude/agents/einja/task/task-modification-analyzer.md +2 -2
  41. package/presets/default/.claude/agents/einja/task/task-qa.md +3 -3
  42. package/presets/default/.claude/agents/einja/task/task-reviewer.md +13 -1
  43. package/presets/default/.claude/commands/einja/einja-sync.md +119 -44
  44. package/presets/default/.claude/commands/einja/issue-exec.md +29 -19
  45. package/presets/default/.claude/commands/einja/sync-cursor-commands.md +6 -6
  46. package/presets/default/.claude/commands/einja/{update-docs-by-task-specs.md → update-docs-by-issue-specs.md} +58 -58
  47. package/presets/default/.claude/hooks/einja/plan-mode-skill-loader.sh +5 -1
  48. package/presets/default/.claude/settings.json +14 -4
  49. package/presets/default/.claude/skills/{einja-general-context-loader → _einja-general-context-loader}/SKILL.md +2 -2
  50. package/presets/default/.claude/skills/{einja-output-format → _einja-output-format}/SKILL.md +1 -1
  51. package/presets/default/.claude/skills/_einja-project-overview/SKILL.md +29 -0
  52. package/presets/default/.claude/skills/{einja-spec-context-loader → _einja-spec-context-loader}/SKILL.md +5 -5
  53. package/presets/default/.claude/skills/einja-coding-standards/references/testing-strategy.md +899 -0
  54. package/presets/default/.claude/skills/einja-conflict-resolver/SKILL.md +1 -1
  55. package/presets/default/.claude/skills/einja-create-pr/SKILL.md +138 -0
  56. package/presets/default/.claude/skills/einja-infra-maintenance/SKILL.md +779 -0
  57. package/presets/default/.claude/{commands/einja/spec-create.md → skills/einja-issue-spec-create/SKILL.md} +47 -24
  58. package/presets/default/.claude/skills/einja-issue-spec-generator/SKILL.md +105 -0
  59. package/presets/default/.claude/skills/einja-issue-spec-generator/references/format-rules.md +35 -0
  60. package/presets/default/.claude/skills/einja-issue-spec-validator/SKILL.md +130 -0
  61. package/presets/default/.claude/skills/einja-issue-spec-validator/references/validation-rules.md +52 -0
  62. package/presets/default/.claude/skills/einja-npm-release/SKILL.md +242 -0
  63. package/presets/default/.claude/skills/einja-skill-creator/SKILL.md +68 -12
  64. package/presets/default/.claude/skills/einja-skill-creator/scripts/aggregate_benchmark.py +368 -121
  65. package/presets/default/.claude/skills/einja-skill-creator/scripts/compare_runs.py +154 -0
  66. package/presets/default/.claude/skills/einja-skill-creator/scripts/generate_report.py +14 -7
  67. package/presets/default/.claude/skills/einja-skill-creator/scripts/improve_description.py +2 -7
  68. package/presets/default/.claude/skills/einja-skill-creator/scripts/run_loop.py +263 -183
  69. package/presets/default/.claude/skills/einja-skill-first/SKILL.md +265 -0
  70. package/presets/default/.claude/skills/einja-subagent-question-protocol/SKILL.md +98 -0
  71. package/presets/default/.claude/skills/einja-task-commit/SKILL.md +7 -7
  72. package/presets/default/.claude/{commands/einja/task-exec.md → skills/einja-task-exec/SKILL.md} +3 -78
  73. package/presets/default/.claude/skills/einja-task-qa/SKILL.md +4 -4
  74. package/presets/default/.claude/skills/einja-task-qa/references/troubleshooting.md +1 -1
  75. package/presets/default/.claude/skills/einja-task-qa/references/usage-patterns.md +2 -2
  76. package/presets/default/.claude/skills/einja-team-exec/SKILL.md +165 -0
  77. package/presets/default/CLAUDE.md.template +21 -6
  78. package/presets/default/docs/einja/instructions/deployment-setup.md +1 -1
  79. package/presets/default/docs/einja/instructions/issue-exec-workflow.md +11 -11
  80. package/presets/default/docs/einja/instructions/local-server-environment-and-worktree.md +1 -1
  81. package/presets/default/docs/einja/instructions/setup-flow.md +279 -0
  82. package/presets/default/docs/einja/instructions/task-execute.md +42 -42
  83. package/presets/default/docs/einja/steering/acceptance-criteria-and-qa-guide.md +1 -1
  84. package/presets/default/docs/einja/steering/branch-strategy.md +1 -1
  85. package/presets/default/docs/einja/steering/development-workflow.md +93 -25
  86. package/presets/default/docs/einja/steering/infrastructure/deployment.md +107 -0
  87. package/presets/default/docs/einja/steering/task-management.md +9 -13
  88. package/presets/default/scripts/ensure-serena.sh +2 -2
  89. package/presets/default/scripts/env-rotate-secrets.ts +66 -6
  90. package/presets/default/scripts/init-github.ts +363 -0
  91. package/presets/default/scripts/init.sh +11 -5
  92. package/presets/default/scripts/setup-dev.ts +16 -1
  93. package/dist/lib/sync/backup-manager.d.ts +0 -50
  94. package/dist/lib/sync/backup-manager.d.ts.map +0 -1
  95. package/dist/lib/sync/backup-manager.js +0 -117
  96. package/dist/lib/sync/backup-manager.js.map +0 -1
  97. package/dist/lib/sync/backup-manager.test.d.ts +0 -2
  98. package/dist/lib/sync/backup-manager.test.d.ts.map +0 -1
  99. package/dist/lib/sync/backup-manager.test.js +0 -155
  100. package/dist/lib/sync/backup-manager.test.js.map +0 -1
  101. package/presets/default/.claude/agents/einja/git/conflict-resolver.md +0 -152
  102. package/presets/default/.claude/hooks/einja/validate-git-commit.sh +0 -239
  103. package/presets/default/.claude/skills/einja-project-overview/SKILL.md +0 -39
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: conflict-resolver
2
+ name: einja-conflict-resolver
3
3
  description: "gitコンフリクトを解消するSkill(rebase/merge/stash/cherry-pick等に対応)"
4
4
  invocation: "agent-requested"
5
5
  allowed-tools:
@@ -0,0 +1,138 @@
1
+ ---
2
+ description: "PR作成時にchangeset自動生成 + ラベル付与 + PR作成を一括実行するSkill。task-exec/issue-exec経由では自動モード、手動 /einja-create-pr では対話モードで動作"
3
+ ---
4
+
5
+ # einja-create-pr Skill
6
+
7
+ ## 概要
8
+
9
+ PR作成時に以下を一括実行する:
10
+ 1. changeset自動生成(必要な場合)
11
+ 2. ラベル判定・付与
12
+ 3. PR作成(`gh pr create`)
13
+
14
+ ## 動作モード
15
+
16
+ | モード | トリガー | changeset確認 | ラベル確認 |
17
+ |--------|---------|--------------|-----------|
18
+ | 自動 | task-exec/issue-exec経由 | 推定値で自動決定 | 自動 |
19
+ | 対話 | 手動 `/einja-create-pr` | AskUserQuestionで確認 | AskUserQuestionで確認 |
20
+
21
+ 呼び出し元がtask-exec/issue-execかどうかは、$ARGUMENTSに `--auto` フラグがあるかで判定する。
22
+
23
+ ## 入力
24
+
25
+ ```
26
+ $ARGUMENTS: [--auto] [--base <branch>] [--title <title>]
27
+ ```
28
+
29
+ - `--auto`: 自動モード(確認なしで実行)
30
+ - `--base`: PRのベースブランチ(デフォルト: 現在のブランチの上流を推測)
31
+ - `--title`: PRタイトル(指定なしの場合はコミットメッセージから生成)
32
+
33
+ ## 処理フロー
34
+
35
+ ### Step 1: 差分分析
36
+
37
+ ```bash
38
+ # ベースブランチの決定
39
+ BASE=$(git rev-parse --abbrev-ref HEAD@{upstream} 2>/dev/null | sed 's|origin/||' || echo "main")
40
+ # --base指定があればそちらを優先
41
+
42
+ # コミット履歴
43
+ git log --format="%s%n%b" origin/${BASE}..HEAD
44
+
45
+ # 変更ファイル一覧
46
+ git diff --name-only origin/${BASE}..HEAD
47
+ ```
48
+
49
+ ### Step 2: changeset生成判定
50
+
51
+ #### スキップ条件(以下のいずれかに該当する場合はchangeset生成をスキップ):
52
+ - staging → main の昇格PR(ベースがmainで、HEADがstagingからのマージ)
53
+ - `apps/` 配下に変更がない(docs/、CI設定/、.claude/ のみの変更)
54
+ - 既に `.changeset/` 内に README.md 以外の .md ファイルが存在する
55
+
56
+ #### 変更種別の推定:
57
+ コミットメッセージのプレフィックスから最大値を選択:
58
+ - `feat!` or `BREAKING` → `major`
59
+ - `feat` → `minor`
60
+ - `fix`, `perf`, `refactor` → `patch`
61
+ - それ以外 → `patch`
62
+
63
+ #### パッケージ判定:
64
+ 変更ファイルのパスからパッケージを推定:
65
+ - `apps/web/**` → `@repo/web`
66
+ - `apps/admin/**` → `@repo/admin`
67
+ - `packages/**` は除外(内部パッケージ)
68
+
69
+ ### Step 3: changeset生成
70
+
71
+ スキップ条件に該当しない場合のみ実行。
72
+
73
+ 対話モードの場合は、推定した変更種別とサマリーをAskUserQuestionで確認。
74
+
75
+ ```bash
76
+ # ランダムファイル名で.changesetファイルを作成
77
+ # フォーマット:
78
+ # ---
79
+ # "@repo/web": minor
80
+ # ---
81
+ #
82
+ # サマリー(コミットメッセージの要約)
83
+ ```
84
+
85
+ 生成後、changesetファイルをコミット:
86
+ ```bash
87
+ git add .changeset/*.md
88
+ git commit -m "chore: add changeset"
89
+ ```
90
+
91
+ ### Step 4: ラベル判定
92
+
93
+ PRタイトル(または最初のコミットメッセージ)のプレフィックスから単一ラベルを選択:
94
+
95
+ | プレフィックス | ラベル |
96
+ |-------------|--------|
97
+ | `feat!` / `BREAKING` | `breaking-change` |
98
+ | `feat` / `feature` | `enhancement` |
99
+ | `fix` / `bug` | `bug` |
100
+ | その他 (`chore`, `docs`, `refactor`, `ci`, `test`) | `maintenance` |
101
+
102
+ 対話モードの場合は、推定ラベルをAskUserQuestionで確認。
103
+
104
+ ### Step 5: PR作成
105
+
106
+ ```bash
107
+ gh pr create \
108
+ --base "${BASE}" \
109
+ --title "${TITLE}" \
110
+ --body "$(cat <<'EOF'
111
+ ## Summary
112
+ ${SUMMARY}
113
+
114
+ ## Changes
115
+ ${CHANGED_FILES_LIST}
116
+
117
+ ## Changeset
118
+ ${CHANGESET_INFO}
119
+ EOF
120
+ )" \
121
+ --label "${LABEL}"
122
+ ```
123
+
124
+ ## エラーハンドリング
125
+
126
+ | エラー | 対処 |
127
+ |-------|------|
128
+ | ベースブランチが見つからない | AskUserQuestionでベースブランチを質問 |
129
+ | リモートにpushされていない | `git push -u origin HEAD` を先に実行 |
130
+ | changeset生成でパッケージ不明 | ルートパッケージ(`einja-management-monorepo`)を使用 |
131
+ | gh CLIが未認証 | エラーメッセージを表示して停止 |
132
+
133
+ ## 出力
134
+
135
+ PR作成後、以下を出力:
136
+ - PR URL
137
+ - 付与したラベル
138
+ - changeset情報(生成した場合)