contextwire


Namecontextwire JSON
Version 0.0.1 PyPI version JSON
download
home_pageNone
SummaryA framework for automating hardware lab tools, featuring a Model Context Protocol (MCP) server for agentic AI interaction.
upload_time2025-07-21 22:15:52
maintainerNone
docs_urlNone
authorNone
requires_python>=3.12
licenseApache License (2.0)
keywords mcp llm agentic-ai fastapi rest websocket hardware automation hil embedded arm cli instrumentation saleae bus-pirate lxi sigrok
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # ContextWire

## UWAGA: this README.md is a placeholder and meant (for now) as a rough draft

### A Gloriously Over-Engineered Hardware Automation Framework

> Probably a huge mistake.
> But like, a powerful, scripted, glorious mistake.

ContextWire is your new hardware automation overlord. 
It aims to talk to **Saleae**, **Bus Pirate**, 
**Simplicity Commander**, and even your dusty **LXI o-scope**, 
all from one place. No more juggling 17 terminals and making 
ritual sacrifices to the demo gods โ€” just a single, 
unified interface to script, control, and automate your lab gear.

## โš ๏ธ Current Status: Alpha AF

This project is in the very early stages of development. 
Expect bugs, breaking changes, and moments of existential dread. 
If it works, it's a miracle. If it breaks, you get to keep both pieces.

## โœจ Core Features

* **๐Ÿ’ฌ Unified Control:** Access all your tools through a REST API, 
WebSockets, or the Model Context Protocol (MCP) 
for agentic AI interactions.
* **๐Ÿ”Œ Modular Drivers:** A plug-and-play architecture makes it 
easy to add new hardware. If it has a port, we can probably talk to it. 
Eventually.
* **๐Ÿงช Built for Embedded Devs:** Perfect for anyone who is sick 
of vendor-specific GUIs and wants to script their hardware interactions.
* **๐Ÿ”ง Built with Python:** Because I hate myself just enough.

## ๐Ÿš€ Getting Started

*(This section is a placeholder for when things actually work.)*

**1. Installation (Theoretically):**

```
git clone https://github.com/skakri/contextwire.git
cd contextwire
# ???
cd ..
rm -rf contextwire
```

**2. Configuration:**

Copy the example environment file and pretend to fill it out.

```
cp .env.example .env
```

**3. Run It:**

