# GuruRMM Agent (Claude Integration) — Project State

> Last updated: 2026-04-20

**Status:** COMPLETE
**Last Activity:** 2026-03-31

Rust/Tokio integration layer enabling Main Claude to invoke Claude Code CLI on AD2 (Windows Server 2022) via the GuruRMM WebSocket API. Rate-limited (10 tasks/hr), 2 concurrent max, 300s timeout. Implementation is production-ready but integration into the live GuruRMM agent binary was the pending step.

## What Was Done

- `agent/src/claude.rs` — 684-line Rust module: ClaudeExecutor struct, input sanitization, rate limiting, concurrency control, timeout management, unit tests
- `commands_modifications.rs` — step-by-step integration guide for adding `claude_task` command type to GuruRMM agent dispatcher
- `Cargo_dependencies.toml` — dependency spec (tokio 1.35, serde, serde_json, once_cell)
- `TESTING_AND_DEPLOYMENT.md` — 497-line complete deployment and testing guide
- `README.md` — full project documentation

## If Resuming

1. Copy `agent/src/claude.rs` into the live GuruRMM agent project (`azcomputerguru/gururmm`)
2. Follow `commands_modifications.rs` to wire up the `claude_task` command type
3. Update `Cargo.toml` in the agent crate with required dependencies
4. Build with `cargo build --release`, run `cargo test` and `cargo clippy`
5. Deploy to AD2 per `TESTING_AND_DEPLOYMENT.md` (stop service, backup binary, deploy, restart, smoke test)
6. Note: this was built against the GuruRMM API at 172.16.3.30:3001 — verify agent ID for AD2 before sending commands
