@kroxy/kroxy 1.0.9 → 1.0.10
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/index.d.ts.map +1 -1
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -1
- package/dist/src/tools/autoagent.d.ts +22 -0
- package/dist/src/tools/autoagent.d.ts.map +1 -0
- package/dist/src/tools/autoagent.js +128 -0
- package/dist/src/tools/autoagent.js.map +1 -0
- package/dist/src/tools/balance.d.ts.map +1 -1
- package/dist/src/tools/balance.js +23 -0
- package/dist/src/tools/balance.js.map +1 -1
- package/index.ts +20 -0
- package/package.json +2 -1
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;;;;kBA0B7C,iBAAiB;;AAHjC,wBA8JE"}
|
package/dist/index.js
CHANGED
|
@@ -7,6 +7,7 @@ import { balanceParams, executeBalance } from './src/tools/balance.js';
|
|
|
7
7
|
import { browseParams, executeBrowse } from './src/tools/browse.js';
|
|
8
8
|
import { disputeParams, executeDispute } from './src/tools/dispute.js';
|
|
9
9
|
import { historyParams, executeHistory } from './src/tools/history.js';
|
|
10
|
+
import { autoagentParams, executeAutoagent } from './src/tools/autoagent.js';
|
|
10
11
|
export default {
|
|
11
12
|
id: 'kroxy',
|
|
12
13
|
name: 'Kroxy',
|
|
@@ -123,6 +124,19 @@ export default {
|
|
|
123
124
|
return executeDispute(params);
|
|
124
125
|
},
|
|
125
126
|
}, { optional: true });
|
|
127
|
+
// Autonomous multi-step goal orchestrator.
|
|
128
|
+
api.registerTool({
|
|
129
|
+
name: 'kroxy_autoagent',
|
|
130
|
+
label: 'Kroxy AutoAgent',
|
|
131
|
+
description: 'Autonomous orchestrator: takes a high-level goal, decomposes it into specialist subtasks ' +
|
|
132
|
+
'(research, writing, coding, planning), hires the best agent for each via Kroxy escrow, ' +
|
|
133
|
+
'and returns a unified deliverable. Set ANTHROPIC_API_KEY for LLM decomposition, or it ' +
|
|
134
|
+
'falls back to keyword-based routing. Requires KROXY_AGENT_WALLET.',
|
|
135
|
+
parameters: autoagentParams,
|
|
136
|
+
async execute(_id, params) {
|
|
137
|
+
return executeAutoagent(params);
|
|
138
|
+
},
|
|
139
|
+
}, { optional: true });
|
|
126
140
|
},
|
|
127
141
|
};
|
|
128
142
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* kroxy_autoagent — Autonomous multi-step orchestrator.
|
|
3
|
+
*
|
|
4
|
+
* Takes a natural-language goal, decomposes it into 2–4 subtasks via Claude
|
|
5
|
+
* (or a rule-based fallback if ANTHROPIC_API_KEY is unset), fires kroxy_hire
|
|
6
|
+
* for each subtask sequentially, and returns a unified deliverable.
|
|
7
|
+
*/
|
|
8
|
+
export declare const autoagentParams: import("@sinclair/typebox").TObject<{
|
|
9
|
+
goal: import("@sinclair/typebox").TString;
|
|
10
|
+
maxBudget: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
11
|
+
}>;
|
|
12
|
+
export declare function executeAutoagent(params: {
|
|
13
|
+
goal: string;
|
|
14
|
+
maxBudget?: number;
|
|
15
|
+
}): Promise<{
|
|
16
|
+
content: [{
|
|
17
|
+
type: 'text';
|
|
18
|
+
text: string;
|
|
19
|
+
}];
|
|
20
|
+
details: unknown;
|
|
21
|
+
}>;
|
|
22
|
+
//# sourceMappingURL=autoagent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autoagent.d.ts","sourceRoot":"","sources":["../../../src/tools/autoagent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,eAAO,MAAM,eAAe;;;EAY1B,CAAC;AA4EH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3C,OAAO,CAAC;IAAE,OAAO,EAAE,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAyD1E"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* kroxy_autoagent — Autonomous multi-step orchestrator.
|
|
3
|
+
*
|
|
4
|
+
* Takes a natural-language goal, decomposes it into 2–4 subtasks via Claude
|
|
5
|
+
* (or a rule-based fallback if ANTHROPIC_API_KEY is unset), fires kroxy_hire
|
|
6
|
+
* for each subtask sequentially, and returns a unified deliverable.
|
|
7
|
+
*/
|
|
8
|
+
import { Type } from '@sinclair/typebox';
|
|
9
|
+
import { executeHire } from './hire.js';
|
|
10
|
+
export const autoagentParams = Type.Object({
|
|
11
|
+
goal: Type.String({
|
|
12
|
+
description: 'High-level goal to accomplish, e.g. "Launch a DeFi product: research the market, write a landing page, and build a smart contract."',
|
|
13
|
+
minLength: 10,
|
|
14
|
+
}),
|
|
15
|
+
maxBudget: Type.Optional(Type.Number({
|
|
16
|
+
minimum: 1,
|
|
17
|
+
description: 'Total USDC budget across all subtasks. Default: 20.00',
|
|
18
|
+
})),
|
|
19
|
+
});
|
|
20
|
+
// ─── Decomposition ────────────────────────────────────────────────────────────
|
|
21
|
+
/**
|
|
22
|
+
* Ask Claude to decompose the goal into 2–4 subtasks.
|
|
23
|
+
* Falls back to rule-based decomposer if ANTHROPIC_API_KEY is absent.
|
|
24
|
+
*/
|
|
25
|
+
async function decomposeGoal(goal) {
|
|
26
|
+
const apiKey = process.env.ANTHROPIC_API_KEY;
|
|
27
|
+
if (apiKey) {
|
|
28
|
+
try {
|
|
29
|
+
// Lazy import — only loaded when actually needed
|
|
30
|
+
const { Anthropic } = await import('@anthropic-ai/sdk');
|
|
31
|
+
const client = new Anthropic({ apiKey });
|
|
32
|
+
const response = await client.messages.create({
|
|
33
|
+
model: 'claude-haiku-4-5-20251001',
|
|
34
|
+
max_tokens: 512,
|
|
35
|
+
system: 'You are a task decomposer for an AI agent marketplace. ' +
|
|
36
|
+
'Break the user\'s goal into 2–4 concrete subtasks. ' +
|
|
37
|
+
'Each subtask must map to exactly one capability: research, writing, coding, or planning. ' +
|
|
38
|
+
'Respond ONLY with a JSON array, no prose:\n' +
|
|
39
|
+
'[{"task": "...", "capability": "research"}, ...]',
|
|
40
|
+
messages: [{ role: 'user', content: goal }],
|
|
41
|
+
});
|
|
42
|
+
const text = response.content[0].type === 'text' ? response.content[0].text : '';
|
|
43
|
+
const parsed = JSON.parse(text.trim());
|
|
44
|
+
if (Array.isArray(parsed) && parsed.length > 0)
|
|
45
|
+
return parsed.slice(0, 4);
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
// Fall through to rule-based
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return ruleBasedDecompose(goal);
|
|
52
|
+
}
|
|
53
|
+
/** Keyword-based decomposer — works without any API key. */
|
|
54
|
+
function ruleBasedDecompose(goal) {
|
|
55
|
+
const g = goal.toLowerCase();
|
|
56
|
+
const subtasks = [];
|
|
57
|
+
if (/research|market|competitor|analysis|find|search|learn/i.test(g)) {
|
|
58
|
+
subtasks.push({ task: `Research: ${goal.slice(0, 80)}`, capability: 'research' });
|
|
59
|
+
}
|
|
60
|
+
if (/plan|roadmap|strategy|milestone|launch|go-to-market/i.test(g)) {
|
|
61
|
+
subtasks.push({ task: `Plan: Create a step-by-step roadmap for: ${goal.slice(0, 80)}`, capability: 'planning' });
|
|
62
|
+
}
|
|
63
|
+
if (/write|draft|copy|blog|article|landing|content|doc/i.test(g)) {
|
|
64
|
+
subtasks.push({ task: `Write: Draft content for: ${goal.slice(0, 80)}`, capability: 'writing' });
|
|
65
|
+
}
|
|
66
|
+
if (/code|build|implement|develop|smart contract|function|script/i.test(g)) {
|
|
67
|
+
subtasks.push({ task: `Code: Implement: ${goal.slice(0, 80)}`, capability: 'coding' });
|
|
68
|
+
}
|
|
69
|
+
// Fallback: at least one research subtask
|
|
70
|
+
if (subtasks.length === 0) {
|
|
71
|
+
subtasks.push({ task: `Research and summarize: ${goal}`, capability: 'research' });
|
|
72
|
+
subtasks.push({ task: `Create an action plan for: ${goal}`, capability: 'planning' });
|
|
73
|
+
}
|
|
74
|
+
return subtasks.slice(0, 4);
|
|
75
|
+
}
|
|
76
|
+
// ─── Orchestrator ─────────────────────────────────────────────────────────────
|
|
77
|
+
export async function executeAutoagent(params) {
|
|
78
|
+
const goal = params.goal;
|
|
79
|
+
const maxBudget = params.maxBudget ?? 20;
|
|
80
|
+
// 1. Decompose
|
|
81
|
+
const subtasks = await decomposeGoal(goal);
|
|
82
|
+
const pricePerTask = parseFloat((maxBudget / subtasks.length).toFixed(2));
|
|
83
|
+
const lines = [
|
|
84
|
+
`AutoAgent: ${goal.slice(0, 80)}`,
|
|
85
|
+
`${'─'.repeat(50)}`,
|
|
86
|
+
`Budget: $${maxBudget} USDC across ${subtasks.length} subtask${subtasks.length === 1 ? '' : 's'} ($${pricePerTask} each)`,
|
|
87
|
+
'',
|
|
88
|
+
];
|
|
89
|
+
const receipts = [];
|
|
90
|
+
let totalSpent = 0;
|
|
91
|
+
// 2. Fire kroxy_hire for each subtask sequentially
|
|
92
|
+
for (let i = 0; i < subtasks.length; i++) {
|
|
93
|
+
const { task, capability } = subtasks[i];
|
|
94
|
+
lines.push(`[${i + 1}/${subtasks.length}] ${capability.toUpperCase()}: ${task.slice(0, 70)}`);
|
|
95
|
+
try {
|
|
96
|
+
const result = await executeHire({ task, maxPrice: pricePerTask, capability });
|
|
97
|
+
const d = result.details;
|
|
98
|
+
const paid = parseFloat(d?.amountPaid ?? '0');
|
|
99
|
+
totalSpent += paid;
|
|
100
|
+
lines.push(` ✓ Completed in ${d?.duration ?? '?'} — paid $${d?.amountPaid ?? '?'}`);
|
|
101
|
+
lines.push(` Escrow: ${d?.escrowId ?? '?'}`);
|
|
102
|
+
if (d?.deliverable?.summary) {
|
|
103
|
+
lines.push(` Summary: ${String(d.deliverable.summary).slice(0, 120)}`);
|
|
104
|
+
}
|
|
105
|
+
lines.push('');
|
|
106
|
+
receipts.push(d);
|
|
107
|
+
}
|
|
108
|
+
catch (err) {
|
|
109
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
110
|
+
lines.push(` ✗ Failed: ${msg.slice(0, 120)}`);
|
|
111
|
+
lines.push('');
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
lines.push(`${'─'.repeat(50)}`);
|
|
115
|
+
lines.push(`Total spent: $${totalSpent.toFixed(2)} USDC / $${maxBudget} budget`);
|
|
116
|
+
lines.push(`Subtasks completed: ${receipts.length}/${subtasks.length}`);
|
|
117
|
+
return {
|
|
118
|
+
content: [{ type: 'text', text: lines.join('\n') }],
|
|
119
|
+
details: {
|
|
120
|
+
goal,
|
|
121
|
+
subtasks,
|
|
122
|
+
receipts,
|
|
123
|
+
totalSpent: totalSpent.toFixed(2),
|
|
124
|
+
budgetUsed: `$${totalSpent.toFixed(2)} / $${maxBudget}`,
|
|
125
|
+
},
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
//# sourceMappingURL=autoagent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autoagent.js","sourceRoot":"","sources":["../../../src/tools/autoagent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"balance.d.ts","sourceRoot":"","sources":["../../../src/tools/balance.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa;;EAOxB,CAAC;AAEH,wBAAsB,cAAc,CAClC,MAAM,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1B,OAAO,CAAC;IAAE,OAAO,EAAE,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"balance.d.ts","sourceRoot":"","sources":["../../../src/tools/balance.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa;;EAOxB,CAAC;AAEH,wBAAsB,cAAc,CAClC,MAAM,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1B,OAAO,CAAC;IAAE,OAAO,EAAE,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAuD1E"}
|
|
@@ -15,6 +15,29 @@ export async function executeBalance(params) {
|
|
|
15
15
|
if (!/^0x[0-9a-fA-F]{40}$/.test(walletAddress)) {
|
|
16
16
|
throw new Error(`Invalid wallet address: ${walletAddress}. Must be 0x + 40 hex chars.`);
|
|
17
17
|
}
|
|
18
|
+
// Demo mode: return mock balance immediately without hitting the API.
|
|
19
|
+
// Eliminates 404s when the deployed API predates this route.
|
|
20
|
+
if (process.env.KROXY_DEMO_MODE === '1') {
|
|
21
|
+
const short = `${walletAddress.slice(0, 6)}...${walletAddress.slice(-4)}`;
|
|
22
|
+
const lines = [
|
|
23
|
+
`Balance: ${short} (demo)`,
|
|
24
|
+
`─────────────────────────────────────`,
|
|
25
|
+
`USDC Balance: $100.00`,
|
|
26
|
+
`Pending Escrow: $0.00 (no active jobs)`,
|
|
27
|
+
`Total Earned: $0.00 USDC`,
|
|
28
|
+
];
|
|
29
|
+
return {
|
|
30
|
+
content: [{ type: 'text', text: lines.join('\n') }],
|
|
31
|
+
details: {
|
|
32
|
+
wallet: walletAddress,
|
|
33
|
+
usdcBalance: '100.00',
|
|
34
|
+
pendingEscrow: '0.00',
|
|
35
|
+
pendingEscrowCount: 0,
|
|
36
|
+
totalEarned: '0.00',
|
|
37
|
+
demo: true,
|
|
38
|
+
},
|
|
39
|
+
};
|
|
40
|
+
}
|
|
18
41
|
const balance = await getWalletBalance(walletAddress);
|
|
19
42
|
const escrowLine = balance.pendingEscrowCount > 0
|
|
20
43
|
? `$${balance.pendingEscrow} USDC (${balance.pendingEscrowCount} active job${balance.pendingEscrowCount === 1 ? '' : 's'})`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"balance.js","sourceRoot":"","sources":["../../../src/tools/balance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;IACvC,MAAM,EAAE,IAAI,CAAC,QAAQ,CACnB,IAAI,CAAC,MAAM,CAAC;QACV,WAAW,EAAE,2EAA2E;QACxF,OAAO,EAAE,qBAAqB;KAC/B,CAAC,CACH;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAA2B;IAE3B,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IACtE,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CACb,uEAAuE;YACvE,mEAAmE,CACpE,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,2BAA2B,aAAa,8BAA8B,CAAC,CAAC;IAC1F,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAEtD,MAAM,UAAU,GAAG,OAAO,CAAC,kBAAkB,GAAG,CAAC;QAC/C,CAAC,CAAC,IAAI,OAAO,CAAC,aAAa,WAAW,OAAO,CAAC,kBAAkB,cAAc,OAAO,CAAC,kBAAkB,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG;QAC5H,CAAC,CAAC,yBAAyB,CAAC;IAE9B,MAAM,KAAK,GAAG;QACZ,YAAY,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;QACpG,uCAAuC;QACvC,oBAAoB,OAAO,CAAC,WAAW,EAAE;QACzC,mBAAmB,UAAU,EAAE;QAC/B,oBAAoB,OAAO,CAAC,WAAW,OAAO;KAC/C,CAAC;IAEF,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,OAAO,EAAE,OAAO;KACjB,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"balance.js","sourceRoot":"","sources":["../../../src/tools/balance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;IACvC,MAAM,EAAE,IAAI,CAAC,QAAQ,CACnB,IAAI,CAAC,MAAM,CAAC;QACV,WAAW,EAAE,2EAA2E;QACxF,OAAO,EAAE,qBAAqB;KAC/B,CAAC,CACH;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAA2B;IAE3B,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IACtE,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CACb,uEAAuE;YACvE,mEAAmE,CACpE,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,2BAA2B,aAAa,8BAA8B,CAAC,CAAC;IAC1F,CAAC;IAED,sEAAsE;IACtE,6DAA6D;IAC7D,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,GAAG,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,MAAM,KAAK,GAAG;YACZ,YAAY,KAAK,SAAS;YAC1B,uCAAuC;YACvC,yBAAyB;YACzB,yCAAyC;YACzC,4BAA4B;SAC7B,CAAC;QACF,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACnD,OAAO,EAAE;gBACP,MAAM,EAAE,aAAa;gBACrB,WAAW,EAAE,QAAQ;gBACrB,aAAa,EAAE,MAAM;gBACrB,kBAAkB,EAAE,CAAC;gBACrB,WAAW,EAAE,MAAM;gBACnB,IAAI,EAAE,IAAI;aACX;SACF,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAEtD,MAAM,UAAU,GAAG,OAAO,CAAC,kBAAkB,GAAG,CAAC;QAC/C,CAAC,CAAC,IAAI,OAAO,CAAC,aAAa,WAAW,OAAO,CAAC,kBAAkB,cAAc,OAAO,CAAC,kBAAkB,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG;QAC5H,CAAC,CAAC,yBAAyB,CAAC;IAE9B,MAAM,KAAK,GAAG;QACZ,YAAY,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;QACpG,uCAAuC;QACvC,oBAAoB,OAAO,CAAC,WAAW,EAAE;QACzC,mBAAmB,UAAU,EAAE;QAC/B,oBAAoB,OAAO,CAAC,WAAW,OAAO;KAC/C,CAAC;IAEF,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,OAAO,EAAE,OAAO;KACjB,CAAC;AACJ,CAAC"}
|
package/index.ts
CHANGED
|
@@ -8,6 +8,7 @@ import { balanceParams, executeBalance } from './src/tools/balance.js';
|
|
|
8
8
|
import { browseParams, executeBrowse } from './src/tools/browse.js';
|
|
9
9
|
import { disputeParams, executeDispute } from './src/tools/dispute.js';
|
|
10
10
|
import { historyParams, executeHistory } from './src/tools/history.js';
|
|
11
|
+
import { autoagentParams, executeAutoagent } from './src/tools/autoagent.js';
|
|
11
12
|
|
|
12
13
|
type ReputationToolParams = Parameters<typeof executeReputation>[0];
|
|
13
14
|
type OfferToolParams = Parameters<typeof executeOffer>[0];
|
|
@@ -18,6 +19,7 @@ type BalanceToolParams = Parameters<typeof executeBalance>[0];
|
|
|
18
19
|
type BrowseToolParams = Parameters<typeof executeBrowse>[0];
|
|
19
20
|
type DisputeToolParams = Parameters<typeof executeDispute>[0];
|
|
20
21
|
type HistoryToolParams = Parameters<typeof executeHistory>[0];
|
|
22
|
+
type AutoagentToolParams = Parameters<typeof executeAutoagent>[0];
|
|
21
23
|
|
|
22
24
|
export default {
|
|
23
25
|
id: 'kroxy',
|
|
@@ -158,5 +160,23 @@ export default {
|
|
|
158
160
|
},
|
|
159
161
|
{ optional: true },
|
|
160
162
|
);
|
|
163
|
+
|
|
164
|
+
// Autonomous multi-step goal orchestrator.
|
|
165
|
+
api.registerTool(
|
|
166
|
+
{
|
|
167
|
+
name: 'kroxy_autoagent',
|
|
168
|
+
label: 'Kroxy AutoAgent',
|
|
169
|
+
description:
|
|
170
|
+
'Autonomous orchestrator: takes a high-level goal, decomposes it into specialist subtasks ' +
|
|
171
|
+
'(research, writing, coding, planning), hires the best agent for each via Kroxy escrow, ' +
|
|
172
|
+
'and returns a unified deliverable. Set ANTHROPIC_API_KEY for LLM decomposition, or it ' +
|
|
173
|
+
'falls back to keyword-based routing. Requires KROXY_AGENT_WALLET.',
|
|
174
|
+
parameters: autoagentParams,
|
|
175
|
+
async execute(_id: string, params: AutoagentToolParams) {
|
|
176
|
+
return executeAutoagent(params);
|
|
177
|
+
},
|
|
178
|
+
},
|
|
179
|
+
{ optional: true },
|
|
180
|
+
);
|
|
161
181
|
},
|
|
162
182
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kroxy/kroxy",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.10",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Trustless agent-to-agent payments via USDC escrow on Base blockchain",
|
|
6
6
|
"license": "MIT",
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
"openclaw.plugin.json"
|
|
21
21
|
],
|
|
22
22
|
"dependencies": {
|
|
23
|
+
"@anthropic-ai/sdk": "^0.36.0",
|
|
23
24
|
"@sinclair/typebox": "^0.32.0"
|
|
24
25
|
},
|
|
25
26
|
"devDependencies": {
|