- Split CODING_GUIDELINES.md into 19 indexed standards files under .claude/standards/ - 9 from CODING_GUIDELINES (conventions, powershell, security, api, git, gururmm) - 10 from session log tribal knowledge (syncro, ssh, gitea, python, client, gururmm) - Add .claude/standards/index.yml for cheap relevance-based lookup - Add /inject-standards command: load targeted standards per task instead of full guidelines - Add /shape-spec command: pre-implementation spec for GuruRMM features (plan.md, shape.md, references.md, standards.md) with mandatory out-of-scope gate - Add docs/tech-stack.md and docs/mission.md for ClaudeTools API - Add projects/msp-tools/guru-rmm/docs/tech-stack.md and mission.md for GuruRMM - Update CLAUDE.md commands table with /inject-standards and /shape-spec Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
25 lines
2.6 KiB
YAML
25 lines
2.6 KiB
YAML
# Standards index — one entry per file, used by /inject-standards for relevance matching
|
|
# Format: "folder/name": "one-sentence description of what this standard covers"
|
|
# Every standards file must have an entry here.
|
|
|
|
standards:
|
|
"conventions/no-emojis": "Never use emojis in code, scripts, config, or output; use ASCII markers instead"
|
|
"conventions/naming": "Naming conventions for Python, PowerShell, Bash, database tables and columns"
|
|
"conventions/output-markers": "ASCII status markers [OK] [ERROR] [WARNING] [SUCCESS] [INFO] [CRITICAL] for all scripts"
|
|
"powershell/execution-pattern": "Always write PowerShell to .ps1 files and run with -NoProfile -File, never -Command inline"
|
|
"powershell/tmp-path-windows": "/tmp resolves to different directories in Git Bash vs Write tool; use .claude/tmp/ or heredocs"
|
|
"context-lookup/grepai-first": "Search with GrepAI or Grep before opening any file for context; Read only when full content is needed"
|
|
"security/credential-handling": "No hardcoded credentials; use SOPS vault or env vars; JWT auth; Argon2 hashing; log auth attempts"
|
|
"api/response-format": "RESTful plural nouns, consistent error format, pagination, idempotent sqlx migrations, OpenAPI"
|
|
"git/commit-style": "Conventional commit types, Co-Authored-By for Claude commits, files never to commit"
|
|
"gururmm/platform-parity": "All agent features must ship on Windows Linux and macOS; silent no-ops are bugs; cfg gating rules"
|
|
"gururmm/build-pipeline": "Never run build-agents.sh manually; all builds go through the Gitea webhook pipeline (push to main)"
|
|
"gururmm/sqlx-migrations": "Never manually pre-apply migrations; use IF NOT EXISTS; SQLX_OFFLINE build; let the server apply its own migrations"
|
|
"syncro/comment-dedup": "Never retry POST /comment without first GET /tickets/{id} to confirm it landed; use heredoc payloads"
|
|
"syncro/time-entry-protocol": "Use timer_entry flow for all billing; ask minutes and labor type before logging; never use bare add_line_item for labor"
|
|
"syncro/html-formatting": "Use <br> for line breaks in Syncro comments; ul/li collapses; no emojis; correct hidden/do_not_email flags"
|
|
"ssh/windows-openssh": "Use bare `ssh` command (system OpenSSH); never Git for Windows SSH; backslash hook blocks full Windows paths"
|
|
"gitea/internal-api": "Use http://172.16.3.20:3000 for Gitea API; git.azcomputerguru.com is behind Cloudflare and blocks curl"
|
|
"python/windows-runtime": "Use `py` on Windows (not python3/python); use jq for JSON; use Python scripts over heredocs with apostrophes"
|
|
"client/communication-tone": "Expert partner posture; state findings and act; ask only the one specific unknown you cannot look up"
|