feat: vscode extension (#59)

* feat: add initial VS Code extension plan and implementation tasks

* feat(vscode): added initial version of an Openchamber VSCode extension

* feat(vscode): enhance VS Code extension with theme integration and session management

* feat(vscode): implement connection status handling and overlay in VSCode layout

* feat: move extension to secondary sidebar

* chore: upgrade @opencode-ai/sdk to 1.0.150

* vscode: editor bridge, file picker, click-to-open in tool parts

* vscode: layout session lifecycle, theme sync, typography overrides

* ui: compact mode for vscode, model search, autocomplete width fixes

* perf: scroll force flag, raf placeholder, git polling backoff

* ui: tool output styling, markdown code block fix, gitignore

* refactor: update typography handling for VSCode runtime, remove unused styles

* docs: update README with VS Code extension details and add extension image

* docs: update changelog with new features and performance improvements
This commit is contained in:
Bohdan Triapitsyn
2025-12-13 16:34:17 +02:00
committed by GitHub
parent 610ccf4c62
commit bb72c0fb0c
76 changed files with 6097 additions and 296 deletions
+15 -3
View File
@@ -7,6 +7,15 @@ export const SEMANTIC_TYPOGRAPHY = {
micro: '0.875rem',
} as const;
export const VSCODE_TYPOGRAPHY = {
markdown: '0.9375rem',
code: '0.9375rem',
uiHeader: '1rem',
uiLabel: '0.9375rem',
meta: '0.9375rem',
micro: '0.875rem',
} as const;
export const SEMANTIC_TYPOGRAPHY_CSS = {
'--text-markdown': SEMANTIC_TYPOGRAPHY.markdown,
'--text-code': SEMANTIC_TYPOGRAPHY.code,
@@ -247,7 +256,8 @@ export const toolDisplayStyles = {
getCollapsedStyles: () => ({
...typography.tool.collapsed,
background: 'transparent !important',
background: 'transparent',
backgroundColor: 'transparent',
margin: 0,
padding: toolDisplayStyles.padding.collapsed,
borderRadius: 0,
@@ -255,7 +265,8 @@ export const toolDisplayStyles = {
getPopupStyles: () => ({
...typography.tool.popup,
background: 'transparent !important',
background: 'transparent',
backgroundColor: 'transparent',
margin: 0,
padding: toolDisplayStyles.padding.popup,
borderRadius: '0.75rem',
@@ -263,7 +274,8 @@ export const toolDisplayStyles = {
getPopupContainerStyles: () => ({
...typography.tool.popup,
background: 'transparent !important',
background: 'transparent',
backgroundColor: 'transparent',
margin: 0,
padding: toolDisplayStyles.padding.popupContainer,
borderRadius: '0.5rem',