Asynchronous client for the Tailscale API.
This package allows you to control and monitor Tailscale clients programmatically. It is mainly created to allow third-party programs to integrate with Tailscale.
uv pip install https://github.com/pythoninthegrasses/tailscale.gitimport asyncio
from tailscale import Tailscale
async def main():
"""Show example on using the Tailscale API client."""
async with Tailscale(
tailnet="example",
api_key="tskey-somethingsomething",
) as tailscale:
devices = await tailscale.devices()
print(devices)
if __name__ == "__main__":
asyncio.run(main())This repository keeps a changelog using GitHub's releases functionality. The format of the log is based on Keep a Changelog.
Releases are based on Semantic Versioning, and use the format of MAJOR.MINOR.PATCH. In a nutshell, the version will be incremented based on the following:
MAJOR: Incompatible or major changes.MINOR: Backwards-compatible new features and enhancements.PATCH: Backwards-compatible bugfixes and package updates.
Thank you for being involved! 😍
To install all packages, including all development requirements:
# runtimes/tooling
mise install
# python virtual environment w/deps
uv sync --all-extrasAs this repository uses the prek framework, all changes are linted and tested with each commit. You can run all checks and tests manually, using the following command:
prek run --all-filesTo run just the Python tests:
uv run pytestThe original setup of this repository is by Franck Nijhof.