PoCo: Pocket Coding for Feishu
Project description
PoCo
PoCo is the product name. The Python package name is pocket-coding.
PoCo is a local TUI for running Codex app-server behind a Feishu bot.
- DM the bot for management
- Use Feishu groups as project workspaces
- Run one Codex worker per project group
- Stream progress back by creating and editing Feishu messages
Quick Start
Install:
pip install pocket-coding
Or from source:
pip install .
Start:
poco
In the TUI:
- Fill in
Feishu App IDandApp Secret - Click
Save & Restart - Add the bot to a project group
- In that group, run:
/poco name my-project
/poco cwd /path/to/project
/poco mode mention
/poco enable
After that:
- DM the bot with
/poco workersor/poco status my-project - In the group, use
/poco ...for PoCo commands - In the group, all non-
/pocotext is forwarded to Codex
How It Works
- DM with the bot: management console
- Group chat with the bot: project workspace
- Each project group gets its own Codex worker process
- Each group must configure its own working directory before enable
- PoCo connects to Feishu in long-connection mode, so no public callback URL is required
Commands
DM commands:
/poco help/poco workers/poco list/poco status <worker_alias|group_chat_id>/poco stop <worker_alias|group_chat_id>/poco reset <worker_alias|group_chat_id>/poco remove <worker_alias|group_chat_id>
Group commands:
/poco help/poco mode <mention|auto>/poco cwd <path>/poco enable/poco disable/poco reset/poco new/poco name <alias>/poco unname/poco status/poco stop/poco remove
Feishu Requirements
Use a self-built enterprise app, not a custom webhook bot.
Required capabilities:
- Bot enabled
- Event subscription:
im.message.receive_v1 - Permission to send messages
- Permission to update messages
Recommended:
- Long connection mode
TUI
Views:
DashboardConfigLogs
Top actions:
Save & RestartSave ConfigDashboardConfigLogsQuit
Shortcuts:
F2: DashboardF3: ConfigF4: LogsCtrl+S: Save configCtrl+R: Save and restartq: Quit
Files
- Config:
~/.config/poco/config.json - State:
~/.local/state/poco/
Development
Build packages:
uv build
Quick syntax check:
uv run python -m py_compile poco/__init__.py poco/app.py poco/bridge.py
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pocket_coding-0.1.0.tar.gz.
File metadata
- Download URL: pocket_coding-0.1.0.tar.gz
- Upload date:
- Size: 17.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5c782a89a7c1945dfde7c482a926462ef8dd1a1974697a838c05544956d3ba47
|
|
| MD5 |
3436addbc9f0da06948dcca3b7f46da4
|
|
| BLAKE2b-256 |
eb8a59400935ed2b769b0a7708fd53ca5b2fa5ffb64c384c996c0ab57ba54e72
|
File details
Details for the file pocket_coding-0.1.0-py3-none-any.whl.
File metadata
- Download URL: pocket_coding-0.1.0-py3-none-any.whl
- Upload date:
- Size: 18.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
827837e2a2800fb0f09cdd4056e1f87e6a68e3e901be75a4091390d0ada9bee3
|
|
| MD5 |
f3682dc074388c62a0804332fd7524c8
|
|
| BLAKE2b-256 |
56ecaddedf7d100e64bc3abbe9bf31d4565c666f4e387fdefd3a1bbb753c4bc5
|