- Update all packages to latest versions via pnpm update --latest - Downgrade Prisma 7 to 6 (v7 requires schema migration) - Downgrade Tailwind CSS 4 to 3 (v4 requires PostCSS migration) - Downgrade Storybook 10 to 8 (addons not available in v10) - Pin cheerio to 1.0.0-rc.12 via pnpm override (type exports changed) - Fix AI SDK tool definitions: parameters -> inputSchema - Fix cheerio types in extract-meta and table-extract tools - Add explicit type annotations to tool execute functions - Migrate biome config to v2.3.11 schema All type-checks, tests, and builds pass. |
||
|---|---|---|
| .. | ||
| src | ||
| CHANGELOG.md | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
| tsup.config.ts | ||
@tpmjs/tools-glossary-build
Build a glossary from term definitions in text. Detects various definition patterns and extracts them into a structured format.
Installation
npm install @tpmjs/tools-glossary-build ai
Usage
import { glossaryBuildTool } from '@tpmjs/tools-glossary-build';
const result = await glossaryBuildTool.execute({
text: `
API: Application Programming Interface
REST - Representational State Transfer
**JSON** JavaScript Object Notation
CLI: Command Line Interface
`,
});
console.log(result);
// {
// terms: [
// { term: "API", definition: "Application Programming Interface" },
// { term: "REST", definition: "Representational State Transfer" },
// { term: "JSON", definition: "JavaScript Object Notation" },
// { term: "CLI", definition: "Command Line Interface" }
// ],
// count: 4,
// alphabetized: true
// }
Features
- Detects multiple definition formats:
- Colon separator:
Term: definition - Dash separator:
Term - definitionorTerm — definition - Markdown bold:
**Term** definition - Markdown italic:
*Term* definition
- Colon separator:
- Automatically removes duplicates (case-insensitive)
- Cleans up formatting (bold markers, bullets, numbers)
- Checks if terms are alphabetically sorted
Parameters
text(string, required) - Text containing term definitions in various formats
Returns
{
terms: Array<{
term: string;
definition: string;
}>;
count: number;
alphabetized: boolean;
}
Example Input Formats
The tool recognizes various definition formats:
API: Application Programming Interface
REST - Representational State Transfer
**GraphQL** A query language for APIs
*SDK* Software Development Kit
License
MIT