Skip to main content

ChatDNS: ChatArch DNS record, DDNS, and provider helper extracted from ChatTool.

Project description

PyPI version Tests Docs

ChatDNS

ChatDNS is a ChatArch DNS helper extracted from ChatTool. It provides a standalone chatdns CLI and importable Python API for DNS record management, DDNS updates, provider clients, IP detection, DNS-01 certificate automation, and MCP registration.

Commands

chatdns --help
chatdns list
chatdns --env work list --provider tencent
chatdns list --provider tencent --env work
chatdns records example.com
chatdns records test.example.com
chatdns set test.example.com -t A -v 1.2.3.4
chatdns delete test.example.com -t A -v 1.2.3.4 --yes
chatdns ip
chatdns cert apply -d example.com -d '*.example.com' -e admin@example.com --provider aliyun
chatdns cert check example.com

Supported providers in this release:

  • Aliyun DNS
  • Tencent Cloud DNSPod

Certificate management from the old chattool dns cert surface is now available as chatdns cert. It uses ACME DNS-01 validation and writes TXT records through the configured DNS provider. Treat live certificate issuance as an external side effect: test with --staging first and verify provider credentials before production use.

Configuration

ChatDNS reads provider credentials and defaults from environment / ChatEnv-compatible config fields:

  • CHATDNS_PROVIDER (default DNS provider/channel: aliyun or tencent)
  • ALIBABA_CLOUD_ACCESS_KEY_ID
  • ALIBABA_CLOUD_ACCESS_KEY_SECRET
  • ALIBABA_CLOUD_REGION_ID
  • TENCENT_SECRET_ID
  • TENCENT_SECRET_KEY
  • TENCENT_REGION_ID

Active ChatEnv profiles are loaded automatically from $CHATARCH_HOME/envs (default: ~/.chatarch/envs). Use --env/-e to select a named provider profile, either globally before the command (chatdns --env work list -p tencent) or on DNS commands after the provider (chatdns list -p tencent -e work). Command-level --env/-e overrides the global value. chatdns cert apply keeps -e for email, so use --env work there.

Provider aliases are registered through the package's chatenv.configs entry point as chatdns.config.

Development

python -m pytest -q
chatpypi build --project-dir .
chatpypi check --project-dir .
PYTHONPATH=src python -m chatdns.cli --help

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

chatdns-0.1.3.tar.gz (36.3 kB view details)

Uploaded Source

Built Distribution

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

chatdns-0.1.3-py3-none-any.whl (37.4 kB view details)

Uploaded Python 3

File details

Details for the file chatdns-0.1.3.tar.gz.

File metadata

  • Download URL: chatdns-0.1.3.tar.gz
  • Upload date:
  • Size: 36.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for chatdns-0.1.3.tar.gz
Algorithm Hash digest
SHA256 b540fc331d1901615ebe2007ca66ae54e29a62906083da50b762080c1c4099cb
MD5 5df9446aec558f42af1ff6a4f8fa8f2b
BLAKE2b-256 0fb6ee5d06efe9fd09497af44e60601fadbc503d701b5915ca0450e8cdaa15d5

See more details on using hashes here.

Provenance

The following attestation bundles were made for chatdns-0.1.3.tar.gz:

Publisher: publish.yml on ChatArch/ChatDNS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file chatdns-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: chatdns-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 37.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for chatdns-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 94bae5fa863bebf83a1b39e9ece80ae24d4af1b14bb9a99945c5520f3bfe97ca
MD5 757fc6d91ddbbf3b36cd64c67950cfb4
BLAKE2b-256 c945dd3385b63105f0524f41f491dbedd185d947ef2315653d69f0dc779d499e

See more details on using hashes here.

Provenance

The following attestation bundles were made for chatdns-0.1.3-py3-none-any.whl:

Publisher: publish.yml on ChatArch/ChatDNS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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