Forge
markdowndeeb25a2
1# Features/Forge — vertical client slice (agent-forge)
2
3**Normative:** [ADR 0161](../../docs/adr/0161-cide-spine-and-forge-vertical-feature-module.md), [ADR 0160](../../docs/adr/0160-forge-slash-catalog-runtime-overlay.md), [ADR 0158](../../docs/adr/0158-forge-lens-crs-overlay.md).
4
5## Одна строка
6
7CIDE **client** for forge: connect, server-driven slash overlay, command execute, CRS Lens, MCP handlers, bracket refs — **not** forge host.
8
9## Layout (F2–F5 done)
10
11| Path | Concern |
12|------|---------|
13| `Infrastructure/` | Capabilities fetch, slash overlay, execute, secrets, bracket parsers, open/nav |
14| `Lens/` | Connect (OAuth/device), CRS client, workspace config, write API |
15| `Mcp/` | `ForgeMcpHandlers` — all `forge_*` / `forge.artifact.goto` MCP tools |
16| `Models/` | `ForgeLensSecrets` TOML model |
17| `ForgeFeatureModule.cs` | `ICascadeFeatureModule` — single MCP registration site |
18| `CascadeFeatureModules.cs` | Explicit module list (no MEF, ADR 0005) |
19
20## Spine vs vertical
21
22- **Spine:** bundled `intent-catalog.toml`, `SlashLineResolver`, chat slash UI — **no** `/forge *` entries when using overlay ([0160](../../docs/adr/0160-forge-slash-catalog-runtime-overlay.md)).
23- **Vertical:** everything that talks to forge HTTP/MCP for this workspace.
24
25## Guardrail
26
27**CASCOPE043** — `using CascadeIDE.Features.Forge.Infrastructure|Lens` only from this tree + allowlisted hooks (`Features/Chat`, `IdeMcp`, `WorkspaceNavigation`, bracket consumers).
28
29## Config
30
31`.cascade/workspace.toml` → `[workspace.forge]` (`base_url`, `repo`). See [0158](../../docs/adr/0158-forge-lens-crs-overlay.md).
32
View only · write via MCP/CIDE