Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rel 0.0.8 #73

Merged
merged 15 commits into from
May 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
119 changes: 64 additions & 55 deletions .github/workflows/executables.yml
Original file line number Diff line number Diff line change
@@ -1,104 +1,113 @@
name: Build, Test and Verify Executables

on:
push:
push:
branches:
- build/executables
##TODO: In future, when m1 runners are publicly supported, compiled and verify seperately for arm architectures.
- build/executables

jobs:
build:
build:
runs-on: ${{ matrix.os }}

strategy:
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest, macos-13]
include:
- os: ubuntu-latest
- os: ubuntu-latest
output-name: commanddash-linux
- os: macOS-latest
- os: macOS-latest
output-name: commanddash-mac
- os: windows-latest
- os: windows-latest
output-name: commanddash-windows.exe
- os: macos-13
output-name: commanddash-mac-x64
steps:
- uses: actions/checkout@v4
- uses: dart-lang/setup-dart@v1
- name: Dart pub get
- uses: actions/checkout@v4
- uses: dart-lang/setup-dart@v1
- name: Dart pub get
run: |
cd commanddash
mkdir -p build
dart pub get
- name: Compile
cd commanddash
mkdir -p build
dart pub get
- name: Compile
run: |
cd commanddash
dart compile exe bin/commanddash.dart -o build/${{ matrix.output-name }}
- uses: actions/upload-artifact@v4
cd commanddash
dart compile exe bin/commanddash.dart -o build/${{ matrix.output-name }}
- uses: actions/upload-artifact@v4
with:
name: ${{ matrix.output-name }} # Dynamically name the artifact based on the OS
path: commanddash/build/${{ matrix.output-name }}
test:
name: ${{ matrix.output-name }} # Dynamically name the artifact based on the OS
path: commanddash/build/${{ matrix.output-name }}

test:
needs: build
runs-on: ${{ matrix.os }}

strategy:
matrix:
matrix:
include:
- os: ubuntu-latest
- os: ubuntu-latest
binary-name: commanddash-linux
- os: windows-latest
- os: windows-latest
binary-name: commanddash-windows.exe
- os: macos-latest
- os: macos-latest
binary-name: commanddash-mac

- os: macos-13
binary-name: commanddash-mac-x64

steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v4
- uses: actions/checkout@v4

- uses: actions/download-artifact@v4
with:
name: ${{ matrix.binary-name }}
path: ./executable
# Ensure binary is executable (necessary for Unix-based systems)
- name: Make binary executable
name: ${{ matrix.binary-name }}
path: ./executable

# Ensure binary is executable (necessary for Unix-based systems)
- name: Make binary executable
if: matrix.os != 'windows-latest'
run: chmod +x ./executable/${{ matrix.binary-name }}

- name: Test binary
- name: Test binary
run: ./executable/${{ matrix.binary-name }} --help

submit-executables:
submit-executables:
needs: build
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v4

- uses: actions/download-artifact@v4
- uses: actions/download-artifact@v4
with:
name: commanddash-linux
path: ./executable

- uses: actions/download-artifact@v4
- uses: actions/download-artifact@v4
with:
name: commanddash-mac
path: ./executable

- uses: actions/download-artifact@v4
- uses: actions/download-artifact@v4
with:
name: commanddash-windows.exe
path: ./executable

- name: Submit Executables
- uses: actions/download-artifact@v4
with:
name: commanddash-mac-x64
path: ./executable

- name: Submit Executables
run: |
chmod +x ./executable/commanddash-linux
echo "Version: $(./executable/commanddash-linux version)"
echo "Minimum client version: $(./executable/commanddash-linux min_client_version)"
curl -X POST "https://api.commanddash.dev/executable/add" \
-H "Content-Type: multipart/form-data" \
-F "secret=${{ secrets.SECRET_KEY }}" \
-F "version=$(./executable/commanddash-linux version)" \
-F "minimum_client_version=$(./executable/commanddash-linux min_client_version)" \
-F "windows_binary=@executable/commanddash-windows.exe" \
-F "macos_binary=@executable/commanddash-mac" \
-F "linux_binary=@executable/commanddash-linux"
chmod +x ./executable/commanddash-linux
echo "Version: $(./executable/commanddash-linux version)"
echo "Minimum client version: $(./executable/commanddash-linux min_client_version)"
curl -X POST "https://api.commanddash.dev/executable/add" \
-H "Content-Type: multipart/form-data" \
-F "secret=${{ secrets.SECRET_KEY }}" \
-F "version=$(./executable/commanddash-linux version)" \
-F "minimum_client_version=$(./executable/commanddash-linux min_client_version)" \
-F "windows_binary=@executable/commanddash-windows.exe" \
-F "macos_binary=@executable/commanddash-mac" \
-F "linux_binary=@executable/commanddash-linux" \
-F "macos_x64_binary=@executable/commanddash-mac-x64"
Binary file added assets/flow.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion commanddash/lib/runner.dart
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ class VersionCommand extends Command {
@override
void run() {
/// It is not possible to fetch version from pubspec.yaml hence assigning manually
print('0.0.7');
print('0.0.8');
}
}

Expand Down
2 changes: 1 addition & 1 deletion commanddash/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: commanddash
description: CLI enhancments to Dash-AI
version: 0.0.7
version: 0.0.8
repository: https://github.com/Welltested-AI/commanddash

environment:
Expand Down
41 changes: 41 additions & 0 deletions readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
<p align="center">
<a href="" rel="noopener">
<img height=200px src="https://github.com/CommandDash/commanddash/raw/develop/assets/commanddash-logo.png"></a>
</p>
<h1 align="center">Dash Agents</h1>
<div align = "center">

[![VScode Downloads](https://img.shields.io/visual-studio-marketplace/d/WelltestedAI.fluttergpt)](https://marketplace.visualstudio.com/items?itemName=WelltestedAI.fluttergpt&ssr=false#overview) [![License: APACHE](https://img.shields.io/badge/License-APACHE%202.0-yellow)](/LICENSE)
</div>

<h3 align="center">Build and share your own in IDE Programming Agents</h3>

-----------------

Dash Agents Framework enables developers to create custom programming agents, expert at a defined task, and share them on the [CommandDash](https://github.com/CommandDash/commanddash) marketplace.
<div align="center">

![Image Name](assets/flow.png)

</div>

This repo contains the three parts that support the creation and execution of Dash Agents.

**For Agent Creators:**
* **`dash_cli`**: A command-line interface for creating agent projects and publishing them to the CommandDash marketplace
* **`dash_agent`**: The framework that devs can use to build agents in Dart, defining data sources, commands (like "/ask", "/generate"), and the steps involved in each command.

**For Project Contributors:**
* **`commanddash(engine)`:** Processes the user's agent configuration defined in the framework by analyzing user's codebase, interacting with LLMs and providing the correct response to the IDE.

Read our [quickstart](https://www.commanddash.io/docs/quickstart) guide to get started with creating your own agents.


## Contributing

CommandDash is growing!

* **Feature Requests:** Suggest new capabilities for the framework by opening an issue in the [issue tracker](https://github.com/CommandDash/packages/issues).
* **Bug Fixes:** Encountered any bug? Report to us and Pull Requests with fixes are welcome.

We are excited to see what you build with CommandDash!