Propose a Solution Configuration
init_solution_configCollects the raw configuration material needed to propose Layer Profile, Exclude-Namespaces, and Test Profile mappings before writing them via the apply step.
Instructions
Collect the raw material for the guided setup of a solution's Layer Profile, Exclude-Namespaces and Test Profile - step 1 of 2; apply_solution_config is the step that writes.
Use it when solution_config_status or the configInit hint of analyze_solution reports an axis as not initialized, or when check_solution_config_drift reports one as stale. Propose a mapping from the returned material, then call apply_solution_config with it. To only see what is configured, use solution_config_status.
Returns JSON: solutionPath; declaredNamespaces - the solution's own namespaces, the source for layer-mapping rules (test-project and framework namespaces are left out); referencedNamespaces - every namespace a using directive names, the solution's OWN included, heaviest first (a hand-written global using ahead of any file count), each {namespace, documents} (hand-written files whose own using names it), plus generatedDocuments (build-written files, obj/) and globalUsingProjects / implicitGlobalUsing (an SDK implicit using) where they apply - neither says what the code leans on: only the external/framework ones are exclusion material, never exclude your own; testProjects - what the default heuristic classifies as test projects; detectedTestAttributes - the test attributes present in the code; frameworkApiAreas - areas the built-in exclusion list removes although at least 15% of the public method signatures name them (Dapper: System.Data), each with the keepRule to put into exclusions so the rest of the list still applies; proposalFormat - the JSON shape apply_solution_config expects. The first three lists are capped envelopes (items/count/totalFound/truncated, max 300); the other two are plain arrays.
Read-only: it writes no configuration and no DB row and marks nothing as initialized. It walks the warm session workspace (no re-analysis), so it needs a live session; a recalled one is rejected with an error.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"sessionId": "<sessionId>"
},
"name": "init_solution_config"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sessionId | Yes | The session_id returned by analyze_solution. Also takes an absolute .sln/.slnx/.slnf path, analyzed on first use. |