CSCTF — Chat Shared Conversation To File

SkillDocs & knowledge

Convert ChatGPT, Gemini, Grok, and Claude share links to clean Markdown + HTML. Use when archiving AI conversations, preserving code fences, or publishing transcripts to GitHub Pages.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the CSCTF — Chat Shared Conversation To File skill

What this skill tells your AI

The instructions your AI receives, as published by dicklesworthstone/agent_flywheel_clawdbot_skills_and_integrations in skills/csctf/SKILL.md and read by ahel’s review.

Core Capability: Convert AI share links into clean Markdown + HTML with preserved code fences, stable filenames, and optional GitHub Pages publishing.

Quick Start

# Install
curl -fsSL https://raw.githubusercontent.com/Dicklesworthstone/chat_shared_conversation_to_file/main/install.sh | bash

# Convert any share link
csctf https://chatgpt.com/share/69343092-91ac-800b-996c-7552461b9b70

Output:

  • <conversation_title>.md — Clean Markdown with preserved code fences
  • <conversation_title>.html — Styled static HTML (zero JavaScript)

THE EXACT PROMPT — Convert Share Link

Convert this conversation to Markdown:

csctf <share-url>

# Example providers:
csctf https://chatgpt.com/share/69343092-91ac-800b-996c-7552461b9b70
csctf https://gemini.google.com/share/66d944b0e6b9
csctf https://grok.com/share/bGVnYWN5_d5329c61-f497-40b7-9472-c555fa71af9c
csctf https://claude.ai/share/549c846d-f6c8-411c-9039-a9a14db376cf

THE EXACT PROMPT — Publish to GitHub Pages

# Publish with defaults (creates repo if needed)
csctf <url> --publish-to-gh-pages --yes

# Save settings for future use
csctf <url> --publish-to-gh-pages --remember --yes

# Subsequent: just use --yes
csctf <url> --yes

# Custom repo
csctf <url> --publish-to-gh-pages \
  --gh-pages-repo myuser/my-chats \
  --gh-pages-branch main \
  --yes

THE EXACT PROMPT — Batch Archive

# Archive multiple conversations
for url in $URLS; do
  csctf "$url" --outfile ~/archive/ --quiet
done

# Markdown only (faster, smaller)
csctf <url> --md-only --quiet

# HTML only for embedding
csctf <url> --html-only --outfile site/chat.html

Supported Providers

ProviderURL PatternMethod
ChatGPTchatgpt.com/share/*Headless Chromium
Geminigemini.google.com/share/*Headless Chromium
Grokgrok.com/share/*Headless Chromium
Claudeclaude.ai/share/*Your Chrome session

Claude.ai Special Handling

Claude.ai uses Cloudflare protection. CSCTF handles this automatically:

  1. Copies your Chrome session cookies to a temporary profile
  2. Launches Chrome with remote debugging
  3. Extracts conversation via Chrome DevTools Protocol

Requirement: Chrome installed + logged into claude.ai


Essential Commands

FlagDescription
--outfile <path>Override output path
--md-onlySkip HTML output
--html-onlySkip Markdown output
--quietMinimal logging
--timeout-ms <ms>Navigation timeout (default: 60000)
--publish-to-gh-pagesPublish to GitHub Pages
--yesSkip confirmation prompts

Output Format

Markdown

# Conversation: <Title>

**Source:** https://chatgpt.com/share/...
**Retrieved:** 2026-01-08T15:30:00Z

## User

How do I sort an array in Python?

## Assistant

Here's how to sort:

```python
my_list.sort()

### HTML Features

- **Zero JavaScript** — Safe for any hosting
- **Inline CSS** — Light/dark mode via `prefers-color-scheme`
- **Syntax highlighting** — highlight.js themes inline
- **Table of contents** — Auto-generated from headings

---

## Filename Generation

"How to Build a REST API" → how_to_build_a_rest_api.md "Python Tips & Tricks!" → python_tips_tricks.md "File exists already" → file_exists_already_2.md


Rules: lowercase, non-alphanumerics → `_`, max 120 chars, collision suffix

---

## Performance

| Phase | Time |
|-------|------|
| First run (Chromium download) | 30-60s |
| Subsequent runs | 5-15s |
| Claude.ai (uses local Chrome) | 5-10s |

---

## Troubleshooting

| Symptom | Fix |
|---------|-----|
| "No messages found" | Link is private; verify public share |
| Bot detection | Retry; verify link in browser |
| Timeout | Raise `--timeout-ms 90000` |
| Publish fails (auth) | Ensure `gh auth status` passes |
| Claude.ai Cloudflare | Complete verification in Chrome window |

---

## Installation

```bash
# One-liner
curl -fsSL https://raw.githubusercontent.com/Dicklesworthstone/chat_shared_conversation_to_file/main/install.sh | bash

# Pin version
VERSION=v1.0.0 curl -fsSL .../install.sh | bash

# Verify checksum
curl -fsSL .../install.sh | bash -s -- --verify

References

TopicReference
Full command referenceCOMMANDS.md
Processing algorithmsALGORITHMS.md
GitHub Pages setupGITHUB-PAGES.md

Signals

GitHub stars
73
Forks
16
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
csctf
Source
github.com/dicklesworthstone/agent_flywheel_clawdbot_skills_and_integrations