Skip to main content

Lightweight CLI and SDK for remote Intent Hub APIs

Project description

intent-hub-cli

Lightweight CLI and Python SDK for remote Intent Hub deployments.

Install

If you want to use the published CLI or Python SDK, install the released package:

pip install intent-hub-cli==0.1.0

Editable install for package development:

cd intent-hub-cli
pip install -e .

Build and install a wheel:

cd intent-hub-cli
python -m pip install -U build
python -m build
pip install dist/intent_hub_cli-0.1.0-py3-none-any.whl

This produces:

  • dist/intent_hub_cli-0.1.0-py3-none-any.whl
  • dist/intent_hub_cli-0.1.0.tar.gz

After publishing:

pip install intent-hub-cli==0.1.0

Publishing

Release validation:

cd intent-hub-cli
python -m pip install -e .[dev]
pytest tests -q
python -m build
python -m twine check dist/*

Manual upload to PyPI:

python -m twine upload -u __token__ -p <PYPI_TOKEN> dist/*

Manual upload to TestPyPI:

python -m twine upload \
  --repository-url https://test.pypi.org/legacy/ \
  -u __token__ \
  -p <TEST_PYPI_TOKEN> \
  dist/*

See PUBLISH.md for the full release flow. The repository also contains the GitHub Actions workflow for tag-based publishing.

Usage

CLI

intent-hub login --endpoint https://api.example.com --code <access_code>
intent-hub whoami
intent-hub route "help me organize a wiki"
intent-hub route "help me organize a wiki" --json
intent-hub route --dispatch "help me organize a wiki"
intent-hub route --dispatch "help me organize a wiki" --json
intent-hub skills scan --source-path ./skills
intent-hub skills scan --source-path D:/skills --source-label team-skills
intent-hub sync
intent-hub sync --force-full --json
intent-hub sync --route-ids 12,15 --json

intenthub is available as an alias.

Python SDK

from intent_hub_cli import IntentHubClient

client = IntentHubClient(
    endpoint="https://api.example.com",
    access_code="ih_live_team_alpha_xxx",
)

print(client.whoami())
print(client.route("help me organize a wiki"))
print(client.dispatch("help me organize a wiki"))
print(client.reindex())
print(client.sync_routes([12, 15]))
scan_result = client.skills_scan_uploaded(
    source_id=None,
    source_label="team-skills",
    client_path_hint="./skills",
    skills=[
        {
            "relative_path": "wiki-builder/SKILL.md",
            "content": "# wiki-builder\n...",
        }
    ],
)
print(scan_result)

Configuration

The CLI stores credentials at ~/.intent-hub/config.json:

{
  "endpoint": "https://api.example.com",
  "access_code": "ih_live_team_alpha_xxx"
}

Notes

  • Dependency footprint is intentionally small: requests>=2.31.0
  • This package does not ship backend dependencies such as Flask or Qdrant client
  • Use this package for remote access; use intent-hub-backend when you are running or developing the server itself
  • Skill scanning runs against the user's local directories and uploads SKILL.md content to the backend
  • skills scan directly associates newly discovered skills with route entities; there is no separate skills apply step
  • sync triggers backend index synchronization for all routes or selected route ids

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

intent_hub_cli-0.1.2.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

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

intent_hub_cli-0.1.2-py3-none-any.whl (6.3 kB view details)

Uploaded Python 3

File details

Details for the file intent_hub_cli-0.1.2.tar.gz.

File metadata

  • Download URL: intent_hub_cli-0.1.2.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for intent_hub_cli-0.1.2.tar.gz
Algorithm Hash digest
SHA256 2e9999505514f511fcd515def4fa181b41dbbfdf7e54554d9c840fb7499e54d1
MD5 a9c793f1d88694767909b607d8935b78
BLAKE2b-256 3aafee3e8d2abf8b4011e034fc8b3c44d378cadb93f57ec1e9b234ae9863f260

See more details on using hashes here.

File details

Details for the file intent_hub_cli-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: intent_hub_cli-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 6.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for intent_hub_cli-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 849cc2965756930ba42cc8c89764b2308ef28f5720d5d08802e9bdb24a2fb19d
MD5 71d9dee017c998f6296d68efb38e8c5e
BLAKE2b-256 0ebbeff4bf228323a1dbe6d83ca9e9ddd0b0335f24b949817a1af30926bd7502

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