limitless-cli

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Limitless CLI Skill

Limitless CLI 工具

A comprehensive CLI tool for interacting with Limitless.ai Pendant data, featuring FalkorDBLite semantic graph with vector embeddings, content extraction, and DAG pipelines.
这是一款用于与Limitless.ai Pendant数据交互的综合性CLI工具,具备FalkorDBLite语义图谱(含向量嵌入)、内容提取和DAG流水线功能。

When to Use

适用场景

  • User wants semantic search across lifelogs, chats, persons, or topics
  • User wants to query lifelogs or personal memory data
  • User wants to extract entities (speakers, topics) from conversations
  • User wants to sync lifelogs to a graph database
  • User wants to run extraction or analysis pipelines
  • User mentions "Limitless", "pendant", "lifelog", or "personal memory"
  • User needs domain-specific extraction (medical, technical, business)
  • 用户需要对生活日志、聊天记录、人物或话题进行语义搜索
  • 用户需要查询生活日志或个人记忆数据
  • 用户需要从对话中提取实体(发言者、话题)
  • 用户需要将生活日志同步到图谱数据库
  • 用户需要运行提取或分析流水线
  • 用户提及“Limitless”、“pendant”、“lifelog”或“personal memory”
  • 用户需要特定领域的提取(医疗、技术、商务)

Quick Start

快速开始

Semantic Search (Recommended)

语义搜索(推荐)

bash
undefined
bash
undefined

Semantic search across lifelogs (vector-based similarity)

基于向量相似度的生活日志语义搜索

limitless semantic-search "ICU critical care discussion" --types Lifelog --scores
limitless semantic-search "ICU重症监护讨论" --types Lifelog --scores

Search multiple node types

搜索多种节点类型

limitless semantic-search "family doctor" --types Lifelog,Chat,Person --limit 10
limitless semantic-search "家庭医生" --types Lifelog,Chat,Person --limit 10

Hybrid search (semantic + full-text)

混合搜索(语义+全文)

limitless search "medical exam" --mode hybrid
limitless search "体检" --mode hybrid

Check index status (embeddings, node counts)

检查索引状态(嵌入向量、节点数量)

limitless index status
undefined
limitless index status
undefined

Graph Queries

图谱查询

bash
undefined
bash
undefined

Cypher query on semantic graph

在语义图谱上执行Cypher查询

limitless graph query "MATCH (p:Person)-[:SPOKE_IN]->(l:Lifelog) RETURN p.name, count(l) ORDER BY count(l) DESC LIMIT 10"
limitless graph query "MATCH (p:Person)-[:SPOKE_IN]->(l:Lifelog) RETURN p.name, count(l) ORDER BY count(l) DESC LIMIT 10"

Graph statistics

图谱统计

limitless graph stats
undefined
limitless graph stats
undefined

Basic Operations

基础操作

bash
undefined
bash
undefined

List recent lifelogs

列出近期生活日志

limitless lifelogs list --limit 10
limitless lifelogs list --limit 10

Search for topic (full-text)

全文搜索话题

limitless lifelogs search "topic"
limitless lifelogs search "话题"

Get specific lifelog

获取特定生活日志

limitless lifelogs get <id> --format json
undefined
limitless lifelogs get <id> --format json
undefined

Architecture

架构

FalkorDBLite Semantic Graph

FalkorDBLite语义图谱

The CLI uses an embedded FalkorDBLite graph database (no Docker required) with vector embeddings for semantic search.
ComponentDetails
DatabaseFalkorDBLite via Python service
Socket
~/.limitless/falkordb.sock
(Unix domain)
EmbeddingsBGE-small-en-v1.5 (384-dim, FastEmbed)
Vector IndexesLifelog, Chat, Person, Topic
Graph Statistics (as of 2026-01-11):
  • 95,021 nodes (8,777 Lifelogs, 2,608 Chats, 1,549 Persons, 33,024 Topics, 47,027 Speakers)
  • 81,356 relationships (SPOKE_IN, HAS_TOPIC, HAS_CONTACT)
  • 100% embedding coverage on searchable nodes
该CLI使用嵌入式FalkorDBLite图谱数据库(无需Docker),结合向量嵌入实现语义搜索。
组件详情
数据库通过Python服务连接FalkorDBLite
套接字
~/.limitless/falkordb.sock
(Unix域套接字)
嵌入模型BGE-small-en-v1.5(384维,FastEmbed)
向量索引Lifelog、Chat、Person、Topic
图谱统计数据(截至2026-01-11):
  • 95,021个节点(8,777个Lifelog、2,608个Chat、1,549个Person、33,024个Topic、47,027个Speakers)
  • 81,356条关系(SPOKE_IN、HAS_TOPIC、HAS_CONTACT)
  • 可搜索节点的嵌入覆盖率达100%

Core Commands

核心命令

