CLI Command Reference

GEO Wiki Pro CLI command reference covering all 17 commands with parameters and usage

> GEO Wiki Pro CLI v1.0.7 provides 17 commands, covering document management, draft management, category management, tag management, search, configuration, user management, and more. --- ## Command Overview | Command | Description | Requires Login | |---------|-------------|---------------| | `geo login` | Log in to the server | No | | `geo logout` | Log out and clear credentials | No | | `geo status` | View connection status | No | | `geo health` | Server health check | No | | `geo doc` | Document management (CRUD + slug rename + sort + trash) | Yes | | `geo category` | Category management (CRUD + sort) | Yes | | `geo tag` | Tag management (create/list/delete) | Yes | | `geo search` | Search documents | No | | `geo config` | Site configuration read/write | Yes | | `geo user` | User management + Token management | Yes | | `geo draft` | Draft management (list/view/publish/delete) | Yes | | `geo stats` | Dashboard statistics | Yes | | `geo feedback` | User feedback management | Yes | | `geo guestbook` | Guestbook management | Yes | | `geo media` | Media file upload/list/delete | Yes | | `geo geo` | GEO status, report, rebuild | Yes | --- ## Authentication Commands ### geo login Log in to the GEO Wiki Pro server. Uses API Token authentication, valid for 90 days. ```bash geo login --url https://geowiki.pro --token geo_xxxxx ``` | Parameter | Short | Description | Required | |-----------|-------|-------------|----------| | `--url` | `-u` | Server address | Yes | | `--token` | `-t` | API Token | Yes | > Generate tokens in the admin panel under Settings -> API Token. ### geo logout Clear locally saved authentication information. ```bash geo logout ``` ### geo status View current connection status and user information. ```bash geo status ``` ### geo health Check server health status. No authentication required. Suitable for deployment verification and monitoring scripts. ```bash geo health geo health --json ``` Example output: ``` ✅ Server is healthy URL: https://geowiki.pro Status: 200 OK ``` --- ## Document Commands ### geo doc list List all documents. ```bash geo doc list geo doc list --category can-motion geo doc list --lang zh --json ``` | Parameter | Short | Description | Required | |-----------|-------|-------------|----------| | `--category` | | Filter by category | No | | `--lang` | `-l` | Language (required: zh/en/jp) | Yes | | `--page` | | Page number (default 1) | No | | `--limit` | | Items per page (default 50) | No | ### geo doc get Get document content. ```bash geo doc get --slug quick-start geo doc get --slug quick-start --lang en geo doc get --slug quick-start --format json ``` | Parameter | Short | Description | Required | |-----------|-------|-------------|----------| | `--slug` | `-s` | Document slug | Yes | | `--lang` | `-l` | Language (default zh) | No | | `--format` | `-f` | Output format: markdown or json | No | ### geo doc create Create a new document. ```bash # Create from file geo doc create --file ./my-doc.md --category can-motion --lang zh # Create with inline content geo doc create --title "Title" --category docs --slug my-doc --content "# Body content" # Save as draft geo doc create --file ./my-doc.md --category guide --draft ``` | Parameter | Short | Description | Required | |-----------|-------|-------------|----------| | `--file` | `-f` | Markdown file path | Yes (or --title) | | `--title` | `-t` | Document title (used when no file) | Yes (or --file) | | `--content` | | Inline content (no file needed) | No | | `--category` | `-c` | Category slug | No | | `--slug` | `-s` | Custom slug | No | | `--lang` | `-l` | Language code (required: zh/en/jp) | Yes | | `--tags` | `-T` | Comma-separated tags | No | | `--author` | `-a` | Author (default: Agent) | No | | `--sort` | | Sort value (default 999) | No | | `--draft` | | Save as draft (do not publish directly) | No | ::: tip Files should contain YAML frontmatter (title, slug, category, tags, author). If the file contains frontmatter, command-line arguments can be omitted — the CLI will extract them automatically. ::: ### geo doc update Update a document. Supports single-field updates — only the specified field is modified, all other fields remain unchanged. ```bash # Update from file (safest) geo doc update --slug my-doc --file ./updated.md # Update title geo doc update --slug my-doc --title "New Title" --lang zh # Update description geo doc update --slug my-doc --description "New Description" --lang zh # Update author geo doc update --slug my-doc --author "John Doe" --lang zh # Update tags geo doc update --slug my-doc --tags "tag1,tag2" --lang zh # Update notice geo doc update --slug my-doc --notice "This document has been updated" --lang zh # Update sort value only geo doc update --slug my-doc --sort 0 # Update category only geo doc update --slug my-doc --category new-category # Update content only geo doc update --slug my-doc --content "# New Title\n\nNew content" # Save as draft geo doc update --slug my-doc --file ./updated.md --draft ``` | Parameter | Short | Description | Required | |-----------|-------|-------------|----------| | `--slug` | `-s` | Document slug | Yes | | `--file` | `-f` | Updated file path | Yes (one of) | | `--content` | | Inline content | Yes (one of) | | `--title` | `-t` | Update title | No | | `--description` | `-d` | Update description | No | | `--author` | `-a` | Update author | No | | `--tags` | `-T` | Update tags (comma-separated) | No | | `--notice` | | Update notice | No | | `--category` | `-c` | New category | No | | `--sort` | | New sort value | No | | `--lang` | `-l` | Language code | No | | `--draft` | | Save as draft | No | ::: note Single-field updates only modify the specified field; all other fields retain their original values. ::: ### geo doc delete Delete a document (moves to trash, auto-purged after 30 days). ```bash geo doc delete --slug my-doc geo doc delete --slug my-doc --yes # Skip confirmation ``` | Parameter | Short | Description | Required | |-----------|-------|-------------|----------| | `--slug` | `-s` | Document slug | Yes | | `--lang` | `-l` | Language code | No | | `--yes` | `-y` | Skip confirmation prompt | No | ### geo doc slug-rename Rename a document's URL slug. All language versions (zh/en/jp) share the same slug — renaming updates all versions simultaneously. Title, content, and other fields are not affected. ```bash geo doc slug-rename --slug old-name --new-slug new-name geo doc slug-rename --slug my-doc --new-slug my-document --json ``` | Parameter | Short | Description | Required | |-----------|-------|-------------|----------| | `--slug` | `-s` | Current document slug | Yes | | `--new-slug` | | New slug | Yes | ::: warning Changing the slug will change the document URL. If other documents link to the old slug, they need to be updated manually. ::: ### geo doc trash / recover View and recover documents in the trash. ```bash geo doc trash # List trash geo doc trash --clear # Empty trash geo doc recover --file my-doc-zh-123456.md # Recover document ``` ### geo doc reorder Batch adjust document sort order. ```bash geo doc reorder --orders "quick-start:0,faq:1,architecture:2" ``` | Parameter | Short | Description | Required | |-----------|-------|-------------|----------| | `--orders` | `-o` | Format: `slug1:sort-value,slug2:sort-value` | Yes | --- ## Category Commands ### geo category list List all categories. ```bash geo category list geo category list --json ``` ### geo category create Create a category. ```bash geo category create --name "CAN Motor" --name-en "CAN MOTION" --slug can-motion ``` | Parameter | Description | Required | |-----------|-------------|----------| | `--name` | Category name (default language) | Yes | | `--name-en` | English name | No | | `--name-jp` | Japanese name | No | | `--slug` | Category slug | Yes | ### geo category update Update category information. ```bash geo category update --slug can-motion --name "New Name" --name-en "New Name" ``` ### geo category reorder Batch adjust category sort order. ```bash geo category reorder --orders "products:0,technical:1,support:2" ``` ### geo category delete Delete a category. ```bash geo category delete --slug old-category ``` --- ## Tag Commands ### geo tag list / create / delete ```bash geo tag list geo tag list --json geo tag create --name "CAN Bus" --slug can-bus geo tag delete --slug can-bus ``` | Parameter | Short | Description | Required | |-----------|-------|-------------|----------| | `--slug` | `-s` | Tag slug | Yes | | `--name` | `-n` | Tag display name | Yes (for create) | --- ## Search Commands ### geo search Search documents. ```bash geo search "CAN bus" --lang zh geo search "motor" --category can-motion --lang zh geo search "Arduino" --lang en --json ``` | Parameter | Short | Description | Required | |-----------|-------|-------------|----------| | `--category` | `-c` | Filter by category | No | | `--lang` | `-l` | Language (required: zh/en/jp) | Yes | | `--limit` | | Maximum results (default 20) | No | --- ## Configuration Commands ### geo config get Get site configuration. ```bash geo config get geo config get --json ``` ### geo config update Update site configuration. ```bash geo config update --site-name "My Knowledge Base" geo config update --hero-title-zh "Welcome" --hero-title-en "Welcome" geo config update --hero-subtitle-zh "Product Docs" --hero-subtitle-en "Product Docs" geo config update --featured-slugs "quick-start,faq,overview" geo config update --logo-url "/media/logo.png" --favicon-url "/media/favicon.ico" geo config update --custom-head '<meta name="theme-color" content="#2563EB">' ``` | Parameter | Description | Required | |-----------|-------------|----------| | `--site-name` | Site name | No | | `--site-desc` | Site description (SEO) | No | | `--default-lang` | Default language (zh, en, jp) | No | | `--hero-title` | Hero section title | No | | `--hero-title-zh` | Hero title (Chinese) | No | | `--hero-title-en` | Hero title (English) | No | | `--hero-title-jp` | Hero title (Japanese) | No | | `--hero-subtitle` | Hero section subtitle | No | | `--hero-subtitle-zh` | Hero subtitle (Chinese) | No | | `--hero-subtitle-en` | Hero subtitle (English) | No | | `--hero-subtitle-jp` | Hero subtitle (Japanese) | No | | `--featured-slugs` | Comma-separated recommended document slugs | No | | `--logo-url` | Logo image path | No | | `--favicon-url` | Favicon path | No | | `--custom-head` | Custom HTML (injected into `<head>`) | No | --- ## User Commands ### geo user list / create / update / delete ```bash geo user list geo user list --json geo user create --username editor1 --password MyPass123 --role editor geo user update --id user-xxx --role admin geo user reset-password --id user-xxx geo user delete --id user-xxx ``` | Parameter | Description | Required | |-----------|-------------|----------| | `--id` | User ID (required for update/delete/reset-password) | Yes | | `--username` | Username (required for create) | Yes | | `--password` | Password (required for create) | Yes | | `--role` | Role: admin / editor / viewer (default: editor) | No | ### geo user token Manage API Tokens. ```bash geo user token list # List all tokens geo user token list --json # JSON format output geo user token delete --id token-id # Revoke token ``` ::: note API Tokens can only be created in the admin panel under Settings -> API Token. ::: --- ## Draft Commands ```bash geo draft list # List all drafts geo draft list --json # JSON format output geo draft get --slug my-draft # View draft content geo draft publish --slug my-draft # Publish draft geo draft publish --slug my-draft --lang en # Publish draft (specific language) geo draft delete --slug my-draft # Delete draft geo draft delete --slug my-draft --lang en # Delete draft (specific language) ``` | Parameter | Short | Description | Required | |-----------|-------|-------------|----------| | `--slug` | `-s` | Draft slug | Yes | | `--lang` | `-l` | Language code | No | | `--json` | | JSON format output | No | --- ## Statistics Commands ```bash geo stats # View dashboard statistics geo stats metrics # View detailed system metrics geo stats --json # JSON format output ``` --- ## Feedback Commands ```bash geo feedback list # List all feedback geo feedback list --json # JSON format output geo feedback delete --id "feedback-id" # Delete feedback geo feedback promote --id "feedback-id" # Promote feedback to document content or FAQ ``` --- ## Guestbook Commands ```bash geo guestbook list # List all guestbook entries geo guestbook list --json # JSON format output geo guestbook toggle --enabled true # Enable guestbook geo guestbook toggle --enabled false # Disable guestbook geo guestbook update --id "entry-id" --status approved # Approve geo guestbook update --id "entry-id" --status rejected # Reject geo guestbook delete --id "entry-id" # Delete entry ``` --- ## Media Commands ```bash geo media upload --file ./diagram.png geo media upload --file ./manual.pdf --directory docs geo media upload --file ./model.step --directory models geo media list --json geo media delete --file old-image.jpg ``` | Parameter | Short | Description | Required | |-----------|-------|-------------|----------| | `--file` | `-f` | Local file path (upload) or filename (delete) | Yes | | `--directory` | `-d` | Subdirectory under public/media | No | ### Supported File Types | Type | Formats | |------|---------| | Images | JPG, PNG, GIF, WebP | | Video | MP4, WebM | | Audio | MP3, WAV, OGG | | Documents | PDF, DOC, DOCX, TXT, MD | | 3D Models | STEP, STP, IGS | --- ## GEO Commands ### geo geo status View GEO optimization status. ```bash geo geo status ``` ### geo geo rebuild Rebuild GEO files (llms.txt, sitemap.xml). ```bash geo geo rebuild ``` ### geo geo report View GEO analytics report. ```bash geo geo report geo geo report --json ``` ### geo geo llms / sitemap / manifest ```bash geo geo llms # View llms.txt content geo geo sitemap # View sitemap.xml content geo geo manifest # View site manifest ``` --- ## Global Options All commands support the `--json` flag for machine-readable JSON output, suitable for Agent parsing. --- ## Related Documents - [CLI Installation and Login](/docs/cli-install) -- Installation and login guide - [CLI Quick Reference](/docs/cli-quick-reference) -- Agent quick reference card - [GEO Wiki Pro User Manual](/docs/geo-wiki-pro-user-manual) -- Complete user manual - [REST API Documentation](/docs/rest-api) -- API endpoint reference