X Grok to Obsidian

v0.1.0

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 Gr...

0· 374·0 current·0 all-time
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
medium confidence
Purpose & Capability
The name/description match the included assets: a browser DevTools capture script that intercepts GrokConversationItemsByRestId responses and a Python converter that turns the captured JSON into Obsidian-ready Markdown. No unrelated binaries, env vars, or services are requested.
Instruction Scope
SKILL.md tells the agent/user to paste and run the provided export_grok_items_capture.js in the DevTools console while logged in and then run the local Python script. The browser script intercepts fetch/XHR for a specific GraphQL response type, navigates the SPA (history.pushState / clicking), stores checkpoints in localStorage, and downloads a JSON capture. All of these actions are consistent with the stated capture purpose. Caveat: running arbitrary third-party JS in your console grants that code access to whatever the page's JavaScript environment exposes (DOM, localStorage, in-page JavaScript objects and responses). The script also persists captured checkpoints in localStorage, which may retain sensitive content until cleared.
Install Mechanism
No install steps or external downloads are declared; this is an instruction-only skill with two included scripts. That minimizes installer risk. Files are run by the user (paste into console / run Python locally).
Credentials
The skill requests no environment variables or credentials. It does require you be logged into X in the browser to capture responses — which is appropriate for capturing your Grok chats. The script does not declare or require unrelated secrets. Note that the captured JSON will contain the conversation content (including optional thinking_trace blocks) and should be protected accordingly.
Persistence & Privilege
The script writes checkpoints into browser localStorage under a clearly named key (CHECKPOINT_KEY) and is designed to clear them on successful completion. It does not request always:true or system-wide privileges. Still, localStorage persistence means captured content may remain in your browser profile until explicitly cleared; use a disposable profile or clear the checkpoint key after use if desired.
Assessment
This skill is coherent: the capture script intercepts only a specific Grok API response, and the Python converter formats that JSON into Markdown. However, you must be careful before pasting/running third‑party JavaScript in your browser console: that JS runs with the page's JavaScript privileges and can read DOM state, in-page data, and localStorage. Before running: - Review the full export_grok_items_capture.js content yourself (or have someone you trust do so). Ensure the final part of the script only triggers a local download (Blob) rather than POSTing to any remote endpoint. - Prefer running the capture in a dedicated browser profile or temporary session that contains only the account you want to export. This limits exposure of other cookies/storage/credentials. - Be aware the capture JSON contains your conversation contents and may include 'thinking_trace' (model reasoning). Use the converter without --include-reasoning by default unless you explicitly want internal traces. - After a completed run, check and remove the localStorage checkpoint key (CHECKPOINT_KEY) if you don't want the capture persisted in your profile; the README says the script clears it on success but verify manually. - If you are uncomfortable with running the JS in a logged-in live profile, consider inspecting the script and simulating network responses or using a controlled environment (separate VM/browser profile). If you want me to double-check the very end of the capture script (download/exfil logic) or scan for any network POSTs to external hosts, paste the remainder of the file here and I will review that section specifically.

Like a lobster shell, security has layers — review code before you run it.

latestvk977kynwcnperdazwpg5xeemt581w5rr

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

Comments