Skip to content

Commit 2da846e

Browse files
committed
prepare for publish to crates.io
1 parent 8645281 commit 2da846e

File tree

8 files changed

+142
-106
lines changed

8 files changed

+142
-106
lines changed

Cargo.lock

Lines changed: 3 additions & 61 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,39 @@
11
[workspace]
22
members = ["openhelm", "openhelm-sdk", "openhelm-github", "openhelm-http"]
33
resolver = "2"
4+
5+
[workspace.package]
6+
version = "0.1.0"
7+
edition = "2024"
8+
license = "MIT"
9+
authors = ["Marc Espín <mespinsanz@gmail.com>"]
10+
repository = "https://github.com/marc2332/openhelm"
11+
homepage = "https://github.com/marc2332/openhelm"
12+
readme = "README.md"
13+
14+
[workspace.dependencies]
15+
# Internal crates
16+
openhelm-sdk = { version = "0.1.0", path = "openhelm-sdk" }
17+
openhelm-github = { version = "0.1.0", path = "openhelm-github" }
18+
openhelm-http = { version = "0.1.0", path = "openhelm-http" }
19+
20+
# Async runtime
21+
tokio = { version = "1", features = ["rt"] }
22+
23+
# Error handling
24+
anyhow = "1"
25+
async-trait = "0.1"
26+
27+
# Serialization
28+
serde = { version = "1", features = ["derive"] }
29+
serde_json = "1"
30+
toml = "0.8"
31+
32+
# Base64
33+
base64 = "0.22"
34+
35+
# HTTP client
36+
reqwest = { version = "0.12", default-features = false, features = ["json"] }
37+
38+
# GitHub client
39+
octocrab = "0.49"

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2026
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22

33
<img src="./logo.png" alt="openhelm logo" width="150" align="right" />
44

5+
[![crates.io](https://img.shields.io/crates/v/openhelm.svg)](https://crates.io/crates/openhelm)
6+
[![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
7+
58
AI-powered bot designed to work on different types of tasks. You talk to it via Telegram. It can act on the host system: reading files, browsing GitHub repos, and more, but limited by a configurable permission and profile system.
69

710
> For sake of transparency: This project was 98% done with AI.
@@ -38,7 +41,13 @@ The daemon runs as a background service. Users pair their Telegram account with
3841

3942
## Installation
4043

41-
Install openhelm directly from the GitHub repository using Cargo:
44+
Install the latest release from [crates.io](https://crates.io/crates/openhelm):
45+
46+
```sh
47+
cargo install openhelm
48+
```
49+
50+
Or install directly from the GitHub repository to get the latest unreleased changes:
4251

4352
```sh
4453
cargo install --git https://github.com/marc2332/openhelm
@@ -258,7 +267,7 @@ The config file is expected at `/root/openhelm.toml` inside the container.
258267

259268
## Building from source
260269

261-
Requires Rust stable. The workspace contains three crates:
270+
Requires Rust stable. The workspace contains four crates:
262271

263272
| Crate | Description |
264273
|---|---|

openhelm-github/Cargo.toml

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,22 @@
11
[package]
22
name = "openhelm-github"
3-
version = "0.1.0"
4-
edition = "2024"
3+
description = "GitHub skill for openhelm: browse repos, issues, PRs, and files"
4+
version.workspace = true
5+
edition.workspace = true
6+
license.workspace = true
7+
authors.workspace = true
8+
repository.workspace = true
9+
homepage.workspace = true
10+
readme.workspace = true
11+
keywords = ["openhelm", "github", "ai", "bot", "skill"]
12+
categories = ["api-bindings", "asynchronous"]
513

614
[dependencies]
7-
openhelm-sdk = { path = "../openhelm-sdk" }
8-
9-
anyhow = "1"
10-
async-trait = "0.1"
11-
base64 = "0.22"
12-
octocrab = "0.49"
13-
serde = { version = "1", features = ["derive"] }
14-
serde_json = "1"
15-
toml = "0.8"
15+
openhelm-sdk.workspace = true
16+
anyhow.workspace = true
17+
async-trait.workspace = true
18+
base64.workspace = true
19+
octocrab.workspace = true
20+
serde.workspace = true
21+
serde_json.workspace = true
22+
toml.workspace = true

openhelm-http/Cargo.toml

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,20 @@
11
[package]
22
name = "openhelm-http"
3-
version = "0.1.0"
4-
edition = "2024"
3+
description = "HTTP skill for openhelm: GET, POST, PUT, PATCH, DELETE, HEAD"
4+
version.workspace = true
5+
edition.workspace = true
6+
license.workspace = true
7+
authors.workspace = true
8+
repository.workspace = true
9+
homepage.workspace = true
10+
readme.workspace = true
11+
keywords = ["openhelm", "http", "ai", "bot", "skill"]
12+
categories = ["api-bindings", "asynchronous", "web-programming::http-client"]
513

614
[dependencies]
7-
openhelm-sdk = { path = "../openhelm-sdk" }
8-
9-
anyhow = "1"
10-
async-trait = "0.1"
11-
reqwest = { version = "0.12", features = ["json"] }
12-
serde_json = "1"
13-
toml = "0.8"
15+
openhelm-sdk.workspace = true
16+
anyhow.workspace = true
17+
async-trait.workspace = true
18+
reqwest = { workspace = true, features = ["json"] }
19+
serde_json.workspace = true
20+
toml.workspace = true

openhelm-sdk/Cargo.toml

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,20 @@
11
[package]
22
name = "openhelm-sdk"
3-
version = "0.1.0"
4-
edition = "2024"
3+
description = "Trait definitions and types for building openhelm skills and tools"
4+
version.workspace = true
5+
edition.workspace = true
6+
license.workspace = true
7+
authors.workspace = true
8+
repository.workspace = true
9+
homepage.workspace = true
10+
readme.workspace = true
11+
keywords = ["openhelm", "ai", "bot", "plugin", "sdk"]
12+
categories = ["api-bindings", "asynchronous"]
513

614
[dependencies]
7-
anyhow = "1"
8-
async-trait = "0.1"
9-
serde = { version = "1", features = ["derive"] }
10-
serde_json = "1"
11-
toml = "0.8"
12-
tokio = { version = "1", features = ["rt"] }
15+
anyhow.workspace = true
16+
async-trait.workspace = true
17+
serde.workspace = true
18+
serde_json.workspace = true
19+
toml.workspace = true
20+
tokio.workspace = true

0 commit comments

Comments
 (0)