SDKs, command line and agent tools
Libraries for the file flows and HWP/HWPX API. They are generated from /openapi/files.json and released under the MIT license.
Where your files go
- By default the libraries call the hosted API: your files are sent to our server, processed in memory for that one request and not stored (privacy policy). One request is one file call (20 free a day with a key; 20 a day per IP address without one).
- Businesses can run the same API on their own computers; then files stay there. Contact us.
TypeScript / JavaScript
npm install toolsthatdontupload
import { TTDU } from 'toolsthatdontupload';
const t = new TTDU({ apiKey: process.env.TTDU_API_KEY }); // key optional
const md = await t.hwpToMarkdown({ name: 'notice.hwp', data: bytes });
Python
pip install toolsthatdontupload
from toolsthatdontupload import TTDU
t = TTDU()
r = t.run_flow({"schema": "ttdu.flow/v1", "steps": [{"tool": "pdf.merge", "scope": "all", "options": {}}]}, ["a.pdf", "b.pdf"])
r["files"][0].save(".")
Command line
npm install -g ttdu-files
ttdu-files flow merge.json a.pdf b.pdf --out results
ttdu-files hwp markdown notice.hwp > notice.mdThe command prints a one-line notice that files are sent to the hosted API.
Agent frameworks
ttdu-agent-tools adds three tools (ttdu_run_flow, ttdu_hwp_to_markdown, ttdu_hwp_to_docx) for the Vercel AI SDK and LangChain.js (npm), and for LlamaIndex and LangChain (PyPI). Agents pass file paths; results are saved to a folder you choose, and allowDir limits which folder may be read. For AI assistants, the MCP server offers the same tools.
Checked
Every library returns the same files byte for byte (sha256) for the same input: a PDF merge, HWPX to Markdown and HWPX to DOCX.