takt 0.3.7 → 0.3.8
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/dist/claude/client.d.ts.map +1 -1
- package/dist/claude/client.js +3 -2
- package/dist/claude/client.js.map +1 -1
- package/dist/claude/executor.d.ts.map +1 -1
- package/dist/claude/executor.js +2 -1
- package/dist/claude/executor.js.map +1 -1
- package/dist/cli.d.ts +2 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +41 -17
- package/dist/cli.js.map +1 -1
- package/dist/codex/client.d.ts.map +1 -1
- package/dist/codex/client.js +2 -1
- package/dist/codex/client.js.map +1 -1
- package/dist/commands/addTask.d.ts.map +1 -1
- package/dist/commands/addTask.js +3 -2
- package/dist/commands/addTask.js.map +1 -1
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +0 -7
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/eject.js +3 -3
- package/dist/commands/eject.js.map +1 -1
- package/dist/commands/interactive.d.ts.map +1 -1
- package/dist/commands/interactive.js +12 -10
- package/dist/commands/interactive.js.map +1 -1
- package/dist/commands/listTasks.d.ts.map +1 -1
- package/dist/commands/listTasks.js +15 -9
- package/dist/commands/listTasks.js.map +1 -1
- package/dist/commands/pipelineExecution.d.ts +1 -1
- package/dist/commands/pipelineExecution.d.ts.map +1 -1
- package/dist/commands/pipelineExecution.js +15 -25
- package/dist/commands/pipelineExecution.js.map +1 -1
- package/dist/commands/taskExecution.d.ts +14 -6
- package/dist/commands/taskExecution.d.ts.map +1 -1
- package/dist/commands/taskExecution.js +27 -19
- package/dist/commands/taskExecution.js.map +1 -1
- package/dist/commands/watchTasks.d.ts.map +1 -1
- package/dist/commands/watchTasks.js +7 -7
- package/dist/commands/watchTasks.js.map +1 -1
- package/dist/commands/workflow.js +3 -3
- package/dist/commands/workflow.js.map +1 -1
- package/dist/commands/workflowExecution.d.ts +3 -3
- package/dist/commands/workflowExecution.d.ts.map +1 -1
- package/dist/commands/workflowExecution.js +10 -8
- package/dist/commands/workflowExecution.js.map +1 -1
- package/dist/config/globalConfig.d.ts +2 -0
- package/dist/config/globalConfig.d.ts.map +1 -1
- package/dist/config/globalConfig.js +20 -2
- package/dist/config/globalConfig.js.map +1 -1
- package/dist/config/loader.d.ts +2 -2
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +2 -2
- package/dist/config/loader.js.map +1 -1
- package/dist/config/projectConfig.d.ts +0 -2
- package/dist/config/projectConfig.d.ts.map +1 -1
- package/dist/config/projectConfig.js.map +1 -1
- package/dist/config/workflowLoader.d.ts +49 -13
- package/dist/config/workflowLoader.d.ts.map +1 -1
- package/dist/config/workflowLoader.js +139 -51
- package/dist/config/workflowLoader.js.map +1 -1
- package/dist/github/pr.d.ts.map +1 -1
- package/dist/github/pr.js +2 -1
- package/dist/github/pr.js.map +1 -1
- package/dist/mock/client.d.ts.map +1 -1
- package/dist/mock/client.js +5 -2
- package/dist/mock/client.js.map +1 -1
- package/dist/mock/scenario.d.ts +57 -0
- package/dist/mock/scenario.d.ts.map +1 -0
- package/dist/mock/scenario.js +123 -0
- package/dist/mock/scenario.js.map +1 -0
- package/dist/models/schemas.d.ts +1 -0
- package/dist/models/schemas.d.ts.map +1 -1
- package/dist/models/schemas.js +2 -0
- package/dist/models/schemas.js.map +1 -1
- package/dist/models/types.d.ts +2 -0
- package/dist/models/types.d.ts.map +1 -1
- package/dist/task/autoCommit.d.ts.map +1 -1
- package/dist/task/autoCommit.js +6 -25
- package/dist/task/autoCommit.js.map +1 -1
- package/dist/task/git.d.ts +9 -0
- package/dist/task/git.d.ts.map +1 -0
- package/dist/task/git.js +26 -0
- package/dist/task/git.js.map +1 -0
- package/dist/utils/ui.d.ts +4 -1
- package/dist/utils/ui.d.ts.map +1 -1
- package/dist/utils/ui.js +30 -2
- package/dist/utils/ui.js.map +1 -1
- package/dist/workflow/engine.d.ts +1 -1
- package/dist/workflow/engine.d.ts.map +1 -1
- package/dist/workflow/engine.js +4 -3
- package/dist/workflow/engine.js.map +1 -1
- package/dist/workflow/instruction-builder.d.ts +5 -62
- package/dist/workflow/instruction-builder.d.ts.map +1 -1
- package/dist/workflow/instruction-builder.js +5 -139
- package/dist/workflow/instruction-builder.js.map +1 -1
- package/dist/workflow/instruction-context.d.ts +79 -0
- package/dist/workflow/instruction-context.d.ts.map +1 -0
- package/dist/workflow/instruction-context.js +72 -0
- package/dist/workflow/instruction-context.js.map +1 -0
- package/dist/workflow/status-rules.d.ts +21 -0
- package/dist/workflow/status-rules.d.ts.map +1 -0
- package/dist/workflow/status-rules.js +81 -0
- package/dist/workflow/status-rules.js.map +1 -0
- package/dist/workflow/types.d.ts +2 -2
- package/dist/workflow/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/resources/global/en/agents/default/ai-antipattern-reviewer.md +58 -14
- package/resources/global/en/agents/default/architecture-reviewer.md +10 -0
- package/resources/global/en/agents/default/coder.md +82 -0
- package/resources/global/en/workflows/default.yaml +35 -24
- package/resources/global/en/workflows/expert-cqrs.yaml +36 -23
- package/resources/global/en/workflows/expert.yaml +37 -27
- package/resources/global/ja/agents/default/ai-antipattern-reviewer.md +57 -13
- package/resources/global/ja/agents/default/architecture-reviewer.md +10 -0
- package/resources/global/ja/agents/default/coder.md +82 -0
- package/resources/global/ja/workflows/default.yaml +35 -24
- package/resources/global/ja/workflows/expert-cqrs.yaml +36 -23
- package/resources/global/ja/workflows/expert.yaml +37 -28
|
@@ -11,145 +11,10 @@
|
|
|
11
11
|
* and also used in Phase 3 (buildStatusJudgmentInstruction) as a dedicated follow-up.
|
|
12
12
|
*/
|
|
13
13
|
import { hasTagBasedRules } from './rule-utils.js';
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
*/
|
|
19
|
-
export function buildExecutionMetadata(context, edit) {
|
|
20
|
-
return {
|
|
21
|
-
workingDirectory: context.cwd,
|
|
22
|
-
language: context.language ?? 'en',
|
|
23
|
-
edit,
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
/** Localized strings for rules-based status prompt */
|
|
27
|
-
const RULES_PROMPT_STRINGS = {
|
|
28
|
-
en: {
|
|
29
|
-
criteriaHeading: '## Decision Criteria',
|
|
30
|
-
headerNum: '#',
|
|
31
|
-
headerCondition: 'Condition',
|
|
32
|
-
headerTag: 'Tag',
|
|
33
|
-
outputHeading: '## Output Format',
|
|
34
|
-
outputInstruction: 'Output the tag corresponding to your decision:',
|
|
35
|
-
appendixHeading: '### Appendix Template',
|
|
36
|
-
appendixInstruction: 'When outputting `[{tag}]`, append the following:',
|
|
37
|
-
},
|
|
38
|
-
ja: {
|
|
39
|
-
criteriaHeading: '## 判定基準',
|
|
40
|
-
headerNum: '#',
|
|
41
|
-
headerCondition: '状況',
|
|
42
|
-
headerTag: 'タグ',
|
|
43
|
-
outputHeading: '## 出力フォーマット',
|
|
44
|
-
outputInstruction: '判定に対応するタグを出力してください:',
|
|
45
|
-
appendixHeading: '### 追加出力テンプレート',
|
|
46
|
-
appendixInstruction: '`[{tag}]` を出力する場合、以下を追記してください:',
|
|
47
|
-
},
|
|
48
|
-
};
|
|
49
|
-
/**
|
|
50
|
-
* Generate status rules prompt from rules configuration.
|
|
51
|
-
* Creates a structured prompt that tells the agent which numbered tags to output.
|
|
52
|
-
*
|
|
53
|
-
* Example output for step "plan" with 3 rules:
|
|
54
|
-
* ## 判定基準
|
|
55
|
-
* | # | 状況 | タグ |
|
|
56
|
-
* |---|------|------|
|
|
57
|
-
* | 1 | 要件が明確で実装可能 | `[PLAN:1]` |
|
|
58
|
-
* | 2 | ユーザーが質問をしている | `[PLAN:2]` |
|
|
59
|
-
* | 3 | 要件が不明確、情報不足 | `[PLAN:3]` |
|
|
60
|
-
*/
|
|
61
|
-
export function generateStatusRulesFromRules(stepName, rules, language) {
|
|
62
|
-
const tag = stepName.toUpperCase();
|
|
63
|
-
const strings = RULES_PROMPT_STRINGS[language];
|
|
64
|
-
const lines = [];
|
|
65
|
-
// Criteria table
|
|
66
|
-
lines.push(strings.criteriaHeading);
|
|
67
|
-
lines.push('');
|
|
68
|
-
lines.push(`| ${strings.headerNum} | ${strings.headerCondition} | ${strings.headerTag} |`);
|
|
69
|
-
lines.push('|---|------|------|');
|
|
70
|
-
for (const [i, rule] of rules.entries()) {
|
|
71
|
-
lines.push(`| ${i + 1} | ${rule.condition} | \`[${tag}:${i + 1}]\` |`);
|
|
72
|
-
}
|
|
73
|
-
lines.push('');
|
|
74
|
-
// Output format
|
|
75
|
-
lines.push(strings.outputHeading);
|
|
76
|
-
lines.push('');
|
|
77
|
-
lines.push(strings.outputInstruction);
|
|
78
|
-
lines.push('');
|
|
79
|
-
for (const [i, rule] of rules.entries()) {
|
|
80
|
-
lines.push(`- \`[${tag}:${i + 1}]\` — ${rule.condition}`);
|
|
81
|
-
}
|
|
82
|
-
// Appendix templates (if any rules have appendix)
|
|
83
|
-
const rulesWithAppendix = rules.filter((r) => r.appendix);
|
|
84
|
-
if (rulesWithAppendix.length > 0) {
|
|
85
|
-
lines.push('');
|
|
86
|
-
lines.push(strings.appendixHeading);
|
|
87
|
-
for (const [i, rule] of rules.entries()) {
|
|
88
|
-
if (!rule.appendix)
|
|
89
|
-
continue;
|
|
90
|
-
const tagStr = `[${tag}:${i + 1}]`;
|
|
91
|
-
lines.push('');
|
|
92
|
-
lines.push(strings.appendixInstruction.replace('{tag}', tagStr));
|
|
93
|
-
lines.push('```');
|
|
94
|
-
lines.push(rule.appendix.trimEnd());
|
|
95
|
-
lines.push('```');
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
return lines.join('\n');
|
|
99
|
-
}
|
|
100
|
-
/** Localized strings for execution metadata rendering */
|
|
101
|
-
const METADATA_STRINGS = {
|
|
102
|
-
en: {
|
|
103
|
-
heading: '## Execution Context',
|
|
104
|
-
workingDirectory: 'Working Directory',
|
|
105
|
-
rulesHeading: '## Execution Rules',
|
|
106
|
-
noCommit: '**Do NOT run git commit.** Commits are handled automatically by the system after workflow completion.',
|
|
107
|
-
noCd: '**Do NOT use `cd` in Bash commands.** Your working directory is already set correctly. Run commands directly without changing directories.',
|
|
108
|
-
editEnabled: '**Editing is ENABLED for this step.** You may create, modify, and delete files as needed to fulfill the user\'s request.',
|
|
109
|
-
editDisabled: '**Editing is DISABLED for this step.** Do NOT create, modify, or delete any project source files. You may only read/search code and write to report files in the Report Directory.',
|
|
110
|
-
note: 'Note: This section is metadata. Follow the language used in the rest of the prompt.',
|
|
111
|
-
},
|
|
112
|
-
ja: {
|
|
113
|
-
heading: '## 実行コンテキスト',
|
|
114
|
-
workingDirectory: '作業ディレクトリ',
|
|
115
|
-
rulesHeading: '## 実行ルール',
|
|
116
|
-
noCommit: '**git commit を実行しないでください。** コミットはワークフロー完了後にシステムが自動で行います。',
|
|
117
|
-
noCd: '**Bashコマンドで `cd` を使用しないでください。** 作業ディレクトリは既に正しく設定されています。ディレクトリを変更せずにコマンドを実行してください。',
|
|
118
|
-
editEnabled: '**このステップでは編集が許可されています。** ユーザーの要求に応じて、ファイルの作成・変更・削除を行ってください。',
|
|
119
|
-
editDisabled: '**このステップでは編集が禁止されています。** プロジェクトのソースファイルを作成・変更・削除しないでください。コードの読み取り・検索と、Report Directoryへのレポート出力のみ行えます。',
|
|
120
|
-
note: '',
|
|
121
|
-
},
|
|
122
|
-
};
|
|
123
|
-
/**
|
|
124
|
-
* Render execution metadata as a markdown string.
|
|
125
|
-
*
|
|
126
|
-
* Pure function: ExecutionMetadata → string.
|
|
127
|
-
* Always includes heading + Working Directory + Execution Rules.
|
|
128
|
-
* Language determines the output language; 'en' includes a note about language consistency.
|
|
129
|
-
*/
|
|
130
|
-
export function renderExecutionMetadata(metadata) {
|
|
131
|
-
const strings = METADATA_STRINGS[metadata.language];
|
|
132
|
-
const lines = [
|
|
133
|
-
strings.heading,
|
|
134
|
-
`- ${strings.workingDirectory}: ${metadata.workingDirectory}`,
|
|
135
|
-
'',
|
|
136
|
-
strings.rulesHeading,
|
|
137
|
-
`- ${strings.noCommit}`,
|
|
138
|
-
`- ${strings.noCd}`,
|
|
139
|
-
];
|
|
140
|
-
if (metadata.edit === true) {
|
|
141
|
-
lines.push(`- ${strings.editEnabled}`);
|
|
142
|
-
}
|
|
143
|
-
else if (metadata.edit === false) {
|
|
144
|
-
lines.push(`- ${strings.editDisabled}`);
|
|
145
|
-
}
|
|
146
|
-
if (strings.note) {
|
|
147
|
-
lines.push('');
|
|
148
|
-
lines.push(strings.note);
|
|
149
|
-
}
|
|
150
|
-
lines.push('');
|
|
151
|
-
return lines.join('\n');
|
|
152
|
-
}
|
|
14
|
+
import { buildExecutionMetadata, renderExecutionMetadata, METADATA_STRINGS } from './instruction-context.js';
|
|
15
|
+
import { generateStatusRulesFromRules } from './status-rules.js';
|
|
16
|
+
export { buildExecutionMetadata, renderExecutionMetadata } from './instruction-context.js';
|
|
17
|
+
export { generateStatusRulesFromRules } from './status-rules.js';
|
|
153
18
|
/**
|
|
154
19
|
* Escape special characters in dynamic content to prevent template injection.
|
|
155
20
|
*/
|
|
@@ -429,6 +294,7 @@ export function buildReportInstruction(step, context) {
|
|
|
429
294
|
maxIterations: 0,
|
|
430
295
|
stepIteration: context.stepIteration,
|
|
431
296
|
cwd: context.cwd,
|
|
297
|
+
projectCwd: context.cwd,
|
|
432
298
|
userInputs: [],
|
|
433
299
|
reportDir: context.reportDir,
|
|
434
300
|
language,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instruction-builder.js","sourceRoot":"","sources":["../../src/workflow/instruction-builder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"instruction-builder.js","sourceRoot":"","sources":["../../src/workflow/instruction-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Instruction context types and execution metadata rendering
|
|
3
|
+
*
|
|
4
|
+
* Defines the context structures used by instruction builders,
|
|
5
|
+
* and renders execution metadata (working directory, rules) as markdown.
|
|
6
|
+
*/
|
|
7
|
+
import type { AgentResponse, Language } from '../models/types.js';
|
|
8
|
+
/**
|
|
9
|
+
* Context for building instruction from template.
|
|
10
|
+
*/
|
|
11
|
+
export interface InstructionContext {
|
|
12
|
+
/** The main task/prompt */
|
|
13
|
+
task: string;
|
|
14
|
+
/** Current iteration number (workflow-wide turn count) */
|
|
15
|
+
iteration: number;
|
|
16
|
+
/** Maximum iterations allowed */
|
|
17
|
+
maxIterations: number;
|
|
18
|
+
/** Current step's iteration number (how many times this step has been executed) */
|
|
19
|
+
stepIteration: number;
|
|
20
|
+
/** Working directory (agent work dir, may be a clone) */
|
|
21
|
+
cwd: string;
|
|
22
|
+
/** Project root directory (where .takt/ lives). */
|
|
23
|
+
projectCwd: string;
|
|
24
|
+
/** User inputs accumulated during workflow */
|
|
25
|
+
userInputs: string[];
|
|
26
|
+
/** Previous step output if available */
|
|
27
|
+
previousOutput?: AgentResponse;
|
|
28
|
+
/** Report directory path */
|
|
29
|
+
reportDir?: string;
|
|
30
|
+
/** Language for metadata rendering. Defaults to 'en'. */
|
|
31
|
+
language?: Language;
|
|
32
|
+
}
|
|
33
|
+
/** Execution environment metadata prepended to agent instructions */
|
|
34
|
+
export interface ExecutionMetadata {
|
|
35
|
+
/** The agent's working directory (may be a clone) */
|
|
36
|
+
readonly workingDirectory: string;
|
|
37
|
+
/** Language for metadata rendering */
|
|
38
|
+
readonly language: Language;
|
|
39
|
+
/** Whether file editing is allowed for this step (undefined = no prompt) */
|
|
40
|
+
readonly edit?: boolean;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Build execution metadata from instruction context and step config.
|
|
44
|
+
*
|
|
45
|
+
* Pure function: (InstructionContext, edit?) → ExecutionMetadata.
|
|
46
|
+
*/
|
|
47
|
+
export declare function buildExecutionMetadata(context: InstructionContext, edit?: boolean): ExecutionMetadata;
|
|
48
|
+
/** Localized strings for execution metadata rendering */
|
|
49
|
+
export declare const METADATA_STRINGS: {
|
|
50
|
+
readonly en: {
|
|
51
|
+
readonly heading: "## Execution Context";
|
|
52
|
+
readonly workingDirectory: "Working Directory";
|
|
53
|
+
readonly rulesHeading: "## Execution Rules";
|
|
54
|
+
readonly noCommit: "**Do NOT run git commit.** Commits are handled automatically by the system after workflow completion.";
|
|
55
|
+
readonly noCd: "**Do NOT use `cd` in Bash commands.** Your working directory is already set correctly. Run commands directly without changing directories.";
|
|
56
|
+
readonly editEnabled: "**Editing is ENABLED for this step.** You may create, modify, and delete files as needed to fulfill the user's request.";
|
|
57
|
+
readonly editDisabled: "**Editing is DISABLED for this step.** Do NOT create, modify, or delete any project source files. You may only read/search code and write to report files in the Report Directory.";
|
|
58
|
+
readonly note: "Note: This section is metadata. Follow the language used in the rest of the prompt.";
|
|
59
|
+
};
|
|
60
|
+
readonly ja: {
|
|
61
|
+
readonly heading: "## 実行コンテキスト";
|
|
62
|
+
readonly workingDirectory: "作業ディレクトリ";
|
|
63
|
+
readonly rulesHeading: "## 実行ルール";
|
|
64
|
+
readonly noCommit: "**git commit を実行しないでください。** コミットはワークフロー完了後にシステムが自動で行います。";
|
|
65
|
+
readonly noCd: "**Bashコマンドで `cd` を使用しないでください。** 作業ディレクトリは既に正しく設定されています。ディレクトリを変更せずにコマンドを実行してください。";
|
|
66
|
+
readonly editEnabled: "**このステップでは編集が許可されています。** ユーザーの要求に応じて、ファイルの作成・変更・削除を行ってください。";
|
|
67
|
+
readonly editDisabled: "**このステップでは編集が禁止されています。** プロジェクトのソースファイルを作成・変更・削除しないでください。コードの読み取り・検索と、Report Directoryへのレポート出力のみ行えます。";
|
|
68
|
+
readonly note: "";
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
/**
|
|
72
|
+
* Render execution metadata as a markdown string.
|
|
73
|
+
*
|
|
74
|
+
* Pure function: ExecutionMetadata → string.
|
|
75
|
+
* Always includes heading + Working Directory + Execution Rules.
|
|
76
|
+
* Language determines the output language; 'en' includes a note about language consistency.
|
|
77
|
+
*/
|
|
78
|
+
export declare function renderExecutionMetadata(metadata: ExecutionMetadata): string;
|
|
79
|
+
//# sourceMappingURL=instruction-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instruction-context.d.ts","sourceRoot":"","sources":["../../src/workflow/instruction-context.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,0DAA0D;IAC1D,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,mFAAmF;IACnF,aAAa,EAAE,MAAM,CAAC;IACtB,yDAAyD;IACzD,GAAG,EAAE,MAAM,CAAC;IACZ,mDAAmD;IACnD,UAAU,EAAE,MAAM,CAAC;IACnB,8CAA8C;IAC9C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,wCAAwC;IACxC,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,qEAAqE;AACrE,MAAM,WAAW,iBAAiB;IAChC,qDAAqD;IACrD,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,sCAAsC;IACtC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,kBAAkB,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,iBAAiB,CAMrG;AAED,yDAAyD;AACzD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;CAqBnB,CAAC;AAEX;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAqB3E"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Instruction context types and execution metadata rendering
|
|
3
|
+
*
|
|
4
|
+
* Defines the context structures used by instruction builders,
|
|
5
|
+
* and renders execution metadata (working directory, rules) as markdown.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Build execution metadata from instruction context and step config.
|
|
9
|
+
*
|
|
10
|
+
* Pure function: (InstructionContext, edit?) → ExecutionMetadata.
|
|
11
|
+
*/
|
|
12
|
+
export function buildExecutionMetadata(context, edit) {
|
|
13
|
+
return {
|
|
14
|
+
workingDirectory: context.cwd,
|
|
15
|
+
language: context.language ?? 'en',
|
|
16
|
+
edit,
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
/** Localized strings for execution metadata rendering */
|
|
20
|
+
export const METADATA_STRINGS = {
|
|
21
|
+
en: {
|
|
22
|
+
heading: '## Execution Context',
|
|
23
|
+
workingDirectory: 'Working Directory',
|
|
24
|
+
rulesHeading: '## Execution Rules',
|
|
25
|
+
noCommit: '**Do NOT run git commit.** Commits are handled automatically by the system after workflow completion.',
|
|
26
|
+
noCd: '**Do NOT use `cd` in Bash commands.** Your working directory is already set correctly. Run commands directly without changing directories.',
|
|
27
|
+
editEnabled: '**Editing is ENABLED for this step.** You may create, modify, and delete files as needed to fulfill the user\'s request.',
|
|
28
|
+
editDisabled: '**Editing is DISABLED for this step.** Do NOT create, modify, or delete any project source files. You may only read/search code and write to report files in the Report Directory.',
|
|
29
|
+
note: 'Note: This section is metadata. Follow the language used in the rest of the prompt.',
|
|
30
|
+
},
|
|
31
|
+
ja: {
|
|
32
|
+
heading: '## 実行コンテキスト',
|
|
33
|
+
workingDirectory: '作業ディレクトリ',
|
|
34
|
+
rulesHeading: '## 実行ルール',
|
|
35
|
+
noCommit: '**git commit を実行しないでください。** コミットはワークフロー完了後にシステムが自動で行います。',
|
|
36
|
+
noCd: '**Bashコマンドで `cd` を使用しないでください。** 作業ディレクトリは既に正しく設定されています。ディレクトリを変更せずにコマンドを実行してください。',
|
|
37
|
+
editEnabled: '**このステップでは編集が許可されています。** ユーザーの要求に応じて、ファイルの作成・変更・削除を行ってください。',
|
|
38
|
+
editDisabled: '**このステップでは編集が禁止されています。** プロジェクトのソースファイルを作成・変更・削除しないでください。コードの読み取り・検索と、Report Directoryへのレポート出力のみ行えます。',
|
|
39
|
+
note: '',
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* Render execution metadata as a markdown string.
|
|
44
|
+
*
|
|
45
|
+
* Pure function: ExecutionMetadata → string.
|
|
46
|
+
* Always includes heading + Working Directory + Execution Rules.
|
|
47
|
+
* Language determines the output language; 'en' includes a note about language consistency.
|
|
48
|
+
*/
|
|
49
|
+
export function renderExecutionMetadata(metadata) {
|
|
50
|
+
const strings = METADATA_STRINGS[metadata.language];
|
|
51
|
+
const lines = [
|
|
52
|
+
strings.heading,
|
|
53
|
+
`- ${strings.workingDirectory}: ${metadata.workingDirectory}`,
|
|
54
|
+
'',
|
|
55
|
+
strings.rulesHeading,
|
|
56
|
+
`- ${strings.noCommit}`,
|
|
57
|
+
`- ${strings.noCd}`,
|
|
58
|
+
];
|
|
59
|
+
if (metadata.edit === true) {
|
|
60
|
+
lines.push(`- ${strings.editEnabled}`);
|
|
61
|
+
}
|
|
62
|
+
else if (metadata.edit === false) {
|
|
63
|
+
lines.push(`- ${strings.editDisabled}`);
|
|
64
|
+
}
|
|
65
|
+
if (strings.note) {
|
|
66
|
+
lines.push('');
|
|
67
|
+
lines.push(strings.note);
|
|
68
|
+
}
|
|
69
|
+
lines.push('');
|
|
70
|
+
return lines.join('\n');
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=instruction-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instruction-context.js","sourceRoot":"","sources":["../../src/workflow/instruction-context.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAwCH;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAA2B,EAAE,IAAc;IAChF,OAAO;QACL,gBAAgB,EAAE,OAAO,CAAC,GAAG;QAC7B,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI;QAClC,IAAI;KACL,CAAC;AACJ,CAAC;AAED,yDAAyD;AACzD,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,EAAE,EAAE;QACF,OAAO,EAAE,sBAAsB;QAC/B,gBAAgB,EAAE,mBAAmB;QACrC,YAAY,EAAE,oBAAoB;QAClC,QAAQ,EAAE,uGAAuG;QACjH,IAAI,EAAE,4IAA4I;QAClJ,WAAW,EAAE,0HAA0H;QACvI,YAAY,EAAE,oLAAoL;QAClM,IAAI,EAAE,qFAAqF;KAC5F;IACD,EAAE,EAAE;QACF,OAAO,EAAE,aAAa;QACtB,gBAAgB,EAAE,UAAU;QAC5B,YAAY,EAAE,UAAU;QACxB,QAAQ,EAAE,0DAA0D;QACpE,IAAI,EAAE,mFAAmF;QACzF,WAAW,EAAE,6DAA6D;QAC1E,YAAY,EAAE,uGAAuG;QACrH,IAAI,EAAE,EAAE;KACT;CACO,CAAC;AAEX;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,QAA2B;IACjE,MAAM,OAAO,GAAG,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG;QACZ,OAAO,CAAC,OAAO;QACf,KAAK,OAAO,CAAC,gBAAgB,KAAK,QAAQ,CAAC,gBAAgB,EAAE;QAC7D,EAAE;QACF,OAAO,CAAC,YAAY;QACpB,KAAK,OAAO,CAAC,QAAQ,EAAE;QACvB,KAAK,OAAO,CAAC,IAAI,EAAE;KACpB,CAAC;IACF,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACzC,CAAC;SAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Status rules prompt generation for workflow steps
|
|
3
|
+
*
|
|
4
|
+
* Generates structured prompts that tell agents which numbered tags to output
|
|
5
|
+
* based on the step's rule configuration.
|
|
6
|
+
*/
|
|
7
|
+
import type { WorkflowRule, Language } from '../models/types.js';
|
|
8
|
+
/**
|
|
9
|
+
* Generate status rules prompt from rules configuration.
|
|
10
|
+
* Creates a structured prompt that tells the agent which numbered tags to output.
|
|
11
|
+
*
|
|
12
|
+
* Example output for step "plan" with 3 rules:
|
|
13
|
+
* ## 判定基準
|
|
14
|
+
* | # | 状況 | タグ |
|
|
15
|
+
* |---|------|------|
|
|
16
|
+
* | 1 | 要件が明確で実装可能 | `[PLAN:1]` |
|
|
17
|
+
* | 2 | ユーザーが質問をしている | `[PLAN:2]` |
|
|
18
|
+
* | 3 | 要件が不明確、情報不足 | `[PLAN:3]` |
|
|
19
|
+
*/
|
|
20
|
+
export declare function generateStatusRulesFromRules(stepName: string, rules: WorkflowRule[], language: Language): string;
|
|
21
|
+
//# sourceMappingURL=status-rules.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-rules.d.ts","sourceRoot":"","sources":["../../src/workflow/status-rules.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AA0BjE;;;;;;;;;;;GAWG;AACH,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,YAAY,EAAE,EACrB,QAAQ,EAAE,QAAQ,GACjB,MAAM,CA0CR"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Status rules prompt generation for workflow steps
|
|
3
|
+
*
|
|
4
|
+
* Generates structured prompts that tell agents which numbered tags to output
|
|
5
|
+
* based on the step's rule configuration.
|
|
6
|
+
*/
|
|
7
|
+
/** Localized strings for rules-based status prompt */
|
|
8
|
+
const RULES_PROMPT_STRINGS = {
|
|
9
|
+
en: {
|
|
10
|
+
criteriaHeading: '## Decision Criteria',
|
|
11
|
+
headerNum: '#',
|
|
12
|
+
headerCondition: 'Condition',
|
|
13
|
+
headerTag: 'Tag',
|
|
14
|
+
outputHeading: '## Output Format',
|
|
15
|
+
outputInstruction: 'Output the tag corresponding to your decision:',
|
|
16
|
+
appendixHeading: '### Appendix Template',
|
|
17
|
+
appendixInstruction: 'When outputting `[{tag}]`, append the following:',
|
|
18
|
+
},
|
|
19
|
+
ja: {
|
|
20
|
+
criteriaHeading: '## 判定基準',
|
|
21
|
+
headerNum: '#',
|
|
22
|
+
headerCondition: '状況',
|
|
23
|
+
headerTag: 'タグ',
|
|
24
|
+
outputHeading: '## 出力フォーマット',
|
|
25
|
+
outputInstruction: '判定に対応するタグを出力してください:',
|
|
26
|
+
appendixHeading: '### 追加出力テンプレート',
|
|
27
|
+
appendixInstruction: '`[{tag}]` を出力する場合、以下を追記してください:',
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Generate status rules prompt from rules configuration.
|
|
32
|
+
* Creates a structured prompt that tells the agent which numbered tags to output.
|
|
33
|
+
*
|
|
34
|
+
* Example output for step "plan" with 3 rules:
|
|
35
|
+
* ## 判定基準
|
|
36
|
+
* | # | 状況 | タグ |
|
|
37
|
+
* |---|------|------|
|
|
38
|
+
* | 1 | 要件が明確で実装可能 | `[PLAN:1]` |
|
|
39
|
+
* | 2 | ユーザーが質問をしている | `[PLAN:2]` |
|
|
40
|
+
* | 3 | 要件が不明確、情報不足 | `[PLAN:3]` |
|
|
41
|
+
*/
|
|
42
|
+
export function generateStatusRulesFromRules(stepName, rules, language) {
|
|
43
|
+
const tag = stepName.toUpperCase();
|
|
44
|
+
const strings = RULES_PROMPT_STRINGS[language];
|
|
45
|
+
const lines = [];
|
|
46
|
+
// Criteria table
|
|
47
|
+
lines.push(strings.criteriaHeading);
|
|
48
|
+
lines.push('');
|
|
49
|
+
lines.push(`| ${strings.headerNum} | ${strings.headerCondition} | ${strings.headerTag} |`);
|
|
50
|
+
lines.push('|---|------|------|');
|
|
51
|
+
for (const [i, rule] of rules.entries()) {
|
|
52
|
+
lines.push(`| ${i + 1} | ${rule.condition} | \`[${tag}:${i + 1}]\` |`);
|
|
53
|
+
}
|
|
54
|
+
lines.push('');
|
|
55
|
+
// Output format
|
|
56
|
+
lines.push(strings.outputHeading);
|
|
57
|
+
lines.push('');
|
|
58
|
+
lines.push(strings.outputInstruction);
|
|
59
|
+
lines.push('');
|
|
60
|
+
for (const [i, rule] of rules.entries()) {
|
|
61
|
+
lines.push(`- \`[${tag}:${i + 1}]\` — ${rule.condition}`);
|
|
62
|
+
}
|
|
63
|
+
// Appendix templates (if any rules have appendix)
|
|
64
|
+
const rulesWithAppendix = rules.filter((r) => r.appendix);
|
|
65
|
+
if (rulesWithAppendix.length > 0) {
|
|
66
|
+
lines.push('');
|
|
67
|
+
lines.push(strings.appendixHeading);
|
|
68
|
+
for (const [i, rule] of rules.entries()) {
|
|
69
|
+
if (!rule.appendix)
|
|
70
|
+
continue;
|
|
71
|
+
const tagStr = `[${tag}:${i + 1}]`;
|
|
72
|
+
lines.push('');
|
|
73
|
+
lines.push(strings.appendixInstruction.replace('{tag}', tagStr));
|
|
74
|
+
lines.push('```');
|
|
75
|
+
lines.push(rule.appendix.trimEnd());
|
|
76
|
+
lines.push('```');
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return lines.join('\n');
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=status-rules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-rules.js","sourceRoot":"","sources":["../../src/workflow/status-rules.ts"],"names":[],"mappings":"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"}
|
package/dist/workflow/types.d.ts
CHANGED
|
@@ -65,8 +65,8 @@ export interface WorkflowEngineOptions {
|
|
|
65
65
|
onIterationLimit?: IterationLimitCallback;
|
|
66
66
|
/** Bypass all permission checks (sacrifice-my-pc mode) */
|
|
67
67
|
bypassPermissions?: boolean;
|
|
68
|
-
/** Project root directory (where .takt/ lives).
|
|
69
|
-
projectCwd
|
|
68
|
+
/** Project root directory (where .takt/ lives). */
|
|
69
|
+
projectCwd: string;
|
|
70
70
|
/** Language for instruction metadata. Defaults to 'en'. */
|
|
71
71
|
language?: Language;
|
|
72
72
|
provider?: ProviderType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/workflow/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/workflow/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -105,26 +105,70 @@ AI is confidently wrong—code that looks plausible but doesn't work, solutions
|
|
|
105
105
|
|
|
106
106
|
**Principle:** The best code is the minimum code that solves the problem.
|
|
107
107
|
|
|
108
|
-
### 6. Fallback Prohibition Review (REJECT criteria)
|
|
109
|
-
|
|
110
|
-
**AI overuses fallbacks to hide uncertainty. This is a REJECT by default.**
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
|
115
|
-
|
|
116
|
-
|
|
|
117
|
-
|
|
|
108
|
+
### 6. Fallback & Default Argument Prohibition Review (REJECT criteria)
|
|
109
|
+
|
|
110
|
+
**AI overuses fallbacks and default arguments to hide uncertainty. Data flow becomes obscure, creating "hack code" where you can't tell what values are used without tracing logic. This is a REJECT by default.**
|
|
111
|
+
|
|
112
|
+
**Core problem:** You can't understand what values are being used without tracing the entire logic path.
|
|
113
|
+
|
|
114
|
+
| Pattern | Example | Problem | Verdict |
|
|
115
|
+
|---------|---------|---------|---------|
|
|
116
|
+
| Fallback for required data | `user?.id ?? 'unknown'` | Processing continues in an error state | **REJECT** |
|
|
117
|
+
| Default argument abuse | `function f(x = 'default')` where all callers omit | Data flow obscured | **REJECT** |
|
|
118
|
+
| Nullish coalescing with no upstream path | `options?.cwd ?? process.cwd()` with no way to pass | Always uses fallback (meaningless) | **REJECT** |
|
|
119
|
+
| try-catch returning empty | `catch { return ''; }` | Swallows errors | **REJECT** |
|
|
120
|
+
| Multi-level fallback | `a ?? b ?? c ?? d` | Complex value determination logic | **REJECT** |
|
|
121
|
+
| Silent skip via conditionals | `if (!x) return;` skipping error | Hides bugs | **REJECT** |
|
|
122
|
+
|
|
123
|
+
**Default argument examples:**
|
|
124
|
+
|
|
125
|
+
```typescript
|
|
126
|
+
// ❌ Bad example - All callers omit
|
|
127
|
+
function loadWorkflow(name: string, cwd = process.cwd()) { ... }
|
|
128
|
+
// All callers: loadWorkflow('default') ← not passing cwd
|
|
129
|
+
// Problem: Can't tell where cwd value comes from by reading call sites
|
|
130
|
+
// Fix: Make cwd required, pass explicitly at call sites
|
|
131
|
+
|
|
132
|
+
// ✅ Good example - Only some callers omit
|
|
133
|
+
function query(sql: string, timeout = 30000) { ... }
|
|
134
|
+
// Caller A: query(sql) ← Uses default
|
|
135
|
+
// Caller B: query(sql, 60000) ← Explicit
|
|
136
|
+
// Reason: timeout is explicitly optional configuration
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
**Nullish coalescing examples:**
|
|
140
|
+
|
|
141
|
+
```typescript
|
|
142
|
+
// ❌ Bad example - No upstream path to pass value
|
|
143
|
+
class Engine {
|
|
144
|
+
constructor(config, cwd, task, options?) {
|
|
145
|
+
this.projectCwd = options?.projectCwd ?? cwd
|
|
146
|
+
// Problem: If options is passed as { }, projectCwd is always undefined
|
|
147
|
+
// Result: always uses cwd (fallback is meaningless)
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
// Fix: Modify upstream function signatures to allow passing options.projectCwd
|
|
151
|
+
|
|
152
|
+
// ✅ Good example - Upstream path exists
|
|
153
|
+
function execute(task, options?: { projectCwd?: string }) {
|
|
154
|
+
const cwd = options?.projectCwd ?? process.cwd()
|
|
155
|
+
// Reason: Caller chooses whether to pass options.projectCwd
|
|
156
|
+
}
|
|
157
|
+
```
|
|
118
158
|
|
|
119
159
|
**Exceptions (do NOT reject):**
|
|
120
160
|
- Default values when validating external input (user input, API responses)
|
|
121
161
|
- Fallbacks with an explicit comment explaining the reason
|
|
122
|
-
- Defaults for optional values in configuration files
|
|
162
|
+
- Defaults for optional values in configuration files (explicitly designed as optional)
|
|
163
|
+
- Only some callers use default argument (REJECT if all callers omit)
|
|
123
164
|
|
|
124
165
|
**Verification approach:**
|
|
125
|
-
1. Grep the diff for `??`, `||`, `catch`
|
|
126
|
-
2.
|
|
127
|
-
|
|
166
|
+
1. Grep the diff for `??`, `||`, `= defaultValue`, `catch`
|
|
167
|
+
2. For each fallback/default argument:
|
|
168
|
+
- Is it required data? → REJECT
|
|
169
|
+
- Do all callers omit it? → REJECT
|
|
170
|
+
- Is there an upstream path to pass value? → If not, REJECT
|
|
171
|
+
3. REJECT if even one unjustified fallback/default argument exists
|
|
128
172
|
|
|
129
173
|
### 7. Unused Code Detection
|
|
130
174
|
|
|
@@ -8,6 +8,16 @@ Code is read far more often than it is written. Poorly structured code destroys
|
|
|
8
8
|
|
|
9
9
|
"If the structure is right, the code naturally follows"—that is the conviction of design review.
|
|
10
10
|
|
|
11
|
+
## Reviewer Stance
|
|
12
|
+
|
|
13
|
+
**Never defer even minor issues. If a problem can be fixed now, require it to be fixed now.**
|
|
14
|
+
|
|
15
|
+
- No compromises for "minor issues". Accumulation of small problems becomes technical debt
|
|
16
|
+
- "Address in next task" never happens. If fixable now, fix now
|
|
17
|
+
- No "conditional approval". If there are issues, reject
|
|
18
|
+
- If you find in-scope fixable issues, flag them without exception
|
|
19
|
+
- Existing issues (unrelated to current change) are non-blocking, but issues introduced or fixable in this change must be flagged
|
|
20
|
+
|
|
11
21
|
## Areas of Expertise
|
|
12
22
|
|
|
13
23
|
### Structure & Design
|