@bugzy-ai/bugzy 1.2.1 → 1.4.0

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/index.cjs CHANGED
@@ -60,6 +60,7 @@ var MCP_SERVERS = {
60
60
  name: "Slack",
61
61
  description: "Slack MCP server for messaging and channel operations",
62
62
  requiresCredentials: true,
63
+ npmPackages: ["simple-slack-mcp-server"],
63
64
  config: {
64
65
  command: "slack-mcp-server",
65
66
  args: [],
@@ -73,6 +74,7 @@ var MCP_SERVERS = {
73
74
  name: "Microsoft Teams",
74
75
  description: "Microsoft Teams MCP server for messaging and channel operations",
75
76
  requiresCredentials: true,
77
+ npmPackages: ["@bugzy-ai/teams-mcp-server"],
76
78
  config: {
77
79
  command: "teams-mcp-server",
78
80
  args: [],
@@ -86,6 +88,7 @@ var MCP_SERVERS = {
86
88
  name: "Playwright",
87
89
  description: "Playwright MCP server for browser automation",
88
90
  requiresCredentials: false,
91
+ npmPackages: ["@playwright/mcp"],
89
92
  config: {
90
93
  command: "mcp-server-playwright",
91
94
  args: [
@@ -110,6 +113,7 @@ var MCP_SERVERS = {
110
113
  name: "Notion",
111
114
  description: "Notion MCP server for documentation",
112
115
  requiresCredentials: true,
116
+ npmPackages: ["@notionhq/notion-mcp-server"],
113
117
  config: {
114
118
  command: "notion-mcp-server",
115
119
  args: [],
@@ -123,6 +127,7 @@ var MCP_SERVERS = {
123
127
  name: "Jira Server (On-Prem)",
124
128
  description: "Jira Server MCP via tunnel for on-premise instances",
125
129
  requiresCredentials: true,
130
+ npmPackages: ["@mcp-tunnel/wrapper", "@bugzy-ai/jira-mcp-server"],
126
131
  config: {
127
132
  command: "mcp-tunnel",
128
133
  args: ["--server", "jira-mcp-server"],
@@ -708,7 +713,9 @@ Document all findings including:
708
713
  \`\`\`
709
714
 
710
715
  #### 3.2 Launch Test Runner Agent
711
- Invoke the test-runner agent with special exploration instructions:
716
+ {{INVOKE_TEST_RUNNER}}
717
+
718
+ Execute the exploration test case with special exploration instructions:
712
719
 
713
720
  \`\`\`
714
721
  Execute the exploration test case at ./test-cases/EXPLORATION-TEMP.md with focus on discovery and documentation.
@@ -1161,10 +1168,10 @@ Before invoking the agent, identify the test cases for the current area:
1161
1168
 
1162
1169
  #### Step 2.2: Invoke test-code-generator Agent
1163
1170
 
1164
- Use the test-code-generator agent for the current area with the following context:
1171
+ {{INVOKE_TEST_CODE_GENERATOR}} for the current area with the following context:
1165
1172
 
1166
1173
  **Agent Invocation:**
1167
- "Use the test-code-generator agent to automate test cases for the [AREA_NAME] area.
1174
+ "Automate test cases for the [AREA_NAME] area.
1168
1175
 
1169
1176
  **Context:**
1170
1177
  - Area: [AREA_NAME]
@@ -1304,10 +1311,10 @@ Provide a comprehensive summary showing:
1304
1311
  role: "documentation-researcher",
1305
1312
  contentBlock: `#### 1.4 Gather Product Documentation
1306
1313
 
1307
- Use the documentation-researcher agent to gather comprehensive product documentation:
1314
+ {{INVOKE_DOCUMENTATION_RESEARCHER}} to gather comprehensive product documentation:
1308
1315
 
1309
1316
  \`\`\`
1310
- Use the documentation-researcher agent to explore all available product documentation, specifically focusing on:
1317
+ Explore all available product documentation, specifically focusing on:
1311
1318
  - UI elements and workflows
1312
1319
  - User interactions and navigation paths
1313
1320
  - Form fields and validation rules
@@ -1321,10 +1328,9 @@ Use the documentation-researcher agent to explore all available product document
1321
1328
  role: "team-communicator",
1322
1329
  contentBlock: `### Step 4.5: Team Communication
1323
1330
 
1324
- Use the team-communicator agent to notify the product team about the new test cases and automated tests:
1331
+ {{INVOKE_TEAM_COMMUNICATOR}} to notify the product team about the new test cases and automated tests:
1325
1332
 
1326
1333
  \`\`\`
1327
- Use the team-communicator agent to:
1328
1334
  1. Post an update about test case and automation creation
1329
1335
  2. Provide summary of coverage:
1330
1336
  - Number of manual test cases created
@@ -1582,10 +1588,10 @@ Provide a summary of:
1582
1588
  role: "documentation-researcher",
1583
1589
  contentBlock: `### Step 2: Gather comprehensive project documentation
1584
1590
 
1585
- Use the documentation-researcher agent to explore and gather all available project information and other documentation sources. This ensures the test plan is based on complete and current information.
1591
+ {{INVOKE_DOCUMENTATION_RESEARCHER}} to explore and gather all available project information and other documentation sources. This ensures the test plan is based on complete and current information.
1586
1592
 
1587
1593
  \`\`\`
1588
- Use the documentation-researcher agent to explore all available project documentation related to: $ARGUMENTS
1594
+ Explore all available project documentation related to: $ARGUMENTS
1589
1595
 
1590
1596
  Specifically gather:
1591
1597
  - Product specifications and requirements
@@ -1610,10 +1616,9 @@ The agent will:
1610
1616
  role: "team-communicator",
1611
1617
  contentBlock: `### Step 7.5: Team Communication
1612
1618
 
1613
- Use the team-communicator agent to notify the product team about the new test plan:
1619
+ {{INVOKE_TEAM_COMMUNICATOR}} to notify the product team about the new test plan:
1614
1620
 
1615
1621
  \`\`\`
1616
- Use the team-communicator agent to:
1617
1622
  1. Post an update about the test plan creation
1618
1623
  2. Provide a brief summary of coverage areas and key features
1619
1624
  3. Mention any areas that need exploration or clarification
@@ -1848,7 +1853,7 @@ Classify the ambiguity level to determine appropriate response:
1848
1853
  #### Clarification Approach by Severity
1849
1854
 
1850
1855
  **For CRITICAL/HIGH ambiguity:**
1851
- 1. **Use team-communicator to ask specific questions**
1856
+ 1. **{{INVOKE_TEAM_COMMUNICATOR}} to ask specific questions**
1852
1857
  2. **WAIT for response before proceeding**
1853
1858
  3. **Document the clarification request in event history**
1854
1859
 
@@ -2121,7 +2126,7 @@ ${KNOWLEDGE_BASE_UPDATE_INSTRUCTIONS}`,
2121
2126
  contentBlock: `#### 3.3 Use Documentation Researcher if Needed
2122
2127
  For events mentioning unknown features or components:
2123
2128
  \`\`\`
2124
- Use documentation-researcher agent to find information about: [component/feature]
2129
+ {{INVOKE_DOCUMENTATION_RESEARCHER}} to find information about: [component/feature]
2125
2130
  \`\`\``
2126
2131
  },
2127
2132
  {
@@ -2130,7 +2135,7 @@ Use documentation-researcher agent to find information about: [component/feature
2130
2135
 
2131
2136
  When an issue needs to be tracked (task type: report_bug or update_story):
2132
2137
  \`\`\`
2133
- Use issue-tracker agent to:
2138
+ {{INVOKE_ISSUE_TRACKER}}
2134
2139
  1. Check for duplicate issues in the tracking system
2135
2140
  2. For bugs: Create detailed bug report with:
2136
2141
  - Clear, descriptive title
@@ -2399,7 +2404,7 @@ For each failed test:
2399
2404
  For each test classified as **[TEST ISSUE]**, use the test-debugger-fixer agent to automatically fix the test:
2400
2405
 
2401
2406
  \`\`\`
2402
- Use the test-debugger-fixer agent to fix test issues:
2407
+ {{INVOKE_TEST_DEBUGGER_FIXER}}
2403
2408
 
2404
2409
  For each failed test classified as a test issue (not a product bug), provide:
2405
2410
  - Test run timestamp: [from manifest.timestamp]
@@ -2494,7 +2499,7 @@ After triage in Step 5.1, for tests classified as **[PRODUCT BUG]**, use the iss
2494
2499
  For each bug to report, use the issue-tracker agent:
2495
2500
 
2496
2501
  \`\`\`
2497
- Use issue-tracker agent to:
2502
+ {{INVOKE_ISSUE_TRACKER}}
2498
2503
  1. Check for duplicate bugs in the tracking system
2499
2504
  - The agent will automatically search for similar existing issues
2500
2505
  - It maintains memory of recently reported issues
@@ -2565,10 +2570,11 @@ After issue tracker agent completes, create a summary:
2565
2570
  role: "team-communicator",
2566
2571
  contentBlock: `### Step 6: Team Communication
2567
2572
 
2568
- Use the team-communicator agent to notify the product team about test execution:
2573
+ {{INVOKE_TEAM_COMMUNICATOR}}
2574
+
2575
+ Notify the product team about test execution:
2569
2576
 
2570
2577
  \`\`\`
2571
- Use the team-communicator agent to:
2572
2578
  1. Post test execution summary with key statistics
2573
2579
  2. Highlight critical failures that need immediate attention
2574
2580
  3. Share important learnings about product behavior
@@ -2903,7 +2909,7 @@ Read and analyze the JSON report:
2903
2909
  For each test classified as **[TEST ISSUE]**, use the test-debugger-fixer agent to automatically fix the test:
2904
2910
 
2905
2911
  \`\`\`
2906
- Use the test-debugger-fixer agent to fix test issues:
2912
+ {{INVOKE_TEST_DEBUGGER_FIXER}}
2907
2913
 
2908
2914
  For each failed test classified as a test issue (not a product bug), provide:
2909
2915
  - Test file path: [from JSON report]
@@ -2944,7 +2950,7 @@ Classification guidelines:
2944
2950
  #### 4A.4 Fix Test Issues Automatically
2945
2951
 
2946
2952
  For tests classified as [TEST ISSUE]:
2947
- - Use test-debugger-fixer agent to analyze and fix
2953
+ - {{INVOKE_TEST_DEBUGGER_FIXER}} to analyze and fix
2948
2954
  - Agent debugs with browser if needed
2949
2955
  - Applies fix (selector update, wait condition, assertion correction)
2950
2956
  - Reruns test to verify fix (10x for flaky tests)
@@ -2960,7 +2966,7 @@ Track fixed tests with:
2960
2966
  {{ISSUE_TRACKER_INSTRUCTIONS}}
2961
2967
 
2962
2968
  For tests classified as [PRODUCT BUG]:
2963
- - Use issue-tracker agent to create bug reports
2969
+ - {{INVOKE_ISSUE_TRACKER}} to create bug reports
2964
2970
  - Agent checks for duplicates automatically
2965
2971
  - Creates detailed report with:
2966
2972
  - Title, description, reproduction steps
@@ -3276,10 +3282,10 @@ Format as comprehensive markdown report for terminal display:
3276
3282
 
3277
3283
  {{TEAM_COMMUNICATOR_INSTRUCTIONS}}
3278
3284
 
3279
- Use team-communicator agent to post concise results to Slack thread:
3285
+ {{INVOKE_TEAM_COMMUNICATOR}} to post concise results to Slack thread:
3280
3286
 
3281
3287
  \`\`\`
3282
- Use the team-communicator agent to post verification results.
3288
+ Post verification results.
3283
3289
 
3284
3290
  **Channel**: [from CHANGE_CONTEXT.slackChannel]
3285
3291
  **Thread**: [from CHANGE_CONTEXT.slackThread]
@@ -3460,10 +3466,10 @@ A successful verification includes:
3460
3466
  role: "documentation-researcher",
3461
3467
  contentBlock: `#### Research Project Documentation
3462
3468
 
3463
- Use the documentation-researcher agent to gather comprehensive context about the changed features:
3469
+ {{INVOKE_DOCUMENTATION_RESEARCHER}} to gather comprehensive context about the changed features:
3464
3470
 
3465
3471
  \`\`\`
3466
- Use the documentation-researcher agent to explore project documentation related to the changes.
3472
+ Explore project documentation related to the changes.
3467
3473
 
3468
3474
  Specifically gather:
3469
3475
  - Product specifications for affected features
@@ -3495,10 +3501,9 @@ Use this information to:
3495
3501
  role: "issue-tracker",
3496
3502
  contentBlock: `#### Log Product Bugs
3497
3503
 
3498
- For tests classified as **[PRODUCT BUG]**, use the issue-tracker agent to log bugs:
3504
+ For tests classified as **[PRODUCT BUG]**, {{INVOKE_ISSUE_TRACKER}} to log bugs:
3499
3505
 
3500
3506
  \`\`\`
3501
- Use issue-tracker agent to:
3502
3507
  1. Check for duplicate bugs in the tracking system
3503
3508
  - The agent will automatically search for similar existing issues
3504
3509
  - It maintains memory of recently reported issues
@@ -3547,10 +3552,9 @@ Use issue-tracker agent to:
3547
3552
  role: "team-communicator",
3548
3553
  contentBlock: `#### Team Communication
3549
3554
 
3550
- Use the team-communicator agent to share verification results (primarily for Slack trigger, but can be used for other triggers):
3555
+ {{INVOKE_TEAM_COMMUNICATOR}} to share verification results (primarily for Slack trigger, but can be used for other triggers):
3551
3556
 
3552
3557
  \`\`\`
3553
- Use the team-communicator agent to:
3554
3558
  1. Post verification results summary
3555
3559
  2. Highlight critical failures that need immediate attention
3556
3560
  3. Share bugs logged with issue tracker links
@@ -6187,8 +6191,8 @@ var SUBAGENTS = {
6187
6191
  description: "Automatically create and track bugs and issues",
6188
6192
  icon: "bot",
6189
6193
  integrations: [
6190
- INTEGRATIONS.linear,
6191
- INTEGRATIONS.jira,
6194
+ // INTEGRATIONS.linear,
6195
+ // INTEGRATIONS.jira,
6192
6196
  INTEGRATIONS["jira-server"],
6193
6197
  INTEGRATIONS.notion,
6194
6198
  INTEGRATIONS.slack
@@ -6202,7 +6206,10 @@ var SUBAGENTS = {
6202
6206
  name: "Documentation Researcher",
6203
6207
  description: "Search and retrieve information from your documentation",
6204
6208
  icon: "file-search",
6205
- integrations: [INTEGRATIONS.notion, INTEGRATIONS.confluence],
6209
+ integrations: [
6210
+ INTEGRATIONS.notion
6211
+ // INTEGRATIONS.confluence
6212
+ ],
6206
6213
  model: "sonnet",
6207
6214
  color: "cyan",
6208
6215
  version: "1.0.0"
@@ -6285,6 +6292,62 @@ function buildSubagentsConfig(subagents) {
6285
6292
  return configs;
6286
6293
  }
6287
6294
 
6295
+ // src/core/tool-strings.ts
6296
+ var TOOL_STRINGS = {
6297
+ "claude-code": {
6298
+ INVOKE_TEST_RUNNER: "Use the test-runner subagent to execute the tests",
6299
+ INVOKE_TEST_DEBUGGER_FIXER: "Use the test-debugger-fixer subagent to debug and fix the failing test",
6300
+ INVOKE_TEST_CODE_GENERATOR: "Use the test-code-generator subagent to generate automated test code",
6301
+ INVOKE_TEAM_COMMUNICATOR: "Use the team-communicator subagent to notify the team",
6302
+ INVOKE_ISSUE_TRACKER: "Use the issue-tracker subagent to create or update issues",
6303
+ INVOKE_DOCUMENTATION_RESEARCHER: "Use the documentation-researcher subagent to search and gather documentation"
6304
+ },
6305
+ "cursor": {
6306
+ INVOKE_TEST_RUNNER: 'Run the test-runner agent:\n```bash\ncursor-agent -p "$(cat .cursor/agents/test-runner.md)" --output-format text\n```',
6307
+ INVOKE_TEST_DEBUGGER_FIXER: 'Run the test-debugger-fixer agent:\n```bash\ncursor-agent -p "$(cat .cursor/agents/test-debugger-fixer.md)" --output-format text\n```',
6308
+ INVOKE_TEST_CODE_GENERATOR: 'Run the test-code-generator agent:\n```bash\ncursor-agent -p "$(cat .cursor/agents/test-code-generator.md)" --output-format text\n```',
6309
+ INVOKE_TEAM_COMMUNICATOR: 'Run the team-communicator agent:\n```bash\ncursor-agent -p "$(cat .cursor/agents/team-communicator.md)" --output-format text\n```',
6310
+ INVOKE_ISSUE_TRACKER: 'Run the issue-tracker agent:\n```bash\ncursor-agent -p "$(cat .cursor/agents/issue-tracker.md)" --output-format text\n```',
6311
+ INVOKE_DOCUMENTATION_RESEARCHER: 'Run the documentation-researcher agent:\n```bash\ncursor-agent -p "$(cat .cursor/agents/documentation-researcher.md)" --output-format text\n```'
6312
+ },
6313
+ "codex": {
6314
+ INVOKE_TEST_RUNNER: 'Run the test-runner agent:\n```bash\ncodex -p "$(cat .codex/agents/test-runner.md)"\n```',
6315
+ INVOKE_TEST_DEBUGGER_FIXER: 'Run the test-debugger-fixer agent:\n```bash\ncodex -p "$(cat .codex/agents/test-debugger-fixer.md)"\n```',
6316
+ INVOKE_TEST_CODE_GENERATOR: 'Run the test-code-generator agent:\n```bash\ncodex -p "$(cat .codex/agents/test-code-generator.md)"\n```',
6317
+ INVOKE_TEAM_COMMUNICATOR: 'Run the team-communicator agent:\n```bash\ncodex -p "$(cat .codex/agents/team-communicator.md)"\n```',
6318
+ INVOKE_ISSUE_TRACKER: 'Run the issue-tracker agent:\n```bash\ncodex -p "$(cat .codex/agents/issue-tracker.md)"\n```',
6319
+ INVOKE_DOCUMENTATION_RESEARCHER: 'Run the documentation-researcher agent:\n```bash\ncodex -p "$(cat .codex/agents/documentation-researcher.md)"\n```'
6320
+ }
6321
+ };
6322
+ function getToolString(toolId, key) {
6323
+ const toolStrings = TOOL_STRINGS[toolId];
6324
+ if (!toolStrings) {
6325
+ throw new Error(`Unknown tool: ${toolId}`);
6326
+ }
6327
+ const value = toolStrings[key];
6328
+ if (!value) {
6329
+ throw new Error(`Unknown string key: ${key} for tool: ${toolId}`);
6330
+ }
6331
+ return value;
6332
+ }
6333
+ function replaceInvocationPlaceholders(content, toolId) {
6334
+ let result = content;
6335
+ const keys = [
6336
+ "INVOKE_TEST_RUNNER",
6337
+ "INVOKE_TEST_DEBUGGER_FIXER",
6338
+ "INVOKE_TEST_CODE_GENERATOR",
6339
+ "INVOKE_TEAM_COMMUNICATOR",
6340
+ "INVOKE_ISSUE_TRACKER",
6341
+ "INVOKE_DOCUMENTATION_RESEARCHER"
6342
+ ];
6343
+ for (const key of keys) {
6344
+ const placeholder = `{{${key}}}`;
6345
+ const replacement = getToolString(toolId, key);
6346
+ result = result.replace(new RegExp(placeholder, "g"), replacement);
6347
+ }
6348
+ return result;
6349
+ }
6350
+
6288
6351
  // src/core/registry.ts
6289
6352
  async function getAgentConfiguration(taskDefinitions, projectSubAgents) {
6290
6353
  const taskSlugs = taskDefinitions.map((t) => t.slug);
@@ -6296,7 +6359,7 @@ async function getAgentConfiguration(taskDefinitions, projectSubAgents) {
6296
6359
  taskDefinitions.forEach((task) => {
6297
6360
  slashCommands[task.slug] = {
6298
6361
  frontmatter: task.frontmatter,
6299
- content: task.content
6362
+ content: replaceInvocationPlaceholders(task.content, "claude-code")
6300
6363
  };
6301
6364
  });
6302
6365
  const allRoles = /* @__PURE__ */ new Set();