Skip to content

Execution - #2

Merged
ayan-de merged 44 commits into
mainfrom
execution
May 24, 2026
Merged

Execution#2
ayan-de merged 44 commits into
mainfrom
execution

Conversation

@ayan-de

Copy link
Copy Markdown
Owner

No description provided.

ayan-deand others added 30 commits May 10, 2026 01:29
- Changed extension name from "freecode" to "freecode-chat" in package.json.
- Updated activation events and view container structure for better organization.
- Enhanced build scripts to include webview bundling with esbuild.
- Refactored ChatView to read HTML from a file and replace script URLs with webview URIs.
- Introduced ipc-stub.ts for browser compatibility in the webview.
- Created index.html for the webview with a root div and script inclusion.
- Added main.tsx to initialize the React app in the webview.
- Updated tsconfig.json to use CommonJS module format.
- Added launch.json for extension debugging configuration.
- Created package-lock.json to lock dependencies.
ayan-deand others added 14 commits May 23, 2026 22:54
…k.yaml with esbuild 0.28.0
- Introduced a new architecture specification document for FreeCode detailing its thin-client architecture, key design principles, package structure, IPC protocol, and key design decisions.
- Updated pnpm-lock.yaml to include esbuild version 0.28.0 and its associated platform-specific packages.
Add comprehensive architecture specification documenting the
thin-client model (TUI/VSCode as pure UI shells, CLI as the
single source of intelligence) and a phased migration plan
with detailed step-by-step instructions.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Add @freecode/shared package containing all core domain types
(Message, MessagePart, ToolResult, ToolDef, FileChange, etc.)
and IPC protocol definitions (JsonRpcRequest/Response, StreamResponse,
METHODS signatures).
Types are used by CLI, TUI, and VSCode to ensure type consistency
across the thin-client architecture.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Move all business logic from TUI into CLI, establishing CLI as the
single source of intelligence. CLI now includes:
- Browser controller (Playwright + CDP) with ChatGPT provider adapter
- Context collector with file tree strategy
- Parser with structured, markdown, and JSON extractors
- File applier for writing changes to disk
- Agent loop orchestrating context → prompt → parse → apply
TUI and VSCode will be refactored to thin clients communicating
with CLI via JSON-RPC.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
TUI now spawns CLI and communicates via JSON-RPC. Removed all business logic:
- Deleted lib/browser, lib/parser, lib/context (moved to CLI)
- Deleted executor.ts, file-applier.ts, provider-mgr.ts (logic now in CLI)
- Refactored commands/freecode to use IPC client
- Updated IPC client to use @freecode/shared types
- Removed playwright dependency (now only in CLI)
Server updated to handle session.start/send/stop and providers.list.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
VSCode extension now imports types from @freecode/shared package
instead of duplicating them locally. Updated IPC client to use shared
types and added session management methods (session.start/stop,
listProviders). All business logic delegated to CLI via IPC.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Adds ArchitectureDiagram, BoundaryDiagram, FlowDiagram, and FreeCodeInternalDiagram
for visualizing system architecture.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Adds TabNavigation and ArchitectureExplorer for the internal architecture page.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@ayan-de
ayan-de merged commit 40927c6 into mainMay 24, 2026
ayan-de added a commit that referenced this pull request Sep 5, 2026
All six P1 items are closed. Each entry says what was wrong, what was
built, and — where it matters more — what was deliberately not built: no
shared settings loader (the three-merge-rules gap stays open and is not
what made a typo invisible), no wire type for the raw config, no
validation stricter than the handler it guards.
Step 5 of the path to 1.0 is now the eval gate. P1 #2 and #3 both change
what the model sees after a compaction, so that run is the measurement,
not a formality.
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@ayan-de