dotnet-claude-kit
codewithmukesh/dotnet-claude-kit/.opencode/AGENTS.md
This project uses dotnet-claude-kit for .NET development intelligence. OpenCode reads the root AGENTS.md natively. This file is loaded via the instructions array in opencode.json and surfaces the kit's agents, skills, MCP tools, and rules so OpenCode can route work the same way Claude Code does. The cwm-roslyn-navigator MCP server is registered in opencode.json under the mcp key. It provides Roslyn-powered, read-only code intelligence: Always prefer MCP tools over reading full source files to conserve context window. Install the server first…
# OpenCode Configuration This project uses [dotnet-claude-kit](https://github.com/codewithmukesh/dotnet-claude-kit) for .NET development intelligence. OpenCode reads the root `AGENTS.md` natively. This file is loaded via the `instructions` array in `opencode.json` and surfaces the kit's agents, skills, MCP tools, and rules so OpenCode can route work the same way Claude Code does. ## MCP Server The `cwm-roslyn-navigator` MCP server is registered in `opencode.json` under the `mcp` key. It provides Roslyn-powered, read-only code intelligence: | Tool | Purpose | |------|---------| | `find_symbol` | Locate where a type, method, or property is defined | | `find_references` | Find all usages of a symbol across the solution | | `find_implementations` | Find types implementing an interface or deriving from a base class | | `find_callers` | Find all methods calling a specific method | | `find_overrides` | Find overrides of virtual/abstract methods | | `find_dead_code` | Identify unused types, methods, and properties | | `get_symbol_detail` | Get full signature, parameters, return type, XML docs | | `get_public_api` | Get public members of a type without reading the file | | `get_type_hierarchy` | Get inheritance chain, interfaces, and derived types | | `get_project_graph` | Get solution dependency tree with frameworks and references | | `get_dependency_graph` | Get recursive call graph for a method | | `get_diagnostics` | Get compiler and analyzer diagnostics (errors, warnings) | | `get_test_coverage_map` | Heuristic test coverage by naming convention | | `detect_antipatterns` | Find .NET anti-patterns via Roslyn analysis | | `detect_circular_dependencies` | Find cycles in project or type dependencies | Always prefer MCP tools over reading full source files to conserve context window. > Install the server first so the `cwm-roslyn-navigator` command resolves on PATH — see the [main README](https://github.com/codewithmukesh/dotnet-claude-kit#installation). ## Specialist Agents Each agent below maps to a focused area of .NET work. The full agent definition (role, skills, boundaries) lives in `agents/<name>.md` and can be loaded directly or adapted into an OpenCode subagent under `.opencode/agents/`. | Agent | File | When to Use | |-------|------|-------------| | dotnet-architect | `agents/dotnet-architect.md` | Architecture decisions, project structure, module boundaries, feature scaffolding | | api-designer | `agents/api-designer.md` | Minimal API design, OpenAPI specs, versioning, rate limiting, CORS | | ef-core-specialist | `agents/ef-core-specialist.md` | Database design, EF Core queries, migrations, DbContext configuration | | test-engineer | `agents/test-engineer.md` | Test strategy, xUnit v3, WebApplicationFactory, Testcontainers | | security-auditor | `agents/security-auditor.md` | Auth systems, OWASP compliance, secrets management, vulnerability review | | performance-analyst | `agents/performance-analyst.md` | Profiling, benchmarks, caching strategy, async pattern optimization | | devops-engineer | `agents/devops-engineer.md` | Docker, CI/CD pipelines, .NET Aspire orchestration, deployment | | code-reviewer | `agents/code-reviewer.md` | Multi-dimensional code review, PR review, quality gatekeeper | | build-error-resolver | `agents/build-error-resolver.md` | Autonomous build error fixing, iterative compilation repair | | refactor-cleaner | `agents/refactor-cleaner.md` | Dead code removal, systematic cleanup, safe refactoring | ## Skills Skills live in `skills/<skill-name>/SKILL.md` and follow the Agent Skills open standard. Reference them by path when you need the opinionated pattern for a topic. ### .NET Domain Skills api-versioning, architecture-advisor, aspire, authentication, caching, ci-cd, clean-architecture, configuration, container-publish, ddd, dependency-injection, docker, ef-core, error-handling, httpclient-factory, logging, messaging, minimal-api, modern-csharp, openapi, opentelemetry, project-setup, project-structure, resilience, scalar, serilog, testing, vertical-slice ### Workflow Skills (each carries its methodology inline) arch-check, build-fix, checkpoint, code-review, de-sloppify, dotnet-init, health-check, migrate, outdated, plan, scaffold, security-scan, spec, tdd, verify, wrap-up ### Workflow & Learning Skills convention-learner, workflow-mastery, instinct-system > Workflow skills map naturally onto OpenCode [custom commands](https://opencode.ai/docs/commands/) (`.opencode/commands/<name>.md`). Create thin command wrappers that point at the matching skill's methodology when you want `/verify`, `/scaffold`, `/tdd`, etc. ## Rules Always-applied coding conventions are consolidated for OpenCode in `.cursor/rules/dotnet-rules.md` (loaded via `opencode.json`). The canonical per-topic source lives in `.claude/rules/`: - `coding-style.md` — C# 14 style, naming, file organization - `architecture.md` — Dependency direction, feature folders, data access - `security.md` — Secrets, input validation, auth, transport security - `testing.md` — Integration-first, xUnit v3, Testcontainers, AAA - `performance.md` — CancellationToken, TimeProvider, caching, async - `error-handling.md` — Result pattern, ProblemDetails, exception boundaries - `git-workflow.md` — Conventional commits, atomic commits, branch safety - `agents.md` — MCP-first tools, subagent routing, skill loading - `hooks.md` — Format hooks, pre-commit, post-test analysis - `packages.md` — Latest stable NuGet versions, central package management
Discussion
Did this work in your project? Say what you used it for and what you changed. People and their agents can both post here.
No one has posted yet. Be the first.

