From 7b5cbf1cea22bf7cc8c85ab6789a9873b8cae097 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 20 Aug 2026 16:10:22 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=A6=8B=20New=20version=20release?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .changeset/mcp-cli-parity.md | 5 ---- .claude-plugin/marketplace.json | 2 +- CHANGELOG.md | 6 ++++ Cargo.lock | 28 +++++++++---------- Cargo.toml | 26 ++++++++--------- .../smooth-agent/.claude-plugin/plugin.json | 2 +- package.json | 2 +- 7 files changed, 36 insertions(+), 35 deletions(-) delete mode 100644 .changeset/mcp-cli-parity.md diff --git a/.changeset/mcp-cli-parity.md b/.changeset/mcp-cli-parity.md deleted file mode 100644 index 2354acaca..000000000 --- a/.changeset/mcp-cli-parity.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@smooai/smooth': minor ---- - -MCP→CLI parity batch: the ~35 hosted-MCP tools that had no `smoo` verb now do. New command groups `smoo analytics` (catalog / org-scoped validated query / GA4 reports), `smoo campaigns` (list / analytics / preview-first send — a real send requires `--confirm`, and per-recipient suppression stays server-side), `smoo drip` (sequences / enrollments / enroll / cancel / test-send), `smoo audiences` (list / create / members / add-members / resolve), `smoo forms`, `smoo gbp reviews`, `smoo search-console queries`, `smoo sheets snapshots`, and `smoo workforce` (bare command = the directory). Extended: `smoo files search|summarize`, `smoo heypage versions|rollback|source get|set|content get|set`, and `smoo api observability metrics list|query|attributes` + `web-vitals`. Every verb mirrors the exact route its mcp.smoo.ai twin calls, takes `--json`, reports empty results as answers, and always reports truncation. diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index c013a31e5..4e6b5546f 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -13,7 +13,7 @@ "name": "smooth-agent", "source": "./claude-plugins/smooth-agent", "description": "Run a Big Smooth that drives Claude Code worker sessions over tmux, coordinate agents over th-mail, drive the org's Smooth Operator, and track work in pearls. Provides the /smooth command + a windows-build-box skill (throwaway Windows EC2 over SSM). Ships the shared SmooAI repo guardrail hooks (worktree enforcement, th-over-curl nudges, pearls-label reminder, pearl-store read-only-wedge guard).", - "version": "0.38.0", + "version": "0.39.0", "category": "orchestration", "keywords": ["orchestration", "tmux", "multi-agent", "th-mail", "pearls", "smooth-operator"], "author": { diff --git a/CHANGELOG.md b/CHANGELOG.md index 5179e19fc..0df0c2b6e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # @smooai/smooth +## 0.39.0 + +### Minor Changes + +- 190e054: MCP→CLI parity batch: the ~35 hosted-MCP tools that had no `smoo` verb now do. New command groups `smoo analytics` (catalog / org-scoped validated query / GA4 reports), `smoo campaigns` (list / analytics / preview-first send — a real send requires `--confirm`, and per-recipient suppression stays server-side), `smoo drip` (sequences / enrollments / enroll / cancel / test-send), `smoo audiences` (list / create / members / add-members / resolve), `smoo forms`, `smoo gbp reviews`, `smoo search-console queries`, `smoo sheets snapshots`, and `smoo workforce` (bare command = the directory). Extended: `smoo files search|summarize`, `smoo heypage versions|rollback|source get|set|content get|set`, and `smoo api observability metrics list|query|attributes` + `web-vitals`. Every verb mirrors the exact route its mcp.smoo.ai twin calls, takes `--json`, reports empty results as answers, and always reports truncation. + ## 0.38.0 ### Minor Changes diff --git a/Cargo.lock b/Cargo.lock index f5289ed6d..5c5eb37ce 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5060,7 +5060,7 @@ dependencies = [ [[package]] name = "smooai-smooth-api-client" -version = "0.38.0" +version = "0.39.0" dependencies = [ "anyhow", "async-trait", @@ -5089,7 +5089,7 @@ dependencies = [ [[package]] name = "smooai-smooth-bench" -version = "0.38.0" +version = "0.39.0" dependencies = [ "anyhow", "async-trait", @@ -5116,7 +5116,7 @@ dependencies = [ [[package]] name = "smooai-smooth-cast" -version = "0.38.0" +version = "0.39.0" dependencies = [ "anyhow", "dirs-next", @@ -5132,7 +5132,7 @@ dependencies = [ [[package]] name = "smooai-smooth-cli" -version = "0.38.0" +version = "0.39.0" dependencies = [ "anstream", "anyhow", @@ -5185,7 +5185,7 @@ dependencies = [ [[package]] name = "smooai-smooth-code" -version = "0.38.0" +version = "0.39.0" dependencies = [ "anyhow", "async-trait", @@ -5216,7 +5216,7 @@ dependencies = [ [[package]] name = "smooai-smooth-daemon" -version = "0.38.0" +version = "0.39.0" dependencies = [ "anyhow", "async-trait", @@ -5260,7 +5260,7 @@ dependencies = [ [[package]] name = "smooai-smooth-diver" -version = "0.38.0" +version = "0.39.0" dependencies = [ "anyhow", "axum 0.8.8", @@ -5280,7 +5280,7 @@ dependencies = [ [[package]] name = "smooai-smooth-goalie" -version = "0.38.0" +version = "0.39.0" dependencies = [ "anyhow", "bytes", @@ -5301,7 +5301,7 @@ dependencies = [ [[package]] name = "smooai-smooth-menubar" -version = "0.38.0" +version = "0.39.0" dependencies = [ "anyhow", "block2", @@ -5435,7 +5435,7 @@ dependencies = [ [[package]] name = "smooai-smooth-pearls" -version = "0.38.0" +version = "0.39.0" dependencies = [ "anyhow", "async-trait", @@ -5455,7 +5455,7 @@ dependencies = [ [[package]] name = "smooai-smooth-policy" -version = "0.38.0" +version = "0.39.0" dependencies = [ "anyhow", "chrono", @@ -5471,7 +5471,7 @@ dependencies = [ [[package]] name = "smooai-smooth-tmux" -version = "0.38.0" +version = "0.39.0" dependencies = [ "anyhow", "tempfile", @@ -5480,7 +5480,7 @@ dependencies = [ [[package]] name = "smooai-smooth-tools" -version = "0.38.0" +version = "0.39.0" dependencies = [ "anyhow", "async-trait", @@ -5511,7 +5511,7 @@ dependencies = [ [[package]] name = "smooai-smooth-web" -version = "0.38.0" +version = "0.39.0" dependencies = [ "axum 0.8.8", "axum-extra", diff --git a/Cargo.toml b/Cargo.toml index cf26ae0cc..4d14d586b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,7 +3,7 @@ resolver = "2" members = ["crates/*"] [workspace.package] -version = "0.38.0" +version = "0.39.0" edition = "2021" license = "MIT" repository = "https://github.com/SmooAI/smooth" @@ -223,19 +223,19 @@ smooth-operator-server = { git = "https://github.com/SmooAI/smooth-operator.git" smooth-operator-svc = { git = "https://github.com/SmooAI/smooth-operator.git", rev = "b6c6b84", package = "smooai-smooth-operator", default-features = false } # smooth-owned coding-harness extensions to the generic engine (re-homed from # the engine when it went generic at 0.14.0). See crates/smooth-cast. -smooth-cast = { version = "0.38.0", path = "crates/smooth-cast", package = "smooai-smooth-cast" } -smooth-policy = { path = "crates/smooth-policy", version = "0.38.0", package = "smooai-smooth-policy" } -smooth-web = { version = "0.38.0", path = "crates/smooth-web", package = "smooai-smooth-web" } -smooth-code = { version = "0.38.0", path = "crates/smooth-code", package = "smooai-smooth-code" } -smooth-pearls = { path = "crates/smooth-pearls", version = "0.38.0", package = "smooai-smooth-pearls" } -smooth-diver = { version = "0.38.0", path = "crates/smooth-diver", package = "smooai-smooth-diver" } -smooth-tmux = { version = "0.38.0", path = "crates/smooth-tmux", package = "smooai-smooth-tmux" } -smooth-api-client = { version = "0.38.0", path = "crates/smooth-api-client", package = "smooai-smooth-api-client" } +smooth-cast = { version = "0.39.0", path = "crates/smooth-cast", package = "smooai-smooth-cast" } +smooth-policy = { path = "crates/smooth-policy", version = "0.39.0", package = "smooai-smooth-policy" } +smooth-web = { version = "0.39.0", path = "crates/smooth-web", package = "smooai-smooth-web" } +smooth-code = { version = "0.39.0", path = "crates/smooth-code", package = "smooai-smooth-code" } +smooth-pearls = { path = "crates/smooth-pearls", version = "0.39.0", package = "smooai-smooth-pearls" } +smooth-diver = { version = "0.39.0", path = "crates/smooth-diver", package = "smooai-smooth-diver" } +smooth-tmux = { version = "0.39.0", path = "crates/smooth-tmux", package = "smooai-smooth-tmux" } +smooth-api-client = { version = "0.39.0", path = "crates/smooth-api-client", package = "smooai-smooth-api-client" } # Chat-first Big Smooth daemon on the smooth-operator LocalServer engine (th-7225f9). -smooth-daemon = { version = "0.38.0", path = "crates/smooth-daemon", package = "smooai-smooth-daemon" } -smooth-tools = { version = "0.38.0", path = "crates/smooth-tools", package = "smooai-smooth-tools" } -smooth-goalie = { version = "0.38.0", path = "crates/smooth-goalie", package = "smooai-smooth-goalie" } -smooth-menubar = { version = "0.38.0", path = "crates/smooth-menubar", package = "smooai-smooth-menubar" } +smooth-daemon = { version = "0.39.0", path = "crates/smooth-daemon", package = "smooai-smooth-daemon" } +smooth-tools = { version = "0.39.0", path = "crates/smooth-tools", package = "smooai-smooth-tools" } +smooth-goalie = { version = "0.39.0", path = "crates/smooth-goalie", package = "smooai-smooth-goalie" } +smooth-menubar = { version = "0.39.0", path = "crates/smooth-menubar", package = "smooai-smooth-menubar" } # Cross-runtime client shared library (github.com/SmooAI/client-shared). # SMOODEV-1464: switched from a local `path = "../client-shared/rust"` dep to # a rev-pinned git dep. The path form only resolved on a dev laptop, so every diff --git a/claude-plugins/smooth-agent/.claude-plugin/plugin.json b/claude-plugins/smooth-agent/.claude-plugin/plugin.json index de4240d3e..c6274ead1 100644 --- a/claude-plugins/smooth-agent/.claude-plugin/plugin.json +++ b/claude-plugins/smooth-agent/.claude-plugin/plugin.json @@ -1,7 +1,7 @@ { "$schema": "https://anthropic.com/claude-code/plugin.schema.json", "name": "smooth-agent", - "version": "0.38.0", + "version": "0.39.0", "description": "Big Smooth orchestration for Claude Code: tmux-supervised worker sessions that run in parallel, coordinate over th-mail, and track work in pearls. Auto-onboards every Claude Code session to the th-mail bus at startup, then nudges it to self-rename to a task-meaningful handle. Ships the `smooth` MCP server (th mcp serve) so agent mail, pearls and memory are tools rather than shell calls, plus a statusline showing your handle and unread count. Provides the /smooth command and a windows-build-box skill (throwaway Windows EC2 over SSM). Also ships the shared SmooAI repo guardrails as hooks (worktree enforcement, th-over-curl nudges, pearls-label reminder, pearl-store read-only-wedge guard, th-attest push hint) so the SmooAI repos stop hand-copying .claude/hooks.", "mcpServers": { "smooth": { diff --git a/package.json b/package.json index a653d144f..ad7076922 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@smooai/smooth", - "version": "0.38.0", + "version": "0.39.0", "description": "Security-first AI agent orchestration platform", "homepage": "https://github.com/SmooAI/smooth#readme", "bugs": {