diff --git a/session-logs/2026-05-16-session.md b/session-logs/2026-05-16-session.md index 2f03254..2152249 100644 --- a/session-logs/2026-05-16-session.md +++ b/session-logs/2026-05-16-session.md @@ -137,3 +137,55 @@ py -c "import urllib.request, json; ..." - Ollama Tailscale endpoint (Howard's machines): `http://100.92.127.64:11434` - Unraid CA template: `projects/msp-tools/guru-rmm/docs/unraid-ca-template.xml` - Policy wiring plan: `C:\Users\guru\.claude\plans\ticklish-questing-stallman.md` + +--- + +## Update: 11:50 PT — agent-os standards system + feature planning tools + +### Session Summary + +After reviewing the agent-os GitHub repo (buildermethods/agent-os), four high-value improvements were identified and implemented in a single parallel agent run. The core idea borrowed from agent-os: split a monolithic guidelines doc into individual indexed standards files so agents load only what's relevant to a given task, rather than the entire guidelines file every time. + +The standards system agent split CODING_GUIDELINES.md into 19 individual files under `.claude/standards/`, organized by topic: conventions (no-emojis, naming, output-markers), powershell (execution-pattern, tmp-path-windows), context-lookup (grepai-first), security (credential-handling), api (response-format), git (commit-style), gitea (internal-api), gururmm (platform-parity, build-pipeline, sqlx-migrations), syncro (comment-dedup, time-entry-protocol, html-formatting), ssh (windows-openssh), python (windows-runtime), client (communication-tone). Two standards beyond the requested list were added: sqlx-migrations (the proc macro outage was substantial enough to codify) and powershell/tmp-path-windows (the /tmp vs Windows temp path mismatch affects any Write-tool-to-Bash handoff). An index.yml was created with one-line matchable descriptions for each file, enabling the `/inject-standards` command to select 2-5 relevant standards per task without loading the full set. + +The `/shape-spec` command was created as a pre-implementation planning tool for GuruRMM features. It gates on both a feature description (Phase 1) and explicit out-of-scope items (Phase 2) before writing anything. Output is four files in `specs//`: plan.md (ordered task list, Task 0 always "commit the spec"), shape.md (decisions/constraints/non-goals), references.md (existing code found via Grep), standards.md (applicable standards from index.yml). This solves the "re-explaining context across sessions" problem for multi-session GuruRMM feature work. + +Ground-truth docs were written for both active projects. GuruRMM got `docs/tech-stack.md` (server/agent/dashboard/pipeline architecture) and `docs/mission.md` (purpose, current scope, roadmap direction, design principles) committed to the gururmm submodule at `79604a2`. ClaudeTools API got equivalent docs at `docs/tech-stack.md` and `docs/mission.md` in the repo root. These are fast-load context docs — future sessions read them instead of reconstructing architecture from code. + +### Key Decisions + +- **19 standards files, not one per CODING_GUIDELINES section.** Some sections were split further (output-markers separated from no-emojis; powershell tmp-path separated from execution-pattern) because they apply to different task types. +- **/shape-spec is a new command, not a modification to /create-spec.** `/create-spec` is for the AutoCoder autonomous coding workflow (feature counts, XML spec files). `/shape-spec` is for GuruRMM feature planning within our existing dev workflow — different purpose, different output format. +- **sqlx-migrations.md added beyond the requested list.** The sqlx proc macro outage caused multiple sessions of recovery and a brief production impact. Codifying it as a standard is warranted. +- **GuruRMM mission/tech-stack committed to the submodule.** These docs live in the gururmm repo (authoritative), not just the claudetools reference copy, so they travel with the codebase. +- **Agent-os install script not adopted.** agent-os is designed for multi-repo installation. Claudetools is a mono-repo on Gitea sync — standards live in `.claude/standards/` and are immediately available to all machines after `/sync`. No separate install mechanism needed. + +### Configuration Changes + +**claudetools repo:** +- `.claude/commands/inject-standards.md` — new `/inject-standards` command +- `.claude/commands/shape-spec.md` — new `/shape-spec` command +- `.claude/standards/` — 19 standards files + index.yml (all new) +- `.claude/CLAUDE.md` — /inject-standards and /shape-spec added to Commands table +- `docs/tech-stack.md` — new ClaudeTools API tech-stack doc +- `docs/mission.md` — new ClaudeTools API mission doc + +**gururmm submodule (commit 79604a2):** +- `docs/tech-stack.md` — new GuruRMM tech-stack ground-truth doc +- `docs/mission.md` — new GuruRMM mission doc + +**Commit:** `dd0ef45` — feat: implement agent-os standards system and feature planning tools + +### Pending / Incomplete Tasks + +- Same as prior update — no new pending items from this work +- Pluto vault entry still pending +- Pluto SSH key still pending +- Policy wiring plan (ticklish-questing-stallman.md) still deferred + +### Reference Information + +- agent-os repo reviewed: https://github.com/buildermethods/agent-os +- Standards index: `.claude/standards/index.yml` +- Commit (claudetools): `dd0ef45` +- Commit (gururmm submodule tech-stack/mission): `79604a2`