@majkapp/plugin-kit 3.7.2 → 3.7.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/dist/generator/cli.js +0 -0
- package/dist/majk-interface-types.d.ts +1103 -0
- package/dist/majk-interface-types.d.ts.map +1 -1
- package/dist/transports.d.ts +59 -0
- package/dist/transports.d.ts.map +1 -0
- package/dist/transports.js +171 -0
- package/package.json +1 -1
|
@@ -1882,6 +1882,1104 @@ export interface SkillsAPI {
|
|
|
1882
1882
|
*/
|
|
1883
1883
|
on(eventType: SkillEventType, handler: (event: SkillEvent) => void): Promise<Unsubscribe>;
|
|
1884
1884
|
}
|
|
1885
|
+
/**
|
|
1886
|
+
* Witness - Recursive structure for verification checks.
|
|
1887
|
+
* Used by delegation and batch services.
|
|
1888
|
+
*/
|
|
1889
|
+
export interface Witness {
|
|
1890
|
+
bash?: string | {
|
|
1891
|
+
command: string;
|
|
1892
|
+
stdout_contains?: string;
|
|
1893
|
+
stdout_not_contains?: string;
|
|
1894
|
+
stderr_contains?: string;
|
|
1895
|
+
exit_code?: number;
|
|
1896
|
+
};
|
|
1897
|
+
file?: {
|
|
1898
|
+
path: string;
|
|
1899
|
+
contains?: string;
|
|
1900
|
+
not_contains?: string;
|
|
1901
|
+
exists?: boolean;
|
|
1902
|
+
json_path?: string;
|
|
1903
|
+
equals?: any;
|
|
1904
|
+
};
|
|
1905
|
+
files?: string[];
|
|
1906
|
+
http?: {
|
|
1907
|
+
url: string;
|
|
1908
|
+
method?: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'HEAD';
|
|
1909
|
+
status?: number | number[];
|
|
1910
|
+
body_contains?: string;
|
|
1911
|
+
headers?: Record<string, string>;
|
|
1912
|
+
body?: any;
|
|
1913
|
+
};
|
|
1914
|
+
llm?: {
|
|
1915
|
+
prompt: string;
|
|
1916
|
+
file?: string;
|
|
1917
|
+
context?: string;
|
|
1918
|
+
};
|
|
1919
|
+
vision?: {
|
|
1920
|
+
image: string;
|
|
1921
|
+
checklist: string[];
|
|
1922
|
+
context?: string;
|
|
1923
|
+
};
|
|
1924
|
+
js?: {
|
|
1925
|
+
code?: string;
|
|
1926
|
+
file?: string;
|
|
1927
|
+
timeout?: number;
|
|
1928
|
+
};
|
|
1929
|
+
message?: {
|
|
1930
|
+
contains?: string;
|
|
1931
|
+
index?: number;
|
|
1932
|
+
from?: 'user' | 'assistant' | 'any';
|
|
1933
|
+
after_message?: number;
|
|
1934
|
+
};
|
|
1935
|
+
all?: Witness[];
|
|
1936
|
+
any?: Witness[];
|
|
1937
|
+
}
|
|
1938
|
+
/**
|
|
1939
|
+
* Result from running a witness verification
|
|
1940
|
+
*/
|
|
1941
|
+
export interface WitnessResult {
|
|
1942
|
+
passed: boolean;
|
|
1943
|
+
evidence: string;
|
|
1944
|
+
strength: 'hard' | 'soft';
|
|
1945
|
+
executionTimeMs: number;
|
|
1946
|
+
children?: WitnessResult[];
|
|
1947
|
+
}
|
|
1948
|
+
export type DelegationTaskStatus = 'pending' | 'running' | 'completed' | 'failed' | 'blocked' | 'abandoned';
|
|
1949
|
+
export interface DelegationTeammate {
|
|
1950
|
+
id: string;
|
|
1951
|
+
name: string;
|
|
1952
|
+
skills?: string[];
|
|
1953
|
+
description?: string;
|
|
1954
|
+
}
|
|
1955
|
+
export interface DelegationTaskResult {
|
|
1956
|
+
success: boolean;
|
|
1957
|
+
summary: string;
|
|
1958
|
+
witnessResults: Array<{
|
|
1959
|
+
witness: string;
|
|
1960
|
+
passed: boolean;
|
|
1961
|
+
evidence: string;
|
|
1962
|
+
}>;
|
|
1963
|
+
verification?: WitnessResult;
|
|
1964
|
+
}
|
|
1965
|
+
export interface DelegationTaskBlocker {
|
|
1966
|
+
summary: string;
|
|
1967
|
+
task: string;
|
|
1968
|
+
witness: Witness;
|
|
1969
|
+
evidence?: Witness;
|
|
1970
|
+
assignTo: string;
|
|
1971
|
+
reportedAt: Date | string;
|
|
1972
|
+
blockerTaskId?: string;
|
|
1973
|
+
}
|
|
1974
|
+
export interface DelegationRecentMessage {
|
|
1975
|
+
role: string;
|
|
1976
|
+
content: string;
|
|
1977
|
+
timestamp: Date | string;
|
|
1978
|
+
}
|
|
1979
|
+
export interface DelegationTaskStatusOutput {
|
|
1980
|
+
taskId: string;
|
|
1981
|
+
status: DelegationTaskStatus;
|
|
1982
|
+
teammateId: string;
|
|
1983
|
+
teammateName: string;
|
|
1984
|
+
result?: DelegationTaskResult;
|
|
1985
|
+
blocker?: DelegationTaskBlocker;
|
|
1986
|
+
recentMessages?: DelegationRecentMessage[];
|
|
1987
|
+
progress?: {
|
|
1988
|
+
messageCount: number;
|
|
1989
|
+
durationMs: number;
|
|
1990
|
+
};
|
|
1991
|
+
}
|
|
1992
|
+
export interface DelegationBlockerInfo {
|
|
1993
|
+
taskId: string;
|
|
1994
|
+
teammateId: string;
|
|
1995
|
+
teammateName: string;
|
|
1996
|
+
task: string;
|
|
1997
|
+
blocker: DelegationTaskBlocker;
|
|
1998
|
+
reportedAt: string;
|
|
1999
|
+
durationMs: number;
|
|
2000
|
+
}
|
|
2001
|
+
/**
|
|
2002
|
+
* Delegation API - Multi-agent task delegation with witness-based verification.
|
|
2003
|
+
*
|
|
2004
|
+
* @example
|
|
2005
|
+
* ```typescript
|
|
2006
|
+
* // List available teammates
|
|
2007
|
+
* const { teammates } = await ctx.majk.delegation.list_teammates();
|
|
2008
|
+
*
|
|
2009
|
+
* // Delegate a task
|
|
2010
|
+
* const result = await ctx.majk.delegation.delegate_task({
|
|
2011
|
+
* teammate: 'code-reviewer',
|
|
2012
|
+
* task: 'Review the auth module for security issues',
|
|
2013
|
+
* witness: { bash: 'npm test' }
|
|
2014
|
+
* });
|
|
2015
|
+
*
|
|
2016
|
+
* // Wait for completion
|
|
2017
|
+
* const status = await ctx.majk.delegation.await_task({
|
|
2018
|
+
* taskId: result.taskId
|
|
2019
|
+
* });
|
|
2020
|
+
* ```
|
|
2021
|
+
*/
|
|
2022
|
+
export interface DelegationAPI {
|
|
2023
|
+
/**
|
|
2024
|
+
* List all available teammates that can be delegated tasks to.
|
|
2025
|
+
*/
|
|
2026
|
+
list_teammates(): Promise<{
|
|
2027
|
+
teammates: DelegationTeammate[];
|
|
2028
|
+
count: number;
|
|
2029
|
+
_hint: string;
|
|
2030
|
+
}>;
|
|
2031
|
+
/**
|
|
2032
|
+
* Delegate a task to a teammate asynchronously.
|
|
2033
|
+
* Returns immediately with a task ID. The task runs in the background.
|
|
2034
|
+
*/
|
|
2035
|
+
delegate_task(input: {
|
|
2036
|
+
teammate: string;
|
|
2037
|
+
task: string;
|
|
2038
|
+
context?: Witness;
|
|
2039
|
+
witness: Witness;
|
|
2040
|
+
workingDirectory?: string;
|
|
2041
|
+
}): Promise<{
|
|
2042
|
+
taskId: string;
|
|
2043
|
+
teammateId: string;
|
|
2044
|
+
teammateName: string;
|
|
2045
|
+
conversationId: string;
|
|
2046
|
+
status: 'running';
|
|
2047
|
+
_hint: string;
|
|
2048
|
+
}>;
|
|
2049
|
+
/**
|
|
2050
|
+
* Check the current status of a delegated task.
|
|
2051
|
+
*/
|
|
2052
|
+
check_task_status(input: {
|
|
2053
|
+
taskId: string;
|
|
2054
|
+
messageCount?: number;
|
|
2055
|
+
}): Promise<DelegationTaskStatusOutput>;
|
|
2056
|
+
/**
|
|
2057
|
+
* Wait for a task to complete.
|
|
2058
|
+
* Blocks until the task finishes or timeout is reached.
|
|
2059
|
+
*/
|
|
2060
|
+
await_task(input: {
|
|
2061
|
+
taskId: string;
|
|
2062
|
+
timeoutMs?: number;
|
|
2063
|
+
}): Promise<DelegationTaskStatusOutput>;
|
|
2064
|
+
/**
|
|
2065
|
+
* Wait for multiple tasks to complete (fan-out/fan-in pattern).
|
|
2066
|
+
*/
|
|
2067
|
+
await_tasks(input: {
|
|
2068
|
+
taskIds: string[];
|
|
2069
|
+
timeoutMs?: number;
|
|
2070
|
+
}): Promise<{
|
|
2071
|
+
results: DelegationTaskStatusOutput[];
|
|
2072
|
+
summary: {
|
|
2073
|
+
total: number;
|
|
2074
|
+
completed: number;
|
|
2075
|
+
failed: number;
|
|
2076
|
+
blocked: number;
|
|
2077
|
+
stillRunning: number;
|
|
2078
|
+
};
|
|
2079
|
+
allCompleted: boolean;
|
|
2080
|
+
allSucceeded: boolean;
|
|
2081
|
+
}>;
|
|
2082
|
+
/**
|
|
2083
|
+
* Run a witness to verify something right now.
|
|
2084
|
+
*/
|
|
2085
|
+
check_witness(input: {
|
|
2086
|
+
witness: Witness;
|
|
2087
|
+
workingDirectory?: string;
|
|
2088
|
+
}): Promise<WitnessResult>;
|
|
2089
|
+
/**
|
|
2090
|
+
* List all currently blocked tasks with their blocker details.
|
|
2091
|
+
*/
|
|
2092
|
+
get_blockers(input?: {
|
|
2093
|
+
teammateId?: string;
|
|
2094
|
+
assignedTo?: string;
|
|
2095
|
+
}): Promise<{
|
|
2096
|
+
blockers: DelegationBlockerInfo[];
|
|
2097
|
+
count: number;
|
|
2098
|
+
}>;
|
|
2099
|
+
/**
|
|
2100
|
+
* Resolve a blocker by updating the task, witness, or sending instructions.
|
|
2101
|
+
*/
|
|
2102
|
+
resolve_blocker(input: {
|
|
2103
|
+
taskId: string;
|
|
2104
|
+
action: 'update_task' | 'update_witness' | 'send_instruction' | 'unblock';
|
|
2105
|
+
newTask?: string;
|
|
2106
|
+
newWitness?: Witness;
|
|
2107
|
+
instruction?: string;
|
|
2108
|
+
resolution?: string;
|
|
2109
|
+
}): Promise<{
|
|
2110
|
+
taskId: string;
|
|
2111
|
+
action: string;
|
|
2112
|
+
previousStatus: DelegationTaskStatus;
|
|
2113
|
+
newStatus: DelegationTaskStatus;
|
|
2114
|
+
message: string;
|
|
2115
|
+
}>;
|
|
2116
|
+
}
|
|
2117
|
+
export type BatchJobStatus = 'pending' | 'running' | 'paused' | 'completed' | 'failed' | 'cancelled';
|
|
2118
|
+
export type BatchItemStatus = 'pending' | 'running' | 'completed' | 'failed' | 'skipped';
|
|
2119
|
+
export interface BatchInputSource {
|
|
2120
|
+
type: 'list' | 'directory' | 'glob';
|
|
2121
|
+
items?: any[];
|
|
2122
|
+
path?: string;
|
|
2123
|
+
recursive?: boolean;
|
|
2124
|
+
extensions?: string[];
|
|
2125
|
+
exclude?: string[];
|
|
2126
|
+
pattern?: string;
|
|
2127
|
+
basePath?: string;
|
|
2128
|
+
ignore?: string[];
|
|
2129
|
+
}
|
|
2130
|
+
export interface BatchProcessorConfig {
|
|
2131
|
+
type: 'teammate' | 'rpc' | 'witness' | 'script';
|
|
2132
|
+
teammateId?: string;
|
|
2133
|
+
taskTemplate?: string;
|
|
2134
|
+
context?: Witness;
|
|
2135
|
+
witness?: Witness;
|
|
2136
|
+
workingDirectory?: string;
|
|
2137
|
+
taskTimeoutMs?: number;
|
|
2138
|
+
pluginId?: string;
|
|
2139
|
+
serviceName?: string;
|
|
2140
|
+
functionName?: string;
|
|
2141
|
+
input?: Record<string, any>;
|
|
2142
|
+
code?: string;
|
|
2143
|
+
file?: string;
|
|
2144
|
+
timeoutMs?: number;
|
|
2145
|
+
}
|
|
2146
|
+
export interface BatchExecutionConfig {
|
|
2147
|
+
maxParallelism?: number;
|
|
2148
|
+
itemTimeoutMs?: number;
|
|
2149
|
+
jobTimeoutMs?: number;
|
|
2150
|
+
retry?: {
|
|
2151
|
+
maxAttempts?: number;
|
|
2152
|
+
backoff?: 'none' | 'fixed' | 'linear' | 'exponential';
|
|
2153
|
+
initialDelayMs?: number;
|
|
2154
|
+
maxDelayMs?: number;
|
|
2155
|
+
jitter?: boolean;
|
|
2156
|
+
};
|
|
2157
|
+
}
|
|
2158
|
+
export interface BatchProgress {
|
|
2159
|
+
totalItems: number;
|
|
2160
|
+
completedItems: number;
|
|
2161
|
+
failedItems: number;
|
|
2162
|
+
skippedItems?: number;
|
|
2163
|
+
runningItems?: number;
|
|
2164
|
+
pendingItems?: number;
|
|
2165
|
+
}
|
|
2166
|
+
export interface BatchJob {
|
|
2167
|
+
id: string;
|
|
2168
|
+
name: string;
|
|
2169
|
+
status: BatchJobStatus;
|
|
2170
|
+
statusReason?: string;
|
|
2171
|
+
createdAt: Date | string;
|
|
2172
|
+
startedAt?: Date | string;
|
|
2173
|
+
completedAt?: Date | string;
|
|
2174
|
+
progress: BatchProgress;
|
|
2175
|
+
resultSummary?: any;
|
|
2176
|
+
tags?: string[];
|
|
2177
|
+
}
|
|
2178
|
+
export interface BatchJobItem {
|
|
2179
|
+
id: string;
|
|
2180
|
+
index: number;
|
|
2181
|
+
status: BatchItemStatus;
|
|
2182
|
+
data: any;
|
|
2183
|
+
result?: any;
|
|
2184
|
+
error?: string;
|
|
2185
|
+
errorCode?: string;
|
|
2186
|
+
attempts?: number;
|
|
2187
|
+
durationMs?: number;
|
|
2188
|
+
}
|
|
2189
|
+
/**
|
|
2190
|
+
* Batch API - Batch processing for large sets of items.
|
|
2191
|
+
*
|
|
2192
|
+
* @example
|
|
2193
|
+
* ```typescript
|
|
2194
|
+
* // Create a batch job
|
|
2195
|
+
* const { job } = await ctx.majk.batch.create_batch_job({
|
|
2196
|
+
* name: 'Process files',
|
|
2197
|
+
* input: { source: { type: 'glob', pattern: 'src/**\/*.ts' } },
|
|
2198
|
+
* processor: {
|
|
2199
|
+
* type: 'teammate',
|
|
2200
|
+
* teammateId: 'code-reviewer',
|
|
2201
|
+
* taskTemplate: 'Review {{item}}'
|
|
2202
|
+
* },
|
|
2203
|
+
* autoStart: true
|
|
2204
|
+
* });
|
|
2205
|
+
*
|
|
2206
|
+
* // Wait for completion
|
|
2207
|
+
* const result = await ctx.majk.batch.await_batch_job({ jobId: job.id });
|
|
2208
|
+
* ```
|
|
2209
|
+
*/
|
|
2210
|
+
export interface BatchAPI {
|
|
2211
|
+
/**
|
|
2212
|
+
* Create a new batch processing job.
|
|
2213
|
+
*/
|
|
2214
|
+
create_batch_job(input: {
|
|
2215
|
+
name: string;
|
|
2216
|
+
description?: string;
|
|
2217
|
+
input: {
|
|
2218
|
+
source: BatchInputSource;
|
|
2219
|
+
transformTemplate?: string;
|
|
2220
|
+
skipIfTemplate?: string;
|
|
2221
|
+
limit?: number;
|
|
2222
|
+
};
|
|
2223
|
+
processor: BatchProcessorConfig;
|
|
2224
|
+
execution?: BatchExecutionConfig;
|
|
2225
|
+
tags?: string[];
|
|
2226
|
+
metadata?: Record<string, any>;
|
|
2227
|
+
autoStart?: boolean;
|
|
2228
|
+
}): Promise<{
|
|
2229
|
+
job: BatchJob;
|
|
2230
|
+
_hint: string;
|
|
2231
|
+
}>;
|
|
2232
|
+
/**
|
|
2233
|
+
* Start a pending batch job.
|
|
2234
|
+
*/
|
|
2235
|
+
start_batch_job(input: {
|
|
2236
|
+
jobId: string;
|
|
2237
|
+
}): Promise<{
|
|
2238
|
+
job: BatchJob;
|
|
2239
|
+
_hint: string;
|
|
2240
|
+
}>;
|
|
2241
|
+
/**
|
|
2242
|
+
* Pause a running batch job.
|
|
2243
|
+
*/
|
|
2244
|
+
pause_batch_job(input: {
|
|
2245
|
+
jobId: string;
|
|
2246
|
+
reason?: string;
|
|
2247
|
+
}): Promise<{
|
|
2248
|
+
job: BatchJob;
|
|
2249
|
+
_hint: string;
|
|
2250
|
+
}>;
|
|
2251
|
+
/**
|
|
2252
|
+
* Resume a paused batch job.
|
|
2253
|
+
*/
|
|
2254
|
+
resume_batch_job(input: {
|
|
2255
|
+
jobId: string;
|
|
2256
|
+
}): Promise<{
|
|
2257
|
+
job: BatchJob;
|
|
2258
|
+
}>;
|
|
2259
|
+
/**
|
|
2260
|
+
* Cancel a batch job.
|
|
2261
|
+
*/
|
|
2262
|
+
cancel_batch_job(input: {
|
|
2263
|
+
jobId: string;
|
|
2264
|
+
}): Promise<{
|
|
2265
|
+
job: BatchJob;
|
|
2266
|
+
}>;
|
|
2267
|
+
/**
|
|
2268
|
+
* Get the current status and progress of a batch job.
|
|
2269
|
+
*/
|
|
2270
|
+
check_batch_job(input: {
|
|
2271
|
+
jobId: string;
|
|
2272
|
+
includeFailedItems?: boolean;
|
|
2273
|
+
failedItemsLimit?: number;
|
|
2274
|
+
}): Promise<{
|
|
2275
|
+
job: {
|
|
2276
|
+
id: string;
|
|
2277
|
+
name: string;
|
|
2278
|
+
status: BatchJobStatus;
|
|
2279
|
+
statusReason?: string;
|
|
2280
|
+
createdAt: Date | string;
|
|
2281
|
+
startedAt?: Date | string;
|
|
2282
|
+
completedAt?: Date | string;
|
|
2283
|
+
};
|
|
2284
|
+
progress: BatchProgress;
|
|
2285
|
+
resultSummary?: any;
|
|
2286
|
+
failedItems?: Array<{
|
|
2287
|
+
id: string;
|
|
2288
|
+
index: number;
|
|
2289
|
+
data: any;
|
|
2290
|
+
error?: string;
|
|
2291
|
+
errorCode?: string;
|
|
2292
|
+
}>;
|
|
2293
|
+
}>;
|
|
2294
|
+
/**
|
|
2295
|
+
* Wait for a batch job to complete.
|
|
2296
|
+
*/
|
|
2297
|
+
await_batch_job(input: {
|
|
2298
|
+
jobId: string;
|
|
2299
|
+
timeoutMs?: number;
|
|
2300
|
+
ignoreBlockers?: boolean;
|
|
2301
|
+
}): Promise<{
|
|
2302
|
+
job: {
|
|
2303
|
+
id: string;
|
|
2304
|
+
name: string;
|
|
2305
|
+
status: BatchJobStatus;
|
|
2306
|
+
statusReason?: string;
|
|
2307
|
+
createdAt: Date | string;
|
|
2308
|
+
startedAt?: Date | string;
|
|
2309
|
+
completedAt?: Date | string;
|
|
2310
|
+
};
|
|
2311
|
+
resultSummary?: any;
|
|
2312
|
+
finalProgress: BatchProgress;
|
|
2313
|
+
hasBlockers?: boolean;
|
|
2314
|
+
blockedCount?: number;
|
|
2315
|
+
}>;
|
|
2316
|
+
/**
|
|
2317
|
+
* List batch jobs with optional filters.
|
|
2318
|
+
*/
|
|
2319
|
+
list_batch_jobs(input?: {
|
|
2320
|
+
status?: BatchJobStatus | BatchJobStatus[];
|
|
2321
|
+
tags?: string[];
|
|
2322
|
+
limit?: number;
|
|
2323
|
+
offset?: number;
|
|
2324
|
+
}): Promise<{
|
|
2325
|
+
jobs: Array<{
|
|
2326
|
+
id: string;
|
|
2327
|
+
name: string;
|
|
2328
|
+
status: BatchJobStatus;
|
|
2329
|
+
progress: {
|
|
2330
|
+
total: number;
|
|
2331
|
+
completed: number;
|
|
2332
|
+
failed: number;
|
|
2333
|
+
};
|
|
2334
|
+
createdAt: Date | string;
|
|
2335
|
+
tags?: string[];
|
|
2336
|
+
}>;
|
|
2337
|
+
total: number;
|
|
2338
|
+
hasMore: boolean;
|
|
2339
|
+
}>;
|
|
2340
|
+
/**
|
|
2341
|
+
* Get items from a batch job with optional status filter.
|
|
2342
|
+
*/
|
|
2343
|
+
get_batch_job_items(input: {
|
|
2344
|
+
jobId: string;
|
|
2345
|
+
status?: BatchItemStatus | BatchItemStatus[];
|
|
2346
|
+
limit?: number;
|
|
2347
|
+
offset?: number;
|
|
2348
|
+
}): Promise<{
|
|
2349
|
+
items: BatchJobItem[];
|
|
2350
|
+
total: number;
|
|
2351
|
+
hasMore: boolean;
|
|
2352
|
+
}>;
|
|
2353
|
+
/**
|
|
2354
|
+
* Get blocked items from a batch job.
|
|
2355
|
+
*/
|
|
2356
|
+
get_blocked_batch_items(input: {
|
|
2357
|
+
jobId: string;
|
|
2358
|
+
limit?: number;
|
|
2359
|
+
}): Promise<{
|
|
2360
|
+
items: Array<{
|
|
2361
|
+
id: string;
|
|
2362
|
+
index: number;
|
|
2363
|
+
data: any;
|
|
2364
|
+
error?: string;
|
|
2365
|
+
errorCode?: string;
|
|
2366
|
+
originalData?: any;
|
|
2367
|
+
}>;
|
|
2368
|
+
total: number;
|
|
2369
|
+
_hint?: string;
|
|
2370
|
+
}>;
|
|
2371
|
+
/**
|
|
2372
|
+
* Create a new job to replay failed items from a completed job.
|
|
2373
|
+
*/
|
|
2374
|
+
replay_failed_batch_items(input: {
|
|
2375
|
+
jobId: string;
|
|
2376
|
+
}): Promise<{
|
|
2377
|
+
job: BatchJob;
|
|
2378
|
+
_hint: string;
|
|
2379
|
+
}>;
|
|
2380
|
+
/**
|
|
2381
|
+
* Clone a batch job to create a new one with the same configuration.
|
|
2382
|
+
*/
|
|
2383
|
+
clone_batch_job(input: {
|
|
2384
|
+
jobId: string;
|
|
2385
|
+
name?: string;
|
|
2386
|
+
tags?: string[];
|
|
2387
|
+
}): Promise<{
|
|
2388
|
+
job: BatchJob;
|
|
2389
|
+
_hint: string;
|
|
2390
|
+
}>;
|
|
2391
|
+
}
|
|
2392
|
+
export interface ReportSummary {
|
|
2393
|
+
id: string;
|
|
2394
|
+
path: string;
|
|
2395
|
+
uri: string;
|
|
2396
|
+
title?: string;
|
|
2397
|
+
tags?: string[];
|
|
2398
|
+
status?: string;
|
|
2399
|
+
hasWitness: boolean;
|
|
2400
|
+
preview?: string;
|
|
2401
|
+
updatedAt: string;
|
|
2402
|
+
viewPath?: string;
|
|
2403
|
+
}
|
|
2404
|
+
export interface ReportValidation {
|
|
2405
|
+
status: 'valid' | 'invalid' | 'skipped' | 'no-witness';
|
|
2406
|
+
witness?: WitnessResult;
|
|
2407
|
+
}
|
|
2408
|
+
export interface ReportWriteResult {
|
|
2409
|
+
id: string;
|
|
2410
|
+
path: string;
|
|
2411
|
+
uri: string;
|
|
2412
|
+
title?: string;
|
|
2413
|
+
hasWitness: boolean;
|
|
2414
|
+
created: boolean;
|
|
2415
|
+
}
|
|
2416
|
+
export interface ReportReadResult {
|
|
2417
|
+
id: string;
|
|
2418
|
+
path: string;
|
|
2419
|
+
uri: string;
|
|
2420
|
+
title?: string;
|
|
2421
|
+
tags?: string[];
|
|
2422
|
+
status?: string;
|
|
2423
|
+
content: string;
|
|
2424
|
+
totalLines: number;
|
|
2425
|
+
range?: {
|
|
2426
|
+
start: number;
|
|
2427
|
+
end: number;
|
|
2428
|
+
};
|
|
2429
|
+
validation: ReportValidation;
|
|
2430
|
+
updatedAt: string;
|
|
2431
|
+
viewPath?: string;
|
|
2432
|
+
viewName?: string;
|
|
2433
|
+
}
|
|
2434
|
+
export interface ReportView {
|
|
2435
|
+
id: string;
|
|
2436
|
+
name: string;
|
|
2437
|
+
isDefault: boolean;
|
|
2438
|
+
reportCount: number;
|
|
2439
|
+
}
|
|
2440
|
+
export interface ReportViewTreeNode {
|
|
2441
|
+
path: string;
|
|
2442
|
+
name: string;
|
|
2443
|
+
report?: ReportSummary;
|
|
2444
|
+
children: ReportViewTreeNode[];
|
|
2445
|
+
}
|
|
2446
|
+
export interface ReportEdit {
|
|
2447
|
+
line?: number;
|
|
2448
|
+
lines?: [number, number];
|
|
2449
|
+
content?: string;
|
|
2450
|
+
after?: number;
|
|
2451
|
+
delete?: true;
|
|
2452
|
+
}
|
|
2453
|
+
/**
|
|
2454
|
+
* Reports API - Knowledge management with witness-based validation.
|
|
2455
|
+
*
|
|
2456
|
+
* @example
|
|
2457
|
+
* ```typescript
|
|
2458
|
+
* // Write a report
|
|
2459
|
+
* const result = await ctx.majk.reports.write_report({
|
|
2460
|
+
* path: '/research/findings.md',
|
|
2461
|
+
* content: '# Findings\n...',
|
|
2462
|
+
* tags: ['research']
|
|
2463
|
+
* });
|
|
2464
|
+
*
|
|
2465
|
+
* // Read a report
|
|
2466
|
+
* const report = await ctx.majk.reports.read_report({
|
|
2467
|
+
* report: result.id
|
|
2468
|
+
* });
|
|
2469
|
+
*
|
|
2470
|
+
* // List reports
|
|
2471
|
+
* const { reports } = await ctx.majk.reports.list_reports({
|
|
2472
|
+
* pathPrefix: '/research/'
|
|
2473
|
+
* });
|
|
2474
|
+
* ```
|
|
2475
|
+
*/
|
|
2476
|
+
export interface ReportsAPI {
|
|
2477
|
+
/**
|
|
2478
|
+
* Write a report to the knowledge base.
|
|
2479
|
+
*/
|
|
2480
|
+
write_report(input: {
|
|
2481
|
+
content: string;
|
|
2482
|
+
path: string;
|
|
2483
|
+
title?: string;
|
|
2484
|
+
partOf?: {
|
|
2485
|
+
parent: string;
|
|
2486
|
+
placeholder?: string;
|
|
2487
|
+
};
|
|
2488
|
+
refs?: string[];
|
|
2489
|
+
tags?: string[];
|
|
2490
|
+
status?: string;
|
|
2491
|
+
witness?: Witness;
|
|
2492
|
+
}): Promise<ReportWriteResult>;
|
|
2493
|
+
/**
|
|
2494
|
+
* Read a report with embedded content expansion.
|
|
2495
|
+
*/
|
|
2496
|
+
read_report(input: {
|
|
2497
|
+
report: string;
|
|
2498
|
+
view?: string;
|
|
2499
|
+
expand?: 'link' | 'inline' | 'inline-linked';
|
|
2500
|
+
expandDepth?: number;
|
|
2501
|
+
offset?: number;
|
|
2502
|
+
limit?: number;
|
|
2503
|
+
validate?: boolean;
|
|
2504
|
+
workingDirectory?: string;
|
|
2505
|
+
}): Promise<ReportReadResult>;
|
|
2506
|
+
/**
|
|
2507
|
+
* List and search reports.
|
|
2508
|
+
*/
|
|
2509
|
+
list_reports(input?: {
|
|
2510
|
+
view?: string;
|
|
2511
|
+
pathPrefix?: string;
|
|
2512
|
+
tags?: string[];
|
|
2513
|
+
status?: string;
|
|
2514
|
+
hasWitness?: boolean;
|
|
2515
|
+
search?: string;
|
|
2516
|
+
limit?: number;
|
|
2517
|
+
offset?: number;
|
|
2518
|
+
}): Promise<{
|
|
2519
|
+
reports: ReportSummary[];
|
|
2520
|
+
total: number;
|
|
2521
|
+
hasMore: boolean;
|
|
2522
|
+
}>;
|
|
2523
|
+
/**
|
|
2524
|
+
* Delete a report from the knowledge base.
|
|
2525
|
+
*/
|
|
2526
|
+
delete_report(input: {
|
|
2527
|
+
report: string;
|
|
2528
|
+
}): Promise<{
|
|
2529
|
+
deleted: boolean;
|
|
2530
|
+
}>;
|
|
2531
|
+
/**
|
|
2532
|
+
* Batch move reports.
|
|
2533
|
+
*/
|
|
2534
|
+
reorganize_reports(input: {
|
|
2535
|
+
moves: Array<{
|
|
2536
|
+
from: string;
|
|
2537
|
+
to: string;
|
|
2538
|
+
}>;
|
|
2539
|
+
}): Promise<{
|
|
2540
|
+
message: string;
|
|
2541
|
+
moved: Array<{
|
|
2542
|
+
from: string;
|
|
2543
|
+
to: string;
|
|
2544
|
+
id: string;
|
|
2545
|
+
}>;
|
|
2546
|
+
structure: Record<string, string[]>;
|
|
2547
|
+
}>;
|
|
2548
|
+
/**
|
|
2549
|
+
* Start a new report from a template.
|
|
2550
|
+
*/
|
|
2551
|
+
start_report(input: {
|
|
2552
|
+
template: string;
|
|
2553
|
+
topic: string;
|
|
2554
|
+
sections?: Record<string, string>;
|
|
2555
|
+
refs?: Record<string, string | string[]>;
|
|
2556
|
+
validateOnUpdate?: boolean;
|
|
2557
|
+
}): Promise<{
|
|
2558
|
+
handle: string;
|
|
2559
|
+
preview: string;
|
|
2560
|
+
missing: {
|
|
2561
|
+
sections: string[];
|
|
2562
|
+
refs: string[];
|
|
2563
|
+
};
|
|
2564
|
+
warnings?: string[];
|
|
2565
|
+
}>;
|
|
2566
|
+
/**
|
|
2567
|
+
* Update a draft report with new sections or refs.
|
|
2568
|
+
*/
|
|
2569
|
+
update_draft(input: {
|
|
2570
|
+
handle: string;
|
|
2571
|
+
sections?: Record<string, string>;
|
|
2572
|
+
refs?: Record<string, string | string[]>;
|
|
2573
|
+
}): Promise<{
|
|
2574
|
+
preview: string;
|
|
2575
|
+
missing: {
|
|
2576
|
+
sections: string[];
|
|
2577
|
+
refs: string[];
|
|
2578
|
+
};
|
|
2579
|
+
validation?: any;
|
|
2580
|
+
}>;
|
|
2581
|
+
/**
|
|
2582
|
+
* Preview a draft report with optional validation.
|
|
2583
|
+
*/
|
|
2584
|
+
preview_draft(input: {
|
|
2585
|
+
handle: string;
|
|
2586
|
+
validate?: boolean;
|
|
2587
|
+
}): Promise<{
|
|
2588
|
+
rendered: string;
|
|
2589
|
+
missing: {
|
|
2590
|
+
sections: string[];
|
|
2591
|
+
refs: string[];
|
|
2592
|
+
};
|
|
2593
|
+
validation?: any;
|
|
2594
|
+
ready: boolean;
|
|
2595
|
+
}>;
|
|
2596
|
+
/**
|
|
2597
|
+
* Finalize a draft report - validate and commit.
|
|
2598
|
+
*/
|
|
2599
|
+
finalize_report(input: {
|
|
2600
|
+
handle: string;
|
|
2601
|
+
force?: boolean;
|
|
2602
|
+
}): Promise<{
|
|
2603
|
+
success: boolean;
|
|
2604
|
+
report?: ReportWriteResult;
|
|
2605
|
+
validation?: any;
|
|
2606
|
+
error?: {
|
|
2607
|
+
code: string;
|
|
2608
|
+
message: string;
|
|
2609
|
+
};
|
|
2610
|
+
suggestions?: string[];
|
|
2611
|
+
}>;
|
|
2612
|
+
/**
|
|
2613
|
+
* Update an existing report with line-based edits.
|
|
2614
|
+
*/
|
|
2615
|
+
update_report(input: {
|
|
2616
|
+
report: string;
|
|
2617
|
+
edits: ReportEdit[];
|
|
2618
|
+
validate?: boolean;
|
|
2619
|
+
}): Promise<{
|
|
2620
|
+
report: ReportWriteResult;
|
|
2621
|
+
validation?: {
|
|
2622
|
+
passed: boolean;
|
|
2623
|
+
status: string;
|
|
2624
|
+
message?: string;
|
|
2625
|
+
};
|
|
2626
|
+
}>;
|
|
2627
|
+
/**
|
|
2628
|
+
* Create a new view with an LLM-powered organization strategy.
|
|
2629
|
+
*/
|
|
2630
|
+
create_view(input: {
|
|
2631
|
+
name: string;
|
|
2632
|
+
philosophy: string;
|
|
2633
|
+
categorizeExisting?: boolean;
|
|
2634
|
+
}): Promise<{
|
|
2635
|
+
id: string;
|
|
2636
|
+
name: string;
|
|
2637
|
+
reportsCategorized?: number;
|
|
2638
|
+
}>;
|
|
2639
|
+
/**
|
|
2640
|
+
* List all views in the conversation.
|
|
2641
|
+
*/
|
|
2642
|
+
list_views(): Promise<{
|
|
2643
|
+
views: ReportView[];
|
|
2644
|
+
}>;
|
|
2645
|
+
/**
|
|
2646
|
+
* Get the tree structure of a view.
|
|
2647
|
+
*/
|
|
2648
|
+
get_view_structure(input: {
|
|
2649
|
+
view: string;
|
|
2650
|
+
}): Promise<{
|
|
2651
|
+
viewId: string;
|
|
2652
|
+
viewName: string;
|
|
2653
|
+
tree: ReportViewTreeNode;
|
|
2654
|
+
reportCount: number;
|
|
2655
|
+
}>;
|
|
2656
|
+
/**
|
|
2657
|
+
* Delete a view (not the default "All" view).
|
|
2658
|
+
*/
|
|
2659
|
+
delete_view(input: {
|
|
2660
|
+
view: string;
|
|
2661
|
+
}): Promise<{
|
|
2662
|
+
deleted: boolean;
|
|
2663
|
+
viewName: string;
|
|
2664
|
+
}>;
|
|
2665
|
+
/**
|
|
2666
|
+
* Import a file into the knowledge base.
|
|
2667
|
+
*/
|
|
2668
|
+
import_document(input: {
|
|
2669
|
+
file: string;
|
|
2670
|
+
topic?: string;
|
|
2671
|
+
title?: string;
|
|
2672
|
+
tags?: string[];
|
|
2673
|
+
status?: string;
|
|
2674
|
+
cleanup?: boolean;
|
|
2675
|
+
}): Promise<{
|
|
2676
|
+
success: boolean;
|
|
2677
|
+
imported: {
|
|
2678
|
+
source: string;
|
|
2679
|
+
handler: string;
|
|
2680
|
+
reports: Array<{
|
|
2681
|
+
id: string;
|
|
2682
|
+
path: string;
|
|
2683
|
+
title: string;
|
|
2684
|
+
partOf?: string;
|
|
2685
|
+
}>;
|
|
2686
|
+
stats: {
|
|
2687
|
+
totalReports: number;
|
|
2688
|
+
totalCharacters: number;
|
|
2689
|
+
sections?: number;
|
|
2690
|
+
};
|
|
2691
|
+
sourceDeleted?: boolean;
|
|
2692
|
+
cleanupError?: string;
|
|
2693
|
+
};
|
|
2694
|
+
}>;
|
|
2695
|
+
/**
|
|
2696
|
+
* Export a report to a file.
|
|
2697
|
+
*/
|
|
2698
|
+
export_report(input: {
|
|
2699
|
+
report: string;
|
|
2700
|
+
outputPath: string;
|
|
2701
|
+
format?: 'markdown' | 'html' | 'pdf' | 'docx';
|
|
2702
|
+
mode?: 'single' | 'hierarchy' | 'inlined';
|
|
2703
|
+
templateId?: string;
|
|
2704
|
+
title?: string;
|
|
2705
|
+
includeFrontmatter?: boolean;
|
|
2706
|
+
}): Promise<{
|
|
2707
|
+
success: boolean;
|
|
2708
|
+
outputPath: string;
|
|
2709
|
+
reportsExported: number;
|
|
2710
|
+
totalSize: number;
|
|
2711
|
+
error?: string;
|
|
2712
|
+
files?: string[];
|
|
2713
|
+
}>;
|
|
2714
|
+
/**
|
|
2715
|
+
* Export all reports to a directory.
|
|
2716
|
+
*/
|
|
2717
|
+
export_all_reports(input: {
|
|
2718
|
+
outputDir: string;
|
|
2719
|
+
format?: 'markdown' | 'html' | 'pdf' | 'docx';
|
|
2720
|
+
templateId?: string;
|
|
2721
|
+
includeFrontmatter?: boolean;
|
|
2722
|
+
}): Promise<{
|
|
2723
|
+
message: string;
|
|
2724
|
+
outputDir: string;
|
|
2725
|
+
reportsExported: number;
|
|
2726
|
+
totalSize: number;
|
|
2727
|
+
files: string[];
|
|
2728
|
+
errors?: string[];
|
|
2729
|
+
}>;
|
|
2730
|
+
/**
|
|
2731
|
+
* List available export templates.
|
|
2732
|
+
*/
|
|
2733
|
+
list_export_templates(): Promise<{
|
|
2734
|
+
templates: Array<{
|
|
2735
|
+
id: string;
|
|
2736
|
+
name: string;
|
|
2737
|
+
description?: string;
|
|
2738
|
+
category: string;
|
|
2739
|
+
}>;
|
|
2740
|
+
total: number;
|
|
2741
|
+
}>;
|
|
2742
|
+
}
|
|
2743
|
+
export interface DiscoveredFunction {
|
|
2744
|
+
name: string;
|
|
2745
|
+
description: string;
|
|
2746
|
+
inputSchema: Record<string, any>;
|
|
2747
|
+
identityRequirements?: Array<{
|
|
2748
|
+
identityType: string;
|
|
2749
|
+
required: boolean;
|
|
2750
|
+
description?: string;
|
|
2751
|
+
}>;
|
|
2752
|
+
}
|
|
2753
|
+
export interface DiscoveredService {
|
|
2754
|
+
pluginId: string;
|
|
2755
|
+
serviceName: string;
|
|
2756
|
+
displayName: string;
|
|
2757
|
+
description: string;
|
|
2758
|
+
isBuiltin: boolean;
|
|
2759
|
+
category?: string;
|
|
2760
|
+
functionCount: number;
|
|
2761
|
+
functions: DiscoveredFunction[];
|
|
2762
|
+
}
|
|
2763
|
+
/**
|
|
2764
|
+
* Tool Discovery API - Discover available service functions and their schemas.
|
|
2765
|
+
*
|
|
2766
|
+
* @example
|
|
2767
|
+
* ```typescript
|
|
2768
|
+
* // Discover all tools
|
|
2769
|
+
* const { services, summary } = await ctx.majk.toolDiscovery.discover_tools();
|
|
2770
|
+
*
|
|
2771
|
+
* // Get schema for a specific function
|
|
2772
|
+
* const schema = await ctx.majk.toolDiscovery.get_tool_schema({
|
|
2773
|
+
* functionName: 'delegate_task'
|
|
2774
|
+
* });
|
|
2775
|
+
*
|
|
2776
|
+
* // Invoke a discovered tool dynamically
|
|
2777
|
+
* const result = await ctx.majk.toolDiscovery.invoke_tool({
|
|
2778
|
+
* functionName: 'list_teammates',
|
|
2779
|
+
* parameters: {}
|
|
2780
|
+
* });
|
|
2781
|
+
* ```
|
|
2782
|
+
*/
|
|
2783
|
+
export interface ToolDiscoveryAPI {
|
|
2784
|
+
/**
|
|
2785
|
+
* Discover available service functions that can be called.
|
|
2786
|
+
*/
|
|
2787
|
+
discover_tools(input?: {
|
|
2788
|
+
pluginId?: string;
|
|
2789
|
+
category?: string;
|
|
2790
|
+
functionNameContains?: string;
|
|
2791
|
+
builtinOnly?: boolean;
|
|
2792
|
+
requiresIdentity?: string;
|
|
2793
|
+
}): Promise<{
|
|
2794
|
+
services: DiscoveredService[];
|
|
2795
|
+
summary: {
|
|
2796
|
+
totalServices: number;
|
|
2797
|
+
totalFunctions: number;
|
|
2798
|
+
byCategory: Record<string, number>;
|
|
2799
|
+
byPlugin: Record<string, number>;
|
|
2800
|
+
};
|
|
2801
|
+
}>;
|
|
2802
|
+
/**
|
|
2803
|
+
* Get the detailed input schema for a specific function.
|
|
2804
|
+
*/
|
|
2805
|
+
get_tool_schema(input: {
|
|
2806
|
+
functionName: string;
|
|
2807
|
+
}): Promise<{
|
|
2808
|
+
function: DiscoveredFunction;
|
|
2809
|
+
service: {
|
|
2810
|
+
pluginId: string;
|
|
2811
|
+
serviceName: string;
|
|
2812
|
+
displayName: string;
|
|
2813
|
+
category?: string;
|
|
2814
|
+
};
|
|
2815
|
+
}>;
|
|
2816
|
+
/**
|
|
2817
|
+
* Get a simple list of all available function names.
|
|
2818
|
+
*/
|
|
2819
|
+
list_tool_names(): Promise<{
|
|
2820
|
+
functions: string[];
|
|
2821
|
+
count: number;
|
|
2822
|
+
}>;
|
|
2823
|
+
/**
|
|
2824
|
+
* List all available tool categories.
|
|
2825
|
+
*/
|
|
2826
|
+
list_tool_categories(): Promise<{
|
|
2827
|
+
categories: string[];
|
|
2828
|
+
count: number;
|
|
2829
|
+
}>;
|
|
2830
|
+
/**
|
|
2831
|
+
* Get RPC invocation information for a specific function.
|
|
2832
|
+
*/
|
|
2833
|
+
get_rpc_invocation_info(input: {
|
|
2834
|
+
functionName: string;
|
|
2835
|
+
}): Promise<{
|
|
2836
|
+
rpcServiceName: string;
|
|
2837
|
+
functionName: string;
|
|
2838
|
+
inputSchema: Record<string, any>;
|
|
2839
|
+
outputSchema?: Record<string, any>;
|
|
2840
|
+
readOnly: boolean;
|
|
2841
|
+
service: {
|
|
2842
|
+
pluginId: string;
|
|
2843
|
+
serviceName: string;
|
|
2844
|
+
displayName: string;
|
|
2845
|
+
category?: string;
|
|
2846
|
+
};
|
|
2847
|
+
identityRequirements?: Array<{
|
|
2848
|
+
identityType: string;
|
|
2849
|
+
required: boolean;
|
|
2850
|
+
description?: string;
|
|
2851
|
+
}>;
|
|
2852
|
+
}>;
|
|
2853
|
+
/**
|
|
2854
|
+
* Invoke any registered service function by name with parameters.
|
|
2855
|
+
*/
|
|
2856
|
+
invoke_tool(input: {
|
|
2857
|
+
functionName: string;
|
|
2858
|
+
parameters?: Record<string, any>;
|
|
2859
|
+
timeoutMs?: number;
|
|
2860
|
+
}): Promise<any>;
|
|
2861
|
+
}
|
|
2862
|
+
export interface ScriptTraceSummary {
|
|
2863
|
+
totalCalls: number;
|
|
2864
|
+
readsExecuted: number;
|
|
2865
|
+
writesMocked: number;
|
|
2866
|
+
errorsEncountered: number;
|
|
2867
|
+
totalDurationMs: number;
|
|
2868
|
+
consoleOutputLines: number;
|
|
2869
|
+
aiMocksUsed: number;
|
|
2870
|
+
}
|
|
2871
|
+
export interface ScriptTraceEvent {
|
|
2872
|
+
seq: number;
|
|
2873
|
+
timestamp: number;
|
|
2874
|
+
type: string;
|
|
2875
|
+
summary: string;
|
|
2876
|
+
details?: any;
|
|
2877
|
+
}
|
|
2878
|
+
export interface ScriptToolCallRecord {
|
|
2879
|
+
seq: number;
|
|
2880
|
+
service: string;
|
|
2881
|
+
function: string;
|
|
2882
|
+
params: Record<string, any>;
|
|
2883
|
+
result?: any;
|
|
2884
|
+
error?: string;
|
|
2885
|
+
durationMs: number;
|
|
2886
|
+
wasMocked: boolean;
|
|
2887
|
+
mockSource?: string;
|
|
2888
|
+
}
|
|
2889
|
+
export interface ScriptError {
|
|
2890
|
+
message: string;
|
|
2891
|
+
name?: string;
|
|
2892
|
+
line?: number;
|
|
2893
|
+
column?: number;
|
|
2894
|
+
codeSnippet?: string;
|
|
2895
|
+
}
|
|
2896
|
+
/**
|
|
2897
|
+
* Scripting API - Execute JavaScript scripts that orchestrate tool calls.
|
|
2898
|
+
*
|
|
2899
|
+
* @example
|
|
2900
|
+
* ```typescript
|
|
2901
|
+
* // Execute a script
|
|
2902
|
+
* const result = await ctx.majk.scripting.execute_script({
|
|
2903
|
+
* code: `
|
|
2904
|
+
* const reports = await tools.ReportsService.list_reports({ limit: 10 });
|
|
2905
|
+
* console.log('Found', reports.length, 'reports');
|
|
2906
|
+
* return { count: reports.length };
|
|
2907
|
+
* `,
|
|
2908
|
+
* dryRun: true
|
|
2909
|
+
* });
|
|
2910
|
+
*
|
|
2911
|
+
* // Re-run with new parameters
|
|
2912
|
+
* const result2 = await ctx.majk.scripting.execute_script({
|
|
2913
|
+
* rerun: result.traceId,
|
|
2914
|
+
* params: { count: 20 }
|
|
2915
|
+
* });
|
|
2916
|
+
* ```
|
|
2917
|
+
*/
|
|
2918
|
+
export interface ScriptingAPI {
|
|
2919
|
+
/**
|
|
2920
|
+
* Execute JavaScript that orchestrates tool calls.
|
|
2921
|
+
*/
|
|
2922
|
+
execute_script(input: {
|
|
2923
|
+
code?: string;
|
|
2924
|
+
rerun?: string;
|
|
2925
|
+
params?: Record<string, unknown>;
|
|
2926
|
+
dryRun?: boolean;
|
|
2927
|
+
dryRunOptions?: {
|
|
2928
|
+
maxAIMocks?: number;
|
|
2929
|
+
};
|
|
2930
|
+
timeoutMs?: number;
|
|
2931
|
+
}): Promise<{
|
|
2932
|
+
success: boolean;
|
|
2933
|
+
result?: any;
|
|
2934
|
+
error?: ScriptError;
|
|
2935
|
+
traceId: string;
|
|
2936
|
+
traceFormatted: string;
|
|
2937
|
+
trace: {
|
|
2938
|
+
summary: ScriptTraceSummary;
|
|
2939
|
+
events: ScriptTraceEvent[];
|
|
2940
|
+
toolCalls?: ScriptToolCallRecord[];
|
|
2941
|
+
};
|
|
2942
|
+
}>;
|
|
2943
|
+
/**
|
|
2944
|
+
* Get full details for a specific tool call from a previous script execution.
|
|
2945
|
+
*/
|
|
2946
|
+
expand_trace(input: {
|
|
2947
|
+
traceId: string;
|
|
2948
|
+
callSeq: number;
|
|
2949
|
+
}): Promise<{
|
|
2950
|
+
call: ScriptToolCallRecord;
|
|
2951
|
+
fullParams: string;
|
|
2952
|
+
fullResult: string;
|
|
2953
|
+
functionSchema?: any;
|
|
2954
|
+
}>;
|
|
2955
|
+
/**
|
|
2956
|
+
* List recent script execution traces.
|
|
2957
|
+
*/
|
|
2958
|
+
list_traces(): Promise<{
|
|
2959
|
+
traces: Array<{
|
|
2960
|
+
id: string;
|
|
2961
|
+
storedAt: string;
|
|
2962
|
+
summary: {
|
|
2963
|
+
success: boolean;
|
|
2964
|
+
totalCalls: number;
|
|
2965
|
+
durationMs: number;
|
|
2966
|
+
dryRun: boolean;
|
|
2967
|
+
};
|
|
2968
|
+
}>;
|
|
2969
|
+
count: number;
|
|
2970
|
+
}>;
|
|
2971
|
+
/**
|
|
2972
|
+
* Get the full formatted trace output for a previous script execution.
|
|
2973
|
+
*/
|
|
2974
|
+
get_trace_formatted(input: {
|
|
2975
|
+
traceId: string;
|
|
2976
|
+
}): Promise<{
|
|
2977
|
+
traceFormatted: string;
|
|
2978
|
+
success: boolean;
|
|
2979
|
+
totalCalls: number;
|
|
2980
|
+
durationMs: number;
|
|
2981
|
+
}>;
|
|
2982
|
+
}
|
|
1885
2983
|
export interface MajkInterface {
|
|
1886
2984
|
readonly version: string;
|
|
1887
2985
|
readonly config: ConfigAPI;
|
|
@@ -1899,6 +2997,11 @@ export interface MajkInterface {
|
|
|
1899
2997
|
readonly knowledge: KnowledgeAPI;
|
|
1900
2998
|
readonly agents: AgentAPI;
|
|
1901
2999
|
readonly skills: SkillsAPI;
|
|
3000
|
+
readonly batch: BatchAPI;
|
|
3001
|
+
readonly delegation: DelegationAPI;
|
|
3002
|
+
readonly reports: ReportsAPI;
|
|
3003
|
+
readonly toolDiscovery: ToolDiscoveryAPI;
|
|
3004
|
+
readonly scripting: ScriptingAPI;
|
|
1902
3005
|
}
|
|
1903
3006
|
export {};
|
|
1904
3007
|
//# sourceMappingURL=majk-interface-types.d.ts.map
|