Wiki.js CLI

Command-line tool to manage Wiki.js content, pages, assets, templates, and backups via its GraphQL API with search, update, sync, and analysis functions.

Audits

Pass

Install

openclaw skills install wikijs

Wiki.js Skill v1.4

A complete CLI for managing Wiki.js via the GraphQL API.

Quick Start

# Install
npm install && npm link

# Configure
cp config/wikijs.example.json ~/.config/wikijs.json
# Edit with your Wiki.js URL and API token

# Test connection
wikijs health

Commands Reference

Reading

CommandDescription
wikijs listList all pages
wikijs search "query"Search pages
wikijs get <id-or-path>Read a page
wikijs info <id-or-path>Show page metadata
wikijs grep "pattern"Search within content
wikijs treeDisplay page hierarchy

Writing

CommandDescription
wikijs create <path> <title>Create a page
wikijs create ... --template docCreate from template
wikijs update <id>Update a page
wikijs move <id> <new-path>Move a page
wikijs delete <id>Delete a page

Tags

CommandDescription
wikijs tagsList all tags
wikijs tag <id> add <tag>Add a tag
wikijs tag <id> remove <tag>Remove a tag

Backup & Restore

CommandDescription
wikijs backupCreate backup
wikijs restore-backup <file>Restore from backup
wikijs export <dir>Export to files

Versions

CommandDescription
wikijs versions <id>Show history
wikijs revert <id> <version>Restore version
wikijs diff <id>Compare versions

Assets

CommandDescription
wikijs imagesList assets
wikijs upload <file>Upload asset
wikijs delete-image <id>Delete asset

Bulk Operations

CommandDescription
wikijs bulk-create <folder>Create from files
wikijs bulk-update <folder>Update from files
wikijs syncSync to local
wikijs sync --watchWatch mode

Analysis

CommandDescription
wikijs treePage hierarchy tree
wikijs check-linksFind broken links
wikijs statsShow statistics
wikijs lint <file>Lint markdown file
wikijs lint --id <id>Lint wiki page
wikijs orphansFind pages with no incoming links
wikijs duplicatesFind similar/duplicate content
wikijs toc <id>Generate table of contents
wikijs validate <id>Validate page content
wikijs validate --allValidate all pages
wikijs spellcheck <id>Check spelling

Content Operations

CommandDescription
wikijs clone <id> <path>Duplicate a page
wikijs replace "old" "new"Search/replace across pages
wikijs sitemapGenerate XML sitemap

Interactive

CommandDescription
wikijs shellInteractive shell mode
wikijs watch <id>Watch page for changes

Templates

CommandDescription
wikijs template listList templates
wikijs template show <name>Show template
wikijs template create <name>Create template
wikijs template delete <name>Delete template

System

CommandDescription
wikijs healthCheck connection
wikijs cache clearClear cache
wikijs completion bashShell completion

Global Options

OptionDescription
-v, --verboseVerbose output
-d, --debugDebug output
--no-colorDisable colors
--rate-limit <ms>API rate limiting

Common Options

OptionDescription
--format json|tableOutput format
--limit <n>Limit results
--forceSkip confirmations
--locale <locale>Specify locale
--dry-runPreview changes

Examples

# Create page with template
wikijs template create doc --content "# {{title}}\n\n{{date}}"
wikijs create "/docs/api" "API Docs" --template doc

# Find broken links in docs section
wikijs check-links --path "/docs"

# Bulk import with rate limiting
wikijs --rate-limit 500 bulk-create ./pages --path-prefix "/imported"

# Watch mode for continuous sync
wikijs sync --output ~/wiki-mirror --watch --interval 60

# Debug API issues
wikijs --debug list

# Clone a page
wikijs clone 42 "/docs/new-page" --with-tags

# Find orphan pages (no incoming links)
wikijs orphans

# Search and replace across wiki
wikijs replace "oldterm" "newterm" --path "/docs" --dry-run

# Generate table of contents
wikijs toc 42 --format markdown

# Find duplicate content
wikijs duplicates --threshold 80

# Generate sitemap for SEO
wikijs sitemap --output sitemap.xml

# Interactive shell mode
wikijs shell

# Watch a page for changes
wikijs watch "/docs/api" --interval 60

# Spell check a page
wikijs spellcheck 42 --lang en --ignore "API,CLI,GraphQL"

# Validate all pages
wikijs validate --all --format json

Integration Notes

  • All commands return exit code 0 on success, 1 on failure
  • Use --format json for machine-readable output
  • Delete operations prompt for confirmation unless --force is used
  • Escape sequences (\n, \t) are interpreted in --content strings
  • Templates support placeholders: {{title}}, {{path}}, {{date}}