Skip to main content

Export all VS Code GitHub Copilot Chat conversations to JSON and Markdown.

Project description

copilotexport

Export all of your VS Code GitHub Copilot Chat conversations — including full tool-call history — to JSON and Markdown. Mirrors the layout of ChatGPT and Claude exports.

Installation

pip install copilotexport

Usage

CLI

# Default: bundle every Copilot session into ./CopilotForAGiXT.zip,
# ready to upload to AGiXT (Conversations sidebar -> Import).
copilotexport

# Write the zip somewhere else
copilotexport --out ~/CopilotForAGiXT.zip

# Custom source workspaceStorage directory
copilotexport --src /path/to/Code/User/workspaceStorage

# Full human-browseable export tree (raw JSON + Markdown + index +
# CopilotExport.zip) — slower, useful for grepping / archiving.
copilotexport --full
copilotexport --full --out ~/my-export
copilotexport --full --no-markdown   # skip Markdown rendering (much faster)
copilotexport --full --no-zip        # skip CopilotExport.zip
copilotexport --full --no-raw        # skip raw VS Code JSON copies

Importing into AGiXT

The default mode writes a zip containing a single conversations.json — a JSON array of raw VS Code session dicts. Upload it through the Import Conversations control in the AGiXT web UI, or POST it directly:

curl -F file=@CopilotForAGiXT.zip -F agent_name=XT \
     -H "Authorization: $JWT" \
     http://localhost:7437/v1/conversation/import

AGiXT detects the format as copilot, prefixes imported conversations with [Copilot], preserves each conversation's original timestamps, and renders Copilot tool invocations / thinking blocks as [SUBACTIVITY] entries in the chat UI.

Python API

from copilotexport import export, default_workspace_storage
from pathlib import Path

summary = export(
    src=default_workspace_storage(),
    out=Path("_copilot"),
    write_markdown=True,
    make_zip=True,
    copy_raw=True,
)
print(summary)

Output layout

_copilot/
├── export_info.json                         # run summary
├── index.json                               # flat metadata for all sessions
├── workspaces.json                          # wsHash → folder URI map
├── sessions/
│   └── <workspace_label>/
│       └── <sessionId>.json                 # verbatim VS Code session file
└── markdown/
    └── <workspace_label>/
        └── <YYYY-MM-DD>_<title>_<id8>.md   # human-readable transcript

Each Markdown transcript includes:

  • Session metadata (title, session ID, timestamps, model, agent)
  • User messages
  • Assistant responses with prose rendered inline
  • Tool calls rendered as structured blocks showing the tool name, request summary, result summary, and any file paths touched

Platform support

VS Code's workspaceStorage is auto-detected on Linux, macOS, and Windows.

OS Default path
Linux ~/.config/Code/User/workspaceStorage
macOS ~/Library/Application Support/Code/User/workspaceStorage
Windows %APPDATA%\Code\User\workspaceStorage

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

copilotexport-0.0.3.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

copilotexport-0.0.3-py3-none-any.whl (12.6 kB view details)

Uploaded Python 3

File details

Details for the file copilotexport-0.0.3.tar.gz.

File metadata

  • Download URL: copilotexport-0.0.3.tar.gz
  • Upload date:
  • Size: 12.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for copilotexport-0.0.3.tar.gz
Algorithm Hash digest
SHA256 3faaa08b59d7ed4af082b985ecb21b05895c5f60d96ecd765b0995cd0b969b7e
MD5 758ae743577c6e4d68b0d0d625cb8d26
BLAKE2b-256 e257a7fe14d032df99034e119dcf2aa37a07f213b364dedadc390ac7132f6896

See more details on using hashes here.

File details

Details for the file copilotexport-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: copilotexport-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 12.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for copilotexport-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 32d0428738d1b76145b1b668f711e22be72ca62d66ead0ae289cd6c67310a8ae
MD5 b2f776d8c913c297d55f6ef756c17c04
BLAKE2b-256 091a7fe4334c44c8733d261e6774e4b45938bf85de2d599fd347cd24de531629

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page