Skip to content

Clients and entry points

Target

This page describes intended behaviour or structure. No implementation is claimed unless a section is explicitly marked Current implementation or Evidence.

The Factory is headless. The web console uses the same APIs as every other client, and every client's work request enters the same application execution port in the Control plane. A client never calls a model provider or a tool directly to make a prototype action appear functional.

Surfaces

Surface Purpose Status today
Web console (Studio) Observe, steer, review, govern; command center, run inspection, review inbox, assets, administration Prototypes only (Studio)
Agent operations IDE Per project/environment: selected agent and version, skills, knowledge scopes, tools, model profile and fallback, task, plan, execution graph, sub-agents, tool calls, shell commands, changed files, diff, approvals, logs, traces, cost, tokens, retries, fallback events Target (Oct-2026 handoff §5); not a source editor
REST and gRPC API All commands and queries; versioned; idempotent run creation Target; proposed contracts in Control plane
.NET SDK, TypeScript SDK Typed clients over the API Target; ApiLibraryTemplate is the generation path (packet PK-19)
CLI Scripting and CI use of the same API Target
VS Code, JetBrains extensions; Cursor, Claude Code, Codex External editors and coding agents as clients through extensions and MCP; never competitors to the Factory's control plane Target; MCP hosting library exists
Slack, Microsoft Teams, WhatsApp Chat entry points for task submission, approvals and notifications Target
CI/CD pipelines and external autonomous systems Machine callers with workload identity Target; existing Azure Pipelines call nothing in the Factory today

Rules for every client

  • Scope comes from the authenticated session (canonical ADR-0101); choosing a tenant or project in a client grants nothing.
  • A command returns an acknowledgement and a resource location; the persisted outcome is a separate observation. Toasts are not evidence.
  • Long-running work is identified by run id and survives client disconnects; an interrupted stream leaves a visible last-known state.
  • Every client shows the same state vocabulary (asset readiness, deployment availability, run state, approval state, result freshness).

Current implementation

No console, CLI, SDK or extension exists. The agent host template exposes a REST sample, an MCP sample tool and optional DevUI endpoints, two of which bypass the execution lifecycle (Agent & Orchestration runtime).