Skip to main content

CLI harness for MingDAO HAP - Enterprise no-code platform

Project description

hap-cli

CLI harness for MingDAO HAP (明道云) - an enterprise no-code platform (hap).

Installation

pip install -e .

Quick Start

1. Login

Option A: Browser login (recommended)

# MingDAO SaaS (default)
hap config login

# Specify server
hap config login mingdao    # MingDAO
hap config login nocoly     # Nocoly
hap config login https://hap.example.com   # Self-hosted

Opens your browser to the MingDAO login page. Token is saved automatically after login.

Option B: Manual token

hap config set \
  --server https://your-mingdao-server.com \
  --token YOUR_MD_PSS_ID_TOKEN \
  --app-id YOUR_DEFAULT_APP_ID \
  --project-id YOUR_PROJECT_ID

Other auth commands

hap config whoami    # Show current user info
hap config logout    # Clear saved token

2. List worksheets

hap app worksheets

3. Query records

hap record list WORKSHEET_ID --page-size 10

4. JSON output (for automation)

hap --json record list WORKSHEET_ID

Command Groups

Group Description
config Server connection and auth
app Application management
worksheet Worksheet info, fields, views
record Record CRUD (list, get, create, update, delete)
workflow Process lifecycle (create, update, publish, trigger, rollback, config)
node Node management (add, delete, save config, test code/webhook/AI)
instance Approval & todo (approve, reject, forward, sign, batch, history)
role Role management and members
repl Interactive REPL mode

Workflow Management

# Create a workflow
hap workflow create --company-id CID --name "My Flow" --app-id APP_ID

# Add an approval node
hap node add PROCESS_ID --type 4 --name "Manager Approval"

# Configure the node
hap node save PROCESS_ID NODE_ID --type 4 --config '{"accounts":[...]}'

# Test a code node
hap node test-code PROCESS_ID NODE_ID --code "return 1+1"

# Test a webhook node
hap node test-webhook PROCESS_ID NODE_ID --url https://api.example.com

# Publish the workflow
hap workflow publish PROCESS_ID

# Trigger it
hap workflow trigger PROCESS_ID --source-id ROW_ID

# Check version history
hap workflow history PROCESS_ID

# Rollback to previous version
hap workflow rollback PROCESS_ID

# Get/set global config
hap workflow config-get PROCESS_ID
hap workflow config-set PROCESS_ID --config '{"allowRevoke":true}'

Approval & Todo

# Check pending task count
hap instance todo-count

# List pending approval tasks
hap instance todo --type 4

# View instance detail
hap instance get INSTANCE_ID

# Approve
hap instance approve INSTANCE_ID --opinion "Looks good"

# Reject with reason
hap instance reject INSTANCE_ID --opinion "Need revision"

# Forward to another user
hap instance forward INSTANCE_ID --to USER_ID

# Add co-signer
hap instance sign INSTANCE_ID --to USER_ID --before

# Batch approve
hap instance batch --action 4 -s ID1 -s ID2

# View execution history
hap instance history --process-id PROCESS_ID --status 2

REPL Mode

hap repl
hap> record list WORKSHEET_ID
hap> --json workflow list APP_ID
hap> instance todo-count
hap> quit

API Authentication

The CLI uses MingDAO's md_pss_id session token. Use hap config login for browser-based login, or hap config set --token TOKEN to set the token manually.

For private deployments with encrypted API responses, install crypto support:

pip install hap-cli[crypto]

More Examples

# List apps
hap app list --project-id PROJECT_ID

# Get worksheet fields
hap worksheet fields WORKSHEET_ID

# Create a record
hap record create WORKSHEET_ID -f "c001=value1" -f "c002=value2"

# Copy a workflow
hap workflow copy PROCESS_ID --name "Copy of Flow"

# Move workflow to another app
hap workflow move PROCESS_ID TARGET_APP_ID

# List code templates
hap node code-templates --keyword "email"

# Test AI node
hap node test-ai PROCESS_ID NODE_ID --prompt "Summarize this" --model gpt-4

# Terminate a stuck instance
hap instance terminate INSTANCE_ID --yes

# Retry a failed instance
hap instance retry INSTANCE_ID

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

hap_cli-0.5.0.tar.gz (80.5 kB view details)

Uploaded Source

Built Distribution

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

hap_cli-0.5.0-py3-none-any.whl (100.7 kB view details)

Uploaded Python 3

File details

Details for the file hap_cli-0.5.0.tar.gz.

File metadata

  • Download URL: hap_cli-0.5.0.tar.gz
  • Upload date:
  • Size: 80.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for hap_cli-0.5.0.tar.gz
Algorithm Hash digest
SHA256 2c0b726d8924f5cb664dda414a4e8da1aa27351eb92b0f79fbf86e98861819fd
MD5 70a0912329f362c8fb9ee24476a0ad61
BLAKE2b-256 e9bdcd467a46e7d3b60c8bf62811988d09b08eca457993da98b805f942e6f2e0

See more details on using hashes here.

File details

Details for the file hap_cli-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: hap_cli-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 100.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for hap_cli-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d1eb189ad754494b7f4c06e4b28d117c1090aea9a4cd0d8e40a611552798be9f
MD5 824f316447af7148ec790a588ecd26db
BLAKE2b-256 9b58656badac685fefe8d49fe22eeec490194b2d8cc2e60dba18e4d8a1c5d166

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