Skip to main content

KnotLink —— 为所有软件的对话,打一个理解的结

软件互联的通用协议 · 轻量 · 开放 · 语义化


💡 软件本该更懂彼此

你是否有过这样的瞬间——课表软件上显示“下一节是数学”,于是你手动打开屏幕书写软件,切换到对应的讲义,再打开点名器准备点名……每节课重复一次。

你的软件们明明各自擅长一件事,但它们之间却像是隔着语言的巴别塔。

这就是 KnotLink 要解决的问题。


KnotLink 是一个 轻量级的软件互联协议 ,它让不同的应用程序能够互相发现、理解并调用彼此的功能。

它的核心理念很简单:

每个软件只需要一份“功能清单”,就能被整个生态理解和调用。

无论是课表软件、屏幕书写工具、点名器,还是文件传输工具——只要接入 KnotLink,它们就不再是孤岛,而是可以自由协作的生态节点。


传统方式KnotLink 方式
为每个软件写专用的集成代码一份标准的功能清单即可接入
软件之间需要预先约定通信格式通过协议动态发现和调用
跨语言、跨平台集成困难语言无关,协议统一
生态建设成本高,难以扩展一次接入,融入整个生态

🧩 核心特性

1. 功能清单 —— 让软件的能力可见

每个 KnotLink 软件都通过一份 JSON/YAML 格式的 功能清单(Manifest) ,声明自己对外提供的功能。

json

{
"app_id": "com.example.timetable",
"name": "智慧课表",
"functions": [
{
"name": "get_current_course",
"description": "获取当前正在上的课程",
"params": [],
"returns": { "type": "object" }
}
]
}

2. 四种身份 —— 灵活的互联模型

KnotLink 定义了四种标准身份,一个软件可以同时拥有多种:

身份职责
访问者 (Querier)主动发起请求,等待响应
回放者 (Responser)接收请求并返回结果
发信者 (Sender)发送单向信号,不等待响应
订阅者 (Subscriber)监听特定信号,触发回调

3. 三种数据格式 —— 适配不同场景

格式适用场景
键值对轻量传输、嵌入式设备
JSON结构化数据、程序间通信
CMDCLI 交互、Shell 脚本

4. 互联配方 —— 让自动化触手可及

用户可以通过图形化拖拽或声明式配置,将多个软件的功能串联成自动化流程,并一键分享给他人。

yaml

name: "一键上课"
actions:
- call: "timetable.get_current_course"
- call: "inkeys.load_lecture"
- call: "rollcall.start"

📊 与其他方案的对比

维度KnotLinkMCPD-BusgRPCREST API
服务对象普通应用AI 模型系统进程微服务Web 服务
服务发现内置需外部需外部
接入成本极低
语义化调用
跨语言

🔮 应用场景

教学场景

课表 → 屏幕书写 → 点名器 → 文件传输 自动串联

办公场景

日历 → 会议软件 → 笔记工具 自动归档

个人自动化

天气 → 日历 → 智能家居 联动触发

AI 代理调用

通过 KnotLink-MCP 桥接,让 AI 直接操作生态中的任何软件


🚀 快速开始

bash

# 从 GitHub Releases 下载对应平台的安装包
# 或通过包管理器安装

2. 接入你的第一个软件

python

from knotlink import Responser, Querier

# 暴露一个功能
server = Responser("com.example.app", "greet")
@server.on_request
def handle(data):
return f"Hello, {data}!"

# 调用其他软件的功能
client = Querier("com.example.app", "other_app")
result = client.query("world")

3. 创建你的第一个互联配方

yaml

# 在配方编辑器中拖拽节点,或编写 YAML 文件
# 一键运行,自动化完成

🌍 加入生态

KnotLink 是一个开源项目,欢迎所有开发者参与共建:

  • 为你的软件接入 KnotLink — 让你的作品融入更大的生态
  • 创建并分享互联配方 — 帮助更多人实现自动化
  • 贡献代码或文档 — 一起完善这个协议

让软件不再孤岛,让连接自然发生。


📚 链接

  • GitHub:github.com/KnotLink-Protocol
  • 文档:docs.knotlink.io
  • 社区:discord.knotlink.io

KnotLink —— 软件互联,本该如此简单。