workflow-ai 1.0.42 → 1.0.44
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/package.json +7 -1
- package/src/init.mjs +20 -7
- package/src/runner.mjs +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "workflow-ai",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.44",
|
|
4
4
|
"description": "AI Agent Workflow Coordinator — kanban-based pipeline for AI coding agents",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -21,6 +21,12 @@
|
|
|
21
21
|
"configs/",
|
|
22
22
|
"agent-templates/"
|
|
23
23
|
],
|
|
24
|
+
"exports": {
|
|
25
|
+
"./lib/find-root.mjs": "./src/lib/find-root.mjs",
|
|
26
|
+
"./lib/utils.mjs": "./src/lib/utils.mjs",
|
|
27
|
+
"./lib/logger.mjs": "./src/lib/logger.mjs",
|
|
28
|
+
"./lib/js-yaml.mjs": "./src/lib/js-yaml.mjs"
|
|
29
|
+
},
|
|
24
30
|
"engines": {
|
|
25
31
|
"node": ">=18.0.0"
|
|
26
32
|
},
|
package/src/init.mjs
CHANGED
|
@@ -95,13 +95,16 @@ function generateSkillsTable(workflowRoot) {
|
|
|
95
95
|
'move-ticket': 'Перемещение тикета',
|
|
96
96
|
'pick-next-task': 'Выбор следующей задачи',
|
|
97
97
|
'decompose-gaps': 'Декомпозиция пробелов',
|
|
98
|
-
'review-result': 'Ревью результата'
|
|
98
|
+
'review-result': 'Ревью результата',
|
|
99
|
+
'check-relevance': 'Проверка актуальности',
|
|
100
|
+
'coach': 'Коуч скилов',
|
|
101
|
+
'deep-research': 'Глубокий ресерч'
|
|
99
102
|
};
|
|
100
103
|
|
|
101
104
|
let table = '| Задача | Инструкция |\n|--------|------------|\n';
|
|
102
105
|
|
|
103
106
|
const skillDirs = readdirSync(skillsDir, { withFileTypes: true })
|
|
104
|
-
.filter(entry => entry.isDirectory())
|
|
107
|
+
.filter(entry => entry.isDirectory() || entry.isSymbolicLink())
|
|
105
108
|
.map(entry => entry.name);
|
|
106
109
|
|
|
107
110
|
for (const skillDir of skillDirs) {
|
|
@@ -234,7 +237,18 @@ function generateQwenMd(workflowRoot, projectRoot, packageRoot) {
|
|
|
234
237
|
*/
|
|
235
238
|
function updateGitignore(projectRoot) {
|
|
236
239
|
const gitignorePath = join(projectRoot, '.gitignore');
|
|
237
|
-
const linesToAdd = [
|
|
240
|
+
const linesToAdd = [
|
|
241
|
+
'',
|
|
242
|
+
'# Workflow AI specific',
|
|
243
|
+
'.workflow-state/',
|
|
244
|
+
'.cache/',
|
|
245
|
+
'.workflow/',
|
|
246
|
+
'',
|
|
247
|
+
'# AI',
|
|
248
|
+
'QWEN.md',
|
|
249
|
+
'CLAUDE.md',
|
|
250
|
+
'.kilocode/',
|
|
251
|
+
];
|
|
238
252
|
|
|
239
253
|
let currentContent = '';
|
|
240
254
|
if (existsSync(gitignorePath)) {
|
|
@@ -243,10 +257,9 @@ function updateGitignore(projectRoot) {
|
|
|
243
257
|
|
|
244
258
|
const existingLines = currentContent.split('\n').map(line => line.trim());
|
|
245
259
|
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
}
|
|
260
|
+
const newLines = linesToAdd.filter(line => line === '' || !existingLines.includes(line));
|
|
261
|
+
if (newLines.some(line => line !== '')) {
|
|
262
|
+
appendFileSync(gitignorePath, newLines.join('\n') + '\n');
|
|
250
263
|
}
|
|
251
264
|
}
|
|
252
265
|
|
package/src/runner.mjs
CHANGED
|
@@ -622,7 +622,7 @@ class FileGuard {
|
|
|
622
622
|
const entries = fs.readdirSync(dir, { withFileTypes: true });
|
|
623
623
|
for (const entry of entries) {
|
|
624
624
|
const entryPath = path.join(dir, entry.name).replace(/\\/g, '/');
|
|
625
|
-
if (entry.isDirectory()) {
|
|
625
|
+
if (entry.isDirectory() || entry.isSymbolicLink()) {
|
|
626
626
|
files.push(...this._getAllFiles(entryPath));
|
|
627
627
|
} else {
|
|
628
628
|
files.push(entryPath);
|