/install crm-in-a-box
CRM-in-a-Box Skill
An open, agent-native CRM protocol. One directory = one CRM. No vendor lock-in.
Files
contacts.ndjson— one JSON object per line, each a contact/company recordpipeline.ndjson— deal/opportunity tracking with stagesinteractions.ndjson— append-only log of emails, calls, notes, meetingsconfig.yaml— pipeline stages and labels
Bootstrap a New CRM
Copy the baseline files into a company directory:
mkdir -p ./mycompany/crm
cp /path/to/crm-in-a-box/{config.yaml,contacts.ndjson,pipeline.ndjson,interactions.ndjson} ./mycompany/crm/
Or start fresh with empty NDJSON files and the default config.
Contact Schema
{
"id": "c001",
"name": "Jane Smith",
"email": "[email protected]",
"company": "Acme Corp",
"phone": "+1-555-0100",
"stage": "new",
"labels": ["hot-lead"],
"notes": "Referred by John.",
"created_at": "2026-01-01T00:00:00Z"
}
Pipeline Schema
{
"id": "p001",
"contact_id": "c001",
"stage": "proposal_sent",
"deal": "Enterprise License",
"value": 12000,
"updated_at": "2026-01-15T00:00:00Z"
}
Interaction Schema
{
"id": "i001",
"contact_id": "c001",
"type": "email",
"summary": "Sent intro email about Denver market sale.",
"at": "2026-01-15T10:00:00Z"
}
Pipeline Stages (default)
new → contacted → meeting_scheduled → proposal_sent → negotiating → won / lost
Default Labels
hot-lead, warm-lead, cold-lead, referral, conference, inbound, outbound
Agent Instructions
- Log a contact: append a JSON line to
contacts.ndjson - Update a stage: append an updated entry to
pipeline.ndjson(keep old entries — append-only) - Log an interaction: append to
interactions.ndjson - Search contacts:
grep -i "name" contacts.ndjson | python3 -m json.tool - List pipeline:
cat pipeline.ndjson | python3 -c "import sys,json; [print(json.dumps(json.loads(l), indent=2)) for l in sys.stdin]"
Forks / Verticals
Fork config.yaml to customize stages and labels for your vertical:
pm-crm— Property management (tenants, owners, vendors)saas-crm— SaaS salesrealestate-crm— Buyers, sellers, listingsrecruiting-crm— Candidates, jobs, placements
Part of the biz-in-a-box family of open protocols.
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install crm-in-a-box - 安装完成后,直接呼叫该 Skill 的名称或使用
/crm-in-a-box触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
CRM-in-a-Box 是什么?
Bootstrap and manage an open, file-based CRM using the CRM-in-a-Box protocol (contacts, pipeline, interactions as NDJSON). Use when setting up a new CRM for... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 1002 次。
如何安装 CRM-in-a-Box?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install crm-in-a-box」即可一键安装,无需额外配置。
CRM-in-a-Box 是免费的吗?
是的,CRM-in-a-Box 完全免费(开源免费),可自由下载、安装和使用。
CRM-in-a-Box 支持哪些平台?
CRM-in-a-Box 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 CRM-in-a-Box?
由 taylorhou(@taylorhou)开发并维护,当前版本 v0.1.0。