CommandPurpose
semantic-search <query>
Vector similarity search
search <query> --mode hybrid
Combined semantic + full-text
index status
Show node counts, embeddings
graph query <cypher>
Execute Cypher queries
lifelogs list/search/get
Basic lifelog operations
命令用途
semantic-search <query>
向量相似度搜索
search <query> --mode hybrid
语义+全文混合搜索
index status
显示节点数量、嵌入向量状态
graph query <cypher>
执行Cypher查询
lifelogs list/search/get
生活日志基础操作

References (Load on Demand)

参考文档(按需加载)

  • API Reference: Rate limiting (180 req/min), retry logic
  • Database Schema: Node types, relationships, vector indexes
  • Extraction Rules: Rule-based and LLM extraction patterns
  • Pipeline DSL: YAML syntax, node types, templates
  • API参考:请求限制(180次/分钟)、重试逻辑
  • 数据库 schema:节点类型、关系、向量索引
  • 提取规则:基于规则和LLM的提取模式
  • 流水线DSL:YAML语法、节点类型、模板

Command Reference

命令参考

Semantic Search (Primary)

语义搜索(核心功能)

bash
undefined
bash
undefined

Vector-based semantic search

基于向量的语义搜索

semantic-search <query> [--types Lifelog,Chat,Person,Topic] [--limit N] [--threshold 0.15] [--scores] [--json]
semantic-search <query> [--types Lifelog,Chat,Person,Topic] [--limit N] [--threshold 0.15] [--scores] [--json]

Hybrid search (semantic + full-text)

混合搜索(语义+全文)

search <query> [--mode semantic|fulltext|hybrid] [--types ...] [--limit N] [--json]
search <query> [--mode semantic|fulltext|hybrid] [--types ...] [--limit N] [--json]

Index management

索引管理

index status # Show node counts, embeddings, vector indexes index build --export-path <path> # Build from Limitless export
undefined
index status # 显示节点数量、嵌入向量、向量索引状态 index build --export-path <path> # 从Limitless导出数据构建索引
undefined

Graph Database

图谱数据库

bash
graph query <cypher> [--json]   # Execute Cypher query
graph stats                     # Show database statistics
graph traverse <label> <id>     # Traverse from node
bash
graph query <cypher> [--json]   # 执行Cypher查询
graph stats                     # 显示数据库统计数据
graph traverse <label> <id>     # 从指定节点遍历图谱

Lifelogs

生活日志

bash
lifelogs list [--date YYYY-MM-DD] [--starred] [--limit N] [--json]
lifelogs get <id> [--json]
lifelogs search <query> [--limit N] [--json]
bash
lifelogs list [--date YYYY-MM-DD] [--starred] [--limit N] [--json]
lifelogs get <id> [--json]
lifelogs search <query> [--limit N] [--json]

Pipelines

流水线

bash
pipeline run <template|file> [--var key=value]
pipeline list       # List available templates
Available templates:
  • daily-digest.yaml
    - Daily lifelog summary
  • weekly-review.yaml
    - Comprehensive weekly analysis
  • hierarchical-extraction.yaml
    - Full entity extraction
  • session-extraction.yaml
    - Session detection
  • extract-actions.yaml
    - Action item extraction
  • memory-query.yaml
    - Context-augmented response
  • research.yaml
    - Lifelog + web synthesis
bash
pipeline run <template|file> [--var key=value]
pipeline list       # 列出可用模板
可用模板:
  • daily-digest.yaml
    - 每日生活日志摘要
  • weekly-review.yaml
    - 每周综合分析
  • hierarchical-extraction.yaml
    - 完整实体提取
  • session-extraction.yaml
    - 会话检测
  • extract-actions.yaml
    - 行动项提取
  • memory-query.yaml
    - 上下文增强响应
  • research.yaml
    - 生活日志+网页信息综合

Workflows

工作流

bash
workflow daily <date>    # Complete day snapshot
workflow search <query>  # Cross-source search
workflow recent          # Recent activity summary
bash
workflow daily <date>    # 生成当日完整快照
workflow search <query>  # 跨数据源搜索
workflow recent          # 近期活动摘要

Domain Extraction Pattern

领域提取模式

For domain-specific extraction, use this configurable pattern:
typescript
// Define domain patterns
const patterns = [
  { pattern: /ondansetron/gi, category: '5HT3 antagonist', displayName: 'Ondansetron' },
  { pattern: /droperidol/gi, category: 'Dopamine antagonist', displayName: 'Droperidol' },
];

// Filter lifelogs by domain keywords
const filtered = lifelogs.filter(l =>
  patterns.some(p => p.pattern.test(l.markdown))
);

// Extract using rule-based extraction
const results = extractFromLifelog(lifelog);

