@opencontextprotocol/agent 0.1.0

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.
Files changed (76) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +198 -0
  3. package/dist/src/agent.d.ts +112 -0
  4. package/dist/src/agent.d.ts.map +1 -0
  5. package/dist/src/agent.js +358 -0
  6. package/dist/src/agent.js.map +1 -0
  7. package/dist/src/context.d.ts +108 -0
  8. package/dist/src/context.d.ts.map +1 -0
  9. package/dist/src/context.js +196 -0
  10. package/dist/src/context.js.map +1 -0
  11. package/dist/src/errors.d.ts +40 -0
  12. package/dist/src/errors.d.ts.map +1 -0
  13. package/dist/src/errors.js +63 -0
  14. package/dist/src/errors.js.map +1 -0
  15. package/dist/src/headers.d.ts +63 -0
  16. package/dist/src/headers.d.ts.map +1 -0
  17. package/dist/src/headers.js +238 -0
  18. package/dist/src/headers.js.map +1 -0
  19. package/dist/src/http_client.d.ts +82 -0
  20. package/dist/src/http_client.d.ts.map +1 -0
  21. package/dist/src/http_client.js +181 -0
  22. package/dist/src/http_client.js.map +1 -0
  23. package/dist/src/index.d.ts +25 -0
  24. package/dist/src/index.d.ts.map +1 -0
  25. package/dist/src/index.js +35 -0
  26. package/dist/src/index.js.map +1 -0
  27. package/dist/src/registry.d.ts +52 -0
  28. package/dist/src/registry.d.ts.map +1 -0
  29. package/dist/src/registry.js +164 -0
  30. package/dist/src/registry.js.map +1 -0
  31. package/dist/src/schema_discovery.d.ts +149 -0
  32. package/dist/src/schema_discovery.d.ts.map +1 -0
  33. package/dist/src/schema_discovery.js +707 -0
  34. package/dist/src/schema_discovery.js.map +1 -0
  35. package/dist/src/schemas/ocp-context.json +138 -0
  36. package/dist/src/storage.d.ts +110 -0
  37. package/dist/src/storage.d.ts.map +1 -0
  38. package/dist/src/storage.js +399 -0
  39. package/dist/src/storage.js.map +1 -0
  40. package/dist/src/validation.d.ts +169 -0
  41. package/dist/src/validation.d.ts.map +1 -0
  42. package/dist/src/validation.js +92 -0
  43. package/dist/src/validation.js.map +1 -0
  44. package/dist/tests/agent.test.d.ts +5 -0
  45. package/dist/tests/agent.test.d.ts.map +1 -0
  46. package/dist/tests/agent.test.js +536 -0
  47. package/dist/tests/agent.test.js.map +1 -0
  48. package/dist/tests/context.test.d.ts +5 -0
  49. package/dist/tests/context.test.d.ts.map +1 -0
  50. package/dist/tests/context.test.js +285 -0
  51. package/dist/tests/context.test.js.map +1 -0
  52. package/dist/tests/headers.test.d.ts +5 -0
  53. package/dist/tests/headers.test.d.ts.map +1 -0
  54. package/dist/tests/headers.test.js +356 -0
  55. package/dist/tests/headers.test.js.map +1 -0
  56. package/dist/tests/http_client.test.d.ts +5 -0
  57. package/dist/tests/http_client.test.d.ts.map +1 -0
  58. package/dist/tests/http_client.test.js +373 -0
  59. package/dist/tests/http_client.test.js.map +1 -0
  60. package/dist/tests/registry.test.d.ts +5 -0
  61. package/dist/tests/registry.test.d.ts.map +1 -0
  62. package/dist/tests/registry.test.js +232 -0
  63. package/dist/tests/registry.test.js.map +1 -0
  64. package/dist/tests/schema_discovery.test.d.ts +5 -0
  65. package/dist/tests/schema_discovery.test.d.ts.map +1 -0
  66. package/dist/tests/schema_discovery.test.js +1074 -0
  67. package/dist/tests/schema_discovery.test.js.map +1 -0
  68. package/dist/tests/storage.test.d.ts +5 -0
  69. package/dist/tests/storage.test.d.ts.map +1 -0
  70. package/dist/tests/storage.test.js +414 -0
  71. package/dist/tests/storage.test.js.map +1 -0
  72. package/dist/tests/validation.test.d.ts +5 -0
  73. package/dist/tests/validation.test.d.ts.map +1 -0
  74. package/dist/tests/validation.test.js +254 -0
  75. package/dist/tests/validation.test.js.map +1 -0
  76. package/package.json +51 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,108 @@
