kompass-sdk 0.19.0 → 0.21.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/dist/aggregator.d.ts.map +1 -1
- package/dist/aggregator.js +13 -6
- package/dist/aggregator.js.map +1 -1
- package/dist/bridge.d.ts.map +1 -1
- package/dist/bridge.js +64 -0
- package/dist/bridge.js.map +1 -1
- package/dist/matching.d.ts +1 -1
- package/dist/matching.d.ts.map +1 -1
- package/dist/matching.js +68 -14
- package/dist/matching.js.map +1 -1
- package/dist/router.js +2 -2
- package/dist/router.js.map +1 -1
- package/dist/sources/olas.d.ts +3 -3
- package/dist/sources/olas.d.ts.map +1 -1
- package/dist/sources/olas.js +37 -31
- package/dist/sources/olas.js.map +1 -1
- package/dist/wallet/handlers/bankr.d.ts.map +1 -1
- package/dist/wallet/handlers/bankr.js +5 -4
- package/dist/wallet/handlers/bankr.js.map +1 -1
- package/dist/wallet/handlers/locus.d.ts.map +1 -1
- package/dist/wallet/handlers/locus.js +3 -2
- package/dist/wallet/handlers/locus.js.map +1 -1
- package/dist/wallet/handlers/olas.d.ts +5 -1
- package/dist/wallet/handlers/olas.d.ts.map +1 -1
- package/dist/wallet/handlers/olas.js +20 -28
- package/dist/wallet/handlers/olas.js.map +1 -1
- package/dist/wallet/index.d.ts +3 -3
- package/package.json +1 -1
- package/src/aggregator.ts +8 -4
- package/src/bridge.ts +53 -0
- package/src/matching.ts +65 -14
- package/src/router.ts +2 -2
- package/src/sources/olas.ts +53 -44
- package/src/wallet/handlers/bankr.ts +6 -4
- package/src/wallet/handlers/locus.ts +3 -2
- package/src/wallet/handlers/olas.ts +25 -30
package/dist/sources/olas.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"olas.js","sourceRoot":"","sources":["../../src/sources/olas.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,MAAM,aAAa,GAA2B;IAC5C,MAAM,EAAE,kEAAkE;IAC1E,IAAI,EAAE,gEAAgE;CACvE,CAAC;AAEF,MAAM,
|
|
1
|
+
{"version":3,"file":"olas.js","sourceRoot":"","sources":["../../src/sources/olas.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,MAAM,aAAa,GAA2B;IAC5C,MAAM,EAAE,kEAAkE;IAC1E,IAAI,EAAE,gEAAgE;CACvE,CAAC;AAEF,8EAA8E;AAC9E,MAAM,YAAY,GAAG;;;;;;;;;;;;;;EAcnB,CAAC;AAiBH,yCAAyC;AACzC,IAAI,SAAS,GAAsB,IAAI,CAAC;AACxC,IAAI,SAAS,GAAG,CAAC,CAAC;AAClB,MAAM,SAAS,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEjC,KAAK,UAAU,UAAU,CAAC,OAAe;IACvC,IAAI,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,SAAS,EAAE,CAAC;QACpD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,QAAQ,GAAe,EAAE,CAAC;IAEhC,uCAAuC;IACvC,KAAK,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QACzD,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAC3B,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;gBAC7C,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC;aACrC,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,CAAC,EAAE;gBAAE,SAAS;YAEtB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC;YAEtC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,mDAAmD;QACrD,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,SAAS,GAAG,QAAQ,CAAC;QACrB,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzB,CAAC;IAED,OAAO,SAAS,IAAI,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAkB;IACxC,IAAI,EAAE,MAAa;IACnB,WAAW,EAAE,uBAAuB;IAEpC,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,OAA6B;QACvD,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,KAAK,CAAC;QAE1C,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;YAExC,IAAI,CAAC,KAAK;gBAAE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAEtD,4DAA4D;YAC5D,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE;gBACjC,sEAAsE;gBACtE,MAAM,YAAY,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;gBACpI,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,iCAAiC;YAC7F,CAAC,CAAC,CAAC;YAEH,OAAO,QAAQ;iBACZ,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;iBAC3E,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;iBACf,GAAG,CAAC,OAAO,CAAC,CAAC;QAClB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE;gBAC5C,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC;gBAC/D,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;aAClC,CAAC,CAAC;YACH,OAAO,GAAG,CAAC,EAAE,CAAC;QAChB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;CACF,CAAC;AAEF,SAAS,OAAO,CAAC,IAAc;IAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC;IACtC,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;IACxE,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;IACpE,MAAM,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAC;IAC1E,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,GAAG,eAAe,CAAC,GAAG,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAExG,OAAO;QACL,EAAE,EAAE,QAAQ,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE;QACnC,QAAQ,EAAE,IAAI,CAAC,OAAO;QACtB,IAAI,EAAE,aAAa,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;QACzE,WAAW,EAAE,2CAA2C,KAAK,MAAM,QAAQ,cAAc,eAAe,uBAAuB,KAAK,8CAA8C;QAClL,UAAU,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,YAAY,CAAC;QAC9C,YAAY,EAAE;YACZ,qBAAqB;YACrB,oBAAoB;YACpB,uBAAuB;YACvB,+BAA+B;SAChC;QACD,MAAM,EAAE,MAAa;QACrB,6CAA6C;QAC7C,QAAQ,EAAE,SAAS;QACnB,SAAS,EAAE;YACT,6DAA6D;YAC7D,IAAI,EAAE,SAAS;SAChB;QACD,UAAU,EAAE;YACV,KAAK,EAAE,WAAW;YAClB,KAAK,EAAE,eAAe;YACtB,MAAM,EAAE,QAAQ,KAAK,EAAE;SACxB;QACD,OAAO,EAAE;YACP,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM;YAC1F,QAAQ,EAAE,MAAM;SACjB;QACD,QAAQ,EAAE,QAAQ,GAAG,EAAE;QACvB,QAAQ,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS;QAC/C,GAAG,EAAE,IAAI;KACV,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bankr.d.ts","sourceRoot":"","sources":["../../../src/wallet/handlers/bankr.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAI3D,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"bankr.d.ts","sourceRoot":"","sources":["../../../src/wallet/handlers/bankr.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAI3D,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA8FtE"}
|
|
@@ -56,20 +56,21 @@ export async function handleBankrPayment(wallet, agent, task) {
|
|
|
56
56
|
continue;
|
|
57
57
|
const pollData = await pollRes.json();
|
|
58
58
|
const status = pollData.status?.toLowerCase();
|
|
59
|
-
if (status === "completed"
|
|
59
|
+
if (status === "completed") {
|
|
60
60
|
return {
|
|
61
61
|
success: true,
|
|
62
|
-
deliverable: pollData.
|
|
62
|
+
deliverable: pollData.response ?? pollData.result ?? pollData,
|
|
63
63
|
jobId,
|
|
64
64
|
};
|
|
65
65
|
}
|
|
66
|
-
if (status === "failed" || status === "
|
|
66
|
+
if (status === "failed" || status === "cancelled") {
|
|
67
67
|
return {
|
|
68
68
|
success: false,
|
|
69
|
-
deliverable: { error: pollData.error ??
|
|
69
|
+
deliverable: { error: pollData.error ?? `Job ${status}`, details: pollData },
|
|
70
70
|
jobId,
|
|
71
71
|
};
|
|
72
72
|
}
|
|
73
|
+
// "pending" or "processing" — continue polling
|
|
73
74
|
// Still pending, continue polling
|
|
74
75
|
}
|
|
75
76
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bankr.js","sourceRoot":"","sources":["../../../src/wallet/handlers/bankr.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,MAAM,SAAS,GAAG,uBAAuB,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAqB,EACrB,KAAmB,EACnB,IAAY;IAEZ,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IACzC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO;YACL,OAAO,EAAE,KAAK;YACd,WAAW,EAAE;gBACX,KAAK,EAAE,2EAA2E;gBAClF,IAAI,EAAE,uCAAuC;aAC9C;SACF,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAA2B;QACtC,cAAc,EAAE,kBAAkB;QAClC,WAAW,EAAE,MAAM;KACpB,CAAC;IAEF,IAAI,CAAC;QACH,wBAAwB;QACxB,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,GAAG,SAAS,eAAe,EAAE;YACzD,MAAM,EAAE,MAAM;YACd,OAAO;YACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;YACtC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;SACnC,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;YAClB,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YACvD,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,EAAE,KAAK,EAAE,oBAAoB,SAAS,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE;aACjF,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,EAAE,CAAC;QAErE,uDAAuD;QACvD,IAAI,CAAC,KAAK,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;YACvD,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,QAAQ,IAAI,UAAU;aACpE,CAAC;QACJ,CAAC;QAED,0BAA0B;QAC1B,MAAM,WAAW,GAAG,EAAE,CAAC;QACvB,MAAM,YAAY,GAAG,IAAI,CAAC;QAE1B,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;YACvD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;YAElE,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,SAAS,cAAc,KAAK,EAAE,EAAE;gBAC7D,OAAO;gBACP,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;aACnC,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,CAAC,EAAE;gBAAE,SAAS;YAE1B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC;YAE9C,IAAI,MAAM,KAAK,WAAW,
|
|
1
|
+
{"version":3,"file":"bankr.js","sourceRoot":"","sources":["../../../src/wallet/handlers/bankr.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locus.d.ts","sourceRoot":"","sources":["../../../src/wallet/handlers/locus.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAI3D,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"locus.d.ts","sourceRoot":"","sources":["../../../src/wallet/handlers/locus.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAI3D,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAyJvE"}
|
|
@@ -102,9 +102,10 @@ export async function handleLocusPayment(wallet, agent, task) {
|
|
|
102
102
|
};
|
|
103
103
|
}
|
|
104
104
|
const result = await callRes.json();
|
|
105
|
+
// Locus wraps responses in { success: true, data: {...} }
|
|
105
106
|
return {
|
|
106
|
-
success: true,
|
|
107
|
-
deliverable: result,
|
|
107
|
+
success: result.success ?? true,
|
|
108
|
+
deliverable: result.data ?? result,
|
|
108
109
|
};
|
|
109
110
|
}
|
|
110
111
|
// Step 3: Direct USDC payment to agent address
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locus.js","sourceRoot":"","sources":["../../../src/wallet/handlers/locus.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"locus.js","sourceRoot":"","sources":["../../../src/wallet/handlers/locus.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,MAAM,SAAS,GAAG,uCAAuC,CAAC;AAE1D,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAqB,EACrB,KAAmB,EACnB,IAAY;IAEZ,IAAI,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IAEvC,IAAI,CAAC;QACH,iEAAiE;QACjE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;YAE1C,2BAA2B;YAC3B,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,GAAG,SAAS,WAAW,EAAE;gBACvD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,cAAc,EAAE,aAAa;oBAC7B,UAAU,EAAE,eAAe;iBAC5B,CAAC;gBACF,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;aACnC,CAAC,CAAC;YAEH,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC;gBACpB,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,WAAW,EAAE,EAAE,KAAK,EAAE,uDAAuD,EAAE;iBAChF,CAAC;YACJ,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,CAAC;YAC9C,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC;YACnC,MAAM,kBAAkB,GAAG,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC;YAE3D,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,8CAA8C,EAAE,EAAE,CAAC;YACpG,CAAC;YAED,mCAAmC;YACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5B,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,GAAG,SAAS,SAAS,EAAE;oBACnD,OAAO,EAAE,EAAE,eAAe,EAAE,UAAU,MAAM,EAAE,EAAE;oBAChD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;iBAClC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;gBACrB,IAAI,SAAS,EAAE,EAAE,EAAE,CAAC;oBAClB,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;oBAC1C,IAAI,UAAU,CAAC,IAAI,EAAE,YAAY,KAAK,UAAU,EAAE,CAAC;wBACjD,uDAAuD;wBACvD,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,EAAE,aAAa,CAAC;wBACjD,IAAI,SAAS,EAAE,CAAC;4BACd,IAAI,CAAC;gCACH,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;gCACxD,MAAM,cAAc,CAAC,MAAM,EAAE,SAAgB,EAAE,IAAI,CAAC,CAAC,CAAC,aAAa;gCACnE,OAAO,CAAC,GAAG,CAAC,iCAAiC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,CAAC;4BAC5F,CAAC;4BAAC,OAAO,OAAO,EAAE,CAAC;gCACjB,OAAO,CAAC,GAAG,CAAC,mCAAmC,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;4BACzG,CAAC;wBACH,CAAC;wBACD,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAA2B;YACtC,cAAc,EAAE,kBAAkB;YAClC,eAAe,EAAE,UAAU,MAAM,EAAE;SACpC,CAAC;QAEF,sEAAsE;QACtE,MAAM,OAAO,GAAG,KAAK,CAAC,GAAU,CAAC;QACjC,MAAM,YAAY,GAAG,OAAO,EAAE,IAAI,KAAK,mBAAmB,CAAC;QAE3D,IAAI,YAAY,EAAE,CAAC;YACjB,gCAAgC;YAChC,+DAA+D;YAC/D,uDAAuD;YACvD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;YAClC,MAAM,kBAAkB,GAAG,OAAO,CAAC,SAAqB,IAAI,EAAE,CAAC;YAE/D,sEAAsE;YACtE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,iBAAiB,CAAC,QAAQ,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;YAEnF,MAAM,OAAO,GAAG,GAAG,SAAS,YAAY,QAAQ,IAAI,QAAQ,EAAE,CAAC;YAE/D,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,OAAO,EAAE;gBACnC,MAAM,EAAE,MAAM;gBACd,OAAO;gBACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;gBAC5B,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;aACnC,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;gBAChB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;gBACrD,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,WAAW,EAAE;wBACX,KAAK,EAAE,kCAAkC,OAAO,CAAC,MAAM,EAAE;wBACzD,QAAQ;wBACR,QAAQ;wBACR,OAAO,EAAE,OAAO;qBACjB;iBACF,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;YACpC,0DAA0D;YAC1D,OAAO;gBACL,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI;gBAC/B,WAAW,EAAE,MAAM,CAAC,IAAI,IAAI,MAAM;aACnC,CAAC;QACJ,CAAC;QAED,+CAA+C;QAC/C,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,aAAa,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC;QAC7E,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,EAAE,MAAM,IAAI,MAAM,CAAC;QAE/C,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9C,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,EAAE,KAAK,EAAE,2CAA2C,EAAE;aACpE,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,SAAS,WAAW,EAAE;YACnD,MAAM,EAAE,MAAM;YACd,OAAO;YACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC;gBAC1B,IAAI,EAAE,iBAAiB,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;aAC5C,CAAC;YACF,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;SACnC,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YACrD,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,EAAE,KAAK,EAAE,yBAAyB,OAAO,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE;aACpF,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QAEtC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,WAAW,EAAE,QAAQ;YACrB,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,cAAc;SAChE,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SACzE,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CACxB,QAAgB,EAChB,SAAmB,EACnB,IAAY;IAEZ,yBAAyB;IACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IAE1B,QAAQ,QAAQ,EAAE,CAAC;QACjB,4CAA4C;QAC5C,KAAK,WAAW;YACd,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC;QAC1F,KAAK,uBAAuB;YAC1B,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC;QAC9D,KAAK,SAAS;YACZ,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC;QAC/D,KAAK,QAAQ;YACX,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC;QAEnG,+CAA+C;QAC/C,KAAK,OAAO;YACV,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;QACzD,KAAK,KAAK;YACR,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC;QACzD,KAAK,YAAY;YACf,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAE7F,mBAAmB;QACnB,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,8BAA8B;YAC9B,MAAM,KAAK,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAChE,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC;YAC3E,MAAM,MAAM,GAAG,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;YAClD,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,CAAC;QACrF,CAAC;QACD,KAAK,cAAc;YACjB,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;QAElG,8CAA8C;QAC9C,KAAK,QAAQ,CAAC;QACd,KAAK,WAAW,CAAC;QACjB,KAAK,QAAQ,CAAC;QACd,KAAK,UAAU,CAAC;QAChB,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,SAAS;YACZ,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAEvF,yBAAyB;QACzB,KAAK,KAAK;YACR,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QAC5D,KAAK,cAAc;YACjB,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QACjE,KAAK,WAAW;YACd,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACxE,KAAK,MAAM;YACT,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QAElE,iBAAiB;QACjB,KAAK,QAAQ;YACX,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,kBAAkB;QAEzG,aAAa;QACb,KAAK,eAAe;YAClB,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC;QAEvE,SAAS;QACT,KAAK,GAAG;YACN,OAAO,EAAE,QAAQ,EAAE,sBAAsB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC;QAEvE,YAAY;QACZ,KAAK,cAAc;YACjB,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC;QAE/D,WAAW;QACX,KAAK,YAAY;YACf,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,eAAe,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QAEhH,mCAAmC;QACnC;YACE,OAAO;gBACL,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,QAAQ;gBACtE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;aAC5D,CAAC;IACN,CAAC;AACH,CAAC"}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Olas Mech Handler
|
|
3
|
-
*
|
|
3
|
+
* Olas mechs are on-chain agents — requests and deliveries happen via smart contracts.
|
|
4
|
+
* There is no HTTP API. Interaction requires the mech-client CLI/Python SDK
|
|
5
|
+
* or direct on-chain transactions.
|
|
6
|
+
*
|
|
7
|
+
* Docs: https://docs.olas.network/mech-client/
|
|
4
8
|
*/
|
|
5
9
|
import type { KompassWallet } from "../index.js";
|
|
6
10
|
import type { UnifiedAgent } from "../../sources/types.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"olas.d.ts","sourceRoot":"","sources":["../../../src/wallet/handlers/olas.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"olas.d.ts","sourceRoot":"","sources":["../../../src/wallet/handlers/olas.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE3D,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAsBtE"}
|
|
@@ -1,31 +1,23 @@
|
|
|
1
1
|
export async function handleOlasPayment(wallet, agent, task) {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
return { success: true, deliverable: data };
|
|
23
|
-
}
|
|
24
|
-
catch (err) {
|
|
25
|
-
return {
|
|
26
|
-
success: false,
|
|
27
|
-
deliverable: { error: err instanceof Error ? err.message : String(err) },
|
|
28
|
-
};
|
|
29
|
-
}
|
|
2
|
+
// Olas mechs require on-chain interaction via the Mech Marketplace contract.
|
|
3
|
+
// Direct HTTP calls are not supported — the mech-client discovers the off-chain URL
|
|
4
|
+
// from on-chain metadata and handles the full request/delivery lifecycle.
|
|
5
|
+
const mechAddress = agent.nativeId;
|
|
6
|
+
const chain = agent.raw?._chain ?? "gnosis";
|
|
7
|
+
return {
|
|
8
|
+
success: false,
|
|
9
|
+
deliverable: {
|
|
10
|
+
error: "Olas mechs require on-chain interaction",
|
|
11
|
+
mechAddress,
|
|
12
|
+
chain,
|
|
13
|
+
hint: "Install mech-client: pip install mech-client. Then use: mechx request --prompts '<prompt>' --tools openai-gpt-4 --chain-config <chain>",
|
|
14
|
+
docsUrl: "https://docs.olas.network/mech-client/",
|
|
15
|
+
subgraphData: {
|
|
16
|
+
requests: agent.raw?.receivedRequests,
|
|
17
|
+
deliveries: agent.raw?.totalDeliveriesTransactions,
|
|
18
|
+
karma: agent.raw?.karma,
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
};
|
|
30
22
|
}
|
|
31
23
|
//# sourceMappingURL=olas.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"olas.js","sourceRoot":"","sources":["../../../src/wallet/handlers/olas.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"olas.js","sourceRoot":"","sources":["../../../src/wallet/handlers/olas.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAqB,EACrB,KAAmB,EACnB,IAAY;IAEZ,6EAA6E;IAC7E,oFAAoF;IACpF,0EAA0E;IAC1E,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC;IACnC,MAAM,KAAK,GAAI,KAAK,CAAC,GAAW,EAAE,MAAM,IAAI,QAAQ,CAAC;IAErD,OAAO;QACL,OAAO,EAAE,KAAK;QACd,WAAW,EAAE;YACX,KAAK,EAAE,yCAAyC;YAChD,WAAW;YACX,KAAK;YACL,IAAI,EAAE,wIAAwI;YAC9I,OAAO,EAAE,wCAAwC;YACjD,YAAY,EAAE;gBACZ,QAAQ,EAAG,KAAK,CAAC,GAAW,EAAE,gBAAgB;gBAC9C,UAAU,EAAG,KAAK,CAAC,GAAW,EAAE,2BAA2B;gBAC3D,KAAK,EAAG,KAAK,CAAC,GAAW,EAAE,KAAK;aACjC;SACF;KACF,CAAC;AACJ,CAAC"}
|
package/dist/wallet/index.d.ts
CHANGED
|
@@ -4475,12 +4475,12 @@ export declare class KompassWallet {
|
|
|
4475
4475
|
[x: `bytes23[${string}]`]: undefined;
|
|
4476
4476
|
[x: `bytes10[${string}]`]: undefined;
|
|
4477
4477
|
[x: `bytes20[${string}]`]: undefined;
|
|
4478
|
+
[x: `bytes15[${string}]`]: undefined;
|
|
4478
4479
|
[x: `bytes7[${string}]`]: undefined;
|
|
4479
4480
|
[x: `bytes9[${string}]`]: undefined;
|
|
4480
4481
|
[x: `bytes12[${string}]`]: undefined;
|
|
4481
4482
|
[x: `bytes13[${string}]`]: undefined;
|
|
4482
4483
|
[x: `bytes14[${string}]`]: undefined;
|
|
4483
|
-
[x: `bytes15[${string}]`]: undefined;
|
|
4484
4484
|
[x: `bytes16[${string}]`]: undefined;
|
|
4485
4485
|
[x: `bytes17[${string}]`]: undefined;
|
|
4486
4486
|
[x: `bytes18[${string}]`]: undefined;
|
|
@@ -4577,12 +4577,12 @@ export declare class KompassWallet {
|
|
|
4577
4577
|
bytes23?: undefined;
|
|
4578
4578
|
bytes10?: undefined;
|
|
4579
4579
|
bytes20?: undefined;
|
|
4580
|
+
bytes15?: undefined;
|
|
4580
4581
|
bytes7?: undefined;
|
|
4581
4582
|
bytes9?: undefined;
|
|
4582
4583
|
bytes12?: undefined;
|
|
4583
4584
|
bytes13?: undefined;
|
|
4584
4585
|
bytes14?: undefined;
|
|
4585
|
-
bytes15?: undefined;
|
|
4586
4586
|
bytes16?: undefined;
|
|
4587
4587
|
bytes17?: undefined;
|
|
4588
4588
|
bytes18?: undefined;
|
|
@@ -5305,6 +5305,7 @@ export declare class KompassWallet {
|
|
|
5305
5305
|
number: blockTag extends "pending" ? null : bigint;
|
|
5306
5306
|
nonce: blockTag extends "pending" ? null : `0x${string}`;
|
|
5307
5307
|
hash: blockTag extends "pending" ? null : `0x${string}`;
|
|
5308
|
+
gasUsed: bigint;
|
|
5308
5309
|
logsBloom: blockTag extends "pending" ? null : `0x${string}`;
|
|
5309
5310
|
baseFeePerGas: bigint | null;
|
|
5310
5311
|
blobGasUsed: bigint;
|
|
@@ -5312,7 +5313,6 @@ export declare class KompassWallet {
|
|
|
5312
5313
|
excessBlobGas: bigint;
|
|
5313
5314
|
extraData: Hex;
|
|
5314
5315
|
gasLimit: bigint;
|
|
5315
|
-
gasUsed: bigint;
|
|
5316
5316
|
miner: Address;
|
|
5317
5317
|
mixHash: import("viem").Hash;
|
|
5318
5318
|
parentBeaconBlockRoot?: `0x${string}` | undefined;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "kompass-sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.21.0",
|
|
4
4
|
"description": "Get any job done. Universal agent capability discovery + coordination across ACP, MCP, x402, A2A, skills, L402, and ERC-8004.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
package/src/aggregator.ts
CHANGED
|
@@ -187,13 +187,17 @@ export class Aggregator {
|
|
|
187
187
|
// Has pricing info bonus (transparency)
|
|
188
188
|
if (agent.pricing && agent.pricing.model !== "unknown") score += 3;
|
|
189
189
|
|
|
190
|
-
// Has
|
|
190
|
+
// Has callable endpoint bonus
|
|
191
191
|
const endpointCount = Object.values(agent.endpoints).filter(Boolean).length;
|
|
192
192
|
score += endpointCount * 2;
|
|
193
193
|
|
|
194
|
-
//
|
|
195
|
-
|
|
196
|
-
if (
|
|
194
|
+
// Liveness signals — live verified gateways should rank higher in aggregator too
|
|
195
|
+
const src = agent.source as string;
|
|
196
|
+
if (src === "bankr") score += 20;
|
|
197
|
+
if (src === "locus") score += 15;
|
|
198
|
+
if (src === "x402-ecosystem") score += 10;
|
|
199
|
+
if (src === "acp") score += 8;
|
|
200
|
+
if (src === "olas") score += 8;
|
|
197
201
|
|
|
198
202
|
(agent as any)._score = score;
|
|
199
203
|
return agent;
|
package/src/bridge.ts
CHANGED
|
@@ -290,6 +290,59 @@ export class ProtocolBridge {
|
|
|
290
290
|
};
|
|
291
291
|
}
|
|
292
292
|
|
|
293
|
+
// Source-specific handlers — some HTTP agents need custom auth/params
|
|
294
|
+
const source = (agent as any).source ?? "";
|
|
295
|
+
|
|
296
|
+
if (source === "bankr") {
|
|
297
|
+
// Bankr handler uses API key auth, not wallet — wallet param is unused
|
|
298
|
+
const { handleBankrPayment } = await import("./wallet/handlers/bankr.js");
|
|
299
|
+
const { KompassWallet } = await import("./wallet/index.js");
|
|
300
|
+
let wallet;
|
|
301
|
+
try { wallet = KompassWallet.load(); } catch { wallet = KompassWallet.create(); }
|
|
302
|
+
const result = await handleBankrPayment(wallet, agent, options.task);
|
|
303
|
+
return {
|
|
304
|
+
success: result.success,
|
|
305
|
+
protocol: "http",
|
|
306
|
+
agent,
|
|
307
|
+
deliverable: result.deliverable,
|
|
308
|
+
jobId: result.jobId,
|
|
309
|
+
durationMs: Date.now() - start,
|
|
310
|
+
};
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
if (source === "locus") {
|
|
314
|
+
const { handleLocusPayment } = await import("./wallet/handlers/locus.js");
|
|
315
|
+
const { KompassWallet } = await import("./wallet/index.js");
|
|
316
|
+
let wallet;
|
|
317
|
+
try { wallet = KompassWallet.load(); } catch { wallet = KompassWallet.create(); }
|
|
318
|
+
const result = await handleLocusPayment(wallet, agent, options.task);
|
|
319
|
+
return {
|
|
320
|
+
success: result.success,
|
|
321
|
+
protocol: "http",
|
|
322
|
+
agent,
|
|
323
|
+
deliverable: result.deliverable,
|
|
324
|
+
txHash: result.txHash,
|
|
325
|
+
durationMs: Date.now() - start,
|
|
326
|
+
};
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
if (source === "olas") {
|
|
330
|
+
// Olas mechs are on-chain only — no HTTP endpoint
|
|
331
|
+
const { handleOlasPayment } = await import("./wallet/handlers/olas.js");
|
|
332
|
+
const { KompassWallet } = await import("./wallet/index.js");
|
|
333
|
+
let wallet;
|
|
334
|
+
try { wallet = KompassWallet.load(); } catch { wallet = KompassWallet.create(); }
|
|
335
|
+
const result = await handleOlasPayment(wallet, agent, options.task);
|
|
336
|
+
return {
|
|
337
|
+
success: result.success,
|
|
338
|
+
protocol: "http",
|
|
339
|
+
agent,
|
|
340
|
+
deliverable: result.deliverable,
|
|
341
|
+
durationMs: Date.now() - start,
|
|
342
|
+
};
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
// Default HTTP handler
|
|
293
346
|
const res = await fetch(endpoint, {
|
|
294
347
|
method: "POST",
|
|
295
348
|
headers: { "Content-Type": "application/json" },
|
package/src/matching.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Layer A: Structured capability matching (ontology-style)
|
|
5
5
|
* Layer B: BM25 text relevance scoring
|
|
6
6
|
* Layer C: LLM re-ranking (optional, for top candidates)
|
|
7
|
-
* Layer D: Multi-criteria scoring (reputation, price, protocol, recency)
|
|
7
|
+
* Layer D: Multi-criteria scoring (reputation, price, protocol, recency, liveness)
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
import type { UnifiedAgent } from "./sources/types.js";
|
|
@@ -28,6 +28,8 @@ const DOMAIN_KEYWORDS: Record<string, string[]> = {
|
|
|
28
28
|
development: ["code", "develop", "build", "deploy", "smart contract", "solidity"],
|
|
29
29
|
ai: ["ai", "llm", "model", "inference", "embedding", "prompt"],
|
|
30
30
|
social: ["social", "twitter", "post", "tweet", "farcaster"],
|
|
31
|
+
scraping: ["scrape", "crawl", "extract", "web scraping", "firecrawl"],
|
|
32
|
+
crypto: ["crypto", "bitcoin", "ethereum", "eth", "btc", "sol", "token", "coin", "wallet", "chain", "gas"],
|
|
31
33
|
};
|
|
32
34
|
|
|
33
35
|
const PROTOCOL_KEYWORDS: Record<string, string[]> = {
|
|
@@ -96,7 +98,7 @@ function structuredScore(agent: UnifiedAgent, intent: ParsedIntent): number {
|
|
|
96
98
|
if (intent.priceMax && agent.pricing?.amount) {
|
|
97
99
|
const price = parseFloat(agent.pricing.amount);
|
|
98
100
|
if (price <= intent.priceMax) score += 10;
|
|
99
|
-
else score -= 10;
|
|
101
|
+
else score -= 10;
|
|
100
102
|
}
|
|
101
103
|
|
|
102
104
|
return score;
|
|
@@ -108,14 +110,16 @@ function bm25Score(agent: UnifiedAgent, queryTerms: string[]): number {
|
|
|
108
110
|
const doc = `${agent.name} ${agent.description} ${agent.categories.join(" ")} ${agent.capabilities.join(" ")}`.toLowerCase();
|
|
109
111
|
const docTerms = doc.split(/\s+/);
|
|
110
112
|
const docLen = docTerms.length;
|
|
111
|
-
const avgDocLen = 50;
|
|
113
|
+
const avgDocLen = 50;
|
|
112
114
|
const k1 = 1.5;
|
|
113
115
|
const b = 0.75;
|
|
114
116
|
|
|
115
117
|
let score = 0;
|
|
118
|
+
let matchedTerms = 0;
|
|
116
119
|
for (const term of queryTerms) {
|
|
117
120
|
const tf = docTerms.filter((t) => t.includes(term)).length;
|
|
118
121
|
if (tf === 0) continue;
|
|
122
|
+
matchedTerms++;
|
|
119
123
|
|
|
120
124
|
// Simplified BM25
|
|
121
125
|
const numerator = tf * (k1 + 1);
|
|
@@ -123,7 +127,18 @@ function bm25Score(agent: UnifiedAgent, queryTerms: string[]): number {
|
|
|
123
127
|
score += numerator / denominator;
|
|
124
128
|
}
|
|
125
129
|
|
|
126
|
-
|
|
130
|
+
// Bonus for matching ALL query terms (full relevance)
|
|
131
|
+
if (queryTerms.length > 0 && matchedTerms === queryTerms.length) {
|
|
132
|
+
score *= 1.5;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
// Penalty for very long descriptions that match generically
|
|
136
|
+
// Short, focused descriptions that match = better than long generic ones
|
|
137
|
+
if (docLen > 100) {
|
|
138
|
+
score *= 0.8; // 20% penalty for bloated descriptions
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
return score * 10;
|
|
127
142
|
}
|
|
128
143
|
|
|
129
144
|
// ── Layer D: Multi-Criteria Scoring ──────────────────────
|
|
@@ -131,10 +146,13 @@ function bm25Score(agent: UnifiedAgent, queryTerms: string[]): number {
|
|
|
131
146
|
function multiCriteriaScore(agent: UnifiedAgent): number {
|
|
132
147
|
let score = 0;
|
|
133
148
|
|
|
134
|
-
// Reputation
|
|
149
|
+
// Reputation — agents with real track record get boosted
|
|
135
150
|
if (agent.reputation) {
|
|
136
151
|
score += Math.min(agent.reputation.score * 0.2, 20);
|
|
137
152
|
score += Math.min(agent.reputation.count * 0.5, 10);
|
|
153
|
+
} else {
|
|
154
|
+
// No reputation = untested = slight penalty
|
|
155
|
+
score -= 3;
|
|
138
156
|
}
|
|
139
157
|
|
|
140
158
|
// Verified identity
|
|
@@ -143,19 +161,49 @@ function multiCriteriaScore(agent: UnifiedAgent): number {
|
|
|
143
161
|
// Pricing transparency
|
|
144
162
|
if (agent.pricing && agent.pricing.model !== "unknown") score += 3;
|
|
145
163
|
|
|
146
|
-
//
|
|
147
|
-
const
|
|
164
|
+
// Liveness: agents with callable endpoints that we KNOW work
|
|
165
|
+
const hasHttp = !!agent.endpoints.http;
|
|
166
|
+
const hasMcp = !!agent.endpoints.mcp;
|
|
167
|
+
const hasX402 = !!agent.endpoints.x402;
|
|
168
|
+
const hasAcp = !!agent.endpoints.acp;
|
|
169
|
+
const endpointCount = [hasHttp, hasMcp, hasX402, hasAcp, !!agent.endpoints.a2a, !!agent.endpoints.l402].filter(Boolean).length;
|
|
148
170
|
score += endpointCount * 2;
|
|
149
171
|
|
|
150
|
-
//
|
|
151
|
-
//
|
|
152
|
-
|
|
153
|
-
|
|
172
|
+
// Source-specific liveness signals
|
|
173
|
+
// Agents from sources we KNOW are live gateways (not just registrations)
|
|
174
|
+
switch (agent.source as string) {
|
|
175
|
+
case "bankr":
|
|
176
|
+
score += 25; // Bankr is a live gateway, always responds, verified working
|
|
177
|
+
break;
|
|
178
|
+
case "locus":
|
|
179
|
+
score += 20; // Locus wrapped APIs are live, verified working
|
|
180
|
+
break;
|
|
181
|
+
case "x402-ecosystem":
|
|
182
|
+
score += 18; // 402index verifies health, real payments
|
|
183
|
+
break;
|
|
184
|
+
case "acp":
|
|
185
|
+
score += 8; // ACP agents are registered and active
|
|
186
|
+
break;
|
|
187
|
+
case "olas":
|
|
188
|
+
score += 8; // Olas mechs have on-chain delivery records
|
|
189
|
+
break;
|
|
190
|
+
case "mcp-registry":
|
|
191
|
+
// Most MCP servers on Smithery require auth or are offline
|
|
192
|
+
// Only boost if it has a remote endpoint, but still penalize vs verified live sources
|
|
193
|
+
if (hasMcp) score += 0; // Neutral — might work, might not
|
|
194
|
+
else score -= 10; // No remote endpoint = definitely can't call
|
|
195
|
+
break;
|
|
196
|
+
case "erc8004":
|
|
197
|
+
// ERC-8004 is a registry — agents may or may not be live
|
|
198
|
+
// Only boost if they have a callable endpoint
|
|
199
|
+
if (hasHttp || hasMcp || hasX402) score += 3;
|
|
200
|
+
else score -= 5; // Paper registration, no live endpoint
|
|
201
|
+
break;
|
|
202
|
+
case "skills-registry":
|
|
203
|
+
score -= 10; // Skills aren't hirable — heavy penalty if they slip through
|
|
204
|
+
break;
|
|
154
205
|
}
|
|
155
206
|
|
|
156
|
-
// Free tools get a small accessibility bonus (no wallet needed)
|
|
157
|
-
if (agent.pricing?.model === "free") score += 3;
|
|
158
|
-
|
|
159
207
|
// Recency
|
|
160
208
|
if (agent.lastSeen) {
|
|
161
209
|
const hoursSince = (Date.now() - agent.lastSeen) / (1000 * 60 * 60);
|
|
@@ -164,6 +212,9 @@ function multiCriteriaScore(agent: UnifiedAgent): number {
|
|
|
164
212
|
else if (hoursSince < 168) score += 1;
|
|
165
213
|
}
|
|
166
214
|
|
|
215
|
+
// Free tools get a small accessibility bonus
|
|
216
|
+
if (agent.pricing?.model === "free") score += 2;
|
|
217
|
+
|
|
167
218
|
return score;
|
|
168
219
|
}
|
|
169
220
|
|
package/src/router.ts
CHANGED
|
@@ -95,9 +95,9 @@ export class CapabilityRouter {
|
|
|
95
95
|
? `${options.task}\n\nContext from previous step:\n${options.context.slice(0, 2000)}`
|
|
96
96
|
: options.task;
|
|
97
97
|
|
|
98
|
-
// 1. Search all sources
|
|
98
|
+
// 1. Search all sources — use high limit to ensure callable agents aren't cut off
|
|
99
99
|
const searchResult = await this.aggregator.search(task, {
|
|
100
|
-
limit:
|
|
100
|
+
limit: 100,
|
|
101
101
|
timeout: options.timeout ?? 15000,
|
|
102
102
|
});
|
|
103
103
|
|