@sigit / si / commits / 7bf1bf1

Prepare crates.io distribution

Seto Elkahfi committed Aug 16, 2026 at 13:00 UTC 7bf1bf1f73ae3b9ab60ff5492004d7a72127bff9
28 files changed +30 -30
Cargo.lock
+3 -3
@@ -1,6 +1,6 @@
1 # This file is automatically @generated by Cargo.
2 # It is not intended for manual editing.
3 -version = 3
3 +version = 4
4
5 [[package]]
6 name = "aho-corasick"
@@ -1260,7 +1260,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
1260 checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba"
1261
1262 [[package]]
1263 -name = "sigit-api"
1263 +name = "sigit-si-api"
1264 version = "1.0.0"
1265 dependencies = [
1266 "chrono",
@@ -1286,7 +1286,7 @@ dependencies = [
1286 "reqwest",
1287 "serde",
1288 "serde_json",
1289 - "sigit-api",
1289 + "sigit-si-api",
1290 "tabled",
1291 "tempfile",
1292 "tokio",
Cargo.toml
+7 -7
@@ -1,17 +1,17 @@
1 [workspace]
2 resolver = "2"
3 -members = ["crates/cli", "crates/sigit-api"]
3 +members = ["crates/cli", "crates/sigit-si-api"]
4
5 -# The workspace exists for one reason: `sigit-api` is a standalone, typed
6 -# client for the sigit.si JSON API that the desktop app (sigit-app) and the
7 -# agent (sigit) can depend on without pulling in clap, dialoguer, and the rest
8 -# of the terminal surface. `cli` is the thin `si` binary on top of it.
5 +# The workspace exists for one reason: `sigit-si-api` is a standalone, typed
6 +# client for the sigit.si JSON API that the desktop app (sigit-app) can depend
7 +# on without pulling in clap, dialoguer, and the rest of the terminal surface.
8 +# `cli` is the thin `si` binary on top of it.
9 [workspace.package]
10 version = "1.0.0"
11 edition = "2021"
12 authors = ["Seto Elkahfi <seto@sigit.si>"]
13 license = "Apache-2.0"
14 -repository = "https://github.com/getsigit/sigit-si-cli"
14 +repository = "https://github.com/getsigit/si"
15 homepage = "https://sigit.si"
16
17 [workspace.dependencies]
@@ -29,7 +29,7 @@ reqwest = { version = "0.12", default-features = false, features = [
29 ] }
30 serde = { version = "1", features = ["derive"] }
31 serde_json = "1"
32 -sigit-api = { version = "1.0.0", path = "crates/sigit-api" }
32 +sigit-si-api = { version = "1.0.0", path = "crates/sigit-si-api" }
33 tabled = { version = "0.20", default-features = false, features = ["std"] }
34 thiserror = "2.0"
35 tokio = { version = "1", features = ["macros", "rt-multi-thread"] }
README.md
+3 -3
@@ -53,15 +53,15 @@ CI authenticates without an interactive login.
53
54 ## Workspace layout
55
56 -- **`crates/sigit-api`** — a standalone, typed Rust client for the sigit.si
56 +- **`crates/sigit-si-api`** — a standalone, typed Rust client for the sigit.si
57 JSON API. No CLI dependencies (clap, dialoguer, …); usable from any Rust
58 project that wants to talk to sigit.si, including the desktop app.
59 - **`crates/cli`** — the `si` binary: command parsing, terminal rendering, git
60 - remote resolution, and credential storage, built on top of `sigit-api`.
60 + remote resolution, and credential storage, built on top of `sigit-si-api`.
61
62 Issues, pull requests, and code search have no REST surface on sigit.si yet —
63 they're served over the same MCP (Model Context Protocol) JSON-RPC endpoint
64 -the AI agent uses. `sigit-api` speaks that transport internally; it's not
64 +the AI agent uses. `sigit-si-api` speaks that transport internally; it's not
65 visible at the call site.
66
67 ## Development
crates/cli/Cargo.toml
+1 -1
@@ -27,7 +27,7 @@ open = { workspace = true }
27 reqwest = { workspace = true }
28 serde = { workspace = true }
29 serde_json = { workspace = true }
30 -sigit-api = { workspace = true }
30 +sigit-si-api = { workspace = true }
31 tabled = { workspace = true }
32 tokio = { workspace = true }
33 tracing = { workspace = true }
crates/cli/src/cli.rs
+1 -1
@@ -1,6 +1,6 @@
1 //! The `si` command tree.
2
3 -use {clap::Parser, sigit_api::Environment, std::str::FromStr};
3 +use {clap::Parser, sigit_si_api::Environment, std::str::FromStr};
4
5 #[derive(Parser)]
6 #[command(name = "si", version, about = "The sigit.si command line interface.")]
crates/cli/src/commands/auth.rs
+1 -1
@@ -1,7 +1,7 @@
1 use {
2 crate::{cli::AuthCommand, config, context::Ctx, ui},
3 anyhow::{anyhow, Result},
4 - sigit_api::{account::incomplete_reason, models::AccountStatus},
4 + sigit_si_api::{account::incomplete_reason, models::AccountStatus},
5 };
6
7 pub async fn run(ctx: &Ctx, command: AuthCommand) -> Result<()> {
crates/cli/src/commands/issue.rs
+1 -1
@@ -1,7 +1,7 @@
1 use {
2 crate::{cli::IssueCommand, context::Ctx, ui},
3 anyhow::{anyhow, Result},
4 - sigit_api::State,
4 + sigit_si_api::State,
5 };
6
7 pub async fn run(ctx: &Ctx, command: IssueCommand) -> Result<()> {
crates/cli/src/commands/pr.rs
+1 -1
@@ -1,7 +1,7 @@
1 use {
2 crate::{cli::PrCommand, context::Ctx, git, ui},
3 anyhow::{anyhow, Result},
4 - sigit_api::State,
4 + sigit_si_api::State,
5 };
6
7 pub async fn run(ctx: &Ctx, command: PrCommand) -> Result<()> {
crates/cli/src/commands/repo.rs
+1 -1
@@ -5,7 +5,7 @@ use {
5 ui::{self, prompt},
6 },
7 anyhow::Result,
8 - sigit_api::NewRepository,
8 + sigit_si_api::NewRepository,
9 };
10
11 pub async fn run(ctx: &Ctx, command: RepoCommand) -> Result<()> {
crates/cli/src/config.rs
+1 -1
@@ -6,7 +6,7 @@
6
7 use {
8 anyhow::{anyhow, Context, Result},
9 - sigit_api::Environment,
9 + sigit_si_api::Environment,
10 std::{
11 fs,
12 path::{Path, PathBuf},
crates/cli/src/context.rs
+1 -1
@@ -4,7 +4,7 @@
4 use {
5 crate::git::{self, RepoSlug},
6 anyhow::{anyhow, Result},
7 - sigit_api::{Client, Environment},
7 + sigit_si_api::{Client, Environment},
8 };
9
10 pub struct Ctx {
crates/cli/src/main.rs
+1 -1
@@ -11,7 +11,7 @@ use {
11 cli::{Cli, Command},
12 console::style,
13 context::Ctx,
14 - sigit_api::Client,
14 + sigit_si_api::Client,
15 };
16
17 #[tokio::main]
crates/cli/src/ui/render.rs
+1 -1
@@ -3,7 +3,7 @@
3
4 use {
5 super::{bold, dim, highlight, relative_time, state_badge},
6 - sigit_api::models::{
6 + sigit_si_api::models::{
7 Billing, CloudSession, CodeHit, Comment, Hook, Issue, IssueSummary, PullRequest,
8 PullRequestSummary, Repository, RepositorySummary, User,
9 },
crates/sigit-si-api/Cargo.toml renamed
+2 -2
@@ -1,6 +1,6 @@
1 [package]
2 -name = "sigit-api"
3 -description = "Typed client for the sigit.si JSON API."
2 +name = "sigit-si-api"
3 +description = "Typed client for the sigit.si JSON API. Not affiliated with the siGit Code agent."
4 version.workspace = true
5 edition.workspace = true
6 authors.workspace = true
crates/sigit-si-api/README.md renamed
+3 -3
@@ -1,18 +1,18 @@
1 -# sigit-api
1 +# sigit-si-api
2
3 A typed Rust client for the [sigit.si](https://sigit.si) JSON API. Used by the
4 `si` CLI (`crates/cli` in this workspace) and usable standalone by any Rust
5 project — the desktop app included.
6
7 ```rust
8 -use sigit_api::{Client, Environment};
8 +use sigit_si_api::{Client, Environment};
9
10 let client = Client::new(Environment::Production)?.with_token(token);
11 let me = client.user().await?;
12 let repos = client.repos().await?;
13 ```
14
15 -See the crate-level docs (`cargo doc --open -p sigit-api`) for the full
15 +See the crate-level docs (`cargo doc --open -p sigit-si-api`) for the full
16 surface: accounts, repositories, webhooks, Cloud Sessions, billing, and
17 issues/pull requests/code search (served over an internal MCP JSON-RPC
18 bridge).
crates/sigit-si-api/src/account.rs renamed
crates/sigit-si-api/src/billing.rs renamed
crates/sigit-si-api/src/client.rs renamed
crates/sigit-si-api/src/code.rs renamed
crates/sigit-si-api/src/environment.rs renamed
crates/sigit-si-api/src/error.rs renamed
crates/sigit-si-api/src/issues.rs renamed
crates/sigit-si-api/src/lib.rs renamed
+2 -2
@@ -1,9 +1,9 @@
1 //! A typed client for the [sigit.si](https://sigit.si) JSON API.
2 //!
3 //! ```no_run
4 -//! use sigit_api::{Client, Environment, issues::State};
4 +//! use sigit_si_api::{Client, Environment, issues::State};
5 //!
6 -//! # async fn example() -> sigit_api::Result<()> {
6 +//! # async fn example() -> sigit_si_api::Result<()> {
7 //! let client = Client::new(Environment::Production)?.with_token("…");
8 //!
9 //! let me = client.user().await?;
crates/sigit-si-api/src/mcp.rs renamed
crates/sigit-si-api/src/models.rs renamed
crates/sigit-si-api/src/pulls.rs renamed
crates/sigit-si-api/src/repos.rs renamed
crates/sigit-si-api/src/sessions.rs renamed