1
+ /**
2
+ * AgentContext - Core context management for OCP agents.
3
+ *
4
+ * Handles creating, updating, and maintaining agent context throughout
5
+ * multi-step workflows.
6
+ */
7
+ /**
8
+ * OCP Context Object - matches the official OCP specification schema
9
+ */
10
+ export interface OCPContextDict {
11
+ context_id: string;
12
+ agent_type: string;
13
+ user: string | null;
14
+ workspace: string | null;
15
+ current_file: string | null;
16
+ session: Record<string, any>;
17
+ history: Array<Record<string, any>>;
18
+ current_goal: string | null;
19
+ context_summary: string | null;
20
+ error_context: string | null;
21
+ recent_changes: string[];
22
+ api_specs: Record<string, string>;
23
+ created_at: string;
24
+ last_updated: string;
25
+ }
26
+ /**
27
+ * Core agent context that flows through OCP-enabled API calls.
28
+ *
29
+ * This represents the agent's understanding of the current conversation,
30
+ * workspace state, and goals.
31
+ */
32
+ export declare class AgentContext {
33
+ context_id: string;
34
+ agent_type: string;
35
+ user: string | null;
36
+ workspace: string | null;
37
+ current_file: string | null;
38
+ session: Record<string, any>;
39
+ history: Array<Record<string, any>>;
40
+ current_goal: string | null;
41
+ context_summary: string | null;
42
+ error_context: string | null;
43
+ recent_changes: string[];
44
+ api_specs: Record<string, string>;
45
+ created_at: Date;
46
+ last_updated: Date;
47
+ constructor(params?: {
48
+ context_id?: string;
49
+ agent_type?: string;
50
+ user?: string | null;
51
+ workspace?: string | null;
52
+ current_file?: string | null;
53
+ session?: Record<string, any>;
54
+ history?: Array<Record<string, any>>;
55
+ current_goal?: string | null;
56
+ context_summary?: string | null;
57
+ error_context?: string | null;
58
+ recent_changes?: string[];
59
+ api_specs?: Record<string, string>;
60
+ created_at?: Date;
61
+ last_updated?: Date;
62
+ });
63
+ /**
64
+ * Update the agent's current goal and context summary
65
+ */
66
+ updateGoal(goal: string, summary?: string): void;
67
+ /**
68
+ * Add an interaction to the conversation history
69
+ */
70
+ addInteraction(action: string, apiEndpoint?: string | null, result?: string | null, metadata?: Record<string, any>): void;
71
+ /**
72
+ * Set error context for debugging scenarios
73
+ */
74
+ setErrorContext(error: string, filePath?: string): void;
75
+ /**
76
+ * Add a recent change to track modifications
77
+ */
78
+ addRecentChange(change: string): void;
79
+ /**
80
+ * Add an API specification for enhanced responses
81
+ */
82
+ addApiSpec(apiName: string, openapiUrl: string): void;
83
+ /**
84
+ * Convert context to dictionary for serialization
85
+ */
86
+ toDict(): OCPContextDict;
87
+ /**
88
+ * Create AgentContext from dictionary
89
+ */
90
+ static fromDict(data: Record<string, any>): AgentContext;
91
+ /**
92
+ * Get a summary of the conversation for API context
93
+ */
94
+ getConversationSummary(): string;
95
+ /**
96
+ * Create a copy of this context for forked workflows
97
+ */
98
+ clone(): AgentContext;
99
+ /**
100
+ * Convenience method to convert context to OCP headers
101
+ */
102
+ toHeaders(compress?: boolean): Record<string, string>;
103
+ /**
104
+ * Convenience method to update context from HTTP response headers
105
+ */
106
+ updateFromHeaders(headers: Record<string, string> | Headers | any): boolean;
107
+ }
108
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,196 @@
1
+ /**
2
+ * AgentContext - Core context management for OCP agents.
3
+ *
4
+ * Handles creating, updating, and maintaining agent context throughout
5
+ * multi-step workflows.
6
+ */
7
+ import { randomBytes } from 'crypto';
8
+ import { createOCPHeaders, parseContext } from './headers.js';
9
+ /**
10
+ * Core agent context that flows through OCP-enabled API calls.
11
+ *
12
+ * This represents the agent's understanding of the current conversation,
13
+ * workspace state, and goals.
14
+ */
15
+ export class AgentContext {
16
+ constructor(params = {}) {
17
+ this.context_id = params.context_id || `ocp-${randomBytes(4).toString('hex')}`;
18
+ this.agent_type = params.agent_type !== undefined ? params.agent_type : 'generic_agent';
19
+ this.user = params.user ?? null;
20
+ this.workspace = params.workspace ?? null;
21
+ this.current_file = params.current_file ?? null;
22
+ this.history = params.history || [];
23
+ this.current_goal = params.current_goal ?? null;
24
+ this.context_summary = params.context_summary ?? null;
25
+ this.error_context = params.error_context ?? null;
26
+ this.recent_changes = params.recent_changes || [];
27
+ this.api_specs = params.api_specs || {};
28
+ this.created_at = params.created_at || new Date();
29
+ this.last_updated = params.last_updated || new Date();
30
+ // Initialize session
31
+ this.session = params.session || {
32
+ start_time: this.created_at.toISOString(),
33
+ interaction_count: 0,
34
+ agent_type: this.agent_type,
35
+ };
36
+ }
37
+ /**
38
+ * Update the agent's current goal and context summary
39
+ */
40
+ updateGoal(goal, summary) {
41
+ this.current_goal = goal;
42
+ if (summary) {
43
+ this.context_summary = summary;
44
+ }
45
+ this.last_updated = new Date();
46
+ this.session.interaction_count = (this.session.interaction_count || 0) + 1;
47
+ }
48
+ /**
49
+ * Add an interaction to the conversation history
50
+ */
51
+ addInteraction(action, apiEndpoint, result, metadata) {
52
+ const interaction = {
53
+ timestamp: new Date().toISOString(),
54
+ action,
55
+ api_endpoint: apiEndpoint ?? null,
56
+ result: result ?? null,
57
+ metadata: metadata || {},
58
+ };
59
+ this.history.push(interaction);
60
+ this.last_updated = new Date();
61
+ }
62
+ /**
63
+ * Set error context for debugging scenarios
64
+ */
65
+ setErrorContext(error, filePath) {
66
+ this.error_context = error;
67
+ if (filePath) {
68
+ this.current_file = filePath;
69
+ }
70
+ this.last_updated = new Date();
71
+ }
72
+ /**
73
+ * Add a recent change to track modifications
74
+ */
75
+ addRecentChange(change) {
76
+ this.recent_changes.push(change);
77
+ // Keep only last 10 changes
78
+ if (this.recent_changes.length > 10) {
79
+ this.recent_changes = this.recent_changes.slice(-10);
80
+ }
81
+ this.last_updated = new Date();
82
+ }
83
+ /**
84
+ * Add an API specification for enhanced responses
85
+ */
86
+ addApiSpec(apiName, openapiUrl) {
87
+ this.api_specs[apiName] = openapiUrl;
88
+ this.last_updated = new Date();
89
+ }
90
+ /**
91
+ * Convert context to dictionary for serialization
92
+ */
93
+ toDict() {
94
+ return {
95
+ context_id: this.context_id,
96
+ agent_type: this.agent_type,
97
+ user: this.user,
98
+ workspace: this.workspace,
99
+ current_file: this.current_file,
100
+ session: this.session,
101
+ history: this.history,
102
+ current_goal: this.current_goal,
103
+ context_summary: this.context_summary,
104
+ error_context: this.error_context,
105
+ recent_changes: this.recent_changes,
106
+ api_specs: this.api_specs,
107
+ created_at: this.created_at.toISOString(),
108
+ last_updated: this.last_updated.toISOString(),
109
+ };
110
+ }
111
+ /**
112
+ * Create AgentContext from dictionary
113
+ */
114
+ static fromDict(data) {
115
+ // Convert ISO strings back to Date objects
116
+ const created_at = data.created_at
117
+ ? new Date(data.created_at.replace('Z', '+00:00'))
118
+ : undefined;
119
+ const last_updated = data.last_updated
120
+ ? new Date(data.last_updated.replace('Z', '+00:00'))
121
+ : undefined;
122
+ return new AgentContext({
123
+ ...data,
124
+ created_at,
125
+ last_updated,
126
+ });
127
+ }
128
+ /**
129
+ * Get a summary of the conversation for API context
130
+ */
131
+ getConversationSummary() {
132
+ const summaryParts = [];
133
+ if (this.current_goal) {
134
+ summaryParts.push(`Goal: ${this.current_goal}`);
135
+ }
136
+ if (this.error_context) {
137
+ summaryParts.push(`Error: ${this.error_context}`);
138
+ }
139
+ if (this.current_file) {
140
+ summaryParts.push(`Working on: ${this.current_file}`);
141
+ }
142
+ if (this.recent_changes.length > 0) {
143
+ summaryParts.push(`Recent changes: ${this.recent_changes.slice(-3).join(', ')}`);
144
+ }
145
+ if (this.history.length > 0) {
146
+ const recentActions = this.history.slice(-3).map(h => h.action);
147
+ summaryParts.push(`Recent actions: ${recentActions.join(', ')}`);
148
+ }
149
+ return summaryParts.length > 0 ? summaryParts.join(' | ') : 'New conversation';
150
+ }
151
+ /**
152
+ * Create a copy of this context for forked workflows
153
+ */
154
+ clone() {
155
+ const data = this.toDict();
156
+ data.context_id = `ocp-${randomBytes(4).toString('hex')}`; // New ID for clone
157
+ return AgentContext.fromDict(data);
158
+ }
159
+ /**
160
+ * Convenience method to convert context to OCP headers
161
+ */
162
+ toHeaders(compress = true) {
163
+ return createOCPHeaders(this, undefined, compress);
164
+ }
165
+ /**
166
+ * Convenience method to update context from HTTP response headers
167
+ */
168
+ updateFromHeaders(headers) {
169
+ // Try parseContext which handles multiple header types
170
+ const newContext = parseContext(headers);
171
+ if (newContext) {
172
+ // Update current context with relevant fields from response
173
+ // Keep our identity but update session and goal info
174
+ if (newContext.current_goal && newContext.current_goal !== this.current_goal) {
175
+ this.current_goal = newContext.current_goal;
176
+ }
177
+ if (newContext.context_summary) {
178
+ this.context_summary = newContext.context_summary;
179
+ }
180
+ if (newContext.history && newContext.history.length > 0) {
181
+ // Merge histories, avoiding duplicates
182
+ const existingIds = new Set(this.history.map(h => h.interaction_id).filter(id => id !== undefined));
183
+ for (const interaction of newContext.history) {
184
+ if (!existingIds.has(interaction.interaction_id)) {
185
+ this.history.push(interaction);
186
+ }
187
+ }
188
+ }
189
+ // Update timestamp
190
+ this.last_updated = new Date();
191
+ return true;
192
+ }
193
+ return false;
194
+ }
195
+ }
196
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * OCP Error Hierarchy
3
+ *
4
+ * Consistent error handling for the Open Context Protocol library.
5
+ * Provides specific exception types for different failure scenarios.
6
+ */
7
+ /**
8
+ * Base exception for all OCP-related errors
9
+ */
10
+ export declare class OCPError extends Error {
11
+ constructor(message: string);
12
+ }
13
+ /**
14
+ * Registry service is unreachable or returned an error
15
+ */
16
+ export declare class RegistryUnavailable extends OCPError {
17
+ registryUrl: string;
18
+ constructor(registryUrl: string, message?: string);
19
+ }
20
+ /**
21
+ * API not found in the registry
22
+ */
23
+ export declare class APINotFound extends OCPError {
24
+ apiName: string;
25
+ suggestions: string[];
26
+ constructor(apiName: string, suggestions?: string[]);
27
+ }
28
+ /**
29
+ * OpenAPI schema discovery and parsing errors
30
+ */
31
+ export declare class SchemaDiscoveryError extends OCPError {
32
+ constructor(message: string);
33
+ }
34
+ /**
35
+ * Context or parameter validation errors
36
+ */
37
+ export declare class ValidationError extends OCPError {
38
+ constructor(message: string);
39
+ }
40
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,qBAAa,QAAS,SAAQ,KAAK;gBACrB,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,QAAQ;IACxC,WAAW,EAAE,MAAM,CAAC;gBAGzB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,MAAM;CASnB;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,QAAQ;IAI9B,OAAO,EAAE,MAAM;IAHjB,WAAW,EAAE,MAAM,EAAE,CAAC;gBAGpB,OAAO,EAAE,MAAM,EACtB,WAAW,CAAC,EAAE,MAAM,EAAE;CAWzB;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,QAAQ;gBACpC,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,QAAQ;gBAC/B,OAAO,EAAE,MAAM;CAI5B"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * OCP Error Hierarchy
3
+ *
4
+ * Consistent error handling for the Open Context Protocol library.
5
+ * Provides specific exception types for different failure scenarios.
6
+ */
7
+ /**
8
+ * Base exception for all OCP-related errors
9
+ */
10
+ export class OCPError extends Error {
11
+ constructor(message) {
12
+ super(message);
13
+ this.name = 'OCPError';
14
+ }
15
+ }
16
+ /**
17
+ * Registry service is unreachable or returned an error
18
+ */
19
+ export class RegistryUnavailable extends OCPError {
20
+ constructor(registryUrl, message) {
21
+ const fullMessage = message
22
+ ? `Registry unavailable at ${registryUrl}: ${message}`
23
+ : `Registry unavailable at ${registryUrl}. Use spec_url for direct discovery.`;
24
+ super(fullMessage);
25
+ this.name = 'RegistryUnavailable';
26
+ this.registryUrl = registryUrl;
27
+ }
28
+ }
29
+ /**
30
+ * API not found in the registry
31
+ */
32
+ export class APINotFound extends OCPError {
33
+ constructor(apiName, suggestions) {
34
+ const suggestionList = suggestions || [];
35
+ let message = `API '${apiName}' not found in registry`;
36
+ if (suggestionList.length > 0) {
37
+ message += `. Did you mean: ${suggestionList.slice(0, 3).join(', ')}?`;
38
+ }
39
+ super(message);
40
+ this.apiName = apiName;
41
+ this.name = 'APINotFound';
42
+ this.suggestions = suggestionList;
43
+ }
44
+ }
45
+ /**
46
+ * OpenAPI schema discovery and parsing errors
47
+ */
48
+ export class SchemaDiscoveryError extends OCPError {
49
+ constructor(message) {
50
+ super(message);
51
+ this.name = 'SchemaDiscoveryError';
52
+ }
53
+ }
54
+ /**
55
+ * Context or parameter validation errors
56
+ */
57
+ export class ValidationError extends OCPError {
58
+ constructor(message) {
59
+ super(message);
60
+ this.name = 'ValidationError';
61
+ }
62
+ }
63
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;IACzB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,mBAAoB,SAAQ,QAAQ;IAG/C,YACE,WAAmB,EACnB,OAAgB;QAEhB,MAAM,WAAW,GAAG,OAAO;YACzB,CAAC,CAAC,2BAA2B,WAAW,KAAK,OAAO,EAAE;YACtD,CAAC,CAAC,2BAA2B,WAAW,sCAAsC,CAAC;QACjF,KAAK,CAAC,WAAW,CAAC,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;QAClC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,QAAQ;IAGvC,YACS,OAAe,EACtB,WAAsB;QAEtB,MAAM,cAAc,GAAG,WAAW,IAAI,EAAE,CAAC;QACzC,IAAI,OAAO,GAAG,QAAQ,OAAO,yBAAyB,CAAC;QACvD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,OAAO,IAAI,mBAAmB,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QACzE,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,CAAC;QARR,YAAO,GAAP,OAAO,CAAQ;QAStB,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,cAAc,CAAC;IACpC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,oBAAqB,SAAQ,QAAQ;IAChD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,QAAQ;IAC3C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * OCP Headers - HTTP header management for Open Context Protocol.
3
+ *
4
+ * Handles encoding/decoding agent context into HTTP headers and validation.
5
+ */
6
+ import { AgentContext } from './context.js';
7
+ export declare const OCP_CONTEXT_ID = "OCP-Context-ID";
8
+ export declare const OCP_SESSION = "OCP-Session";
9
+ export declare const OCP_CURRENT_GOAL = "OCP-Current-Goal";
10
+ export declare const OCP_AGENT_TYPE = "OCP-Agent-Type";
11
+ export declare const OCP_USER = "OCP-User";
12
+ export declare const OCP_WORKSPACE = "OCP-Workspace";
13
+ export declare const OCP_VERSION = "OCP-Version";
14
+ export declare const OCP_SPEC_VERSION = "1.0";
15
+ /**
16
+ * Manages OCP HTTP headers for agent context transmission.
17
+ *
18
+ * Handles encoding agent context into HTTP headers and decoding
19
+ * received headers back into context objects.
20
+ */
21
+ export declare class OCPHeaders {
22
+ /**
23
+ * Encode AgentContext into OCP HTTP headers
24
+ */
25
+ static encodeContext(context: AgentContext, compress?: boolean): Record<string, string>;
26
+ /**
27
+ * Decode OCP headers back into an AgentContext object
28
+ */
29
+ static decodeContext(headers: Record<string, string>): AgentContext | null;
30
+ /**
31
+ * Validate that headers contain valid OCP context
32
+ */
33
+ static validateHeaders(headers: Record<string, string>): boolean;
34
+ /**
35
+ * Get a human-readable summary of the OCP context from headers
36
+ */
37
+ static getContextSummary(headers: Record<string, string>): string;
38
+ /**
39
+ * Merge OCP headers with existing HTTP headers
40
+ */
41
+ static mergeHeaders(baseHeaders: Record<string, string>, ocpHeaders: Record<string, string>): Record<string, string>;
42
+ /**
43
+ * Remove OCP headers from a headers dictionary
44
+ */
45
+ static stripOCPHeaders(headers: Record<string, string>): Record<string, string>;
46
+ }
47
+ /**
48
+ * Convenience function to create OCP headers from context
49
+ */
50
+ export declare function createOCPHeaders(context: AgentContext, baseHeaders?: Record<string, string>, compress?: boolean): Record<string, string>;
51
+ /**
52
+ * Extract OCP context from an HTTP response object
53
+ */
54
+ export declare function extractContextFromResponse(response: any): AgentContext | null;
55
+ /**
56
+ * Convenience function to parse OCP context from HTTP headers
57
+ */
58
+ export declare function parseContext(headers: any): AgentContext | null;
59
+ /**
60
+ * Convenience function to add OCP headers to HTTP response objects
61
+ */
62
+ export declare function addContextHeaders(response: any, context: AgentContext, compress?: boolean): void;
63
+ //# sourceMappingURL=headers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headers.d.ts","sourceRoot":"","sources":["../../src/headers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAG5C,eAAO,MAAM,cAAc,mBAAmB,CAAC;AAC/C,eAAO,MAAM,WAAW,gBAAgB,CAAC;AACzC,eAAO,MAAM,gBAAgB,qBAAqB,CAAC;AACnD,eAAO,MAAM,cAAc,mBAAmB,CAAC;AAC/C,eAAO,MAAM,QAAQ,aAAa,CAAC;AACnC,eAAO,MAAM,aAAa,kBAAkB,CAAC;AAC7C,eAAO,MAAM,WAAW,gBAAgB,CAAC;AAGzC,eAAO,MAAM,gBAAgB,QAAQ,CAAC;AAEtC;;;;;GAKG;AACH,qBAAa,UAAU;IACrB;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,GAAE,OAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAsC7F;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,YAAY,GAAG,IAAI;IAoC1E;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO;IAiBhE;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM;IAejE;;OAEG;IACH,MAAM,CAAC,YAAY,CACjB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACnC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACjC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAIzB;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;CAmBhF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,YAAY,EACrB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,QAAQ,GAAE,OAAc,GACvB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQxB;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,GAAG,GAAG,YAAY,GAAG,IAAI,CAoB7E;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,GAAG,GAAG,YAAY,GAAG,IAAI,CAkB9D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,YAAY,EACrB,QAAQ,GAAE,OAAc,GACvB,IAAI,CAuBN"}