mcpField
F
felo-livedoc

felo-livedoc

github.com/felo-incProductivity25084 installsUpdated 14w ago
Repository

About felo-livedoc

felo-livedoc is a skill for managing LiveDoc knowledge bases, resources, and tasks, aimed at users organizing documents and searching them semantically. It also supports README management, resource routing, and task comments.

Key features

  1. 01Create and manage LiveDocs
  2. 02Add, view, and remove resources
  3. 03Search resources semantically
  4. 04Manage READMEs and tasks
  5. 05View task records and add comments

Use cases

  1. 01Organize documents and web resources
  2. 02Retrieve relevant content from resources
  3. 03Track tasks and record comments

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/felo-inc/felo-skills --skill felo-livedoc

After installing, type/felo-livedocin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

clawhub.json
LICENSE
README.md
scripts/
run_livedoc.mjs

Details

From the project README

Felo LiveDoc Skill

When to Use

Trigger this skill when users want to:

  • Create/manage knowledge bases: Create, list, update, or delete LiveDocs
  • Add resources: Upload documents, add URLs, or create text documents in a LiveDoc
  • Semantic retrieval: Search across knowledge base resources using natural language queries
  • Route resources: Find relevant resource IDs by query for targeted retrieval
  • Resource management: List, view, or delete resources within a LiveDoc
  • README management: Get, create, update, append, or delete a LiveDoc's README
  • Task management: Create, update, delete tasks; add comments; view change history

Trigger words:

  • English: knowledge base, livedoc, live doc, upload document, add URL, semantic search, retrieve, knowledge retrieval, route resources, readme, task, task management, comment
  • 简体中文: 知识库, 文档库, 上传文档, 添加链接, 语义检索, 知识检索, 任务, 任务管理, 评论

Explicit commands: /felo-livedoc, "livedoc", "felo livedoc"

Do NOT use for:

  • General web search (use felo-search)
  • PPT generation (use felo-slides)
  • SuperAgent conversations (use felo-superAgent)

Setup

1. Get Your API Key
  1. Visit felo.ai and log in (or register)
  2. Click your avatar in the top right corner → Settings
  3. Navigate to the "API Keys" tab
  4. Click "Create New Key" to generate a new API Key
  5. Copy and save your API Key securely
2. Configure API Key

Set the FELO_API_KEY environment variable:

Linux/macOS:

export FELO_API_KEY="your-api-key-here"

Windows (PowerShell):

$env:FELO_API_KEY="your-api-key-here"

How to Execute

When this skill is triggered, execute the livedoc script using the Bash tool:

LiveDoc Management

Create a LiveDoc:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs create --name "KB Name" --description "Description"

List LiveDocs:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs list
node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs list --keyword "search term"

Update a LiveDoc:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs update SHORT_ID --name "New Name" --description "New Desc"

Delete a LiveDoc:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs delete SHORT_ID
Resource Management

Add a text document:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs add-doc SHORT_ID --title "Doc Title" --content "Document content here"

Add URLs (max 10, comma-separated):

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs add-urls SHORT_ID --urls "https://example.com,https://example.org"

Each URL can also be passed as a url:title pair using the --url-titles option, or by providing a JSON array. The API accepts both plain strings and {"url": "...", "title": "..."} objects — the script passes them through as-is when using --json mode. To add URLs with custom titles, use the JSON flag and construct the body manually, or rely on the auto-title from the page.

Upload a file:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs upload SHORT_ID --file ./document.pdf
node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs upload SHORT_ID --file ./document.pdf --convert

List resources:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs resources SHORT_ID

Get a single resource:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs resource SHORT_ID RESOURCE_ID

Delete a resource:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs remove-resource SHORT_ID RESOURCE_ID

Update a resource (title/snippet/thumbnail):

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs update-resource SHORT_ID RESOURCE_ID --title "New Title"
node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs update-resource SHORT_ID RESOURCE_ID --snippet "New summary" --thumbnail "https://example.com/thumb.png"

Update resource content (ai_doc type only — also auto-updates snippet from first 2000 bytes):

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs update-resource-content SHORT_ID RESOURCE_ID --content "New content here"
Semantic Retrieval

Route relevant resources by query:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs route SHORT_ID --query "your search query"
node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs route SHORT_ID --query "your search query" --max-resources 5

Search across all resources (auto-routes):

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs retrieve SHORT_ID --query "your search query"

Search within specific resources:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs retrieve SHORT_ID --query "your search query" --resource-ids "id1,id2,id3"
Resource File & Content

Download resource source file (get presigned URL):

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs download SHORT_ID RESOURCE_ID
node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs download SHORT_ID RESOURCE_ID --expires-in 7200

Get extracted text content of a resource:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs content SHORT_ID RESOURCE_ID

