🤖
CrabPath
具有调用者提供的嵌入和 LLM 回调的内存图引擎;核心是纯粹的,具有实时校正流程和可选的 OpenAI 集成。
安全通过
⚙️脚本
技能说明
name: crabpath description: Memory graph engine with caller-provided embed and LLM callbacks; core is pure, with real-time correction flow and optional OpenAI integration. metadata: openclaw: emoji: "🦀" requires: python: ">=3.10"
CrabPath
Pure graph core: zero required deps and no network calls. Caller provides callbacks.
Design Tenets
- No network calls in core
- No secret discovery (no dotfiles, keychain, or env probing)
- No subprocess provider wrappers
- Embedder identity in state metadata; dimension mismatches are errors
- One canonical state format (
state.json)
Quick Start
from crabpath import split_workspace, HashEmbedder, VectorIndex
graph, texts = split_workspace("./workspace")
embedder = HashEmbedder()
index = VectorIndex()
for nid, content in texts.items():
index.upsert(nid, embedder.embed(content))
Embeddings and LLM callbacks
- Default:
HashEmbedder(hash-v1, 1024-dim) - Real: callback
embed_fn/embed_batch_fn(e.g.,text-embedding-3-small) - LLM routing: callback
llm_fnusinggpt-5-mini(example)
Session Replay
replay_queries(graph, queries) can warm-start from historical turns.
CLI
--state is preferred:
crabpath query TEXT --state S [--top N] [--json]
crabpath query TEXT --state S --chat-id CID
crabpath doctor --state S
crabpath info --state S
crabpath init --workspace W --output O --embedder openai
crabpath query TEXT --state S --llm openai
crabpath inject --state S --type TEACHING [--type DIRECTIVE]
Real-time correction flow:
python3 query_brain.py --chat-id CHAT_ID
python3 learn_correction.py --chat-id CHAT_ID
Quick Reference
crabpath init/query/learn/inject/health/doctor/infoquery_brain.py --chat-idandlearn_correction.pyfor real-time correction pipelinesquery_brain.pytraversal limits:beam_width=8,max_hops=30,fire_threshold=0.01- Hard traversal caps:
max_fired_nodesandmax_context_chars(defaultsNone;query_brain.pydefaultsmax_context_chars=20000) examples/correction_flow/,examples/cold_start/,examples/openai_embedder/
API Reference
- Core lifecycle:
split_workspaceload_statesave_stateManagedStateVectorIndex
- Traversal and learning:
traverseTraversalConfigTraversalConfig.beam_width,.max_hops,.fire_threshold,.max_fired_nodes,.max_context_chars,.reflex_threshold,.habitual_range,.inhibitory_thresholdTraversalResultapply_outcome
- Runtime injection APIs:
inject_nodeinject_correctioninject_batch
- Maintenance helpers:
suggest_connections,apply_connectionssuggest_merges,apply_mergemeasure_health,autotune,replay_queries
- Embedding utilities:
HashEmbedderOpenAIEmbedderdefault_embeddefault_embed_batchopenai_llm_fn
- LLM routing callbacks:
chat_completion
- Graph primitives:
NodeEdgeGraphsplit_workspacegenerate_summaries
CLI Commands
crabpath init --workspace W --output O [--sessions S] [--embedder openai]crabpath query TEXT --state S [--top N] [--json] [--chat-id CHAT_ID]crabpath learn --state S --outcome N --fired-ids a,b,c [--json]crabpath inject --state S --id NODE_ID --content TEXT [--type CORRECTION|TEACHING|DIRECTIVE] [--json] [--connect-min-sim 0.0]crabpath inject --state S --id NODE_ID --content TEXT --type TEACHINGcrabpath inject --state S --id NODE_ID --content TEXT --type DIRECTIVEcrabpath health --state Scrabpath doctor --state Scrabpath info --state Scrabpath replay --state S --sessions Scrabpath merge --state S [--llm openai]crabpath connect --state S [--llm openai]crabpath journal [--stats]query_brain.py --chat-id CHAT_IDlearn_correction.py --chat-id CHAT_ID
Traversal defaults
beam_width=8max_hops=30fire_threshold=0.01reflex_threshold=0.6habitual_range=0.2-0.6inhibitory_threshold=-0.01max_fired_nodes(hard node-count cap, defaultNone)max_context_chars(hard context cap, defaultNone;query_brain.pydefault is20000)
Paper
如何使用「CrabPath」?
- 打开小龙虾AI(Web 或 iOS App)
- 点击上方「立即使用」按钮,或在对话框中输入任务描述
- 小龙虾AI 会自动匹配并调用「CrabPath」技能完成任务
- 结果即时呈现,支持继续对话优化