@codemieai/code 0.0.1 → 0.0.3
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/.codemie/guides/git-workflow.md +493 -0
- package/CLAUDE.md +130 -761
- package/README.md +283 -695
- package/bin/codemie-claude.js +122 -0
- package/bin/codemie-code.js +90 -15
- package/bin/codemie-codex.js +138 -0
- package/bin/codemie.js +1 -1
- package/config.example.json +10 -0
- package/dist/agents/adapters/claude-code.d.ts +2 -2
- package/dist/agents/adapters/claude-code.d.ts.map +1 -1
- package/dist/agents/adapters/claude-code.js +20 -42
- package/dist/agents/adapters/claude-code.js.map +1 -1
- package/dist/agents/adapters/codemie-code.d.ts +11 -2
- package/dist/agents/adapters/codemie-code.d.ts.map +1 -1
- package/dist/agents/adapters/codemie-code.js +93 -25
- package/dist/agents/adapters/codemie-code.js.map +1 -1
- package/dist/agents/adapters/codex.d.ts +2 -2
- package/dist/agents/adapters/codex.d.ts.map +1 -1
- package/dist/agents/adapters/codex.js +31 -24
- package/dist/agents/adapters/codex.js.map +1 -1
- package/dist/agents/codemie-code/agent.d.ts +89 -0
- package/dist/agents/codemie-code/agent.d.ts.map +1 -0
- package/dist/agents/codemie-code/agent.js +523 -0
- package/dist/agents/codemie-code/agent.js.map +1 -0
- package/dist/agents/codemie-code/config.d.ts +40 -0
- package/dist/agents/codemie-code/config.d.ts.map +1 -0
- package/dist/agents/codemie-code/config.js +276 -0
- package/dist/agents/codemie-code/config.js.map +1 -0
- package/dist/agents/codemie-code/filters.d.ts +91 -0
- package/dist/agents/codemie-code/filters.d.ts.map +1 -0
- package/dist/agents/codemie-code/filters.js +328 -0
- package/dist/agents/codemie-code/filters.js.map +1 -0
- package/dist/agents/codemie-code/index.d.ts +78 -0
- package/dist/agents/codemie-code/index.d.ts.map +1 -0
- package/dist/agents/codemie-code/index.js +259 -0
- package/dist/agents/codemie-code/index.js.map +1 -0
- package/dist/agents/codemie-code/prompts.d.ts +11 -0
- package/dist/agents/codemie-code/prompts.d.ts.map +1 -0
- package/dist/agents/codemie-code/prompts.js +31 -0
- package/dist/agents/codemie-code/prompts.js.map +1 -0
- package/dist/agents/codemie-code/streaming/events.d.ts +7 -0
- package/dist/agents/codemie-code/streaming/events.d.ts.map +1 -0
- package/dist/agents/codemie-code/streaming/events.js +7 -0
- package/dist/agents/codemie-code/streaming/events.js.map +1 -0
- package/dist/agents/codemie-code/streaming/formatter.d.ts +2 -0
- package/dist/agents/codemie-code/streaming/formatter.d.ts.map +1 -0
- package/dist/agents/codemie-code/streaming/formatter.js +2 -0
- package/dist/agents/codemie-code/streaming/formatter.js.map +1 -0
- package/dist/agents/codemie-code/streaming/ui.d.ts +2 -0
- package/dist/agents/codemie-code/streaming/ui.d.ts.map +1 -0
- package/dist/agents/codemie-code/streaming/ui.js +2 -0
- package/dist/agents/codemie-code/streaming/ui.js.map +1 -0
- package/dist/agents/codemie-code/tokenUtils.d.ts +108 -0
- package/dist/agents/codemie-code/tokenUtils.d.ts.map +1 -0
- package/dist/agents/codemie-code/tokenUtils.js +220 -0
- package/dist/agents/codemie-code/tokenUtils.js.map +1 -0
- package/dist/agents/codemie-code/toolMetadata.d.ts +15 -0
- package/dist/agents/codemie-code/toolMetadata.d.ts.map +1 -0
- package/dist/agents/codemie-code/toolMetadata.js +315 -0
- package/dist/agents/codemie-code/toolMetadata.js.map +1 -0
- package/dist/agents/codemie-code/tools/command.d.ts +2 -0
- package/dist/agents/codemie-code/tools/command.d.ts.map +1 -0
- package/dist/agents/codemie-code/tools/command.js +2 -0
- package/dist/agents/codemie-code/tools/command.js.map +1 -0
- package/dist/agents/codemie-code/tools/filesystem.d.ts +2 -0
- package/dist/agents/codemie-code/tools/filesystem.d.ts.map +1 -0
- package/dist/agents/codemie-code/tools/filesystem.js +2 -0
- package/dist/agents/codemie-code/tools/filesystem.js.map +1 -0
- package/dist/agents/codemie-code/tools/git.d.ts +2 -0
- package/dist/agents/codemie-code/tools/git.d.ts.map +1 -0
- package/dist/agents/codemie-code/tools/git.js +2 -0
- package/dist/agents/codemie-code/tools/git.js.map +1 -0
- package/dist/agents/codemie-code/tools/index.d.ts +19 -0
- package/dist/agents/codemie-code/tools/index.d.ts.map +1 -0
- package/dist/agents/codemie-code/tools/index.js +239 -0
- package/dist/agents/codemie-code/tools/index.js.map +1 -0
- package/dist/agents/codemie-code/tools/security.d.ts +2 -0
- package/dist/agents/codemie-code/tools/security.d.ts.map +1 -0
- package/dist/agents/codemie-code/tools/security.js +2 -0
- package/dist/agents/codemie-code/tools/security.js.map +1 -0
- package/dist/agents/codemie-code/types.d.ts +254 -0
- package/dist/agents/codemie-code/types.d.ts.map +1 -0
- package/dist/agents/codemie-code/types.js +35 -0
- package/dist/agents/codemie-code/types.js.map +1 -0
- package/dist/agents/codemie-code/ui.d.ts +83 -0
- package/dist/agents/codemie-code/ui.d.ts.map +1 -0
- package/dist/agents/codemie-code/ui.js +624 -0
- package/dist/agents/codemie-code/ui.js.map +1 -0
- package/dist/agents/registry.d.ts +1 -1
- package/dist/agents/registry.d.ts.map +1 -1
- package/dist/agents/registry.js +7 -13
- package/dist/agents/registry.js.map +1 -1
- package/dist/cli/commands/config.d.ts +3 -0
- package/dist/cli/commands/config.d.ts.map +1 -0
- package/dist/cli/commands/config.js +323 -0
- package/dist/cli/commands/config.js.map +1 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/doctor.js +113 -69
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/env.d.ts +3 -0
- package/dist/cli/commands/env.d.ts.map +1 -0
- package/dist/cli/commands/env.js +19 -0
- package/dist/cli/commands/env.js.map +1 -0
- package/dist/cli/commands/install.js +27 -33
- package/dist/cli/commands/install.js.map +1 -1
- package/dist/cli/commands/list.js +18 -24
- package/dist/cli/commands/list.js.map +1 -1
- package/dist/cli/commands/run.d.ts.map +1 -1
- package/dist/cli/commands/run.js +307 -21
- package/dist/cli/commands/run.js.map +1 -1
- package/dist/cli/commands/setup.d.ts +3 -0
- package/dist/cli/commands/setup.d.ts.map +1 -0
- package/dist/cli/commands/setup.js +357 -0
- package/dist/cli/commands/setup.js.map +1 -0
- package/dist/cli/commands/uninstall.js +24 -30
- package/dist/cli/commands/uninstall.js.map +1 -1
- package/dist/cli/commands/version.d.ts.map +1 -1
- package/dist/cli/commands/version.js +11 -16
- package/dist/cli/commands/version.js.map +1 -1
- package/dist/cli/index.js +47 -31
- package/dist/cli/index.js.map +1 -1
- package/dist/env/manager.js +9 -46
- package/dist/env/manager.js.map +1 -1
- package/dist/index.d.ts +6 -13
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -43
- package/dist/index.js.map +1 -1
- package/dist/utils/async-tips.d.ts.map +1 -1
- package/dist/utils/async-tips.js +16 -55
- package/dist/utils/async-tips.js.map +1 -1
- package/dist/utils/clipboard.d.ts +16 -0
- package/dist/utils/clipboard.d.ts.map +1 -0
- package/dist/utils/clipboard.js +179 -0
- package/dist/utils/clipboard.js.map +1 -0
- package/dist/utils/config-loader.d.ts +96 -0
- package/dist/utils/config-loader.d.ts.map +1 -0
- package/dist/utils/config-loader.js +351 -0
- package/dist/utils/config-loader.js.map +1 -0
- package/dist/utils/dirname.d.ts +7 -0
- package/dist/utils/dirname.d.ts.map +1 -0
- package/dist/utils/dirname.js +11 -0
- package/dist/utils/dirname.js.map +1 -0
- package/dist/utils/errors.js +7 -17
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/exec.js +3 -6
- package/dist/utils/exec.js.map +1 -1
- package/dist/utils/first-time.d.ts +34 -0
- package/dist/utils/first-time.d.ts.map +1 -0
- package/dist/utils/first-time.js +245 -0
- package/dist/utils/first-time.js.map +1 -0
- package/dist/utils/health-checker.d.ts +20 -0
- package/dist/utils/health-checker.d.ts.map +1 -0
- package/dist/utils/health-checker.js +168 -0
- package/dist/utils/health-checker.js.map +1 -0
- package/dist/utils/logger.js +12 -18
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/model-fetcher.d.ts +21 -0
- package/dist/utils/model-fetcher.d.ts.map +1 -0
- package/dist/utils/model-fetcher.js +137 -0
- package/dist/utils/model-fetcher.js.map +1 -0
- package/dist/utils/tips.d.ts.map +1 -1
- package/dist/utils/tips.js +13 -52
- package/dist/utils/tips.js.map +1 -1
- package/package.json +17 -23
- package/scripts/README.md +80 -0
- package/scripts/release.sh +156 -0
- package/dist/agents/adapters/aider.d.ts +0 -12
- package/dist/agents/adapters/aider.d.ts.map +0 -1
- package/dist/agents/adapters/aider.js +0 -80
- package/dist/agents/adapters/aider.js.map +0 -1
- package/dist/cli/cli.d.ts +0 -4
- package/dist/cli/cli.d.ts.map +0 -1
- package/dist/cli/cli.js +0 -107
- package/dist/cli/cli.js.map +0 -1
- package/dist/cli/commands/mcp.d.ts +0 -3
- package/dist/cli/commands/mcp.d.ts.map +0 -1
- package/dist/cli/commands/mcp.js +0 -459
- package/dist/cli/commands/mcp.js.map +0 -1
- package/dist/code/agent-events.d.ts +0 -39
- package/dist/code/agent-events.d.ts.map +0 -1
- package/dist/code/agent-events.js +0 -4
- package/dist/code/agent-events.js.map +0 -1
- package/dist/code/agent.d.ts +0 -19
- package/dist/code/agent.d.ts.map +0 -1
- package/dist/code/agent.js +0 -144
- package/dist/code/agent.js.map +0 -1
- package/dist/code/config.d.ts +0 -13
- package/dist/code/config.d.ts.map +0 -1
- package/dist/code/config.js +0 -41
- package/dist/code/config.js.map +0 -1
- package/dist/code/index.d.ts +0 -19
- package/dist/code/index.d.ts.map +0 -1
- package/dist/code/index.js +0 -400
- package/dist/code/index.js.map +0 -1
- package/dist/code/prompts.d.ts +0 -2
- package/dist/code/prompts.d.ts.map +0 -1
- package/dist/code/prompts.js +0 -45
- package/dist/code/prompts.js.map +0 -1
- package/dist/code/tools/command.d.ts +0 -8
- package/dist/code/tools/command.d.ts.map +0 -1
- package/dist/code/tools/command.js +0 -83
- package/dist/code/tools/command.js.map +0 -1
- package/dist/code/tools/diff-utils.d.ts +0 -2
- package/dist/code/tools/diff-utils.d.ts.map +0 -1
- package/dist/code/tools/diff-utils.js +0 -45
- package/dist/code/tools/diff-utils.js.map +0 -1
- package/dist/code/tools/filesystem.d.ts +0 -11
- package/dist/code/tools/filesystem.d.ts.map +0 -1
- package/dist/code/tools/filesystem.js +0 -442
- package/dist/code/tools/filesystem.js.map +0 -1
- package/dist/code/tools/git.d.ts +0 -7
- package/dist/code/tools/git.d.ts.map +0 -1
- package/dist/code/tools/git.js +0 -111
- package/dist/code/tools/git.js.map +0 -1
- package/dist/code/tools/mcp.d.ts +0 -13
- package/dist/code/tools/mcp.d.ts.map +0 -1
- package/dist/code/tools/mcp.js +0 -230
- package/dist/code/tools/mcp.js.map +0 -1
- package/dist/data/tips.json +0 -118
- package/dist/ui/terminal-ui.d.ts +0 -73
- package/dist/ui/terminal-ui.d.ts.map +0 -1
- package/dist/ui/terminal-ui.js +0 -900
- package/dist/ui/terminal-ui.js.map +0 -1
- package/dist/utils/env-mapper.d.ts +0 -40
- package/dist/utils/env-mapper.d.ts.map +0 -1
- package/dist/utils/env-mapper.js +0 -122
- package/dist/utils/env-mapper.js.map +0 -1
- package/docs/USER_GUIDE.md +0 -573
- package/tests/agent-direct.test.mjs +0 -45
- package/tests/agent-output.test.mjs +0 -64
- package/tests/codemie-code.test.mjs +0 -42
- package/tests/context7-only.test.mjs +0 -42
- package/tests/conversation-flow.test.mjs +0 -63
- package/tests/interactive-simulation.test.mjs +0 -60
- package/tests/live-output.test.mjs +0 -53
- package/tests/mcp-context7.test.mjs +0 -105
- package/tests/mcp-e2e.test.mjs +0 -109
- package/tests/mcp-time-server.test.mjs +0 -58
- package/tests/streaming.test.mjs +0 -57
- package/tests/test-helpers.mjs +0 -94
- package/tests/text-wrapping.test.mjs +0 -33
- package/tests/tool-count.test.mjs +0 -81
- package/tests/ui-format.test.mjs +0 -39
- package/tests/ui-state.test.mjs +0 -72
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"security.d.ts","sourceRoot":"","sources":["../../../../src/agents/codemie-code/tools/security.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"security.js","sourceRoot":"","sources":["../../../../src/agents/codemie-code/tools/security.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CodeMie Agent Types
|
|
3
|
+
*
|
|
4
|
+
* Core TypeScript definitions for the CodeMie native coding agent
|
|
5
|
+
* using LangChain v1.0+ and LangGraph v1.0+
|
|
6
|
+
*/
|
|
7
|
+
import type { FilterConfig } from './filters.js';
|
|
8
|
+
/**
|
|
9
|
+
* Configuration interface for the CodeMie agent
|
|
10
|
+
*/
|
|
11
|
+
export interface CodeMieConfig {
|
|
12
|
+
/** Base URL for the LLM API endpoint */
|
|
13
|
+
baseUrl: string;
|
|
14
|
+
/** Authentication token/API key */
|
|
15
|
+
authToken: string;
|
|
16
|
+
/** Model name (e.g., 'gpt-4', 'claude-3-sonnet-20240229') */
|
|
17
|
+
model: string;
|
|
18
|
+
/** LLM provider type */
|
|
19
|
+
provider: 'openai' | 'anthropic' | 'azure' | 'bedrock' | 'litellm';
|
|
20
|
+
/** Request timeout in seconds */
|
|
21
|
+
timeout: number;
|
|
22
|
+
/** Working directory for file operations */
|
|
23
|
+
workingDirectory: string;
|
|
24
|
+
/** Enable debug logging */
|
|
25
|
+
debug: boolean;
|
|
26
|
+
/** Directory filtering configuration */
|
|
27
|
+
directoryFilters?: FilterConfig;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Tool metadata extracted from tool results for enhanced UI display
|
|
31
|
+
*/
|
|
32
|
+
export interface ToolMetadata {
|
|
33
|
+
/** File path for file operations */
|
|
34
|
+
filePath?: string;
|
|
35
|
+
/** File size in bytes */
|
|
36
|
+
fileSize?: number;
|
|
37
|
+
/** Content preview (first few lines or characters) */
|
|
38
|
+
contentPreview?: string;
|
|
39
|
+
/** Number of bytes written */
|
|
40
|
+
bytesWritten?: number;
|
|
41
|
+
/** Directory path */
|
|
42
|
+
directoryPath?: string;
|
|
43
|
+
/** Number of files found */
|
|
44
|
+
fileCount?: number;
|
|
45
|
+
/** Number of directories found */
|
|
46
|
+
directoryCount?: number;
|
|
47
|
+
/** Command that was executed */
|
|
48
|
+
command?: string;
|
|
49
|
+
/** Execution time in milliseconds */
|
|
50
|
+
executionTime?: number;
|
|
51
|
+
/** Output preview */
|
|
52
|
+
outputPreview?: string;
|
|
53
|
+
/** Success status */
|
|
54
|
+
success?: boolean;
|
|
55
|
+
/** Error message if applicable */
|
|
56
|
+
errorMessage?: string;
|
|
57
|
+
/** Token usage for the LLM reasoning that led to this tool call */
|
|
58
|
+
tokenUsage?: TokenUsage;
|
|
59
|
+
/** Data processing metrics */
|
|
60
|
+
dataMetrics?: {
|
|
61
|
+
/** Amount of data read/processed (in bytes) */
|
|
62
|
+
bytesProcessed?: number;
|
|
63
|
+
/** Number of lines processed */
|
|
64
|
+
linesProcessed?: number;
|
|
65
|
+
/** Processing efficiency (bytes per token) */
|
|
66
|
+
bytesPerToken?: number;
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Agent event types for streaming responses
|
|
71
|
+
*/
|
|
72
|
+
export interface AgentEvent {
|
|
73
|
+
/** Event type */
|
|
74
|
+
type: 'thinking_start' | 'thinking_end' | 'content_chunk' | 'tool_call_start' | 'tool_call_result' | 'complete' | 'error';
|
|
75
|
+
/** Content chunk for streaming text */
|
|
76
|
+
content?: string;
|
|
77
|
+
/** Tool name being called */
|
|
78
|
+
toolName?: string;
|
|
79
|
+
/** Tool arguments */
|
|
80
|
+
toolArgs?: Record<string, any>;
|
|
81
|
+
/** Tool execution result */
|
|
82
|
+
result?: string;
|
|
83
|
+
/** Enhanced tool metadata for better UI display */
|
|
84
|
+
toolMetadata?: ToolMetadata;
|
|
85
|
+
/** Error message if event type is 'error' */
|
|
86
|
+
error?: string;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Callback function for handling agent events
|
|
90
|
+
*/
|
|
91
|
+
export type EventCallback = (event: AgentEvent) => void;
|
|
92
|
+
/**
|
|
93
|
+
* Tool configuration interface
|
|
94
|
+
*/
|
|
95
|
+
export interface ToolConfig {
|
|
96
|
+
/** Allowed directories for filesystem operations */
|
|
97
|
+
allowedDirectories: string[];
|
|
98
|
+
/** Working directory for command execution */
|
|
99
|
+
workingDirectory: string;
|
|
100
|
+
/** Enable debug mode for tools */
|
|
101
|
+
debug: boolean;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Agent execution options
|
|
105
|
+
*/
|
|
106
|
+
export interface ExecutionOptions {
|
|
107
|
+
/** Maximum recursion limit for agent loops */
|
|
108
|
+
recursionLimit?: number;
|
|
109
|
+
/** Streaming mode configuration */
|
|
110
|
+
streamMode?: 'updates' | 'values' | 'debug';
|
|
111
|
+
/** Request timeout in milliseconds */
|
|
112
|
+
timeout?: number;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Agent initialization result
|
|
116
|
+
*/
|
|
117
|
+
export interface InitializationResult {
|
|
118
|
+
/** Whether initialization was successful */
|
|
119
|
+
success: boolean;
|
|
120
|
+
/** Number of tools loaded */
|
|
121
|
+
toolCount: number;
|
|
122
|
+
/** Initialization duration in milliseconds */
|
|
123
|
+
duration: number;
|
|
124
|
+
/** Error message if initialization failed */
|
|
125
|
+
error?: string;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Tool execution context
|
|
129
|
+
*/
|
|
130
|
+
export interface ToolContext {
|
|
131
|
+
/** Current working directory */
|
|
132
|
+
workingDirectory: string;
|
|
133
|
+
/** User ID or session identifier */
|
|
134
|
+
sessionId?: string;
|
|
135
|
+
/** Additional metadata */
|
|
136
|
+
metadata?: Record<string, any>;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Token usage details for a single LLM call
|
|
140
|
+
*/
|
|
141
|
+
export interface TokenUsage {
|
|
142
|
+
/** Input tokens (prompt) */
|
|
143
|
+
inputTokens: number;
|
|
144
|
+
/** Output tokens (completion) */
|
|
145
|
+
outputTokens: number;
|
|
146
|
+
/** Cached tokens (if supported by provider) */
|
|
147
|
+
cachedTokens?: number;
|
|
148
|
+
/** Total tokens (input + output) */
|
|
149
|
+
totalTokens: number;
|
|
150
|
+
/** Estimated cost in USD (if supported) */
|
|
151
|
+
estimatedCost?: number;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Step execution details with token tracking
|
|
155
|
+
*/
|
|
156
|
+
export interface ExecutionStep {
|
|
157
|
+
/** Step number in the execution sequence */
|
|
158
|
+
stepNumber: number;
|
|
159
|
+
/** Type of step */
|
|
160
|
+
type: 'llm_call' | 'tool_execution';
|
|
161
|
+
/** Timestamp when step started */
|
|
162
|
+
startTime: number;
|
|
163
|
+
/** Timestamp when step completed */
|
|
164
|
+
endTime?: number;
|
|
165
|
+
/** Duration in milliseconds */
|
|
166
|
+
duration?: number;
|
|
167
|
+
/** Token usage for this step (only for llm_call type) */
|
|
168
|
+
tokenUsage?: TokenUsage;
|
|
169
|
+
/** Tool name (only for tool_execution type) */
|
|
170
|
+
toolName?: string;
|
|
171
|
+
/** Tool result success status (only for tool_execution type) */
|
|
172
|
+
toolSuccess?: boolean;
|
|
173
|
+
/** Error message if step failed */
|
|
174
|
+
error?: string;
|
|
175
|
+
/** Context for LLM calls to distinguish between different types of reasoning */
|
|
176
|
+
llmContext?: 'initial_input' | 'processing_tool_result' | 'final_response';
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Agent runtime statistics with detailed token tracking
|
|
180
|
+
*/
|
|
181
|
+
export interface AgentStats {
|
|
182
|
+
/** Total tokens used in input across all steps */
|
|
183
|
+
inputTokens: number;
|
|
184
|
+
/** Total tokens generated in output across all steps */
|
|
185
|
+
outputTokens: number;
|
|
186
|
+
/** Total cached tokens across all steps */
|
|
187
|
+
cachedTokens: number;
|
|
188
|
+
/** Total tokens (input + output) */
|
|
189
|
+
totalTokens: number;
|
|
190
|
+
/** Estimated total cost in USD */
|
|
191
|
+
estimatedTotalCost: number;
|
|
192
|
+
/** Total execution time in milliseconds */
|
|
193
|
+
executionTime: number;
|
|
194
|
+
/** Number of tool calls made */
|
|
195
|
+
toolCalls: number;
|
|
196
|
+
/** Number of successful tool executions */
|
|
197
|
+
successfulTools: number;
|
|
198
|
+
/** Number of failed tool executions */
|
|
199
|
+
failedTools: number;
|
|
200
|
+
/** Number of LLM calls made */
|
|
201
|
+
llmCalls: number;
|
|
202
|
+
/** Detailed execution steps */
|
|
203
|
+
executionSteps: ExecutionStep[];
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Provider-specific configuration
|
|
207
|
+
*/
|
|
208
|
+
export type ProviderConfig = {
|
|
209
|
+
openai: {
|
|
210
|
+
apiKey: string;
|
|
211
|
+
baseURL?: string;
|
|
212
|
+
organization?: string;
|
|
213
|
+
};
|
|
214
|
+
anthropic: {
|
|
215
|
+
apiKey: string;
|
|
216
|
+
baseURL?: string;
|
|
217
|
+
};
|
|
218
|
+
azure: {
|
|
219
|
+
apiKey: string;
|
|
220
|
+
endpoint: string;
|
|
221
|
+
deploymentName: string;
|
|
222
|
+
apiVersion?: string;
|
|
223
|
+
};
|
|
224
|
+
bedrock: {
|
|
225
|
+
region: string;
|
|
226
|
+
accessKeyId: string;
|
|
227
|
+
secretAccessKey: string;
|
|
228
|
+
};
|
|
229
|
+
litellm: {
|
|
230
|
+
apiKey: string;
|
|
231
|
+
baseURL: string;
|
|
232
|
+
model: string;
|
|
233
|
+
};
|
|
234
|
+
};
|
|
235
|
+
/**
|
|
236
|
+
* Error types for the agent
|
|
237
|
+
*/
|
|
238
|
+
export declare class CodeMieAgentError extends Error {
|
|
239
|
+
code: string;
|
|
240
|
+
details?: Record<string, any> | undefined;
|
|
241
|
+
constructor(message: string, code: string, details?: Record<string, any> | undefined);
|
|
242
|
+
}
|
|
243
|
+
export declare class ToolExecutionError extends CodeMieAgentError {
|
|
244
|
+
constructor(toolName: string, message: string, details?: Record<string, any>);
|
|
245
|
+
}
|
|
246
|
+
export declare class ConfigurationError extends CodeMieAgentError {
|
|
247
|
+
constructor(message: string, details?: Record<string, any>);
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* Re-export commonly used types from dependencies
|
|
251
|
+
*/
|
|
252
|
+
export type { StructuredTool } from '@langchain/core/tools';
|
|
253
|
+
export type { BaseMessage } from '@langchain/core/messages';
|
|
254
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/agents/codemie-code/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAC;IAEhB,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAElB,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAC;IAEd,wBAAwB;IACxB,QAAQ,EAAE,QAAQ,GAAG,WAAW,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;IAEnE,iCAAiC;IACjC,OAAO,EAAE,MAAM,CAAC;IAEhB,4CAA4C;IAC5C,gBAAgB,EAAE,MAAM,CAAC;IAEzB,2BAA2B;IAC3B,KAAK,EAAE,OAAO,CAAC;IAEf,wCAAwC;IACxC,gBAAgB,CAAC,EAAE,YAAY,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,oCAAoC;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,sDAAsD;IACtD,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,8BAA8B;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,qBAAqB;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,kCAAkC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,gCAAgC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,qCAAqC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,qBAAqB;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,qBAAqB;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,mEAAmE;IACnE,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB,8BAA8B;IAC9B,WAAW,CAAC,EAAE;QACZ,+CAA+C;QAC/C,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,gCAAgC;QAChC,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,8CAA8C;QAC9C,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,iBAAiB;IACjB,IAAI,EAAE,gBAAgB,GAAG,cAAc,GAAG,eAAe,GACnD,iBAAiB,GAAG,kBAAkB,GAAG,UAAU,GAAG,OAAO,CAAC;IAEpE,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE/B,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,mDAAmD;IACnD,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,oDAAoD;IACpD,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAE7B,8CAA8C;IAC9C,gBAAgB,EAAE,MAAM,CAAC;IAEzB,kCAAkC;IAClC,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,mCAAmC;IACnC,UAAU,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;IAE5C,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,4CAA4C;IAC5C,OAAO,EAAE,OAAO,CAAC;IAEjB,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;IAElB,8CAA8C;IAC9C,QAAQ,EAAE,MAAM,CAAC;IAEjB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,gCAAgC;IAChC,gBAAgB,EAAE,MAAM,CAAC;IAEzB,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,4BAA4B;IAC5B,WAAW,EAAE,MAAM,CAAC;IAEpB,iCAAiC;IACjC,YAAY,EAAE,MAAM,CAAC;IAErB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;IAEpB,2CAA2C;IAC3C,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAC;IAEnB,mBAAmB;IACnB,IAAI,EAAE,UAAU,GAAG,gBAAgB,CAAC;IAEpC,kCAAkC;IAClC,SAAS,EAAE,MAAM,CAAC;IAElB,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,yDAAyD;IACzD,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,gEAAgE;IAChE,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,mCAAmC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,gFAAgF;IAChF,UAAU,CAAC,EAAE,eAAe,GAAG,wBAAwB,GAAG,gBAAgB,CAAC;CAC5E;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAC;IAEpB,wDAAwD;IACxD,YAAY,EAAE,MAAM,CAAC;IAErB,2CAA2C;IAC3C,YAAY,EAAE,MAAM,CAAC;IAErB,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;IAEpB,kCAAkC;IAClC,kBAAkB,EAAE,MAAM,CAAC;IAE3B,2CAA2C;IAC3C,aAAa,EAAE,MAAM,CAAC;IAEtB,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;IAElB,2CAA2C;IAC3C,eAAe,EAAE,MAAM,CAAC;IAExB,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IAEpB,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAC;IAEjB,+BAA+B;IAC/B,cAAc,EAAE,aAAa,EAAE,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE;QACN,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,SAAS,EAAE;QACT,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,KAAK,EAAE;QACL,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;IAGjC,IAAI,EAAE,MAAM;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;gBAFpC,OAAO,EAAE,MAAM,EACR,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,YAAA;CAKvC;AAED,qBAAa,kBAAmB,SAAQ,iBAAiB;gBAErD,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAQhC;AAED,qBAAa,kBAAmB,SAAQ,iBAAiB;gBAC3C,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAI3D;AAED;;GAEG;AACH,YAAY,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CodeMie Agent Types
|
|
3
|
+
*
|
|
4
|
+
* Core TypeScript definitions for the CodeMie native coding agent
|
|
5
|
+
* using LangChain v1.0+ and LangGraph v1.0+
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Error types for the agent
|
|
9
|
+
*/
|
|
10
|
+
export class CodeMieAgentError extends Error {
|
|
11
|
+
code;
|
|
12
|
+
details;
|
|
13
|
+
constructor(message, code, details) {
|
|
14
|
+
super(message);
|
|
15
|
+
this.code = code;
|
|
16
|
+
this.details = details;
|
|
17
|
+
this.name = 'CodeMieAgentError';
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
export class ToolExecutionError extends CodeMieAgentError {
|
|
21
|
+
constructor(toolName, message, details) {
|
|
22
|
+
super(`Tool '${toolName}' failed: ${message}`, 'TOOL_EXECUTION_ERROR', {
|
|
23
|
+
toolName,
|
|
24
|
+
...details
|
|
25
|
+
});
|
|
26
|
+
this.name = 'ToolExecutionError';
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export class ConfigurationError extends CodeMieAgentError {
|
|
30
|
+
constructor(message, details) {
|
|
31
|
+
super(message, 'CONFIGURATION_ERROR', details);
|
|
32
|
+
this.name = 'ConfigurationError';
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/agents/codemie-code/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA8SH;;GAEG;AACH,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAGjC;IACA;IAHT,YACE,OAAe,EACR,IAAY,EACZ,OAA6B;QAEpC,KAAK,CAAC,OAAO,CAAC,CAAC;QAHR,SAAI,GAAJ,IAAI,CAAQ;QACZ,YAAO,GAAP,OAAO,CAAsB;QAGpC,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,iBAAiB;IACvD,YACE,QAAgB,EAChB,OAAe,EACf,OAA6B;QAE7B,KAAK,CAAC,SAAS,QAAQ,aAAa,OAAO,EAAE,EAAE,sBAAsB,EAAE;YACrE,QAAQ;YACR,GAAG,OAAO;SACX,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,iBAAiB;IACvD,YAAY,OAAe,EAAE,OAA6B;QACxD,KAAK,CAAC,OAAO,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { CodeMieAgent } from './agent.js';
|
|
2
|
+
import { type ClipboardImage } from '../../utils/clipboard.js';
|
|
3
|
+
/**
|
|
4
|
+
* Terminal UI interface for CodeMie Agent using Clack
|
|
5
|
+
*/
|
|
6
|
+
export declare class CodeMieTerminalUI {
|
|
7
|
+
private agent;
|
|
8
|
+
private currentSpinner?;
|
|
9
|
+
constructor(agent: CodeMieAgent);
|
|
10
|
+
/**
|
|
11
|
+
* Start interactive terminal session
|
|
12
|
+
*/
|
|
13
|
+
startInteractive(): Promise<void>;
|
|
14
|
+
/**
|
|
15
|
+
* Get input from user with Shift+Enter multiline support and image pasting
|
|
16
|
+
*/
|
|
17
|
+
private getMultilineInput;
|
|
18
|
+
/**
|
|
19
|
+
* Fallback input method for environments without raw mode
|
|
20
|
+
*/
|
|
21
|
+
private getFallbackInput;
|
|
22
|
+
/**
|
|
23
|
+
* Handle special commands
|
|
24
|
+
*/
|
|
25
|
+
private handleCommand;
|
|
26
|
+
/**
|
|
27
|
+
* Execute task with modern UI feedback
|
|
28
|
+
*/
|
|
29
|
+
private executeTaskWithUI;
|
|
30
|
+
/**
|
|
31
|
+
* Show agent statistics
|
|
32
|
+
*/
|
|
33
|
+
private showStats;
|
|
34
|
+
/**
|
|
35
|
+
* Show current configuration
|
|
36
|
+
*/
|
|
37
|
+
private showConfig;
|
|
38
|
+
/**
|
|
39
|
+
* Run health check with UI feedback
|
|
40
|
+
*/
|
|
41
|
+
private runHealthCheck;
|
|
42
|
+
/**
|
|
43
|
+
* Format uptime duration
|
|
44
|
+
*/
|
|
45
|
+
private formatUptime;
|
|
46
|
+
/**
|
|
47
|
+
* Execute a single task with minimal UI (for non-interactive mode)
|
|
48
|
+
*/
|
|
49
|
+
executeSingleTask(task: string, images?: ClipboardImage[]): Promise<string>;
|
|
50
|
+
/**
|
|
51
|
+
* Show a welcome message for single task execution
|
|
52
|
+
*/
|
|
53
|
+
showTaskWelcome(task: string): void;
|
|
54
|
+
/**
|
|
55
|
+
* Show task completion message
|
|
56
|
+
*/
|
|
57
|
+
showTaskComplete(): void;
|
|
58
|
+
/**
|
|
59
|
+
* Show error message
|
|
60
|
+
*/
|
|
61
|
+
showError(error: string): void;
|
|
62
|
+
/**
|
|
63
|
+
* Check if we should show detailed information for a tool
|
|
64
|
+
*/
|
|
65
|
+
private shouldShowDetails;
|
|
66
|
+
/**
|
|
67
|
+
* Show additional tool details
|
|
68
|
+
*/
|
|
69
|
+
private showToolDetails;
|
|
70
|
+
/**
|
|
71
|
+
* Show task completion summary with token usage
|
|
72
|
+
*/
|
|
73
|
+
private showTaskSummary;
|
|
74
|
+
/**
|
|
75
|
+
* Show detailed execution steps breakdown
|
|
76
|
+
*/
|
|
77
|
+
private showExecutionSteps;
|
|
78
|
+
/**
|
|
79
|
+
* Cleanup resources
|
|
80
|
+
*/
|
|
81
|
+
dispose(): void;
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=ui.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../src/agents/codemie-code/ui.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAI1C,OAAO,EAAwC,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAErG;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,cAAc,CAAC,CAAM;gBAEjB,KAAK,EAAE,YAAY;IAI/B;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IA2CvC;;OAEG;YACW,iBAAiB;IAoJ/B;;OAEG;YACW,gBAAgB;IAqB9B;;OAEG;YACW,aAAa;IAsD3B;;OAEG;YACW,iBAAiB;IAkG/B;;OAEG;YACW,SAAS;IA8BvB;;OAEG;YACW,UAAU;IAoBxB;;OAEG;YACW,cAAc;IA4B5B;;OAEG;IACH,OAAO,CAAC,YAAY;IAcpB;;OAEG;IACG,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,GAAE,cAAc,EAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IA4ErF;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKnC;;OAEG;IACH,gBAAgB,IAAI,IAAI;IAIxB;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI9B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAKzB;;OAEG;IACH,OAAO,CAAC,eAAe;IA4CvB;;OAEG;IACH,OAAO,CAAC,eAAe;IAsBvB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAmC1B;;OAEG;IACH,OAAO,IAAI,IAAI;CAMhB"}
|