Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
99a704a
chore: archive vanilla showcase and close v0.9.29 milestone
Apr 15, 2026
ef81a77
docs(174): create phase plan for platform registry and config engine
Apr 15, 2026
e8e6af9
chore(174-01): install config format parsing dependencies (strip-json…
Apr 15, 2026
5d70719
feat(174-01): create platform registry module with 10 MCP platform co…
Apr 15, 2026
d74631a
docs(174-01): complete platform registry and config dependencies plan
Apr 15, 2026
666e913
feat(174-02): create format-aware config read-merge-write engine
Apr 15, 2026
8852772
test(174-02): add integration tests for TOML, YAML, and lifecycle rou…
Apr 15, 2026
28d6ebb
docs(174-02): complete config engine plan summary
Apr 15, 2026
dcd354b
docs(175): create phase plan for install/uninstall CLI & JSON platforms
Apr 15, 2026
39a2d67
feat(175-01): add entry override parameter to installToConfig and cre…
Apr 15, 2026
038b97a
feat(175-01): create install/uninstall orchestration module
Apr 15, 2026
ae0c1cd
docs(175-01): complete install/uninstall CLI & JSON platforms plan
Apr 15, 2026
a5d3c1e
feat(175-02): wire install/uninstall CLI subcommands and update help/…
Apr 15, 2026
94568b3
docs(175-02): complete install/uninstall CLI wiring plan
Apr 15, 2026
0dcb260
docs(176): create phase plan for non-JSON platforms and extended flags
Apr 15, 2026
f378a32
feat(176-01): remove DEFERRED_FORMATS gate and add Claude Code instal…
Apr 15, 2026
688f808
feat(176-01): export serializeByFormat for dry-run preview support
Apr 15, 2026
fffb48c
docs(176-01): complete non-JSON platforms and Claude Code install plan
Apr 15, 2026
d983f66
feat(176-02): implement --dry-run preview modifier for install/uninst…
Apr 15, 2026
faefa35
feat(176-02): implement --all flag for bulk install/uninstall across …
Apr 15, 2026
2917a03
docs(176-02): complete dry-run and all-platforms flags plan
Apr 15, 2026
682deed
feat: MCP platform install flags (v0.9.30)
Apr 15, 2026
cc26247
chore: bump version to v0.9.30 and restore deploy infra
Apr 15, 2026
f033d7e
Merge remote-tracking branch 'origin/main' into Refinements
Apr 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

# Allow only what we need for the server deployment
!server/
!showcase/
!showcase/dist/

# Re-ignore things inside those dirs we don't need
server/node_modules
Expand Down
1 change: 0 additions & 1 deletion .github/workflows/npm-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ jobs:
registry-url: 'https://registry.npmjs.org'

- run: npm ci
- run: npm run build
- run: npm publish --access public
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@ node_modules/
dist/
build/

# Fly.io
.fly/

# OS files
.DS_Store
Thumbs.db
Expand Down
23 changes: 23 additions & 0 deletions .planning/MILESTONES.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,28 @@
# Project Milestones: FSB (Full Self-Browsing)

## v0.9.29 Showcase Angular Migration (Shipped: 2026-04-15)

**Phases completed:** 1 phases, 7 plans, 14 tasks

**Key accomplishments:**

- Standalone Angular migration foundation with deterministic showcase build output and compile-ready home/about/dashboard route component contracts.
- Canonical Angular shell routing plus `fsb-showcase-theme` pre-bootstrap/runtime parity contracts, protected by a source-contract regression test.
- Legacy home/about/dashboard route content now lives in Angular templates with preserved parity anchors, normalized home asset paths, and dashboard runtime DOM IDs intact.
- Global token/theme contracts now live in shared styles while each migrated route owns its legacy-equivalent visuals in component SCSS.
- Express now serves Angular shell routes on canonical showcase URLs with fixed legacy `.html` redirects, and one regression command enforces route/theme/content/server contracts together.
- Compile-ready Angular privacy and support standalone route component contracts with explicit placeholder headings for tranche-B D-02 coverage.
- Privacy and support routes are fully migrated into Angular templates, and a single five-route parity contract test now guards canonical anchors, dashboard IDs, and required asset paths.

**Accepted gaps at close:**

- Phase 174 (`DASH-08` to `DASH-10`) deferred.
- Phase 175 (`DASH-11` to `DASH-13`) deferred.
- Phase 176 (`DASH-14` to `DASH-17`) deferred.
- Phase 177 (`MIGR-01` to `MIGR-03`) deferred.

---

## v0.9.27 Usage Dashboard Fix (Shipped: 2026-04-14)

**Phases completed:** 2 phases, 3 plans, 6 tasks
Expand Down
33 changes: 22 additions & 11 deletions .planning/PROJECT.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,17 @@ FSB is an AI-powered browser automation Chrome extension that executes tasks thr

**Reliable single-attempt execution.** The AI decides correctly; the mechanics execute precisely. Every click hits the right element, every action succeeds on the first try.

## Current State
## Current Milestone: v0.9.30 MCP Platform Install Flags

FSB shipped `v0.9.27 Usage Dashboard Fix` on 2026-04-14, following `v0.9.26 Progress Overlay Refinement` (2026-04-12). The options-page analytics dashboard now re-reads storage-backed usage data through an init-safe refresh path, defers off-screen updates until the operator returns to the dashboard, guards missing time-range label nodes, and keeps the cost breakdown in the refreshed render path. `tests/dashboard-analytics-refresh.test.js` protects the refresh lifecycle, and the local Phase 172 smoke run confirmed that real task completion updates request count, token totals, cost, and chart data. No new milestone is active yet.
**Goal:** Replace copy-paste setup with one-command auto-configuration for every major MCP-capable platform.

## Next Milestone Goals

- Decide whether to resume the older hosted dashboard reliability debt from `v0.9.25` / `v0.9.23` or open a different top-priority milestone.
- Re-run the deferred `Off-Screen Dashboard Refresh Smoke` before any push or release tagging that depends on the v0.9.27 dashboard verification evidence.
- Start the next planning cycle with `$gsd-new-milestone` and a fresh milestone-scoped requirements file.
**Target features:**
- Platform-specific `--<platform>` flags that auto-write the correct config file (Claude Desktop, Claude Code, Cursor, VS Code, Windsurf, Cline, Zed, Codex, Gemini CLI, Continue)
- Cross-OS path resolution (macOS, Windows, Linux)
- Safe config merging (read existing config, add FSB entry, preserve other servers)
- Support for JSON, TOML, and YAML config formats
- Uninstall semantics (`--uninstall --<platform>`) to cleanly remove the FSB entry
- Upgraded `setup` command as fallback for unsupported/unknown platforms

## Requirements

Expand Down Expand Up @@ -132,12 +134,21 @@ FSB shipped `v0.9.27 Usage Dashboard Fix` on 2026-04-14, following `v0.9.26 Prog
- ✓ First-sentence overlay text extraction and conversational prefix stripping for concise task summaries -- v0.9.26/P170
- ✓ Storage-backed dashboard analytics refresh, deferred off-screen refresh handling, null-safe dashboard labels, and regression coverage for the refresh contract -- v0.9.27/P171
- ✓ End-to-end local dashboard smoke verification proving real task completion updates metrics and chart data -- v0.9.27/P172
- ✓ Angular showcase shell introduced with canonical route parity, runtime asset parity, and persisted theme behavior contracts -- validated in Phase 173 (v0.9.29)

### Deferred At v0.9.29 Close

- [ ] Dashboard session/auth, agent lifecycle management, and run-history views are ported to Angular with parity to the current experience.
- [ ] Task execution, live preview streaming, and remote-control state handling are ported to Angular with contract-safe behavior.
- [ ] Migration parity and regression checks are in place, including the deferred off-screen dashboard refresh smoke evidence before release tagging.

## Last Shipped Milestone: v0.9.29 Showcase Angular Migration (shipped 2026-04-15)

### Active
**Shipped:** Angular showcase shell route parity (`/`, `/about`, `/dashboard`, `/privacy`, `/support`), persisted `fsb-showcase-theme` behavior, page-content parity contracts, canonical clean-route server handling, legacy `.html` redirects, and archival of the old vanilla showcase source under `showcase/legacy-vanilla/`. 1 phase, 7 plans, 14 tasks.

No active milestone-scoped requirements. Start the next planning cycle with `$gsd-new-milestone`.
**Accepted gaps:** Phase 174-177 migration scope (`DASH-08` through `MIGR-03`) deferred to the next milestone.

## Last Shipped Milestone: v0.9.27 Usage Dashboard Fix (shipped 2026-04-14)
## Previous Milestone: v0.9.27 Usage Dashboard Fix (shipped 2026-04-14)

**Shipped:** Storage-backed analytics refresh on `ANALYTICS_UPDATE`, deferred off-screen dashboard refresh handling, null-safe time-range label updates, reliable cost-breakdown rendering, regression coverage in `tests/dashboard-analytics-refresh.test.js`, and local end-to-end smoke verification that real task completion updates usage metrics and chart data. 2 phases, 3 plans, 7 requirements.

Expand Down Expand Up @@ -314,4 +325,4 @@ This document evolves at phase transitions and milestone boundaries.
4. Update Context with current state

---
*Last updated: 2026-04-14 -- Milestone v0.9.27 shipped*
*Last updated: 2026-04-15 -- Milestone v0.9.30 started*
141 changes: 77 additions & 64 deletions .planning/ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,74 +2,87 @@

## Milestones

- v0.9 Reliability Improvements (shipped 2026-02-14)
- v9.0.2 AI Situational Awareness (shipped 2026-02-18)
- v9.3 Tech Debt Cleanup (shipped 2026-02-23)
- v9.4 Career Search Automation (shipped 2026-02-28)
- v10.0 CLI Architecture (shipped 2026-03-15)
- v0.9.2-v0.9.4 Productivity, Memory & AI Quality (shipped 2026-03-17)
- v0.9.5 Progress Overlay Intelligence (shipped 2026-03-17)
- v0.9.6 Agents & Remote Control (shipped 2026-03-19)
- v0.9.7 MCP Edge Case Validation (shipped 2026-03-22) -- [archive](milestones/v0.9.7-ROADMAP.md)
- v0.9.8 Autopilot Refinement (shipped 2026-03-23) -- [archive](milestones/v0.9.8-ROADMAP.md)
- v0.9.9 Excalidraw Mastery (shipped 2026-03-25) -- [archive](milestones/v0.9.9-ROADMAP.md)
- v0.9.8.1 npm Publishing (shipped 2026-04-02) -- [archive](milestones/v0.9.8.1-ROADMAP.md)
- v0.9.9.1 Phantom Stream (shipped 2026-03-31)
- v0.9.11 MCP Tool Quality (shipped 2026-03-31) -- [archive](milestones/v0.9.11-ROADMAP.md)
- v0.9.20 Autopilot Agent Architecture Rewrite (shipped 2026-04-02) -- [archive](milestones/v0.9.20-ROADMAP.md)
- v0.9.21 UI Retouch & Cohesion (shipped 2026-04-02) -- [archive](milestones/v0.9.21-ROADMAP.md)
- v0.9.22 Showcase High-Fidelity Replicas (superseded after Phase 145)
- v0.9.23 Dashboard Stream & Remote Control Reliability (deferred after Phase 150)
- v0.9.24 Claude Code Architecture Adaptation (shipped 2026-04-05) -- [archive](milestones/v0.9.24-ROADMAP.md)
- v0.9.25 MCP & Dashboard Reliability Closure (shipped 2026-04-11) -- [archive](milestones/v0.9.25-ROADMAP.md)
- v0.9.26 Progress Overlay Refinement (shipped 2026-04-12) -- [archive](milestones/v0.9.26-ROADMAP.md)
- v0.9.27 Usage Dashboard Fix (shipped 2026-04-14) -- [archive](milestones/v0.9.27-ROADMAP.md)

---

## No Active Milestone

Last shipped milestone: `v0.9.27 Usage Dashboard Fix` (shipped 2026-04-14) -- [archive](milestones/v0.9.27-ROADMAP.md)

No new milestone has been opened yet. Start the next planning cycle with `$gsd-new-milestone`.

---

## v0.9.26 Progress Overlay Refinement (shipped 2026-04-12)

**Status:** Shipped 2026-04-12 -- see [milestones/v0.9.26-ROADMAP.md](milestones/v0.9.26-ROADMAP.md) for the archived detail.

**Goal:** Make the progress overlay show clean, accurate, human-readable task progress instead of developer debug noise.
- v0.9.29 Showcase Angular Migration (shipped 2026-04-15, accepted scope gaps)
- v0.9.27 Usage Dashboard Fix (shipped 2026-04-14)

## Active Milestone: v0.9.30 MCP Platform Install Flags

Replace copy-paste MCP setup with one-command auto-configuration for every major MCP-capable platform. 28 requirements across 3 phases, delivering a platform registry engine, JSON-based install/uninstall for 7 platforms, and non-JSON platform support with extended flags.

## Phases

- [ ] **Phase 174: Platform Registry & Config Engine** - Core engine: platform registry map, JSON/JSONC read-merge-write, cross-OS path resolution, backup, idempotency, error handling
- [ ] **Phase 175: Install/Uninstall CLI & JSON Platforms** - Wire install/uninstall commands, deliver all 7 JSON-format platforms, uninstall semantics, CLI help, setup update
- [ ] **Phase 176: Non-JSON Platforms & Extended Flags** - Claude Code CLI delegation, Codex TOML, Continue YAML, dry-run preview, install-all

## Phase Details

### Phase 174: Platform Registry & Config Engine
**Goal**: The foundational engine exists to read, merge, and write MCP config files safely across operating systems
**Depends on**: Nothing (first phase of milestone)
**Requirements**: INST-01, INST-02, INST-03, INST-04, INST-05, INST-06, INST-07, INST-08
**Success Criteria** (what must be TRUE):
1. A platform registry data structure maps each of 10 platforms to its config path per OS, file format, root key name, and server entry shape
2. The config engine can read an existing JSON config file, merge an FSB server entry under the correct root key, and write it back without losing other servers
3. JSONC files (containing `//` comments and trailing commas) are parsed correctly without errors
4. Config file paths resolve correctly on macOS, Windows, and Linux using OS-appropriate base directories
5. A `.bak` backup of the original config file is created before any modification
**Plans:** 2 plans

Plans:
- [ ] 174-01-PLAN.md -- Dependencies and platform registry map (platforms.js)
- [ ] 174-02-PLAN.md -- Config read-merge-write engine (config-writer.js) and integration tests

### Phase 175: Install/Uninstall CLI & JSON Platforms
**Goal**: Users can install and uninstall FSB in any JSON-format MCP client with a single command
**Depends on**: Phase 174
**Requirements**: PLAT-01, PLAT-02, PLAT-03, PLAT-04, PLAT-05, PLAT-06, PLAT-07, UNINST-01, UNINST-02, UNINST-03, UNINST-04, UNINST-05, CLI-01, CLI-02, CLI-03
**Success Criteria** (what must be TRUE):
1. Running `npx fsb-mcp-server install --claude-desktop` auto-configures FSB in Claude Desktop's config file with the correct `mcpServers` entry
2. Running `npx fsb-mcp-server install --vscode` writes the correct `servers` entry with `type: "stdio"` into VS Code's mcp.json
3. Running `npx fsb-mcp-server uninstall --<platform>` removes only the FSB entry and preserves all other configured servers
4. Running `install` with no platform flags prints usage help listing all 10 available platforms
5. The existing `setup` command mentions `install --<platform>` as a faster alternative
**Plans:** 2 plans

Plans:
- [ ] 175-01-PLAN.md -- Install/uninstall orchestration module (install.js) and config-writer API gap fix
- [ ] 175-02-PLAN.md -- CLI router wiring (switch cases, help, setup updates) and end-to-end verification

### Phase 176: Non-JSON Platforms & Extended Flags
**Goal**: Users can install FSB in every remaining MCP client (Claude Code, Codex, Continue) and use convenience flags for previewing and bulk installs
**Depends on**: Phase 175
**Requirements**: PLAT-08, PLAT-09, PLAT-10, INST-09, INST-10
**Success Criteria** (what must be TRUE):
1. Running `install --claude-code` delegates to `claude mcp add` CLI command (with fallback to printed command if CLI is unavailable)
2. Running `install --codex` writes the correct TOML `mcp_servers` table entry into Codex's config.toml
3. Running `install --continue` writes a YAML array entry under `mcpServers` in Continue's config.yaml
4. Running `install --dry-run --<platform>` shows what would change without modifying any files
5. Running `install --all` installs FSB to every detected platform in one command
**Plans:** 2 plans

Plans:
- [ ] 176-01-PLAN.md -- Remove format gate, Claude Code install handler, Codex/Continue support
- [ ] 176-02-PLAN.md -- --dry-run preview and --all bulk install/uninstall flags

## Progress

**Execution Order:** 174 -> 175 -> 176

| Phase | Plans Complete | Status | Completed |
|-------|----------------|--------|-----------|
| 168. Data Audit & Display Firewall | 2/2 | Complete | 2026-04-12 |
| 169. Display Cleanup & Performance | 2/2 | Complete | 2026-04-12 |
| 170. Cross-Site Validation & Final Polish | 1/1 | Complete | 2026-04-12 |

## v0.9.25 MCP & Dashboard Reliability Closure (shipped 2026-04-11)

**Status:** Shipped 2026-04-11 with accepted tech debt -- see [milestones/v0.9.25-ROADMAP.md](milestones/v0.9.25-ROADMAP.md) and [v0.9.25-MILESTONE-AUDIT.md](v0.9.25-MILESTONE-AUDIT.md) for the archived detail.
| 174. Platform Registry & Config Engine | 0/2 | Not started | - |
| 175. Install/Uninstall CLI & JSON Platforms | 0/2 | Not started | - |
| 176. Non-JSON Platforms & Extended Flags | 0/2 | Not started | - |

**Goal:** Close the remaining operator-facing reliability gaps across restricted-tab MCP behavior, deferred dashboard reliability work, and the live verification debt carried forward from `v0.9.24`.
## Last Shipped Milestone: v0.9.29 Showcase Angular Migration (shipped 2026-04-15)

| Phase | Plans Complete | Status | Goal |
|-------|----------------|--------|------|
| 163. Restricted-Tab MCP Parity | 2/2 | Complete | 2026-04-06 |
| 164. Dashboard Reliability Rebaseline | 2/2 | Complete | 2026-04-06 |
| 165. Live Dashboard Verification & Fixes | 2/2 | Complete (tech debt accepted) | 2026-04-11 |
| 166. Runtime Carryover Hardening | 2/2 | Complete | 2026-04-07 |
| 167. Auth Outcome Smoke Verification | 0/0 | Complete | 2026-04-07 |
**Shipped scope:** Phase 173 only (Showcase Shell, Routes & Theme Parity), including Angular shell route parity, theme persistence parity, five-route content migration, and server canonical-route/legacy-redirect compatibility.

## v0.9.23 Dashboard Stream & Remote Control Reliability (deferred)
**Accepted gaps at close:** Remaining migration scope was deferred to a future milestone:
- Phase 174: Dashboard Session Access Flows (`DASH-08` to `DASH-10`)
- Phase 175: Agent Management & Run History Parity (`DASH-11` to `DASH-13`)
- Phase 176: Task, Preview & Remote Runtime Parity (`DASH-14` to `DASH-17`)
- Phase 177: Migration Regression & Delivery Readiness (`MIGR-01` to `MIGR-03`)

Historical deferred milestone. Phase 150 shipped, and the remaining reliability goals are now re-scoped into `v0.9.25` with fresh phase numbers instead of reviving the old `151-155` sequence.

| Phase | Plans Complete | Status | Completed |
|-------|----------------|--------|-----------|
| 150. Dashboard Transport Baseline & Recovery | 2/2 | Complete | 2026-04-02 |
| 151. DOM Stream Consistency & State Sync | 0/2 | Deferred | - |
| 152. Remote Control Reliability | 0/2 | Deferred | - |
| 153. Dashboard Task Relay Correctness | 0/2 | Deferred | - |
| 154. End-to-End Verification & Hardening | 0/1 | Deferred | - |
| 155. Agent Conversation Continuity & Context Reuse | 2/2 | Complete | 2026-04-02 |
**Archive:** `.planning/milestones/v0.9.29-ROADMAP.md`
Loading