SlashCoded Observer observes coding activity in VS Code and turns it into local reporting data. It can also integrate with SlashCoded Desktop, where the extension acts as an activity observer and sends events to the desktop app's local ingest service.
The extension can also run on its own. If SlashCoded Desktop is not installed, SlashCoded stores activity locally and shows it in the built-in dashboard. There is no cloud upload path in this extension.
SlashCoded is a fork of the original work by LiuYue (hangxingliu). This version expands observing beyond editor activity with terminal and AI chat detection, including GitHub Copilot, Codex, Claude, and other focused AI chat panels.
Measured Activities
SlashCoded detects the active work mode in VS Code and records the following activity types:
- Reading: a file is open and focused in the editor
- Writing: a focused editor file is actively being edited
- Terminal: the integrated terminal is focused
- AI chat: an AI chat panel is focused
- Idle: the VS Code window is not focused
- AFK: VS Code has had no user activity for the configured idle period
Highlights:
- Observes terminal usage, AI chat conversations, and reading vs writing inside VS Code
- Shows the active mode and upload queue in the status bar
- Stores local activity history when SlashCoded Desktop is not installed
- Opens a built-in local dashboard for standalone use
- Uploads events to SlashCoded Desktop when its local API is discovered
Screenshots
Built-In Dashboard
![]()
SlashCoded Desktop
![]()
Features
- Status bar with exclusive mode and upload queue insights
- Exclusive modes for coding, observing, terminal, chat, and AFK
- AFK detection with automatic pause/resume
- Terminal activity observing with command execution timelines
- AI chat observing across providers with context-key heuristics and focus-aware detection
- Built-in fallback summary dashboard grouped by activity, repository, repository branch, and language
- Desktop discovery, standalone local storage, and upload timeout controls
Useful Commands
SlashCoded: Show Local Reportopens the built-in local summary dashboardSlashCoded: Show Sync Statusshows Desktop connectivity, queue depth, and maintenance actionsSlashCoded: Import Local History into Desktopmoves local-only fallback history into the upload queueSlashCoded: Show Output Channelopens the extension log/output stream
Manually Flush The Upload Queue
If uploads get stuck and the status bar shows a growing queue count, you can force a retry:
- Click the status bar item, or
- Run
SlashCoded: Show Sync Statusand chooseForce upload queued events now
Quick Start
- Install the extension from the Marketplace or a VSIX.
- If SlashCoded Desktop is installed, start it so the extension can discover the local API.
- If SlashCoded Desktop is not installed, use
SlashCoded: Show Local Reportfor the built-in local dashboard. - To import standalone history into Desktop later, run
SlashCoded: Import Local History into Desktop. - Use
SlashCoded: Show Sync Statusto confirm Desktop discovery.
Configuration
Settings are under Preferences -> Settings -> SlashCoded:
slashCoded.storageMode:autouses SlashCoded Desktop when detected and local history otherwise;standalonealways uses the built-in local dashboardslashCoded.showStatus: show or hide the status bar itemslashCoded.shouldTrackTerminal: include terminal activityslashCoded.shouldTrackAIChat: include AI chat activityslashCoded.afkEnabled: pause or classify observing when VS Code is idleslashCoded.uploadTimeoutMs: local Desktop API upload timeout in millisecondsslashCoded.desktopDiscoveryTimeoutMs: local Desktop discovery timeout in milliseconds
SlashCoded Desktop
SlashCoded Desktop is optional. The extension works without it by storing activity locally and serving the built-in dashboard.
- Install SlashCoded Desktop from https://lundholm.io/projects/slashcoded?ref=vscodeext.
- Start the desktop app before launching VS Code so the extension discovers it automatically.
- Use
SlashCoded: Show Sync Statusif Desktop starts after VS Code. - To import standalone history into Desktop, run
SlashCoded: Import Local History into Desktop.
Development
This repo targets Node.js 22.x for building and packaging.
- Use Node 22, for example with
nvm use. - Install dependencies with
npm install. - Run tests with
npm run test:node. - Package with
npm run package.
The package script creates SlashCoded-VSCode-Extension.x.x.x.vsix in the repo root.
Credits
This project is a fork of the original work by LiuYue (hangxingliu).
- Extension code and server scripts are licensed under GPL-3.0
- Third-party code keeps the license information in its source files