chaffjs 0.25.0 → 0.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +179 -42
- package/dist/adapter-import.d.ts +2 -0
- package/dist/adapter-import.d.ts.map +1 -0
- package/dist/adapter-import.js +11 -0
- package/dist/adapter-import.js.map +1 -0
- package/dist/adapter-load.d.ts.map +1 -1
- package/dist/adapter-load.js +2 -9
- package/dist/adapter-load.js.map +1 -1
- package/dist/ai-score/human-shares.d.ts +4 -0
- package/dist/ai-score/human-shares.d.ts.map +1 -0
- package/dist/ai-score/human-shares.js +205 -0
- package/dist/ai-score/human-shares.js.map +1 -0
- package/dist/ai-score/lint-line.d.ts +4 -0
- package/dist/ai-score/lint-line.d.ts.map +1 -0
- package/dist/ai-score/lint-line.js +9 -0
- package/dist/ai-score/lint-line.js.map +1 -0
- package/dist/ai-score/of-document.d.ts +7 -0
- package/dist/ai-score/of-document.d.ts.map +1 -0
- package/dist/ai-score/of-document.js +40 -0
- package/dist/ai-score/of-document.js.map +1 -0
- package/dist/ai-score/render.d.ts +24 -0
- package/dist/ai-score/render.d.ts.map +1 -0
- package/dist/ai-score/render.js +100 -0
- package/dist/ai-score/render.js.map +1 -0
- package/dist/ai-score/score.d.ts +77 -0
- package/dist/ai-score/score.d.ts.map +1 -0
- package/dist/ai-score/score.js +52 -0
- package/dist/ai-score/score.js.map +1 -0
- package/dist/ai-score/signals.d.ts +19 -0
- package/dist/ai-score/signals.d.ts.map +1 -0
- package/dist/ai-score/signals.js +30 -0
- package/dist/ai-score/signals.js.map +1 -0
- package/dist/ai-score/text.d.ts +37 -0
- package/dist/ai-score/text.d.ts.map +1 -0
- package/dist/ai-score/text.js +59 -0
- package/dist/ai-score/text.js.map +1 -0
- package/dist/ai-score/view.d.ts +5 -0
- package/dist/ai-score/view.d.ts.map +1 -0
- package/dist/ai-score/view.js +19 -0
- package/dist/ai-score/view.js.map +1 -0
- package/dist/backends/anthropic.d.ts +0 -1
- package/dist/backends/anthropic.d.ts.map +1 -1
- package/dist/backends/anthropic.js +0 -1
- package/dist/backends/anthropic.js.map +1 -1
- package/dist/backends/default-model.d.ts +3 -0
- package/dist/backends/default-model.d.ts.map +1 -0
- package/dist/backends/default-model.js +5 -0
- package/dist/backends/default-model.js.map +1 -0
- package/dist/backends/openai.d.ts +0 -1
- package/dist/backends/openai.d.ts.map +1 -1
- package/dist/backends/openai.js +0 -1
- package/dist/backends/openai.js.map +1 -1
- package/dist/browser/adapter-import.d.ts +2 -0
- package/dist/browser/adapter-import.d.ts.map +1 -0
- package/dist/browser/adapter-import.js +17 -0
- package/dist/browser/adapter-import.js.map +1 -0
- package/dist/browser/bounded-match.d.ts +3 -0
- package/dist/browser/bounded-match.d.ts.map +1 -0
- package/dist/browser/bounded-match.js +4 -0
- package/dist/browser/bounded-match.js.map +1 -0
- package/dist/browser/check-text.d.ts +43 -0
- package/dist/browser/check-text.d.ts.map +1 -0
- package/dist/browser/check-text.js +50 -0
- package/dist/browser/check-text.js.map +1 -0
- package/dist/browser/detectors.d.ts +4 -0
- package/dist/browser/detectors.d.ts.map +1 -0
- package/dist/browser/detectors.js +22 -0
- package/dist/browser/detectors.js.map +1 -0
- package/dist/browser/package-files.d.ts +5 -0
- package/dist/browser/package-files.d.ts.map +1 -0
- package/dist/browser/package-files.js +8 -0
- package/dist/browser/package-files.js.map +1 -0
- package/dist/browser/path.d.ts +9 -0
- package/dist/browser/path.d.ts.map +1 -0
- package/dist/browser/path.js +70 -0
- package/dist/browser/path.js.map +1 -0
- package/dist/browser/working-dir.d.ts +2 -0
- package/dist/browser/working-dir.d.ts.map +1 -0
- package/dist/browser/working-dir.js +3 -0
- package/dist/browser/working-dir.js.map +1 -0
- package/dist/browser-files.d.ts +21 -0
- package/dist/browser-files.d.ts.map +1 -0
- package/dist/browser-files.js +65 -0
- package/dist/browser-files.js.map +1 -0
- package/dist/browser.d.ts +9 -0
- package/dist/browser.d.ts.map +1 -0
- package/dist/browser.js +13 -0
- package/dist/browser.js.map +1 -0
- package/dist/capitals-with-small.d.ts +8 -0
- package/dist/capitals-with-small.d.ts.map +1 -0
- package/dist/capitals-with-small.js +20 -0
- package/dist/capitals-with-small.js.map +1 -0
- package/dist/cli-text.d.ts.map +1 -1
- package/dist/cli-text.js +2 -0
- package/dist/cli-text.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +4 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/ai-score.d.ts +8 -0
- package/dist/commands/ai-score.d.ts.map +1 -0
- package/dist/commands/ai-score.js +59 -0
- package/dist/commands/ai-score.js.map +1 -0
- package/dist/commands/document-commands.d.ts.map +1 -1
- package/dist/commands/document-commands.js +2 -0
- package/dist/commands/document-commands.js.map +1 -1
- package/dist/config/by-path-problems.d.ts +5 -0
- package/dist/config/by-path-problems.d.ts.map +1 -0
- package/dist/config/by-path-problems.js +11 -0
- package/dist/config/by-path-problems.js.map +1 -0
- package/dist/config/load.d.ts +9 -2
- package/dist/config/load.d.ts.map +1 -1
- package/dist/config/load.js +21 -8
- package/dist/config/load.js.map +1 -1
- package/dist/config/read.d.ts +2 -0
- package/dist/config/read.d.ts.map +1 -1
- package/dist/config/read.js +4 -1
- package/dist/config/read.js.map +1 -1
- package/dist/config/warnings.d.ts +1 -1
- package/dist/config/warnings.d.ts.map +1 -1
- package/dist/config/warnings.js +3 -1
- package/dist/config/warnings.js.map +1 -1
- package/dist/config/working-dir.d.ts +2 -0
- package/dist/config/working-dir.d.ts.map +1 -0
- package/dist/config/working-dir.js +3 -0
- package/dist/config/working-dir.js.map +1 -0
- package/dist/custom/bounded-match.d.ts +1 -12
- package/dist/custom/bounded-match.d.ts.map +1 -1
- package/dist/custom/bounded-match.js +1 -11
- package/dist/custom/bounded-match.js.map +1 -1
- package/dist/custom/pattern-timeout.d.ts +13 -0
- package/dist/custom/pattern-timeout.d.ts.map +1 -0
- package/dist/custom/pattern-timeout.js +13 -0
- package/dist/custom/pattern-timeout.js.map +1 -0
- package/dist/derived/relative-weekdays.d.ts +16 -0
- package/dist/derived/relative-weekdays.d.ts.map +1 -0
- package/dist/derived/relative-weekdays.js +52 -0
- package/dist/derived/relative-weekdays.js.map +1 -0
- package/dist/detect.d.ts.map +1 -1
- package/dist/detect.js +4 -5
- package/dist/detect.js.map +1 -1
- package/dist/detectors/change-rate.d.ts +3 -0
- package/dist/detectors/change-rate.d.ts.map +1 -0
- package/dist/detectors/change-rate.js +102 -0
- package/dist/detectors/change-rate.js.map +1 -0
- package/dist/detectors/date-year.d.ts +10 -2
- package/dist/detectors/date-year.d.ts.map +1 -1
- package/dist/detectors/date-year.js +44 -8
- package/dist/detectors/date-year.js.map +1 -1
- package/dist/detectors/defined-term-form.d.ts +5 -0
- package/dist/detectors/defined-term-form.d.ts.map +1 -1
- package/dist/detectors/defined-term-form.js +22 -5
- package/dist/detectors/defined-term-form.js.map +1 -1
- package/dist/detectors/derived-numbers.d.ts.map +1 -1
- package/dist/detectors/derived-numbers.js +3 -7
- package/dist/detectors/derived-numbers.js.map +1 -1
- package/dist/detectors/document-date.d.ts +4 -0
- package/dist/detectors/document-date.d.ts.map +1 -0
- package/dist/detectors/document-date.js +12 -0
- package/dist/detectors/document-date.js.map +1 -0
- package/dist/detectors/orthographic-variant.d.ts.map +1 -1
- package/dist/detectors/orthographic-variant.js +60 -28
- package/dist/detectors/orthographic-variant.js.map +1 -1
- package/dist/detectors/party-role-name.d.ts +3 -0
- package/dist/detectors/party-role-name.d.ts.map +1 -0
- package/dist/detectors/party-role-name.js +35 -0
- package/dist/detectors/party-role-name.js.map +1 -0
- package/dist/detectors/quote-without-source.d.ts +17 -0
- package/dist/detectors/quote-without-source.d.ts.map +1 -0
- package/dist/detectors/quote-without-source.js +64 -0
- package/dist/detectors/quote-without-source.js.map +1 -0
- package/dist/detectors/reference-text.js +1 -1
- package/dist/detectors/reference-text.js.map +1 -1
- package/dist/detectors/registry/change-rate.d.ts +3 -0
- package/dist/detectors/registry/change-rate.d.ts.map +1 -0
- package/dist/detectors/registry/change-rate.js +3 -0
- package/dist/detectors/registry/change-rate.js.map +1 -0
- package/dist/detectors/registry/party-role-name.d.ts +3 -0
- package/dist/detectors/registry/party-role-name.d.ts.map +1 -0
- package/dist/detectors/registry/party-role-name.js +3 -0
- package/dist/detectors/registry/party-role-name.js.map +1 -0
- package/dist/detectors/registry/quote-without-source.d.ts +3 -0
- package/dist/detectors/registry/quote-without-source.d.ts.map +1 -0
- package/dist/detectors/registry/quote-without-source.js +3 -0
- package/dist/detectors/registry/quote-without-source.js.map +1 -0
- package/dist/detectors/registry/vague-deadline.d.ts +3 -0
- package/dist/detectors/registry/vague-deadline.d.ts.map +1 -0
- package/dist/detectors/registry/vague-deadline.js +3 -0
- package/dist/detectors/registry/vague-deadline.js.map +1 -0
- package/dist/detectors/registry/version-mismatch.d.ts +3 -0
- package/dist/detectors/registry/version-mismatch.d.ts.map +1 -0
- package/dist/detectors/registry/version-mismatch.js +3 -0
- package/dist/detectors/registry/version-mismatch.js.map +1 -0
- package/dist/detectors/relative-dates.d.ts.map +1 -1
- package/dist/detectors/relative-dates.js +3 -1
- package/dist/detectors/relative-dates.js.map +1 -1
- package/dist/detectors/relative-day-words.d.ts +4 -0
- package/dist/detectors/relative-day-words.d.ts.map +1 -0
- package/dist/detectors/relative-day-words.js +105 -0
- package/dist/detectors/relative-day-words.js.map +1 -0
- package/dist/detectors/run-in-label.d.ts +7 -0
- package/dist/detectors/run-in-label.d.ts.map +1 -0
- package/dist/detectors/run-in-label.js +53 -0
- package/dist/detectors/run-in-label.js.map +1 -0
- package/dist/detectors/sentence-counts.d.ts +3 -1
- package/dist/detectors/sentence-counts.d.ts.map +1 -1
- package/dist/detectors/sentence-counts.js +11 -4
- package/dist/detectors/sentence-counts.js.map +1 -1
- package/dist/detectors/sentence-ending.d.ts +1 -1
- package/dist/detectors/sentence-ending.d.ts.map +1 -1
- package/dist/detectors/sentence-ending.js +2 -1
- package/dist/detectors/sentence-ending.js.map +1 -1
- package/dist/detectors/structure-tree.d.ts +8 -2
- package/dist/detectors/structure-tree.d.ts.map +1 -1
- package/dist/detectors/structure-tree.js +86 -5
- package/dist/detectors/structure-tree.js.map +1 -1
- package/dist/detectors/unbalanced-bracket.d.ts +1 -1
- package/dist/detectors/unbalanced-bracket.d.ts.map +1 -1
- package/dist/detectors/unbalanced-bracket.js +23 -11
- package/dist/detectors/unbalanced-bracket.js.map +1 -1
- package/dist/detectors/vague-deadline.d.ts +25 -0
- package/dist/detectors/vague-deadline.d.ts.map +1 -0
- package/dist/detectors/vague-deadline.js +97 -0
- package/dist/detectors/vague-deadline.js.map +1 -0
- package/dist/detectors/version-mismatch.d.ts +3 -0
- package/dist/detectors/version-mismatch.d.ts.map +1 -0
- package/dist/detectors/version-mismatch.js +19 -0
- package/dist/detectors/version-mismatch.js.map +1 -0
- package/dist/furigana.d.ts +7 -0
- package/dist/furigana.d.ts.map +1 -0
- package/dist/furigana.js +16 -0
- package/dist/furigana.js.map +1 -0
- package/dist/genre-load.d.ts.map +1 -1
- package/dist/genre-load.js +5 -7
- package/dist/genre-load.js.map +1 -1
- package/dist/grade/ai-score.d.ts +16 -0
- package/dist/grade/ai-score.d.ts.map +1 -0
- package/dist/grade/ai-score.js +17 -0
- package/dist/grade/ai-score.js.map +1 -0
- package/dist/grade/finding.d.ts +6 -0
- package/dist/grade/finding.d.ts.map +1 -0
- package/dist/grade/finding.js +13 -0
- package/dist/grade/finding.js.map +1 -0
- package/dist/grade/grade-item.d.ts.map +1 -1
- package/dist/grade/grade-item.js +4 -11
- package/dist/grade/grade-item.js.map +1 -1
- package/dist/grade/render-variants.d.ts.map +1 -1
- package/dist/grade/render-variants.js +3 -0
- package/dist/grade/render-variants.js.map +1 -1
- package/dist/grade/render.d.ts.map +1 -1
- package/dist/grade/render.js +1 -0
- package/dist/grade/render.js.map +1 -1
- package/dist/grade/result.d.ts +3 -0
- package/dist/grade/result.d.ts.map +1 -1
- package/dist/grade/results-read.d.ts.map +1 -1
- package/dist/grade/results-read.js +13 -2
- package/dist/grade/results-read.js.map +1 -1
- package/dist/grade/summary.d.ts +3 -0
- package/dist/grade/summary.d.ts.map +1 -1
- package/dist/grade/summary.js +6 -0
- package/dist/grade/summary.js.map +1 -1
- package/dist/grade/text.d.ts +2 -0
- package/dist/grade/text.d.ts.map +1 -1
- package/dist/grade/text.js +2 -0
- package/dist/grade/text.js.map +1 -1
- package/dist/grade/variants-text.d.ts +3 -0
- package/dist/grade/variants-text.d.ts.map +1 -1
- package/dist/grade/variants-text.js +4 -0
- package/dist/grade/variants-text.js.map +1 -1
- package/dist/grade/variants.d.ts +3 -0
- package/dist/grade/variants.d.ts.map +1 -1
- package/dist/grade/variants.js +1 -0
- package/dist/grade/variants.js.map +1 -1
- package/dist/grade-api.d.ts +1 -0
- package/dist/grade-api.d.ts.map +1 -1
- package/dist/grade-api.js +2 -1
- package/dist/grade-api.js.map +1 -1
- package/dist/judge.d.ts +0 -1
- package/dist/judge.d.ts.map +1 -1
- package/dist/judge.js +0 -1
- package/dist/judge.js.map +1 -1
- package/dist/known-genres.js +2 -2
- package/dist/known-genres.js.map +1 -1
- package/dist/package-files.d.ts +6 -0
- package/dist/package-files.d.ts.map +1 -0
- package/dist/package-files.js +11 -0
- package/dist/package-files.js.map +1 -0
- package/dist/profile/load.d.ts.map +1 -1
- package/dist/profile/load.js +5 -6
- package/dist/profile/load.js.map +1 -1
- package/dist/rule-load.d.ts.map +1 -1
- package/dist/rule-load.js +5 -6
- package/dist/rule-load.js.map +1 -1
- package/dist/rule-offs.js +3 -3
- package/dist/rule-offs.js.map +1 -1
- package/dist/run.js +1 -1
- package/dist/run.js.map +1 -1
- package/dist/structure/change-rate.d.ts +33 -0
- package/dist/structure/change-rate.d.ts.map +1 -0
- package/dist/structure/change-rate.js +71 -0
- package/dist/structure/change-rate.js.map +1 -0
- package/dist/structure/date-range.d.ts +4 -0
- package/dist/structure/date-range.d.ts.map +1 -1
- package/dist/structure/date-range.js +23 -3
- package/dist/structure/date-range.js.map +1 -1
- package/dist/structure/issues.d.ts +17 -1
- package/dist/structure/issues.d.ts.map +1 -1
- package/dist/structure/issues.js +54 -5
- package/dist/structure/issues.js.map +1 -1
- package/dist/structure/list-numbering.d.ts +17 -0
- package/dist/structure/list-numbering.d.ts.map +1 -0
- package/dist/structure/list-numbering.js +27 -0
- package/dist/structure/list-numbering.js.map +1 -0
- package/dist/structure/party-role.d.ts +30 -0
- package/dist/structure/party-role.d.ts.map +1 -0
- package/dist/structure/party-role.js +58 -0
- package/dist/structure/party-role.js.map +1 -0
- package/dist/structure/percent-sum-prose.d.ts +7 -0
- package/dist/structure/percent-sum-prose.d.ts.map +1 -0
- package/dist/structure/percent-sum-prose.js +44 -0
- package/dist/structure/percent-sum-prose.js.map +1 -0
- package/dist/structure/prose-total.d.ts +28 -0
- package/dist/structure/prose-total.d.ts.map +1 -0
- package/dist/structure/prose-total.js +99 -0
- package/dist/structure/prose-total.js.map +1 -0
- package/dist/structure/reference-text.d.ts +5 -0
- package/dist/structure/reference-text.d.ts.map +1 -1
- package/dist/structure/reference-text.js +17 -4
- package/dist/structure/reference-text.js.map +1 -1
- package/dist/structure/term-prefix.d.ts +18 -0
- package/dist/structure/term-prefix.d.ts.map +1 -0
- package/dist/structure/term-prefix.js +40 -0
- package/dist/structure/term-prefix.js.map +1 -0
- package/dist/structure/total.d.ts +2 -0
- package/dist/structure/total.d.ts.map +1 -1
- package/dist/structure/total.js +2 -0
- package/dist/structure/total.js.map +1 -1
- package/dist/structure/version-mismatch.d.ts +23 -0
- package/dist/structure/version-mismatch.d.ts.map +1 -0
- package/dist/structure/version-mismatch.js +74 -0
- package/dist/structure/version-mismatch.js.map +1 -0
- package/dist/structure/weekday.d.ts +21 -2
- package/dist/structure/weekday.d.ts.map +1 -1
- package/dist/structure/weekday.js +70 -8
- package/dist/structure/weekday.js.map +1 -1
- package/dist/structure-shape/baseline-load.d.ts.map +1 -1
- package/dist/structure-shape/baseline-load.js +4 -5
- package/dist/structure-shape/baseline-load.js.map +1 -1
- package/dist/style-load.d.ts.map +1 -1
- package/dist/style-load.js +5 -6
- package/dist/style-load.js.map +1 -1
- package/package.json +24 -3
- package/rules/agreement-slip.yaml +2 -2
- package/rules/change-rate-mismatch.yaml +44 -0
- package/rules/cliche.yaml +28 -8
- package/rules/date-weekday-mismatch.yaml +4 -4
- package/rules/date-without-year.yaml +28 -3
- package/rules/defined-term-form.yaml +9 -6
- package/rules/demonstrative-opener-run.yaml +24 -7
- package/rules/max-sentence-length.yaml +1 -0
- package/rules/no-mixed-desumasu.yaml +2 -2
- package/rules/numbering-gap.yaml +4 -4
- package/rules/one-sentence-paragraph-run.yaml +1 -0
- package/rules/orthographic-variant.yaml +3 -3
- package/rules/party-role-name.yaml +94 -0
- package/rules/percent-sum-mismatch.yaml +4 -4
- package/rules/quote-without-source.yaml +61 -0
- package/rules/relative-date-mismatch.yaml +4 -4
- package/rules/total-mismatch.yaml +8 -8
- package/rules/undefined-acronym.yaml +1 -0
- package/rules/vague-deadline.yaml +95 -0
- package/rules/version-mismatch.yaml +77 -0
- package/rules/weasel-word.yaml +25 -7
- package/skills/chaff/SKILL.md +12 -2
- package/src/adapter-import.ts +3 -0
- package/src/adapter-load.ts +2 -1
- package/src/ai-score/human-shares.ts +207 -0
- package/src/ai-score/lint-line.ts +10 -0
- package/src/ai-score/of-document.ts +46 -0
- package/src/ai-score/render.ts +124 -0
- package/src/ai-score/score.ts +121 -0
- package/src/ai-score/signals.ts +39 -0
- package/src/ai-score/text.ts +103 -0
- package/src/ai-score/view.ts +21 -0
- package/src/backends/anthropic.ts +0 -2
- package/src/backends/default-model.ts +9 -0
- package/src/backends/openai.ts +0 -2
- package/src/browser/adapter-import.ts +19 -0
- package/src/browser/bounded-match.ts +9 -0
- package/src/browser/check-text.ts +106 -0
- package/src/browser/detectors.ts +40 -0
- package/src/browser/import-meta-glob.d.ts +5 -0
- package/src/browser/package-files.ts +13 -0
- package/src/browser/path.ts +73 -0
- package/src/browser/working-dir.ts +3 -0
- package/src/browser-files.ts +87 -0
- package/src/browser.ts +19 -0
- package/src/capitals-with-small.ts +23 -0
- package/src/cli-text.ts +2 -0
- package/src/cli.ts +4 -1
- package/src/commands/ai-score.ts +77 -0
- package/src/commands/document-commands.ts +2 -0
- package/src/config/by-path-problems.ts +17 -0
- package/src/config/load.ts +21 -8
- package/src/config/read.ts +5 -1
- package/src/config/warnings.ts +3 -1
- package/src/config/working-dir.ts +3 -0
- package/src/custom/bounded-match.ts +1 -16
- package/src/custom/pattern-timeout.ts +17 -0
- package/src/derived/relative-weekdays.ts +65 -0
- package/src/detect.ts +4 -5
- package/src/detectors/change-rate.ts +122 -0
- package/src/detectors/date-year.ts +51 -12
- package/src/detectors/defined-term-form.ts +28 -6
- package/src/detectors/derived-numbers.ts +3 -11
- package/src/detectors/document-date.ts +18 -0
- package/src/detectors/orthographic-variant.ts +67 -22
- package/src/detectors/party-role-name.ts +44 -0
- package/src/detectors/quote-without-source.ts +90 -0
- package/src/detectors/reference-text.ts +1 -1
- package/src/detectors/registry/change-rate.ts +4 -0
- package/src/detectors/registry/party-role-name.ts +4 -0
- package/src/detectors/registry/quote-without-source.ts +4 -0
- package/src/detectors/registry/vague-deadline.ts +4 -0
- package/src/detectors/registry/version-mismatch.ts +4 -0
- package/src/detectors/relative-dates.ts +3 -1
- package/src/detectors/relative-day-words.ts +126 -0
- package/src/detectors/run-in-label.ts +60 -0
- package/src/detectors/sentence-counts.ts +13 -4
- package/src/detectors/sentence-ending.ts +3 -2
- package/src/detectors/structure-tree.ts +104 -10
- package/src/detectors/unbalanced-bracket.ts +25 -10
- package/src/detectors/vague-deadline.ts +132 -0
- package/src/detectors/version-mismatch.ts +23 -0
- package/src/furigana.ts +20 -0
- package/src/genre-load.ts +5 -7
- package/src/grade/ai-score.ts +32 -0
- package/src/grade/finding.ts +16 -0
- package/src/grade/grade-item.ts +4 -13
- package/src/grade/render-variants.ts +5 -0
- package/src/grade/render.ts +1 -0
- package/src/grade/result.ts +3 -0
- package/src/grade/results-read.ts +17 -2
- package/src/grade/summary.ts +9 -0
- package/src/grade/text.ts +6 -0
- package/src/grade/variants-text.ts +7 -0
- package/src/grade/variants.ts +4 -0
- package/src/grade-api.ts +3 -1
- package/src/judge.ts +0 -2
- package/src/known-genres.ts +2 -2
- package/src/package-files.ts +15 -0
- package/src/profile/load.ts +5 -6
- package/src/rule-load.ts +5 -6
- package/src/rule-offs.ts +3 -3
- package/src/run.ts +1 -1
- package/src/structure/change-rate.ts +103 -0
- package/src/structure/date-range.ts +28 -3
- package/src/structure/issues.ts +61 -6
- package/src/structure/list-numbering.ts +34 -0
- package/src/structure/party-role.ts +94 -0
- package/src/structure/percent-sum-prose.ts +54 -0
- package/src/structure/prose-total.ts +135 -0
- package/src/structure/reference-text.ts +17 -4
- package/src/structure/term-prefix.ts +54 -0
- package/src/structure/total.ts +4 -0
- package/src/structure/version-mismatch.ts +103 -0
- package/src/structure/weekday.ts +83 -6
- package/src/structure-shape/baseline-load.ts +4 -5
- package/src/style-load.ts +5 -6
package/README.md
CHANGED
|
@@ -11,10 +11,13 @@ chaff は、契約書、ブログ、技術文書などを、この二つのや
|
|
|
11
11
|
`chaff compare`、`chaff cite`、`chaff test` で確かめます。どれも終了コードを返すので、CI に入れればプログラムと同じく変更のたびに回せます。
|
|
12
12
|
|
|
13
13
|
日本語と英語の文書をそのまま読み、同じ文章なら何度かけても同じ結果を出します。文章は書き換えません。直すのは書いた人(または、その人が頼んだ AI)です。
|
|
14
|
-
|
|
14
|
+
|
|
15
|
+
**ブラウザで試す:** [プレイグラウンド(日本語)](https://isamu.github.io/lab/ja/playground/) ·
|
|
16
|
+
[Playground (English)](https://isamu.github.io/lab/en/playground/)。インストールせずに、貼った文章にその場でかけられます。
|
|
15
17
|
|
|
16
18
|
## 使ってみる
|
|
17
19
|
|
|
20
|
+
Node.js 24 以上があれば、インストールせずにかけられます。設定ファイルも API key も言語の指定も要りません。
|
|
18
21
|
たとえば、次の `article.md` があるとします。
|
|
19
22
|
|
|
20
23
|
```markdown
|
|
@@ -40,7 +43,7 @@ article.md blog/tech · 日本語 ジャンルは既定から
|
|
|
40
43
|
|
|
41
44
|
キャッシュの仕組みについて説明します。
|
|
42
45
|
|
|
43
|
-
|
|
46
|
+
· 見出しの繰り返し
|
|
44
47
|
|
|
45
48
|
見出し「キャッシュの仕組み」を直後の文がほぼそのまま繰り返しています
|
|
46
49
|
見出しで言ったことを次の文が繰り返すと、読者はそこで何も受け取れません。
|
|
@@ -54,22 +57,24 @@ article.md blog/tech · 日本語 ジャンルは既定から
|
|
|
54
57
|
|
|
55
58
|
1. 1 行目は、調べたファイル、文書の種類(ジャンル)、言語です。
|
|
56
59
|
2. 「5 行目」の下に、指摘された文がそのまま引かれます。
|
|
57
|
-
3.
|
|
60
|
+
3. 記号の付いた行が、何が起きているかです(ここでは、見出しを次の文が繰り返している)。記号は指摘の重さで、`✖` が誤り、`⚠` が注意、`·` が参考です。
|
|
58
61
|
4. その下が、なぜ読みにくいかです。
|
|
59
62
|
5. `→` の行が、どう直すかです。
|
|
60
63
|
6. 最後の行は、この指摘がチームの方針に合わないときに、ルールのほうをゆるめるコマンドです。
|
|
61
64
|
|
|
62
65
|
出力の最後には、指摘の数と、今回動かなかったルールの一覧が理由付きで出ます。「指摘なし」を「全部見て問題なし」と取り違えないためです。
|
|
66
|
+
画面は文書の言語で出るので、英語の文書には英語で返ってきます。
|
|
63
67
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
- 一文が長すぎて、読んでいるうちに主語を見失う
|
|
67
|
-
- 太字が多すぎて、どこも目立たなくなっている
|
|
68
|
-
- 見出しと同じことを、その直後の文が繰り返している
|
|
69
|
-
- 「近年、〜が注目されています」など、どの記事にも当てはまる書き出し
|
|
70
|
-
- 「いかがでしたか」で終わる、読者に何も残さない結び
|
|
68
|
+
プロジェクトに入れて版を固定するなら、開発用の依存として足します(`npm install --save-dev chaffjs`、`yarn add -D chaffjs` など)。
|
|
69
|
+
コマンドの名前は `chaffjs` と `chaff` のどちらでも動きます。
|
|
71
70
|
|
|
72
|
-
|
|
71
|
+
```bash
|
|
72
|
+
npx chaffjs . この場所の Markdown を全部見る
|
|
73
|
+
npx chaffjs docs/ README.md ディレクトリもファイルも glob も混ぜてよい
|
|
74
|
+
npx chaffjs article.md --watch 保存のたびに、変わったところだけ出す
|
|
75
|
+
npx chaffjs init chaff.yaml を作る(端末ならジャンルを一覧から選ぶ)
|
|
76
|
+
npx chaffjs --help コマンドとオプションの一覧
|
|
77
|
+
```
|
|
73
78
|
|
|
74
79
|
## 文書の種類を選ぶ
|
|
75
80
|
|
|
@@ -93,8 +98,27 @@ npx chaffjs genres ジャンルの一覧と、そ
|
|
|
93
98
|
| 文学 | `literature/fiction` `literature/essay` `literature/poetry` `literature/play` |
|
|
94
99
|
| 話し言葉 | `speech/address` `speech/transcript` |
|
|
95
100
|
|
|
96
|
-
|
|
97
|
-
|
|
101
|
+
### ジャンルの指針
|
|
102
|
+
|
|
103
|
+
ジャンルを決めると、結果の最初にそのジャンルの指針が出ます。その種類のよい文書が満たすことを、原稿を確かめる問いの形で並べ、特に効くルールを添えたものです。
|
|
104
|
+
ルールでは確かめられないことが多いので、指摘より先に読みます。推測したジャンルや既定のジャンルには出しません。
|
|
105
|
+
|
|
106
|
+
- 一度だけ外すときは `--no-guide` を付けます。
|
|
107
|
+
- チームは `chaff.yaml` の `guide:` で、指針を置き換え・追加・停止できます([ジャンルの指針を変える](https://isamu.github.io/lab/ja/guide/configuration/#ジャンルの指針を変える))。
|
|
108
|
+
- `fix-plan` も指針から始まり、AI はそれに沿って書き直します。
|
|
109
|
+
|
|
110
|
+
## 既定で動くルール
|
|
111
|
+
|
|
112
|
+
設定を書かなくても、ほとんどのルールはジャンルに合わせた強さで動きます。動かないのは次の 3 種類です。
|
|
113
|
+
|
|
114
|
+
| 種類 | 動かし方 |
|
|
115
|
+
| --- | --- |
|
|
116
|
+
| 試験中のルール(まだ測っていない新しいルール) | `--experimental` で全部、`npx chaffjs enable <ルール>` で一つずつ |
|
|
117
|
+
| チームの言葉が要るルール(社内用語、必須の見出し、表記) | `chaff.yaml` の `jargon` `required_sections` `prefer` に書く |
|
|
118
|
+
| 意味を読む検査 | `npx chaffjs test`(API key が要る) |
|
|
119
|
+
|
|
120
|
+
どのルールがいまどの強さで動くかは、`npx chaffjs rules` が表にします。「default」の列が設定なしで動くルールです。
|
|
121
|
+
一つのルールの意図と根拠は `npx chaffjs explain <ルール>` で読めます。ルールの一覧は [ルールのページ](https://isamu.github.io/lab/ja/rules/) にもあります。
|
|
98
122
|
|
|
99
123
|
## 自分たちの決まり(プリセット)を作る
|
|
100
124
|
|
|
@@ -127,8 +151,8 @@ custom_rules: # チーム独自のルール(コードは要ら
|
|
|
127
151
|
example: { before: 締切は TBD です。, after: 締切は 10 月 5 日です。 }
|
|
128
152
|
```
|
|
129
153
|
|
|
130
|
-
`npx chaffjs init` でひな形を作れます。いま効いている設定は `npx chaffjs rules`
|
|
131
|
-
|
|
154
|
+
`npx chaffjs init` でひな形を作れます。いま効いている設定は `npx chaffjs rules` で一覧になります。
|
|
155
|
+
AI に設定を書かせるときは、`npx chaffjs rules --json` の出力を渡します。いまの値、使える値、なぜいま `off` なのかが一つに入っています。
|
|
132
156
|
書き方の詳しい説明は手引きの「[設定](https://isamu.github.io/lab/ja/guide/configuration/)」と「[チームの表記ルール](https://isamu.github.io/lab/ja/guide/house-style/)」にあります。
|
|
133
157
|
|
|
134
158
|
## 指摘されたら
|
|
@@ -136,55 +160,168 @@ custom_rules: # チーム独自のルール(コードは要ら
|
|
|
136
160
|
応じ方は 3 つです。指摘がもっともなら文章を直します。指摘は正しいがそこは意図して書いたのなら、`<!-- stet: rule-id — 理由 -->` でその箇所だけ黙らせます。
|
|
137
161
|
自分たちの方針に合わないなら、`npx chaffjs relax rule-id --why "理由"` でルールのほうを変えます。
|
|
138
162
|
強さは `strict` `normal` `relaxed` `off` の 4 語から選び、足りなければ上限を数で書けます(`max-sentence-length: 260`)。
|
|
163
|
+
黙らせている箇所は `npx chaffjs suppressions docs/` が数えます。
|
|
164
|
+
|
|
165
|
+
## チーム独自のルールとルールの束
|
|
166
|
+
|
|
167
|
+
一つのチームのルールは、上の例のように `chaff.yaml` の `custom_rules` に書きます。語(`type: words`)、正規表現(`type: pattern`)、品詞の並び(`type: tokens`)、Node の関数(`type: module`)で書けます。
|
|
168
|
+
書き方は「[ルールを足す](https://isamu.github.io/lab/ja/guide/adding-rules/)」にあります。
|
|
169
|
+
|
|
170
|
+
いくつものチームで使うルールは、プラグインのパッケージ `chaff-plugin-<名前>` にまとめます。ルール・語彙表・スタイルを YAML だけで書く束なら、コードは要りません。
|
|
171
|
+
|
|
172
|
+
```bash
|
|
173
|
+
npx chaffjs init --plugin <名前> YAML だけのルールの束のひな形 chaff-plugin-<名前>/ を作る
|
|
174
|
+
npx chaffjs plugin-test <フォルダ> 束の各ルールを、そのルールの例にかけて確かめる
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
`chaff.yaml` の `plugins:` に足すと、束のルールは `<名前>/<ルール>` として、chaff のルールと同じに `explain`・`relax`・`stet`・SARIF で扱えます。
|
|
178
|
+
ルールを関数で書く束は `detect` を使い、型と `defineRule` / `definePlugin` は `chaffjs/api` から読み込みます。
|
|
179
|
+
読み込むとそのコードが動くので、信頼できるものだけを入れてください。作り方は「[プラグインを作る](https://isamu.github.io/lab/ja/guide/writing-plugins/)」にあります。
|
|
180
|
+
|
|
181
|
+
## 直す計画(fix-plan)と書き直しの深さ
|
|
182
|
+
|
|
183
|
+
`fix-plan` は、指摘をルールごとにまとめ、直す方向、変えてはいけないもの、直す前と後の例、勧める直し方、直したあとにかけるコマンドを並べた「直す計画」を出します。
|
|
184
|
+
人が直すときも AI に頼むときも、この計画を読んで書き直します。chaff 自身は何も送りません。
|
|
185
|
+
|
|
186
|
+
```bash
|
|
187
|
+
npx chaffjs fix-plan article.md 直す計画を出す(--json で AI に渡す形)
|
|
188
|
+
npx chaffjs fix-plan article.md --depth light 構成は残し、語と文だけを直す計画にする
|
|
189
|
+
npx chaffjs compare article.md after.md 書き直しで事実(数・日付・URL・名前など)が落ちても足されてもいないかを確かめる
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
深さは `light`(語と文)、`structure`(節・見出し・段落の組み替えまで)、`register`(文体の変換まで)の 3 つで、深いものは浅いものを含みます。
|
|
193
|
+
決めた深さより深いルールの指摘は、名前と箇所の数だけが計画に載ります。毎回同じ深さにするなら `chaff.yaml` に `fix_plan: { depth: light }` と書きます。
|
|
194
|
+
深さを決めなければ、chaff が直し方を勧め、その深さを計画に書きます。
|
|
195
|
+
詳しくは手引きの「[AIっぽさを直す](https://isamu.github.io/lab/ja/guide/ai-sounding/)」と「[直す計画の深さを決める](https://isamu.github.io/lab/ja/guide/configuration/#直す計画の深さを決める)」にあります。
|
|
196
|
+
|
|
197
|
+
## AI らしさの簡易判定(chaff ai-score)
|
|
198
|
+
|
|
199
|
+
`chaff ai-score <file>` — AI らしさの簡易判定(低・中・高)。生成文に多い目印のうち、同じジャンルの人の文書にはめったに出ないものを数えます。書いたのが AI かどうかの判定ではありません。
|
|
200
|
+
|
|
201
|
+
```bash
|
|
202
|
+
npx chaffjs ai-score article.md 低・中・高と、出ていた目印
|
|
203
|
+
npx chaffjs ai-score article.md --format json 同じものを JSON で
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
短すぎる文書は測らず、そう言います。
|
|
207
|
+
|
|
208
|
+
## AI の評価に使う(chaff grade)
|
|
209
|
+
|
|
210
|
+
`chaff grade` は、モデルの出力を JSONL のまま採点します。1 行に 1 つの出力で、`id` と `output` が要ります。
|
|
211
|
+
ルールの指摘の率、`compare` による事実の照合、`cite` による引用の照合をまとめ、出力ごとに合否を付けます。何も送りません。
|
|
212
|
+
|
|
213
|
+
```bash
|
|
214
|
+
npx chaffjs grade outputs.jsonl 採点して、まとめを出す
|
|
215
|
+
npx chaffjs grade outputs.jsonl --out results.jsonl 出力ごとの結果を JSONL に書く
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
不合格の出力があれば 1 で終わるので、CI でプロンプトやモデルの変更を確かめられます。
|
|
219
|
+
入力の書き方と、二つのプロンプトの比べ方は「[AI の評価(AI evals)に使う](https://isamu.github.io/lab/ja/guide/ai-evals/)」にあります。
|
|
220
|
+
|
|
221
|
+
## ブラウザで使う(chaffjs/browser)
|
|
222
|
+
|
|
223
|
+
`chaffjs/browser` は、ファイルシステムもサーバーも無いウェブページの中で chaff を動かす入口です。ページがかける文章はどこにも送られません。
|
|
224
|
+
|
|
225
|
+
```ts
|
|
226
|
+
import { check, setupBrowser } from "chaffjs/browser";
|
|
227
|
+
|
|
228
|
+
setupBrowser({
|
|
229
|
+
files: async (packageName) => loadFilesOf(packageName), // chaffjs、@chaffjs/lang-ja、@chaffjs/lang-en のファイル(パス → 中身)
|
|
230
|
+
kuromojiDictionaryUrl: "https://example.com/kuromoji/", // kuromoji の辞書を置いた URL(絶対 URL、/ で終わる)
|
|
231
|
+
});
|
|
232
|
+
|
|
233
|
+
const result = await check(text, { genre: "business/report" });
|
|
234
|
+
// result.findings(指摘)、result.notRun(動かなかったルールと理由)、result.aiScore(AI らしさ)
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
- package.json の `browser` フィールドと `import.meta.glob` を読むバンドラー(Vite)が要ります。
|
|
238
|
+
- `vite dev` で使うときは、`optimizeDeps.exclude` に `chaffjs` を入れてください。
|
|
239
|
+
- 日本語の辞書は、日本語の文章を初めてかけたときに取りに行きます。
|
|
240
|
+
|
|
241
|
+
[プレイグラウンド](https://isamu.github.io/lab/ja/playground/) がこの入口で動いています。ファイルと辞書の置き方の実例は、そのソース(リポジトリの `text/site/src/lib/playground.ts` と `text/scripts/browser-files.ts`)にあります。
|
|
139
242
|
|
|
140
243
|
## ほかにできること
|
|
141
244
|
|
|
142
245
|
```bash
|
|
143
|
-
npx chaffjs
|
|
144
|
-
npx chaffjs
|
|
145
|
-
npx chaffjs explain bold-density ルールの意図と根拠を読む
|
|
146
|
-
npx chaffjs baseline docs/ 既にある指摘を棚上げする
|
|
147
|
-
npx chaffjs suppressions docs/ stet で黙らせている指摘を数える
|
|
148
|
-
npx chaffjs rules --json いまの設定を JSON で出す(AI に渡す用)
|
|
246
|
+
npx chaffjs baseline docs/ 既にある指摘を棚上げする(CI に入れるとき)
|
|
247
|
+
npx chaffjs . --sarif out.sarif 指摘を SARIF で書き出す(GitHub の PR に出す)
|
|
149
248
|
npx chaffjs tree contract.txt 文書を番地の付いた木にする(条・項・定義・参照)
|
|
150
|
-
npx chaffjs cite 原文 引用.json
|
|
151
|
-
npx chaffjs fix-plan 前.md 指摘をルールごとにまとめ、直す方向と確かめのコマンドを付けた「直す計画」を出す
|
|
249
|
+
npx chaffjs cite 原文 引用.json 引用が原文のその番地にあるかを確かめる
|
|
152
250
|
npx chaffjs facts 前.md compare が照合する事実を一覧にする(書き直す前の控え)
|
|
153
|
-
npx chaffjs outline 前.md 後.md
|
|
154
|
-
npx chaffjs
|
|
155
|
-
npx chaffjs compare 前.md 後.md 書き換えで事実(数・日付・URL・名前など)が落ちても足されてもいないかを確かめる
|
|
251
|
+
npx chaffjs outline 前.md 後.md 見出しの構成と形、構成の AI らしさを前と後で並べる
|
|
252
|
+
npx chaffjs test docs/ 意味を読む検査も動かす(API key が要る。--dry-run で送るものだけを見る)
|
|
156
253
|
npx chaffjs skill Claude Code の skill を入れる(--global でホームに)
|
|
254
|
+
npx chaffjs feedback a.md --rule <ルール> --line 42 誤った指摘の報告の下書きを作る(何も送らない)
|
|
157
255
|
```
|
|
158
256
|
|
|
159
257
|
言語のアダプタ(`@chaffjs/lang-ja` と `@chaffjs/lang-en`)は同梱しているので、別に入れる必要はありません。
|
|
160
|
-
新しい言語のアダプタは誰でも出せます。公式は `@chaffjs/lang-<言語>`、第三者は `chaff-lang-<言語>`
|
|
161
|
-
`@typescript-eslint/*` と `eslint-plugin-*` の関係と同じで、chaff は公式、第三者の順に探して読みます。
|
|
162
|
-
|
|
163
|
-
いくつものチームで使うルールは、プラグインのパッケージ `chaff-plugin-<名前>` にまとめます。ルール・語彙表・スタイルを YAML だけで書く束なら、コードは要りません(`npx chaffjs init --plugin <名前>` でひな形、`npx chaffjs plugin-test` で確かめ)。
|
|
164
|
-
ルールは Node の関数でも書けます。一つのチームのルールは `chaff.yaml` の `custom_rules` に `type: module` で、プラグインでは `detect` で書きます。
|
|
165
|
-
型と `defineRule` / `definePlugin` は `chaffjs/api` から読み込みます。プラグインのルールは `<名前>/<ルール>` と呼ばれ、chaff のルールと同じに `explain`・`relax`・`stet`・SARIF で扱えます。
|
|
166
|
-
読み込むとそのコードが動くので、信頼できるものだけを入れてください。作り方は手引きの「[プラグインを作る](https://isamu.github.io/lab/ja/guide/writing-plugins/)」にあります。
|
|
258
|
+
新しい言語のアダプタは誰でも出せます。公式は `@chaffjs/lang-<言語>`、第三者は `chaff-lang-<言語>` と名乗り、chaff は公式、第三者の順に探して読みます。
|
|
167
259
|
|
|
168
260
|
## ドキュメント
|
|
169
261
|
|
|
170
262
|
手引きとルールの一覧は [日本語のサイト](https://isamu.github.io/lab/ja/) と [英語のサイト](https://isamu.github.io/lab/en/) にあります。
|
|
171
|
-
|
|
263
|
+
|
|
264
|
+
- [はじめかた](https://isamu.github.io/lab/ja/guide/getting-started/)
|
|
265
|
+
- [コマンド](https://isamu.github.io/lab/ja/guide/commands/)
|
|
266
|
+
- [設定](https://isamu.github.io/lab/ja/guide/configuration/)
|
|
267
|
+
- [文書の種類ごとにできること](https://isamu.github.io/lab/ja/guide/documents/)
|
|
268
|
+
- [AIっぽさを直す](https://isamu.github.io/lab/ja/guide/ai-sounding/)
|
|
269
|
+
- [AI の評価(AI evals)に使う](https://isamu.github.io/lab/ja/guide/ai-evals/)
|
|
270
|
+
- [CI](https://isamu.github.io/lab/ja/guide/ci/)
|
|
271
|
+
- [ルールの一覧](https://isamu.github.io/lab/ja/rules/)
|
|
272
|
+
|
|
273
|
+
ソースは [GitHub の isamu/lab の text/](https://github.com/isamu/lab/tree/main/text) にあります。
|
|
172
274
|
|
|
173
275
|
## In English
|
|
174
276
|
|
|
175
277
|
chaff brings two habits from programming to ordinary writing. A linter checks that code follows rules; a unit test
|
|
176
278
|
checks that a change did not break what must hold. chaff lints contracts, blog posts and technical documents for
|
|
177
279
|
readability, consistency and contradictions. Its `compare`, `cite` and `test` commands check that a rewrite kept the
|
|
178
|
-
facts, the quotations and the team's requirements.
|
|
280
|
+
facts, the quotations and the team's requirements.
|
|
281
|
+
|
|
282
|
+
Every command returns an exit code, so it runs in CI on every change. It reads Japanese and English, gives the same
|
|
283
|
+
result for the same text every time, and never rewrites it.
|
|
284
|
+
|
|
285
|
+
**Try chaff in your browser:** [the playground](https://isamu.github.io/lab/en/playground/).
|
|
286
|
+
|
|
287
|
+
**First run.** With Node.js 24 or later, `npx chaffjs article.md` checks a file with no install, no config and no API
|
|
288
|
+
key; on an English document the screen is in English. `npx chaffjs .` checks every Markdown file here, and
|
|
289
|
+
`npx chaffjs --help` lists every command.
|
|
290
|
+
|
|
291
|
+
**Genres.** `--genre legal/contract` (or `genre:` in `chaff.yaml`) checks a document the way its kind is written;
|
|
292
|
+
`npx chaffjs genres` lists them. With a genre set, the report opens with that genre's guide: what a good document of
|
|
293
|
+
the kind does, as questions to check the draft against, and the rules that matter most. `--no-guide` leaves it out for
|
|
294
|
+
one run, and `guide:` in `chaff.yaml` replaces, adds to or turns off a team's guide.
|
|
295
|
+
|
|
296
|
+
**Rules on by default.** Most rules run with no settings, at the level the genre sets. Experimental rules run with
|
|
297
|
+
`--experimental` (or one at a time with `npx chaffjs enable <rule>`), rules on a team's words need their lists in
|
|
298
|
+
`chaff.yaml`, and the checks that read meaning run with `npx chaffjs test`. `npx chaffjs rules` shows which rule runs at
|
|
299
|
+
what level now.
|
|
300
|
+
|
|
301
|
+
**Your own preset** is a `chaff.yaml` in the repository: a genre, a `style`, rules and their levels, your preferred
|
|
302
|
+
spellings, the genre's guide and your own rules under `custom_rules` (`words`, `pattern`, `tokens` for part-of-speech
|
|
303
|
+
patterns, or `module` for a Node function). `npx chaffjs init --plugin <name>` starts a YAML-only rule pack, `chaff-plugin-<name>/`,
|
|
304
|
+
and `npx chaffjs plugin-test` checks each of its rules on the rule's own example.
|
|
305
|
+
|
|
306
|
+
**Fix plans.** `npx chaffjs fix-plan article.md` is a plan for whoever rewrites the file, a person or an AI: findings by
|
|
307
|
+
rule, how to rewrite each, and the checks to run after. `--depth light|structure|register` (or `fix_plan: { depth }`
|
|
308
|
+
in `chaff.yaml`) sets how deep the rewrite may go.
|
|
309
|
+
|
|
310
|
+
**AI score.** `chaff ai-score <file>` — a quick AI-likeness score (low, medium, high): counts the signs of generated
|
|
311
|
+
text that human documents of the same genre rarely show. It is not a verdict on whether AI wrote it.
|
|
179
312
|
|
|
180
|
-
|
|
181
|
-
|
|
313
|
+
**AI evals.** `npx chaffjs grade outputs.jsonl --out results.jsonl` grades a JSONL file of a model's outputs (`id` and
|
|
314
|
+
`output` on each line) with the rules, `compare` and `cite`, and fails when an output fails. How is in
|
|
315
|
+
[Using chaff for AI evals](https://isamu.github.io/lab/en/guide/ai-evals/).
|
|
182
316
|
|
|
183
|
-
|
|
184
|
-
|
|
317
|
+
**In a browser.** `chaffjs/browser` exports `setupBrowser({ files, kuromojiDictionaryUrl })` and `check(text, options)`.
|
|
318
|
+
`chaffjs/browser` needs a bundler that reads package.json's `browser` field and `import.meta.glob` (Vite). With
|
|
319
|
+
`vite dev`, put `chaffjs` in `optimizeDeps.exclude`. The Japanese dictionary is fetched on the first Japanese check.
|
|
185
320
|
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
https://isamu.github.io/lab/en/
|
|
321
|
+
The guide and the reference of every rule are on [the English site](https://isamu.github.io/lab/en/):
|
|
322
|
+
[Getting started](https://isamu.github.io/lab/en/guide/getting-started/),
|
|
323
|
+
[Commands](https://isamu.github.io/lab/en/guide/commands/),
|
|
324
|
+
[Configuration](https://isamu.github.io/lab/en/guide/configuration/),
|
|
325
|
+
[Making AI-sounding text sound human](https://isamu.github.io/lab/en/guide/ai-sounding/).
|
|
189
326
|
|
|
190
327
|
MIT
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter-import.d.ts","sourceRoot":"","sources":["../src/adapter-import.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa,GAAI,WAAW,MAAM,KAAG,OAAO,CAAC,OAAO,CAAsB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// How a language package is imported: by name, at run time. A build without a file system puts its own module in this one's place.
|
|
2
|
+
var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) {
|
|
3
|
+
if (typeof path === "string" && /^\.\.?\//.test(path)) {
|
|
4
|
+
return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
|
|
5
|
+
return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
|
|
6
|
+
});
|
|
7
|
+
}
|
|
8
|
+
return path;
|
|
9
|
+
};
|
|
10
|
+
export const importPackage = (specifier) => import(__rewriteRelativeImportExtension(specifier));
|
|
11
|
+
//# sourceMappingURL=adapter-import.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter-import.js","sourceRoot":"","sources":["../src/adapter-import.ts"],"names":[],"mappings":"AAAA,mIAAmI;;;;;;;;;AAEnI,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,SAAiB,EAAoB,EAAE,CAAC,MAAM,kCAAC,SAAS,EAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter-load.d.ts","sourceRoot":"","sources":["../src/adapter-load.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"adapter-load.d.ts","sourceRoot":"","sources":["../src/adapter-load.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAkCnD;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,OAAO,KAAG,MAAM,GAAG,SAOtD,CAAC;AAaF,eAAO,MAAM,UAAU,GAAI,UAAU,MAAM,KAAG,MAAM,GAAG,SAC8C,CAAC;AAEtG;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,UAAU,MAAM,KAAG,SAAS,MAAM,EAG7D,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAE/D;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,KAAK,OAAO,EAAE,WAAW,MAAM,KAAG,OAC6D,CAAC;AAsBzH;;;;GAIG;AACH,eAAO,MAAM,WAAW,GAAU,UAAU,MAAM,EAAE,WAAU,QAAwB,KAAG,OAAO,CAAC,eAAe,CAY/G,CAAC"}
|
package/dist/adapter-load.js
CHANGED
|
@@ -1,11 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
if (typeof path === "string" && /^\.\.?\//.test(path)) {
|
|
3
|
-
return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
|
|
4
|
-
return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
|
|
5
|
-
});
|
|
6
|
-
}
|
|
7
|
-
return path;
|
|
8
|
-
};
|
|
1
|
+
import { importPackage } from "./adapter-import.js";
|
|
9
2
|
const ADAPTER_PACKAGE = { ja: "@chaffjs/lang-ja", en: "@chaffjs/lang-en" };
|
|
10
3
|
/** core が読める契約の版。合わないアダプタは、動かしてから壊れるより先に断る。 */
|
|
11
4
|
const API_VERSION = 1;
|
|
@@ -99,7 +92,7 @@ const importFirst = async (specifiers, language, importer) => {
|
|
|
99
92
|
* core だけで起動し、文字種で言語を当ててから、その言語のアダプタを読む。
|
|
100
93
|
* 全言語を静的に import すると、使わない言語のぶんまで npx の初回取得が膨らむ。
|
|
101
94
|
*/
|
|
102
|
-
export const loadAdapter = async (language, importer =
|
|
95
|
+
export const loadAdapter = async (language, importer = importPackage) => {
|
|
103
96
|
const { specifier, module } = await importFirst(packagesFor(language), language, importer);
|
|
104
97
|
if (typeof module !== "object" || module === null)
|
|
105
98
|
throw new Error(`${specifier} did not export a module`);
|
package/dist/adapter-load.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter-load.js","sourceRoot":"","sources":["../src/adapter-load.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"adapter-load.js","sourceRoot":"","sources":["../src/adapter-load.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"human-shares.d.ts","sourceRoot":"","sources":["../../src/ai-score/human-shares.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,yGAAyG;AACzG,eAAO,MAAM,YAAY,EAAE,WA0M1B,CAAC"}
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
/** On how many human documents of each genre group each AI-shape rule reported, at the genre's level. */
|
|
2
|
+
export const HUMAN_SHARES = {
|
|
3
|
+
"ai-tell": {
|
|
4
|
+
academic: { documents: 10, fired: 0 },
|
|
5
|
+
blog: { documents: 23, fired: 0 },
|
|
6
|
+
business: { documents: 80, fired: 0 },
|
|
7
|
+
docs: { documents: 21, fired: 0 },
|
|
8
|
+
legal: { documents: 35, fired: 0 },
|
|
9
|
+
literature: { documents: 13, fired: 0 },
|
|
10
|
+
speech: { documents: 7, fired: 0 },
|
|
11
|
+
technical: { documents: 26, fired: 0 },
|
|
12
|
+
},
|
|
13
|
+
"announcing-opener": {
|
|
14
|
+
academic: { documents: 10, fired: 0 },
|
|
15
|
+
blog: { documents: 23, fired: 0 },
|
|
16
|
+
business: { documents: 80, fired: 0 },
|
|
17
|
+
docs: { documents: 21, fired: 0 },
|
|
18
|
+
legal: { documents: 35, fired: 0 },
|
|
19
|
+
literature: { documents: 13, fired: 0 },
|
|
20
|
+
speech: { documents: 7, fired: 0 },
|
|
21
|
+
technical: { documents: 26, fired: 0 },
|
|
22
|
+
},
|
|
23
|
+
"assistant-residue": {
|
|
24
|
+
academic: { documents: 10, fired: 0 },
|
|
25
|
+
blog: { documents: 23, fired: 0 },
|
|
26
|
+
business: { documents: 80, fired: 0 },
|
|
27
|
+
docs: { documents: 21, fired: 0 },
|
|
28
|
+
legal: { documents: 35, fired: 0 },
|
|
29
|
+
literature: { documents: 13, fired: 0 },
|
|
30
|
+
speech: { documents: 7, fired: 0 },
|
|
31
|
+
technical: { documents: 49, fired: 0 },
|
|
32
|
+
},
|
|
33
|
+
"bold-density": {
|
|
34
|
+
academic: { documents: 10, fired: 0 },
|
|
35
|
+
blog: { documents: 23, fired: 0 },
|
|
36
|
+
business: { documents: 80, fired: 1 },
|
|
37
|
+
docs: { documents: 21, fired: 0 },
|
|
38
|
+
legal: { documents: 35, fired: 0 },
|
|
39
|
+
literature: { documents: 13, fired: 0 },
|
|
40
|
+
speech: { documents: 7, fired: 0 },
|
|
41
|
+
technical: { documents: 49, fired: 2 },
|
|
42
|
+
},
|
|
43
|
+
"bold-label-list": {
|
|
44
|
+
academic: { documents: 5, fired: 0 },
|
|
45
|
+
blog: { documents: 14, fired: 0 },
|
|
46
|
+
business: { documents: 39, fired: 0 },
|
|
47
|
+
docs: { documents: 10, fired: 0 },
|
|
48
|
+
legal: { documents: 17, fired: 0 },
|
|
49
|
+
literature: { documents: 4, fired: 0 },
|
|
50
|
+
speech: { documents: 4, fired: 0 },
|
|
51
|
+
technical: { documents: 13, fired: 1 },
|
|
52
|
+
},
|
|
53
|
+
"chat-citation-residue": {
|
|
54
|
+
academic: { documents: 10, fired: 0 },
|
|
55
|
+
blog: { documents: 23, fired: 0 },
|
|
56
|
+
business: { documents: 80, fired: 0 },
|
|
57
|
+
docs: { documents: 21, fired: 0 },
|
|
58
|
+
legal: { documents: 35, fired: 0 },
|
|
59
|
+
literature: { documents: 13, fired: 0 },
|
|
60
|
+
speech: { documents: 7, fired: 0 },
|
|
61
|
+
technical: { documents: 49, fired: 0 },
|
|
62
|
+
},
|
|
63
|
+
"closing-cliche": {
|
|
64
|
+
academic: { documents: 10, fired: 0 },
|
|
65
|
+
blog: { documents: 23, fired: 0 },
|
|
66
|
+
docs: { documents: 21, fired: 0 },
|
|
67
|
+
legal: { documents: 35, fired: 1 },
|
|
68
|
+
literature: { documents: 13, fired: 0 },
|
|
69
|
+
speech: { documents: 7, fired: 0 },
|
|
70
|
+
},
|
|
71
|
+
"colon-lead-in": {
|
|
72
|
+
academic: { documents: 5, fired: 0 },
|
|
73
|
+
blog: { documents: 14, fired: 0 },
|
|
74
|
+
business: { documents: 39, fired: 0 },
|
|
75
|
+
docs: { documents: 10, fired: 0 },
|
|
76
|
+
legal: { documents: 21, fired: 0 },
|
|
77
|
+
literature: { documents: 4, fired: 0 },
|
|
78
|
+
speech: { documents: 4, fired: 0 },
|
|
79
|
+
technical: { documents: 13, fired: 1 },
|
|
80
|
+
},
|
|
81
|
+
"contrast-framing": {
|
|
82
|
+
academic: { documents: 10, fired: 0 },
|
|
83
|
+
blog: { documents: 23, fired: 0 },
|
|
84
|
+
business: { documents: 80, fired: 0 },
|
|
85
|
+
docs: { documents: 21, fired: 0 },
|
|
86
|
+
legal: { documents: 35, fired: 0 },
|
|
87
|
+
literature: { documents: 13, fired: 0 },
|
|
88
|
+
speech: { documents: 7, fired: 0 },
|
|
89
|
+
technical: { documents: 26, fired: 0 },
|
|
90
|
+
},
|
|
91
|
+
"emoji-density": {
|
|
92
|
+
academic: { documents: 10, fired: 0 },
|
|
93
|
+
blog: { documents: 23, fired: 0 },
|
|
94
|
+
business: { documents: 80, fired: 0 },
|
|
95
|
+
docs: { documents: 21, fired: 0 },
|
|
96
|
+
legal: { documents: 35, fired: 0 },
|
|
97
|
+
literature: { documents: 13, fired: 0 },
|
|
98
|
+
speech: { documents: 7, fired: 0 },
|
|
99
|
+
technical: { documents: 49, fired: 0 },
|
|
100
|
+
},
|
|
101
|
+
"emoji-heading": {
|
|
102
|
+
academic: { documents: 10, fired: 0 },
|
|
103
|
+
blog: { documents: 23, fired: 0 },
|
|
104
|
+
business: { documents: 78, fired: 1 },
|
|
105
|
+
docs: { documents: 21, fired: 0 },
|
|
106
|
+
legal: { documents: 28, fired: 0 },
|
|
107
|
+
literature: { documents: 4, fired: 0 },
|
|
108
|
+
speech: { documents: 7, fired: 0 },
|
|
109
|
+
},
|
|
110
|
+
"figurative-density": {
|
|
111
|
+
academic: { documents: 10, fired: 0 },
|
|
112
|
+
blog: { documents: 23, fired: 0 },
|
|
113
|
+
business: { documents: 80, fired: 0 },
|
|
114
|
+
docs: { documents: 21, fired: 0 },
|
|
115
|
+
legal: { documents: 35, fired: 0 },
|
|
116
|
+
literature: { documents: 13, fired: 0 },
|
|
117
|
+
speech: { documents: 7, fired: 0 },
|
|
118
|
+
technical: { documents: 49, fired: 0 },
|
|
119
|
+
},
|
|
120
|
+
"no-em-dash": {
|
|
121
|
+
academic: { documents: 10, fired: 0 },
|
|
122
|
+
blog: { documents: 23, fired: 0 },
|
|
123
|
+
business: { documents: 80, fired: 2 },
|
|
124
|
+
docs: { documents: 21, fired: 0 },
|
|
125
|
+
legal: { documents: 35, fired: 2 },
|
|
126
|
+
literature: { documents: 13, fired: 2 },
|
|
127
|
+
speech: { documents: 7, fired: 0 },
|
|
128
|
+
technical: { documents: 49, fired: 0 },
|
|
129
|
+
},
|
|
130
|
+
"padded-intro": {
|
|
131
|
+
academic: { documents: 10, fired: 0 },
|
|
132
|
+
blog: { documents: 23, fired: 0 },
|
|
133
|
+
business: { documents: 47, fired: 1 },
|
|
134
|
+
docs: { documents: 21, fired: 0 },
|
|
135
|
+
legal: { documents: 35, fired: 0 },
|
|
136
|
+
literature: { documents: 13, fired: 0 },
|
|
137
|
+
speech: { documents: 7, fired: 0 },
|
|
138
|
+
},
|
|
139
|
+
"paragraph-length-variance": {
|
|
140
|
+
academic: { documents: 10, fired: 0 },
|
|
141
|
+
blog: { documents: 23, fired: 0 },
|
|
142
|
+
docs: { documents: 21, fired: 0 },
|
|
143
|
+
legal: { documents: 35, fired: 0 },
|
|
144
|
+
literature: { documents: 13, fired: 1 },
|
|
145
|
+
speech: { documents: 7, fired: 0 },
|
|
146
|
+
},
|
|
147
|
+
"rule-of-three": {
|
|
148
|
+
academic: { documents: 10, fired: 0 },
|
|
149
|
+
blog: { documents: 23, fired: 0 },
|
|
150
|
+
docs: { documents: 21, fired: 0 },
|
|
151
|
+
legal: { documents: 35, fired: 0 },
|
|
152
|
+
literature: { documents: 13, fired: 0 },
|
|
153
|
+
speech: { documents: 7, fired: 0 },
|
|
154
|
+
technical: { documents: 26, fired: 0 },
|
|
155
|
+
},
|
|
156
|
+
"section-length-uniformity": {
|
|
157
|
+
academic: { documents: 10, fired: 0 },
|
|
158
|
+
blog: { documents: 23, fired: 0 },
|
|
159
|
+
docs: { documents: 21, fired: 0 },
|
|
160
|
+
legal: { documents: 35, fired: 0 },
|
|
161
|
+
literature: { documents: 13, fired: 1 },
|
|
162
|
+
speech: { documents: 7, fired: 0 },
|
|
163
|
+
technical: { documents: 26, fired: 0 },
|
|
164
|
+
},
|
|
165
|
+
"sentence-rhythm": {
|
|
166
|
+
academic: { documents: 10, fired: 0 },
|
|
167
|
+
blog: { documents: 23, fired: 0 },
|
|
168
|
+
docs: { documents: 21, fired: 0 },
|
|
169
|
+
legal: { documents: 35, fired: 0 },
|
|
170
|
+
literature: { documents: 13, fired: 1 },
|
|
171
|
+
speech: { documents: 7, fired: 0 },
|
|
172
|
+
technical: { documents: 26, fired: 1 },
|
|
173
|
+
},
|
|
174
|
+
"stock-transition": {
|
|
175
|
+
academic: { documents: 10, fired: 0 },
|
|
176
|
+
blog: { documents: 23, fired: 0 },
|
|
177
|
+
business: { documents: 80, fired: 0 },
|
|
178
|
+
docs: { documents: 21, fired: 0 },
|
|
179
|
+
legal: { documents: 35, fired: 0 },
|
|
180
|
+
literature: { documents: 13, fired: 0 },
|
|
181
|
+
speech: { documents: 7, fired: 0 },
|
|
182
|
+
technical: { documents: 26, fired: 0 },
|
|
183
|
+
},
|
|
184
|
+
"translationese-density": {
|
|
185
|
+
academic: { documents: 5, fired: 0 },
|
|
186
|
+
blog: { documents: 14, fired: 0 },
|
|
187
|
+
business: { documents: 39, fired: 0 },
|
|
188
|
+
docs: { documents: 10, fired: 0 },
|
|
189
|
+
legal: { documents: 21, fired: 1 },
|
|
190
|
+
literature: { documents: 4, fired: 1 },
|
|
191
|
+
speech: { documents: 4, fired: 0 },
|
|
192
|
+
technical: { documents: 22, fired: 0 },
|
|
193
|
+
},
|
|
194
|
+
"unfilled-placeholder": {
|
|
195
|
+
academic: { documents: 10, fired: 0 },
|
|
196
|
+
blog: { documents: 23, fired: 0 },
|
|
197
|
+
business: { documents: 80, fired: 1 },
|
|
198
|
+
docs: { documents: 21, fired: 0 },
|
|
199
|
+
legal: { documents: 35, fired: 0 },
|
|
200
|
+
literature: { documents: 13, fired: 0 },
|
|
201
|
+
speech: { documents: 7, fired: 0 },
|
|
202
|
+
technical: { documents: 49, fired: 0 },
|
|
203
|
+
},
|
|
204
|
+
};
|
|
205
|
+
//# sourceMappingURL=human-shares.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"human-shares.js","sourceRoot":"","sources":["../../src/ai-score/human-shares.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lint-line.d.ts","sourceRoot":"","sources":["../../src/ai-score/lint-line.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAKtD,wGAAwG;AACxG,eAAO,MAAM,aAAa,GAAI,OAAO,WAAW,KAAG,MAGlD,CAAC"}
|