@einsia/agent-git 0.2.22 → 0.2.25
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 +127 -0
- package/package.json +6 -6
package/CHANGELOG.md
CHANGED
|
@@ -8,6 +8,133 @@ its [GitHub Release](https://github.com/Einsia/agent-git/releases), and the
|
|
|
8
8
|
|
|
9
9
|
## [Unreleased]
|
|
10
10
|
|
|
11
|
+
## [0.2.25] - 2026-10-25
|
|
12
|
+
|
|
13
|
+
### Added
|
|
14
|
+
|
|
15
|
+
- `agit privacy mode OWNER/REPO@BRANCH plain` selects unencrypted publication before a session's
|
|
16
|
+
first remote registration. The choice follows the logical session across branches, keeps source
|
|
17
|
+
history unchanged, and is separate from repository visibility. Use `encrypted` to opt into
|
|
18
|
+
encryption before registration, or omit the mode to inspect the local choice and registered mode.
|
|
19
|
+
|
|
20
|
+
- `agit privacy policy tool [NAME] --omit true|false` controls calls and results together, with
|
|
21
|
+
exact tool-name and runtime-qualified overrides. `--reset` removes a named override.
|
|
22
|
+
- `agit privacy policy attachment omit|metadata|original` controls recorded attachments in
|
|
23
|
+
encrypted public views, privacy exports and shares. Plain push retains its existing path.
|
|
24
|
+
|
|
25
|
+
### Changed
|
|
26
|
+
|
|
27
|
+
- New sessions, first imports and independent forks default to plain publication again.
|
|
28
|
+
0.2.24 created them with encrypted publication by default, which its release notes did not
|
|
29
|
+
mention. Existing recorded and registered modes are preserved, including those of sessions
|
|
30
|
+
0.2.24 created. Select `privacy mode OWNER/REPO@BRANCH encrypted` before registration to
|
|
31
|
+
enable encryption.
|
|
32
|
+
- Privacy projections default to visible tools and original attachments, including when an
|
|
33
|
+
existing policy omits the new fields. Configure omission explicitly to hide them. Captured
|
|
34
|
+
file-tool content no longer requires a workspace/include match; explicit and mandatory file
|
|
35
|
+
exclusions remain effective. Readable text remains sanitized; recorded binary carriers are retained.
|
|
36
|
+
|
|
37
|
+
### Fixed
|
|
38
|
+
|
|
39
|
+
- A privacy dictionary upload that the Hub, or a network policy in front of it, refuses is no
|
|
40
|
+
longer sent again on every push, fetch, clone and login. agit retries it after a delay that
|
|
41
|
+
starts at 10 minutes and grows to 6 hours, and keeps downloading dictionaries from other
|
|
42
|
+
devices meanwhile. `agit push` and `agit doctor` say whether a network policy or the Hub
|
|
43
|
+
refused it; `agit login` retries at once.
|
|
44
|
+
|
|
45
|
+
- Publication notices distinguish configured hiding, attachment handling, unsupported formats
|
|
46
|
+
and unverifiable sources. Omitted tools preserve call/result classification instead of opening
|
|
47
|
+
user turns, and activity summaries exclude both legacy and specific omission notices.
|
|
48
|
+
|
|
49
|
+
- Encrypted publication restores originals against a frozen dictionary across all batches and
|
|
50
|
+
resolves evidence references independently of LOG order. Repeated events no longer fail with
|
|
51
|
+
"hydration has ambiguous evidence provenance" after partial foreground hydration or forward
|
|
52
|
+
evidence references; unavailable mappings stop preparation before upload.
|
|
53
|
+
|
|
54
|
+
- Raise the sanitized public projection budget to 64 MiB to match the private ciphertext budget,
|
|
55
|
+
so large session displays can be published alongside their encrypted originals. The complete
|
|
56
|
+
envelope remains bounded to 128 MiB.
|
|
57
|
+
|
|
58
|
+
- `agit push` previews session branches with a long plain history instead of failing with
|
|
59
|
+
"plain preview exceeds its content budget", and prepares them substantially faster. The
|
|
60
|
+
preview shows each distinct file version once and an append-only file as the bytes it adds.
|
|
61
|
+
- After a macOS restart, `agit rc status`, `agit upgrade` and daemon startup
|
|
62
|
+
recognize the control socket a stopped daemon left behind and reclaim it,
|
|
63
|
+
instead of asking for a manual `agit rc local recover`.
|
|
64
|
+
- Loading earlier messages of a remote conversation whose saved archive could not
|
|
65
|
+
be applied no longer fails as an expired history snapshot; the page kept
|
|
66
|
+
spinning on "Loading the latest conversation" while it retried.
|
|
67
|
+
- A conversation taken over from a registered runtime source keeps the name the
|
|
68
|
+
device shows for it, instead of appearing as an untitled session in its
|
|
69
|
+
project.
|
|
70
|
+
- Encrypted publication preserves Git authors, committers, timestamps, message encoding and
|
|
71
|
+
commit messages. Existing published snapshots remain compatible when history continues.
|
|
72
|
+
|
|
73
|
+
## [0.2.24] - 2026-10-21
|
|
74
|
+
|
|
75
|
+
### Added
|
|
76
|
+
|
|
77
|
+
- `agit activity` and its MCP tool query a person's saved user and assistant messages
|
|
78
|
+
over an explicit time range, with optional session selection and JSON pagination.
|
|
79
|
+
Results are grouped by saved commit, oldest first, and a cursor keeps working while
|
|
80
|
+
new work is saved. Existing clones are fetched once per query and read locally;
|
|
81
|
+
other repositories are queried on the Hub without cloning. Encrypted publications
|
|
82
|
+
use accepted account attribution and publication time, and incompleteness is
|
|
83
|
+
reported for the whole query. `--assistant last` keeps every user message but only the
|
|
84
|
+
final assistant reply to each. Requires a Hub supporting activity schema version 3.
|
|
85
|
+
|
|
86
|
+
### Fixed
|
|
87
|
+
|
|
88
|
+
- The bundled Linux Git runtime uses the current Alpine builds of expat, c-ares
|
|
89
|
+
and the CA bundle; the previous builds are no longer published, so release
|
|
90
|
+
builds could not assemble the runtime.
|
|
91
|
+
- Remote control opens Codex conversations that have been idle long enough for
|
|
92
|
+
Codex to compress their transcript, and conversations Codex continued in a
|
|
93
|
+
new transcript segment. Such conversations stayed on "Restoring
|
|
94
|
+
conversation", returned history errors, and never archived their turns.
|
|
95
|
+
Restoring a compressed transcript no longer pauses other conversations on the
|
|
96
|
+
machine.
|
|
97
|
+
- A failed or timed-out remote resume releases the conversation once its
|
|
98
|
+
processes have exited, instead of keeping it busy until the daemon restarts.
|
|
99
|
+
A capture binding that cannot be resolved no longer blocks control: the
|
|
100
|
+
conversation runs, and its turns archive once the binding resolves again.
|
|
101
|
+
- Re-registering a runtime source, or upgrading or removing the Codex program it
|
|
102
|
+
was registered with, keeps existing conversations controllable and their
|
|
103
|
+
captures valid.
|
|
104
|
+
- Busy and refusal errors say whether they clear on their own, so clients retry
|
|
105
|
+
passing conditions silently and show the ones that need a person. A refused
|
|
106
|
+
cloud connection is answered with its reason instead of being dropped, and
|
|
107
|
+
subscribing to a paused conversation reports that it needs a resume.
|
|
108
|
+
- Opening history no longer copies the transcript and no longer fails while the
|
|
109
|
+
runtime is writing to it. Identical history requests share one read, and
|
|
110
|
+
history of a conversation whose folder was removed stays readable.
|
|
111
|
+
- Archive recovery backs off, parks failures that cannot succeed, and lets a
|
|
112
|
+
resume take the conversation. A conversation larger than the capture budget
|
|
113
|
+
is reported once instead of after every turn.
|
|
114
|
+
- The control channel keeps a slow or lagging reader connected, stops reads
|
|
115
|
+
whose requester has left, evicts idle clients before refusing new ones, and
|
|
116
|
+
reconnects within seconds after the machine wakes from sleep. A message sent
|
|
117
|
+
again while its first delivery is in flight reports that delivery as pending
|
|
118
|
+
and is never run twice.
|
|
119
|
+
- Claude Code conversations whose transcript Claude deleted, or that never
|
|
120
|
+
received a message, reopen under their own id; one whose archived turns no
|
|
121
|
+
longer have a transcript points to `agit resume`. Claude Code is found outside
|
|
122
|
+
the daemon's PATH, bypass mode is not offered where Claude refuses it as root,
|
|
123
|
+
transcript folders follow Claude's naming for long and non-BMP paths, and a
|
|
124
|
+
terminal Claude session that cannot be shared says why.
|
|
125
|
+
- A failed `agit clone` suggests asking for the owner's grant only when Git
|
|
126
|
+
reports an authentication failure; any other failed transfer suggests
|
|
127
|
+
retrying and, if it fails the same way again, reporting it with the output.
|
|
128
|
+
`agit fetch <owner/repo>` likewise offers the grant hint only when the Hub
|
|
129
|
+
refuses access. A reader who already had access was sent to check
|
|
130
|
+
collaborator grants after an interrupted transfer.
|
|
131
|
+
- `agit project bind --history all`, its `--dry-run` preview and `agit project sync`
|
|
132
|
+
include Claude Code conversations that open with a large prompt, such as a pasted
|
|
133
|
+
screenshot, instead of silently leaving them out of the project.
|
|
134
|
+
- `agit project bind --dry-run` refuses a directory that is already bound to
|
|
135
|
+
another repository, as the bind itself does, instead of previewing a bind that
|
|
136
|
+
would fail.
|
|
137
|
+
|
|
11
138
|
## [0.2.22] - 2026-10-07
|
|
12
139
|
|
|
13
140
|
### Added
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@einsia/agent-git",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.25",
|
|
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.
|
|
53
|
-
"@einsia/agent-git-linux-arm64": "0.2.
|
|
54
|
-
"@einsia/agent-git-darwin-x64": "0.2.
|
|
55
|
-
"@einsia/agent-git-darwin-arm64": "0.2.
|
|
56
|
-
"@einsia/agent-git-win32-x64": "0.2.
|
|
52
|
+
"@einsia/agent-git-linux-x64": "0.2.25",
|
|
53
|
+
"@einsia/agent-git-linux-arm64": "0.2.25",
|
|
54
|
+
"@einsia/agent-git-darwin-x64": "0.2.25",
|
|
55
|
+
"@einsia/agent-git-darwin-arm64": "0.2.25",
|
|
56
|
+
"@einsia/agent-git-win32-x64": "0.2.25"
|
|
57
57
|
}
|
|
58
58
|
}
|