fix: skip internal tasks in manifest generation and IDE command discovery

This commit is contained in:
Davor Racić 2026-02-02 09:08:45 +01:00
parent ba00d43216
commit 12d4e1ff6e
4 changed files with 20 additions and 2 deletions

View File

@ -1,4 +1,4 @@
<task id="_bmad/core/tasks/workflow.xml" name="Execute Workflow" standalone="false">
<task id="_bmad/core/tasks/workflow.xml" name="Execute Workflow" standalone="false" internal="true">
<objective>Execute given workflow by loading its configuration, following instructions, and producing output</objective>
<llm critical="true">

View File

@ -385,6 +385,11 @@ class ManifestGenerator {
const filePath = path.join(dirPath, file);
const content = await fs.readFile(filePath, 'utf8');
// Skip internal/engine files (not user-facing tasks)
if (content.includes('internal="true"')) {
continue;
}
let name = file.replace(/\.(xml|md)$/, '');
let displayName = name;
let description = '';

View File

@ -446,6 +446,11 @@ class BaseIdeSetup {
try {
const content = await fs.readFile(fullPath, 'utf8');
// Skip internal/engine files (not user-facing tasks/tools)
if (content.includes('internal="true"')) {
continue;
}
// Check for standalone="true" in XML files
if (entry.name.endsWith('.xml')) {
// Look for standalone="true" in the opening tag (task or tool)

View File

@ -146,10 +146,18 @@ async function getTasksFromDir(dirPath, moduleName) {
continue;
}
const filePath = path.join(dirPath, file);
const content = await fs.readFile(filePath, 'utf8');
// Skip internal/engine files (not user-facing tasks)
if (content.includes('internal="true"')) {
continue;
}
// Remove extension to get task name
const ext = file.endsWith('.xml') ? '.xml' : '.md';
tasks.push({
path: path.join(dirPath, file),
path: filePath,
name: file.replace(ext, ''),
module: moduleName,
});