docx-footnote-reader

v1.0.0

Extract footnotes, endnotes, and body text from .docx files using Node.js. Use this skill when you need to read footnote/endnote content from Word documents,...

0· 162·0 current·0 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for landylai0604/docx-footnote-reader.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "docx-footnote-reader" (landylai0604/docx-footnote-reader) from ClawHub.
Skill page: https://clawhub.ai/landylai0604/docx-footnote-reader
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install docx-footnote-reader

ClawHub CLI

Package manager switcher

npx clawhub@latest install docx-footnote-reader
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description match the implementation: index.js and SKILL.md implement a Node.js extractor using the 'word-extractor' library. One minor inconsistency: SKILL.md lists the license as 'Proprietary' while LICENSE.txt contains the Apache 2.0 text — clarify which license applies.
Instruction Scope
Runtime instructions and SKILL.md only describe reading the provided .docx file and returning body/footnotes/endnotes. The code only reads the file path given on the CLI or via the exported function and does not access other files, environment variables, or external endpoints.
Install Mechanism
This is an instruction+code skill with no install spec. It uses a normal npm dependency ('word-extractor' in package.json). npm install will fetch that package from the registry — expected for a Node.js skill.
Credentials
No environment variables, credentials, or config paths are requested. The skill's needs are minimal and proportionate to its task.
Persistence & Privilege
Skill is not always-enabled and does not request persistent/system-wide privileges or modify other skills/config. It exports a function and provides a CLI — normal behavior.
Assessment
This skill appears to do exactly what it says: parse a .docx and return body/footnotes/endnotes using the 'word-extractor' npm package. Before installing: (1) confirm the license (SKILL.md says 'Proprietary' but LICENSE.txt is Apache 2.0), (2) review the 'word-extractor' npm package (version ^1.0.0) for trustworthiness if you run it on sensitive documents, and (3) run npm install and use the tool in a controlled environment for untrusted documents since it will process whatever .docx you pass in. If you rely on strict licensing, ask the publisher to clarify the correct license.

Like a lobster shell, security has layers — review code before you run it.

latestvk974xhbhj4ep3e9n1w3kbzjrr5836kq9
162downloads
0stars
1versions
Updated 1mo ago
v1.0.0
MIT-0

DOCX Footnote Reader

Overview

A skill for extracting footnotes, endnotes, and body text from Microsoft Word (.docx) files. This is particularly useful for:

  • Technical documentation with reference notes
  • Legal documents with citations
  • Academic papers with footnoted references
  • Any document where footnote content is important

Usage

Command Line

node index.js path/to/document.docx

Programmatic API

const { extractFootnotes } = require('docx-footnote-reader');

const result = await extractFootnotes('./document.docx');

console.log(`Body: ${result.body.length} characters`);
console.log(`Footnotes: ${result.footnotes.length} notes`);
console.log(`Endnotes: ${result.endnotes.length} notes`);

// Access individual footnotes
result.footnotes.forEach((note, idx) => {
  console.log(`Footnote ${idx + 1}: ${note}`);
});

Return Value

The extractFootnotes function returns a Promise that resolves to:

{
  body: string;           // Document body text
  footnotes: string[];    // Array of footnote strings
  endnotes: string[];     // Array of endnote strings
}

How It Works

  1. Uses word-extractor library to parse the .docx file
  2. Extracts body text via doc.getBody()
  3. Extracts footnotes via doc.getFootnotes() - handles both string and array return types
  4. Extracts endnotes via doc.getEndnotes() - handles both string and array return types
  5. Splits footnote/endnote strings by newline and filters empty entries

Important Notes

  • The word-extractor library returns footnotes as a single string separated by newlines, not an array
  • This skill automatically handles both string and array return types
  • Empty footnotes/endnotes are filtered out
  • Each footnote string is trimmed of whitespace

Dependencies

  • Node.js >= 14
  • word-extractor (automatically installed via npm)

Installation

cd docx-footnote-reader
npm install

Example Output

========================================
Extraction Result
========================================

Body length: 58057 characters

Footnotes count: 73

Footnotes:

Footnote 1:
Description about error injection in this document, if the context does not mention single-frame multi-bit or Burst, it refers to single-bit error injection.

Footnote 2:
This feature is only supported on PG2K100 devices.

...

Troubleshooting

"Cannot find module 'word-extractor'"

Run npm install in the skill directory.

Empty footnotes array

  • Check that the document actually contains footnotes
  • Verify the file path is correct
  • Try opening the document in Word to confirm footnotes exist

Footnotes merged into one string

This is expected behavior from word-extractor. This skill automatically splits them by newlines.

File Structure

docx-footnote-reader/
├── index.js        # Main extraction logic
├── package.json    # npm dependencies
├── SKILL.md        # This file
└── LICENSE.txt     # License terms

Comments

Loading comments...