PoCo: Pocket Coding for Feishu
Project description
PoCo
PoCo (Pocket-Coding) is a bot runtime that connects different coding agents to workplace chat software.
It currently supports Codex, Claude Code, and Feishu bots.
Quick Start
See Quick Start.
How It Works
- DM with the bot: management console
- Group chat with the bot: project workspace
- Each project group gets its own worker process
- Each project is configured from the DM console card
- PoCo uses Feishu long-connection mode, so no public callback URL is required
Usage
DM console:
- send
poco - use the card UI to create a project and manage projects
Project group:
- just talk to the agent
- if you want to send an image, send one Feishu post message that contains both the image and the text prompt
Provider
codex: fully implemented throughcodex app-serverclaude: implemented through the Claude Code CLI with streamed JSON output
Current provider notes:
- Codex is the default runtime path
- Claude currently supports session attach, image input, and streamed replies
TUI
The TUI is a two-panel terminal UI:
- left panel: logo and runtime summary
- right panel: the current interaction panel
- bottom: an input line that is only enabled when a config field needs text input
Shortcuts:
Ctrl+R: Save and restartq: go back one level↑ / ↓: move in the main menu or config menuEnter: open the selected itemEsc: go back one level
The default home screen is menu-driven:
- the right panel shows:
Agent & ModelBot (feishu)PoCoLanguageQuit
- use
↑ / ↓to select an item - press
Enterto open it
Top-level items open their config sections directly:
- the right panel turns into a selection menu
↑ / ↓moves between sections or fieldsEnteropens the current selectionEscreturns to the previous levelLanguagelets you switch between English and ChineseBot (feishu)contains Feishu settings such asApp IDandApp SecretAgent & Modelcontainscodexandclaudeclaudeopens a provider menu first- choose a provider such as
anthropic,minimax,deepseek, orkimi - then edit that provider's
base_url,auth_token,model, andextra_env modelopens another menu; pick a model first, then runset_as_defaultextra_envalso opens a submenu; manage env entries one by one instead of editing raw JSONshowopens the current config in a scrollable view- the bottom input line is only active while editing a text field
Files
- Workspace bindings:
~/.config/poco/workspaces.json - Per-bot config file:
~/.config/poco/bindings/<app_id>/config.json - Per-bot state directory:
~/.local/state/poco/<app_id>/ - Legacy default config/state are still under:
~/.config/poco/config.json~/.local/state/poco/
Development
Build packages:
uv build
Quick syntax check:
uv run python -m py_compile poco/__init__.py poco/app.py poco/runtime.py poco/relay/app.py poco/config/store.py poco/tui/app.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.3.0.tar.gz.
File metadata
- Download URL: pocket_coding-0.3.0.tar.gz
- Upload date:
- Size: 60.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2cf20cee5f17d2b9fd20e24cc57e66f1d21c0a7bdc6b202b9c8063770273db1b
|
|
| MD5 |
ac6c7502c786ef1f48263fcdb187f6c4
|
|
| BLAKE2b-256 |
3f677e197b670aee738bf8798fb9b5bf6d882b381bd0719245c4bffcfd983aab
|
File details
Details for the file pocket_coding-0.3.0-py3-none-any.whl.
File metadata
- Download URL: pocket_coding-0.3.0-py3-none-any.whl
- Upload date:
- Size: 72.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3d32b2b284eaf87c4c169ffa0adfb24b02eb1785acf16fafa644f21ce4d1d6ff
|
|
| MD5 |
e55e8e94933e9e8379a95727bd95fb67
|
|
| BLAKE2b-256 |
b2bccc5a3f64230820d0197907cf0dcfec5a4491052fe4562765dce122a8901d
|