Add Opencode IDE installer (#820)

- Added docs/ide-info/opencode.md
- Added tool/cli/installers/lib/ide/opencode.js
- Modified tools/installers/lib/ide/core/detector.js to include
detection for opencode command dir
- Modified tools/cli/platform-codes.yaml to include opencode config
- Modified tools/cli/installers/lib/ide/workflow-command-template.md to
include frontmatter with description as opencode requires this for
commands and adding it to the template by default does not seem to
impact other IDEs
- Modified src/modules/bmm/workflows/workflow-status/workflow.yaml
description so that it properly escapes quotes when interpolated in the
teplate
This commit is contained in:
Cameron Pitt
2025-10-26 09:16:57 -07:00
committed by GitHub
parent b7e6bfcde5
commit 8220c819e6
7 changed files with 174 additions and 4 deletions

View File

@@ -211,10 +211,11 @@ class Detector {
// Check inside various IDE command folders for legacy bmad folders
// List of IDE config folders that might have commands directories
const ideConfigFolders = ['.claude', '.crush', '.continue', '.cursor', '.windsurf', '.cline', '.roo-cline'];
const ideConfigFolders = ['.opencode', '.claude', '.crush', '.continue', '.cursor', '.windsurf', '.cline', '.roo-cline'];
for (const ideFolder of ideConfigFolders) {
const commandsPath = path.join(projectDir, ideFolder, 'commands');
const commandsDirName = ideFolder === '.opencode' ? 'command' : 'commands';
const commandsPath = path.join(projectDir, ideFolder, commandsDirName);
if (await fs.pathExists(commandsPath)) {
try {
const commandEntries = await fs.readdir(commandsPath, { withFileTypes: true });