@tunglam/pi-lark-cli
v0.1.7
Published
Lark/Feishu CLI for the pi coding agent: bundles the official lark-cli binary for your platform plus the full set of official lark-* skills, kept in sync with upstream releases.
Maintainers
Readme
@tunglam/pi-lark-cli
Lark/Feishu for the pi coding agent: one install gives you the official lark-cli binary for your platform plus the full set of official lark-* agent skills, with the CLI and skill versions always matching.
Install
pi install npm:@tunglam/pi-lark-cliInstall without a version suffix — pi permanently pins versioned specs and skips them during pi update.
What you get:
lark-cliavailable in every pi bash call (the package prepends its own launcher toPATHat session start).- All official skills (
lark-im,lark-doc,lark-base,lark-calendar, …) vendored from the exact upstream release that matches the bundled CLI. - A
/lark-clicommand showing the active binary, versions, and any conflicting installation.
First-time setup (once per machine):
lark-cli config init --new
lark-cli auth loginAuthorization is stored in ~/.lark-cli/ and is shared with any other lark-cli installation for the same user (and the same LARKSUITE_CLI_CONFIG_DIR, if you override it).
Versioning
The package version is independent; the bundled upstream version is recorded in the larkCliVersion field of package.json and pinned exactly in dependencies. An hourly GitHub workflow tracks upstream releases: it vendors the release's skills/ tree, pins the matching @larksuite/cli, and publishes a new package version.
Update with:
pi update npm:@tunglam/pi-lark-clilark-cli update and lark-cli install are intentionally disabled in the bundled launcher: they would create a separate global installation and break the CLI/skill version pairing. The CLI's own update notifications are silenced for the same reason.
Coexisting with a global lark-cli
If you also installed lark-cli globally (for other agents), both can coexist: inside pi the bundled binary wins on PATH; outside pi your global one is untouched. The extension only warns when user-level lark-* skills are also active and override the bundled skills. Choose one setup:
- Use the external CLI and skills in pi:
pi remove npm:@tunglam/pi-lark-cli - Use this package's matched CLI and skills in pi: for auto-discovered user skills, add
"!skills/lark-*"to theskillsarray in~/.pi/agent/settings.json; for another package or explicit path, disable it withpi config. Then run/reload. The global CLI remains available to other agents.
Note pi gives local skills precedence over package skills by design: a same-name skill in your global or project skill directories overrides the vendored one.
Platform support
Prebuilt upstream binaries: macOS (x64, arm64), Linux (x64, arm64, riscv64), Windows (x64, arm64). The binary is downloaded on first install (or first call) from GitHub Releases with an npmmirror fallback, so initial use needs network access. A few skills ship helper scripts that need python3 (and pandas for spreadsheet dataframes); they are optional.
License
MIT. The vendored skills/ tree is © Lark Technologies Pte. Ltd., MIT-licensed; see UPSTREAM_LICENSE.
