aidevops 2.96.0 → 2.97.1

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/README.md CHANGED
@@ -92,9 +92,9 @@ The result: AI agents that work *with* your development process, not around it.
92
92
  ### Agent Structure
93
93
 
94
94
  - Primary agents (Build+, SEO, Marketing, etc.) with @plan-plus subagent for planning-only mode
95
- - 566+ subagent markdown files organized by domain
96
- - 155 helper scripts in `.agent/scripts/`
97
- - 20 slash commands for common workflows
95
+ - 572+ subagent markdown files organized by domain
96
+ - 157 helper scripts in `.agent/scripts/`
97
+ - 22 slash commands for common workflows
98
98
 
99
99
  <!-- AI-CONTEXT-END -->
100
100
 
@@ -480,7 +480,7 @@ aidevops implements proven agent design patterns identified by [Lance Martin (La
480
480
 
481
481
  | Pattern | Description | aidevops Implementation |
482
482
  |---------|-------------|------------------------|
483
- | **Give Agents a Computer** | Filesystem + shell for persistent context | `~/.aidevops/.agent-workspace/`, 155 helper scripts |
483
+ | **Give Agents a Computer** | Filesystem + shell for persistent context | `~/.aidevops/.agent-workspace/`, 157 helper scripts |
484
484
  | **Multi-Layer Action Space** | Few tools, push actions to computer | Per-agent MCP filtering (~12-20 tools each) |
485
485
  | **Progressive Disclosure** | Load context on-demand | Subagent routing with content summaries, YAML frontmatter, read-on-demand |
486
486
  | **Offload Context** | Write results to filesystem | `.agent-workspace/work/[project]/` for persistence |
@@ -625,6 +625,10 @@ The setup script offers to install these tools automatically.
625
625
  - **[Codacy](https://www.codacy.com/)**: Multi-tool analysis (0 findings)
626
626
  - **[CodeRabbit](https://coderabbit.ai/)**: AI-powered code reviews
627
627
  - **[Snyk](https://snyk.io/)**: Security vulnerability scanning
628
+ - **[Socket](https://socket.dev/)**: Dependency security and supply chain protection
629
+ - **[Sentry](https://sentry.io/)**: Error monitoring and performance tracking
630
+ - **[Secretlint](https://github.com/secretlint/secretlint)**: Detect exposed secrets in code
631
+ - **[OSV Scanner](https://google.github.io/osv-scanner/)**: Google's vulnerability database scanner
628
632
  - **[Qlty](https://qlty.sh/)**: Universal code quality platform (70+ linters, auto-fixes)
629
633
  - **[Gemini Code Assist](https://cloud.google.com/gemini/docs/codeassist/overview)**: Google's AI-powered code completion and review
630
634
 
@@ -1159,7 +1163,7 @@ aidevops is registered as a **Claude Code plugin marketplace**. Install with two
1159
1163
  /plugin install aidevops@aidevops
1160
1164
  ```
1161
1165
 
1162
- This installs the complete framework: 14 primary agents, 566+ subagents, and 155 helper scripts.
1166
+ This installs the complete framework: 14 primary agents, 572+ subagents, and 157 helper scripts.
1163
1167
 
1164
1168
  ### Importing External Skills
1165
1169
 
@@ -1247,7 +1251,7 @@ Ordered as they appear in OpenCode Tab selector and other AI assistants (15 tota
1247
1251
 
1248
1252
  ### **Example Subagents with MCP Integration**
1249
1253
 
1250
- These are examples of subagents that have supporting MCPs enabled. See `.agent/` for the full list of 566+ subagents organized by domain.
1254
+ These are examples of subagents that have supporting MCPs enabled. See `.agent/` for the full list of 572+ subagents organized by domain.
1251
1255
 
1252
1256
  | Agent | Purpose | MCPs Enabled |
1253
1257
  |-------|---------|--------------|
@@ -1263,6 +1267,12 @@ These are examples of subagents that have supporting MCPs enabled. See `.agent/`
1263
1267
  | `@browser-automation` | Testing, scraping, DevTools | chrome-devtools, context7 |
1264
1268
  | `@performance` | Core Web Vitals, network analysis, accessibility | chrome-devtools |
1265
1269
  | `@git-platforms` | GitHub, GitLab, Gitea | gh_grep, context7 |
1270
+ | `@sentry` | Error monitoring, Next.js SDK setup | sentry |
1271
+ | `@socket` | Dependency security scanning | socket |
1272
+ | `@security-analysis` | AI-powered vulnerability detection (OSV, Ferret, git history) | osv-scanner, gemini-cli-security |
1273
+ | `@secretlint` | Detect exposed secrets in code | (Docker-based) |
1274
+ | `@snyk` | Security vulnerability scanning | (API-based) |
1275
+ | `@auditing` | Code auditing services and security analysis | (API-based) |
1266
1276
  | `@agent-review` | Session analysis, agent improvement (under build-agent/) | (read/write only) |
1267
1277
 
1268
1278
  ### **Setup for OpenCode**
package/VERSION CHANGED
@@ -1 +1 @@
1
- 2.96.0
1
+ 2.97.1
package/aidevops.sh CHANGED
@@ -3,7 +3,7 @@
3
3
  # AI DevOps Framework CLI
4
4
  # Usage: aidevops <command> [options]
5
5
  #
6
- # Version: 2.96.0
6
+ # Version: 2.97.1
7
7
 
8
8
  set -euo pipefail
9
9
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aidevops",
3
- "version": "2.96.0",
3
+ "version": "2.97.1",
4
4
  "description": "AI DevOps Framework - AI-assisted development workflows, code quality, and deployment automation",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -41,6 +41,7 @@
41
41
  },
42
42
  "devDependencies": {
43
43
  "@secretlint/secretlint-rule-preset-recommend": "^11.2.5",
44
+ "@secretlint/secretlint-rule-regexp": "^11.2.5",
44
45
  "@types/bun": "latest",
45
46
  "secretlint": "^11.2.5",
46
47
  "typescript": "^5.0.0"
package/setup.sh CHANGED
@@ -3,7 +3,7 @@
3
3
  # AI Assistant Server Access Framework Setup Script
4
4
  # Helps developers set up the framework for their infrastructure
5
5
  #
6
- # Version: 2.96.0
6
+ # Version: 2.97.1
7
7
  #
8
8
  # Quick Install (one-liner):
9
9
  # bash <(curl -fsSL https://aidevops.dev/install)
@@ -301,6 +301,63 @@ cleanup_deprecated_mcps() {
301
301
  return 0
302
302
  }
303
303
 
304
+ # Disable MCPs globally that should only be enabled on-demand via subagents
305
+ # This reduces session startup context by disabling rarely-used MCPs
306
+ # - playwriter: ~3K tokens - enable via @playwriter subagent
307
+ # - augment-context-engine: ~1K tokens - enable via @augment-context-engine subagent
308
+ # - gh_grep: ~600 tokens - replaced by @github-search subagent (uses rg/bash)
309
+ # - google-analytics-mcp: ~800 tokens - enable via @google-analytics subagent
310
+ # - context7: ~800 tokens - enable via @context7 subagent (for library docs lookup)
311
+ disable_ondemand_mcps() {
312
+ local opencode_config="$HOME/.config/opencode/opencode.json"
313
+
314
+ if [[ ! -f "$opencode_config" ]]; then
315
+ return 0
316
+ fi
317
+
318
+ if ! command -v jq &> /dev/null; then
319
+ return 0
320
+ fi
321
+
322
+ # MCPs to disable globally (enabled on-demand via subagents)
323
+ # Note: use exact MCP key names from opencode.json
324
+ local -a ondemand_mcps=(
325
+ "playwriter"
326
+ "augment-context-engine"
327
+ "gh_grep"
328
+ "google-analytics-mcp"
329
+ "context7"
330
+ )
331
+
332
+ local disabled=0
333
+ local tmp_config
334
+ tmp_config=$(mktemp)
335
+
336
+ cp "$opencode_config" "$tmp_config"
337
+
338
+ for mcp in "${ondemand_mcps[@]}"; do
339
+ # Check if MCP exists and is currently enabled (or has no enabled field)
340
+ if jq -e ".mcp[\"$mcp\"]" "$tmp_config" > /dev/null 2>&1; then
341
+ local current_enabled
342
+ current_enabled=$(jq -r ".mcp[\"$mcp\"].enabled // \"true\"" "$tmp_config")
343
+ if [[ "$current_enabled" != "false" ]]; then
344
+ jq ".mcp[\"$mcp\"].enabled = false" "$tmp_config" > "${tmp_config}.new" && mv "${tmp_config}.new" "$tmp_config"
345
+ ((disabled++))
346
+ fi
347
+ fi
348
+ done
349
+
350
+ if [[ $disabled -gt 0 ]]; then
351
+ create_backup_with_rotation "$opencode_config" "opencode"
352
+ mv "$tmp_config" "$opencode_config"
353
+ print_info "Disabled $disabled MCP(s) globally (use subagents to enable on-demand)"
354
+ else
355
+ rm -f "$tmp_config"
356
+ fi
357
+
358
+ return 0
359
+ }
360
+
304
361
  # Migrate old config-backups to new per-type backup structure
305
362
  # This runs once to clean up the legacy backup directory
306
363
  migrate_old_backups() {
@@ -3357,6 +3414,8 @@ main() {
3357
3414
  confirm_step "Setup AI orchestration frameworks info" && setup_ai_orchestration
3358
3415
  confirm_step "Setup OpenCode plugins" && setup_opencode_plugins
3359
3416
  confirm_step "Setup Oh-My-OpenCode" && setup_oh_my_opencode
3417
+ # Run AFTER all MCP setup functions to ensure disabled state persists
3418
+ confirm_step "Disable on-demand MCPs globally (playwriter, augment, gh_grep)" && disable_ondemand_mcps
3360
3419
 
3361
3420
  echo ""
3362
3421
  print_success "🎉 Setup complete!"