Skip to main content

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:

  1. Fill in Feishu App ID and App Secret
  2. Click Save & Restart
  3. Add the bot to a project group
  4. 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 workers or /poco status my-project
  • In the group, use /poco ... for PoCo commands
  • In the group, all non-/poco text 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:

  • Dashboard
  • Config
  • Logs

Top actions:

  1. Save & Restart
  2. Save Config
  3. Dashboard
  4. Config
  5. Logs
  6. Quit

Shortcuts:

  • F2: Dashboard
  • F3: Config
  • F4: Logs
  • Ctrl+S: Save config
  • Ctrl+R: Save and restart
  • q: 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

pocket_coding-0.1.0.tar.gz (17.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pocket_coding-0.1.0-py3-none-any.whl (18.2 kB view details)

Uploaded Python 3

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

Hashes for pocket_coding-0.1.0.tar.gz
Algorithm Hash digest
SHA256 5c782a89a7c1945dfde7c482a926462ef8dd1a1974697a838c05544956d3ba47
MD5 3436addbc9f0da06948dcca3b7f46da4
BLAKE2b-256 eb8a59400935ed2b769b0a7708fd53ca5b2fa5ffb64c384c996c0ab57ba54e72

See more details on using hashes here.

File details

Details for the file pocket_coding-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pocket_coding-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 827837e2a2800fb0f09cdd4056e1f87e6a68e3e901be75a4091390d0ada9bee3
MD5 f3682dc074388c62a0804332fd7524c8
BLAKE2b-256 56ecaddedf7d100e64bc3abbe9bf31d4565c666f4e387fdefd3a1bbb753c4bc5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page