Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>FergusonNew to Visual Studio Code? Get it now.
Ferguson

Ferguson

Preview

davidcockson

|
6 installs
| (0) | Free
An extension to guide architectural decision-making.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Ferguson — Architecture Engine for VS Code

Ferguson is a VS Code extension that guides you through the full architectural design process before you write a single line of production code. It walks you through an 8-step wizard — from requirements to skeleton — and generates a set of living documents that coding agents (Copilot, Cursor, Claude) can use to understand and contribute to your project.


What It Does

Ferguson follows the Double Diamond design process, structured as an 8-gate wizard:

Step Gate Output
1 EARS Requirements Parsed + typed requirements
2 Research Launchpad AI-synthesised research notes
3 Tech Stack ADR-001 architecture decision
4 C4 Model Context → Container → Component diagram
5 Testing Strategy Test config (Jest/Cucumber)
6 CI/CD Platform ci.yml for GitHub/GitLab/Bitbucket
7 System Wiring .ferguson/system-wiring.md
8 Generate Full project skeleton + all artifacts

Generated Artifacts

When you complete all 8 gates, Ferguson generates:

  • Project skeleton — MERN, SvelteKit, or Next.js starter files
  • AGENT_STATUS.md — Machine-readable briefing for AI coding agents (tech stack, test methodology, CI checks, C4 summary)
  • .ferguson/system-wiring.md — Folder tree, data models, API endpoints, database schema
  • .ferguson/decisions/adr-001-architecture.md — Architecture Decision Record (Michael Nygard format)
  • .ferguson/kanban.md — Task board pre-populated from EARS rules and C4 components
  • .ferguson/traceability.md — Requirements → Components → Test files matrix
  • CI config — ci.yml / .gitlab-ci.yml / bitbucket-pipelines.yml

Getting Started

  1. Install the extension
  2. Open a workspace folder (or create one)
  3. Run Ferguson: Start Architecture from the Command Palette (Ctrl+Shift+P)
  4. Work through the 8-step wizard
  5. Hit Generate on Step 8 to scaffold the project

EARS Requirements

Create an ears-final.md file in your workspace with requirements in EARS syntax:

The system shall allow users to register an account.
When a user submits invalid credentials, the system shall display an error message.
While the session is active, the system shall refresh the auth token every 15 minutes.
If a payment fails, the system shall notify the user and cancel the order.

Ferguson parses these into typed rules (Ubiquitous, Event-Driven, State-Driven, Unwanted, Optional, Complex) and uses them to populate the Kanban board and Traceability Matrix.

Research Launchpad

Create a research.yaml in your workspace to define topics for AI-assisted research:

- title: "SvelteKit vs Next.js"
  description: "Compare frameworks for this use case"
  url: "https://kit.svelte.dev/docs"
  tags: [framework, frontend]
  llm_fetch_prompt: "Compare SvelteKit and Next.js for a multi-user SaaS product. Focus on SSR, auth, and deployment."

Ferguson fetches the URL and uses your configured AI provider to synthesise the content, saving notes to .doublediamond/research/.


AI Provider Setup

Ferguson supports multiple AI providers for research synthesis. Run Ferguson: Select AI Provider from the Command Palette to choose:

  • GitHub Copilot — Auto-detected if the Copilot extension is active
  • Anthropic Claude — Enter your API key (stored in VS Code SecretStorage)
  • Google Gemini — Enter your Google AI Studio API key
  • Continue.dev — Connects to Continue's local OpenAI-compatible proxy

API keys are stored securely in VS Code's built-in SecretStorage and never written to disk.


Extension Settings

Setting Default Description
ferguson.freakMode false Strict gate enforcement — prevents advancing until the current gate passes
ferguson.earsFilePath ears-final.md Relative path to your EARS requirements file
ferguson.researchPath research.yaml Relative path to your research YAML
ferguson.outputDir .ferguson/ Directory for generated artifacts
ferguson.testMethodology tdd Default testing methodology (tdd, bdd, after)

Commands

Command Description
Ferguson: Start Architecture Open Mission Control
Ferguson: Select AI Provider Configure AI integration
Ferguson: Generate AGENT_STATUS.md Generate agent briefing file
Ferguson: Generate Kanban Board Generate .ferguson/kanban.md
Ferguson: Generate Traceability Matrix Generate .ferguson/traceability.md

Sidebar

The Ferguson sidebar (activity bar) shows a live list of all architectural decisions made in the current workspace. Click Open Mission Control to jump to the main wizard.


Requirements

  • VS Code 1.90+
  • Node.js 18+ (for built-in fetch support)
  • An AI provider extension (optional, for research synthesis)

Workspace Trust

Ferguson respects VS Code's Workspace Trust model. Research URL fetching is disabled in untrusted workspaces.


Licence

MIT — see LICENSE.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft