Files
claudetools/push-fixed-bat-files.ps1
Mike Swanson b87e97d3ba feat: Add directives system and DOS management utilities
Implemented comprehensive directives system for agent coordination:
- Created directives.md (590 lines) - Core operational rules defining
  coordinator vs executor roles, agent delegation patterns, and coding
  standards (NO EMOJIS, ASCII markers only)
- Added DIRECTIVES_ENFORCEMENT.md - Documentation of enforcement
  mechanisms and checklist for validating compliance
- Created refresh-directives command - Allows reloading directives
  after Gitea updates without restarting Claude Code
- Updated checkpoint and save commands to verify directives compliance
- Updated .claude/claude.md to mandate reading directives.md first

Added DOS system management PowerShell utilities:
- check-bat-on-nas.ps1 - Verify BAT files on NAS match source
- check-latest-errors.ps1 - Scan DOS error logs for recent issues
- check-plink-references.ps1 - Find plink.exe usage in scripts
- check-scp-errors.ps1 - Analyze SCP transfer errors
- check-sync-log.ps1 (modified) - Enhanced sync log analysis
- check-sync-status.ps1 - Monitor sync process status
- copy-to-nas-now.ps1 - Manual NAS file deployment
- find-error-logging.ps1 - Locate error logging patterns
- fix-copy-tonas-logging.ps1 - Repair logging in copy scripts
- fix-dos-files.ps1 - Batch DOS file corrections
- fix-line-break.ps1 - Fix line ending issues
- fix-plink-usage.ps1 - Modernize plink.exe to WinRM
- push-fixed-bat-files.ps1 - Deploy corrected BAT files
- run-sync-direct.ps1 - Direct sync execution
- test-error-logging.ps1 - Validate error logging functionality
- trigger-sync-push.ps1 - Initiate sync push operations
- verify-error-logging.ps1 - Confirm error logging working
- scripts/fix-ad2-error-logging.ps1 - Fix AD2 error logging

Added Gitea password management scripts:
- Reset-GiteaPassword.ps1 - Windows PowerShell password reset
- reset-gitea-password.sh - Unix shell password reset

Key architectural decisions:
- Directives system establishes clear separation between Main Claude
  (coordinator) and specialized agents (executors)
- DOS utilities modernize legacy plink.exe usage to WinRM
- Error logging enhancements improve troubleshooting capabilities
- All scripts follow PSScriptAnalyzer standards

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-19 15:52:28 -07:00

71 lines
2.2 KiB
PowerShell

# Copy fixed batch files to AD2, which will sync to NAS
$password = ConvertTo-SecureString "Paper123!@#" -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential("INTRANET\sysadmin", $password)
Write-Host "=== Pushing Fixed BAT Files to AD2 ===" -ForegroundColor Cyan
Write-Host ""
# List of fixed batch files
$batFiles = @(
"DEPLOY.BAT",
"NWTOC.BAT",
"CTONW.BAT",
"UPDATE.BAT",
"STAGE.BAT",
"CHECKUPD.BAT",
"REBOOT.BAT",
"AUTOEXEC.BAT",
"STARTNET.BAT",
"DOSTEST.BAT"
)
$localPath = "D:\ClaudeTools"
$pushedCount = 0
$errorCount = 0
foreach ($batFile in $batFiles) {
$localFile = Join-Path $localPath $batFile
if (Test-Path $localFile) {
Write-Host "[FOUND] $batFile" -ForegroundColor Green
# Copy to AD2
Invoke-Command -ComputerName 192.168.0.6 -Credential $cred -ScriptBlock {
param($fileName, $content)
# Determine destination based on file type
if ($fileName -match "AUTOEXEC|STARTNET|CONFIG") {
# System files go to COMMON\DOS
$destPath = "C:\Shares\test\COMMON\DOS\$fileName"
} else {
# Utility scripts go to COMMON root or appropriate location
$destPath = "C:\Shares\test\$fileName"
}
# Write the file
$content | Out-File -FilePath $destPath -Encoding ASCII -Force
Write-Host " [OK] Copied to: $destPath" -ForegroundColor Green
return $destPath
} -ArgumentList $batFile, (Get-Content $localFile -Raw)
$pushedCount++
} else {
Write-Host "[MISSING] $batFile - not found at $localFile" -ForegroundColor Yellow
$errorCount++
}
}
Write-Host ""
Write-Host "=== Summary ===" -ForegroundColor Cyan
Write-Host "Files pushed: $pushedCount" -ForegroundColor Green
Write-Host "Files missing: $errorCount" -ForegroundColor Yellow
if ($pushedCount -gt 0) {
Write-Host ""
Write-Host "[INFO] Files copied to AD2" -ForegroundColor Cyan
Write-Host "[INFO] Next sync (every 15 min) will push to NAS" -ForegroundColor Cyan
Write-Host "[INFO] Then accessible from DOS machines at T:\COMMON\" -ForegroundColor Cyan
}