Added Files

This commit is contained in:
AJ
2025-10-24 20:28:13 -04:00
commit b75fbbedb9
30 changed files with 2410 additions and 0 deletions

35
AGENTS.md Normal file
View File

@@ -0,0 +1,35 @@
# Repository Guidelines
## Project Structure & Module Organization
- `RoslynBridge/` VSIX source (C#). Key folders: `Server/` (HTTP host), `Services/` (Roslyn queries, refactorings), `Models/`, `Constants/`.
- Build artifacts: `RoslynBridge/bin/` and `RoslynBridge/obj/`.
- Claude skills: `.claude/skills/roslyn-api/SKILL.md` (HTTP query reference for local discovery/testing).
## Build, Test, and Development Commands
- Build (CLI): `msbuild RoslynBridge.sln /p:Configuration=Debug`
- Build (VS): Open `RoslynBridge.sln`, set `RoslynBridge` as startup, press F5 to launch the Experimental Instance.
- Health check (server running in VS):
- PowerShell: `$b=@{queryType='getprojects'}|ConvertTo-Json; Invoke-RestMethod -Uri 'http://localhost:59123/query' -Method Post -Body $b -ContentType 'application/json'`
- curl (Windows): `curl -X POST http://localhost:59123/query -H "Content-Type: application/json" -d "{\"queryType\":\"getprojects\"}"`
## Coding Style & Naming Conventions
- Language: C# (net48 VSIX). Use 4space indentation; braces on new lines.
- Naming: `PascalCase` for types/methods; `camelCase` for locals; private fields as `_camelCase`.
- Prefer `async`/`await`, avoid blocking the UI thread; use `JoinableTaskFactory` when switching.
- Keep nullable annotations consistent with project settings.
- Run Format Document and Organize Usings before commits.
## Testing Guidelines
- No unit test project yet. Validate via HTTP endpoints (see SKILL.md): `getprojects`, `getdiagnostics`, `getsolutionoverview`, `getsymbol`, etc.
- Expected response shape: `{ success, message, data, error }` (JSON).
- Lines are 1based; columns 0based. File paths in JSON require escaped backslashes.
## Commit & Pull Request Guidelines
- Commits: concise, imperative subject (e.g., "Add diagnostics endpoint"), with short body explaining rationale and scope.
- PRs: include description, linked issues, sample requests/responses, and screenshots when UI/VS behavior is affected.
- Checklist: builds clean, `getdiagnostics` shows no new errors, code formatted, usings organized.
## Security & Configuration Tips
- Server binds to `http://localhost:59123/` and accepts only POST; CORS is permissive for local tooling. Do not expose externally.
- Endpoints: `/query` (main), `/health` route exists but still requires POST.
- Adjust port/paths in `RoslynBridge/Constants/ServerConstants.cs` if needed.