@duongkhuong/bpm-workflow
v1.4.5
Published
BPM workflow plugin for AI agents — skills, commands, and prompts for Bridge Project Managers in SPL Group
Downloads
2,905
Maintainers
Readme
BPM Workflow
Agent workflow skills for Bridge Project Managers in SPL Group — Redmine, specs, plans, test cases, and PMO summaries.
Skills
| Slash Command | Claude | OpenCode | Codex CLI | GitHub Copilot | Purpose |
|---|---|---|---|---|---|
| /bpm-redmine | /bpm-redmine | /bpm-redmine | $bpm:redmine | /bpm-redmine | Redmine issue CRUD with audience templates |
| /bpm-spec | /bpm-spec | /bpm-spec | $bpm:spec | /bpm-spec | Customer spec drafting |
| /bpm-plan | /bpm-plan | /bpm-plan | $bpm:plan | /bpm-plan | Feature development plans |
| /bpm-testcase | /bpm-testcase | /bpm-testcase | $bpm:testcase | /bpm-testcase | Test case generation |
| /bpm-pmo | /bpm-pmo | /bpm-pmo | $bpm:pmo | /bpm-pmo | PMO meeting summaries |
Install the Package
# Option A: Install globally (recommended)
npm install -g @duongkhuong/bpm-workflow
bpm-workflow --help
# Option B: Run via npx (no install needed)
npx @duongkhuong/bpm-workflow --help
# Option C: Clone repo
git clone https://github.com/vfa-khuongdv/bpm-workflow.git
cd bpm-workflow
./bpm --helpNote: install copies files (not symlinks). After
npm update -g @duongkhuong/bpm-workflow, re-run setup to refresh your AI platforms' skills.
Secret Scanning
This repo uses Gitleaks to block commits that contain secrets.
# Install the local pre-commit hook
scripts/install-gitleaks-hook.sh
# Scan repository history manually
npm run secrets:scanIf Gitleaks is missing, install it first:
brew install gitleaksSetup (Install to AI Platforms)
| Platform | Local | Global | Notes |
|---|---|---|---|---|
| Claude | .claude/skills/ + .claude/commands/ | ~/.claude/ | — |
| OpenCode | .opencode/skills/ + .opencode/commands/ | ~/.config/opencode/ | — |
| GitHub Copilot | .github/prompts/ | — | local only |
| Codex CLI | .codex/skills/ | ~/.codex/skills/ | invoke via $name or /skills picker |
Install Commands by Platform
| Platform | Local | Global |
|---|---|---|
| Claude | bpm-workflow install -t claude -l local | bpm-workflow install -t claude -l global |
| OpenCode | bpm-workflow install -t opencode -l local | bpm-workflow install -t opencode -l global |
| Codex CLI | bpm-workflow install -t codex -l local | bpm-workflow install -t codex -l global -y |
| All platforms | bpm-workflow install -t all -l local -y | — |
Quick Install
# Install to specific platform (project-local)
bpm-workflow install -t claude -l local # Claude
bpm-workflow install -t opencode -l local # OpenCode
bpm-workflow install -t codex -l local # Codex CLI (interactive)
bpm-workflow install -t codex -l local -y # Codex CLI (silent)
bpm-workflow install -t github # GitHub Copilot (interactive)
# Install to all platforms at once
bpm-workflow install -t all -l local -y
# Install globally
bpm-workflow install -t claude -l global # Claude globally
bpm-workflow install -t opencode -l global # OpenCode globally
bpm-workflow install -t codex -l global -y # Codex globally (silent)
# Check installation status
bpm-workflow status
# List available platforms
bpm-workflow listUninstall
# Remove from all platforms
bpm-workflow uninstall -t all -l local -y
# Remove from specific platforms
bpm-workflow uninstall -t claude,github -y # Remove from Claude + GitHub
bpm-workflow uninstall -t codex # Remove from Codex (interactive)Prerequisite: Redmine MCP Server
For full Redmine workflow (create, update, read issues, log time), install the Redmine MCP server:
npm install -g @duongkhuong/mcp-redmineThen configure it in your AI client's MCP settings.
OpenCode (~/.config/opencode/opencode.json):
{
"mcp": {
"@duongkhuong/mcp-redmine": {
"type": "local",
"command": ["npx", "-y", "@duongkhuong/mcp-redmine"],
"enabled": true,
"environment": {
"REDMINE_URL": "$REDMINE_URL",
"REDMINE_API_KEY": "$REDMINE_API_KEY",
"REDMINE_USERNAME": "$REDMINE_USERNAME",
"REDMINE_PASSWORD": "$REDMINE_PASSWORD"
}
}
}
}Claude Desktop / Claude Code (claude_desktop_config.json or .claude/mcp.json):
{
"mcpServers": {
"@duongkhuong/mcp-redmine": {
"command": "npx",
"args": ["-y", "@duongkhuong/mcp-redmine"],
"env": {
"REDMINE_URL": "$REDMINE_URL",
"REDMINE_API_KEY": "$REDMINE_API_KEY",
"REDMINE_USERNAME": "$REDMINE_USERNAME",
"REDMINE_PASSWORD": "$REDMINE_PASSWORD"
}
}
}
}Codex CLI (~/.codex/config.toml):
[mcp_servers.duongkhuong-mcp-redmine]
command = "npx"
args = ["-y", "@duongkhuong/mcp-redmine"]
[mcp_servers.duongkhuong-mcp-redmine.env]
REDMINE_URL = "$REDMINE_URL"
REDMINE_API_KEY = "$REDMINE_API_KEY"
REDMINE_USERNAME = "$REDMINE_USERNAME"
REDMINE_PASSWORD = "$REDMINE_PASSWORD"If installed globally, replace
"command": "npx"/"args": [...]with"command": "@duongkhuong/mcp-redmine".
Tip: Alternatively, create a
.envfile with the 4 variables in your project root — the MCP server reads it automatically.
Without the MCP server, the Redmine skill will return copy-ready drafts instead of performing live operations.
Supported Platforms
| Platform | Skills | Commands / Prompts | Scope |
|---|---|---|---|
| Claude | .claude/skills/ (local) / ~/.claude/skills/ (global) | .claude/commands/ (local) / ~/.claude/commands/ (global) | local + global |
| OpenCode | .opencode/skills/ (local) / ~/.config/opencode/skills/ (global) | .opencode/commands/ (local) / ~/.config/opencode/commands/ (global) | local + global |
| GitHub Copilot | — | .github/prompts/ | local only |
| Codex CLI | .codex/skills/ (local) / ~/.codex/skills/ (global) | — (invoke via $name in prompt or /skills picker) | local + global |
Structure
plugins/bpm/
├── skills/ # AI agent skill definitions (SKILL.md)
│ ├── redmine/
│ ├── spec/
│ ├── plan/
│ ├── testcase/
│ └── pmo/
├── commands/ # Platform-specific command wrappers
├── prompts/ # GitHub Copilot .prompt.md files
└── templates/ # Redmine audience templates
scripts/bpm-install.sh # Cross-platform install script
bpm-workflow # CLI entry point (via npx or global install)