@aura-protocol/cli 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +307 -0
- package/bin/aura.js +8 -0
- package/dist/commands/confidential.d.ts +2 -0
- package/dist/commands/confidential.js +564 -0
- package/dist/commands/confidential.js.map +1 -0
- package/dist/commands/config.d.ts +2 -0
- package/dist/commands/config.js +123 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/dashboard.d.ts +2 -0
- package/dist/commands/dashboard.js +29 -0
- package/dist/commands/dashboard.js.map +1 -0
- package/dist/commands/dwallet.d.ts +2 -0
- package/dist/commands/dwallet.js +131 -0
- package/dist/commands/dwallet.js.map +1 -0
- package/dist/commands/execution.d.ts +2 -0
- package/dist/commands/execution.js +261 -0
- package/dist/commands/execution.js.map +1 -0
- package/dist/commands/governance.d.ts +2 -0
- package/dist/commands/governance.js +169 -0
- package/dist/commands/governance.js.map +1 -0
- package/dist/commands/helpers.d.ts +79 -0
- package/dist/commands/helpers.js +219 -0
- package/dist/commands/helpers.js.map +1 -0
- package/dist/commands/treasury.d.ts +2 -0
- package/dist/commands/treasury.js +319 -0
- package/dist/commands/treasury.js.map +1 -0
- package/dist/config.d.ts +35 -0
- package/dist/config.js +96 -0
- package/dist/config.js.map +1 -0
- package/dist/context.d.ts +37 -0
- package/dist/context.js +57 -0
- package/dist/context.js.map +1 -0
- package/dist/dashboard.d.ts +7 -0
- package/dist/dashboard.js +95 -0
- package/dist/dashboard.js.map +1 -0
- package/dist/domain.d.ts +16 -0
- package/dist/domain.js +86 -0
- package/dist/domain.js.map +1 -0
- package/dist/format.d.ts +9 -0
- package/dist/format.js +92 -0
- package/dist/format.js.map +1 -0
- package/dist/ika.d.ts +76 -0
- package/dist/ika.js +178 -0
- package/dist/ika.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +43 -0
- package/dist/index.js.map +1 -0
- package/dist/output.d.ts +32 -0
- package/dist/output.js +134 -0
- package/dist/output.js.map +1 -0
- package/dist/protocol.d.ts +99 -0
- package/dist/protocol.js +353 -0
- package/dist/protocol.js.map +1 -0
- package/dist/sdk.d.ts +6 -0
- package/dist/sdk.js +6 -0
- package/dist/sdk.js.map +1 -0
- package/dist/treasury-view.d.ts +11 -0
- package/dist/treasury-view.js +103 -0
- package/dist/treasury-view.js.map +1 -0
- package/dist/vendor/encrypt/generated/grpc/encrypt_service.d.ts +195 -0
- package/dist/vendor/encrypt/generated/grpc/encrypt_service.js +514 -0
- package/dist/vendor/encrypt/generated/grpc/encrypt_service.js.map +1 -0
- package/dist/vendor/encrypt/grpc.d.ts +70 -0
- package/dist/vendor/encrypt/grpc.js +108 -0
- package/dist/vendor/encrypt/grpc.js.map +1 -0
- package/dist/vendor/ika/bcs-types.d.ts +1045 -0
- package/dist/vendor/ika/bcs-types.js +185 -0
- package/dist/vendor/ika/bcs-types.js.map +1 -0
- package/dist/vendor/ika/generated/grpc/ika_dwallet.d.ts +141 -0
- package/dist/vendor/ika/generated/grpc/ika_dwallet.js +531 -0
- package/dist/vendor/ika/generated/grpc/ika_dwallet.js.map +1 -0
- package/dist/vendor/ika/grpc.d.ts +16 -0
- package/dist/vendor/ika/grpc.js +129 -0
- package/dist/vendor/ika/grpc.js.map +1 -0
- package/dist/wallet.d.ts +2 -0
- package/dist/wallet.js +21 -0
- package/dist/wallet.js.map +1 -0
- package/package.json +54 -0
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
// Copyright (c) dWallet Labs, Ltd.
|
|
2
|
+
// SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
3
|
+
// Node.js / Bun gRPC client for the Ika dWallet service.
|
|
4
|
+
// Uses @grpc/grpc-js for native gRPC transport.
|
|
5
|
+
import * as grpc from '@grpc/grpc-js';
|
|
6
|
+
import { bcs } from '@mysten/bcs';
|
|
7
|
+
import { DWalletServiceClient, } from './generated/grpc/ika_dwallet.js';
|
|
8
|
+
import { defineBcsTypes } from './bcs-types.js';
|
|
9
|
+
const { SignedRequestData, TransactionResponseData, UserSignature, VersionedDWalletDataAttestation, VersionedPresignDataAttestation } = defineBcsTypes();
|
|
10
|
+
export { defineBcsTypes } from './bcs-types.js';
|
|
11
|
+
export function createIkaClient(grpcUrl) {
|
|
12
|
+
const url = grpcUrl ?? '127.0.0.1:50051';
|
|
13
|
+
const creds = url.includes('localhost') || url.match(/127\.0\.0\.1/)
|
|
14
|
+
? grpc.credentials.createInsecure()
|
|
15
|
+
: grpc.credentials.createSsl();
|
|
16
|
+
const client = new DWalletServiceClient(url, creds);
|
|
17
|
+
function submit(userSig, signedData) {
|
|
18
|
+
return new Promise((resolve, reject) => {
|
|
19
|
+
client.submitTransaction({ userSignature: Buffer.from(userSig), signedRequestData: Buffer.from(signedData) }, (err, resp) => {
|
|
20
|
+
if (err)
|
|
21
|
+
reject(err);
|
|
22
|
+
else
|
|
23
|
+
resolve(new Uint8Array(resp.responseData));
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
function buildSig(pubkey) {
|
|
28
|
+
return UserSignature.serialize({
|
|
29
|
+
Ed25519: { signature: Array.from(new Uint8Array(64)), public_key: Array.from(pubkey) },
|
|
30
|
+
}).toBytes();
|
|
31
|
+
}
|
|
32
|
+
return {
|
|
33
|
+
async requestDKG(senderPubkey) {
|
|
34
|
+
const data = SignedRequestData.serialize({
|
|
35
|
+
session_identifier_preimage: Array.from(new Uint8Array(32)),
|
|
36
|
+
epoch: 1n, chain_id: { Solana: true },
|
|
37
|
+
intended_chain_sender: Array.from(senderPubkey),
|
|
38
|
+
request: { DKG: {
|
|
39
|
+
dwallet_network_encryption_public_key: Array.from(new Uint8Array(32)),
|
|
40
|
+
curve: { Curve25519: true },
|
|
41
|
+
centralized_public_key_share_and_proof: Array.from(new Uint8Array(32)),
|
|
42
|
+
user_secret_key_share: { Encrypted: {
|
|
43
|
+
encrypted_centralized_secret_share_and_proof: Array.from(new Uint8Array(32)),
|
|
44
|
+
encryption_key: Array.from(new Uint8Array(32)),
|
|
45
|
+
signer_public_key: Array.from(senderPubkey),
|
|
46
|
+
} },
|
|
47
|
+
user_public_output: Array.from(new Uint8Array(32)),
|
|
48
|
+
sign_during_dkg_request: null,
|
|
49
|
+
} },
|
|
50
|
+
}).toBytes();
|
|
51
|
+
const respBytes = await submit(buildSig(senderPubkey), data);
|
|
52
|
+
const resp = TransactionResponseData.parse(new Uint8Array(respBytes));
|
|
53
|
+
if (!resp.Attestation)
|
|
54
|
+
throw new Error(`DKG failed: ${JSON.stringify(resp)}`);
|
|
55
|
+
const att = resp.Attestation;
|
|
56
|
+
// Decode the versioned DWallet data attestation from the signed bytes.
|
|
57
|
+
const payload = VersionedDWalletDataAttestation.parse(new Uint8Array(att.attestation_data));
|
|
58
|
+
if (!payload.V1) {
|
|
59
|
+
throw new Error(`unexpected DKG payload variant: ${JSON.stringify(payload)}`);
|
|
60
|
+
}
|
|
61
|
+
const created = payload.V1;
|
|
62
|
+
// dwalletAddr is now derived from (curve, public_key) on-chain via
|
|
63
|
+
// the dwallet PDA seeds; we don't extract it from attestation bytes.
|
|
64
|
+
return {
|
|
65
|
+
dwalletAddr: new Uint8Array(32),
|
|
66
|
+
publicKey: new Uint8Array(created.public_key),
|
|
67
|
+
publicOutput: new Uint8Array(created.public_output),
|
|
68
|
+
attestationData: new Uint8Array(att.attestation_data),
|
|
69
|
+
networkSignature: new Uint8Array(att.network_signature),
|
|
70
|
+
networkPubkey: new Uint8Array(att.network_pubkey),
|
|
71
|
+
};
|
|
72
|
+
},
|
|
73
|
+
async requestPresign(senderPubkey, dwalletAddr) {
|
|
74
|
+
const data = SignedRequestData.serialize({
|
|
75
|
+
session_identifier_preimage: Array.from(dwalletAddr),
|
|
76
|
+
epoch: 1n, chain_id: { Solana: true },
|
|
77
|
+
intended_chain_sender: Array.from(senderPubkey),
|
|
78
|
+
request: { PresignForDWallet: {
|
|
79
|
+
dwallet_network_encryption_public_key: Array.from(new Uint8Array(32)),
|
|
80
|
+
dwallet_public_key: Array.from(dwalletAddr),
|
|
81
|
+
dwallet_attestation: {
|
|
82
|
+
attestation_data: Array.from(new Uint8Array(32)),
|
|
83
|
+
network_signature: Array.from(new Uint8Array(64)),
|
|
84
|
+
network_pubkey: Array.from(new Uint8Array(32)),
|
|
85
|
+
epoch: 1n,
|
|
86
|
+
},
|
|
87
|
+
curve: { Curve25519: true }, signature_algorithm: { EdDSA: true },
|
|
88
|
+
} },
|
|
89
|
+
}).toBytes();
|
|
90
|
+
const respBytes = await submit(buildSig(senderPubkey), data);
|
|
91
|
+
const resp = TransactionResponseData.parse(new Uint8Array(respBytes));
|
|
92
|
+
if (!resp.Attestation)
|
|
93
|
+
throw new Error(`Presign failed: ${JSON.stringify(resp)}`);
|
|
94
|
+
const payload = VersionedPresignDataAttestation.parse(new Uint8Array(resp.Attestation.attestation_data));
|
|
95
|
+
if (!payload.V1) {
|
|
96
|
+
throw new Error(`unexpected presign payload variant: ${JSON.stringify(payload)}`);
|
|
97
|
+
}
|
|
98
|
+
return new Uint8Array(payload.V1.presign_session_identifier);
|
|
99
|
+
},
|
|
100
|
+
async requestSign(senderPubkey, dwalletAddr, message, presignId, txSignature) {
|
|
101
|
+
const data = SignedRequestData.serialize({
|
|
102
|
+
session_identifier_preimage: Array.from(dwalletAddr),
|
|
103
|
+
epoch: 1n, chain_id: { Solana: true },
|
|
104
|
+
intended_chain_sender: Array.from(senderPubkey),
|
|
105
|
+
request: { Sign: {
|
|
106
|
+
message: Array.from(message), message_metadata: [],
|
|
107
|
+
presign_session_identifier: Array.from(presignId),
|
|
108
|
+
message_centralized_signature: Array.from(new Uint8Array(64)),
|
|
109
|
+
dwallet_attestation: {
|
|
110
|
+
attestation_data: Array.from(new Uint8Array(32)),
|
|
111
|
+
network_signature: Array.from(new Uint8Array(64)),
|
|
112
|
+
network_pubkey: Array.from(new Uint8Array(32)),
|
|
113
|
+
epoch: 1n,
|
|
114
|
+
},
|
|
115
|
+
approval_proof: { Solana: { transaction_signature: Array.from(txSignature), slot: 0n } },
|
|
116
|
+
} },
|
|
117
|
+
}).toBytes();
|
|
118
|
+
const respBytes = await submit(buildSig(senderPubkey), data);
|
|
119
|
+
const resp = TransactionResponseData.parse(new Uint8Array(respBytes));
|
|
120
|
+
if (resp.Signature)
|
|
121
|
+
return new Uint8Array(resp.Signature.signature);
|
|
122
|
+
if (resp.Error)
|
|
123
|
+
throw new Error(resp.Error.message);
|
|
124
|
+
throw new Error(`Unexpected: ${JSON.stringify(resp)}`);
|
|
125
|
+
},
|
|
126
|
+
close() { client.close(); },
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=grpc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grpc.js","sourceRoot":"","sources":["../../../src/vendor/ika/grpc.ts"],"names":[],"mappings":"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"}
|
package/dist/wallet.d.ts
ADDED
package/dist/wallet.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { readFileSync } from "node:fs";
|
|
2
|
+
import { Keypair } from "@solana/web3.js";
|
|
3
|
+
import { expandHome } from "./config.js";
|
|
4
|
+
export function loadKeypair(walletPath) {
|
|
5
|
+
const resolvedPath = expandHome(walletPath);
|
|
6
|
+
let secret;
|
|
7
|
+
try {
|
|
8
|
+
secret = new Uint8Array(JSON.parse(readFileSync(resolvedPath, "utf8")));
|
|
9
|
+
}
|
|
10
|
+
catch {
|
|
11
|
+
throw new Error(`Could not load wallet keypair from ${resolvedPath}. ` +
|
|
12
|
+
`Run 'aura config init' or pass --wallet /path/to/id.json.`);
|
|
13
|
+
}
|
|
14
|
+
try {
|
|
15
|
+
return Keypair.fromSecretKey(secret);
|
|
16
|
+
}
|
|
17
|
+
catch {
|
|
18
|
+
throw new Error(`Wallet file at ${resolvedPath} is not a valid Solana keypair JSON array.`);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=wallet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../src/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,UAAU,WAAW,CAAC,UAAkB;IAC5C,MAAM,YAAY,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;IAE5C,IAAI,MAAkB,CAAC;IACvB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAa,CAAC,CAAC;IACtF,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CACb,sCAAsC,YAAY,IAAI;YACtD,2DAA2D,CAC5D,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,OAAO,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CACb,kBAAkB,YAAY,4CAA4C,CAC3E,CAAC;IACJ,CAAC;AACH,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@aura-protocol/cli",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"description": "Production-grade CLI for the AURA autonomous treasury program on Solana",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "git+https://github.com/exyreams/aura.git"
|
|
10
|
+
},
|
|
11
|
+
"homepage": "https://github.com/exyreams/aura",
|
|
12
|
+
"publishConfig": {
|
|
13
|
+
"access": "public"
|
|
14
|
+
},
|
|
15
|
+
"bin": {
|
|
16
|
+
"aura": "./bin/aura.js"
|
|
17
|
+
},
|
|
18
|
+
"files": [
|
|
19
|
+
"bin",
|
|
20
|
+
"dist",
|
|
21
|
+
"README.md"
|
|
22
|
+
],
|
|
23
|
+
"engines": {
|
|
24
|
+
"node": ">=20"
|
|
25
|
+
},
|
|
26
|
+
"scripts": {
|
|
27
|
+
"build": "node -e \"const path=require('node:path');const pkg=path.dirname(process.env.npm_package_json);process.argv=['node','tsc','-p',path.join(pkg,'tsconfig.json')];require(path.join(pkg,'node_modules/typescript/bin/tsc'));\"",
|
|
28
|
+
"test": "node -e \"const path=require('node:path');const {spawnSync}=require('node:child_process');const pkg=path.dirname(process.env.npm_package_json);const cli=path.join(pkg,'node_modules/tsx/dist/cli.mjs');const tests=['tests/config.test.ts','tests/domain.test.ts','tests/protocol.test.ts'];const result=spawnSync(process.execPath,[cli,'--test',...tests],{cwd:pkg,stdio:'inherit'});process.exit(result.status ?? 1);\"",
|
|
29
|
+
"prepack": "npm run build"
|
|
30
|
+
},
|
|
31
|
+
"dependencies": {
|
|
32
|
+
"@aura-protocol/sdk-ts": "^0.1.0",
|
|
33
|
+
"@encrypt.xyz/pre-alpha-solana-client": "^0.1.0",
|
|
34
|
+
"@ika.xyz/pre-alpha-solana-client": "^0.1.0",
|
|
35
|
+
"@inquirer/prompts": "8.4.2",
|
|
36
|
+
"@solana/web3.js": "1.98.4",
|
|
37
|
+
"bn.js": "5.2.3",
|
|
38
|
+
"boxen": "8.0.1",
|
|
39
|
+
"chalk": "5.6.2",
|
|
40
|
+
"cli-table3": "0.6.5",
|
|
41
|
+
"commander": "14.0.3",
|
|
42
|
+
"ink": "7.0.1",
|
|
43
|
+
"js-sha3": "0.9.3",
|
|
44
|
+
"ora": "9.3.0",
|
|
45
|
+
"react": "19.2.5"
|
|
46
|
+
},
|
|
47
|
+
"devDependencies": {
|
|
48
|
+
"@types/bn.js": "5.2.0",
|
|
49
|
+
"@types/node": "25.6.0",
|
|
50
|
+
"@types/react": "19.2.14",
|
|
51
|
+
"tsx": "4.21.0",
|
|
52
|
+
"typescript": "6.0.3"
|
|
53
|
+
}
|
|
54
|
+
}
|