PPT page deep retrieval:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs ppt-retrieve SHORT_ID --resource-id RESOURCE_ID --page-number 3 --query "pricing information"
node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs ppt-retrieve SHORT_ID --resource-id RESOURCE_ID --page-number 3 --query "pricing information" --max-chunk 5
README Management

Get README:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs get-readme SHORT_ID

Create or replace README:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs update-readme SHORT_ID --content "# My KB\n\nThis is the README."

Append to README:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs append-readme SHORT_ID --content "\n\n## New Section\n\nAdditional content."

Delete README:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs delete-readme SHORT_ID
Task Management

List tasks (with optional filters):

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs tasks SHORT_ID
node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs tasks SHORT_ID --status 0
node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs tasks SHORT_ID --labels "docs,priority-high"

Create a task:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs create-task SHORT_ID --title "Write docs" --status 0 --sort 0
node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs create-task SHORT_ID --title "Write docs" --status 0 --sort 0 --description "API docs" --labels "docs"
node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs create-task SHORT_ID --title "Write docs" --operated-by "claude-code"

Task status values: 0=TODO, 1=IN_PROGRESS, 2=DONE

Update a task (partial update):

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs update-task SHORT_ID TASK_ID --status 1
node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs update-task SHORT_ID TASK_ID --title "New title" --labels "docs,done"
node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs update-task SHORT_ID TASK_ID --status 2 --operated-by "claude-code"

Delete a task:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs delete-task SHORT_ID TASK_ID

List task records (comments + change history):

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs task-records SHORT_ID TASK_ID
node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs task-records SHORT_ID TASK_ID --record-type comment

Add a comment to a task:

node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs add-task-comment SHORT_ID TASK_ID --content "This is a comment."
node ~/.agents/skills/felo-livedoc/scripts/run_livedoc.mjs add-task-comment SHORT_ID TASK_ID --content "This is a comment." --operated-by "claude-code"
Options

All commands support:

  • --json or -j — output raw JSON response
  • --timeout <ms> or -t <ms> — request timeout in milliseconds (default: 60000)
Parse and Format Response

The API returns JSON with this structure:

{
  "status": "ok",
  "message": "success",
  "data": { ... }
}

LiveDoc object:

  • short_id — unique identifier (use this for all operations)
  • name — LiveDoc name
  • description — LiveDoc description
  • is_shared — true if this LiveDoc was shared with you (not owned by you)
  • created_at / modified_at — timestamps

Resource object:

  • id — resource identifier
  • title — resource title
  • resource_type — type (web, ai_doc, file, etc.)
  • status — processing status
  • snippet — content preview

Retrieve result:

  • id — resource ID
  • title — resource title
  • content — matched content
  • score — relevance score (0-1)

Error Handling

Common Error Codes
  • INVALID_API_KEY — API Key is invalid or revoked
  • LIVEDOC_NOT_FOUND — LiveDoc does not exist
  • LIVEDOC_RESOURCE_NOT_FOUND — Resource does not exist
  • LIVEDOC_CREATE_FAILED — Failed to create LiveDoc
  • LIVEDOC_RESOURCE_UPLOAD_FAILED — File upload failed
  • LIVEDOC_RESOURCE_ADD_URLS_FAILED — URL addition failed
  • LIVEDOC_RESOURCE_RETRIEVE_FAILED — Semantic retrieval failed
  • LIVEDOC_README_GET_FAILED — Failed to get README
  • LIVEDOC_README_UPDATE_FAILED — Failed to create or update README
  • LIVEDOC_README_DELETE_FAILED — Failed to delete README
  • LIVEDOC_TASK_LIST_FAILED — Failed to list tasks
  • LIVEDOC_TASK_CREATE_FAILED — Failed to create task
  • LIVEDOC_TASK_UPDATE_FAILED — Failed to update task
  • LIVEDOC_TASK_DELETE_FAILED — Failed to delete task
  • LIVEDOC_TASK_NOT_FOUND — Task does not exist
  • LIVEDOC_TASK_RECORD_LIST_FAILED — Failed to list task records
  • LIVEDOC_TASK_COMMENT_CREATE_FAILED — Failed to add comment
Missing API Key

If FELO_API_KEY is not set, display this message:

ERROR: FELO_API_KEY not set. Get your API key from https://felo.ai (Settings → API Keys).
Set it with: export FELO_API_KEY="your-key"

Important Notes

  • Always use the short_id returned from create/list to reference a LiveDoc
  • URL resources are limited to 10 per request
  • Use --convert with upload to convert files to searchable documents
  • Semantic retrieval returns results sorted by relevance score
  • Execute immediately using the Bash tool — don't just describe what you would do

Comments

Markdown supported