docx
무료Extract text from Microsoft Word documents
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Extract conversation turns from AI session history files (.jsonl)
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
설치 방법 보기설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
Extracts human-readable conversation turns from AI coding session history files
(.jsonl). Supports two formats:
~/.claude/projects/<hash>/<session-id>.jsonl){"role": ..., "content": ...} per-line format
used by OpenAI Codex and Cursor IDE sessionsFormat is detected automatically from the first parseable line.
Only substantive conversation turns are kept:
| Content type | Action |
|---|---|
| User text messages | Kept if ≥ 3 words |
| Assistant text responses | Kept if ≥ 20 words |
| Assistant thinking blocks | Skipped (internal reasoning, not final output) |
| Tool use / tool result blocks | Skipped (avoids leaking file contents or credentials) |
| Image / attachment blocks | Skipped |
Sub-agent scaffolding (isSidechain: true) | Skipped (internal sub-agent turns) |
| Session metadata lines | Skipped (permission-mode, file-history-snapshot, system, last-prompt) |
The extracted text is then passed through Synthadoc's standard pre-LLM source sanitizer (zero-width characters, bidi overrides, HTML comments, hidden CSS spans, base64 blobs, instruction-override phrases), exactly like PDF, DOCX, URL, and every other source type.
Each turn is labelled [USER] or [ASSISTANT] and separated by ---:
[USER]
How do I implement a sliding window algorithm?
---
[ASSISTANT]
A sliding window algorithm maintains a contiguous subarray (the "window") …
suggested_slugThe skill returns a suggested_slug in metadata derived from the session file's
modification time and the first substantive user message:
session-2026-07-15-how-do-i-implement-a-sliding
Sessions longer than 30 substantive turns are split into 30-turn chunks.
Each chunk is labelled with a ## Part N of M header so the downstream LLM
can process sections independently. The metadata dict includes chunk_total
when chunking occurs; single-chunk sessions (≤ 30 turns) are unchanged.
ExtractedContent..jsonl"claude session", "codex session", "cursor session",
"ai session", "session history"import asyncio
from synthadoc.skills.session.scripts.main import SessionSkill
skill = SessionSkill()
async def main():
result = await skill.extract("/path/to/session.jsonl")
print(result.text) # [USER]\n...\n\n---\n\n[ASSISTANT]\n...
print(result.metadata) # {"format": "claude_code", "turn_count": 42, "suggested_slug": "..."}
asyncio.run(main())
아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
Extract text from Microsoft Word documents
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Extract text from images using a vision LLM
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Ingest Markdown and plain text files
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Extract text from PDF documents
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Extract text from Microsoft PowerPoint presentations
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Fetch and extract text from web URLs
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.