// Sync to graph with graceful degradation
try {
  await dbClient.connect();
  await lifelogRepo.upsert(lifelog);
} catch (error) {
  console.log(`⚠️ Graph sync skipped: ${error.message}`);
}
See
references/extraction-rules.md
for the full pattern library.
针对特定领域的提取,可使用以下可配置模式:
typescript
// 定义领域模式
const patterns = [
  { pattern: /ondansetron/gi, category: '5HT3 antagonist', displayName: 'Ondansetron' },
  { pattern: /droperidol/gi, category: 'Dopamine antagonist', displayName: 'Droperidol' },
];

// 按领域关键词过滤生活日志
const filtered = lifelogs.filter(l =>
  patterns.some(p => p.pattern.test(l.markdown))
);

// 使用基于规则的提取方式
const results = extractFromLifelog(lifelog);

// 优雅降级同步到图谱
try {
  await dbClient.connect();
  await lifelogRepo.upsert(lifelog);
} catch (error) {
  console.log(`⚠️ 跳过图谱同步:${error.message}`);
}
完整的模式库请查看
references/extraction-rules.md

Environment Variables

环境变量

bash
LIMITLESS_API_KEY       # Required - API authentication
ANTHROPIC_API_KEY       # Optional - For LLM extraction
FALKORDB_HOST          # Default: localhost
FALKORDB_PORT          # Default: 6379
bash
LIMITLESS_API_KEY       # 必填 - API认证密钥
ANTHROPIC_API_KEY       # 可选 - 用于LLM提取
FALKORDB_HOST          # 默认值:localhost
FALKORDB_PORT          # 默认值:6379

Graceful Degradation

优雅降级机制

The CLI handles missing dependencies gracefully:
DependencyIf Missing
FalkorDBContinues without graph sync, warns user
Anthropic APIFalls back to rule-based extraction
DockerUses remote FalkorDB if configured
当依赖缺失时,CLI会自动处理:
依赖项缺失时的处理
FalkorDB继续运行但跳过图谱同步,并向用户发出警告
Anthropic APIfallback到基于规则的提取方式
Docker若已配置,则使用远程FalkorDB服务

Troubleshooting

故障排查

"FalkorDBLite service not running"

"FalkorDBLite服务未运行"

  • The Python service auto-starts on first use
  • Manual start:
    cd ~/Projects/limitless-cli/python && uv run python -m limitless_graph.server
  • Check socket:
    ls ~/.limitless/falkordb.sock
  • Python服务会在首次使用时自动启动
  • 手动启动:
    cd ~/Projects/limitless-cli/python && uv run python -m limitless_graph.server
  • 检查套接字:
    ls ~/.limitless/falkordb.sock

"No results from semantic search"

"语义搜索无结果"

  • Lower threshold:
    --threshold 0.1
    (BGE scores are typically 0.15-0.35)
  • Check embeddings:
    limitless index status
  • Try different node types:
    --types Lifelog,Chat,Person,Topic
  • 降低阈值:
    --threshold 0.1
    (BGE模型的分数通常在0.15-0.35之间)
  • 检查嵌入向量状态:
    limitless index status
  • 尝试不同的节点类型:
    --types Lifelog,Chat,Person,Topic

"Rate limited (429)"

"请求受限(429)"

  • Wait for rate limit window (180 req/min, refills 3/sec)
  • Check:
    config show
    for current settings
  • 等待限制窗口重置(180次/分钟,每秒恢复3次请求)
  • 查看当前配置:
    config show

Integration with Other Skills

与其他工具集成

This skill integrates with:
  • context-orchestrator: Use
    /limitless
    command for personal memory context
  • error-recovery: Graceful degradation patterns applied
  • deep-research: Combine with web research for synthesis pipelines
本工具可与以下工具集成:
  • context-orchestrator:使用
    /limitless
    命令获取个人记忆上下文
  • error-recovery:应用了优雅降级模式
  • deep-research:与网页研究工具结合实现综合流水线

Project Location

项目位置

~/Projects/limitless-cli/
├── src/
│   ├── api/           # Rate-limited API client (180 req/min)
│   ├── db/            # FalkorDB repositories (9 repos)
│   ├── dag/           # Pipeline engine (YAML DSL)
│   ├── extraction/    # Rule + LLM extraction
│   ├── agent/         # Claude Agent SDK harness
│   └── cli/           # Commander.js commands
├── templates/         # 7 pipeline templates
└── scripts/           # Demo and utility scripts
~/Projects/limitless-cli/
├── src/
│   ├── api/           # 受限请求API客户端(180次/分钟)
│   ├── db/            # FalkorDB数据仓库(9个仓库)
│   ├── dag/           # 流水线引擎(YAML DSL)
│   ├── extraction/    # 规则+LLM提取模块
│   ├── agent/         # Claude Agent SDK封装
│   └── cli/           # Commander.js命令定义
├── templates/         # 7个流水线模板
└── scripts/           # 演示和实用脚本