ai-hist-mcp 0.15.0 → 0.15.2
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/README.md +38 -4
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -11,12 +11,13 @@ loads the native addon directly, scans provider files, or invokes a CLI.
|
|
|
11
11
|
|
|
12
12
|
Tools: `search_history`, `recent_history`, `list_sessions`,
|
|
13
13
|
`discover_sessions`, `hydrate_session`, `get_session`, `get_session_events`,
|
|
14
|
-
`get_session_relationships`, `get_session_tree`, `
|
|
15
|
-
`get_session_file_edits`, `history_stats`, and
|
|
14
|
+
`get_session_relationships`, `get_session_tree`, `get_session_thread`,
|
|
15
|
+
`get_session_tool_calls`, `get_session_file_edits`, `history_stats`, and
|
|
16
16
|
`sync`. Search, recent history, session listing, discovery, statistics, and sync accept a
|
|
17
17
|
`scope` of `local`, `remote`, or `all`; scope defaults to `local`.
|
|
18
|
-
`get_session`, `get_session_events`, `get_session_relationships`,
|
|
19
|
-
`get_session_tree` address one session by identity
|
|
18
|
+
`get_session`, `get_session_events`, `get_session_relationships`,
|
|
19
|
+
`get_session_tree`, and `get_session_thread` address one session by identity
|
|
20
|
+
and take no `scope`.
|
|
20
21
|
`get_session_tool_calls` and `get_session_file_edits` are bounded, cursor-paged
|
|
21
22
|
reads that require both a `source` and a `session_id`, because provider session
|
|
22
23
|
IDs collide.
|
|
@@ -31,6 +32,39 @@ sync tools are therefore annotated as open-world writes.
|
|
|
31
32
|
discovered identity and optionally its related provider-native sessions from
|
|
32
33
|
local provider evidence, so it stays annotated as a local, closed-world write.
|
|
33
34
|
|
|
35
|
+
`get_session_thread` is the *lifecycle* fan-out for one session: the commits it
|
|
36
|
+
shipped plus the pull requests, reviews, incidents, tickets, Slack threads,
|
|
37
|
+
hotfixes and follow-up sessions the cloud has stitched to it. It complements
|
|
38
|
+
`get_session_tree` — that one is the *subagent* fan-out — and an agent may call
|
|
39
|
+
both. It is cloud-only and never cached: a thread exists once the cloud has
|
|
40
|
+
ingested lens events, and it changes as PRs and incidents land, so every call
|
|
41
|
+
fetches. With no stored cloud session it returns `UNSUPPORTED_OPERATION` with
|
|
42
|
+
the same `no remote provider connectors are configured` message the sibling
|
|
43
|
+
connectors use, without making a request. Tenancy is derived from the token
|
|
44
|
+
server-side; there is no org parameter. `kinds` filters `link_kind`, `since`
|
|
45
|
+
bounds link event time, and `limit` (1-500, default 100) with `cursor` pages the
|
|
46
|
+
links; outcomes come back whole on every page.
|
|
47
|
+
|
|
48
|
+
Credentials come from whichever store holds a session: the native `ai-hist
|
|
49
|
+
login` store (`RELAYHISTORY_HOME`, else `~/.agentworkforce/relayhistory`) is
|
|
50
|
+
read first, then this SDK's own `~/.config/ai-hist/auth.json`. With more than
|
|
51
|
+
one stage stored and no `AI_HIST_BASE_URL` naming one, the tool refuses to
|
|
52
|
+
guess rather than answer about the wrong org.
|
|
53
|
+
|
|
54
|
+
A native-store session must meet the same bar the engine's `cloud` connector
|
|
55
|
+
applies to recall — an `rth_at_` access token, an expiry at least 60s away, and
|
|
56
|
+
a recorded org for provenance. A session missing a token prefix or an org is one the
|
|
57
|
+
connector itself reports as unconfigured, so the tool reports it the same way
|
|
58
|
+
and names the missing precondition rather than issuing a request that would
|
|
59
|
+
fail. `ai-hist login` restores them.
|
|
60
|
+
|
|
61
|
+
Expiry is the exception, because rotation exists to repair it: a rejected
|
|
62
|
+
session with a refresh token is rotated once and the new pair persisted over
|
|
63
|
+
the file it came from, in that store's own schema, so the CLI and the MCP stay
|
|
64
|
+
in step. A pair another process rotated first is adopted rather than spending
|
|
65
|
+
the one-time refresh token again. Only a session with nothing left to rotate
|
|
66
|
+
reports expiry as unconfigured.
|
|
67
|
+
|
|
34
68
|
`get_session_relationships` and `get_session_tree` read the delegation topology
|
|
35
69
|
recorded by hydration and sync: who delegated to whom, what evidence
|
|
36
70
|
established the link, whether the child has a stable identity, and whether its
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ai-hist-mcp",
|
|
3
|
-
"version": "0.15.
|
|
3
|
+
"version": "0.15.2",
|
|
4
4
|
"description": "Thin npx wrapper for the ai-hist stdio MCP server.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"private": false,
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"access": "public"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"ai-hist": "0.15.
|
|
25
|
+
"ai-hist": "0.15.2"
|
|
26
26
|
},
|
|
27
27
|
"engines": {
|
|
28
28
|
"node": ">=20"
|