dsh-agy-link 0.4.70 → 0.4.74

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -107,9 +107,32 @@ reference-counted slot is the strongest isolation the plugin can provide.
107
107
  - **DSH tools to agy (reverse MCP bridge)** - available since v0.2 behind the
108
108
  `mcpBridge` config flag (experimental): the plugin runs a loopback-only,
109
109
  token-guarded HTTP endpoint and registers a zero-dependency stdio MCP
110
- server (`dsh-tools`) in the workspace `.mcp.json` (merged in, restored on
111
- disable). `run_code` and `agy_ask` are never bridged; `mcpToolAllowlist`
112
- restricts the set further.
110
+ server in the MCP registry (`~/.gemini/config/mcp_config.json` by default,
111
+ where `agy` 1.4+ actually reads it, merged in and restored on disable).
112
+ Bridged calls carry caller identity via `DSH_MCP_SESSION` so identity-enforcing
113
+ tools (such as `agent_teams`) function correctly. `run_code` and `agy_ask`
114
+ are never bridged; `mcpToolAllowlist` restricts the set further.
115
+ Every bridged call is audit-logged as `mcp call <tool> [<outcome>] <ms>` with
116
+ the caller class and the failure text (never the arguments), so a failed run
117
+ is visible in journald instead of only in transcripts.
118
+ - **DSH `send_message` from an agy child** - DSH's sub-agent runtime appends a
119
+ footer telling the child to report with `send_message({ agent_id: <parent> })`.
120
+ In an agy run that name resolves to agy's **own** `send_message`, which does
121
+ not know DSH agent ids and fails with `recipient "..." not found`. The DSH
122
+ tool itself is bridgeable - add `send_message` to `mcpToolAllowlist` and call
123
+ it explicitly on the `dsh-tools-<port>` MCP server (agy dispatches MCP calls
124
+ by server + tool name, so there is no collision with the native tool). The
125
+ footer still names the native one, so an agy member should report through
126
+ `agent_teams_send_message` (or an explicit instruction) instead. Root cause is
127
+ upstream in `@deepseek-ai/dsh-subagent`, which assumes a DSH-native child.
128
+ - **Weekly quota auto-warmup is opt-in (v0.4.74+)** - `autoWarmup` defaults to
129
+ `false` because the feature deliberately bypasses the CLI-first quota path and
130
+ sends minimal `loadCodeAssist` + `generateContent` probes straight to Google's
131
+ internal endpoints. When enabled it scans every 5 minutes, only targets rows
132
+ whose `weeklyFraction` is explicitly >= 99.9%, records a 30-minute failure
133
+ backoff, skips accounts in cooldown / auth quarantine, and never guesses a
134
+ missing `cloudaicompanionProject` (no shared fallback project id). The manual
135
+ "Warmup" buttons still work while auto mode is off.
113
136
  - **Full tool args / diff cards (v0.4.28+)** - the bridge reads agy's
114
137
  conversation SQLite DB via the `sqlite3` CLI to recover arguments that
115
138
  `filterToolParameters` strips from stream-json. When `sqlite3` is missing
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-agy-link",
3
- "version": "0.4.70",
3
+ "version": "0.4.74",
4
4
  "description": "Google Antigravity (agy CLI) models for DeepSeek Harness — stream Gemini/Claude/GPT-OSS subscriptions into DSH with thinking, tool activity, token usage and in-GUI Google OAuth login.",
5
5
  "type": "module",
6
6
  "license": "MIT",