@einsia/agent-git 0.2.10 → 0.2.11

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.
package/CHANGELOG.md CHANGED
@@ -6,6 +6,27 @@ Every notable change to agit, the AgentGit CLI, by release. The format follows
6
6
  its [GitHub Release](https://github.com/Einsia/agent-git/releases), and the
7
7
  `@einsia/agent-git` npm package ships this file.
8
8
 
9
+ ## [Unreleased]
10
+
11
+ ## [0.2.11] - 2026-09-28
12
+
13
+ ### Fixed
14
+
15
+ - Reconcile the local RC daemon after self-upgrade, global npm installation, or
16
+ `npx create-agit`, including installations at a different executable path.
17
+ Idle sessions attached to a persistent Codex server can detach for a safe
18
+ restart; busy daemons retry after their work clears.
19
+ - Stage the `create-agit` executable before replacing it, so an installation
20
+ failure preserves the previous CLI. Report when another `agit` on `PATH`
21
+ shadows the installed copy.
22
+ - Reach the Hub without a fixed stall when one of its addresses is unreachable
23
+ from your network. agit dialed the resolved addresses one after another and
24
+ gave the first one most of the connection budget, so every command that talked
25
+ to the Hub could wait about 20 seconds before trying the next address. The
26
+ addresses now race: the next one starts after 250 ms or as soon as the
27
+ previous one fails. Hub API requests, SOCKS proxy connections, LFS
28
+ availability checks and `agit upgrade` downloads all use it.
29
+
9
30
  ## [0.2.10] - 2026-09-28
10
31
 
11
32
  ### Fixed
@@ -1,14 +1,8 @@
1
1
  'use strict';
2
2
 
3
- // postinstall: the binary lands with the optional dep, so there is nothing to download. It
4
- // does two things in passing, each idempotent and neither able to block the install when it
5
- // fails:
6
- //
7
- // 1. Self-check that the binary really runs (an architecture mismatch, Rosetta and the like
8
- // surface here rather than the first time the user types agit).
9
- // 2. Run `agit setup` — the product promise of "installed by default at download time":
10
- // skills, hooks, MCP and AGENTS.md, all in one go. AGIT_SKIP_SETUP=1 turns it off
11
- // (CI / hosted environments).
3
+ // The binary lands with the optional dependency, so installation needs no download. Verify it
4
+ // before setup or daemon reconciliation; neither follow-up can invalidate the installed CLI.
5
+ // AGIT_SKIP_SETUP=1 leaves the installed binary available without configuring user integrations.
12
6
  //
13
7
  // npm displays postinstall output badly, so stay quiet: speak only when something is wrong.
14
8
 
@@ -59,6 +53,22 @@ function main() {
59
53
  env: { ...process.env, AGIT_INSTALL_CHANNEL: 'npm_global' },
60
54
  });
61
55
  }
56
+ if (truthy(process.env.npm_config_global) && process.env.npm_command !== 'exec') {
57
+ const reconciled = spawnSync(bin, ['rc', 'local', 'reconcile-installed', '--allow-other-installation'], {
58
+ encoding: 'utf8', timeout: 35000,
59
+ env: { ...env, AGIT_INTERNAL_UPDATE_RESTART: '1' },
60
+ });
61
+ if (reconciled.error || reconciled.status !== 0) {
62
+ log.warn(`RC daemon reconciliation failed: ${(reconciled.stderr || reconciled.error?.message || `exit ${reconciled.status}`).trim()}`);
63
+ } else {
64
+ try {
65
+ const outcome = JSON.parse(reconciled.stdout);
66
+ if (outcome.status === 'deferred') log.warn(`RC daemon upgrade is pending: ${outcome.message}`);
67
+ } catch {
68
+ log.warn('RC daemon returned an unreadable reconciliation result.');
69
+ }
70
+ }
71
+ }
62
72
  if (truthy(process.env.AGIT_SKIP_SETUP)) return;
63
73
  const setup = spawnSync(bin, ['setup'], { stdio: 'inherit', env });
64
74
  if (setup.status !== 0) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@einsia/agent-git",
3
- "version": "0.2.10",
3
+ "version": "0.2.11",
4
4
  "description": "Version control for agent sessions — the agit CLI plus skills/hooks/MCP wiring for Claude Code, Codex, OpenCode and Cursor. The AgentGit hub deploys separately.",
5
5
  "keywords": [
6
6
  "agit",
@@ -49,10 +49,10 @@
49
49
  "access": "public"
50
50
  },
51
51
  "optionalDependencies": {
52
- "@einsia/agent-git-linux-x64": "0.2.10",
53
- "@einsia/agent-git-linux-arm64": "0.2.10",
54
- "@einsia/agent-git-darwin-x64": "0.2.10",
55
- "@einsia/agent-git-darwin-arm64": "0.2.10",
56
- "@einsia/agent-git-win32-x64": "0.2.10"
52
+ "@einsia/agent-git-linux-x64": "0.2.11",
53
+ "@einsia/agent-git-linux-arm64": "0.2.11",
54
+ "@einsia/agent-git-darwin-x64": "0.2.11",
55
+ "@einsia/agent-git-darwin-arm64": "0.2.11",
56
+ "@einsia/agent-git-win32-x64": "0.2.11"
57
57
  }
58
58
  }