[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6ACEXE8ZGKFKKHX1CH8AVFS":3,"skill-same:01M6ACEXE8ZGKFKKHX1CH8AVFS":80},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":43,"commitSha":44,"skillDirectory":45,"forksCount":46,"repositoryHtmlUrl":47,"repositoryHomepageUrl":48,"ownerHtmlUrl":49,"ownerBlogUrl":50,"ownerDescription":6,"updatedAt":51,"install":52,"resources":65},"01M6ACEXE8ZGKFKKHX1CH8AVFS","metadata-schema",null,"Working with tika-metadata-schema, the build-gated registry of Tika metadata keys — regeneration after Property changes, gate tests, naming conventions, post-rename sweeps. Use when adding or renaming metadata keys or when the schema gate fails.","apache\u002Ftika","apache","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F47359?v=4","01M6AC83E6K4FDKK7HZ8WNMQKE","The Apache Software Foundation","01M6ACEMPJD6J74AGZBFFEGEYV",4145,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fapache\u002Ftika\u002Fblob\u002Fmain\u002F.skills\u002Fdevs\u002Fmetadata-schema\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37],"metadata","metadata schema","schema","when","registry","changes","naming conventions","keys","naming","with","post","tests","conventions","gated","rename","build","gate","use","tika","2026-11-10 10:12:30",false,"---\nname: metadata-schema\ndescription: >\n  Working with tika-metadata-schema, the build-gated registry of Tika\n  metadata keys — regeneration after Property changes, gate tests, naming\n  conventions, post-rename sweeps. Use when adding or renaming metadata keys\n  or when the schema gate fails.\n---\n\n\u003C!--\nLicensed to the Apache Software Foundation (ASF) under one or more\ncontributor license agreements.  See the NOTICE file distributed with\nthis work for additional information regarding copyright ownership.\nThe ASF licenses this file to You under the Apache License, Version 2.0\n(the \"License\"); you may not use this file except in compliance with\nthe License.  You may obtain a copy of the License at\n\n    http:\u002F\u002Fwww.apache.org\u002Flicenses\u002FLICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n-->\n\nLocal override: `$TIKA_SKILLS_LOCAL\u002Fmetadata-schema\u002FLOCAL.md` (default `~\u002F.tika-skills`),\nread after this file, wins on conflict.\n\n# Metadata Key Registry & Schema Skill\n\nWorking with `tika-metadata-schema` — the committed, build-gated registry of Tika's metadata keys.\nFile structure and the CLOSED\u002FOPEN\u002FTEMPLATE\u002FUNKNOWN classification are in that module's `README.md`;\nthis covers conventions, regeneration, and the traps.\n\n## The three registries\n\nUnder `tika-metadata-schema\u002Fsrc\u002Fmain\u002Fresources\u002Forg\u002Fapache\u002Ftika\u002Fmetadata\u002F`:\n\n- `metadata-keys.json` — closed set: every `Property` constant + the synthesized `tk:digest:*` cross-product.\n- `metadata-open-namespaces.json` — `KeyPrefix` prefixes for runtime-minted names (`html:`, `message:raw-header:`, `mdb-prop:`).\n- `metadata-key-fields.json` — TIKA-4797 `{class, field, key}` table for field-identity migration.\n\nCommitted on purpose: they are the reviewable audit trail of the key space (a rename or a dropped key\nshows up as a diff). Don't switch to build-time-only generation — that loses the review signal.\n\n## Regenerate (after adding\u002Fchanging a Property or KeyPrefix)\n\n```bash\ntika-metadata-schema\u002Fregen.sh\n```\n\nThis does the full sequence in one shot: `-am install` so newly added Property\u002FKeyPrefix\nclasses are on the scan classpath, regenerate all three registries via the forked-exec profile, print\na before\u002Fafter key-count check (catches an incomplete classpath scan), `git diff --stat` the\nregistries, then run the gate tests. Flags: `--skip-install` (only safe if nothing outside\n`tika-metadata-schema` itself changed since the last install) and `--skip-tests` for a faster inner\nloop. Then review the diff and commit the Property change and the regenerated JSON together.\n\nThe manual sequence the script replaces, for reference or if you need to run a step in isolation:\n\n```bash\n# if parser Property classes changed, install them first so the scan sees them:\n.\u002Fmvnw -Pfast -DskipTests -pl tika-metadata-schema -am install -Dmaven.repo.local=$(pwd)\u002F.local_m2_repo\n# regenerate all three:\n.\u002Fmvnw -pl tika-metadata-schema -Pregen-metadata-schema process-classes -Dmaven.repo.local=$(pwd)\u002F.local_m2_repo\n```\n\n**Trap — never use `exec:java`.** `SchemaGenerator` scans `java.class.path`, force-loads Property\nclasses, and swallows load failures. `exec:java` runs in-process on Maven's classpath → finds zero\nkeys → emits a near-empty registry that exits 0 and *passes* `MetadataNoUnderscoreTest`. The\n`-Pregen-metadata-schema` profile uses the forking `exec` goal (`\u003Cclasspath\u002F>`) for a real child-JVM\nclasspath. A hand-rolled `java -cp` also works, but the full repo classpath (~4000 jars) overflows\nthe 128 KB arg limit — use the profile.\n\n**Trap — incomplete classpath drops keys silently.** Always validate: `git diff` should show only the\nintended change (a big key-count drop = classes failed to load), and `MetadataSchemaTest` regenerates\nunder the full test classpath and asserts a byte-match — the definitive completeness check.\n\n## Gate tests (run WITHOUT `-Pfast`, which skips execution)\n\n```bash\n.\u002Fmvnw -pl tika-metadata-schema test -Dmaven.repo.local=$(pwd)\u002F.local_m2_repo\n```\n\n- `MetadataSchemaTest` \u002F `MetadataFieldTableTest` — regenerate in-memory, assert committed files match.\n- `MetadataNoUnderscoreTest` — no Tika-coined key\u002Fprefix may contain `_`. Scans the JSON, so it\n  reflects the *registry*, not live code — regenerate before trusting it.\n- `MetadataKeyValidatorTest` — registry-driven CLOSED\u002FOPEN\u002FTEMPLATE\u002FUNKNOWN classifier.\n- `MetadataCoverageTest` — fails if a scanned module's keys are neither in scope nor listed out-of-scope.\n\nFailures with stale `X-TIKA:`\u002Funderscore\u002F`SHA256` keys usually mean *regenerate*, not edit code.\n\n## Naming conventions (frozen for 4.0, TIKA-4794)\n\n- All keys are `Property` constants — no bare `String` keys (`metadata-string-keys.json` retired).\n  Sole exception: `TikaCoreProperties.EMBEDDED_RESOURCE_TYPE_KEY`, an internal building block\n  that constructs the `Property` name for `EMBEDDED_RESOURCE_TYPE` — not an independent key.\n- Tika-coined prefix is `tk:` (`X-TIKA:` is legacy); kebab-case, no underscores.\n- External-standard names verbatim, *including* the standard's prefix: `dc:`, `xmp:`, `cp:`, `extended-properties:`.\n- HTTP has no namespace → `Content-Type`, `Content-Encoding`, `Location` stay bare (no `http:`).\n- Tika-coined message keys *do* get a namespace: `message:`, `multipart:`.\n- HttpHeaders keys are SIMPLE — Content-Type is not a bag; parsers use `set()`, not `add()`.\n- Digest keys use the JCA name via `DigestDef.getJavaName()`: `tk:digest:SHA-256`, `SHA3-256` (not\n  `SHA256`\u002F`SHA3_256`). Config *input* still takes the enum name (`\"SHA256\"`); only the output key changes.\n\n## After a rename: sweep for stale key literals\n\nThe compiler won't catch `metadata.get(\"Message-From\")`. Grep the whole repo for old strings and\nprefer replacing them with the constant, so the next rename fails to compile instead of at test time:\n\n```bash\ngrep -rn '\"Message-' --include=*.java . | grep -v \u002Ftarget\u002F\ngrep -rn 'tk:digest:SHA[0-9]' --include=*.java . | grep -v \u002Ftarget\u002F\n```\n\n## XML comments can't contain `--`\n\nA double hyphen in an XML comment makes the POM non-parseable and breaks the module build. Reword.\n","\u003C!--\nLicensed to the Apache Software Foundation (ASF) under one or more\ncontributor license agreements.  See the NOTICE file distributed with\nthis work for additional information regarding copyright ownership.\nThe ASF licenses this file to You under the Apache License, Version 2.0\n(the \"License\"); you may not use this file except in compliance with\nthe License.  You may obtain a copy of the License at\n\n    http:\u002F\u002Fwww.apache.org\u002Flicenses\u002FLICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n-->\n\nLocal override: `$TIKA_SKILLS_LOCAL\u002Fmetadata-schema\u002FLOCAL.md` (default `~\u002F.tika-skills`),\nread after this file, wins on conflict.\n\n# Metadata Key Registry & Schema Skill\n\nWorking with `tika-metadata-schema` — the committed, build-gated registry of Tika's metadata keys.\nFile structure and the CLOSED\u002FOPEN\u002FTEMPLATE\u002FUNKNOWN classification are in that module's `README.md`;\nthis covers conventions, regeneration, and the traps.\n\n## The three registries\n\nUnder `tika-metadata-schema\u002Fsrc\u002Fmain\u002Fresources\u002Forg\u002Fapache\u002Ftika\u002Fmetadata\u002F`:\n\n- `metadata-keys.json` — closed set: every `Property` constant + the synthesized `tk:digest:*` cross-product.\n- `metadata-open-namespaces.json` — `KeyPrefix` prefixes for runtime-minted names (`html:`, `message:raw-header:`, `mdb-prop:`).\n- `metadata-key-fields.json` — TIKA-4797 `{class, field, key}` table for field-identity migration.\n\nCommitted on purpose: they are the reviewable audit trail of the key space (a rename or a dropped key\nshows up as a diff). Don't switch to build-time-only generation — that loses the review signal.\n\n## Regenerate (after adding\u002Fchanging a Property or KeyPrefix)\n\n```bash\ntika-metadata-schema\u002Fregen.sh\n```\n\nThis does the full sequence in one shot: `-am install` so newly added Property\u002FKeyPrefix\nclasses are on the scan classpath, regenerate all three registries via the forked-exec profile, print\na before\u002Fafter key-count check (catches an incomplete classpath scan), `git diff --stat` the\nregistries, then run the gate tests. Flags: `--skip-install` (only safe if nothing outside\n`tika-metadata-schema` itself changed since the last install) and `--skip-tests` for a faster inner\nloop. Then review the diff and commit the Property change and the regenerated JSON together.\n\nThe manual sequence the script replaces, for reference or if you need to run a step in isolation:\n\n```bash\n# if parser Property classes changed, install them first so the scan sees them:\n.\u002Fmvnw -Pfast -DskipTests -pl tika-metadata-schema -am install -Dmaven.repo.local=$(pwd)\u002F.local_m2_repo\n# regenerate all three:\n.\u002Fmvnw -pl tika-metadata-schema -Pregen-metadata-schema process-classes -Dmaven.repo.local=$(pwd)\u002F.local_m2_repo\n```\n\n**Trap — never use `exec:java`.** `SchemaGenerator` scans `java.class.path`, force-loads Property\nclasses, and swallows load failures. `exec:java` runs in-process on Maven's classpath → finds zero\nkeys → emits a near-empty registry that exits 0 and *passes* `MetadataNoUnderscoreTest`. The\n`-Pregen-metadata-schema` profile uses the forking `exec` goal (`\u003Cclasspath\u002F>`) for a real child-JVM\nclasspath. A hand-rolled `java -cp` also works, but the full repo classpath (~4000 jars) overflows\nthe 128 KB arg limit — use the profile.\n\n**Trap — incomplete classpath drops keys silently.** Always validate: `git diff` should show only the\nintended change (a big key-count drop = classes failed to load), and `MetadataSchemaTest` regenerates\nunder the full test classpath and asserts a byte-match — the definitive completeness check.\n\n## Gate tests (run WITHOUT `-Pfast`, which skips execution)\n\n```bash\n.\u002Fmvnw -pl tika-metadata-schema test -Dmaven.repo.local=$(pwd)\u002F.local_m2_repo\n```\n\n- `MetadataSchemaTest` \u002F `MetadataFieldTableTest` — regenerate in-memory, assert committed files match.\n- `MetadataNoUnderscoreTest` — no Tika-coined key\u002Fprefix may contain `_`. Scans the JSON, so it\n  reflects the *registry*, not live code — regenerate before trusting it.\n- `MetadataKeyValidatorTest` — registry-driven CLOSED\u002FOPEN\u002FTEMPLATE\u002FUNKNOWN classifier.\n- `MetadataCoverageTest` — fails if a scanned module's keys are neither in scope nor listed out-of-scope.\n\nFailures with stale `X-TIKA:`\u002Funderscore\u002F`SHA256` keys usually mean *regenerate*, not edit code.\n\n## Naming conventions (frozen for 4.0, TIKA-4794)\n\n- All keys are `Property` constants — no bare `String` keys (`metadata-string-keys.json` retired).\n  Sole exception: `TikaCoreProperties.EMBEDDED_RESOURCE_TYPE_KEY`, an internal building block\n  that constructs the `Property` name for `EMBEDDED_RESOURCE_TYPE` — not an independent key.\n- Tika-coined prefix is `tk:` (`X-TIKA:` is legacy); kebab-case, no underscores.\n- External-standard names verbatim, *including* the standard's prefix: `dc:`, `xmp:`, `cp:`, `extended-properties:`.\n- HTTP has no namespace → `Content-Type`, `Content-Encoding`, `Location` stay bare (no `http:`).\n- Tika-coined message keys *do* get a namespace: `message:`, `multipart:`.\n- HttpHeaders keys are SIMPLE — Content-Type is not a bag; parsers use `set()`, not `add()`.\n- Digest keys use the JCA name via `DigestDef.getJavaName()`: `tk:digest:SHA-256`, `SHA3-256` (not\n  `SHA256`\u002F`SHA3_256`). Config *input* still takes the enum name (`\"SHA256\"`); only the output key changes.\n\n## After a rename: sweep for stale key literals\n\nThe compiler won't catch `metadata.get(\"Message-From\")`. Grep the whole repo for old strings and\nprefer replacing them with the constant, so the next rename fails to compile instead of at test time:\n\n```bash\ngrep -rn '\"Message-' --include=*.java . | grep -v \u002Ftarget\u002F\ngrep -rn 'tk:digest:SHA[0-9]' --include=*.java . | grep -v \u002Ftarget\u002F\n```\n\n## XML comments can't contain `--`\n\nA double hyphen in an XML comment makes the POM non-parseable and breaks the module build. Reword.\n",{"name":5,"description":7},"main","9f8b48425fea3630020924f6ae96e98eabb9ce12",".skills\u002Fdevs\u002Fmetadata-schema",1037,"https:\u002F\u002Fgithub.com\u002Fapache\u002Ftika","https:\u002F\u002Ftika.apache.org\u002F","https:\u002F\u002Fgithub.com\u002Fapache","https:\u002F\u002Fwww.apache.org\u002F","2026-11-13 03:03:34",{"source":8,"skillName":5,"commands":53,"prompt":63,"zipAvailable":64},[54,57,60],{"tool":55,"command":56},"npx","npx skills add apache\u002Ftika --skill metadata-schema",{"tool":58,"command":59},"bunx","bunx skills add apache\u002Ftika --skill metadata-schema",{"tool":61,"command":62},"pnpm","pnpm dlx skills add apache\u002Ftika --skill metadata-schema","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fapache\u002Ftika\u002Fblob\u002Fmain\u002F.skills\u002Fdevs\u002Fmetadata-schema\u002FSKILL.md",true,[66,72,76],{"path":67,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":70,"sourceHtmlUrl":71},"references\u002Fharness-notes.md","REFERENCE","参考文档",14778,"https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot\u002Fblob\u002Fmain\u002Fskills\u002Fponder\u002Freferences\u002Fharness-notes.md",{"path":73,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":74,"sourceHtmlUrl":75},"references\u002Fperspectives.md",23722,"https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot\u002Fblob\u002Fmain\u002Fskills\u002Fponder\u002Freferences\u002Fperspectives.md",{"path":77,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":78,"sourceHtmlUrl":79},"references\u002Fprotocol.md",51676,"https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot\u002Fblob\u002Fmain\u002Fskills\u002Fponder\u002Freferences\u002Fprotocol.md",[81,121,146,173,198,223],{"skillNo":82,"name":83,"nameZh":6,"description":84,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":98,"publishedAt":38},"01M6ACFKZR081Z7QX5XB1ZA2R2","file-to-markdown","Turn almost any file into Markdown plus metadata — PDF, Office, HTML, email, archives, images, audio\u002Fvideo, 1000+ formats — powered by Apache Tika, either via the tika-app CLI (zero setup, one file) or a running tika-server (curl, warm process, many calls). Leads with rmeta (structured, embedded-item-aware output) as the default operation rather than flat concatenated text, since you can't tell whether a file has embedded content from its extension. Covers metadata-only triage, type and language detection, OCR, and output-size discipline for agent context. Use whenever a task involves reading the content of a file whose format you don't want to hand-parse.","https:\u002F\u002Fgithub.com\u002Fapache\u002Ftika\u002Fblob\u002Fmain\u002F.skills\u002Fusers\u002Ffile-to-markdown\u002FSKILL.md",[87,92,95],{"categoryNo":88,"categoryName":89,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000002","文档处理","SCENARIO","使用场景",{"categoryNo":93,"categoryName":94,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000016","图像与多媒体",{"categoryNo":96,"categoryName":97,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000023","Skill与智能体开发",[99,100,101,102,103,104,105,9,106,19,37,107,108,109,110,111,112,113,114,115,116,117,118,119,120],"file to markdown","file","markdown","PDF","cli","triage","setup","content","server","ocr","Video","Audio","text","discipline","only","images","default","either","app","you","hand","parse",{"skillNo":122,"name":123,"nameZh":6,"description":124,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":125,"categories":126,"keywords":131,"publishedAt":38},"01M6ACFHJR3612ZE6RNX1P5WG9","file-to-markdown-docker","Run Apache Tika as a Docker container when you need guaranteed OCR (scanned PDFs, images) or geospatial raster support with zero local install — `apache\u002Ftika:\u003Cversion>-full` bundles Tesseract, GDAL, ImageMagick, and fonts. Also covers the minimal image, port\u002Fvolume\u002Fmemory conventions, the path-identity mount gotcha, and how to confirm OCR actually ran rather than silently returning no text. Powered by Apache Tika. Use when a local `tika-app`\u002F`tika-server` doesn't have Tesseract installed, or you want a disposable, self-contained parsing environment. Companion to the `file-to-markdown` skill, which covers the parsing calls themselves once a server is up.","https:\u002F\u002Fgithub.com\u002Fapache\u002Ftika\u002Fblob\u002Fmain\u002F.skills\u002Fusers\u002Ffile-to-markdown-docker\u002FSKILL.md",[127,128],{"categoryNo":88,"categoryName":89,"taxonomyType":90,"taxonomyTypeDesc":91},{"categoryNo":129,"categoryName":130,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000011","运维与部署",[132,133,99,100,101,134,135,136,137,138,9,37,108,111,139,114,140,141,142,117,143,118,144,145,22],"docker","file to markdown docker","image","memory","support","identity","run","up","self","volume","local","how to","fonts","which",{"skillNo":147,"name":148,"nameZh":6,"description":149,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":150,"categories":151,"keywords":153,"publishedAt":38},"01M6ACFE1684DE184VE0D7PQVY","file-forensics","Examine what a file claims about itself and what it actually contains — powered by Apache Tika. True content-based type detection (extensions lie), provenance claims (authors, dates, creating application), revision and tamper signals (PDF incremental updates, tracked changes, hidden slides, zip integrity), hidden and embedded content (attachments, macros), risk indicators (PDF JavaScript actions, encryption), and content digests. Evidence gathering, not verdicts: Tika reports what the file asserts and what parsing observed; it does not attribute authorship or validate signatures. Use for triaging suspicious files, provenance questions, e-discovery-style review, or \"is this file what it claims to be.\"","https:\u002F\u002Fgithub.com\u002Fapache\u002Ftika\u002Fblob\u002Fmain\u002F.skills\u002Fusers\u002Ffile-forensics\u002FSKILL.md",[152],{"categoryNo":88,"categoryName":89,"taxonomyType":90,"taxonomyTypeDesc":91},[154,100,155,102,156,157,158,159,9,106,37,160,161,162,163,164,165,166,167,168,169,170,171,172],"file forensics","forensics","review","suspicious","javascript","validate","actions","encryption","risk","integrity","evidence","reports","files","signatures","signals","revision","zip","updates","claims",{"skillNo":174,"name":175,"nameZh":6,"description":176,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":177,"categories":178,"keywords":179,"publishedAt":38},"01M6ACFB92SPADF0FY4490B847","update-site-for-release","Update\u002Fpublish the Apache Tika website (tika-site SVN repo) for a release — step 17 of the Release Process. Handles the 4.x track (Changes page + aggregate javadoc + Antora docs branch) vs the 3.x maintenance track (full per-version apt docs + javadoc). Use for \"update the site\", \"publish the site for X.Y.Z\", \"the website part of the release\".","https:\u002F\u002Fgithub.com\u002Fapache\u002Ftika\u002Fblob\u002Fmain\u002F.skills\u002Fdevs\u002Fupdate-site-for-release\u002FSKILL.md",[],[180,181,182,183,184,185,186,9,37,187,188,189,190,191,192,36,193,194,195,196,24,197],"update","release","update site for release","site","for","docs","release process","website","apt","publish","page","branch","repo","version","maintenance","full","svn","track",{"skillNo":199,"name":200,"nameZh":6,"description":201,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":202,"categories":203,"keywords":210,"publishedAt":38},"01M6ACF9G52NYHXQ0BVSJ3VH6E","tika-eval-h2-query","Query the tika-eval H2 database directly for counts and joins the canned reports do not compute — connection gotchas, key tables, example queries. Use when the xlsx\u002Fsummary.md reports are not enough.","https:\u002F\u002Fgithub.com\u002Fapache\u002Ftika\u002Fblob\u002Fmain\u002F.skills\u002Fdevs\u002Ftika-eval-h2-query\u002FSKILL.md",[204,207],{"categoryNo":205,"categoryName":206,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000004","电子表格",{"categoryNo":208,"categoryName":209,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000010","后端与接口",[37,211,212,213,214,215,36,216,165,217,218,219,220,221,222,184,22],"tika eval h2 query","eval","query","xlsx","database","example","queries","do","summary","compute","connection","tables",{"skillNo":224,"name":225,"nameZh":6,"description":226,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":227,"categories":228,"keywords":229,"publishedAt":38},"01M6ACF7V56CCWHNVR614VBNX5","tika-eval-encoding-regression","Condensed tika-eval pattern for charset-detector regression hunts (\"A picks encoding X, B picks Y\") using one build and two configs — encoding-pair flip queries, OOV\u002Flanguageness\u002FFFFD signals, per-file detector attribution.","https:\u002F\u002Fgithub.com\u002Fapache\u002Ftika\u002Fblob\u002Fmain\u002F.skills\u002Fdevs\u002Ftika-eval-encoding-regression\u002FSKILL.md",[],[37,230,231,232,212,100,233,234,217,34,235,168,236,184],"tika eval encoding regression","encoding","regression","attribution","pair","pattern","detector"]