Dev Assistant
Welcome to the Dev Assistant project.
What is it?
Dev Assistant is a GPTs, a (tailored version of ChatGPT) that can assist developers by executing tasks directly in our development environment. GPTs are a new way for anyone to create a tailored version of ChatGPT to be more helpful in their daily life, at specific tasks, at work, or at home. For more information about GPTs, please refer to OpenAI's blog post.
This repository contains the Dev Assistant CLI, a Python package that serves as the core component of the project. It receives instructions from Dev Assistant GPT, executes them locally, and sends the response back.
Features
Dev Assistant CLI is designed to streamline your development process by offering a range of functionalities:
-
File Management: Create, read, update, and delete files. List the contents of a directory. You can manage your files without leaving your conversation with Dev Assistant GPT.
-
Git Version Control: Initialize a Git repository, add changes to the staging area, commit changes, and push changes to a remote repository. Get the status of the Git repository. You can manage your Git repositories directly through Dev Assistant GPT.
-
Terminal Commands Execution: Execute commands directly in the terminal. You can run any command in your terminal directly from Dev Assistant GPT.
Requirements
- 📓 Python 3.10+
- 📓 Pip and Poetry
- 💸 ChatGPT Plus subscription (for custom GPTs access)
- ⭐ Dev Assistant account
Installation
- Create a Dev Assistant account at devassistant.tonet.dev
- Generate a token at https://devassistant.tonet.dev/user/api-tokens for Dev Assistant GPT and save it. You will need it later.
- Install the local client:
- Install Python
- Run
pip install dev-assistant-clientin your terminal
Usage
Once installed, just run the following:
dev-assistant
If the CLI is not already authenticated, it will open a browser window where you will be provided with a token. Copy the token including the pipe, and return to the terminal.
If everything runs well, you will see the Dev Assistant CLI presentation and a unique CLIENT ID, like this:
╭─────╮ Dev Assistant
│ >_< │ v0.2.46
╰─────╯ https://devassistant.tonet.dev
› Connecting... Connected!
› CLIENT ID: 6a35a11c-f34e-4e30-be46-a9ac4d0f5ac7
› WebSockets... Connected!
› Private channel... Connected!
› Ready! Listening for instructions...
›
You can stop the client just doing a CRTL+C in the terminal at any time.
Commands
Go to Dev Assistant GPT and start a conversation. You can ask for help with the commands, or just let Dev Assistant GPT discover it by itself. It will ask you to login if you are not already logged in.
You can now ask Dev Assistant GPT to do things like:
- Create a new file called
my-file.txton my Desktop - Read a file called
other-file.yml - Update a file
- Delete a file
- List the contents of a directory
- Initialize a Git repository
- Add changes to the staging area
- Commit changes
- Push changes to a remote repository
- Get the status of the Git repository
- Execute a command in the terminal ... and more!
Versioning
To update the version of the package, follow these steps:
- Commit your changes with a descriptive message.
- Create a git tag with the format
vX.Y.ZwhereX.Y.Zis the new version number. - Push your changes and the new tag to the repository.
The GitHub Actions workflow will automatically deploy the new version to PyPi when a new tag is detected.
Contributing
We welcome contributions! If you have an idea for an improvement or have found a bug, please open an issue. Feel free to fork the repository and submit a pull request if you'd like to contribute code. Please follow the code style and conventions used in the existing codebase.
Development
- Fork the repository
- Clone your fork
- Go to the project folder
- Install Dev Assistant Client in local mode with
pip install -e .orpoetry install - Run
dev-assistantin your terminal to start the CLI. You can use poetry to run the CLI withpoetry run dev-assistant - Make your changes
- Test your changes
- Commit your changes
- Push your changes
- Open a pull request
- 🎉
License
The Dev Assistant Local Client is open-source software, licensed under the MIT license.
Support
If you encounter any problems or have any questions, don't hesitate to open an issue on GitHub. We're here to help!
Acknowledgements
A big thank you to all contributors and users for your support! We couldn't do it without you.
Authors
Metadata
Release files for dev-assistant-client 0.2.51
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| dev_assistant_client-0.2.51.tar.gz | 39.8 kB | Without provenance | Details for dev_assistant_client-0.2.51.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| dev_assistant_client-0.2.51-py3-none-any.whl | Python 3 | none | any | Details for dev_assistant_client-0.2.51-py3-none-any.whl |
Total release size: 82.3 kB
Release files / dev_assistant_client-0.2.51.tar.gz
| Download URL | dev_assistant_client-0.2.51.tar.gz |
|---|---|
| Size | 39.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
caef98f7725369b0f9bf1cc71447023512b394b550d23f2232c2a7c7b8c7a32d
|
|
BLAKE2b-256 checksum How to use checksums |
5f73e92ec9aa002386fe0582797f8af85f6754770f34e7d41f23b5115f7f29f7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.2 CPython/3.11.9 Linux/6.5.0-1018-azure
|
Release files / dev_assistant_client-0.2.51-py3-none-any.whl
| Download URL | dev_assistant_client-0.2.51-py3-none-any.whl |
|---|---|
| Size | 42.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0be8947b5e52e7be36fc610226a69a6a3fd49ebe095286e198897af144cdd541
|
|
BLAKE2b-256 checksum How to use checksums |
f0661e846c0ce24951686e6a081e14138142b1d9513a031814f941da18d223c8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.2 CPython/3.11.9 Linux/6.5.0-1018-azure
|
Security for dev-assistant-client 0.2.51
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.