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>
This commit is contained in:
70
push-fixed-bat-files.ps1
Normal file
70
push-fixed-bat-files.ps1
Normal file
@@ -0,0 +1,70 @@
|
||||
# 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
|
||||
}
|
||||
Reference in New Issue
Block a user