Use this reference when updating the skill, adding manuals, refreshing official Xinje document metadata, or converting repeated problems into reusable knowledge.
This skill does not train itself in the background. Treat “self-learning” as a disciplined maintenance loop: record repeated failures, add scripts or references, validate, and update the working skill. Build a share .zip only when the user explicitly asks for a package.
xinje-official-document-catalog.md and the full CSV/JSON catalog before downloading files.known-ingestion-issues.md.SKILL.md reference map only with stable, high-value routes..zip share package after every edit. Rebuild it only when the user explicitly asks to package/share the current skill, then choose the version number from the accumulated changes.The Git repository is the release history for this skill. After every completed content, script, index, or source-coverage change:
git status.pwsh -File scripts/release_skill.ps1 from the repository root.SKILL.md version by 0.1 (1.5.0 -> 1.6.0 -> 1.7.0), stages the complete skill change set, creates a release commit, and pushes the current branch to origin.Do not run the release script when no skill files changed. A Git release does not imply a ZIP package: build the ZIP only when the user explicitly requests it.
Use these labels in coverage-map.md:
cataloged: official metadata is known; file is not downloaded.downloaded: source file is bundled, but not summarized enough to rely on directly.overview: full-manual table of contents and chapter map are distilled.focused: one or more task-oriented references are distilled for common workflows.detailed: the relevant chapters are summarized deeply enough for normal answering.complete: the whole manual is summarized into navigable references with source coverage notes.Do not call a PDF complete merely because it is bundled in assets/manuals/.
When adding a new manual PDF to assets/manuals/, do these in the same skill version:
source-index.md.coverage-map.md.assets/manuals/ and leave it as cataloged until needed.Useful scripts:
scripts/download_catalog_ids.py --catalog assets/catalogs/xinje-official-document-catalog.csv --output-dir assets/manuals --ids <id...> downloads official catalog entries with stable filenames.scripts/probe_pdf_manuals.py --manual-dir assets/manuals --output work/pdf_probe.md --pages 12 records page counts and frontmatter/table-of-contents text.scripts/search_pdf_keywords.py <pdf> <keyword...> locates page numbers before extracting a focused range.scripts/extract_pdf_pages.py <pdf> <start-page> <end-page> <output-md> extracts a focused page range into UTF-8 Markdown.scripts/build_pdf_search_index.py --manual-dir assets/manuals --output-db assets/indexes/xinje-manual-fulltext.sqlite --output-toc-json assets/indexes/xinje-manual-toc.json --output-toc-md references/manual-chapter-index.md builds the page-level full-text/TOC index after the manual set changes.scripts/search_xinje_manuals.py --index assets/indexes/xinje-manual-fulltext.sqlite <query> searches the index before falling back to a full PDF scan.Run:
& '<python.exe>' -X utf8 outputs\xinje-plc-programming\scripts\catalog_xinje_downloads.py --output-dir outputs\xinje-plc-programming\assets\catalogs
After refreshing:
xinje-official-document-catalog.md.source-index.md only for manuals actually bundled or used.If a user asks about a topic whose manual exists but is not yet distilled:
Use future-expansion-plan.md before downloading more files. The default next work is: