noumen 0.1.0 → 0.2.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.
- package/README.md +767 -51
- package/dist/a2a/index.d.ts +148 -0
- package/dist/a2a/index.js +579 -0
- package/dist/a2a/index.js.map +1 -0
- package/dist/acp/index.d.ts +129 -0
- package/dist/acp/index.js +498 -0
- package/dist/acp/index.js.map +1 -0
- package/dist/agent-BrkbZyOT.d.ts +1028 -0
- package/dist/cache-DVqaCX8v.d.ts +38 -0
- package/dist/chunk-2ZTGQLYK.js +356 -0
- package/dist/chunk-2ZTGQLYK.js.map +1 -0
- package/dist/chunk-42PHHZUA.js +132 -0
- package/dist/chunk-42PHHZUA.js.map +1 -0
- package/dist/chunk-4SQA2UCV.js +26 -0
- package/dist/chunk-4SQA2UCV.js.map +1 -0
- package/dist/chunk-5GEX6ZSB.js +179 -0
- package/dist/chunk-5GEX6ZSB.js.map +1 -0
- package/dist/chunk-7ZMN7XJE.js +94 -0
- package/dist/chunk-7ZMN7XJE.js.map +1 -0
- package/dist/chunk-AMYIJSAZ.js +57 -0
- package/dist/chunk-AMYIJSAZ.js.map +1 -0
- package/dist/chunk-BGG2E6JD.js +10 -0
- package/dist/chunk-BGG2E6JD.js.map +1 -0
- package/dist/chunk-BZSFUEWM.js +43 -0
- package/dist/chunk-BZSFUEWM.js.map +1 -0
- package/dist/chunk-CPFHEPW4.js +139 -0
- package/dist/chunk-CPFHEPW4.js.map +1 -0
- package/dist/chunk-D43BWEZA.js +346 -0
- package/dist/chunk-D43BWEZA.js.map +1 -0
- package/dist/chunk-DGUM43GV.js +11 -0
- package/dist/chunk-DGUM43GV.js.map +1 -0
- package/dist/chunk-JACGEMTF.js +43 -0
- package/dist/chunk-JACGEMTF.js.map +1 -0
- package/dist/chunk-JX7CLUCV.js +21 -0
- package/dist/chunk-JX7CLUCV.js.map +1 -0
- package/dist/chunk-KXDB56YW.js +39 -0
- package/dist/chunk-KXDB56YW.js.map +1 -0
- package/dist/chunk-KY6ZPWHO.js +112 -0
- package/dist/chunk-KY6ZPWHO.js.map +1 -0
- package/dist/chunk-NBDFQYUZ.js +7992 -0
- package/dist/chunk-NBDFQYUZ.js.map +1 -0
- package/dist/chunk-OGXNFXFA.js +196 -0
- package/dist/chunk-OGXNFXFA.js.map +1 -0
- package/dist/chunk-QTJ7VTJY.js +1994 -0
- package/dist/chunk-QTJ7VTJY.js.map +1 -0
- package/dist/chunk-UVSSQBDY.js +192 -0
- package/dist/chunk-UVSSQBDY.js.map +1 -0
- package/dist/chunk-Y45R3PQL.js +684 -0
- package/dist/chunk-Y45R3PQL.js.map +1 -0
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/index.js +868 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/client/index.d.ts +64 -0
- package/dist/client/index.js +409 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client-CRRO2376.js +10 -0
- package/dist/client-CRRO2376.js.map +1 -0
- package/dist/headless-Q7XHHZIW.js +143 -0
- package/dist/headless-Q7XHHZIW.js.map +1 -0
- package/dist/history-snip-64GYP4ZL.js +12 -0
- package/dist/history-snip-64GYP4ZL.js.map +1 -0
- package/dist/index.d.ts +1305 -418
- package/dist/index.js +384 -1757
- package/dist/index.js.map +1 -1
- package/dist/jsonrpc/index.d.ts +54 -0
- package/dist/jsonrpc/index.js +34 -0
- package/dist/jsonrpc/index.js.map +1 -0
- package/dist/lsp/index.d.ts +36 -0
- package/dist/lsp/index.js +16 -0
- package/dist/lsp/index.js.map +1 -0
- package/dist/lsp-PS3BWIHC.js +8 -0
- package/dist/lsp-PS3BWIHC.js.map +1 -0
- package/dist/manager-DLXK63XC.js +8 -0
- package/dist/manager-DLXK63XC.js.map +1 -0
- package/dist/mcp/index.d.ts +111 -0
- package/dist/mcp/index.js +104 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp-auth-AEI2R4ZC.js +9 -0
- package/dist/mcp-auth-AEI2R4ZC.js.map +1 -0
- package/dist/ollama-YNXAYP3R.js +18 -0
- package/dist/ollama-YNXAYP3R.js.map +1 -0
- package/dist/provider-factory-34MSWJZ3.js +20 -0
- package/dist/provider-factory-34MSWJZ3.js.map +1 -0
- package/dist/providers/anthropic.d.ts +19 -0
- package/dist/providers/anthropic.js +33 -0
- package/dist/providers/anthropic.js.map +1 -0
- package/dist/providers/bedrock.d.ts +39 -0
- package/dist/providers/bedrock.js +54 -0
- package/dist/providers/bedrock.js.map +1 -0
- package/dist/providers/gemini.d.ts +16 -0
- package/dist/providers/gemini.js +224 -0
- package/dist/providers/gemini.js.map +1 -0
- package/dist/providers/openai.d.ts +18 -0
- package/dist/providers/openai.js +8 -0
- package/dist/providers/openai.js.map +1 -0
- package/dist/providers/openrouter.d.ts +16 -0
- package/dist/providers/openrouter.js +23 -0
- package/dist/providers/openrouter.js.map +1 -0
- package/dist/providers/vertex.d.ts +40 -0
- package/dist/providers/vertex.js +64 -0
- package/dist/providers/vertex.js.map +1 -0
- package/dist/render-GRN4ZSSW.js +14 -0
- package/dist/render-GRN4ZSSW.js.map +1 -0
- package/dist/resolve-XM52G7YE.js +14 -0
- package/dist/resolve-XM52G7YE.js.map +1 -0
- package/dist/server/index.d.ts +128 -0
- package/dist/server/index.js +626 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server-Cg1yWGaV.d.ts +96 -0
- package/dist/spinner-OJNR6NFO.js +8 -0
- package/dist/spinner-OJNR6NFO.js.map +1 -0
- package/dist/types-2kTLUCnD.d.ts +107 -0
- package/dist/types-3c88cRKH.d.ts +547 -0
- package/dist/types-CwKKucOF.d.ts +620 -0
- package/dist/types-DwdzmXfs.d.ts +107 -0
- package/dist/types-NIyVwQ4h.d.ts +109 -0
- package/dist/types-QwfylltH.d.ts +71 -0
- package/package.json +134 -6
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
type PermissionMode = "default" | "plan" | "acceptEdits" | "auto" | "bypassPermissions" | "dontAsk";
|
|
2
|
+
type PermissionBehavior = "allow" | "deny" | "ask";
|
|
3
|
+
type PermissionRuleSource = "user" | "project" | "session" | "policy";
|
|
4
|
+
/** Precedence order: policy > project > user > session. */
|
|
5
|
+
declare const RULE_SOURCE_PRECEDENCE: PermissionRuleSource[];
|
|
6
|
+
interface PermissionRule {
|
|
7
|
+
toolName: string;
|
|
8
|
+
ruleContent?: string;
|
|
9
|
+
behavior: PermissionBehavior;
|
|
10
|
+
/** Where this rule came from. Higher-precedence sources override lower ones. */
|
|
11
|
+
source?: PermissionRuleSource;
|
|
12
|
+
}
|
|
13
|
+
type PermissionUpdate = {
|
|
14
|
+
type: "addRules";
|
|
15
|
+
rules: PermissionRule[];
|
|
16
|
+
} | {
|
|
17
|
+
type: "removeRules";
|
|
18
|
+
toolName: string;
|
|
19
|
+
behavior?: PermissionBehavior;
|
|
20
|
+
} | {
|
|
21
|
+
type: "setMode";
|
|
22
|
+
mode: PermissionMode;
|
|
23
|
+
} | {
|
|
24
|
+
type: "addDirectories";
|
|
25
|
+
directories: string[];
|
|
26
|
+
} | {
|
|
27
|
+
type: "removeDirectories";
|
|
28
|
+
directories: string[];
|
|
29
|
+
};
|
|
30
|
+
interface PermissionAllowResult<Input extends Record<string, unknown> = Record<string, unknown>> {
|
|
31
|
+
behavior: "allow";
|
|
32
|
+
updatedInput?: Input;
|
|
33
|
+
reason?: string;
|
|
34
|
+
}
|
|
35
|
+
interface PermissionDenyResult {
|
|
36
|
+
behavior: "deny";
|
|
37
|
+
message: string;
|
|
38
|
+
reason?: string;
|
|
39
|
+
}
|
|
40
|
+
interface PermissionAskResult {
|
|
41
|
+
behavior: "ask";
|
|
42
|
+
message: string;
|
|
43
|
+
reason?: string;
|
|
44
|
+
suggestions?: PermissionRule[];
|
|
45
|
+
}
|
|
46
|
+
interface PermissionPassthroughResult {
|
|
47
|
+
behavior: "passthrough";
|
|
48
|
+
message: string;
|
|
49
|
+
reason?: string;
|
|
50
|
+
suggestions?: PermissionRule[];
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* What `Tool.checkPermissions` returns. Includes `passthrough` for tools that
|
|
54
|
+
* have no opinion and want the global pipeline to decide.
|
|
55
|
+
*/
|
|
56
|
+
type PermissionResult<Input extends Record<string, unknown> = Record<string, unknown>> = PermissionAllowResult<Input> | PermissionDenyResult | PermissionAskResult | PermissionPassthroughResult;
|
|
57
|
+
/**
|
|
58
|
+
* Final decision after the pipeline resolves. No `passthrough` — always
|
|
59
|
+
* one of allow / deny / ask.
|
|
60
|
+
*/
|
|
61
|
+
type PermissionDecision<Input extends Record<string, unknown> = Record<string, unknown>> = PermissionAllowResult<Input> | PermissionDenyResult | PermissionAskResult;
|
|
62
|
+
interface PermissionRequest {
|
|
63
|
+
toolName: string;
|
|
64
|
+
input: Record<string, unknown>;
|
|
65
|
+
message: string;
|
|
66
|
+
suggestions?: PermissionRule[];
|
|
67
|
+
isReadOnly: boolean;
|
|
68
|
+
isDestructive: boolean;
|
|
69
|
+
}
|
|
70
|
+
interface PermissionResponse {
|
|
71
|
+
allow: boolean;
|
|
72
|
+
updatedInput?: Record<string, unknown>;
|
|
73
|
+
feedback?: string;
|
|
74
|
+
addRules?: PermissionRule[];
|
|
75
|
+
}
|
|
76
|
+
type PermissionHandler = (request: PermissionRequest) => Promise<PermissionResponse>;
|
|
77
|
+
interface AutoModeConfig {
|
|
78
|
+
/** Custom system prompt for the classifier. When omitted, uses a default. */
|
|
79
|
+
classifierPrompt?: string;
|
|
80
|
+
/** Model to use for classification. When omitted, uses the thread's model. */
|
|
81
|
+
classifierModel?: string;
|
|
82
|
+
}
|
|
83
|
+
interface DenialTrackingConfig {
|
|
84
|
+
/** Max consecutive denials before fallback (default: 3). */
|
|
85
|
+
maxConsecutive?: number;
|
|
86
|
+
/** Max total denials before fallback (default: 20). */
|
|
87
|
+
maxTotal?: number;
|
|
88
|
+
}
|
|
89
|
+
interface PermissionConfig {
|
|
90
|
+
mode?: PermissionMode;
|
|
91
|
+
rules?: PermissionRule[];
|
|
92
|
+
handler?: PermissionHandler;
|
|
93
|
+
workingDirectories?: string[];
|
|
94
|
+
/** Called when a permission update is applied (for host-side persistence). */
|
|
95
|
+
onPermissionUpdate?: (update: PermissionUpdate) => void;
|
|
96
|
+
/** Configuration for auto mode classifier. */
|
|
97
|
+
autoMode?: AutoModeConfig;
|
|
98
|
+
/** Configuration for denial tracking limits. */
|
|
99
|
+
denialTracking?: DenialTrackingConfig;
|
|
100
|
+
}
|
|
101
|
+
interface PermissionContext {
|
|
102
|
+
mode: PermissionMode;
|
|
103
|
+
rules: PermissionRule[];
|
|
104
|
+
workingDirectories: string[];
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
export { type AutoModeConfig as A, type DenialTrackingConfig as D, type PermissionResponse as P, RULE_SOURCE_PRECEDENCE as R, type PermissionMode as a, type PermissionResult as b, type PermissionHandler as c, type PermissionConfig as d, type PermissionContext as e, type PermissionBehavior as f, type PermissionRule as g, type PermissionDecision as h, type PermissionUpdate as i, type PermissionAllowResult as j, type PermissionAskResult as k, type PermissionDenyResult as l, type PermissionPassthroughResult as m, type PermissionRequest as n, type PermissionRuleSource as o };
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent2Agent (A2A) protocol types per the Google A2A specification.
|
|
3
|
+
* https://google.github.io/A2A/specification/
|
|
4
|
+
*/
|
|
5
|
+
interface AgentCard {
|
|
6
|
+
name: string;
|
|
7
|
+
description?: string;
|
|
8
|
+
url: string;
|
|
9
|
+
provider?: {
|
|
10
|
+
organization: string;
|
|
11
|
+
url?: string;
|
|
12
|
+
};
|
|
13
|
+
version: string;
|
|
14
|
+
capabilities?: {
|
|
15
|
+
streaming?: boolean;
|
|
16
|
+
pushNotifications?: boolean;
|
|
17
|
+
stateTransitionHistory?: boolean;
|
|
18
|
+
};
|
|
19
|
+
authentication?: {
|
|
20
|
+
schemes: string[];
|
|
21
|
+
credentials?: string;
|
|
22
|
+
};
|
|
23
|
+
defaultInputModes?: string[];
|
|
24
|
+
defaultOutputModes?: string[];
|
|
25
|
+
skills?: AgentSkill[];
|
|
26
|
+
}
|
|
27
|
+
interface AgentSkill {
|
|
28
|
+
id: string;
|
|
29
|
+
name: string;
|
|
30
|
+
description?: string;
|
|
31
|
+
tags?: string[];
|
|
32
|
+
examples?: string[];
|
|
33
|
+
inputModes?: string[];
|
|
34
|
+
outputModes?: string[];
|
|
35
|
+
}
|
|
36
|
+
type TaskStatus = "submitted" | "working" | "input-required" | "completed" | "failed" | "canceled";
|
|
37
|
+
interface Task {
|
|
38
|
+
id: string;
|
|
39
|
+
sessionId?: string;
|
|
40
|
+
status: TaskState;
|
|
41
|
+
history?: Message[];
|
|
42
|
+
artifacts?: Artifact[];
|
|
43
|
+
metadata?: Record<string, unknown>;
|
|
44
|
+
}
|
|
45
|
+
interface TaskState {
|
|
46
|
+
state: TaskStatus;
|
|
47
|
+
message?: Message;
|
|
48
|
+
timestamp?: string;
|
|
49
|
+
}
|
|
50
|
+
interface Message {
|
|
51
|
+
role: "user" | "agent";
|
|
52
|
+
parts: Part[];
|
|
53
|
+
metadata?: Record<string, unknown>;
|
|
54
|
+
}
|
|
55
|
+
type Part = TextPart | FilePart | DataPart;
|
|
56
|
+
interface TextPart {
|
|
57
|
+
type: "text";
|
|
58
|
+
text: string;
|
|
59
|
+
}
|
|
60
|
+
interface FilePart {
|
|
61
|
+
type: "file";
|
|
62
|
+
file: {
|
|
63
|
+
name?: string;
|
|
64
|
+
mimeType?: string;
|
|
65
|
+
bytes?: string;
|
|
66
|
+
uri?: string;
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
interface DataPart {
|
|
70
|
+
type: "data";
|
|
71
|
+
data: Record<string, unknown>;
|
|
72
|
+
}
|
|
73
|
+
interface Artifact {
|
|
74
|
+
name?: string;
|
|
75
|
+
description?: string;
|
|
76
|
+
parts: Part[];
|
|
77
|
+
index?: number;
|
|
78
|
+
append?: boolean;
|
|
79
|
+
lastChunk?: boolean;
|
|
80
|
+
metadata?: Record<string, unknown>;
|
|
81
|
+
}
|
|
82
|
+
interface TaskSendParams {
|
|
83
|
+
id?: string;
|
|
84
|
+
sessionId?: string;
|
|
85
|
+
message: Message;
|
|
86
|
+
metadata?: Record<string, unknown>;
|
|
87
|
+
}
|
|
88
|
+
interface TaskStatusUpdateEvent {
|
|
89
|
+
type: "status";
|
|
90
|
+
taskId: string;
|
|
91
|
+
status: TaskState;
|
|
92
|
+
final: boolean;
|
|
93
|
+
}
|
|
94
|
+
interface TaskArtifactUpdateEvent {
|
|
95
|
+
type: "artifact";
|
|
96
|
+
taskId: string;
|
|
97
|
+
artifact: Artifact;
|
|
98
|
+
}
|
|
99
|
+
type TaskStreamEvent = TaskStatusUpdateEvent | TaskArtifactUpdateEvent;
|
|
100
|
+
declare const A2A_METHODS: {
|
|
101
|
+
readonly TASKS_SEND: "tasks/send";
|
|
102
|
+
readonly TASKS_SEND_SUBSCRIBE: "tasks/sendSubscribe";
|
|
103
|
+
readonly TASKS_GET: "tasks/get";
|
|
104
|
+
readonly TASKS_CANCEL: "tasks/cancel";
|
|
105
|
+
readonly TASKS_PUSH_NOTIFICATION: "tasks/pushNotification";
|
|
106
|
+
readonly TASKS_RESUBSCRIBE: "tasks/resubscribe";
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
export { type AgentSkill as A, type DataPart as D, type FilePart as F, type Message as M, type Part as P, type TaskSendParams as T, type AgentCard as a, type Task as b, type TaskStreamEvent as c, A2A_METHODS as d, type Artifact as e, type TaskState as f, type TaskStatus as g, type TextPart as h };
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ACP (Agent Client Protocol) types.
|
|
3
|
+
*
|
|
4
|
+
* ACP is a JSON-RPC 2.0 protocol (like LSP) for communication between
|
|
5
|
+
* clients (editors, UIs) and AI coding agents over stdio or HTTP.
|
|
6
|
+
*/
|
|
7
|
+
interface AcpCapabilities {
|
|
8
|
+
streaming?: boolean;
|
|
9
|
+
permissions?: boolean;
|
|
10
|
+
tools?: string[];
|
|
11
|
+
sessions?: boolean;
|
|
12
|
+
}
|
|
13
|
+
interface AcpInitializeParams {
|
|
14
|
+
clientName: string;
|
|
15
|
+
clientVersion: string;
|
|
16
|
+
capabilities?: {
|
|
17
|
+
filesystem?: boolean;
|
|
18
|
+
terminal?: boolean;
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
interface AcpInitializeResult {
|
|
22
|
+
agentName: string;
|
|
23
|
+
agentVersion: string;
|
|
24
|
+
protocolVersion: string;
|
|
25
|
+
capabilities: AcpCapabilities;
|
|
26
|
+
}
|
|
27
|
+
interface AcpSessionNewParams {
|
|
28
|
+
sessionId?: string;
|
|
29
|
+
}
|
|
30
|
+
interface AcpSessionPromptParams {
|
|
31
|
+
sessionId: string;
|
|
32
|
+
prompt: string;
|
|
33
|
+
}
|
|
34
|
+
interface AcpTransport {
|
|
35
|
+
/** Send a JSON-RPC message to the peer. */
|
|
36
|
+
send(message: unknown): void;
|
|
37
|
+
/** Register a handler for incoming JSON-RPC messages. */
|
|
38
|
+
onMessage(handler: (message: unknown) => void): void;
|
|
39
|
+
/** Register a close handler. */
|
|
40
|
+
onClose(handler: () => void): void;
|
|
41
|
+
/** Close the transport. */
|
|
42
|
+
close(): void;
|
|
43
|
+
}
|
|
44
|
+
declare const ACP_METHODS: {
|
|
45
|
+
readonly INITIALIZE: "initialize";
|
|
46
|
+
readonly SESSION_NEW: "session/new";
|
|
47
|
+
readonly SESSION_PROMPT: "session/prompt";
|
|
48
|
+
readonly SESSION_LOAD: "session/load";
|
|
49
|
+
readonly SESSION_ABORT: "session/abort";
|
|
50
|
+
readonly FS_READ: "fs/read_text_file";
|
|
51
|
+
readonly FS_READ_BYTES: "fs/read_bytes";
|
|
52
|
+
readonly FS_WRITE: "fs/write_text_file";
|
|
53
|
+
readonly FS_STAT: "fs/stat";
|
|
54
|
+
readonly FS_EXISTS: "fs/exists";
|
|
55
|
+
readonly FS_READDIR: "fs/readdir";
|
|
56
|
+
readonly FS_MKDIR: "fs/mkdir";
|
|
57
|
+
readonly FS_DELETE: "fs/delete";
|
|
58
|
+
readonly TERMINAL_EXEC: "terminal/exec";
|
|
59
|
+
readonly STREAM_TEXT: "stream/text";
|
|
60
|
+
readonly STREAM_THINKING: "stream/thinking";
|
|
61
|
+
readonly STREAM_TOOL_USE: "stream/toolUse";
|
|
62
|
+
readonly STREAM_TOOL_RESULT: "stream/toolResult";
|
|
63
|
+
readonly STREAM_COMPLETE: "stream/complete";
|
|
64
|
+
readonly STREAM_ERROR: "stream/error";
|
|
65
|
+
readonly PERMISSION_REQUEST: "permission/request";
|
|
66
|
+
readonly PERMISSION_RESPONSE: "permission/response";
|
|
67
|
+
readonly USER_INPUT_REQUEST: "userInput/request";
|
|
68
|
+
readonly USER_INPUT_RESPONSE: "userInput/response";
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
export { type AcpTransport as A, ACP_METHODS as a, type AcpCapabilities as b, type AcpInitializeParams as c, type AcpInitializeResult as d, type AcpSessionNewParams as e, type AcpSessionPromptParams as f };
|
package/package.json
CHANGED
|
@@ -1,15 +1,74 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "noumen",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Programmatic AI coding agent library with pluggable providers and virtual infrastructure",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"module": "./dist/index.js",
|
|
8
8
|
"types": "./dist/index.d.ts",
|
|
9
|
+
"bin": {
|
|
10
|
+
"noumen": "./dist/cli/index.js"
|
|
11
|
+
},
|
|
9
12
|
"exports": {
|
|
10
13
|
".": {
|
|
11
14
|
"import": "./dist/index.js",
|
|
12
15
|
"types": "./dist/index.d.ts"
|
|
16
|
+
},
|
|
17
|
+
"./openai": {
|
|
18
|
+
"import": "./dist/providers/openai.js",
|
|
19
|
+
"types": "./dist/providers/openai.d.ts"
|
|
20
|
+
},
|
|
21
|
+
"./anthropic": {
|
|
22
|
+
"import": "./dist/providers/anthropic.js",
|
|
23
|
+
"types": "./dist/providers/anthropic.d.ts"
|
|
24
|
+
},
|
|
25
|
+
"./gemini": {
|
|
26
|
+
"import": "./dist/providers/gemini.js",
|
|
27
|
+
"types": "./dist/providers/gemini.d.ts"
|
|
28
|
+
},
|
|
29
|
+
"./openrouter": {
|
|
30
|
+
"import": "./dist/providers/openrouter.js",
|
|
31
|
+
"types": "./dist/providers/openrouter.d.ts"
|
|
32
|
+
},
|
|
33
|
+
"./bedrock": {
|
|
34
|
+
"import": "./dist/providers/bedrock.js",
|
|
35
|
+
"types": "./dist/providers/bedrock.d.ts"
|
|
36
|
+
},
|
|
37
|
+
"./vertex": {
|
|
38
|
+
"import": "./dist/providers/vertex.js",
|
|
39
|
+
"types": "./dist/providers/vertex.d.ts"
|
|
40
|
+
},
|
|
41
|
+
"./ollama": {
|
|
42
|
+
"import": "./dist/providers/ollama.js",
|
|
43
|
+
"types": "./dist/providers/ollama.d.ts"
|
|
44
|
+
},
|
|
45
|
+
"./mcp": {
|
|
46
|
+
"import": "./dist/mcp/index.js",
|
|
47
|
+
"types": "./dist/mcp/index.d.ts"
|
|
48
|
+
},
|
|
49
|
+
"./lsp": {
|
|
50
|
+
"import": "./dist/lsp/index.js",
|
|
51
|
+
"types": "./dist/lsp/index.d.ts"
|
|
52
|
+
},
|
|
53
|
+
"./server": {
|
|
54
|
+
"import": "./dist/server/index.js",
|
|
55
|
+
"types": "./dist/server/index.d.ts"
|
|
56
|
+
},
|
|
57
|
+
"./client": {
|
|
58
|
+
"import": "./dist/client/index.js",
|
|
59
|
+
"types": "./dist/client/index.d.ts"
|
|
60
|
+
},
|
|
61
|
+
"./acp": {
|
|
62
|
+
"import": "./dist/acp/index.js",
|
|
63
|
+
"types": "./dist/acp/index.d.ts"
|
|
64
|
+
},
|
|
65
|
+
"./a2a": {
|
|
66
|
+
"import": "./dist/a2a/index.js",
|
|
67
|
+
"types": "./dist/a2a/index.d.ts"
|
|
68
|
+
},
|
|
69
|
+
"./jsonrpc": {
|
|
70
|
+
"import": "./dist/jsonrpc/index.js",
|
|
71
|
+
"types": "./dist/jsonrpc/index.d.ts"
|
|
13
72
|
}
|
|
14
73
|
},
|
|
15
74
|
"files": [
|
|
@@ -19,23 +78,92 @@
|
|
|
19
78
|
"node": ">=18.0.0"
|
|
20
79
|
},
|
|
21
80
|
"dependencies": {
|
|
22
|
-
"
|
|
81
|
+
"@anthropic-ai/sandbox-runtime": "^0.0.49",
|
|
82
|
+
"chalk": "^5.4.1",
|
|
83
|
+
"commander": "^13.1.0",
|
|
84
|
+
"node-html-markdown": "^2.0.0",
|
|
85
|
+
"uuid": "^11.1.0"
|
|
86
|
+
},
|
|
87
|
+
"peerDependencies": {
|
|
23
88
|
"@anthropic-ai/sdk": "^0.39.0",
|
|
24
89
|
"@google/genai": "^1.48.0",
|
|
25
|
-
"
|
|
90
|
+
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
91
|
+
"openai": "^4.85.0",
|
|
92
|
+
"vscode-jsonrpc": "^8.2.1",
|
|
93
|
+
"@opentelemetry/api": "^1.0.0",
|
|
94
|
+
"@anthropic-ai/bedrock-sdk": ">=0.10.0",
|
|
95
|
+
"@anthropic-ai/vertex-sdk": ">=0.4.0",
|
|
96
|
+
"google-auth-library": ">=9.0.0",
|
|
97
|
+
"dockerode": ">=4.0.0",
|
|
98
|
+
"e2b": ">=2.0.0",
|
|
99
|
+
"ws": ">=8.0.0",
|
|
100
|
+
"sharp": ">=0.33.0"
|
|
101
|
+
},
|
|
102
|
+
"peerDependenciesMeta": {
|
|
103
|
+
"@anthropic-ai/sdk": {
|
|
104
|
+
"optional": true
|
|
105
|
+
},
|
|
106
|
+
"@google/genai": {
|
|
107
|
+
"optional": true
|
|
108
|
+
},
|
|
109
|
+
"@modelcontextprotocol/sdk": {
|
|
110
|
+
"optional": true
|
|
111
|
+
},
|
|
112
|
+
"openai": {
|
|
113
|
+
"optional": true
|
|
114
|
+
},
|
|
115
|
+
"vscode-jsonrpc": {
|
|
116
|
+
"optional": true
|
|
117
|
+
},
|
|
118
|
+
"@opentelemetry/api": {
|
|
119
|
+
"optional": true
|
|
120
|
+
},
|
|
121
|
+
"@anthropic-ai/bedrock-sdk": {
|
|
122
|
+
"optional": true
|
|
123
|
+
},
|
|
124
|
+
"@anthropic-ai/vertex-sdk": {
|
|
125
|
+
"optional": true
|
|
126
|
+
},
|
|
127
|
+
"google-auth-library": {
|
|
128
|
+
"optional": true
|
|
129
|
+
},
|
|
130
|
+
"dockerode": {
|
|
131
|
+
"optional": true
|
|
132
|
+
},
|
|
133
|
+
"e2b": {
|
|
134
|
+
"optional": true
|
|
135
|
+
},
|
|
136
|
+
"ws": {
|
|
137
|
+
"optional": true
|
|
138
|
+
},
|
|
139
|
+
"sharp": {
|
|
140
|
+
"optional": true
|
|
141
|
+
}
|
|
26
142
|
},
|
|
27
143
|
"devDependencies": {
|
|
28
|
-
"
|
|
144
|
+
"@anthropic-ai/sdk": "^0.39.0",
|
|
145
|
+
"@google/genai": "^1.48.0",
|
|
146
|
+
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
147
|
+
"openai": "^4.85.0",
|
|
148
|
+
"vscode-jsonrpc": "^8.2.1",
|
|
149
|
+
"@opentelemetry/api": "^1.9.1",
|
|
29
150
|
"@types/node": "^22.0.0",
|
|
30
151
|
"@types/uuid": "^10.0.0",
|
|
152
|
+
"@vitest/coverage-v8": "^3.2.4",
|
|
153
|
+
"concurrently": "^9.2.1",
|
|
31
154
|
"tsup": "^8.4.0",
|
|
32
|
-
"
|
|
155
|
+
"tsx": "^4.21.0",
|
|
156
|
+
"typescript": "^5.7.0",
|
|
157
|
+
"vitest": "^3.0.0",
|
|
158
|
+
"ws": "^8.18.0",
|
|
159
|
+
"@types/ws": "^8.5.0"
|
|
33
160
|
},
|
|
34
161
|
"scripts": {
|
|
35
162
|
"build": "tsup",
|
|
36
163
|
"typecheck": "tsc --noEmit",
|
|
37
164
|
"test": "vitest run",
|
|
38
|
-
"dev": "tsup --watch",
|
|
165
|
+
"dev": "concurrently -n lib,web -c blue,magenta \"tsup --watch\" \"pnpm --filter noumen-docs dev\"",
|
|
166
|
+
"cli": "tsx src/cli/index.ts",
|
|
39
167
|
"publish:lib": "pnpm publish --access public --no-git-checks"
|
|
40
168
|
}
|
|
41
169
|
}
|