Overview
- Skill Key
- hajekt2/x-grok-to-obsidian
- Author
- hajekt2
- Source Repo
- openclaw/skills
- Version
- -
- Source Path
- skills/hajekt2/x-grok-to-obsidian
- Latest Commit SHA
- 5dee8dde68c38edd5fe7834056ec7d3c9615e870
Export Grok conversations from X (x.com) via browser-network capture and convert them into Obsidian-ready Markdown files. Use when a user wants to back up Grok chat history, preserve User vs Grok turns, and generate Markdown notes with YAML frontmatter (URL, created) from captured JSON.
Stars
0
Installs
0
Status
ACTIVE
Visibility
PUBLIC
直接复制以下提示词,发送给你的 AI 助手即可完成安装。
请先检查是否已安装 SkillHub 商店,若未安装,请根据 https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/skillhub.md 安装 SkillHub 商店,然后安装 x-grok-to-obsidian 技能。 若已安装,则直接安装 x-grok-to-obsidian 技能。
Export Grok conversations in two stages. ## Stage 1 — Capture conversation JSON from X/Grok Run the browser script in Chrome DevTools Console on `https://x.com/i/grok` while logged in. Use script: `scripts/export_grok_items_capture.js` Behavior: - Intercept only `GrokConversationItemsByRestId` responses (`fetch` + `XHR`) - Load chat history with multi-pass scrolling - Open each discovered conversation to trigger backend responses - Save one JSON file with conversation metadata + ordered item payload Quick settings (edit at top of script before run): - `INDEX_PASSES` (default `3`) - `CAPTURE_PASSES` (default `3`) - `MAX_CHATS` (`null` = all, or number for test) Output: - `grok-network-capture-<timestamp>.json` downloaded by browser ## Stage 2 — Convert JSON to Obsidian Markdown Run Python converter locally: ```bash python3 scripts/convert_grok_capture_to_md.py \ --input /path/to/grok-network-capture-*.json \ --out /path/to/output-folder ``` Converter defaults: - Frontmatter fields: `URL`, `created` - Body starts immediately with `# <title>` (no blank line before header) - Turn headings: `## User` / `## Grok` (no numbering) - Turn separator: `---` - Turn order: reverse API item order (API is newest-first) - Reasoning/deepsearch omitted by default Useful flags: - `--include-reasoning` include `thinking_trace` blocks - `--separator "---"` customize turn separator - `--overwrite` overwrite same-title files instead of creating `Title 2.md` ## Notes - Prefer several index/capture passes because X history rendering is lazy and inconsistent. - If discovered chat count is unexpectedly low, re-run Stage 1 with higher pass counts. - Keep scripts generic; avoid user-specific absolute paths.
# x-grok-to-obsidian Reusable OpenClaw skill to export Grok conversations from X (x.com) and convert them into Obsidian-ready Markdown files. ## What it does Two-stage workflow: 1. **Capture JSON from X/Grok** in browser (network-level capture of `GrokConversationItemsByRestId`). 2. **Convert captured JSON to Markdown** with role-separated turns (`User` / `Grok`) and Obsidian frontmatter. ## Skill structure - `SKILL.md` — skill metadata + usage instructions - `scripts/export_grok_items_capture.js` — browser capture script (run in DevTools) - `scripts/convert_grok_capture_to_md.py` — JSON → Markdown converter ## Quick usage ### 1) Capture from X/Grok - Open `https://x.com/i/grok` while logged in. - Open browser DevTools Console. - Paste/run `scripts/export_grok_items_capture.js`. - Download output JSON: `grok-network-capture-<timestamp>.json`. ### 2) Convert to Markdown ```bash python3 scripts/convert_grok_capture_to_md.py \ --input /path/to/grok-network-capture-*.json \ --out /path/to/output-folder ``` ## Converter defaults - Frontmatter: `URL`, `created`, optional `source_tweets` - Turn headings: `## User` / `## Grok` - Turn separator: `---` - API item order reversed to conversation order - Reasoning/deepsearch excluded by default ## Notes - X history loading is lazy; multi-pass discovery improves completeness. - This project intentionally avoids shipping personal data and auth artifacts. ## Troubleshooting / operational notes ### 1) History count is too low (e.g., ~166 only) - Increase discovery passes in `export_grok_items_capture.js` (`INDEX_PASSES`). - Keep the tab focused while indexing. - Re-run once; X history rendering is inconsistent and can return different visible subsets between runs. ### 2) Script hangs during capture loop - The script uses per-conversation timeout watchdogs to avoid infinite waits. - If a specific chat times out, it is retried in later passes. - Blocking dialogs are auto-closed during waits. ### 3) 429 Too Man...
human-pages-ai
Search and hire real humans for tasks — photography, delivery, research, and more
zseven-w
Reusable skill templates for OpenClaw AI agents. Templates for API integration, data processing, web scraping, CLI tools, and file processing.
capt-marbles
Attio CRM integration for managing companies, people, deals, notes, tasks, and custom objects. Use when working with Attio CRM data, searching contacts, managing sales pipelines, adding notes to records, creating tasks, or syncing prospect information.
capt-marbles
Web scraping and crawling with Firecrawl API. Fetch webpage content as markdown, take screenshots, extract structured data, search the web, and crawl documentation sites. Use when the user needs to scrape a URL, get current web info, capture a screenshot, extract specific data from pages, or crawl docs for a framework/library.
caqlayan
Tweet Processor Skill
carlosarturoleon
Connect to Windsor.ai MCP for natural language access to 325+ data sources including Facebook Ads, GA4, HubSpot, Shopify, and more.