Implemented comprehensive DOS 6.22 update system for ~30 test stations with critical fix for test data database import routing. ## Major Changes ### DOS Batch Files (7 files) - NWTOC.BAT: Download updates from network to DOS machines - CTONW.BAT v1.2: Upload with separate ProdSW/LOGS routing (CRITICAL FIX) - UPDATE.BAT: Full system backup to network - STAGE.BAT: System file staging for safe updates - REBOOT.BAT: Apply staged updates on reboot - CHECKUPD.BAT: Check for available updates - DEPLOY.BAT: One-time deployment installer for DOS machines ### CTONW v1.2 Critical Fix Fixed test data routing to match AD2 sync script expectations: - Software distribution: C:\ATE\*.EXE -> T:\TS-4R\ProdSW\ (bidirectional) - Test data logging: C:\ATE\8BDATA\*.DAT -> T:\TS-4R\LOGS\8BLOG\ (upload only) - Subdirectory mapping: 8BDATA->8BLOG, DSCDATA->DSCLOG, HVDATA->HVLOG, etc. - Test data now correctly imported to AD2 database via Sync-FromNAS.ps1 ### Deployment Infrastructure - copy-to-ad2.ps1: Automated deployment to AD2 server - DOS_DEPLOYMENT_GUIDE.md: Complete deployment documentation - DEPLOYMENT_GUIDE.md: Technical workflow documentation - credentials.md: Centralized credentials (AD2, NAS, Gitea) ### Analysis & Documentation (15 files) - CTONW_ANALYSIS.md: Comprehensive compliance analysis - CTONW_V1.2_CHANGELOG.md: Detailed v1.2 changes - NWTOC_ANALYSIS.md: Download workflow analysis - DOS_BATCH_ANALYSIS.md: DOS 6.22 compatibility guide - UPDATE_WORKFLOW.md: Backup system workflow - BEHAVIORAL_RULES_INTEGRATION_SUMMARY.md: C: drive integration ### Session Logs - session-logs/2026-01-19-session.md: Complete session documentation ### Conversation Reorganization - Cleaned up 156 imported conversation files - Organized into sessions-by-date structure - Created metadata index and large files guide ## Technical Details ### AD2 → NAS → DOS Sync Flow 1. Admin copies files to AD2: \192.168.0.6\C$\Shares\test\ 2. Sync-FromNAS.ps1 runs every 15 minutes (AD2 → NAS) 3. DOS machines access via T: drive (\D2TESTNAS\test) 4. NWTOC downloads updates, CTONW uploads test data 5. Sync imports test data to AD2 database ### DOS 6.22 Compatibility - No %COMPUTERNAME%, uses %MACHINE% variable - No IF /I, uses multiple case-specific checks - Proper ERRORLEVEL checking (highest values first) - XCOPY /S for subdirectory support - ASCII markers ([OK], [ERROR], [WARNING]) instead of emojis ### File Locations - AD2: C:\Shares\test\COMMON\ProdSW\ (deployed) - NAS: T:\COMMON\ProdSW\ (synced) - DOS: C:\BAT\ (installed) - Logs: T:\TS-4R\LOGS\8BLOG\ (test data for database import) ## Deployment Status ✅ All 7 batch files deployed to AD2 (both COMMON and _COMMON) ⏳ Pending sync to NAS (within 15 minutes) ⏳ Pending pilot deployment on TS-4R 📋 Ready for rollout to ~30 DOS machines ## Breaking Changes CTONW v1.1 → v1.2: Test data now uploads to LOGS folder instead of ProdSW. Existing machines must download v1.2 via NWTOC for proper database import. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
298 lines
10 KiB
Markdown
298 lines
10 KiB
Markdown
# Behavioral Rules Integration Summary
|
|
|
|
**Date:** 2026-01-19
|
|
**Task:** Integrate C: drive Claude behavioral rules into D:\ClaudeTools
|
|
**Status:** COMPLETE
|
|
|
|
---
|
|
|
|
## What Was Done
|
|
|
|
### 1. Created .claude/commands/ Directory Structure
|
|
- **Location:** `D:\ClaudeTools\.claude\commands\`
|
|
- **Purpose:** House custom Claude commands for consistent behavior
|
|
|
|
### 2. Integrated Command Files
|
|
|
|
#### /save Command (.claude/commands/save.md)
|
|
**Source:** C:\Users\MikeSwanson\Claude\.claude\commands\save.md
|
|
**Purpose:** Save comprehensive session logs for context recovery
|
|
**Features:**
|
|
- Mandatory content sections (session summary, credentials, infrastructure, commands, config changes, pending tasks)
|
|
- Filename format: `session-logs/YYYY-MM-DD-session.md`
|
|
- Append mode if file exists (don't overwrite)
|
|
- ALL credentials stored UNREDACTED for future context recovery
|
|
- Git commit and push after saving
|
|
- ClaudeTools-specific additions: Database details, API endpoints, migration files
|
|
|
|
#### /context Command (.claude/commands/context.md)
|
|
**Source:** C:\Users\MikeSwanson\Claude\.claude\commands\context.md
|
|
**Purpose:** Search previous work to avoid asking user for known information
|
|
**Features:**
|
|
- Searches session-logs/ directory for keywords
|
|
- Reads credentials.md for infrastructure access details
|
|
- Never asks user for information already in logs
|
|
- Common searches: credentials, servers, services, database, previous work
|
|
- ClaudeTools-specific additions: SESSION_STATE.md, .claude/claude.md references
|
|
|
|
#### /sync Command (.claude/commands/sync.md)
|
|
**Source:** Already existed in D:\ClaudeTools (kept comprehensive version)
|
|
**Purpose:** Sync ClaudeTools configuration from Gitea repository
|
|
**Features:**
|
|
- Comprehensive Gitea integration with Gitea Agent
|
|
- Auto-stash conflict handling
|
|
- Safety features (no data loss, rollback possible)
|
|
- Syncs .claude/ directory, documentation, README
|
|
- Does NOT sync machine-specific settings (.claude/settings.local.json)
|
|
|
|
### 3. Created Centralized Credentials File
|
|
|
|
#### credentials.md
|
|
**Location:** `D:\ClaudeTools\credentials.md`
|
|
**Purpose:** Centralized, UNREDACTED credentials for context recovery
|
|
**Sections:**
|
|
- **Infrastructure - SSH Access**
|
|
- GuruRMM Server (172.16.3.30) - ClaudeTools database/API host
|
|
- Jupiter (172.16.3.20) - Unraid primary, Gitea server
|
|
- AD2 (192.168.0.6) - Dataforth production server
|
|
- D2TESTNAS (192.168.0.9) - Dataforth SMB1 proxy for DOS machines
|
|
- Dataforth DOS Machines (TS-XX) - ~30 MS-DOS 6.22 QC machines
|
|
- **Services - Web Applications**
|
|
- Gitea (SSH, API, web interface)
|
|
- ClaudeTools API (endpoints, authentication, test user)
|
|
- **Projects - ClaudeTools**
|
|
- Database connection details
|
|
- API authentication methods
|
|
- Encryption key information
|
|
- **Projects - Dataforth DOS**
|
|
- Update workflow (AD2 → NAS → DOS)
|
|
- Key batch files (UPDATE.BAT, NWTOC.BAT, etc.)
|
|
- Folder structure (\\AD2\test\)
|
|
- **Connection Testing**
|
|
- Test commands for each service
|
|
- Verification scripts
|
|
|
|
**Security Note:** File is intentionally UNREDACTED for context recovery, must never be committed to public repositories
|
|
|
|
### 4. Updated .claude/claude.md
|
|
|
|
**Added Sections:**
|
|
- **Context Recovery & Session Logs** (new major section)
|
|
- Session logs format and purpose
|
|
- Credentials file structure
|
|
- Context recovery workflow
|
|
- Example usage
|
|
- **Important Files** (updated)
|
|
- Added credentials.md reference
|
|
- Added session-logs/ reference
|
|
- **Available Commands** (updated)
|
|
- Added /save command
|
|
- Added /context command
|
|
- /sync already existed
|
|
|
|
**Updated Last Modified:**
|
|
- Changed from: "2026-01-18 (Context system removed, coordinator role enforced)"
|
|
- Changed to: "2026-01-19 (Integrated C: drive behavioral rules, added context recovery system)"
|
|
|
|
### 5. Configured Gitea Sync for Portability
|
|
|
|
**Git Remote Configuration:**
|
|
- **Origin:** ssh://git@172.16.3.20:2222/azcomputerguru/claudetools.git
|
|
- **Gitea alias:** ssh://git@172.16.3.20:2222/azcomputerguru/claudetools.git
|
|
|
|
**Changed from HTTPS to SSH:**
|
|
- Previous: https://git.azcomputerguru.com/azcomputerguru/claudetools.git
|
|
- Updated: ssh://git@172.16.3.20:2222/azcomputerguru/claudetools.git
|
|
- Reason: SSH provides passwordless authentication with keys (more secure, more portable)
|
|
|
|
---
|
|
|
|
## What Still Needs Configuration
|
|
|
|
### SSH Key Setup for Gitea
|
|
**Status:** SSH authentication test failed (publickey error)
|
|
**Required:** Set up SSH key for passwordless git operations
|
|
|
|
**Steps to Complete:**
|
|
1. **Generate SSH key** (if not exists):
|
|
```bash
|
|
ssh-keygen -t ed25519 -C "mike@azcomputerguru.com" -f ~/.ssh/id_ed25519_gitea
|
|
```
|
|
|
|
2. **Add public key to Gitea:**
|
|
- Login to https://git.azcomputerguru.com/
|
|
- Go to Settings → SSH/GPG Keys
|
|
- Add new SSH key
|
|
- Paste contents of `~/.ssh/id_ed25519_gitea.pub`
|
|
|
|
3. **Configure SSH client** (~/.ssh/config):
|
|
```
|
|
Host git.azcomputerguru.com 172.16.3.20
|
|
HostName 172.16.3.20
|
|
Port 2222
|
|
User git
|
|
IdentityFile ~/.ssh/id_ed25519_gitea
|
|
IdentitiesOnly yes
|
|
```
|
|
|
|
4. **Test connection:**
|
|
```bash
|
|
ssh -p 2222 git@172.16.3.20
|
|
# Should return: "Hi there! You've successfully authenticated..."
|
|
```
|
|
|
|
5. **Test git operation:**
|
|
```bash
|
|
cd D:\ClaudeTools
|
|
git fetch gitea
|
|
```
|
|
|
|
---
|
|
|
|
## Files Created/Modified
|
|
|
|
### Created Files:
|
|
1. `D:\ClaudeTools\.claude\commands\save.md` (2.3 KB)
|
|
2. `D:\ClaudeTools\.claude\commands\context.md` (1.5 KB)
|
|
3. `D:\ClaudeTools\credentials.md` (9.8 KB)
|
|
4. `D:\ClaudeTools\session-logs\` (directory created)
|
|
5. `D:\ClaudeTools\BEHAVIORAL_RULES_INTEGRATION_SUMMARY.md` (this file)
|
|
|
|
### Modified Files:
|
|
1. `D:\ClaudeTools\.claude\claude.md`
|
|
- Added "Context Recovery & Session Logs" section
|
|
- Updated "Important Files" section
|
|
- Updated "Available Commands" section
|
|
- Updated "Last Updated" timestamp
|
|
|
|
### Git Configuration Modified:
|
|
1. Remote "origin" URL changed from HTTPS to SSH
|
|
2. Remote "gitea" alias added
|
|
|
|
---
|
|
|
|
## Benefits Achieved
|
|
|
|
### 1. Context Recovery System
|
|
- **Problem:** Context lost when conversation summarized or new session starts
|
|
- **Solution:** Comprehensive session logs + centralized credentials file
|
|
- **Result:** Future Claude sessions can recover ALL context without user input
|
|
|
|
### 2. Consistent Behavioral Rules
|
|
- **Problem:** ClaudeTools missing behavioral patterns from C: drive projects
|
|
- **Solution:** Integrated /save and /context commands
|
|
- **Result:** Consistent behavior across all Claude projects
|
|
|
|
### 3. Portability via Gitea Sync
|
|
- **Problem:** Work trapped on single machine, hard to switch machines
|
|
- **Solution:** Git sync with SSH authentication
|
|
- **Result:** Can work on ClaudeTools from any machine with git sync
|
|
|
|
### 4. Never Ask for Known Information
|
|
- **Problem:** User had to repeatedly provide same credentials/details
|
|
- **Solution:** /context command searches logs before asking
|
|
- **Result:** Faster workflow, less user frustration
|
|
|
|
### 5. Complete Infrastructure Documentation
|
|
- **Problem:** Credentials scattered across sessions, hard to find
|
|
- **Solution:** credentials.md with ALL infrastructure details
|
|
- **Result:** Single source of truth for all access credentials
|
|
|
|
---
|
|
|
|
## Usage Examples
|
|
|
|
### Example 1: Start New Session
|
|
```
|
|
User: "Continue work on Dataforth DOS updates"
|
|
|
|
Claude: (Uses /context command internally)
|
|
Claude: Searches session-logs/ and credentials.md
|
|
Claude: Finds: AD2 (192.168.0.6), D2TESTNAS (192.168.0.9), DOS update workflow
|
|
Claude: "I found the Dataforth DOS infrastructure details. AD2 is at 192.168.0.6
|
|
with sync mechanism (scheduled task), and D2TESTNAS is the SMB1 proxy at
|
|
192.168.0.9. The update workflow is AD2 → NAS → DOS machines. What would
|
|
you like to work on?"
|
|
```
|
|
|
|
### Example 2: End of Session
|
|
```
|
|
User: "Save the session log"
|
|
|
|
Claude: (Uses /save command)
|
|
Claude: Creates/appends to session-logs/2026-01-19-session.md
|
|
Claude: Includes:
|
|
- What was accomplished (DOS batch files created)
|
|
- ALL credentials used (AD2, NAS passwords)
|
|
- Infrastructure details (192.168.0.6, 192.168.0.9)
|
|
- Commands run (XCOPY, ssh, etc.)
|
|
- Files created (UPDATE.BAT, NWTOC.BAT, etc.)
|
|
- Next steps (Need to find AD2 sync mechanism)
|
|
Claude: Commits to git: "Session log: Dataforth DOS update system integration"
|
|
Claude: Pushes to gitea (if SSH configured)
|
|
```
|
|
|
|
### Example 3: Sync Across Machines
|
|
```
|
|
User: (on different machine) "/sync"
|
|
|
|
Claude: (Uses Gitea Agent)
|
|
Claude: git fetch gitea main
|
|
Claude: git pull gitea main (auto-stash if needed)
|
|
Claude: Reports: "Synced 3 files: .claude/claude.md, credentials.md, session-logs/2026-01-19-session.md"
|
|
Claude: "Ready to continue work from where you left off on other machine"
|
|
```
|
|
|
|
---
|
|
|
|
## Integration Status
|
|
|
|
| Component | Status | Notes |
|
|
|-----------|--------|-------|
|
|
| /save command | COMPLETE | Integrated from C: drive, enhanced for ClaudeTools |
|
|
| /context command | COMPLETE | Integrated from C: drive, enhanced for ClaudeTools |
|
|
| /sync command | COMPLETE | Already existed, kept comprehensive version |
|
|
| credentials.md | COMPLETE | Created with all infrastructure details |
|
|
| session-logs/ | COMPLETE | Directory created, ready for use |
|
|
| .claude/claude.md | COMPLETE | Updated with new sections and commands |
|
|
| Git SSH config | NEEDS SETUP | SSH key not configured yet |
|
|
| Gitea remote | COMPLETE | Configured, awaiting SSH key |
|
|
|
|
---
|
|
|
|
## Next Steps
|
|
|
|
1. **User Action Required:** Set up SSH key for Gitea (see "What Still Needs Configuration")
|
|
2. **Test /save command:** Create first session log
|
|
3. **Test /context command:** Search for Dataforth information
|
|
4. **Test /sync command:** Sync to/from Gitea (after SSH setup)
|
|
5. **Optional:** Create .gitignore entries if credentials.md should remain local-only
|
|
|
|
---
|
|
|
|
## Best Practices Going Forward
|
|
|
|
### When Starting New Session:
|
|
1. Use `/context` to search for previous work
|
|
2. Read credentials.md for infrastructure access
|
|
3. Check SESSION_STATE.md for project status
|
|
|
|
### During Work:
|
|
1. Document all credentials discovered
|
|
2. Note all infrastructure changes
|
|
3. Record important commands and outputs
|
|
|
|
### Before Ending Session:
|
|
1. Use `/save` to create comprehensive session log
|
|
2. Commit and push if significant work done
|
|
3. Use `/sync` to ensure gitea has latest changes
|
|
|
|
### When Switching Machines:
|
|
1. Use `/sync` to pull latest changes
|
|
2. Verify credentials.md is up to date
|
|
3. Check session-logs/ for recent context
|
|
|
|
---
|
|
|
|
**This integration brings ClaudeTools to feature parity with C: drive Claude projects while maintaining ClaudeTools' superior structure and organization.**
|