2cli - Agent-friendly CLI interface for EDA tools with interactive shell
Overview
Many popular commercial EDA (Electronic Design Automation) tools provide an interactive shell for accepting engineers' commands. However, these interactive shells may not easily integrate with modern AI agents' MCP or CLI interfaces.
2cli is a freeware developed by DashThru Technology. It provides a simple CLI interface that allows AI agents to effortlessly manipulate EDA tools through their interactive shells. In addition to sending commands, 2cli also features optimized tab completion and man page mode control, both of which are widely used in commercial EDA tools.
Launching an EDA tool with 2cli
Use 2cli -start to launch an EDA tool. For example:
2cli -start dashrtl -no_gui
or
2cli -start 'dashrtl -no_gui'
This starts the DashRTL tool and prints its PID upon success.
Manipulating the interactive shell of an EDA tool
Use 2cli followed by a command and options to send text to the EDA tool. For example:
2cli puts hello
or
2cli 'puts hello'
This sends a print command to the Tcl shell of the EDA tool. 2cli also supports tab completion:
2cli 'get\t'
This prints all Tcl commands starting with get in the launched EDA tool.
Many EDA tools may enter page mode after receiving a man command. 2cli handles page mode correctly and will not get stuck on these commands:
2cli man get_cells
This prints detailed information for get_cells command, which exists in many EDA tools.
Metadata
Release files for 2cli 2026.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
Total release size: 3.7 MB
Release files / 2cli-2026.9-cp313-cp313-manylinux2010_x86_64.whl
| Download URL | 2cli-2026.9-cp313-cp313-manylinux2010_x86_64.whl |
|---|---|
| Size | 526.0 kB |
| Tags | CPython 3.13 Linux glibc 2.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
998a8f6d1e803f2a200f1d2631f0ffa799fa8194a501a626d81043b60cc9e620
|
|
BLAKE2b-256 checksum How to use checksums |
97d4ea6e9049d77a6f131e986da00b4d8b3ec07ffd44f757dc13469bc233d594
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.20
|
Release files / 2cli-2026.9-cp312-cp312-manylinux2010_x86_64.whl
| Download URL | 2cli-2026.9-cp312-cp312-manylinux2010_x86_64.whl |
|---|---|
| Size | 526.4 kB |
| Tags | CPython 3.12 Linux glibc 2.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
e5f813f9f68c71357f9dad0bc32d4e959110ba6caa25e2497c055e9b9e991c30
|
|
BLAKE2b-256 checksum How to use checksums |
980e968cfc27a09cc74436781cf277476bbae3c029082b7798e15c70a9ffbabc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.20
|
Release files / 2cli-2026.9-cp311-cp311-manylinux2010_x86_64.whl
| Download URL | 2cli-2026.9-cp311-cp311-manylinux2010_x86_64.whl |
|---|---|
| Size | 438.7 kB |
| Tags | CPython 3.11 Linux glibc 2.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
09da247bfed6800fa008e71075f8ac2693f905ab1e197481971d0cdb8c7aaa9f
|
|
BLAKE2b-256 checksum How to use checksums |
65198b244a6901b3e479d08a7a22014d5fddec5ca9ba08e9ba0ef7e42848e61a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.20
|
Release files / 2cli-2026.9-cp310-cp310-manylinux2010_x86_64.whl
| Download URL | 2cli-2026.9-cp310-cp310-manylinux2010_x86_64.whl |
|---|---|
| Size | 511.3 kB |
| Tags | CPython 3.10 Linux glibc 2.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
5ae2475c88786f244d78ff5f2ef1eac23cf024215ddf17d51136f042373d1813
|
|
BLAKE2b-256 checksum How to use checksums |
f32e1ded3d865db8d687e58488c39f1717ff07676f36ffff0d59354173e2c659
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.20
|
Release files / 2cli-2026.9-cp39-cp39-manylinux2010_x86_64.whl
| Download URL | 2cli-2026.9-cp39-cp39-manylinux2010_x86_64.whl |
|---|---|
| Size | 511.6 kB |
| Tags | CPython 3.9 Linux glibc 2.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
5067cb6b0d9085523fc2407bb2a915f50164bd6ae8ad8b6009755a07d36386f1
|
|
BLAKE2b-256 checksum How to use checksums |
91699d32a8ab59e684cd91561b2973764a76c1bafbfd3327f55334a69958ee97
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.20
|
Release files / 2cli-2026.9-cp38-cp38-manylinux2010_x86_64.whl
| Download URL | 2cli-2026.9-cp38-cp38-manylinux2010_x86_64.whl |
|---|---|
| Size | 409.7 kB |
| Tags | CPython 3.8 Linux glibc 2.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
f51ed7a9959ecc0462559b6e71e81770d6759bf99b3100ae3ebe4aa7c73d5f33
|
|
BLAKE2b-256 checksum How to use checksums |
f4f362e917cb545f7439908a466762c06d5197ed684996b6c978e86f2279b4dd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.20
|
Release files / 2cli-2026.9-cp37-cp37m-manylinux2010_x86_64.whl
| Download URL | 2cli-2026.9-cp37-cp37m-manylinux2010_x86_64.whl |
|---|---|
| Size | 381.0 kB |
| Tags | CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
cfd2100c4f6f92e3dff80d95879a74a1d82383c05faee0f87e929ddecf70e2a2
|
|
BLAKE2b-256 checksum How to use checksums |
6495f40219804f6d791eb4d020947b35a5dc435b2a64fd42ddf56d2f1ef4d66b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.20
|
Release files / 2cli-2026.9-cp36-cp36m-manylinux2010_x86_64.whl
| Download URL | 2cli-2026.9-cp36-cp36m-manylinux2010_x86_64.whl |
|---|---|
| Size | 378.4 kB |
| Tags | CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
09e1d38c2960d77e3e8c3dfc8029b741648a452be5648cc746fc62ac380765bd
|
|
BLAKE2b-256 checksum How to use checksums |
83f823680295aa95877a54475e475d362109c0c9b1aeec3ef54d7e84e10d2be2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.20
|
Security for 2cli 2026.9
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.