aidevops 3.0.8 → 3.0.10

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/VERSION CHANGED
@@ -1 +1 @@
1
- 3.0.8
1
+ 3.0.10
package/aidevops.sh CHANGED
@@ -3,7 +3,7 @@
3
3
  # AI DevOps Framework CLI
4
4
  # Usage: aidevops <command> [options]
5
5
  #
6
- # Version: 3.0.8
6
+ # Version: 3.0.10
7
7
 
8
8
  set -euo pipefail
9
9
 
@@ -1935,6 +1935,8 @@ SOPSEOF
1935
1935
 
1936
1936
  # Add runtime artifact ignores
1937
1937
  if ! grep -q "^\.agents/loop-state/" "$gitignore" 2>/dev/null; then
1938
+ # Ensure trailing newline before appending (prevents malformed entries like *.zip.agents/loop-state/)
1939
+ [[ -s "$gitignore" && $(tail -c1 "$gitignore" | wc -l) -eq 0 ]] && printf '\n' >>"$gitignore"
1938
1940
  {
1939
1941
  echo ""
1940
1942
  echo "# aidevops runtime artifacts"
@@ -1955,6 +1957,8 @@ SOPSEOF
1955
1957
  git -C "$project_root" rm --cached .aidevops.json &>/dev/null || true
1956
1958
  print_info "Untracked .aidevops.json from git (was committed by older version)"
1957
1959
  fi
1960
+ # Ensure trailing newline before appending
1961
+ [[ -s "$gitignore" && $(tail -c1 "$gitignore" | wc -l) -eq 0 ]] && printf '\n' >>"$gitignore"
1958
1962
  echo ".aidevops.json" >>"$gitignore"
1959
1963
  gitignore_updated=true
1960
1964
  fi
@@ -1962,6 +1966,8 @@ SOPSEOF
1962
1966
  # Add .beads if beads is enabled
1963
1967
  if [[ "$enable_beads" == "true" ]]; then
1964
1968
  if ! grep -q "^\.beads$" "$gitignore" 2>/dev/null; then
1969
+ # Ensure trailing newline before appending
1970
+ [[ -s "$gitignore" && $(tail -c1 "$gitignore" | wc -l) -eq 0 ]] && printf '\n' >>"$gitignore"
1965
1971
  echo ".beads" >>"$gitignore"
1966
1972
  print_success "Added .beads to .gitignore"
1967
1973
  gitignore_updated=true
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aidevops",
3
- "version": "3.0.8",
3
+ "version": "3.0.10",
4
4
  "description": "AI DevOps Framework - AI-assisted development workflows, code quality, and deployment automation",
5
5
  "type": "module",
6
6
  "bin": {
@@ -297,6 +297,8 @@ migrate_agent_to_agents_folder() {
297
297
 
298
298
  # Add runtime artifact ignores if not present
299
299
  if ! grep -q "^\.agents/loop-state/" "$gitignore" 2>/dev/null; then
300
+ # Ensure trailing newline before appending (prevents malformed entries like *.zip.agents/loop-state/)
301
+ [[ -s "$gitignore" && $(tail -c1 "$gitignore" | wc -l) -eq 0 ]] && printf '\n' >>"$gitignore"
300
302
  {
301
303
  echo ""
302
304
  echo "# aidevops runtime artifacts"
@@ -887,6 +889,8 @@ migrate_loop_state_directories() {
887
889
  local gitignore="$repo_dir/.gitignore"
888
890
  if [[ -f "$gitignore" ]]; then
889
891
  if ! grep -q "^\.agents/loop-state/" "$gitignore" 2>/dev/null; then
892
+ # Ensure trailing newline before appending (prevents malformed entries)
893
+ [[ -s "$gitignore" && $(tail -c1 "$gitignore" | wc -l) -eq 0 ]] && printf '\n' >>"$gitignore"
890
894
  echo ".agents/loop-state/" >>"$gitignore"
891
895
  print_info " Added .agents/loop-state/ to .gitignore"
892
896
  fi
@@ -1273,6 +1273,60 @@ setup_opencode_cli() {
1273
1273
  return 0
1274
1274
  }
1275
1275
 
1276
+ setup_google_workspace_cli() {
1277
+ print_info "Setting up Google Workspace CLI (gws)..."
1278
+
1279
+ # Check if gws is already installed
1280
+ if command -v gws >/dev/null 2>&1; then
1281
+ local gws_version
1282
+ gws_version=$(gws --version 2>/dev/null | head -1 || echo "unknown")
1283
+ print_success "Google Workspace CLI already installed: $gws_version"
1284
+ return 0
1285
+ fi
1286
+
1287
+ # Need either bun or npm to install
1288
+ local installer=""
1289
+ local install_pkg="@googleworkspace/cli@latest"
1290
+
1291
+ if command -v bun >/dev/null 2>&1; then
1292
+ installer="bun"
1293
+ elif command -v npm >/dev/null 2>&1; then
1294
+ installer="npm"
1295
+ else
1296
+ print_warning "Neither bun nor npm found - cannot install gws"
1297
+ print_info "Install Node.js first, then re-run setup"
1298
+ return 0
1299
+ fi
1300
+
1301
+ print_info "Google Workspace CLI provides Gmail, Calendar, Drive, and all Workspace APIs"
1302
+ echo " Used by Email, Business, and Accounts agents for Google Workspace integration."
1303
+ echo ""
1304
+
1305
+ local install_gws="Y"
1306
+ if [[ "$NON_INTERACTIVE" != "true" ]]; then
1307
+ read -r -p "Install Google Workspace CLI via $installer? [Y/n]: " install_gws || install_gws="Y"
1308
+ fi
1309
+ if [[ "$install_gws" =~ ^[Yy]?$ ]]; then
1310
+ if run_with_spinner "Installing Google Workspace CLI" npm_global_install "$install_pkg"; then
1311
+ print_success "Google Workspace CLI installed"
1312
+
1313
+ echo ""
1314
+ print_info "Authentication required before use."
1315
+ print_info "Run 'gws auth setup' to authenticate with your Google account."
1316
+ print_info "For headless use: set GOOGLE_WORKSPACE_CLI_CREDENTIALS_FILE"
1317
+ echo ""
1318
+ else
1319
+ print_warning "Google Workspace CLI installation failed"
1320
+ print_info "Try manually: sudo npm install -g $install_pkg"
1321
+ fi
1322
+ else
1323
+ print_info "Skipped Google Workspace CLI installation"
1324
+ print_info "Install later: $installer install -g $install_pkg"
1325
+ fi
1326
+
1327
+ return 0
1328
+ }
1329
+
1276
1330
  setup_orbstack_vm() {
1277
1331
  # Only available on macOS
1278
1332
  if [[ "$(uname)" != "Darwin" ]]; then
package/setup.sh CHANGED
@@ -10,7 +10,7 @@ shopt -s inherit_errexit 2>/dev/null || true
10
10
  # AI Assistant Server Access Framework Setup Script
11
11
  # Helps developers set up the framework for their infrastructure
12
12
  #
13
- # Version: 3.0.8
13
+ # Version: 3.0.10
14
14
  #
15
15
  # Quick Install:
16
16
  # npm install -g aidevops && aidevops update (recommended)
@@ -822,6 +822,7 @@ main() {
822
822
  confirm_step "Setup QuickFile MCP (UK accounting)" && setup_quickfile_mcp
823
823
  confirm_step "Setup browser automation tools" && setup_browser_tools
824
824
  confirm_step "Setup AI orchestration frameworks info" && setup_ai_orchestration
825
+ confirm_step "Setup Google Workspace CLI (Gmail, Calendar, Drive)" && setup_google_workspace_cli
825
826
  confirm_step "Setup OpenCode CLI (AI coding tool)" && setup_opencode_cli
826
827
  confirm_step "Setup OpenCode plugins" && setup_opencode_plugins
827
828
  # Run AFTER OpenCode CLI install so opencode.json may exist for agent config