@geolonia/yuuhitsu 0.2.4 → 0.3.1
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.ja.md +383 -0
- package/README.md +141 -63
- package/dist/cli/commands/translate.d.ts.map +1 -1
- package/dist/cli/commands/translate.js +6 -3
- package/dist/cli/commands/translate.js.map +1 -1
- package/dist/tasks/batch-translate.d.ts +2 -1
- package/dist/tasks/batch-translate.d.ts.map +1 -1
- package/dist/tasks/batch-translate.js +3 -2
- package/dist/tasks/batch-translate.js.map +1 -1
- package/dist/tasks/translate.d.ts +4 -2
- package/dist/tasks/translate.d.ts.map +1 -1
- package/dist/tasks/translate.js +159 -54
- package/dist/tasks/translate.js.map +1 -1
- package/package.json +5 -2
package/dist/tasks/translate.js
CHANGED
|
@@ -2,11 +2,11 @@ import { readFileSync, writeFileSync, mkdirSync } from "fs";
|
|
|
2
2
|
import { dirname, basename, extname, join } from "path";
|
|
3
3
|
import { remark } from "remark";
|
|
4
4
|
import remarkGfm from "remark-gfm";
|
|
5
|
-
import { visit } from "unist-util-visit";
|
|
5
|
+
import { visit, SKIP } from "unist-util-visit";
|
|
6
6
|
import { buildGlossaryPrompt } from "./glossary.js";
|
|
7
7
|
export const DEFAULT_MAX_CHUNK_LINES = 150;
|
|
8
8
|
const MIN_CHUNK_LINES = 50;
|
|
9
|
-
export const
|
|
9
|
+
export const DEFAULT_MAX_TOKENS_PER_BATCH = 4000;
|
|
10
10
|
// P-A1: minimum ratio of output characters to input characters (truncation check)
|
|
11
11
|
const MIN_OUTPUT_RATIO = 0.3;
|
|
12
12
|
/**
|
|
@@ -204,24 +204,66 @@ export function restoreCodeBlocks(content, map) {
|
|
|
204
204
|
return result;
|
|
205
205
|
}
|
|
206
206
|
/**
|
|
207
|
-
* Extract
|
|
208
|
-
*
|
|
209
|
-
*
|
|
207
|
+
* Extract translatable block nodes from an mdast AST.
|
|
208
|
+
*
|
|
209
|
+
* Each paragraph and heading is treated as one translation unit, preserving
|
|
210
|
+
* inline markup (inline code, bold, italic, links) within the block.
|
|
211
|
+
* This prevents the text-node-level splitting that caused EN/JA mixing in 0.2.x.
|
|
210
212
|
*/
|
|
211
|
-
function
|
|
212
|
-
const
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
213
|
+
function extractBlockNodes(ast, processor) {
|
|
214
|
+
const blocks = [];
|
|
215
|
+
function inlineToMarkdown(children) {
|
|
216
|
+
const tempRoot = { type: "root", children: [{ type: "paragraph", children }] };
|
|
217
|
+
return processor.stringify(tempRoot).trim();
|
|
218
|
+
}
|
|
219
|
+
visit(ast, (node) => {
|
|
220
|
+
if (node.type === "paragraph") {
|
|
221
|
+
const para = node;
|
|
222
|
+
const md = inlineToMarkdown(para.children);
|
|
223
|
+
if (!md)
|
|
224
|
+
return;
|
|
225
|
+
// Skip fence-only paragraphs (bare ``` or ~~~) — translating them risks LLM mangling
|
|
226
|
+
if (/^(`{3,}|~{3,})\S*$/.test(md))
|
|
227
|
+
return;
|
|
228
|
+
blocks.push({
|
|
229
|
+
id: blocks.length,
|
|
230
|
+
markdown: md,
|
|
231
|
+
applyTranslation: (translated) => {
|
|
232
|
+
const parsed = processor.parse(translated.trim());
|
|
233
|
+
const firstPara = parsed.children.find((c) => c.type === "paragraph");
|
|
234
|
+
if (firstPara?.children.length) {
|
|
235
|
+
para.children = firstPara.children;
|
|
236
|
+
}
|
|
237
|
+
},
|
|
238
|
+
});
|
|
239
|
+
return SKIP;
|
|
240
|
+
}
|
|
241
|
+
if (node.type === "heading") {
|
|
242
|
+
const heading = node;
|
|
243
|
+
const md = inlineToMarkdown(heading.children);
|
|
244
|
+
if (!md)
|
|
245
|
+
return;
|
|
246
|
+
blocks.push({
|
|
247
|
+
id: blocks.length,
|
|
248
|
+
markdown: md,
|
|
249
|
+
applyTranslation: (translated) => {
|
|
250
|
+
const parsed = processor.parse(translated.trim());
|
|
251
|
+
const firstNode = parsed.children[0];
|
|
252
|
+
if (firstNode?.type === "paragraph") {
|
|
253
|
+
heading.children = firstNode.children;
|
|
254
|
+
}
|
|
255
|
+
},
|
|
256
|
+
});
|
|
257
|
+
return SKIP;
|
|
258
|
+
}
|
|
217
259
|
});
|
|
218
|
-
return
|
|
260
|
+
return blocks;
|
|
219
261
|
}
|
|
220
262
|
/**
|
|
221
263
|
* Build system prompt for text-mode batch translation (Gemini / Ollama fallback).
|
|
222
264
|
* Includes JSON format instructions since we're relying on the LLM to output JSON.
|
|
223
265
|
*/
|
|
224
|
-
function buildBatchSystemPrompt(targetLang, templateContent, glossaryConfig) {
|
|
266
|
+
function buildBatchSystemPrompt(targetLang, templateContent, glossaryConfig, systemPromptSuffix) {
|
|
225
267
|
const basePrompt = templateContent
|
|
226
268
|
? templateContent.replace(/\{\{targetLanguage\}\}/g, targetLang)
|
|
227
269
|
: `You are a professional translator. Translate text segments to ${targetLang}.
|
|
@@ -231,7 +273,10 @@ Rules:
|
|
|
231
273
|
- Preserve proper nouns, code identifiers, URLs, and file paths unchanged
|
|
232
274
|
- Produce natural, fluent text in the target language
|
|
233
275
|
- For Japanese: use full-width punctuation (。、?!), add half-width spaces around English words/numbers
|
|
234
|
-
- Keep product names, abbreviations, and technical terms unchanged (e.g., NGSI-LD, MCP, GeoJSON)
|
|
276
|
+
- Keep product names, abbreviations, and technical terms unchanged (e.g., NGSI-LD, MCP, GeoJSON, API, SDK, URL)
|
|
277
|
+
- Preserve all markdown inline formatting: inline code (\`...\`), bold (**...**), italic (*...*), links ([text](url))
|
|
278
|
+
- Each segment is an independent paragraph-level translation unit; translate it as a whole
|
|
279
|
+
- Do not split, merge, or reorder segments`;
|
|
235
280
|
let prompt = basePrompt;
|
|
236
281
|
if (glossaryConfig) {
|
|
237
282
|
const glossarySection = buildGlossaryPrompt(glossaryConfig, targetLang);
|
|
@@ -254,13 +299,16 @@ Example input:
|
|
|
254
299
|
|
|
255
300
|
Example output:
|
|
256
301
|
{"translations": [{"id": 0, "text": "こんにちは世界"}, {"id": 1, "text": "これはテストです。"}]}`;
|
|
302
|
+
if (systemPromptSuffix) {
|
|
303
|
+
prompt += `\n\n${systemPromptSuffix}`;
|
|
304
|
+
}
|
|
257
305
|
return prompt;
|
|
258
306
|
}
|
|
259
307
|
/**
|
|
260
308
|
* Build system prompt for structured output translation (Claude tool_use path).
|
|
261
309
|
* No JSON format instructions needed — the tool schema enforces the response shape.
|
|
262
310
|
*/
|
|
263
|
-
function buildStructuredSystemPrompt(targetLang, templateContent, glossaryConfig) {
|
|
311
|
+
function buildStructuredSystemPrompt(targetLang, templateContent, glossaryConfig, systemPromptSuffix) {
|
|
264
312
|
const basePrompt = templateContent
|
|
265
313
|
? templateContent.replace(/\{\{targetLanguage\}\}/g, targetLang)
|
|
266
314
|
: `You are a professional translator. Translate each text segment to ${targetLang}.
|
|
@@ -270,14 +318,24 @@ Rules:
|
|
|
270
318
|
- Preserve proper nouns, code identifiers, URLs, and file paths unchanged
|
|
271
319
|
- Produce natural, fluent text in the target language
|
|
272
320
|
- For Japanese: use full-width punctuation (。、?!), add half-width spaces around English words/numbers
|
|
273
|
-
- Keep product names, abbreviations, and technical terms unchanged (e.g., NGSI-LD, MCP, GeoJSON)
|
|
274
|
-
- Each segment is independent; translate it
|
|
321
|
+
- Keep product names, abbreviations, and technical terms unchanged (e.g., NGSI-LD, MCP, GeoJSON, API, SDK, URL)
|
|
322
|
+
- Each segment is an independent paragraph-level translation unit; translate it as a whole
|
|
323
|
+
- Preserve all markdown inline formatting: inline code (\`...\`), bold (**...**), italic (*...*), links ([text](url))
|
|
324
|
+
- Do not split, merge, or reorder segments`;
|
|
275
325
|
let prompt = basePrompt;
|
|
276
326
|
if (glossaryConfig) {
|
|
277
327
|
const glossarySection = buildGlossaryPrompt(glossaryConfig, targetLang);
|
|
278
328
|
if (glossarySection)
|
|
279
329
|
prompt += glossarySection;
|
|
280
330
|
}
|
|
331
|
+
prompt += `
|
|
332
|
+
|
|
333
|
+
CRITICAL: Use ONLY the IDs provided in the input. Do NOT invent or hallucinate IDs beyond what was given. If you receive N segments (IDs X through Y), your response MUST contain ONLY IDs within that exact range.
|
|
334
|
+
|
|
335
|
+
CRITICAL: Do NOT add new code fences (\`\`\`) that are not present in the original input. Do not convert descriptive text about code fences into actual code fence markers.`;
|
|
336
|
+
if (systemPromptSuffix) {
|
|
337
|
+
prompt += `\n\n${systemPromptSuffix}`;
|
|
338
|
+
}
|
|
281
339
|
return prompt;
|
|
282
340
|
}
|
|
283
341
|
/**
|
|
@@ -318,22 +376,51 @@ function assertValidTranslations(value) {
|
|
|
318
376
|
*
|
|
319
377
|
* In both paths the 1:1 ID mapping is validated and an error is thrown on mismatch.
|
|
320
378
|
*/
|
|
321
|
-
|
|
322
|
-
|
|
379
|
+
/** Maximum retry attempts for structured output on unexpected IDs. */
|
|
380
|
+
const MAX_STRUCTURED_ID_RETRIES = 3;
|
|
381
|
+
async function translateBatch(provider, blocks, targetLang, templateContent, glossaryConfig, systemPromptSuffix) {
|
|
382
|
+
if (blocks.length === 0) {
|
|
323
383
|
return { usage: { promptTokens: 0, completionTokens: 0, totalTokens: 0 } };
|
|
324
384
|
}
|
|
325
|
-
const segments =
|
|
385
|
+
const segments = blocks.map(({ markdown, id }) => ({ id, text: markdown }));
|
|
386
|
+
const inputIds = new Set(blocks.map(({ id }) => id));
|
|
387
|
+
const sortedInputIds = [...inputIds].sort((a, b) => a - b);
|
|
326
388
|
// P-A1: track total input character count for truncation detection
|
|
327
389
|
const totalInputChars = segments.reduce((sum, s) => sum + s.text.length, 0);
|
|
328
390
|
let translations;
|
|
329
391
|
let usage;
|
|
330
392
|
if (provider.translateStructured) {
|
|
331
|
-
// Structured output path: provider (Claude) enforces JSON schema via tool_use
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
393
|
+
// Structured output path: provider (Claude) enforces JSON schema via tool_use.
|
|
394
|
+
// Internal retry loop: on unexpected IDs, filter + retry with corrective context.
|
|
395
|
+
let currentSuffix = systemPromptSuffix;
|
|
396
|
+
const accumulatedUsage = { promptTokens: 0, completionTokens: 0, totalTokens: 0 };
|
|
397
|
+
for (let attempt = 0; attempt <= MAX_STRUCTURED_ID_RETRIES; attempt++) {
|
|
398
|
+
const systemPrompt = buildStructuredSystemPrompt(targetLang, templateContent, glossaryConfig, currentSuffix);
|
|
399
|
+
const result = await provider.translateStructured({ segments, systemPrompt });
|
|
400
|
+
assertValidTranslations(result.translations);
|
|
401
|
+
accumulatedUsage.promptTokens += result.usage.promptTokens;
|
|
402
|
+
accumulatedUsage.completionTokens += result.usage.completionTokens;
|
|
403
|
+
accumulatedUsage.totalTokens += result.usage.totalTokens;
|
|
404
|
+
// Detect unexpected IDs (IDs not present in the input set)
|
|
405
|
+
const unexpectedIds = result.translations
|
|
406
|
+
.filter((t) => !inputIds.has(t.id))
|
|
407
|
+
.map((t) => t.id);
|
|
408
|
+
if (unexpectedIds.length > 0) {
|
|
409
|
+
if (attempt < MAX_STRUCTURED_ID_RETRIES) {
|
|
410
|
+
const suffix = `RETRY CORRECTION: The previous response contained unexpected IDs: [${unexpectedIds.join(", ")}]. ` +
|
|
411
|
+
`You MUST use ONLY the following IDs: [${sortedInputIds.join(", ")}]. ` +
|
|
412
|
+
`Do not invent any other IDs.`;
|
|
413
|
+
currentSuffix = currentSuffix ? `${currentSuffix}\n\n${suffix}` : suffix;
|
|
414
|
+
console.warn(`[yuuhitsu] translateBatch: unexpected IDs [${unexpectedIds.join(", ")}], retrying (attempt ${attempt + 1}/${MAX_STRUCTURED_ID_RETRIES})`);
|
|
415
|
+
continue;
|
|
416
|
+
}
|
|
417
|
+
throw new Error(`[yuuhitsu] translateBatch: unexpected IDs in response after ${MAX_STRUCTURED_ID_RETRIES} retries (IDs: ${unexpectedIds.join(", ")})`);
|
|
418
|
+
}
|
|
419
|
+
// No unexpected IDs — proceed with filtered valid translations
|
|
420
|
+
translations = result.translations.filter((t) => inputIds.has(t.id));
|
|
421
|
+
usage = accumulatedUsage;
|
|
422
|
+
break;
|
|
423
|
+
}
|
|
337
424
|
// P-A1: warn on truncation (compare translated chars to input chars)
|
|
338
425
|
const totalOutputChars = translations.reduce((sum, t) => sum + t.text.length, 0);
|
|
339
426
|
if (totalInputChars > 0 && totalOutputChars < totalInputChars * MIN_OUTPUT_RATIO) {
|
|
@@ -343,7 +430,7 @@ async function translateBatch(provider, nodes, targetLang, templateContent, glos
|
|
|
343
430
|
}
|
|
344
431
|
else {
|
|
345
432
|
// Text mode fallback: Gemini / Ollama
|
|
346
|
-
const systemPrompt = buildBatchSystemPrompt(targetLang, templateContent, glossaryConfig);
|
|
433
|
+
const systemPrompt = buildBatchSystemPrompt(targetLang, templateContent, glossaryConfig, systemPromptSuffix);
|
|
347
434
|
const messages = [
|
|
348
435
|
{ role: "system", content: systemPrompt },
|
|
349
436
|
{ role: "user", content: JSON.stringify({ segments }) },
|
|
@@ -362,12 +449,10 @@ async function translateBatch(provider, nodes, targetLang, templateContent, glos
|
|
|
362
449
|
}
|
|
363
450
|
// Validate strict 1:1 ID mapping (both paths):
|
|
364
451
|
// - no duplicate output IDs (Map silently overwrites; we must detect before)
|
|
365
|
-
// - no unexpected IDs (IDs not present in the input set)
|
|
366
452
|
// - no missing IDs (input ID absent from output)
|
|
367
|
-
|
|
453
|
+
// Note: unexpected IDs are already handled above for the structured path.
|
|
368
454
|
const seenOutputIds = new Set();
|
|
369
455
|
const duplicateIds = [];
|
|
370
|
-
const unexpectedIds = [];
|
|
371
456
|
for (const t of translations) {
|
|
372
457
|
if (seenOutputIds.has(t.id)) {
|
|
373
458
|
duplicateIds.push(t.id);
|
|
@@ -375,30 +460,35 @@ async function translateBatch(provider, nodes, targetLang, templateContent, glos
|
|
|
375
460
|
else {
|
|
376
461
|
seenOutputIds.add(t.id);
|
|
377
462
|
}
|
|
378
|
-
if (!inputIds.has(t.id)) {
|
|
379
|
-
unexpectedIds.push(t.id);
|
|
380
|
-
}
|
|
381
463
|
}
|
|
382
464
|
if (duplicateIds.length > 0) {
|
|
383
465
|
throw new Error(`[yuuhitsu] translateBatch: duplicate IDs in response (IDs: ${duplicateIds.join(", ")})`);
|
|
384
466
|
}
|
|
385
|
-
|
|
386
|
-
|
|
467
|
+
// For text mode: still check for unexpected IDs (not retried)
|
|
468
|
+
if (!provider.translateStructured) {
|
|
469
|
+
const unexpectedIds = [];
|
|
470
|
+
for (const t of translations) {
|
|
471
|
+
if (!inputIds.has(t.id))
|
|
472
|
+
unexpectedIds.push(t.id);
|
|
473
|
+
}
|
|
474
|
+
if (unexpectedIds.length > 0) {
|
|
475
|
+
throw new Error(`[yuuhitsu] translateBatch: unexpected IDs in response (IDs: ${unexpectedIds.join(", ")})`);
|
|
476
|
+
}
|
|
387
477
|
}
|
|
388
478
|
const translationMap = new Map(translations.map((t) => [t.id, t.text]));
|
|
389
|
-
const missingIds =
|
|
479
|
+
const missingIds = blocks.filter(({ id }) => !translationMap.has(id)).map(({ id }) => id);
|
|
390
480
|
if (missingIds.length > 0) {
|
|
391
|
-
throw new Error(`[yuuhitsu] translateBatch: partial translation — ${missingIds.length}
|
|
481
|
+
throw new Error(`[yuuhitsu] translateBatch: partial translation — ${missingIds.length} block(s) missing` +
|
|
392
482
|
` from response (IDs: ${missingIds.join(", ")})`);
|
|
393
483
|
}
|
|
394
|
-
// Apply translations back to AST nodes
|
|
395
|
-
for (const
|
|
396
|
-
const translated = translationMap.get(id);
|
|
484
|
+
// Apply translations back to AST nodes via block closures
|
|
485
|
+
for (const block of blocks) {
|
|
486
|
+
const translated = translationMap.get(block.id);
|
|
397
487
|
if (translated !== undefined && translated.trim()) {
|
|
398
|
-
|
|
488
|
+
block.applyTranslation(translated);
|
|
399
489
|
}
|
|
400
490
|
}
|
|
401
|
-
return { usage };
|
|
491
|
+
return { usage: usage };
|
|
402
492
|
}
|
|
403
493
|
function resolveOutputPath(inputPath, targetLang, outputPath) {
|
|
404
494
|
if (outputPath)
|
|
@@ -423,11 +513,11 @@ function resolveOutputPath(inputPath, targetLang, outputPath) {
|
|
|
423
513
|
* - No sentinel injection or removal needed
|
|
424
514
|
*/
|
|
425
515
|
export async function translateFile(options) {
|
|
426
|
-
const { provider, inputPath, targetLang, templateContent, glossaryConfig, maxChunkLines,
|
|
427
|
-
if (
|
|
428
|
-
throw new Error(`
|
|
516
|
+
const { provider, inputPath, targetLang, templateContent, glossaryConfig, maxChunkLines, maxTokensPerBatch, systemPromptSuffix, } = options;
|
|
517
|
+
if (maxTokensPerBatch !== undefined && (!Number.isInteger(maxTokensPerBatch) || maxTokensPerBatch < 1)) {
|
|
518
|
+
throw new Error(`maxTokensPerBatch must be a positive integer, got: ${maxTokensPerBatch}`);
|
|
429
519
|
}
|
|
430
|
-
const
|
|
520
|
+
const resolvedMaxTokens = maxTokensPerBatch ?? DEFAULT_MAX_TOKENS_PER_BATCH;
|
|
431
521
|
let content;
|
|
432
522
|
try {
|
|
433
523
|
content = readFileSync(inputPath, "utf-8");
|
|
@@ -452,14 +542,29 @@ export async function translateFile(options) {
|
|
|
452
542
|
// Parse chunk to AST (code blocks, inline code become typed nodes → never reach LLM)
|
|
453
543
|
const processor = remark().use(remarkGfm);
|
|
454
544
|
const ast = processor.parse(chunk);
|
|
455
|
-
// Extract translatable
|
|
456
|
-
const
|
|
457
|
-
if (
|
|
458
|
-
//
|
|
459
|
-
//
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
545
|
+
// Extract translatable block nodes (paragraph-level, preserving inline markup)
|
|
546
|
+
const blockNodes = extractBlockNodes(ast, processor);
|
|
547
|
+
if (blockNodes.length > 0) {
|
|
548
|
+
// Token-based batching: accumulate blocks until estimated token count exceeds limit.
|
|
549
|
+
// Each block's markdown length / 4 approximates its token count.
|
|
550
|
+
const batches = [];
|
|
551
|
+
let currentBatch = [];
|
|
552
|
+
let currentTokens = 0;
|
|
553
|
+
for (const block of blockNodes) {
|
|
554
|
+
const blockTokens = Math.ceil(block.markdown.length / 4);
|
|
555
|
+
if (currentBatch.length > 0 && currentTokens + blockTokens > resolvedMaxTokens) {
|
|
556
|
+
batches.push(currentBatch);
|
|
557
|
+
currentBatch = [];
|
|
558
|
+
currentTokens = 0;
|
|
559
|
+
}
|
|
560
|
+
currentBatch.push(block);
|
|
561
|
+
currentTokens += blockTokens;
|
|
562
|
+
}
|
|
563
|
+
if (currentBatch.length > 0) {
|
|
564
|
+
batches.push(currentBatch);
|
|
565
|
+
}
|
|
566
|
+
for (const batch of batches) {
|
|
567
|
+
const { usage } = await translateBatch(provider, batch, targetLang, templateContent, glossaryConfig, systemPromptSuffix);
|
|
463
568
|
totalUsage.promptTokens += usage.promptTokens;
|
|
464
569
|
totalUsage.completionTokens += usage.completionTokens;
|
|
465
570
|
totalUsage.totalTokens += usage.totalTokens;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translate.js","sourceRoot":"","sources":["../../src/tasks/translate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"translate.js","sourceRoot":"","sources":["../../src/tasks/translate.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@geolonia/yuuhitsu",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"description": "右筆 (Yuuhitsu) - AI-powered document operations CLI. Translate, generate, and sync documents using Claude, Gemini, or Ollama.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -13,7 +13,9 @@
|
|
|
13
13
|
"test": "vitest run",
|
|
14
14
|
"test:watch": "vitest",
|
|
15
15
|
"test:integration": "vitest run --config vitest.integration.config.ts",
|
|
16
|
-
"lint": "tsc --noEmit"
|
|
16
|
+
"lint": "tsc --noEmit",
|
|
17
|
+
"local-qc": "tsx scripts/local-qc.ts",
|
|
18
|
+
"prepublishOnly": "tsx scripts/local-qc.ts"
|
|
17
19
|
},
|
|
18
20
|
"keywords": [
|
|
19
21
|
"ai",
|
|
@@ -26,6 +28,7 @@
|
|
|
26
28
|
"dist",
|
|
27
29
|
"src/templates",
|
|
28
30
|
"README.md",
|
|
31
|
+
"README.ja.md",
|
|
29
32
|
"LICENSE"
|
|
30
33
|
],
|
|
31
34
|
"dependencies": {
|