cx-feishu
A pi package that tells the model what pi-channels' notify needs to reach a Feishu group bot from a ComChatX box, and what its answer means.
Package details
Install cx-feishu from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:cx-feishu- Package
cx-feishu- Version
0.1.2- Published
- Nov 8, 2026
- Downloads
- 277/mo · 235/wk
- Author
- hs_jack_yzy
- License
- MIT
- Types
- skill
- Size
- 9.1 KB
- Dependencies
- 0 dependencies · 0 peers
Pi manifest JSON
{
"skills": [
"./skills"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
cx-feishu
A pi package for sending messages to a Feishu (飞书) group bot from a ComChatX box with pi-channels (@amaster.ai/pi-channels) and its notify tool. It sends nothing itself and neither bundles nor lists pi-channels: the seller installs pi-channels beside it.
It is one skill, cx-feishu, telling the model what pi-channels' own words miss here: where a bot's address comes from and what overrides it, that a Feishu bot reads only the raw json body (notify's default envelope, and its test action without json, are refused), what keywords, 签名校验 and IP whitelists do to a send, that Sent means an HTTP 2xx and Feishu refuses with HTTP 200 and a nonzero code, that replies come back to no conversation, and that a listener keeps the box awake.
A bot
One webhook adapter and one route, in the pi-channels section of pi's settings:
{
"pi-channels": {
"adapters": { "feishu": { "type": "webhook" } },
"routes": { "team": { "adapter": "feishu", "recipient": "${FEISHU_HOOK}" } }
}
}
pi-channels expands ${VAR} in the global and agent-directory settings, not in a project's .pi/settings.json; a project's pi-channels section replaces the others' key by key — adapters, routes and bridge each — so a section meant to stop another layer's bot carries all three.
Install
pi install -l npm:@amaster.ai/pi-channels@0.1.28
pi install -l npm:cx-feishu
pi-channels is named at 0.1.28, the version this package is checked against, so pi keeps that version. Run in /tenant; without -l the install is gone at the box's next start. On ComChatX, a seller installs both from the Plugins page once they are listed.
Develop
npm ci
npm run typecheck
npm test # loads the package with the pinned pi, and sends through pi-channels 0.1.28 to a stub on 127.0.0.1