Inspiration

Make automation more accessible than ever. Imitate the ChatGPT revolution.

What it does

A Chatbot accepts natural language input for a command line task. Autonomously execute a series of commands to complete the task. Audit the tasks performed using a blockchain to produce an immutable, append only audit log. Retrieve task data from blockchain and visualize it using a dynamic web dashboard.

How we built it

  1. Asynchronous Python with Tornado for command line management
  2. Python Flask+HTML,CSS,JS to serve the Chatbot as a webapp
  3. nltk+tensorflow to train a deep learning model for understanding user input.
  4. gemini generative api to suggest commands for executing task.
  5. MultiChain to implement private and scalable blockchain.
  6. Node.js to act as MultiChain endpoint.
  7. Streamlit(Python) to implement dynamic web dashboard.
  8. Unix command line.

Challenges we ran into

  • Python is synchronous. To make it asynchronous is challenging.
  • Direct use of TF models consumes high storage space. Hence, model compression is required.
  • Making web dashboard dynamic.
  • To execute commands in synchronization was difficult.
  • To retrieve command execution time and status was challenging.

Accomplishments that we're proud of

  • Built a scalable Python web app.
  • Packaged the Python webapp into a PyPi package.
  • Configured the Chatbot to interface with the Python webapp for command execution.
  • Successfully built a web dashboard that updates itself periodically/

What we learned

  • Unix.
  • Networking
  • Blockchain
  • Deployment patterns

What's next for Unix Command line automation

Incorporate a deep learning model that can not only suggest tasks but also interface with the command line. This will replace the user of a command line. All admin tasks will be automated.

Built With

Share this project:

Updates