feat(raw): raw derive turns Office files and mail into a folder with the original and a derived text
CI / verify (push) Successful in 6m44s
CI / pwsh (push) Successful in 2m23s
Release / release (push) Successful in 34s
Release / wiki-mirror (push) Skipped

Adds the import-filter registry (tools/chemenu/filters), the raw derive command with folder form,
path-budget and name checks, DOCX/PPTX/XLSX and EML filters, the pending and accept hints, the
wiki-ingest skill step and the raw/CONTRACT.md section. First of three cuts; containers and
PDF/MSG follow.

Files changed:
- CHANGES.md
- VERSION
- docs/how-to/ingest-a-source.md
- docs/reference/commands/README.md
- docs/reference/commands/raw-material-and-uploads.md
- instructions/wiki-ingest/SKILL.md
- raw/CONTRACT.md
- tools/CONTRACT.md
- tools/README.md
- tools/chemenu/cli_contract.py
- tools/chemenu/commands/raw_cmd.py
- tools/chemenu/filters/__init__.py
- tools/chemenu/filters/html_page.py
- tools/chemenu/filters/mail.py
- tools/chemenu/filters/ooxml.py
- tools/chemenu/tests/test_raw_derive.py
- tools/chemenu/web_capture.py

Co-Authored-By: Claude Code <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
This commit is contained in:
torbenandClaude Code committed 2026-10-08 12:12:31 +02:00
1 parent 765ebe97d7
commit 9c0bb6bfbf
17 files changed
+2304 -17

No files matched your search

+4
View File
@@ -16,6 +16,10 @@ pick a directory:
- **A web page** needs no download of your own. Name the URL to the agent, and
`tools/wikitool raw fetch` puts two files into `incoming/`: the HTML exactly as received, and a
text derived from it with a header recording where and when it was fetched.
- **A document that is not text** - a Word, PowerPoint or Excel file, or a mail - is put into
`incoming/` as it is. `tools/wikitool raw derive incoming/<file>` turns it into a folder with the
untouched original and a readable text beside it, with a header saying how it was made. The
folder is accepted whole; the agent runs this itself when it meets such a file.
- **A page behind a paywall or a login** is saved from your browser into `incoming/`, HTML only. The
agent derives the same text from that file with `raw fetch --html`.