@amplitude/ai 0.3.1 → 0.3.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/AGENTS.md +1 -1
- package/dist/bound-agent.d.ts.map +1 -1
- package/dist/bound-agent.js +0 -1
- package/dist/bound-agent.js.map +1 -1
- package/dist/mcp/contract.d.ts.map +1 -1
- package/dist/propagation.d.ts.map +1 -1
- package/dist/providers/gemini.d.ts.map +1 -1
- package/dist/providers/mistral.d.ts.map +1 -1
- package/llms-full.txt +1 -1
- package/llms.txt +1 -1
- package/mcp.schema.json +1 -1
- package/package.json +1 -1
package/AGENTS.md
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bound-agent.d.ts","names":[],"sources":["../src/bound-agent.ts"],"sourcesContent":[],"mappings":";;;;;;AAY8B,KAAlB,eAAA,GAAkB,OAAA,CAC5B,IAD4B,CACvB,UADuB,CACZ,WADY,CAAA,kBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,SAAA,CAAA,CAAA;AAAO,KAIzB,aAAA,GAAgB,OAJS,CAKnC,IALmC,CAMjC,UANiC,CAMtB,WANsB,CAAA,gBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,SAAA,GAAA,OAAA,GAAA,UAAA,GAAA,WAAA,CAAA,CAAA;AAIzB,KAOA,YAAA,GAAe,OAPF,CAQvB,IARuB,CASrB,UATqB,CASV,WATU,CAAA,eAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,UAAA,GAAA,WAAA,GAAA,SAAA,CAAA,CAAA;AAEV,KAYH,aAAA,GAAgB,OAZb,CAab,IAba,CAcX,UAdW,CAcA,WAdA,CAAA,gBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,OAAA,GAAA,UAAA,GAAA,WAAA,CAAA,CAAA;AAAX,KAmBQ,QAAA,GAAW,OAnBnB,CAoBF,IApBE,CAoBG,UApBH,CAoBc,WApBd,CAAA,WAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,UAAA,GAAA,WAAA,CAAA,CAAA;AADF,KAwBU,cAAA,GAAiB,OAxB3B,CAyBA,UAzBA,CAyBW,WAzBX,CAAA,iBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAD0B,KA6BhB,qBAAA,GAAwB,OA7BR,CA8B1B,IA9B0B,CA8BrB,UA9BqB,CA8BV,WA9BU,CAAA,wBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,aAAA,CAAA,CAAA;AAAO,KAiCvB,SAAA,GAAY,OAjCW,CAkCjC,IAlCiC,CAkC5B,UAlC4B,CAkCjB,WAlCiB,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,MAAA,GAAA,OAAA,GAAA,UAAA,CAAA,CAAA;AAOvB,UA4CK,YAAA,CA5CO;EAET,MAAA,CAAA,EAAA,MAAA,GAAA,IAAA;EAAX,aAAA,CAAA,EAAA,MAAA,GAAA,IAAA;EADF,aAAA,CAAA,EAAA,MAAA,GAAA,IAAA;EADyB,YAAA,CAAA,EAAA,MAAA,GAAA,IAAA;EAAO,WAAA,CAAA,EAAA,MAAA,GAAA,IAAA;EAOtB,OAAA,CAAA,EA2CA,MA3Ca,CAAA,MAAA,EAAA,OAAA,CAAA,GAAA,IAAA;EAEV,GAAA,CAAA,EAAA,MAAA,GAAA,IAAA;EAAX,SAAA,CAAA,EAAA,MAAA,GAAA,IAAA;EADF,OAAA,CAAA,EAAA,MAAA,GAAA,IAAA;EAD0B,MAAA,CAAA,EA+CjB,MA/CiB,CAAA,MAAA,EAAA,OAAA,CAAA,GAAA,IAAA;EAAO,QAAA,CAAA,EAAA,MAAA,GAAA,IAAA;EAOvB,gBAAQ,CAAA,EAAA,MAAA,GAAA,IAAA;;AACb,cA4CM,UAAA,CA5CN;EAAL,SAAA,GAAA,EA6Cc,WA7Cd;EADqB,SAAA,SAAA,EA+CD,MA/CC,CAAA,MAAA,EAAA,OAAA,CAAA;EAAO,WAAA,CAAA,EAAA,EAkDtB,WAlDsB,EAAA,IAAA,EAmDpB,YAnDoB,GAAA;IAIlB,OAAA,EAAA,MAAc;EACb,CAAA;EAAX,IAAA,OAAA,CAAA,CAAA,EAAA,MAAA;EAD2B,IAAA,EAAA,CAAA,CAAA,EAuEjB,WAvEiB;EAAO,KAAA,CAAA,OAAA,EAAA,MAAA,EAAA,SAAA,CAAA,EA2EA,YA3EA,CAAA,EA2EoB,UA3EpB;EAIxB,QAAA,MAAA;EACM,gBAAA,CAAA,OAAA,EAAA,MAAA,EAAA,IAAA,CAAA,
|
|
1
|
+
{"version":3,"file":"bound-agent.d.ts","names":[],"sources":["../src/bound-agent.ts"],"sourcesContent":[],"mappings":"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"}
|
package/dist/bound-agent.js
CHANGED
|
@@ -48,7 +48,6 @@ var BoundAgent = class BoundAgent {
|
|
|
48
48
|
env: this._defaults.env,
|
|
49
49
|
customerOrgId: this._defaults.customerOrgId,
|
|
50
50
|
agentVersion: this._defaults.agentVersion,
|
|
51
|
-
description: this._defaults.description,
|
|
52
51
|
sessionId: this._defaults.sessionId,
|
|
53
52
|
traceId: this._defaults.traceId,
|
|
54
53
|
groups: this._defaults.groups,
|
package/dist/bound-agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bound-agent.js","names":["inherited: Record<string, unknown>"],"sources":["../src/bound-agent.ts"],"sourcesContent":["/**\n * BoundAgent — agent with pre-bound defaults for tracking context fields.\n *\n * Created via `ai.agent(agentId, opts)`. All tracking calls\n * automatically inherit agentId, userId, env, and other defaults.\n */\n\nimport type { AmplitudeAI } from './client.js';\nimport type { SessionEnrichments } from './core/enrichments.js';\nimport { PROP_SESSION_REPLAY_ID } from './core/tracking.js';\nimport { Session } from './session.js';\n\nexport type UserMessageOpts = Partial<\n Omit<Parameters<AmplitudeAI['trackUserMessage']>[0], 'content'>\n>;\n\nexport type AiMessageOpts = Partial<\n Omit<\n Parameters<AmplitudeAI['trackAiMessage']>[0],\n 'content' | 'model' | 'provider' | 'latencyMs'\n >\n>;\n\nexport type ToolCallOpts = Partial<\n Omit<\n Parameters<AmplitudeAI['trackToolCall']>[0],\n 'toolName' | 'latencyMs' | 'success'\n >\n>;\n\nexport type EmbeddingOpts = Partial<\n Omit<\n Parameters<AmplitudeAI['trackEmbedding']>[0],\n 'model' | 'provider' | 'latencyMs'\n >\n>;\n\nexport type SpanOpts = Partial<\n Omit<Parameters<AmplitudeAI['trackSpan']>[0], 'spanName' | 'latencyMs'>\n>;\n\nexport type SessionEndOpts = Partial<\n Parameters<AmplitudeAI['trackSessionEnd']>[0]\n>;\n\nexport type SessionEnrichmentOpts = Partial<\n Omit<Parameters<AmplitudeAI['trackSessionEnrichment']>[0], 'enrichments'>\n>;\n\nexport type ScoreOpts = Partial<\n Omit<Parameters<AmplitudeAI['score']>[0], 'name' | 'value' | 'targetId'>\n>;\n\nconst CONTEXT_FIELDS = [\n 'userId',\n 'agentId',\n 'parentAgentId',\n 'customerOrgId',\n 'agentVersion',\n 'description',\n 'context',\n 'env',\n 'sessionId',\n 'traceId',\n 'groups',\n] as const;\n\nexport interface AgentOptions {\n userId?: string | null;\n parentAgentId?: string | null;\n customerOrgId?: string | null;\n agentVersion?: string | null;\n description?: string | null;\n context?: Record<string, unknown> | null;\n env?: string | null;\n sessionId?: string | null;\n traceId?: string | null;\n groups?: Record<string, unknown> | null;\n deviceId?: string | null;\n browserSessionId?: string | null;\n}\n\nexport class BoundAgent {\n readonly _ai: AmplitudeAI;\n readonly _defaults: Record<string, unknown>;\n\n constructor(\n ai: AmplitudeAI,\n opts: AgentOptions & { agentId: string },\n ) {\n this._ai = ai;\n this._defaults = {\n userId: opts.userId ?? null,\n agentId: opts.agentId,\n parentAgentId: opts.parentAgentId ?? null,\n customerOrgId: opts.customerOrgId ?? null,\n agentVersion: opts.agentVersion ?? null,\n description: opts.description ?? null,\n context: opts.context ?? null,\n env: opts.env ?? null,\n sessionId: opts.sessionId ?? null,\n traceId: opts.traceId ?? null,\n groups: opts.groups ?? null,\n deviceId: opts.deviceId ?? null,\n browserSessionId: opts.browserSessionId ?? null,\n };\n }\n\n get agentId(): string {\n return String(this._defaults.agentId);\n }\n\n get ai(): AmplitudeAI {\n return this._ai;\n }\n\n child(agentId: string, overrides: AgentOptions = {}): BoundAgent {\n const inherited: Record<string, unknown> = {\n userId: this._defaults.userId,\n env: this._defaults.env,\n customerOrgId: this._defaults.customerOrgId,\n agentVersion: this._defaults.agentVersion,\n description: this._defaults.description,\n sessionId: this._defaults.sessionId,\n traceId: this._defaults.traceId,\n groups: this._defaults.groups,\n deviceId: this._defaults.deviceId,\n browserSessionId: this._defaults.browserSessionId,\n };\n\n const parentCtx = this._defaults.context as Record<string, unknown> | null;\n const childCtx = overrides.context ?? null;\n const overrideEntries = Object.entries(overrides).filter(\n ([k]) => k !== 'context',\n );\n if (parentCtx || childCtx) {\n const merged = { ...(parentCtx ?? {}) };\n if (childCtx) Object.assign(merged, childCtx);\n inherited.context = merged;\n }\n\n for (const [k, v] of overrideEntries) {\n if (v != null) inherited[k] = v;\n }\n\n const { parentAgentId: inheritedParentAgentId, ...inheritedWithoutParent } =\n inherited;\n const explicitParent =\n (inheritedParentAgentId as string | null) ??\n (this._defaults.agentId as string);\n\n return new BoundAgent(this._ai, {\n agentId,\n parentAgentId: explicitParent,\n ...(inheritedWithoutParent as Record<string, string | null>),\n });\n }\n\n private _merge<T extends Record<string, unknown>>(\n kwargs: T,\n fields: readonly string[] = CONTEXT_FIELDS,\n ): T {\n const merged = { ...kwargs } as Record<string, unknown>;\n for (const field of fields) {\n if (merged[field] == null && this._defaults[field] != null) {\n merged[field] = this._defaults[field];\n }\n }\n const deviceId = this._defaults.deviceId as string | null;\n const browserSessionId = this._defaults.browserSessionId as string | null;\n if (deviceId && browserSessionId) {\n const existingEp = merged.eventProperties as\n | Record<string, unknown>\n | undefined;\n const ep = existingEp != null ? { ...existingEp } : {};\n if (!(PROP_SESSION_REPLAY_ID in ep)) {\n ep[PROP_SESSION_REPLAY_ID] = `${deviceId}/${browserSessionId}`;\n merged.eventProperties = ep;\n }\n }\n return merged as T;\n }\n\n trackUserMessage(content: string, opts: UserMessageOpts = {}): string {\n return this._ai.trackUserMessage({\n ...this._merge(opts),\n content,\n } as Parameters<AmplitudeAI['trackUserMessage']>[0]);\n }\n\n trackAiMessage(\n content: string,\n model: string,\n provider: string,\n latencyMs: number,\n opts: AiMessageOpts = {},\n ): string {\n return this._ai.trackAiMessage({\n ...this._merge(opts),\n content,\n model,\n provider,\n latencyMs,\n } as Parameters<AmplitudeAI['trackAiMessage']>[0]);\n }\n\n trackToolCall(\n toolName: string,\n latencyMs: number,\n success: boolean,\n opts: ToolCallOpts = {},\n ): string {\n return this._ai.trackToolCall({\n ...this._merge(opts),\n toolName,\n latencyMs,\n success,\n } as Parameters<AmplitudeAI['trackToolCall']>[0]);\n }\n\n trackEmbedding(\n model: string,\n provider: string,\n latencyMs: number,\n opts: EmbeddingOpts = {},\n ): string {\n return this._ai.trackEmbedding({\n ...this._merge(opts),\n model,\n provider,\n latencyMs,\n } as Parameters<AmplitudeAI['trackEmbedding']>[0]);\n }\n\n trackSpan(spanName: string, latencyMs: number, opts: SpanOpts = {}): string {\n return this._ai.trackSpan({\n ...this._merge(opts),\n spanName,\n latencyMs,\n } as Parameters<AmplitudeAI['trackSpan']>[0]);\n }\n\n trackSessionEnd(opts: SessionEndOpts = {}): void {\n this._ai.trackSessionEnd(\n this._merge(opts) as Parameters<AmplitudeAI['trackSessionEnd']>[0],\n );\n }\n\n trackSessionEnrichment(\n enrichments: SessionEnrichments,\n opts: SessionEnrichmentOpts = {},\n ): void {\n this._ai.trackSessionEnrichment({\n ...this._merge(opts),\n enrichments,\n } as Parameters<AmplitudeAI['trackSessionEnrichment']>[0]);\n }\n\n score(\n name: string,\n value: number,\n targetId: string,\n opts: ScoreOpts = {},\n ): void {\n this._ai.score({\n ...this._merge(opts),\n name,\n value,\n targetId,\n } as Parameters<AmplitudeAI['score']>[0]);\n }\n\n session(\n opts: {\n sessionId?: string | null;\n idleTimeoutMinutes?: number | null;\n userId?: string | null;\n deviceId?: string | null;\n browserSessionId?: string | null;\n autoFlush?: boolean;\n } = {},\n ): Session {\n return new Session(this, opts);\n }\n\n flush(): unknown {\n return this._ai.flush();\n }\n\n shutdown(): void {\n this._ai.shutdown();\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bound-agent.js","names":["inherited: Record<string, unknown>"],"sources":["../src/bound-agent.ts"],"sourcesContent":["/**\n * BoundAgent — agent with pre-bound defaults for tracking context fields.\n *\n * Created via `ai.agent(agentId, opts)`. All tracking calls\n * automatically inherit agentId, userId, env, and other defaults.\n */\n\nimport type { AmplitudeAI } from './client.js';\nimport type { SessionEnrichments } from './core/enrichments.js';\nimport { PROP_SESSION_REPLAY_ID } from './core/tracking.js';\nimport { Session } from './session.js';\n\nexport type UserMessageOpts = Partial<\n Omit<Parameters<AmplitudeAI['trackUserMessage']>[0], 'content'>\n>;\n\nexport type AiMessageOpts = Partial<\n Omit<\n Parameters<AmplitudeAI['trackAiMessage']>[0],\n 'content' | 'model' | 'provider' | 'latencyMs'\n >\n>;\n\nexport type ToolCallOpts = Partial<\n Omit<\n Parameters<AmplitudeAI['trackToolCall']>[0],\n 'toolName' | 'latencyMs' | 'success'\n >\n>;\n\nexport type EmbeddingOpts = Partial<\n Omit<\n Parameters<AmplitudeAI['trackEmbedding']>[0],\n 'model' | 'provider' | 'latencyMs'\n >\n>;\n\nexport type SpanOpts = Partial<\n Omit<Parameters<AmplitudeAI['trackSpan']>[0], 'spanName' | 'latencyMs'>\n>;\n\nexport type SessionEndOpts = Partial<\n Parameters<AmplitudeAI['trackSessionEnd']>[0]\n>;\n\nexport type SessionEnrichmentOpts = Partial<\n Omit<Parameters<AmplitudeAI['trackSessionEnrichment']>[0], 'enrichments'>\n>;\n\nexport type ScoreOpts = Partial<\n Omit<Parameters<AmplitudeAI['score']>[0], 'name' | 'value' | 'targetId'>\n>;\n\nconst CONTEXT_FIELDS = [\n 'userId',\n 'agentId',\n 'parentAgentId',\n 'customerOrgId',\n 'agentVersion',\n 'description',\n 'context',\n 'env',\n 'sessionId',\n 'traceId',\n 'groups',\n] as const;\n\nexport interface AgentOptions {\n userId?: string | null;\n parentAgentId?: string | null;\n customerOrgId?: string | null;\n agentVersion?: string | null;\n description?: string | null;\n context?: Record<string, unknown> | null;\n env?: string | null;\n sessionId?: string | null;\n traceId?: string | null;\n groups?: Record<string, unknown> | null;\n deviceId?: string | null;\n browserSessionId?: string | null;\n}\n\nexport class BoundAgent {\n readonly _ai: AmplitudeAI;\n readonly _defaults: Record<string, unknown>;\n\n constructor(\n ai: AmplitudeAI,\n opts: AgentOptions & { agentId: string },\n ) {\n this._ai = ai;\n this._defaults = {\n userId: opts.userId ?? null,\n agentId: opts.agentId,\n parentAgentId: opts.parentAgentId ?? null,\n customerOrgId: opts.customerOrgId ?? null,\n agentVersion: opts.agentVersion ?? null,\n description: opts.description ?? null,\n context: opts.context ?? null,\n env: opts.env ?? null,\n sessionId: opts.sessionId ?? null,\n traceId: opts.traceId ?? null,\n groups: opts.groups ?? null,\n deviceId: opts.deviceId ?? null,\n browserSessionId: opts.browserSessionId ?? null,\n };\n }\n\n get agentId(): string {\n return String(this._defaults.agentId);\n }\n\n get ai(): AmplitudeAI {\n return this._ai;\n }\n\n child(agentId: string, overrides: AgentOptions = {}): BoundAgent {\n const inherited: Record<string, unknown> = {\n userId: this._defaults.userId,\n env: this._defaults.env,\n customerOrgId: this._defaults.customerOrgId,\n agentVersion: this._defaults.agentVersion,\n sessionId: this._defaults.sessionId,\n traceId: this._defaults.traceId,\n groups: this._defaults.groups,\n deviceId: this._defaults.deviceId,\n browserSessionId: this._defaults.browserSessionId,\n };\n\n const parentCtx = this._defaults.context as Record<string, unknown> | null;\n const childCtx = overrides.context ?? null;\n const overrideEntries = Object.entries(overrides).filter(\n ([k]) => k !== 'context',\n );\n if (parentCtx || childCtx) {\n const merged = { ...(parentCtx ?? {}) };\n if (childCtx) Object.assign(merged, childCtx);\n inherited.context = merged;\n }\n\n for (const [k, v] of overrideEntries) {\n if (v != null) inherited[k] = v;\n }\n\n const { parentAgentId: inheritedParentAgentId, ...inheritedWithoutParent } =\n inherited;\n const explicitParent =\n (inheritedParentAgentId as string | null) ??\n (this._defaults.agentId as string);\n\n return new BoundAgent(this._ai, {\n agentId,\n parentAgentId: explicitParent,\n ...(inheritedWithoutParent as Record<string, string | null>),\n });\n }\n\n private _merge<T extends Record<string, unknown>>(\n kwargs: T,\n fields: readonly string[] = CONTEXT_FIELDS,\n ): T {\n const merged = { ...kwargs } as Record<string, unknown>;\n for (const field of fields) {\n if (merged[field] == null && this._defaults[field] != null) {\n merged[field] = this._defaults[field];\n }\n }\n const deviceId = this._defaults.deviceId as string | null;\n const browserSessionId = this._defaults.browserSessionId as string | null;\n if (deviceId && browserSessionId) {\n const existingEp = merged.eventProperties as\n | Record<string, unknown>\n | undefined;\n const ep = existingEp != null ? { ...existingEp } : {};\n if (!(PROP_SESSION_REPLAY_ID in ep)) {\n ep[PROP_SESSION_REPLAY_ID] = `${deviceId}/${browserSessionId}`;\n merged.eventProperties = ep;\n }\n }\n return merged as T;\n }\n\n trackUserMessage(content: string, opts: UserMessageOpts = {}): string {\n return this._ai.trackUserMessage({\n ...this._merge(opts),\n content,\n } as Parameters<AmplitudeAI['trackUserMessage']>[0]);\n }\n\n trackAiMessage(\n content: string,\n model: string,\n provider: string,\n latencyMs: number,\n opts: AiMessageOpts = {},\n ): string {\n return this._ai.trackAiMessage({\n ...this._merge(opts),\n content,\n model,\n provider,\n latencyMs,\n } as Parameters<AmplitudeAI['trackAiMessage']>[0]);\n }\n\n trackToolCall(\n toolName: string,\n latencyMs: number,\n success: boolean,\n opts: ToolCallOpts = {},\n ): string {\n return this._ai.trackToolCall({\n ...this._merge(opts),\n toolName,\n latencyMs,\n success,\n } as Parameters<AmplitudeAI['trackToolCall']>[0]);\n }\n\n trackEmbedding(\n model: string,\n provider: string,\n latencyMs: number,\n opts: EmbeddingOpts = {},\n ): string {\n return this._ai.trackEmbedding({\n ...this._merge(opts),\n model,\n provider,\n latencyMs,\n } as Parameters<AmplitudeAI['trackEmbedding']>[0]);\n }\n\n trackSpan(spanName: string, latencyMs: number, opts: SpanOpts = {}): string {\n return this._ai.trackSpan({\n ...this._merge(opts),\n spanName,\n latencyMs,\n } as Parameters<AmplitudeAI['trackSpan']>[0]);\n }\n\n trackSessionEnd(opts: SessionEndOpts = {}): void {\n this._ai.trackSessionEnd(\n this._merge(opts) as Parameters<AmplitudeAI['trackSessionEnd']>[0],\n );\n }\n\n trackSessionEnrichment(\n enrichments: SessionEnrichments,\n opts: SessionEnrichmentOpts = {},\n ): void {\n this._ai.trackSessionEnrichment({\n ...this._merge(opts),\n enrichments,\n } as Parameters<AmplitudeAI['trackSessionEnrichment']>[0]);\n }\n\n score(\n name: string,\n value: number,\n targetId: string,\n opts: ScoreOpts = {},\n ): void {\n this._ai.score({\n ...this._merge(opts),\n name,\n value,\n targetId,\n } as Parameters<AmplitudeAI['score']>[0]);\n }\n\n session(\n opts: {\n sessionId?: string | null;\n idleTimeoutMinutes?: number | null;\n userId?: string | null;\n deviceId?: string | null;\n browserSessionId?: string | null;\n autoFlush?: boolean;\n } = {},\n ): Session {\n return new Session(this, opts);\n }\n\n flush(): unknown {\n return this._ai.flush();\n }\n\n shutdown(): void {\n this._ai.shutdown();\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract.d.ts","names":[],"sources":["../../src/mcp/contract.ts"],"sourcesContent":[],"mappings":";cAAa,eAAA;AAAA,cAEA,SAFe,EAAA;EAEf,SAAA,cAUH,EAAA,kBAAA;EAEG,SAAA,qBAIH,EAAA,yBAAA;EAEG,SAAA,aAEH,EAAA,gBAAA;EAEG,SAAA,sBAKH,EAAA,yBAAA;EAEE,SAAA,YAAS,
|
|
1
|
+
{"version":3,"file":"contract.d.ts","names":[],"sources":["../../src/mcp/contract.ts"],"sourcesContent":[],"mappings":";cAAa,eAAA;AAAA,cAEA,SAFe,EAAA;EAEf,SAAA,cAUH,EAAA,kBAAA;EAEG,SAAA,qBAIH,EAAA,yBAAA;EAEG,SAAA,aAEH,EAAA,gBAAA;EAEG,SAAA,sBAKH,EAAA,yBAAA;EAEE,SAAA,YAAS,EAAW,eAAwB;;;;;;cAjB3C;;;;;cAMA;;;cAIA;;;;;;KAOD,SAAA,WAAoB,wBAAwB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"propagation.d.ts","names":[],"sources":["../src/propagation.ts"],"sourcesContent":[],"mappings":";iBAKgB,0BAAA;AAAA,iBAIA,0BAAA,CAAA,CAJ0B,EAAA,OAAA;AAI1B,iBAIA,aAAA,CAJ0B,OAAA,CAAA,EAK9B,MAL8B,CAAA,MAAA,EAAA,MAAA,CAAA,CAAA,EAMvC,MANuC,CAAA,MAAA,EAAA,MAAA,CAAA;AAI1B,iBAoBA,cAAA,
|
|
1
|
+
{"version":3,"file":"propagation.d.ts","names":[],"sources":["../src/propagation.ts"],"sourcesContent":[],"mappings":";iBAKgB,0BAAA;AAAA,iBAIA,0BAAA,CAAA,CAJ0B,EAAA,OAAA;AAI1B,iBAIA,aAAA,CAJ0B,OAAA,CAAA,EAK9B,MAL8B,CAAA,MAAA,EAAA,MAAA,CAAA,CAAA,EAMvC,MANuC,CAAA,MAAA,EAAA,MAAA,CAAA;AAI1B,iBAoBA,cAAA,CAnBJ,OACT,EAmBQ,MAnBF,CAAA,MAAA,EAAA,MAAA,CAAA,CAAA,EAoBN,MApBM,CAAA,MAAA,EAAA,MAAA,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gemini.d.ts","names":[],"sources":["../../src/providers/gemini.ts"],"sourcesContent":[],"mappings":";;;;;;AAaM,cADO,gBACQ,
|
|
1
|
+
{"version":3,"file":"gemini.d.ts","names":[],"sources":["../../src/providers/gemini.ts"],"sourcesContent":[],"mappings":";;;;;;AAaM,cADO,gBACQ,EAAA,OAAM;AAI3B,cAJM,aAIwB,EAJT,MAKR,CAAA,MAAA,EAAA,OAEK,CAAA,GAAA,IAAA;AAQK,UAXN,aAAA,CAWM;EAuBX,SAAA,EAjCC,aAiCD;EACP,MAAA,CAAA,EAAA,MAAA;EA0EO,aAAA,CAAA,EA1GM,aA0GN,GAAA,IAAA;EACP;EAtGuB,YAAA,CAAA,EAAA,OAAA;;AA0PZ,cA1PH,MAAA,SAAe,cAAA,CAgQV;;uBA7PK;yCAuBX,0BACP;+CA0EO,0BACP;;;;iBAoJW,qBAAA;;;;;;kBAME,MAAM"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mistral.d.ts","names":[],"sources":["../../src/providers/mistral.ts"],"sourcesContent":[],"mappings":";;;;;;AAaM,cADO,iBACS,
|
|
1
|
+
{"version":3,"file":"mistral.d.ts","names":[],"sources":["../../src/providers/mistral.ts"],"sourcesContent":[],"mappings":";;;;;;AAaM,cADO,iBACS,EAAA,OAAM;AAI5B,cAJM,cAIyB,EAJT,MAKT,CAAA,MAAA,EAAA,OAEK,CAAA,GAAA,IAAA;AAOD,UAVA,cAAA,CAUA;EAEM,SAAA,EAXV,aAWU;EAJM,MAAA,CAAA,EAAA,MAAA;EAAc,aAAA,CAAA,EALzB,aAKyB,GAAA,IAAA;EAoC9B;EAI2B,aAAA,CAAA,EAAA,OAAA;;AAQW,cAhDtC,OAAA,SAAgB,cAAA,CAgDsB;EAmF5B,QAAA,OAAA;EAA0B,SAAA,IAAA,EAjIhC,WAiIgC;EAAO,WAAA,CAAA,OAAA,EA/HjC,cA+HiC;;;cA/F3C,WAAA;;;wCAI2B;mBAQf,0BAA0B;iBAmF5B,0BAA0B"}
|
package/llms-full.txt
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# llms-full.txt
|
|
2
|
-
# @amplitude/ai 0.3.
|
|
2
|
+
# @amplitude/ai 0.3.2 — Complete API Reference for AI Coding Agents
|
|
3
3
|
#
|
|
4
4
|
# This file is the definitive guide for any coding agent instrumenting
|
|
5
5
|
# a JavaScript/TypeScript AI application with @amplitude/ai.
|
package/llms.txt
CHANGED
package/mcp.schema.json
CHANGED