Launch the server and pray (we use Python 3.x as default here, 
don't be a caveman).

```
python -m contextwire.main --run-api --run-ws
```

## ๐Ÿšฆ Run Modes

ContextWire can be launched in several modes, simultaneously if you're 
feeling brave:

* **Stateful MCP Server:** A server implementing the 
Model Context Protocol, allowing agentic AI systems to maintain and 
interact with hardware state and context.
* **REST API Server:** For stateless, command-based control. 
Perfect for integration with scripts and CI/CD pipelines.
* **WebSocket Server:** For real-time, bidirectional communication. 
Stream live data or build interactive remote shells.

## ๐Ÿ“ฆ Planned Device Support

| **Device / Interface** | **Status** | **Notes** |
| --- | --- | --- |
| Saleae Logic Analyzer | ๐Ÿ”œ `WIP` | `logic2-automation` library |
| Simplicity Commander | โžก๏ธ `Up Next` | Wrapping the `commander` CLI |
| Bus Pirate | โ“ `Planned` | Binary bitbang mode |
| LXI Instruments | ๐Ÿคฏ `Maybe` | via `lxi-tools` or similar |
| Sigrok-Supported Devices | ๐Ÿคฏ `Maybe` | The holy grail of driver support |

## ๐Ÿค How to Contribute

Found a bug? Have a brilliant idea? 
Want to add support for a new device? Excellent.

1. Fork the repository.
2. Create a new branch (`git checkout -b feature/your-awesome-idea`).
3. Make your changes.
4. Submit a pull request and tell me what you broke.

## ๐Ÿ“œ License

Licensed under the **Apache 2.0 License**.

> Made with poor life choices.
> Also yes, I wrote parts of this README by wasting tokens 
because I couldn't be bothered to write it myself.
> ~~No regrets~~ Some regrets.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "contextwire",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.12",
    "maintainer_email": null,
    "keywords": "mcp, llm, agentic-ai, fastapi, rest, websocket, hardware, automation, hil, embedded, arm, cli, instrumentation, saleae, bus-pirate, lxi, sigrok",
    "author": null,
    "author_email": "Kristaps Karlsons <kristaps.karlsons@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/2f/56/2e52ca36d8c630bb606a8d53cf1765421565a85e69152ce97e8ff0df73b1/contextwire-0.0.1.tar.gz",
    "platform": null,
    "description": "# ContextWire\n\n## UWAGA: this README.md is a placeholder and meant (for now) as a rough draft\n\n### A Gloriously Over-Engineered Hardware Automation Framework\n\n> Probably a huge mistake.\n> But like, a powerful, scripted, glorious mistake.\n\nContextWire is your new hardware automation overlord. \nIt aims to talk to **Saleae**, **Bus Pirate**, \n**Simplicity Commander**, and even your dusty **LXI o-scope**, \nall from one place. No more juggling 17 terminals and making \nritual sacrifices to the demo gods \u2014 just a single, \nunified interface to script, control, and automate your lab gear.\n\n## \u26a0\ufe0f Current Status: Alpha AF\n\nThis project is in the very early stages of development. \nExpect bugs, breaking changes, and moments of existential dread. \nIf it works, it's a miracle. If it breaks, you get to keep both pieces.\n\n## \u2728 Core Features\n\n* **\ud83d\udcac Unified Control:** Access all your tools through a REST API, \nWebSockets, or the Model Context Protocol (MCP) \nfor agentic AI interactions.\n* **\ud83d\udd0c Modular Drivers:** A plug-and-play architecture makes it \neasy to add new hardware. If it has a port, we can probably talk to it. \nEventually.\n* **\ud83e\uddea Built for Embedded Devs:** Perfect for anyone who is sick \nof vendor-specific GUIs and wants to script their hardware interactions.\n* **\ud83d\udd27 Built with Python:** Because I hate myself just enough.\n\n## \ud83d\ude80 Getting Started\n\n*(This section is a placeholder for when things actually work.)*\n\n**1. Installation (Theoretically):**\n\n```\ngit clone https://github.com/skakri/contextwire.git\ncd contextwire\n# ???\ncd ..\nrm -rf contextwire\n```\n\n**2. Configuration:**\n\nCopy the example environment file and pretend to fill it out.\n\n```\ncp .env.example .env\n```\n\n**3. Run It:**\n\nLaunch the server and pray (we use Python 3.x as default here, \ndon't be a caveman).\n\n```\npython -m contextwire.main --run-api --run-ws\n```\n\n## \ud83d\udea6 Run Modes\n\nContextWire can be launched in several modes, simultaneously if you're \nfeeling brave:\n\n* **Stateful MCP Server:** A server implementing the \nModel Context Protocol, allowing agentic AI systems to maintain and \ninteract with hardware state and context.\n* **REST API Server:** For stateless, command-based control. \nPerfect for integration with scripts and CI/CD pipelines.\n* **WebSocket Server:** For real-time, bidirectional communication. \nStream live data or build interactive remote shells.\n\n## \ud83d\udce6 Planned Device Support\n\n| **Device / Interface** | **Status** | **Notes** |\n| --- | --- | --- |\n| Saleae Logic Analyzer | \ud83d\udd1c `WIP` | `logic2-automation` library |\n| Simplicity Commander | \u27a1\ufe0f `Up Next` | Wrapping the `commander` CLI |\n| Bus Pirate | \u2753 `Planned` | Binary bitbang mode |\n| LXI Instruments | \ud83e\udd2f `Maybe` | via `lxi-tools` or similar |\n| Sigrok-Supported Devices | \ud83e\udd2f `Maybe` | The holy grail of driver support |\n\n## \ud83e\udd1d How to Contribute\n\nFound a bug? Have a brilliant idea? \nWant to add support for a new device? Excellent.\n\n1. Fork the repository.\n2. Create a new branch (`git checkout -b feature/your-awesome-idea`).\n3. Make your changes.\n4. Submit a pull request and tell me what you broke.\n\n## \ud83d\udcdc License\n\nLicensed under the **Apache 2.0 License**.\n\n> Made with poor life choices.\n> Also yes, I wrote parts of this README by wasting tokens \nbecause I couldn't be bothered to write it myself.\n> ~~No regrets~~ Some regrets.\n",
    "bugtrack_url": null,
    "license": "Apache License (2.0)",
    "summary": "A framework for automating hardware lab tools, featuring a Model Context Protocol (MCP) server for agentic AI interaction.",
    "version": "0.0.1",
    "project_urls": {
        "Issues": "https://github.com/skakri/contextwire/issues",
        "Repository": "https://github.com/skakri/contextwire"
    },
    "split_keywords": [
        "mcp",
        " llm",
        " agentic-ai",
        " fastapi",
        " rest",
        " websocket",
        " hardware",
        " automation",
        " hil",
        " embedded",
        " arm",
        " cli",
        " instrumentation",
        " saleae",
        " bus-pirate",
        " lxi",
        " sigrok"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "eee17b5524c29894f7431ea4582e367833730ed2f350ecb0a2df5ba5b5b7a85c",
                "md5": "04d31995ad467249c5c4512295a18771",
                "sha256": "b301dc705f0ad2e2ae7ce86b4303fdb2f57691380c9004cea66351260809235c"
            },
            "downloads": -1,
            "filename": "contextwire-0.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "04d31995ad467249c5c4512295a18771",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.12",
            "size": 11371,
            "upload_time": "2025-07-21T22:15:51",
            "upload_time_iso_8601": "2025-07-21T22:15:51.549183Z",
            "url": "https://files.pythonhosted.org/packages/ee/e1/7b5524c29894f7431ea4582e367833730ed2f350ecb0a2df5ba5b5b7a85c/contextwire-0.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "2f562e52ca36d8c630bb606a8d53cf1765421565a85e69152ce97e8ff0df73b1",
                "md5": "138758cfb96c7340260fa475d71a89ac",
                "sha256": "f8030e1b258f0389efb76c0d2a927d5d4581b5d65f77a11547aeb3aae4bfbddb"
            },
            "downloads": -1,
            "filename": "contextwire-0.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "138758cfb96c7340260fa475d71a89ac",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.12",
            "size": 11162,
            "upload_time": "2025-07-21T22:15:52",
            "upload_time_iso_8601": "2025-07-21T22:15:52.801548Z",
            "url": "https://files.pythonhosted.org/packages/2f/56/2e52ca36d8c630bb606a8d53cf1765421565a85e69152ce97e8ff0df73b1/contextwire-0.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-21 22:15:52",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "skakri",
    "github_project": "contextwire",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "contextwire"
}
        
Elapsed time: 0.78093s