@agent-deck/shared 1.6.4 → 1.7.1
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/dist/constants/trusted-session.d.ts +15 -0
- package/dist/constants/trusted-session.d.ts.map +1 -0
- package/dist/constants/trusted-session.js +18 -0
- package/dist/constants/trusted-session.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -1
- package/dist/index.js.map +1 -1
- package/dist/schemas/deck-display.d.ts +29 -0
- package/dist/schemas/deck-display.d.ts.map +1 -1
- package/dist/schemas/deck-display.js +11 -1
- package/dist/schemas/deck-display.js.map +1 -1
- package/dist/schemas/export-bundle.d.ts +2 -2
- package/dist/schemas/oauth.d.ts +2 -2
- package/dist/schemas/repo-deck.d.ts +15 -0
- package/dist/schemas/repo-deck.d.ts.map +1 -0
- package/dist/schemas/repo-deck.js +11 -0
- package/dist/schemas/repo-deck.js.map +1 -0
- package/dist/schemas/trusted-session.d.ts +108 -0
- package/dist/schemas/trusted-session.d.ts.map +1 -0
- package/dist/schemas/trusted-session.js +77 -0
- package/dist/schemas/trusted-session.js.map +1 -0
- package/dist/types/api.d.ts +2 -1
- package/dist/types/api.d.ts.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/workspace-key.d.ts +10 -0
- package/dist/utils/workspace-key.d.ts.map +1 -0
- package/dist/utils/workspace-key.js +48 -0
- package/dist/utils/workspace-key.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** Bearer token presented by the trusted MCP launcher (raw grant secret). */
|
|
2
|
+
export declare const AGENT_DECK_GRANT_AUTH_SCHEME = "Bearer";
|
|
3
|
+
/** Runtime session id returned to MCP layer after grant authentication. */
|
|
4
|
+
export declare const AGENT_DECK_SESSION_HEADER = "x-agent-deck-session-id";
|
|
5
|
+
/** Dashboard session cookie name. */
|
|
6
|
+
export declare const AGENT_DECK_DASHBOARD_COOKIE = "agent_deck_dashboard";
|
|
7
|
+
/** Normal MCP session inactivity lease (PRD C3). */
|
|
8
|
+
export declare const RUNTIME_SESSION_LEASE_MS: number;
|
|
9
|
+
/** Agent-admin inactivity lease (PRD C4). */
|
|
10
|
+
export declare const ADMIN_MODE_LEASE_MS: number;
|
|
11
|
+
/** Admin elevation challenge validity (PRD C4). */
|
|
12
|
+
export declare const ADMIN_CHALLENGE_TTL_MS: number;
|
|
13
|
+
/** Dashboard bootstrap nonce validity. */
|
|
14
|
+
export declare const DASHBOARD_NONCE_TTL_MS: number;
|
|
15
|
+
//# sourceMappingURL=trusted-session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trusted-session.d.ts","sourceRoot":"","sources":["../../src/constants/trusted-session.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,eAAO,MAAM,4BAA4B,WAAW,CAAC;AAErD,2EAA2E;AAC3E,eAAO,MAAM,yBAAyB,4BAA4B,CAAC;AAEnE,qCAAqC;AACrC,eAAO,MAAM,2BAA2B,yBAAyB,CAAC;AAElE,oDAAoD;AACpD,eAAO,MAAM,wBAAwB,QAAsB,CAAC;AAE5D,6CAA6C;AAC7C,eAAO,MAAM,mBAAmB,QAAiB,CAAC;AAElD,mDAAmD;AACnD,eAAO,MAAM,sBAAsB,QAAgB,CAAC;AAEpD,0CAA0C;AAC1C,eAAO,MAAM,sBAAsB,QAAgB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DASHBOARD_NONCE_TTL_MS = exports.ADMIN_CHALLENGE_TTL_MS = exports.ADMIN_MODE_LEASE_MS = exports.RUNTIME_SESSION_LEASE_MS = exports.AGENT_DECK_DASHBOARD_COOKIE = exports.AGENT_DECK_SESSION_HEADER = exports.AGENT_DECK_GRANT_AUTH_SCHEME = void 0;
|
|
4
|
+
/** Bearer token presented by the trusted MCP launcher (raw grant secret). */
|
|
5
|
+
exports.AGENT_DECK_GRANT_AUTH_SCHEME = 'Bearer';
|
|
6
|
+
/** Runtime session id returned to MCP layer after grant authentication. */
|
|
7
|
+
exports.AGENT_DECK_SESSION_HEADER = 'x-agent-deck-session-id';
|
|
8
|
+
/** Dashboard session cookie name. */
|
|
9
|
+
exports.AGENT_DECK_DASHBOARD_COOKIE = 'agent_deck_dashboard';
|
|
10
|
+
/** Normal MCP session inactivity lease (PRD C3). */
|
|
11
|
+
exports.RUNTIME_SESSION_LEASE_MS = 24 * 60 * 60 * 1000;
|
|
12
|
+
/** Agent-admin inactivity lease (PRD C4). */
|
|
13
|
+
exports.ADMIN_MODE_LEASE_MS = 30 * 60 * 1000;
|
|
14
|
+
/** Admin elevation challenge validity (PRD C4). */
|
|
15
|
+
exports.ADMIN_CHALLENGE_TTL_MS = 5 * 60 * 1000;
|
|
16
|
+
/** Dashboard bootstrap nonce validity. */
|
|
17
|
+
exports.DASHBOARD_NONCE_TTL_MS = 2 * 60 * 1000;
|
|
18
|
+
//# sourceMappingURL=trusted-session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trusted-session.js","sourceRoot":"","sources":["../../src/constants/trusted-session.ts"],"names":[],"mappings":";;;AAAA,6EAA6E;AAChE,QAAA,4BAA4B,GAAG,QAAQ,CAAC;AAErD,2EAA2E;AAC9D,QAAA,yBAAyB,GAAG,yBAAyB,CAAC;AAEnE,qCAAqC;AACxB,QAAA,2BAA2B,GAAG,sBAAsB,CAAC;AAElE,oDAAoD;AACvC,QAAA,wBAAwB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE5D,6CAA6C;AAChC,QAAA,mBAAmB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAElD,mDAAmD;AACtC,QAAA,sBAAsB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAEpD,0CAA0C;AAC7B,QAAA,sBAAsB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -9,11 +9,13 @@ export * from './schemas/deck-display';
|
|
|
9
9
|
export * from './schemas/export-bundle';
|
|
10
10
|
export * from './schemas/store';
|
|
11
11
|
export * from './schemas/session-bootstrap';
|
|
12
|
+
export * from './schemas/trusted-session';
|
|
12
13
|
export * from './types/api';
|
|
13
14
|
export { OAuthDiscoveryResult } from './types/oauth';
|
|
14
15
|
export * from './utils';
|
|
15
16
|
export { summarizeCollectionWarnings, getServiceWarnings, getCredentialWarnings, getPlaybookWarnings, primaryCollectionWarning, type CollectionCardWarning, type CollectionWarningKind, } from './utils/collection-warnings';
|
|
16
17
|
export { normalizeLocalMcpManifestInput, parseLocalMcpManifestJson, stripJsonMarkdownFences, } from './utils/local-mcp-manifest';
|
|
17
18
|
export { AGENT_DECK_CLIENT_HEADER, AGENT_DECK_DASHBOARD_CLIENT, AGENT_DECK_AGENT_CLIENT, AGENT_DECK_WORKSPACE_HEADER, AGENT_DECK_DECK_ID_HEADER, } from './constants/client-scope';
|
|
19
|
+
export { AGENT_DECK_GRANT_AUTH_SCHEME, AGENT_DECK_SESSION_HEADER, AGENT_DECK_DASHBOARD_COOKIE, RUNTIME_SESSION_LEASE_MS, ADMIN_MODE_LEASE_MS, ADMIN_CHALLENGE_TTL_MS, DASHBOARD_NONCE_TTL_MS, } from './constants/trusted-session';
|
|
18
20
|
export { MCP_CARD_COLOR, API_KEY_CARD_COLOR, PLAYBOOK_CARD_COLOR, getServiceCardColor } from './constants/card-colors';
|
|
19
21
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAG1C,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAGrD,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,wBAAwB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,GAC3B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,8BAA8B,EAC9B,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAC3B,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,4BAA4B,EAC5B,yBAAyB,EACzB,2BAA2B,EAC3B,wBAAwB,EACxB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.getServiceCardColor = exports.PLAYBOOK_CARD_COLOR = exports.API_KEY_CARD_COLOR = exports.MCP_CARD_COLOR = exports.AGENT_DECK_DECK_ID_HEADER = exports.AGENT_DECK_WORKSPACE_HEADER = exports.AGENT_DECK_AGENT_CLIENT = exports.AGENT_DECK_DASHBOARD_CLIENT = exports.AGENT_DECK_CLIENT_HEADER = exports.stripJsonMarkdownFences = exports.parseLocalMcpManifestJson = exports.normalizeLocalMcpManifestInput = exports.primaryCollectionWarning = exports.getPlaybookWarnings = exports.getCredentialWarnings = exports.getServiceWarnings = exports.summarizeCollectionWarnings = void 0;
|
|
17
|
+
exports.getServiceCardColor = exports.PLAYBOOK_CARD_COLOR = exports.API_KEY_CARD_COLOR = exports.MCP_CARD_COLOR = exports.DASHBOARD_NONCE_TTL_MS = exports.ADMIN_CHALLENGE_TTL_MS = exports.ADMIN_MODE_LEASE_MS = exports.RUNTIME_SESSION_LEASE_MS = exports.AGENT_DECK_DASHBOARD_COOKIE = exports.AGENT_DECK_SESSION_HEADER = exports.AGENT_DECK_GRANT_AUTH_SCHEME = exports.AGENT_DECK_DECK_ID_HEADER = exports.AGENT_DECK_WORKSPACE_HEADER = exports.AGENT_DECK_AGENT_CLIENT = exports.AGENT_DECK_DASHBOARD_CLIENT = exports.AGENT_DECK_CLIENT_HEADER = exports.stripJsonMarkdownFences = exports.parseLocalMcpManifestJson = exports.normalizeLocalMcpManifestInput = exports.primaryCollectionWarning = exports.getPlaybookWarnings = exports.getCredentialWarnings = exports.getServiceWarnings = exports.summarizeCollectionWarnings = void 0;
|
|
18
18
|
// Schemas (includes Zod-inferred types)
|
|
19
19
|
__exportStar(require("./schemas/service"), exports);
|
|
20
20
|
__exportStar(require("./schemas/deck"), exports);
|
|
@@ -27,6 +27,7 @@ __exportStar(require("./schemas/deck-display"), exports);
|
|
|
27
27
|
__exportStar(require("./schemas/export-bundle"), exports);
|
|
28
28
|
__exportStar(require("./schemas/store"), exports);
|
|
29
29
|
__exportStar(require("./schemas/session-bootstrap"), exports);
|
|
30
|
+
__exportStar(require("./schemas/trusted-session"), exports);
|
|
30
31
|
// Additional types not covered by schemas
|
|
31
32
|
__exportStar(require("./types/api"), exports);
|
|
32
33
|
// Utils
|
|
@@ -48,6 +49,14 @@ Object.defineProperty(exports, "AGENT_DECK_DASHBOARD_CLIENT", { enumerable: true
|
|
|
48
49
|
Object.defineProperty(exports, "AGENT_DECK_AGENT_CLIENT", { enumerable: true, get: function () { return client_scope_1.AGENT_DECK_AGENT_CLIENT; } });
|
|
49
50
|
Object.defineProperty(exports, "AGENT_DECK_WORKSPACE_HEADER", { enumerable: true, get: function () { return client_scope_1.AGENT_DECK_WORKSPACE_HEADER; } });
|
|
50
51
|
Object.defineProperty(exports, "AGENT_DECK_DECK_ID_HEADER", { enumerable: true, get: function () { return client_scope_1.AGENT_DECK_DECK_ID_HEADER; } });
|
|
52
|
+
var trusted_session_1 = require("./constants/trusted-session");
|
|
53
|
+
Object.defineProperty(exports, "AGENT_DECK_GRANT_AUTH_SCHEME", { enumerable: true, get: function () { return trusted_session_1.AGENT_DECK_GRANT_AUTH_SCHEME; } });
|
|
54
|
+
Object.defineProperty(exports, "AGENT_DECK_SESSION_HEADER", { enumerable: true, get: function () { return trusted_session_1.AGENT_DECK_SESSION_HEADER; } });
|
|
55
|
+
Object.defineProperty(exports, "AGENT_DECK_DASHBOARD_COOKIE", { enumerable: true, get: function () { return trusted_session_1.AGENT_DECK_DASHBOARD_COOKIE; } });
|
|
56
|
+
Object.defineProperty(exports, "RUNTIME_SESSION_LEASE_MS", { enumerable: true, get: function () { return trusted_session_1.RUNTIME_SESSION_LEASE_MS; } });
|
|
57
|
+
Object.defineProperty(exports, "ADMIN_MODE_LEASE_MS", { enumerable: true, get: function () { return trusted_session_1.ADMIN_MODE_LEASE_MS; } });
|
|
58
|
+
Object.defineProperty(exports, "ADMIN_CHALLENGE_TTL_MS", { enumerable: true, get: function () { return trusted_session_1.ADMIN_CHALLENGE_TTL_MS; } });
|
|
59
|
+
Object.defineProperty(exports, "DASHBOARD_NONCE_TTL_MS", { enumerable: true, get: function () { return trusted_session_1.DASHBOARD_NONCE_TTL_MS; } });
|
|
51
60
|
var card_colors_1 = require("./constants/card-colors");
|
|
52
61
|
Object.defineProperty(exports, "MCP_CARD_COLOR", { enumerable: true, get: function () { return card_colors_1.MCP_CARD_COLOR; } });
|
|
53
62
|
Object.defineProperty(exports, "API_KEY_CARD_COLOR", { enumerable: true, get: function () { return card_colors_1.API_KEY_CARD_COLOR; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,wCAAwC;AACxC,oDAAkC;AAClC,iDAA+B;AAC/B,uDAAqC;AACrC,kDAAgC;AAChC,qDAAmC;AACnC,2DAAyC;AACzC,4DAA0C;AAC1C,yDAAuC;AACvC,0DAAwC;AACxC,kDAAgC;AAChC,8DAA4C;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,wCAAwC;AACxC,oDAAkC;AAClC,iDAA+B;AAC/B,uDAAqC;AACrC,kDAAgC;AAChC,qDAAmC;AACnC,2DAAyC;AACzC,4DAA0C;AAC1C,yDAAuC;AACvC,0DAAwC;AACxC,kDAAgC;AAChC,8DAA4C;AAC5C,4DAA0C;AAE1C,0CAA0C;AAC1C,8CAA4B;AAG5B,QAAQ;AACR,0CAAwB;AACxB,mEAQqC;AAPnC,kIAAA,2BAA2B,OAAA;AAC3B,yHAAA,kBAAkB,OAAA;AAClB,4HAAA,qBAAqB,OAAA;AACrB,0HAAA,mBAAmB,OAAA;AACnB,+HAAA,wBAAwB,OAAA;AAI1B,iEAIoC;AAHlC,oIAAA,8BAA8B,OAAA;AAC9B,+HAAA,yBAAyB,OAAA;AACzB,6HAAA,uBAAuB,OAAA;AAGzB,YAAY;AACZ,yDAMkC;AALhC,wHAAA,wBAAwB,OAAA;AACxB,2HAAA,2BAA2B,OAAA;AAC3B,uHAAA,uBAAuB,OAAA;AACvB,2HAAA,2BAA2B,OAAA;AAC3B,yHAAA,yBAAyB,OAAA;AAE3B,+DAQqC;AAPnC,+HAAA,4BAA4B,OAAA;AAC5B,4HAAA,yBAAyB,OAAA;AACzB,8HAAA,2BAA2B,OAAA;AAC3B,2HAAA,wBAAwB,OAAA;AACxB,sHAAA,mBAAmB,OAAA;AACnB,yHAAA,sBAAsB,OAAA;AACtB,yHAAA,sBAAsB,OAAA;AAExB,uDAAuH;AAA9G,6GAAA,cAAc,OAAA;AAAE,iHAAA,kBAAkB,OAAA;AAAE,kHAAA,mBAAmB,OAAA;AAAE,kHAAA,mBAAmB,OAAA"}
|
|
@@ -20,6 +20,7 @@ export declare const LiveBindingSchema: z.ZodObject<{
|
|
|
20
20
|
source: z.ZodEnum<["session_override", "env"]>;
|
|
21
21
|
workspaceRoot: z.ZodOptional<z.ZodString>;
|
|
22
22
|
clientName: z.ZodOptional<z.ZodString>;
|
|
23
|
+
mode: z.ZodOptional<z.ZodEnum<["normal", "agent-admin"]>>;
|
|
23
24
|
cardCounts: z.ZodObject<{
|
|
24
25
|
mcp: z.ZodNumber;
|
|
25
26
|
credentials: z.ZodNumber;
|
|
@@ -49,6 +50,7 @@ export declare const LiveBindingSchema: z.ZodObject<{
|
|
|
49
50
|
lastActivityAt: string;
|
|
50
51
|
workspaceRoot?: string | undefined;
|
|
51
52
|
clientName?: string | undefined;
|
|
53
|
+
mode?: "normal" | "agent-admin" | undefined;
|
|
52
54
|
}, {
|
|
53
55
|
updatedAt: string;
|
|
54
56
|
deckId: string;
|
|
@@ -63,6 +65,7 @@ export declare const LiveBindingSchema: z.ZodObject<{
|
|
|
63
65
|
lastActivityAt: string;
|
|
64
66
|
workspaceRoot?: string | undefined;
|
|
65
67
|
clientName?: string | undefined;
|
|
68
|
+
mode?: "normal" | "agent-admin" | undefined;
|
|
66
69
|
}>;
|
|
67
70
|
export declare const DeckDisplaySchema: z.ZodObject<{
|
|
68
71
|
workspaceRoot: z.ZodString;
|
|
@@ -165,6 +168,7 @@ export declare const DeckListEntrySchema: z.ZodObject<{
|
|
|
165
168
|
credentials: number;
|
|
166
169
|
playbooks: number;
|
|
167
170
|
}>;
|
|
171
|
+
workspaceCount: z.ZodOptional<z.ZodNumber>;
|
|
168
172
|
}, "strip", z.ZodTypeAny, {
|
|
169
173
|
id: string;
|
|
170
174
|
name: string;
|
|
@@ -174,6 +178,7 @@ export declare const DeckListEntrySchema: z.ZodObject<{
|
|
|
174
178
|
credentials: number;
|
|
175
179
|
playbooks: number;
|
|
176
180
|
};
|
|
181
|
+
workspaceCount?: number | undefined;
|
|
177
182
|
}, {
|
|
178
183
|
id: string;
|
|
179
184
|
name: string;
|
|
@@ -183,9 +188,33 @@ export declare const DeckListEntrySchema: z.ZodObject<{
|
|
|
183
188
|
credentials: number;
|
|
184
189
|
playbooks: number;
|
|
185
190
|
};
|
|
191
|
+
workspaceCount?: number | undefined;
|
|
186
192
|
}>;
|
|
187
193
|
export type DeckListEntry = z.infer<typeof DeckListEntrySchema>;
|
|
188
194
|
export type LiveBinding = z.infer<typeof LiveBindingSchema>;
|
|
195
|
+
export declare const PendingAdminChallengeSchema: z.ZodObject<{
|
|
196
|
+
challengeId: z.ZodString;
|
|
197
|
+
runtimeSessionId: z.ZodString;
|
|
198
|
+
deckId: z.ZodString;
|
|
199
|
+
deckName: z.ZodOptional<z.ZodString>;
|
|
200
|
+
expiresAt: z.ZodString;
|
|
201
|
+
approvalPath: z.ZodString;
|
|
202
|
+
}, "strip", z.ZodTypeAny, {
|
|
203
|
+
deckId: string;
|
|
204
|
+
expiresAt: string;
|
|
205
|
+
challengeId: string;
|
|
206
|
+
runtimeSessionId: string;
|
|
207
|
+
approvalPath: string;
|
|
208
|
+
deckName?: string | undefined;
|
|
209
|
+
}, {
|
|
210
|
+
deckId: string;
|
|
211
|
+
expiresAt: string;
|
|
212
|
+
challengeId: string;
|
|
213
|
+
runtimeSessionId: string;
|
|
214
|
+
approvalPath: string;
|
|
215
|
+
deckName?: string | undefined;
|
|
216
|
+
}>;
|
|
217
|
+
export type PendingAdminChallenge = z.infer<typeof PendingAdminChallengeSchema>;
|
|
189
218
|
export type DeckDisplay = z.infer<typeof DeckDisplaySchema>;
|
|
190
219
|
export type StatusLinePayload = z.infer<typeof StatusLinePayloadSchema>;
|
|
191
220
|
export declare const DISPLAY_LINE_MAX_LENGTH = 120;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deck-display.d.ts","sourceRoot":"","sources":["../../src/schemas/deck-display.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,uBAAuB,mDAIlC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AAEH,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"deck-display.d.ts","sourceRoot":"","sources":["../../src/schemas/deck-display.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,uBAAuB,mDAIlC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAY5B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW5B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;EASlC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAM9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;EAOtC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C,wBAAgB,cAAc,CAAC,IAAI,EAAE;IACnC,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;CACvB,GAAG,cAAc,CAOjB;AAED,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAOpE;AAED,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,MAAM,EAAE,cAAc,EACtB,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GACxF,MAAM,CAsCR;AAED,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAEpE;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,GAAG,SAAS,CAGzF;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,iBAAiB,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAQ/G"}
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.DISPLAY_LINE_MAX_LENGTH = exports.DeckListEntrySchema = exports.StatusLinePayloadSchema = exports.DeckDisplaySchema = exports.LiveBindingSchema = exports.DeckCardCountsSchema = exports.DeckDisplaySourceSchema = void 0;
|
|
6
|
+
exports.DISPLAY_LINE_MAX_LENGTH = exports.PendingAdminChallengeSchema = exports.DeckListEntrySchema = exports.StatusLinePayloadSchema = exports.DeckDisplaySchema = exports.LiveBindingSchema = exports.DeckCardCountsSchema = exports.DeckDisplaySourceSchema = void 0;
|
|
7
7
|
exports.countDeckCards = countDeckCards;
|
|
8
8
|
exports.formatDisplayUpdatedSuffix = formatDisplayUpdatedSuffix;
|
|
9
9
|
exports.formatDisplayLine = formatDisplayLine;
|
|
@@ -30,6 +30,7 @@ exports.LiveBindingSchema = zod_1.z.object({
|
|
|
30
30
|
// Absent for header/auto-bound sessions (deck without a known folder).
|
|
31
31
|
workspaceRoot: zod_1.z.string().min(1).optional(),
|
|
32
32
|
clientName: zod_1.z.string().min(1).optional(),
|
|
33
|
+
mode: zod_1.z.enum(['normal', 'agent-admin']).optional(),
|
|
33
34
|
cardCounts: exports.DeckCardCountsSchema,
|
|
34
35
|
updatedAt: zod_1.z.string().datetime(),
|
|
35
36
|
lastActivityAt: zod_1.z.string().datetime(),
|
|
@@ -61,6 +62,15 @@ exports.DeckListEntrySchema = zod_1.z.object({
|
|
|
61
62
|
name: zod_1.z.string().min(1),
|
|
62
63
|
isActive: zod_1.z.boolean(),
|
|
63
64
|
cardCounts: exports.DeckCardCountsSchema,
|
|
65
|
+
workspaceCount: zod_1.z.number().int().nonnegative().optional(),
|
|
66
|
+
});
|
|
67
|
+
exports.PendingAdminChallengeSchema = zod_1.z.object({
|
|
68
|
+
challengeId: zod_1.z.string().min(1),
|
|
69
|
+
runtimeSessionId: zod_1.z.string().min(1),
|
|
70
|
+
deckId: zod_1.z.string().uuid(),
|
|
71
|
+
deckName: zod_1.z.string().min(1).optional(),
|
|
72
|
+
expiresAt: zod_1.z.string().datetime(),
|
|
73
|
+
approvalPath: zod_1.z.string().min(1),
|
|
64
74
|
});
|
|
65
75
|
exports.DISPLAY_LINE_MAX_LENGTH = 120;
|
|
66
76
|
function countDeckCards(deck) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deck-display.js","sourceRoot":"","sources":["../../src/schemas/deck-display.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"deck-display.js","sourceRoot":"","sources":["../../src/schemas/deck-display.ts"],"names":[],"mappings":"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"}
|
|
@@ -235,13 +235,13 @@ export declare const BundleV1Schema: z.ZodObject<{
|
|
|
235
235
|
exec?: string | undefined;
|
|
236
236
|
skill?: string | undefined;
|
|
237
237
|
}[];
|
|
238
|
-
scope: "collection" | "deck";
|
|
239
238
|
format: "agent-deck-bundle";
|
|
240
239
|
version: 1;
|
|
241
240
|
exportedAt: string;
|
|
242
241
|
exportedFrom: {
|
|
243
242
|
agentDeckVersion: string;
|
|
244
243
|
};
|
|
244
|
+
scope: "collection" | "deck";
|
|
245
245
|
decks: {
|
|
246
246
|
id: string;
|
|
247
247
|
name: string;
|
|
@@ -249,13 +249,13 @@ export declare const BundleV1Schema: z.ZodObject<{
|
|
|
249
249
|
playbookIds: string[];
|
|
250
250
|
}[];
|
|
251
251
|
}, {
|
|
252
|
-
scope: "collection" | "deck";
|
|
253
252
|
format: "agent-deck-bundle";
|
|
254
253
|
version: 1;
|
|
255
254
|
exportedAt: string;
|
|
256
255
|
exportedFrom: {
|
|
257
256
|
agentDeckVersion: string;
|
|
258
257
|
};
|
|
258
|
+
scope: "collection" | "deck";
|
|
259
259
|
services?: {
|
|
260
260
|
id: string;
|
|
261
261
|
name: string;
|
package/dist/schemas/oauth.d.ts
CHANGED
|
@@ -7,19 +7,19 @@ export declare const OAuthConfigSchema: z.ZodObject<{
|
|
|
7
7
|
redirectUri: z.ZodString;
|
|
8
8
|
scope: z.ZodString;
|
|
9
9
|
}, "strip", z.ZodTypeAny, {
|
|
10
|
+
scope: string;
|
|
10
11
|
clientId: string;
|
|
11
12
|
clientSecret: string;
|
|
12
13
|
authorizationUrl: string;
|
|
13
14
|
tokenUrl: string;
|
|
14
15
|
redirectUri: string;
|
|
15
|
-
scope: string;
|
|
16
16
|
}, {
|
|
17
|
+
scope: string;
|
|
17
18
|
clientId: string;
|
|
18
19
|
clientSecret: string;
|
|
19
20
|
authorizationUrl: string;
|
|
20
21
|
tokenUrl: string;
|
|
21
22
|
redirectUri: string;
|
|
22
|
-
scope: string;
|
|
23
23
|
}>;
|
|
24
24
|
export declare const OAuthTokenSchema: z.ZodObject<{
|
|
25
25
|
accessToken: z.ZodString;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/** Minimal repo manifest at `.agent-deck/deck.yaml` — links a workspace to a dashboard deck. */
|
|
3
|
+
export declare const RepoDeckManifestSchema: z.ZodObject<{
|
|
4
|
+
deck_id: z.ZodString;
|
|
5
|
+
name: z.ZodOptional<z.ZodString>;
|
|
6
|
+
}, "strip", z.ZodTypeAny, {
|
|
7
|
+
deck_id: string;
|
|
8
|
+
name?: string | undefined;
|
|
9
|
+
}, {
|
|
10
|
+
deck_id: string;
|
|
11
|
+
name?: string | undefined;
|
|
12
|
+
}>;
|
|
13
|
+
export type RepoDeckManifest = z.infer<typeof RepoDeckManifestSchema>;
|
|
14
|
+
export declare const REPO_DECK_MANIFEST_PATH = ".agent-deck/deck.yaml";
|
|
15
|
+
//# sourceMappingURL=repo-deck.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repo-deck.d.ts","sourceRoot":"","sources":["../../src/schemas/repo-deck.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,gGAAgG;AAChG,eAAO,MAAM,sBAAsB;;;;;;;;;EAGjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,uBAAuB,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.REPO_DECK_MANIFEST_PATH = exports.RepoDeckManifestSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
/** Minimal repo manifest at `.agent-deck/deck.yaml` — links a workspace to a dashboard deck. */
|
|
6
|
+
exports.RepoDeckManifestSchema = zod_1.z.object({
|
|
7
|
+
deck_id: zod_1.z.string().uuid('deck_id must be a valid Agent Deck UUID'),
|
|
8
|
+
name: zod_1.z.string().min(1).optional(),
|
|
9
|
+
});
|
|
10
|
+
exports.REPO_DECK_MANIFEST_PATH = '.agent-deck/deck.yaml';
|
|
11
|
+
//# sourceMappingURL=repo-deck.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repo-deck.js","sourceRoot":"","sources":["../../src/schemas/repo-deck.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,gGAAgG;AACnF,QAAA,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7C,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,yCAAyC,CAAC;IACnE,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAIU,QAAA,uBAAuB,GAAG,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const AgentSessionModeSchema: z.ZodEnum<["normal", "agent-admin"]>;
|
|
3
|
+
export declare const TrustedSessionErrorCodeSchema: z.ZodEnum<["GRANT_REQUIRED", "SESSION_INVALID", "SESSION_REVOKED", "WORKSPACE_SCOPE_MISMATCH", "RESOURCE_OUT_OF_SCOPE", "ADMIN_REQUIRED", "DASHBOARD_REQUIRED", "ADMIN_CHALLENGE_EXPIRED"]>;
|
|
4
|
+
export declare const WorkspaceGrantStatusSchema: z.ZodEnum<["pending", "active", "revoked"]>;
|
|
5
|
+
export declare const RuntimeSessionSchema: z.ZodObject<{
|
|
6
|
+
sessionId: z.ZodString;
|
|
7
|
+
mcpSessionId: z.ZodOptional<z.ZodString>;
|
|
8
|
+
workspaceKey: z.ZodString;
|
|
9
|
+
workspaceGrantId: z.ZodString;
|
|
10
|
+
deckId: z.ZodString;
|
|
11
|
+
mode: z.ZodEnum<["normal", "agent-admin"]>;
|
|
12
|
+
lastSeenAt: z.ZodString;
|
|
13
|
+
expiresAt: z.ZodString;
|
|
14
|
+
adminExpiresAt: z.ZodNullable<z.ZodString>;
|
|
15
|
+
}, "strict", z.ZodTypeAny, {
|
|
16
|
+
deckId: string;
|
|
17
|
+
expiresAt: string;
|
|
18
|
+
mode: "normal" | "agent-admin";
|
|
19
|
+
sessionId: string;
|
|
20
|
+
workspaceKey: string;
|
|
21
|
+
workspaceGrantId: string;
|
|
22
|
+
lastSeenAt: string;
|
|
23
|
+
adminExpiresAt: string | null;
|
|
24
|
+
mcpSessionId?: string | undefined;
|
|
25
|
+
}, {
|
|
26
|
+
deckId: string;
|
|
27
|
+
expiresAt: string;
|
|
28
|
+
mode: "normal" | "agent-admin";
|
|
29
|
+
sessionId: string;
|
|
30
|
+
workspaceKey: string;
|
|
31
|
+
workspaceGrantId: string;
|
|
32
|
+
lastSeenAt: string;
|
|
33
|
+
adminExpiresAt: string | null;
|
|
34
|
+
mcpSessionId?: string | undefined;
|
|
35
|
+
}>;
|
|
36
|
+
export declare const WorkspaceGrantManifestSchema: z.ZodObject<{
|
|
37
|
+
version: z.ZodLiteral<2>;
|
|
38
|
+
workspaceKey: z.ZodString;
|
|
39
|
+
grantId: z.ZodString;
|
|
40
|
+
secret: z.ZodString;
|
|
41
|
+
deckId: z.ZodString;
|
|
42
|
+
deckName: z.ZodOptional<z.ZodString>;
|
|
43
|
+
mcpUrl: z.ZodOptional<z.ZodString>;
|
|
44
|
+
store: z.ZodOptional<z.ZodEnum<["file", "keychain"]>>;
|
|
45
|
+
updatedAt: z.ZodString;
|
|
46
|
+
}, "strict", z.ZodTypeAny, {
|
|
47
|
+
updatedAt: string;
|
|
48
|
+
deckId: string;
|
|
49
|
+
version: 2;
|
|
50
|
+
workspaceKey: string;
|
|
51
|
+
grantId: string;
|
|
52
|
+
secret: string;
|
|
53
|
+
deckName?: string | undefined;
|
|
54
|
+
mcpUrl?: string | undefined;
|
|
55
|
+
store?: "file" | "keychain" | undefined;
|
|
56
|
+
}, {
|
|
57
|
+
updatedAt: string;
|
|
58
|
+
deckId: string;
|
|
59
|
+
version: 2;
|
|
60
|
+
workspaceKey: string;
|
|
61
|
+
grantId: string;
|
|
62
|
+
secret: string;
|
|
63
|
+
deckName?: string | undefined;
|
|
64
|
+
mcpUrl?: string | undefined;
|
|
65
|
+
store?: "file" | "keychain" | undefined;
|
|
66
|
+
}>;
|
|
67
|
+
export declare const RedactedSessionBindingSchema: z.ZodObject<{
|
|
68
|
+
sessionId: z.ZodString;
|
|
69
|
+
workspaceKey: z.ZodString;
|
|
70
|
+
deckId: z.ZodString;
|
|
71
|
+
deckName: z.ZodOptional<z.ZodString>;
|
|
72
|
+
mode: z.ZodEnum<["normal", "agent-admin"]>;
|
|
73
|
+
expiresAt: z.ZodString;
|
|
74
|
+
adminExpiresAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
75
|
+
display_summary: z.ZodOptional<z.ZodString>;
|
|
76
|
+
}, "strict", z.ZodTypeAny, {
|
|
77
|
+
deckId: string;
|
|
78
|
+
expiresAt: string;
|
|
79
|
+
mode: "normal" | "agent-admin";
|
|
80
|
+
sessionId: string;
|
|
81
|
+
workspaceKey: string;
|
|
82
|
+
deckName?: string | undefined;
|
|
83
|
+
adminExpiresAt?: string | null | undefined;
|
|
84
|
+
display_summary?: string | undefined;
|
|
85
|
+
}, {
|
|
86
|
+
deckId: string;
|
|
87
|
+
expiresAt: string;
|
|
88
|
+
mode: "normal" | "agent-admin";
|
|
89
|
+
sessionId: string;
|
|
90
|
+
workspaceKey: string;
|
|
91
|
+
deckName?: string | undefined;
|
|
92
|
+
adminExpiresAt?: string | null | undefined;
|
|
93
|
+
display_summary?: string | undefined;
|
|
94
|
+
}>;
|
|
95
|
+
export type AgentSessionMode = z.infer<typeof AgentSessionModeSchema>;
|
|
96
|
+
export type TrustedSessionErrorCode = z.infer<typeof TrustedSessionErrorCodeSchema>;
|
|
97
|
+
export type WorkspaceGrantStatus = z.infer<typeof WorkspaceGrantStatusSchema>;
|
|
98
|
+
export type RuntimeSession = z.infer<typeof RuntimeSessionSchema>;
|
|
99
|
+
export type WorkspaceGrantManifest = z.infer<typeof WorkspaceGrantManifestSchema>;
|
|
100
|
+
export type RedactedSessionBinding = z.infer<typeof RedactedSessionBindingSchema>;
|
|
101
|
+
export type TrustedSessionErrorBody = {
|
|
102
|
+
success: false;
|
|
103
|
+
error: string;
|
|
104
|
+
error_code: TrustedSessionErrorCode;
|
|
105
|
+
};
|
|
106
|
+
export declare function trustedSessionError(code: TrustedSessionErrorCode, message: string): TrustedSessionErrorBody;
|
|
107
|
+
export declare function httpStatusForTrustedError(code: TrustedSessionErrorCode): number;
|
|
108
|
+
//# sourceMappingURL=trusted-session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trusted-session.d.ts","sourceRoot":"","sources":["../../src/schemas/trusted-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,sBAAsB,sCAAoC,CAAC;AAExE,eAAO,MAAM,6BAA6B,6LASxC,CAAC;AAEH,eAAO,MAAM,0BAA0B,6CAA2C,CAAC;AAEnF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYtB,CAAC;AAEZ,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAY9B,CAAC;AAEZ,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW9B,CAAC;AAEZ,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AACpF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAElF,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,KAAK,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,uBAAuB,CAAC;CACrC,CAAC;AAEF,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,uBAAuB,EAC7B,OAAO,EAAE,MAAM,GACd,uBAAuB,CAEzB;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,uBAAuB,GAAG,MAAM,CAgB/E"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RedactedSessionBindingSchema = exports.WorkspaceGrantManifestSchema = exports.RuntimeSessionSchema = exports.WorkspaceGrantStatusSchema = exports.TrustedSessionErrorCodeSchema = exports.AgentSessionModeSchema = void 0;
|
|
4
|
+
exports.trustedSessionError = trustedSessionError;
|
|
5
|
+
exports.httpStatusForTrustedError = httpStatusForTrustedError;
|
|
6
|
+
const zod_1 = require("zod");
|
|
7
|
+
exports.AgentSessionModeSchema = zod_1.z.enum(['normal', 'agent-admin']);
|
|
8
|
+
exports.TrustedSessionErrorCodeSchema = zod_1.z.enum([
|
|
9
|
+
'GRANT_REQUIRED',
|
|
10
|
+
'SESSION_INVALID',
|
|
11
|
+
'SESSION_REVOKED',
|
|
12
|
+
'WORKSPACE_SCOPE_MISMATCH',
|
|
13
|
+
'RESOURCE_OUT_OF_SCOPE',
|
|
14
|
+
'ADMIN_REQUIRED',
|
|
15
|
+
'DASHBOARD_REQUIRED',
|
|
16
|
+
'ADMIN_CHALLENGE_EXPIRED',
|
|
17
|
+
]);
|
|
18
|
+
exports.WorkspaceGrantStatusSchema = zod_1.z.enum(['pending', 'active', 'revoked']);
|
|
19
|
+
exports.RuntimeSessionSchema = zod_1.z
|
|
20
|
+
.object({
|
|
21
|
+
sessionId: zod_1.z.string(),
|
|
22
|
+
mcpSessionId: zod_1.z.string().optional(),
|
|
23
|
+
workspaceKey: zod_1.z.string(),
|
|
24
|
+
workspaceGrantId: zod_1.z.string(),
|
|
25
|
+
deckId: zod_1.z.string(),
|
|
26
|
+
mode: exports.AgentSessionModeSchema,
|
|
27
|
+
lastSeenAt: zod_1.z.string().datetime(),
|
|
28
|
+
expiresAt: zod_1.z.string().datetime(),
|
|
29
|
+
adminExpiresAt: zod_1.z.string().datetime().nullable(),
|
|
30
|
+
})
|
|
31
|
+
.strict();
|
|
32
|
+
exports.WorkspaceGrantManifestSchema = zod_1.z
|
|
33
|
+
.object({
|
|
34
|
+
version: zod_1.z.literal(2),
|
|
35
|
+
workspaceKey: zod_1.z.string(),
|
|
36
|
+
grantId: zod_1.z.string(),
|
|
37
|
+
secret: zod_1.z.string().min(32),
|
|
38
|
+
deckId: zod_1.z.string(),
|
|
39
|
+
deckName: zod_1.z.string().optional(),
|
|
40
|
+
mcpUrl: zod_1.z.string().url().optional(),
|
|
41
|
+
store: zod_1.z.enum(['file', 'keychain']).optional(),
|
|
42
|
+
updatedAt: zod_1.z.string().datetime(),
|
|
43
|
+
})
|
|
44
|
+
.strict();
|
|
45
|
+
exports.RedactedSessionBindingSchema = zod_1.z
|
|
46
|
+
.object({
|
|
47
|
+
sessionId: zod_1.z.string(),
|
|
48
|
+
workspaceKey: zod_1.z.string(),
|
|
49
|
+
deckId: zod_1.z.string(),
|
|
50
|
+
deckName: zod_1.z.string().optional(),
|
|
51
|
+
mode: exports.AgentSessionModeSchema,
|
|
52
|
+
expiresAt: zod_1.z.string().datetime(),
|
|
53
|
+
adminExpiresAt: zod_1.z.string().datetime().nullable().optional(),
|
|
54
|
+
display_summary: zod_1.z.string().optional(),
|
|
55
|
+
})
|
|
56
|
+
.strict();
|
|
57
|
+
function trustedSessionError(code, message) {
|
|
58
|
+
return { success: false, error: message, error_code: code };
|
|
59
|
+
}
|
|
60
|
+
function httpStatusForTrustedError(code) {
|
|
61
|
+
switch (code) {
|
|
62
|
+
case 'GRANT_REQUIRED':
|
|
63
|
+
case 'SESSION_INVALID':
|
|
64
|
+
case 'SESSION_REVOKED':
|
|
65
|
+
return 401;
|
|
66
|
+
case 'WORKSPACE_SCOPE_MISMATCH':
|
|
67
|
+
case 'RESOURCE_OUT_OF_SCOPE':
|
|
68
|
+
case 'ADMIN_REQUIRED':
|
|
69
|
+
case 'DASHBOARD_REQUIRED':
|
|
70
|
+
return 403;
|
|
71
|
+
case 'ADMIN_CHALLENGE_EXPIRED':
|
|
72
|
+
return 410;
|
|
73
|
+
default:
|
|
74
|
+
return 500;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=trusted-session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trusted-session.js","sourceRoot":"","sources":["../../src/schemas/trusted-session.ts"],"names":[],"mappings":"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"}
|
package/dist/types/api.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import type { TrustedSessionErrorCode } from '../schemas/trusted-session';
|
|
1
2
|
import type { McpErrorCode, ServiceToolErrorDetails } from './service';
|
|
2
3
|
export interface ApiResponse<T = any> {
|
|
3
4
|
success: boolean;
|
|
4
5
|
data?: T;
|
|
5
6
|
error?: string;
|
|
6
|
-
error_code?: McpErrorCode;
|
|
7
|
+
error_code?: McpErrorCode | TrustedSessionErrorCode;
|
|
7
8
|
details?: ServiceToolErrorDetails;
|
|
8
9
|
message?: string;
|
|
9
10
|
}
|
package/dist/types/api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAEvE,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,GAAG;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAEvE,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,GAAG;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,YAAY,GAAG,uBAAuB,CAAC;IACpD,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB,CAAC,CAAC,CAAE,SAAQ,WAAW,CAAC,CAAC,EAAE,CAAC;IAC5D,UAAU,EAAE;QACV,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,GAAG;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,CAAC,CAAC;IACR,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;CAC7C;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,eAAe,GAAG,iBAAiB,CAAC;IAChF,IAAI,EAAE,GAAG,CAAC;CACX"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,MAAM,CAAC;AACrB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,MAAM,CAAC;AACrB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC"}
|
package/dist/utils/index.js
CHANGED
|
@@ -25,4 +25,5 @@ __exportStar(require("./oauth-session"), exports);
|
|
|
25
25
|
__exportStar(require("./local-mcp-manifest"), exports);
|
|
26
26
|
__exportStar(require("./agent-deck-home"), exports);
|
|
27
27
|
__exportStar(require("./trigger-hygiene"), exports);
|
|
28
|
+
__exportStar(require("./workspace-key"), exports);
|
|
28
29
|
//# sourceMappingURL=index.js.map
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uCAAqB;AACrB,+CAA6B;AAC7B,6CAA2B;AAC3B,+CAA6B;AAC7B,6CAA2B;AAC3B,0DAAwC;AACxC,wDAAsC;AACtC,kDAAgC;AAChC,uDAAqC;AACrC,oDAAkC;AAClC,oDAAkC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uCAAqB;AACrB,+CAA6B;AAC7B,6CAA2B;AAC3B,+CAA6B;AAC7B,6CAA2B;AAC3B,0DAAwC;AACxC,wDAAsC;AACtC,kDAAgC;AAChC,uDAAqC;AACrC,oDAAkC;AAClC,oDAAkC;AAClC,kDAAgC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Canonical workspace path (PRD C1).
|
|
3
|
+
* Resolves symlinks when the path exists, normalizes separators, applies NFC,
|
|
4
|
+
* strips trailing separators, and lowercases Windows drive letters.
|
|
5
|
+
*/
|
|
6
|
+
export declare function canonicalizeWorkspacePath(inputPath: string): string;
|
|
7
|
+
/** Stable digest of canonical path — used before opaque workspaceKey registration. */
|
|
8
|
+
export declare function digestCanonicalWorkspacePath(canonicalPath: string): string;
|
|
9
|
+
export declare function prefixTrustedId(kind: 'wsp' | 'wgr' | 'ses' | 'adm', rawId: string): string;
|
|
10
|
+
//# sourceMappingURL=workspace-key.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace-key.d.ts","sourceRoot":"","sources":["../../src/utils/workspace-key.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CA4BnE;AAED,sFAAsF;AACtF,wBAAgB,4BAA4B,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAE1E;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAE1F"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.canonicalizeWorkspacePath = canonicalizeWorkspacePath;
|
|
7
|
+
exports.digestCanonicalWorkspacePath = digestCanonicalWorkspacePath;
|
|
8
|
+
exports.prefixTrustedId = prefixTrustedId;
|
|
9
|
+
const node_crypto_1 = require("node:crypto");
|
|
10
|
+
const node_fs_1 = __importDefault(require("node:fs"));
|
|
11
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
12
|
+
/**
|
|
13
|
+
* Canonical workspace path (PRD C1).
|
|
14
|
+
* Resolves symlinks when the path exists, normalizes separators, applies NFC,
|
|
15
|
+
* strips trailing separators, and lowercases Windows drive letters.
|
|
16
|
+
*/
|
|
17
|
+
function canonicalizeWorkspacePath(inputPath) {
|
|
18
|
+
const absolute = node_path_1.default.resolve(inputPath);
|
|
19
|
+
let resolved = absolute;
|
|
20
|
+
try {
|
|
21
|
+
resolved = node_fs_1.default.realpathSync.native(absolute);
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
24
|
+
resolved = node_path_1.default.normalize(absolute);
|
|
25
|
+
}
|
|
26
|
+
if (process.platform === 'win32') {
|
|
27
|
+
resolved = resolved.replace(/^([A-Za-z]):/, (_match, drive) => `${drive.toLowerCase()}:`);
|
|
28
|
+
resolved = resolved.replace(/\//g, '\\');
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
resolved = resolved.replace(/\\/g, '/');
|
|
32
|
+
}
|
|
33
|
+
resolved = node_path_1.default.normalize(resolved);
|
|
34
|
+
const isRoot = resolved === '/' ||
|
|
35
|
+
(process.platform === 'win32' && /^[a-z]:\\?$/i.test(resolved));
|
|
36
|
+
if (!isRoot && (resolved.endsWith('/') || resolved.endsWith('\\'))) {
|
|
37
|
+
resolved = resolved.replace(/[\\/]+$/, '');
|
|
38
|
+
}
|
|
39
|
+
return resolved.normalize('NFC');
|
|
40
|
+
}
|
|
41
|
+
/** Stable digest of canonical path — used before opaque workspaceKey registration. */
|
|
42
|
+
function digestCanonicalWorkspacePath(canonicalPath) {
|
|
43
|
+
return (0, node_crypto_1.createHash)('sha256').update(canonicalPath, 'utf8').digest('hex');
|
|
44
|
+
}
|
|
45
|
+
function prefixTrustedId(kind, rawId) {
|
|
46
|
+
return `${kind}_${rawId.replace(/-/g, '')}`;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=workspace-key.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace-key.js","sourceRoot":"","sources":["../../src/utils/workspace-key.ts"],"names":[],"mappings":";;;;;AASA,8DA4BC;AAGD,oEAEC;AAED,0CAEC;AA9CD,6CAAyC;AACzC,sDAAyB;AACzB,0DAA6B;AAE7B;;;;GAIG;AACH,SAAgB,yBAAyB,CAAC,SAAiB;IACzD,MAAM,QAAQ,GAAG,mBAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEzC,IAAI,QAAQ,GAAG,QAAQ,CAAC;IACxB,IAAI,CAAC;QACH,QAAQ,GAAG,iBAAE,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,QAAQ,GAAG,mBAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,MAAM,EAAE,KAAa,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAClG,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;SAAM,CAAC;QACN,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC1C,CAAC;IAED,QAAQ,GAAG,mBAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAEpC,MAAM,MAAM,GACV,QAAQ,KAAK,GAAG;QAChB,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAElE,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACnE,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC;AAED,sFAAsF;AACtF,SAAgB,4BAA4B,CAAC,aAAqB;IAChE,OAAO,IAAA,wBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1E,CAAC;AAED,SAAgB,eAAe,CAAC,IAAmC,EAAE,KAAa;IAChF,OAAO,GAAG,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;AAC9C,CAAC"}
|